361 references to RelocType
ILCompiler.ReadyToRun (361)
Compiler\DependencyAnalysis\ReadyToRun\AssemblyTableNode.cs (2)
49builder.EmitReloc(assemblyHeader, RelocType.IMAGE_REL_BASED_ADDR32NB); 50builder.EmitReloc(assemblyHeader, RelocType.IMAGE_REL_SYMBOL_SIZE);
Compiler\DependencyAnalysis\ReadyToRun\CopiedCorHeaderNode.cs (9)
86builder.EmitReloc(metadataBlob, RelocType.IMAGE_REL_BASED_ADDR32NB); 99builder.EmitReloc(managedResources, RelocType.IMAGE_REL_BASED_ADDR32NB); 111builder.EmitReloc(strongNameSignature, RelocType.IMAGE_REL_BASED_ADDR32NB); 133builder.EmitReloc(factory.Header, RelocType.IMAGE_REL_BASED_ADDR32NB); 134builder.EmitReloc(factory.Header, RelocType.IMAGE_REL_SYMBOL_SIZE); 152builder.EmitReloc(factory.ManifestMetadataTable, RelocType.IMAGE_REL_BASED_ADDR32NB); 153builder.EmitReloc(factory.ManifestMetadataTable, RelocType.IMAGE_REL_SYMBOL_SIZE); 185builder.EmitReloc(factory.Header, RelocType.IMAGE_REL_BASED_ADDR32NB); 186builder.EmitReloc(factory.Header, RelocType.IMAGE_REL_SYMBOL_SIZE);
Compiler\DependencyAnalysis\ReadyToRun\CopiedMetadataBlobNode.cs (2)
64builder.EmitReloc(factory.CopiedMethodIL(method), RelocType.IMAGE_REL_BASED_ADDR32NB); 100builder.EmitReloc(factory.CopiedFieldRva(fieldDesc), RelocType.IMAGE_REL_BASED_ADDR32NB);
Compiler\DependencyAnalysis\ReadyToRun\DebugDirectoryEntryNode.cs (4)
138builder.EmitReloc(this, RelocType.IMAGE_REL_BASED_ADDR32NB); 139builder.EmitReloc(this, RelocType.IMAGE_REL_FILE_ABSOLUTE); 239builder.EmitReloc(this, RelocType.IMAGE_REL_BASED_ADDR32NB); 240builder.EmitReloc(this, RelocType.IMAGE_REL_FILE_ABSOLUTE);
Compiler\DependencyAnalysis\ReadyToRun\DebugDirectoryNode.cs (2)
145builder.EmitReloc(factory.DebugDirectoryEntry(_module, i), RelocType.IMAGE_REL_BASED_ADDR32NB); 146builder.EmitReloc(factory.DebugDirectoryEntry(_module, i), RelocType.IMAGE_REL_FILE_ABSOLUTE);
Compiler\DependencyAnalysis\ReadyToRun\DelayLoadHelperImport.cs (2)
90factory.Target.PointerSize == 4 ? RelocType.IMAGE_REL_BASED_HIGHLOW : RelocType.IMAGE_REL_BASED_DIR64);
Compiler\DependencyAnalysis\ReadyToRun\ExceptionInfoLookupTableNode.cs (3)
133exceptionInfoLookupBuilder.EmitReloc(_methodNodes[index], RelocType.IMAGE_REL_BASED_ADDR32NB, -factory.Target.CodeDelta); 135exceptionInfoLookupBuilder.EmitReloc(_ehInfoNode, RelocType.IMAGE_REL_BASED_ADDR32NB, _ehInfoOffsets[index]); 140exceptionInfoLookupBuilder.EmitReloc(_ehInfoNode, RelocType.IMAGE_REL_BASED_ADDR32NB, _ehInfoNode.Count);
Compiler\DependencyAnalysis\ReadyToRun\ImportSectionNode.cs (4)
109dataBuilder.EmitReloc(_imports, RelocType.IMAGE_REL_BASED_ADDR32NB, 0); 118dataBuilder.EmitReloc(_imports, RelocType.IMAGE_REL_SYMBOL_SIZE); 126dataBuilder.EmitReloc(_signatures, RelocType.IMAGE_REL_BASED_ADDR32NB, 0); 137dataBuilder.EmitReloc(_gcRefMap, RelocType.IMAGE_REL_BASED_ADDR32NB, 0);
Compiler\DependencyAnalysis\ReadyToRun\InjectStringThunksSignature.cs (3)
46RelocType relocType = factory.Target.Architecture == TargetArchitecture.Wasm32 47? RelocType.WASM_TABLE_INDEX_REL_I32 48: RelocType.IMAGE_REL_BASED_ADDR32NB;
Compiler\DependencyAnalysis\ReadyToRun\MethodGCInfoNode.cs (1)
302dataBuilder.EmitReloc(item.Symbol, RelocType.IMAGE_REL_BASED_ADDR32NB, item.SymbolDelta);
Compiler\DependencyAnalysis\ReadyToRun\ReadyToRunHeaderNode.cs (2)
192builder.EmitReloc(item.StartSymbol, RelocType.IMAGE_REL_BASED_ADDR32NB, rvaDelta); 197builder.EmitReloc(item.StartSymbol, RelocType.IMAGE_REL_SYMBOL_SIZE, delta);
Compiler\DependencyAnalysis\ReadyToRun\ResumptionStubEntryPointSignature.cs (1)
23builder.EmitReloc(_resumptionStub, RelocType.IMAGE_REL_BASED_ADDR32NB);
Compiler\DependencyAnalysis\ReadyToRun\RuntimeFunctionsTableNode.cs (4)
190runtimeFunctionsBuilder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ADDR32NB, frameInfo.StartOffset); 195runtimeFunctionsBuilder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ADDR32NB, delta: frameInfo.EndOffset); 198runtimeFunctionsBuilder.EmitReloc(factory.RuntimeFunctionsGCInfo, RelocType.IMAGE_REL_BASED_ADDR32NB, funcletOffsets[frameIndex]); 223runtimeFunctionsBuilder.EmitReloc(_methodNodes[0], RelocType.WASM_TABLE_INDEX_I32, delta: 0);
Compiler\DependencyAnalysis\ReadyToRun\SignatureBuilder.cs (1)
594public void EmitReloc(ISymbolNode symbol, RelocType relocType, int delta = 0)
Compiler\DependencyAnalysis\ReadyToRun\SignatureEmbeddedPointerIndirectionNode.cs (1)
33dataBuilder.EmitReloc(Target, RelocType.IMAGE_REL_BASED_ADDR32NB);
Compiler\DependencyAnalysis\ReadyToRun\SymbolNodeRange.cs (1)
13/// Provides a machanism to represent a contiguous range of object nodes as a single node where the <see cref="RelocType.IMAGE_REL_SYMBOL_SIZE" /> reloc can refer to the range between two nodes.
Compiler\DependencyAnalysis\ReadyToRun\WasmImportThunkPortableEntrypoint.cs (4)
77RelocType tableIndexPointerRelocType = factory.Target.PointerSize == 4 ? RelocType.WASM_TABLE_INDEX_I32 : RelocType.WASM_TABLE_INDEX_I64; 93builder.EmitReloc(_import, RelocType.IMAGE_REL_BASED_ADDR32NB);
ObjectWriter\MapFileBuilder.cs (2)
169KeyValuePair<RelocType, int>[] relocTypeCounts = _outputInfoBuilder.RelocCounts.ToArray(); 174foreach (KeyValuePair<RelocType, int> relocTypeCount in relocTypeCounts)
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\ObjectDataBuilder.cs (36)
254public void EmitReloc(ISymbolNode symbol, RelocType relocType, int delta = 0) 270case RelocType.WASM_TABLE_INDEX_I32: 271case RelocType.WASM_TABLE_INDEX_REL_I32: 272case RelocType.IMAGE_REL_BASED_REL32: 273case RelocType.IMAGE_REL_BASED_RELPTR32: 274case RelocType.IMAGE_REL_BASED_ABSOLUTE: 275case RelocType.IMAGE_REL_BASED_HIGHLOW: 276case RelocType.IMAGE_REL_SECREL: 277case RelocType.IMAGE_REL_TLSGD: 278case RelocType.IMAGE_REL_TPOFF: 279case RelocType.IMAGE_REL_FILE_ABSOLUTE: 280case RelocType.IMAGE_REL_BASED_ADDR32NB: 281case RelocType.IMAGE_REL_SYMBOL_SIZE: 284case RelocType.IMAGE_REL_BASED_DIR64: 287case RelocType.IMAGE_REL_BASED_THUMB_BRANCH24: 288case RelocType.IMAGE_REL_BASED_ARM64_BRANCH26: 289case RelocType.IMAGE_REL_BASED_THUMB_MOV32: 290case RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL: 291case RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21: 292case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12L: 293case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A: 295case RelocType.IMAGE_REL_AARCH64_TLSDESC_ADR_PAGE21: 296case RelocType.IMAGE_REL_AARCH64_TLSDESC_LD64_LO12: 297case RelocType.IMAGE_REL_AARCH64_TLSDESC_ADD_LO12: 298case RelocType.IMAGE_REL_AARCH64_TLSDESC_CALL: 299case RelocType.IMAGE_REL_AARCH64_TLSLE_ADD_TPREL_HI12: 300case RelocType.IMAGE_REL_AARCH64_TLSLE_ADD_TPREL_LO12_NC: 302case RelocType.IMAGE_REL_BASED_LOONGARCH64_PC: 303case RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR: 305case RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT: 306case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I: 307case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S: 313case RelocType.IMAGE_REL_FILE_CHECKSUM_CALLBACK: 324EmitReloc(symbol, (_target.PointerSize == 8) ? RelocType.IMAGE_REL_BASED_DIR64 : RelocType.IMAGE_REL_BASED_HIGHLOW, delta); 329EmitReloc(checksum, RelocType.IMAGE_REL_FILE_CHECKSUM_CALLBACK, checksum.ChecksumSize);
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Relocation.cs (131)
113public readonly RelocType RelocType; 603public Relocation(RelocType relocType, int offset, ISymbolNode target) 611public static unsafe void WriteValue(RelocType relocType, void* location, long value) 615case RelocType.IMAGE_REL_BASED_ABSOLUTE: 616case RelocType.IMAGE_REL_BASED_ADDR32NB: 617case RelocType.IMAGE_REL_BASED_HIGHLOW: 618case RelocType.IMAGE_REL_BASED_REL32: 619case RelocType.IMAGE_REL_BASED_RELPTR32: 620case RelocType.IMAGE_REL_SECREL: 621case RelocType.IMAGE_REL_TLSGD: 622case RelocType.IMAGE_REL_TPOFF: 623case RelocType.IMAGE_REL_SYMBOL_SIZE: 624case RelocType.IMAGE_REL_FILE_ABSOLUTE: 625case RelocType.IMAGE_REL_AARCH64_TLSDESC_CALL: 628case RelocType.IMAGE_REL_AARCH64_TLSDESC_LD64_LO12: 630case RelocType.IMAGE_REL_BASED_DIR64: 633case RelocType.IMAGE_REL_BASED_THUMB_MOV32: 634case RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL: 637case RelocType.IMAGE_REL_BASED_THUMB_BRANCH24: 640case RelocType.IMAGE_REL_BASED_ARM64_BRANCH26: 643case RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21: 644case RelocType.IMAGE_REL_AARCH64_TLSDESC_ADR_PAGE21: 647case RelocType.IMAGE_REL_ARM64_TLS_SECREL_HIGH12A: 650case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A: 651case RelocType.IMAGE_REL_AARCH64_TLSDESC_ADD_LO12: 652case RelocType.IMAGE_REL_ARM64_TLS_SECREL_LOW12A: 655case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12L: 658case RelocType.IMAGE_REL_BASED_LOONGARCH64_PC: 661case RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR: 664case RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT: 665case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I: 666case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S: 667bool isStype = (relocType is RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S); 671case RelocType.WASM_TYPE_INDEX_LEB: 672case RelocType.WASM_GLOBAL_INDEX_LEB: 673case RelocType.WASM_FUNCTION_INDEX_LEB: 674case RelocType.WASM_MEMORY_ADDR_LEB: 675case RelocType.WASM_MEMORY_ADDR_REL_LEB: 676case RelocType.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB: 680case RelocType.WASM_TABLE_INDEX_SLEB: 681case RelocType.WASM_MEMORY_ADDR_SLEB: 682case RelocType.WASM_MEMORY_ADDR_REL_SLEB: 685case RelocType.WASM_TABLE_INDEX_I32: 686case RelocType.WASM_TABLE_INDEX_REL_I32: 689case RelocType.WASM_TABLE_INDEX_I64: 702public static int GetSize(RelocType relocType) 706RelocType.IMAGE_REL_BASED_DIR64 => 8, 707RelocType.IMAGE_REL_BASED_HIGHLOW => 4, 708RelocType.IMAGE_REL_BASED_ADDR32NB => 4, 709RelocType.IMAGE_REL_BASED_REL32 => 4, 710RelocType.IMAGE_REL_BASED_RELPTR32 => 4, 711RelocType.IMAGE_REL_FILE_ABSOLUTE => 4, 715RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21 => 4, 716RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A => 4, 717RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12L => 4, 718RelocType.IMAGE_REL_BASED_THUMB_MOV32 => 8, 719RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL => 8, 720RelocType.IMAGE_REL_BASED_THUMB_BRANCH24 => 4, 721RelocType.IMAGE_REL_BASED_ARM64_BRANCH26 => 4, 722RelocType.IMAGE_REL_BASED_LOONGARCH64_PC => 8, 723RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR => 8, 724RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT => 8, 725RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I => 8, 726RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S => 8, 728RelocType.WASM_FUNCTION_INDEX_LEB => WASM_PADDED_RELOC_SIZE_32, 729RelocType.WASM_TABLE_INDEX_SLEB => WASM_PADDED_RELOC_SIZE_32, 730RelocType.WASM_TYPE_INDEX_LEB => WASM_PADDED_RELOC_SIZE_32, 731RelocType.WASM_GLOBAL_INDEX_LEB => WASM_PADDED_RELOC_SIZE_32, 732RelocType.WASM_MEMORY_ADDR_LEB => WASM_PADDED_RELOC_SIZE_32, 733RelocType.WASM_MEMORY_ADDR_SLEB => WASM_PADDED_RELOC_SIZE_32, 734RelocType.WASM_MEMORY_ADDR_REL_LEB => WASM_PADDED_RELOC_SIZE_32, 735RelocType.WASM_MEMORY_ADDR_REL_SLEB => WASM_PADDED_RELOC_SIZE_32, 736RelocType.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB => WASM_PADDED_RELOC_SIZE_32, 737RelocType.WASM_TABLE_INDEX_I32 => 4, 738RelocType.WASM_TABLE_INDEX_REL_I32 => 4, 739RelocType.WASM_TABLE_INDEX_I64 => 8, 745public static unsafe long ReadValue(RelocType relocType, void* location) 749case RelocType.IMAGE_REL_BASED_ABSOLUTE: 750case RelocType.IMAGE_REL_BASED_ADDR32NB: 751case RelocType.IMAGE_REL_BASED_HIGHLOW: 752case RelocType.IMAGE_REL_BASED_REL32: 753case RelocType.IMAGE_REL_BASED_RELPTR32: 754case RelocType.IMAGE_REL_SECREL: 755case RelocType.IMAGE_REL_TLSGD: 756case RelocType.IMAGE_REL_TPOFF: 757case RelocType.IMAGE_REL_FILE_ABSOLUTE: 758case RelocType.IMAGE_REL_SYMBOL_SIZE: 760case RelocType.IMAGE_REL_BASED_DIR64: 761case RelocType.WASM_TABLE_INDEX_I64: 763case RelocType.IMAGE_REL_BASED_THUMB_MOV32: 764case RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL: 766case RelocType.IMAGE_REL_BASED_THUMB_BRANCH24: 768case RelocType.IMAGE_REL_BASED_ARM64_BRANCH26: 770case RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21: 772case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A: 773case RelocType.IMAGE_REL_ARM64_TLS_SECREL_HIGH12A: 774case RelocType.IMAGE_REL_ARM64_TLS_SECREL_LOW12A: 776case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12L: 778case RelocType.IMAGE_REL_AARCH64_TLSDESC_LD64_LO12: 779case RelocType.IMAGE_REL_AARCH64_TLSDESC_ADD_LO12: 780case RelocType.IMAGE_REL_AARCH64_TLSLE_ADD_TPREL_HI12: 781case RelocType.IMAGE_REL_AARCH64_TLSLE_ADD_TPREL_LO12_NC: 785case RelocType.IMAGE_REL_AARCH64_TLSDESC_ADR_PAGE21: 789case RelocType.IMAGE_REL_AARCH64_TLSDESC_CALL: 792case RelocType.IMAGE_REL_BASED_LOONGARCH64_PC: 794case RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR: 796case RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT: 797case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I: 798case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S: 799bool isStype = (relocType is RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S); 801case RelocType.WASM_TYPE_INDEX_LEB: 802case RelocType.WASM_GLOBAL_INDEX_LEB: 805case RelocType.WASM_FUNCTION_INDEX_LEB: 806case RelocType.WASM_MEMORY_ADDR_LEB: 807case RelocType.WASM_MEMORY_ADDR_REL_LEB: 808case RelocType.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB: 810case RelocType.WASM_TABLE_INDEX_SLEB: 811case RelocType.WASM_MEMORY_ADDR_SLEB: 812case RelocType.WASM_MEMORY_ADDR_REL_SLEB: 814case RelocType.WASM_TABLE_INDEX_I32: 815case RelocType.WASM_TABLE_INDEX_REL_I32: 831public static RelocType GetFileRelocationType(RelocType relocationType) 835case RelocType.IMAGE_REL_BASED_HIGHLOW: 836case RelocType.IMAGE_REL_BASED_DIR64: 837case RelocType.IMAGE_REL_BASED_THUMB_MOV32: 840case RelocType.WASM_TABLE_INDEX_I32: 841return RelocType.IMAGE_REL_BASED_WASM32_TABLE; 843case RelocType.WASM_TABLE_INDEX_I64: 844return RelocType.IMAGE_REL_BASED_WASM64_TABLE; 847return RelocType.IMAGE_REL_BASED_ABSOLUTE;
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Target_ARM\ARMEmitter.cs (2)
199Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL); // 12-byte offset is part of the relocation 218Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_THUMB_BRANCH24);
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Target_ARM64\ARM64Emitter.cs (5)
44Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21); 48Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A); 56Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21); 106Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12L); 182Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_ARM64_BRANCH26);
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Target_LoongArch64\LoongArch64Emitter.cs (3)
42Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_LOONGARCH64_PC); 97Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_LOONGARCH64_PC); 127Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR);
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Target_RiscV64\RiscV64Emitter.cs (3)
46Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I); 92Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I); 121Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT);
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Target_X64\X64Emitter.cs (8)
50Builder.EmitReloc(node, RelocType.IMAGE_REL_BASED_REL32); 64Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32, delta); 96Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32); 101Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32); 116Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32); 130Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32); 157Builder.EmitReloc(node, RelocType.IMAGE_REL_BASED_REL32); 167Builder.EmitReloc(node, RelocType.IMAGE_REL_BASED_REL32);
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\Target_X86\X86Emitter.cs (6)
41Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_HIGHLOW); 73Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_HIGHLOW); 78Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32); 92Builder.EmitReloc(symbol, RelocType.IMAGE_REL_BASED_REL32); 144Builder.EmitReloc(node, RelocType.IMAGE_REL_BASED_HIGHLOW); 166Builder.EmitReloc(node, RelocType.IMAGE_REL_BASED_HIGHLOW, delta);
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\CoffObjectWriter.cs (2)
19using static ILCompiler.DependencyAnalysis.RelocType; 191RelocType relocType,
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\ElfObjectWriter.cs (2)
18using static ILCompiler.DependencyAnalysis.RelocType; 195RelocType relocType,
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\MachObjectWriter.cs (6)
17using static ILCompiler.DependencyAnalysis.RelocType; 72/// Base symbol to use for <see cref="RelocType.IMAGE_REL_BASED_ADDR32NB"/> relocations. 409RelocType relocType, 418if (relocType == RelocType.IMAGE_REL_SYMBOL_SIZE) 613if (symbolicRelocation.Type == RelocType.IMAGE_REL_SYMBOL_SIZE 740if (symbolicRelocation.Type == RelocType.IMAGE_REL_SYMBOL_SIZE
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\ObjectWriter.cs (9)
18using static ILCompiler.DependencyAnalysis.RelocType; 28protected sealed record SymbolicRelocation(long Offset, RelocType Type, Utf8String SymbolName, long Addend = 0); 164RelocType relocType, 233RelocType relocType, 482if ((reloc.RelocType is RelocType.IMAGE_REL_BASED_DIR64 && _nodeFactory.Target.PointerSize == 8) || 483(reloc.RelocType is RelocType.IMAGE_REL_BASED_HIGHLOW && _nodeFactory.Target.PointerSize == 4)) 508RelocType fileReloc = Relocation.GetFileRelocationType(reloc.RelocType); 509if (fileReloc != RelocType.IMAGE_REL_BASED_ABSOLUTE) 561if (reloc.RelocType == RelocType.IMAGE_REL_FILE_CHECKSUM_CALLBACK)
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\OutputInfoBuilder.cs (3)
132private readonly Dictionary<RelocType, int> _relocCounts = []; 145public void AddRelocation(OutputNode node, RelocType relocType) 247public IReadOnlyDictionary<RelocType, int> RelocCounts => _relocCounts;
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\PEObjectWriter.cs (25)
633sectionWriter.EmitSymbolReference(RelocType.IMAGE_REL_BASED_ADDR32NB, exportsStringTableSymbol, exportsStringTable.GetStringOffset(moduleName)); 641sectionWriter.EmitSymbolReference(RelocType.IMAGE_REL_BASED_ADDR32NB, addressTableSymbol); 643sectionWriter.EmitSymbolReference(RelocType.IMAGE_REL_BASED_ADDR32NB, namePointerTableSymbol); 645sectionWriter.EmitSymbolReference(RelocType.IMAGE_REL_BASED_ADDR32NB, ordinalPointerTableSymbol); 652sectionWriter.EmitSymbolReference(RelocType.IMAGE_REL_BASED_ADDR32NB, exportName); 660sectionWriter.EmitSymbolReference(RelocType.IMAGE_REL_BASED_ADDR32NB, exportsStringTableSymbol, exportsStringTable.GetStringOffset(exportName)); 905case RelocType.IMAGE_REL_BASED_ABSOLUTE: 909case RelocType.IMAGE_REL_BASED_THUMB_MOV32: 910case RelocType.IMAGE_REL_BASED_DIR64: 911case RelocType.IMAGE_REL_BASED_HIGHLOW: 915case RelocType.IMAGE_REL_BASED_ADDR32NB: 918case RelocType.IMAGE_REL_BASED_REL32: 919case RelocType.IMAGE_REL_BASED_RELPTR32: 922case RelocType.IMAGE_REL_BASED_THUMB_BRANCH24: 925case RelocType.IMAGE_REL_BASED_ARM64_BRANCH26: 928case RelocType.IMAGE_REL_FILE_ABSOLUTE: 932case RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL: 936case RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21: 944case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A: 945case RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12L: 948case RelocType.IMAGE_REL_BASED_LOONGARCH64_PC: 955case RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR: 956case RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT: 957case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I: 958case RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S:
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\SectionWriter.cs (3)
49RelocType relocType, 77RelocType relocType, 82int size = relocType == RelocType.IMAGE_REL_BASED_DIR64 ? sizeof(ulong) : sizeof(uint);
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\WasmInstructions.cs (16)
328private readonly RelocType _relocType; 330public WasmEncodableSymbol(ISymbolNode symbol, RelocType relocType) 348case RelocType.WASM_FUNCTION_INDEX_LEB: 349case RelocType.WASM_MEMORY_ADDR_LEB: 350case RelocType.WASM_MEMORY_ADDR_REL_LEB: 351case RelocType.WASM_TYPE_INDEX_LEB: 352case RelocType.WASM_GLOBAL_INDEX_LEB: 353case RelocType.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB: 357case RelocType.WASM_TABLE_INDEX_SLEB: 358case RelocType.WASM_MEMORY_ADDR_REL_SLEB: 465return base.EncodeSize() + Relocation.GetSize(RelocType.WASM_TYPE_INDEX_LEB) + (int)tableSize; 471int relocSize = Relocation.GetSize(RelocType.WASM_TYPE_INDEX_LEB); 482buffer[0] = new Relocation(RelocType.WASM_TYPE_INDEX_LEB, base.EncodeSize(), _type); 491public WasmLEBConstantReloc(WasmExprKind kind, ISymbolNode symbol, RelocType relocType) : base(kind) 819return new WasmLEBConstantReloc(WasmExprKind.I32Const, symbolNode, RelocType.WASM_MEMORY_ADDR_REL_SLEB); 826public static WasmExpr LoadWithRVAOffset(ISymbolNode symbolNode) => new WasmMemoryArgInstruction<WasmEncodableSymbol>(WasmExprKind.I32Load, 4, new WasmEncodableSymbol(symbolNode, RelocType.WASM_MEMORY_ADDR_REL_LEB));
src\runtime\src\coreclr\tools\Common\Compiler\ObjectWriter\WasmObjectWriter.cs (19)
783private readonly record struct PendingBaseReloc(int SectionIndex, long Offset, RelocType FileRelocType); 802RelocType fileRelocType = Relocation.GetFileRelocationType(reloc.Type); 803if (fileRelocType is not RelocType.IMAGE_REL_BASED_ABSOLUTE) 907case RelocType.WASM_TYPE_INDEX_LEB: 921case RelocType.IMAGE_REL_BASED_ABSOLUTE: 925case RelocType.IMAGE_REL_BASED_DIR64: 926case RelocType.IMAGE_REL_BASED_HIGHLOW: 932case RelocType.IMAGE_REL_BASED_ADDR32NB: 936case RelocType.IMAGE_REL_BASED_REL32: 937case RelocType.IMAGE_REL_BASED_RELPTR32: 941case RelocType.IMAGE_REL_FILE_ABSOLUTE: 946case RelocType.WASM_MEMORY_ADDR_REL_SLEB: 964case RelocType.WASM_MEMORY_ADDR_REL_LEB: 980case RelocType.WASM_TABLE_INDEX_I32: 981case RelocType.WASM_TABLE_INDEX_I64: 982case RelocType.WASM_TABLE_INDEX_SLEB: 983case RelocType.WASM_TABLE_INDEX_REL_I32: 994case RelocType.WASM_FUNCTION_INDEX_LEB: 1004case RelocType.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB:
src\runtime\src\coreclr\tools\Common\Compiler\Win32Resources\ResourceData.Win32Structs.cs (1)
101RelocType.IMAGE_REL_BASED_ADDR32NB,
src\runtime\src\coreclr\tools\Common\JitInterface\CorInfoImpl.cs (33)
4291private RelocType GetRelocType(CorInfoReloc reloc) 4294CorInfoReloc.DIRECT => PointerSize == 8 ? RelocType.IMAGE_REL_BASED_DIR64 : RelocType.IMAGE_REL_BASED_HIGHLOW, 4295CorInfoReloc.RELATIVE32 => RelocType.IMAGE_REL_BASED_REL32, 4296CorInfoReloc.ARM64_BRANCH26 => RelocType.IMAGE_REL_BASED_ARM64_BRANCH26, 4297CorInfoReloc.ARM64_PAGEBASE_REL21 => RelocType.IMAGE_REL_BASED_ARM64_PAGEBASE_REL21, 4298CorInfoReloc.ARM64_PAGEOFFSET_12A => RelocType.IMAGE_REL_BASED_ARM64_PAGEOFFSET_12A, 4299CorInfoReloc.ARM64_LIN_TLSDESC_ADR_PAGE21 => RelocType.IMAGE_REL_AARCH64_TLSDESC_ADR_PAGE21, 4300CorInfoReloc.ARM64_LIN_TLSDESC_LD64_LO12 => RelocType.IMAGE_REL_AARCH64_TLSDESC_LD64_LO12, 4301CorInfoReloc.ARM64_LIN_TLSDESC_ADD_LO12 => RelocType.IMAGE_REL_AARCH64_TLSDESC_ADD_LO12, 4302CorInfoReloc.ARM64_LIN_TLSDESC_CALL => RelocType.IMAGE_REL_AARCH64_TLSDESC_CALL, 4303CorInfoReloc.ARM64_WIN_TLS_SECREL_HIGH12A => RelocType.IMAGE_REL_ARM64_TLS_SECREL_HIGH12A, 4304CorInfoReloc.ARM64_WIN_TLS_SECREL_LOW12A => RelocType.IMAGE_REL_ARM64_TLS_SECREL_LOW12A, 4305CorInfoReloc.AMD64_WIN_SECREL => RelocType.IMAGE_REL_SECREL, 4306CorInfoReloc.AMD64_LIN_TLSGD => RelocType.IMAGE_REL_TLSGD, 4307CorInfoReloc.ARM32_THUMB_BRANCH24 => RelocType.IMAGE_REL_BASED_THUMB_BRANCH24, 4308CorInfoReloc.ARM32_THUMB_MOV32 => RelocType.IMAGE_REL_BASED_THUMB_MOV32, 4309CorInfoReloc.ARM32_THUMB_MOV32_PCREL => RelocType.IMAGE_REL_BASED_THUMB_MOV32_PCREL, 4310CorInfoReloc.LOONGARCH64_PC => RelocType.IMAGE_REL_BASED_LOONGARCH64_PC, 4311CorInfoReloc.LOONGARCH64_JIR => RelocType.IMAGE_REL_BASED_LOONGARCH64_JIR, 4312CorInfoReloc.RISCV64_CALL_PLT => RelocType.IMAGE_REL_BASED_RISCV64_CALL_PLT, 4313CorInfoReloc.RISCV64_PCREL_I => RelocType.IMAGE_REL_BASED_RISCV64_PCREL_I, 4314CorInfoReloc.RISCV64_PCREL_S => RelocType.IMAGE_REL_BASED_RISCV64_PCREL_S, 4315CorInfoReloc.WASM_FUNCTION_INDEX_LEB => RelocType.WASM_FUNCTION_INDEX_LEB, 4316CorInfoReloc.WASM_TABLE_INDEX_SLEB => RelocType.WASM_TABLE_INDEX_SLEB, 4317CorInfoReloc.WASM_MEMORY_ADDR_LEB => RelocType.WASM_MEMORY_ADDR_LEB, 4318CorInfoReloc.WASM_MEMORY_ADDR_SLEB => RelocType.WASM_MEMORY_ADDR_SLEB, 4319CorInfoReloc.WASM_MEMORY_ADDR_REL_SLEB => RelocType.WASM_MEMORY_ADDR_REL_SLEB, 4320CorInfoReloc.WASM_MEMORY_ADDR_REL_LEB => RelocType.WASM_MEMORY_ADDR_REL_LEB, 4321CorInfoReloc.WASM_TYPE_INDEX_LEB => RelocType.WASM_TYPE_INDEX_LEB, 4322CorInfoReloc.WASM_GLOBAL_INDEX_LEB => RelocType.WASM_GLOBAL_INDEX_LEB, 4323CorInfoReloc.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB => RelocType.WASM_CLR_RESTORE_CONTEXT_EXCEPTION_TAG_LEB, 4384RelocType relocType = GetRelocType(fRelocType);