CLRX
1
An unofficial OpenCL extensions designed for Radeon GPUs
|
template of ElfRegion More...
#include <ElfBinaries.h>
Public Member Functions | |
ElfRegionTemplate (typename Types::Word _size, const cxbyte *_data, typename Types::Word _align) | |
constructor for user region | |
ElfRegionTemplate (typename Types::Word _size, const ElfRegionContent *contentGen, typename Types::Word _align) | |
constructor for user region with content generator | |
ElfRegionTemplate (ElfRegionType _type, typename Types::Word _size, const cxbyte *_data, typename Types::Word _align) | |
constructor for region | |
ElfRegionTemplate (ElfRegionType _type, typename Types::Word _size, const ElfRegionContent *contentGen, typename Types::Word _align) | |
constructor for region with content generator | |
ElfRegionTemplate (typename Types::Word _size, const cxbyte *_data, typename Types::Word _align, const char *_name, uint32_t _type, typename Types::SectionFlags _flags, uint32_t _link=0, uint32_t _info=0, typename Types::Word _addrBase=0, typename Types::Word _entSize=0, bool _zeroOffset=false) | |
constructor for section | |
ElfRegionTemplate (typename Types::Word _size, const ElfRegionContent *_data, typename Types::Word _align, const char *inName, uint32_t _type, typename Types::SectionFlags _flags, uint32_t _link=0, uint32_t _info=0, typename Types::Word _addrBase=0, typename Types::Word _entSize=0, bool _zeroOffset=false) | |
constructor for section with generator | |
ElfRegionTemplate (const BinSection &binSection, const uint16_t *builtinSections, cxuint maxBuiltinSection, cxuint startExtraIndex) | |
constructor for external section (BinSection) More... | |
Static Public Member Functions | |
static ElfRegionTemplate | programHeaderTable () |
get program header table region | |
static ElfRegionTemplate | sectionHeaderTable () |
get program header table region | |
static ElfRegionTemplate | strtabSection () |
get .strtab section | |
static ElfRegionTemplate | dynstrSection () |
get .dynstr section | |
static ElfRegionTemplate | shstrtabSection () |
get .shstrtab section | |
static ElfRegionTemplate | symtabSection () |
get symtab section | |
static ElfRegionTemplate | dynsymSection () |
get dynsym section | |
Public Attributes | |
ElfRegionType | type |
type of region | |
bool | dataFromPointer |
true if content from pointer, otherwise will be generated from class | |
Types::Word | size |
region size More... | |
Types::Word | align |
region alignment | |
union { | |
const cxbyte * data | |
content from pointer | |
const ElfRegionContent * dataGen | |
content generator pointer | |
}; | |
struct { | |
const char * name | |
section name | |
uint32_t type | |
section type | |
Types::SectionFlags flags | |
section flags | |
uint32_t link | |
section link | |
uint32_t info | |
section info | |
Types::Word addrBase | |
section address base | |
Types::Word entSize | |
entries size | |
bool zeroOffset | |
} | section |
section structure | |
template of ElfRegion
|
inline |
constructor for external section (BinSection)
binSection | external section |
builtinSections | ELF section indices for builtin sections |
maxBuiltinSection | maximal id of builtin section (as ELFSECTID_STD_MAX) |
startExtraIndex | first ELF section id for extra section |
Types::Word CLRX::ElfRegionTemplate< Types >::size |
region size
if alignment of this region is zero and size doesn't to alignment of next region then size of this region will be fixed to alignment of next region