@@ -47,6 +47,9 @@ static uint64_t adjustFixupValue(unsigned Kind, uint64_t Value) {
4747 case PPC::fixup_ppc_half16ds:
4848 case PPC::fixup_ppc_half16dq:
4949 return Value & 0xfffc ;
50+ case PPC::fixup_ppc_pcrel32:
51+ case PPC::fixup_ppc_imm32:
52+ return Value & 0xffffffff ;
5053 case PPC::fixup_ppc_pcrel34:
5154 case PPC::fixup_ppc_imm34:
5255 return Value & 0x3ffffffff ;
@@ -71,6 +74,8 @@ static unsigned getFixupKindNumBytes(unsigned Kind) {
7174 case PPC::fixup_ppc_br24abs:
7275 case PPC::fixup_ppc_br24_notoc:
7376 return 4 ;
77+ case PPC::fixup_ppc_pcrel32:
78+ case PPC::fixup_ppc_imm32:
7479 case PPC::fixup_ppc_pcrel34:
7580 case PPC::fixup_ppc_imm34:
7681 case FK_Data_8:
@@ -154,6 +159,8 @@ MCFixupKindInfo PPCAsmBackend::getFixupKindInfo(MCFixupKind Kind) const {
154159 {" fixup_ppc_brcond14abs" , 16 , 14 , 0 },
155160 {" fixup_ppc_half16" , 0 , 16 , 0 },
156161 {" fixup_ppc_half16ds" , 0 , 14 , 0 },
162+ {" fixup_ppc_pcrel32" , 0 , 32 , 0 },
163+ {" fixup_ppc_imm32" , 0 , 32 , 0 },
157164 {" fixup_ppc_pcrel34" , 0 , 34 , 0 },
158165 {" fixup_ppc_imm34" , 0 , 34 , 0 },
159166 {" fixup_ppc_nofixup" , 0 , 0 , 0 }};
@@ -166,6 +173,8 @@ MCFixupKindInfo PPCAsmBackend::getFixupKindInfo(MCFixupKind Kind) const {
166173 {" fixup_ppc_brcond14abs" , 2 , 14 , 0 },
167174 {" fixup_ppc_half16" , 0 , 16 , 0 },
168175 {" fixup_ppc_half16ds" , 2 , 14 , 0 },
176+ {" fixup_ppc_pcrel32" , 0 , 32 , 0 },
177+ {" fixup_ppc_imm32" , 0 , 32 , 0 },
169178 {" fixup_ppc_pcrel34" , 0 , 34 , 0 },
170179 {" fixup_ppc_imm34" , 0 , 34 , 0 },
171180 {" fixup_ppc_nofixup" , 0 , 0 , 0 }};
0 commit comments