| ... | @@ -9009,11 +9009,6 @@ fn addRelocAssumeCapacity( | ... | @@ -9009,11 +9009,6 @@ fn addRelocAssumeCapacity( |
| 9009 | .WDISP22, | 9009 | .WDISP22, |
| 9010 | .HI22, | 9010 | .HI22, |
| 9011 | .LO10, | 9011 | .LO10, |
| 9012 | .HIPLT22, | | |
| 9013 | .LOPLT10, | | |
| 9014 | .PCPLT22, | | |
| 9015 | .PCPLT10, | | |
| 9016 | .OLO10, | | |
| 9017 | .HH22, | 9012 | .HH22, |
| 9018 | .HM10, | 9013 | .HM10, |
| 9019 | .LM22, | 9014 | .LM22, |
| ... | @@ -9024,14 +9019,29 @@ fn addRelocAssumeCapacity( | ... | @@ -9024,14 +9019,29 @@ fn addRelocAssumeCapacity( |
| 9024 | .WDISP19, | 9019 | .WDISP19, |
| 9025 | .HIX22, | 9020 | .HIX22, |
| 9026 | .LOX10, | 9021 | .LOX10, |
| 9027 | .REGISTER, | | |
| 9028 | .H34, | 9022 | .H34, |
| 9029 | .WDISP10, | 9023 | .WDISP10, |
| 9030 | => return error.UnimplementedRelocation, | 9024 | => return error.UnimplementedRelocation, |
| 9031 | | 9025 | |
| | 9026 | // Nobody seems to support these. |
| | 9027 | .HIPLT22, |
| | 9028 | .LOPLT10, |
| | 9029 | .PCPLT22, |
| | 9030 | .PCPLT10, |
| | 9031 | => return error.UnimplementedRelocation, |
| | 9032 | |
| | 9033 | // Needs to use the second addend in `ELF64_R_TYPE_DATA(reloc.r_info)` which we currently can't model. |
| | 9034 | .OLO10 => return error.UnimplementedRelocation, |
| | 9035 | |
| | 9036 | // Does not patch any bytes. Together with `STT_SPARC_REGISTER`, this is used to indicate that an object |
| | 9037 | // file owns a global register and what value it should be initialized to. I don't think this sees any |
| | 9038 | // real-world use. |
| | 9039 | .REGISTER => return error.UnimplementedRelocation, |
| | 9040 | |
| 9032 | // These need similar handling to `R_X86_64_GOTOFF64`. No compiler seems to emit them though. | 9041 | // These need similar handling to `R_X86_64_GOTOFF64`. No compiler seems to emit them though. |
| 9033 | .GOTDATA_HIX22 => return error.UnimplementedRelocation, | 9042 | .GOTDATA_HIX22, |
| 9034 | .GOTDATA_LOX10 => return error.UnimplementedRelocation, | 9043 | .GOTDATA_LOX10, |
| | 9044 | => return error.UnimplementedRelocation, |
| 9035 | | 9045 | |
| 9036 | // These relocations signal that certain relaxations are legal, but this linker does | 9046 | // These relocations signal that certain relaxations are legal, but this linker does |
| 9037 | // not yet implement relaxation, so these are ignored. | 9047 | // not yet implement relaxation, so these are ignored. |
| ... | @@ -9063,8 +9073,8 @@ fn addRelocAssumeCapacity( | ... | @@ -9063,8 +9073,8 @@ fn addRelocAssumeCapacity( |
| 9063 | .DISP32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.rel, .{ .dest = .@"32", .cast = .signed, .shift = .@"0" })), | 9073 | .DISP32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.rel, .{ .dest = .@"32", .cast = .signed, .shift = .@"0" })), |
| 9064 | .DISP64 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.rel, .{ .dest = .@"64", .cast = .signed, .shift = .@"0" })), | 9074 | .DISP64 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.rel, .{ .dest = .@"64", .cast = .signed, .shift = .@"0" })), |
| 9065 | | 9075 | |
| 9066 | .SIZE32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.size, .{ .dest = .@"32", .cast = .unsigned, .shift = .@"0" })), | 9076 | .SIZE32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.size, .{ .dest = .@"32", .cast = .unsigned, .shift = .@"0" })), |
| 9067 | .SIZE64 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.size, .{ .dest = .@"64", .cast = .unsigned, .shift = .@"0" })), | 9077 | .SIZE64 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.size, .{ .dest = .@"64", .cast = .unsigned, .shift = .@"0" })), |
| 9068 | | 9078 | |
| 9069 | .PCPLT32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.pltrel, .{ .dest = .@"32", .cast = .signed, .shift = .@"0" })), | 9079 | .PCPLT32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.pltrel, .{ .dest = .@"32", .cast = .signed, .shift = .@"0" })), |
| 9070 | .PLT32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.pltabs, .{ .dest = .@"32", .cast = .unsigned, .shift = .@"0" })), | 9080 | .PLT32 => try elf.addSymbolRelocAssumeCapacity(node, offset, target, addend, .simple(.pltabs, .{ .dest = .@"32", .cast = .unsigned, .shift = .@"0" })), |