Changes in directory llvm/lib/Target/PowerPC:
PPCInstr64Bit.td updated: 1.39 -> 1.40 PPCInstrInfo.td updated: 1.273 -> 1.274 --- Log message: one important bugfix: PPC32 didn't have both elf and macho support for external symbols and global addresses. Add the missing ones. one important workaround: PPCISD::CALL is matched by both PPCcall_ELF and PPCcall_Macho, disable the _ELF patterns for now. --- Diffs of the changes: (+10 -6) PPCInstr64Bit.td | 6 +++--- PPCInstrInfo.td | 10 +++++++--- 2 files changed, 10 insertions(+), 6 deletions(-) Index: llvm/lib/Target/PowerPC/PPCInstr64Bit.td diff -u llvm/lib/Target/PowerPC/PPCInstr64Bit.td:1.39 llvm/lib/Target/PowerPC/PPCInstr64Bit.td:1.40 --- llvm/lib/Target/PowerPC/PPCInstr64Bit.td:1.39 Sat Feb 24 23:34:32 2007 +++ llvm/lib/Target/PowerPC/PPCInstr64Bit.td Sun Feb 25 13:20:53 2007 @@ -102,7 +102,7 @@ def BLA8_ELF : IForm<18, 1, 1, (ops aaddr:$func, variable_ops), - "bla $func", BrB, [(PPCcall_ELF (i64 imm:$func))]>; + "bla $func", BrB, [/*(PPCcall_ELF (i64 imm:$func))*/]>; } @@ -111,12 +111,12 @@ (BL8_Macho tglobaladdr:$dst)>; def : Pat<(PPCcall_Macho (i64 texternalsym:$dst)), (BL8_Macho texternalsym:$dst)>; - +/* def : Pat<(PPCcall_ELF (i64 tglobaladdr:$dst)), (BL8_ELF tglobaladdr:$dst)>; def : Pat<(PPCcall_ELF (i64 texternalsym:$dst)), (BL8_ELF texternalsym:$dst)>; - +*/ //===----------------------------------------------------------------------===// // 64-bit SPR manipulation instrs. Index: llvm/lib/Target/PowerPC/PPCInstrInfo.td diff -u llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.273 llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.274 --- llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.273 Sat Feb 24 23:34:32 2007 +++ llvm/lib/Target/PowerPC/PPCInstrInfo.td Sun Feb 25 13:20:53 2007 @@ -407,11 +407,11 @@ def BLA_ELF : IForm<18, 1, 1, (ops aaddr:$func, variable_ops), "bla $func", BrB, - [(PPCcall_ELF (i32 imm:$func))]>; + [/*(PPCcall_ELF (i32 imm:$func))*/]>; def BCTRL_ELF : XLForm_2_ext<19, 528, 20, 0, 1, (ops variable_ops), "bctrl", BrB, - [(PPCbctrl_ELF)]>; + [/*(PPCbctrl_ELF)*/]>; } // DCB* instructions. @@ -1102,8 +1102,12 @@ // Calls def : Pat<(PPCcall_Macho (i32 tglobaladdr:$dst)), (BL_Macho tglobaladdr:$dst)>; +def : Pat<(PPCcall_Macho (i32 texternalsym:$dst)), + (BL_Macho texternalsym:$dst)>; +/*def : Pat<(PPCcall_ELF (i32 tglobaladdr:$dst)), + (BL_ELF tglobaladdr:$dst)>; def : Pat<(PPCcall_ELF (i32 texternalsym:$dst)), - (BL_ELF texternalsym:$dst)>; + (BL_ELF texternalsym:$dst)>;*/ // Hi and Lo for Darwin Global Addresses. def : Pat<(PPChi tglobaladdr:$in, 0), (LIS tglobaladdr:$in)>; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits