ELF SPARC specific(elfSPARC.rfi):
Class: Executable and Object, Status: Auxiliary, Last change: 03.01.2018 21:53:18
descr ('ELF SPARC extension',NL,
'Info Source: sys/elf_SPARC.h in SunOS.',NL)
type
/*
#define EF_SPARC_32PLUS_MASK 0xffff00 /* bits indicating V8+ type */
#define EF_SPARC_32PLUS 0x000100 /* generic V8+ features */
#define EF_SPARC_EXT_MASK 0xffff00 /* bits for vendor extensions */
#define EF_SPARC_SUN_US1 0x000200 /* Sun UltraSPARC1 extensions */
#define EF_SPARC_HAL_R1 0x000400 /* HAL R1 extensions */
#define EF_SPARCV9_MM 0x3 /* mask for memory model */
#define EF_SPARCV9_TSO 0x0 /* total store ordering */
#define EF_SPARCV9_PSO 0x1 /* partial store ordering */
#define EF_SPARCV9_RMO 0x2 /* relaxed memory ordering */
*/
type bit
TSAPRCBit2 num+(2)
/* mask for memory model */
TE_Machine_Mem_Model enum TSAPRCBit2 (
EF_SPARCV9_TSO = 0, /* total store ordering */
EF_SPARCV9_PSO = 1, /* partial store ordering */
EF_SPARCV9_RMO = 2 /* relaxed memory ordering */
)
TE_Machine_Mem_Model_Byte struc
num+(6) rest
TE_Machine_Mem_Model MemModel
ends
type
TE_Machine_VPlus set 16 of (
EF_SPARC_32PLUS=0, /* generic V8+ features */
EF_SPARC_SUN_US1=1,/* Sun UltraSPARC1 extensions */
EF_SPARC_HAL_R1=2 /* HAL R1 extensions */
)
TE_Machine_Flags struc
byte Rest
TE_Machine_VPlus V8Plus
TE_Machine_Mem_Model_Byte MMB
ends
/* relocation type */
type
TE_R_TYPE enum ER_TYPE (
R_SPARC_NONE = 0,
R_SPARC_8 = 1,
R_SPARC_16 = 2,
R_SPARC_32 = 3,
R_SPARC_DISP8 = 4,
R_SPARC_DISP16 = 5,
R_SPARC_DISP32 = 6,
R_SPARC_WDISP30 = 7,
R_SPARC_WDISP22 = 8,
R_SPARC_HI22 = 9,
R_SPARC_22 = 10,
R_SPARC_13 = 11,
R_SPARC_LO10 = 12,
R_SPARC_GOT10 = 13,
R_SPARC_GOT13 = 14,
R_SPARC_GOT22 = 15,
R_SPARC_PC10 = 16,
R_SPARC_PC22 = 17,
R_SPARC_WPLT30 = 18,
R_SPARC_COPY = 19,
R_SPARC_GLOB_DAT = 20,
R_SPARC_JMP_SLOT = 21,
R_SPARC_RELATIVE = 22,
R_SPARC_UA32 = 23,
R_SPARC_PLT32 = 24,
R_SPARC_HIPLT22 = 25,
R_SPARC_LOPLT10 = 26,
R_SPARC_PCPLT32 = 27,
R_SPARC_PCPLT22 = 28,
R_SPARC_PCPLT10 = 29,
R_SPARC_10 = 30,
R_SPARC_11 = 31,
R_SPARC_64 = 32,
R_SPARC_OLO10 = 33,
R_SPARC_HH22 = 34,
R_SPARC_HM10 = 35,
R_SPARC_LM22 = 36,
R_SPARC_PC_HH22 = 37,
R_SPARC_PC_HM10 = 38,
R_SPARC_PC_LM22 = 39,
R_SPARC_WDISP16 = 40,
R_SPARC_WDISP19 = 41,
R_SPARC_GLOB_JMP = 42,
R_SPARC_7 = 43,
R_SPARC_5 = 44,
R_SPARC_6 = 45,
R_SPARC_DISP64 = 46,
R_SPARC_PLT64 = 47,
R_SPARC_HIX22 = 48,
R_SPARC_LOX10 = 49,
R_SPARC_H44 = 50,
R_SPARC_M44 = 51,
R_SPARC_L44 = 52,
R_SPARC_REGISTER = 53,
R_SPARC_UA64 = 54,
R_SPARC_UA16 = 55,
R_SPARC_NUM = 56 /* must be >last */
)
/*
#define ELF_SPARC_MAXPGSZ 0x10000 /* maximum page size */
#define ELF_SPARCV9_MAXPGSZ 0x100000
#define SHF_ORDERED 0x40000000
#define SHF_EXCLUDE 0x80000000
#define SHN_BEFORE 0xff00
#define SHN_AFTER 0xff01
*/
Other specifications.
FlexT home page,
Author`s home page.