Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

/users/u3/mtikir/PMaCInstrumentor_v1601/include/defines/Auxilary.d

Go to the documentation of this file.
00001 /*
00002 ##################################################################
00003 File Name Auxiliary Entry Format
00004 0     14     0    0    x_fname     Source file string
00005 0     4     0    0    x_zeroes     Zero, indicating file string in string table (overlays first 4 bytes of x_fname)
00006 4     4     0    0    x_offset     Offset of file string in string table (overlays 5th-8th bytes of x_fname)
00007 14     1     0    0    x_ftype     File string type
00008 15     2     0    0    Reserved     Must contain 0.
00009 17     1     0    0    x_auxtype     Auxiliary symbol type(XCOFF64 only)
00010 ##################################################################
00011 csect Auxiliary Entry Format
00012 0     4     0    0     x_scnlen     (See field definition section)
00013 0    0     0     4     x_scnlen_lo     (See field definition section) Low 4 bytes of section length
00014 4     4     4     4     x_parmhash     Offset of parameter type-check hash in .typchk section
00015 8     2     8     2     x_snhash     .typchk section number
00016 10     1     10     1     x_smtyp     Symbol alignment and type 3-bit symbol alignment (log 2) 3-bit symbol type
00017 11     1     11     1     x_smclas     Storage mapping class
00018 12     4     0    0     x_stab     Reserved
00019 16     2     0    0     x_snstab     Reserved
00020 0    0     12     4     x_scnlen_hi     (See field definition section) High 4 bytes of section length
00021 0    0     16     1     (pad)     Reserved
00022 0    0     17     1     x_auxtype     Contains _AUX_CSECT; indicates type of auxiliary entry
00023 ##################################################################
00024 Function Auxiliary Entry Format XCOFF32     XCOFF64     Name     Description
00025 0     4     0    0    x_exptr     File offset to exception table entry.
00026 4     4     8     4     x_fsize     Size of function in bytes
00027 8     4     0     8     x_lnnoptr     File pointer to line number
00028 12     4     12     4     x_endndx     Symbol table index of next entry beyond this function
00029 16     1     16     1     (pad)     Unused
00030 0    0    17     1     x_auxtype     Contains _AUX_FCN; Type of auxiliary entry
00031 ##################################################################
00032 Block Auxiliary Entry Format (XCOFF64 only)
00033 0     4     0    0    (no name)     Reserved
00034 4     2     0     4     x_lnno     Source line number
00035 6     12     4     13     (no name)     Reserved
00036 0    0    17     1     x_auxtype     Contains _AUX_SYM; Type of auxiliary entry
00037 ##################################################################
00038 Section Auxiliary Entry Format (XCOFF32 Only) Offset     Length in Bytes     Name     Description
00039 0     4     0    0    x_scnlen     Section length
00040 4     2     0    0    x_nreloc     Number of relocation entries
00041 6     2     0    0    x_nlinno     Number of line numbers
00042 8     10     0    0    (no name)     Reserved
00043 ##################################################################
00044 Exception Auxiliary Entry Format (XCOFF64 only)
00045 0     8     0    0    x_exptr     File offset to exception table entry.
00046 8     4     0    0    x_fsize     Size of function in bytes
00047 12     4     0    0    x_endndx     Symbol table index of next entry beyond this function
00048 16     1     0    0    (pad)     Unused
00049 17     1     0    0    x_auxtype     Contains _AUX_EXCEPT; Type of auxiliary entry
00050 ##################################################################
00051 */
00052 
00053 #define AUXILARY_MACROS_BASIS(__str)  \
00054     GET_FIELD_BASIS_A(char*,x_fname,x_file); \
00055     GET_FIELD_BASIS_A(uint32_t,x_zeroes,x_file); \
00056     GET_FIELD_BASIS_A(uint32_t,x_offset,x_file); \
00057     GET_FIELD_BASIS_A(uint8_t,x_ftype,x_file); \
00058     \
00059     GET_FIELD_BASIS_A(uint32_t,x_scnlen,x_csect); \
00060     GET_FIELD_BASIS_A(uint32_t,x_scnlen_lo,x_csect); \
00061     GET_FIELD_BASIS_A(uint32_t,x_parmhash,x_csect); \
00062     GET_FIELD_BASIS_A(uint16_t,x_snhash,x_csect); \
00063     GET_FIELD_BASIS_A(uint8_t,x_smtyp,x_csect); \
00064     GET_FIELD_BASIS_A(uint8_t,x_smclas,x_csect); \
00065     GET_FIELD_BASIS_A(uint32_t,x_stab,x_csect); \
00066     GET_FIELD_BASIS_A(uint16_t,x_snstab,x_csect); \
00067     GET_FIELD_BASIS_A(uint32_t,x_scnlen_hi,x_csect); \
00068     \
00069     GET_FIELD_BASIS_A(uint32_t,x_exptr,x_fcn); \
00070     GET_FIELD_BASIS_A(uint32_t,x_fsize,x_fcn); \
00071     GET_FIELD_BASIS_A(uint64_t,x_lnnoptr,x_fcn); \
00072     GET_FIELD_BASIS_A(uint32_t,x_endndx,x_fcn); \
00073     \
00074     GET_FIELD_BASIS_A(uint32_t,x_lnno,x_misc); \
00075     \
00076     GET_FIELD_BASIS_A(uint32_t,x_scnlen,x_scn); \
00077     GET_FIELD_BASIS_A(uint16_t,x_nreloc,x_scn); \
00078     GET_FIELD_BASIS_A(uint16_t,x_nlinno,x_scn); \
00079     \
00080     GET_FIELD_BASIS_A(uint64_t,x_exptr,x_except); \
00081     GET_FIELD_BASIS_A(uint32_t,x_fsize,x_except); \
00082     GET_FIELD_BASIS_A(uint32_t,x_endndx,x_except); \
00083 

Generated on Mon Jan 28 11:08:31 2008 for PMaCInstrumentor by doxygen 1.3.5