add targetoperand flags for jump tables, constant pool and block address
authorChris Lattner <sabre@nondot.org>
Mon, 15 Nov 2010 02:46:57 +0000 (02:46 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 15 Nov 2010 02:46:57 +0000 (02:46 +0000)
commit1e61e69d401045c54b15815f15a0fdb3ca56a9b5
treeece661c4c7b88ccde11f44e0ef5de5c1b1bdd82d
parentdd57417c08d3fbb52935b70cf14edef34535d045
add targetoperand flags for jump tables, constant pool and block address
nodes to indicate when ha16/lo16 modifiers should be used.  This lets
us pass PowerPC/indirectbr.ll.

The one annoying thing about this patch is that the MCSymbolExpr isn't
expressive enough to represent ha16(label1-label2) which we need on
PowerPC.  I have a terrible hack in the meantime, but this will have
to be revisited at some point.

Last major conversion item left is global variable references.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119105 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/MC/MCExpr.h
lib/MC/MCExpr.cpp
lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp
lib/Target/PowerPC/PPC.h
lib/Target/PowerPC/PPCISelLowering.cpp
lib/Target/PowerPC/PPCISelLowering.h
lib/Target/PowerPC/PPCMCInstLower.cpp
lib/Target/PowerPC/PPCSubtarget.cpp
lib/Target/X86/X86ISelLowering.cpp