PreviousUpNext

15.4.312  src/lib/compiler/back/low/main/pwrpc32/machine-properties-pwrpc32.pkg

## machine-properties-pwrpc32.pkg

# Compiled by:
#     src/lib/compiler/mythryl-compiler-support-for-pwrpc32.lib

stipulate
    package sma =  supported_architectures;                                     # supported_architectures               is from   src/lib/compiler/front/basics/main/supported-architectures.pkg
herein

    package   machine_properties_pwrpc32
    : (weak)  Machine_Properties                                                # Machine_Properties                    is from   src/lib/compiler/back/low/main/main/machine-properties.api
    {
        include package   machine_properties_default;

        framesize = 8192;
        #
        machine_architecture = sma::PWRPC32;                                    # PWRPC32/SPARC32/INTEL32.
        #
        big_endian      = FALSE;
        spill_area_size = 8192;         #  really the end of the spill area! 
        #
        initial_spill_offset    = 4096+144;
        #
        num_int_regs            = 15;
        num_float_regs          = 30;
        num_float_callee_saves  = 0;
        #
        run_heapcleaner__offset         = 4096 + 4;                                     # Offset relative to framepointer of pointer to function which starts a heapcleaning ("garbage collection"). 
        const_base_pointer_reg_offset   = 32764;

        task_offset     = 4096+0;
        hostthread_offtask      = 4;
        in_lib7off_vsp          = 8;
        limit_ptr_mask_off_vsp  = 200;

        # The pre-allocated space is 4k minus the linkage area (24 bytes) 
        #
        ccall_prealloc_argspace_in_bytes =   THE (4096 - 24);
    };
end;


## COPYRIGHT (c) 1999 Bell Laboratories.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext