CeeSectionRelocType 枚举
提供可影响对 ICeeGen::AddSectionReloc 调用中发出的 reloc
指令类型的值。
语法
typedef enum {
srRelocAbsolute,
srRelocHighLow = 3,
srRelocHighAdj,
srRelocMapToken,
srRelocRelative,
srRelocFilePos,
srRelocCodeRelative,
srRelocIA64Imm64,
srRelocDir64,
srRelocIA64PcRel25,
srRelocIA64PcRel64, srRelocAbsoluteTagged, srRelocSentinel, srNoBaseReloc = 0x4000,
srRelocPtr = 0x8000,
srRelocAbsolutePtr = srRelocPtr + srRelocAbsolute,
srRelocHighLowPtr = srRelocPtr + srRelocHighLow,
srRelocRelativePtr = srRelocPtr + srRelocRelative,
srRelocIA64Imm64Ptr = srRelocPtr + srRelocIA64Imm64,
srRelocDir64Ptr = srRelocPtr + srRelocDir64
} CeeSectionRelocType;
成员
成员 | 说明 |
---|---|
srRelocAbsolute |
仅生成相对于部分的 reloc ,不向 .reloc 部分发送任何内容。 |
srRelocHighLow |
为指针大小的位置生成 reloc 。 这将转换为 BASED_HIGHLOW 或 BASED_DIR64,具体取决于平台。 |
srRelocHighAdj |
为 32 位数字的前 16 位生成 reloc ,其中后 16 位包含在 .reloc 表的下一个字中。 |
srRelocMapToken |
生成标记映射重定位,不向 .reloc 部分发送任何内容。 |
srRelocRelative |
指示该值为相对地址修复。 |
srRelocFilePos |
仅生成相对于部分的 reloc ,不向 .reloc 部分发送任何内容。 此 reloc 相对于部分的文件位置,而非其虚拟地址。 |
srRelocCodeRelative |
指定代码相对地址修复。 |
srRelocIA64Imm64 |
为 ia64 movl 指令中的 64 位地址生成 reloc 。 |
srRelocDir64 |
为 64 位地址生成 reloc 。 |
srRelocIA64PcRel25 |
在 ia64 br.call 指令中为 25 位电脑相对地址生成 reloc 。 |
srRelocIA64PcRel64 |
在 ia64 brl.call 指令中为 64 位电脑相对地址生成 reloc 。 |
srRelocAbsoluteTagged |
生成 30 位相对于部分的 reloc ,用于标记的指针值。 |
srRelocSentinel |
一个 sentinel 值,用于帮助确保对此枚举的任何添加都反映到内部 reloc 名称数组中。 |
srNoBaseReloc |
指定不发出基本 reloc 。 |
srRelocPtr |
一个值,指示内存的预修复内容是指针而非部分偏移量。 |
要求
平台:请参阅系统要求。
标头:Cor.h
库:作为资源包含在 MsCorEE.dll 中
.NET Framework 版本:自 1.0 起可用