CeeSectionRelocType 枚举

提供影响 reloc 指令类型的值,该指令在调用 ICeeGen::AddSectionReloc 时发出。

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 位 PC 相对地址生成reloc。

srRelocIA64PcRel64

为 ia64 brl.call 指令中的 64 位 PC 相对地址生成 reloc。

srRelocAbsoluteTagged

生成的一个 30 位部分相对的 reloc,用于标记的指针值。

srRelocSentinel

一个 sentinel 值,可帮助确保在内部 reloc 名称数组中反映对此枚举进行的任何添加。

srNoBaseReloc

指定不发出基类 reloc.

srRelocPtr

一个值,该值指示链接地址前的内存内容是一个指针而不是段偏移量。

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**Cor.h

**库:**作为一项资源包含在 MsCorEE.dll 中

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

请参见

参考

ICeeGen 接口

ICeeGen::AddSectionReloc 方法

其他资源

元数据枚举