PreviousUpNext

15.4.316  src/lib/compiler/back/low/main/sparc32/machine-properties-sparc32.pkg

## machine-properties-sparc32.pkg

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

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

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

        machine_architecture    = sma::SPARC32;                         # PWRPC32/SPARC32/INTEL32.
        #
        num_int_regs            = 18; 
        num_float_regs          = 16;
        #
        num_float_callee_saves  =  0; 
        num_callee_saves        =  3;
        #
        big_endian              = TRUE;
        #
        spill_area_size         = 3800;
        initial_spill_offset    = 116 - framesize;
        run_heapcleaner__offset         = 100 - framesize;                      # Offset relative to framepointer of pointer to function which starts a heapcleaning ("garbage collection").
        const_base_pointer_reg_offset   = 4096;

        task_offset     = 96 - framesize;
        hostthread_offtask      = 4;
        in_lib7off_vsp          = 8;
        limit_ptr_mask_off_vsp  = 200;

        framepointer_never_virtual = TRUE;              # We have a real frame ptr! 
    };
end;


## COPYRIGHT (c) 1998 AT&T 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