summaryrefslogtreecommitdiff
path: root/lib/Target/PowerPC/PPC.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-11-14 23:42:06 +0000
committerChris Lattner <sabre@nondot.org>2010-11-14 23:42:06 +0000
commitb908258d59745ab9f150c66f94541951cf9c9211 (patch)
tree4d0f0b992e30124a28c3d508c4bb9447c2e2de66 /lib/Target/PowerPC/PPC.h
parent21d272874b750201272ef3f00441b58932c3d769 (diff)
downloadllvm-b908258d59745ab9f150c66f94541951cf9c9211.tar.gz
llvm-b908258d59745ab9f150c66f94541951cf9c9211.tar.bz2
llvm-b908258d59745ab9f150c66f94541951cf9c9211.tar.xz
implement support for the MO_DARWIN_STUB TargetOperand flag,
and have isel apply to to call operands as required. This allows us to get $stub suffixes on label references on ppc/tiger with the new instprinter, fixing two tests. Only 2 to go. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119093 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/PPC.h')
-rw-r--r--lib/Target/PowerPC/PPC.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPC.h b/lib/Target/PowerPC/PPC.h
index 24e2710a15..e3c071c447 100644
--- a/lib/Target/PowerPC/PPC.h
+++ b/lib/Target/PowerPC/PPC.h
@@ -39,6 +39,22 @@ void LowerPPCMachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI,
extern Target ThePPC32Target;
extern Target ThePPC64Target;
+ namespace PPCII {
+
+ /// Target Operand Flag enum.
+ enum TOF {
+ //===------------------------------------------------------------------===//
+ // PPC Specific MachineOperand flags.
+ MO_NO_FLAG,
+
+ /// MO_DARWIN_STUB - On a symbol operand "FOO", this indicates that the
+ /// reference is actually to the "FOO$stub" symbol. This is used for calls
+ /// and jumps to external functions on Tiger and earlier.
+ MO_DARWIN_STUB
+
+ };
+ } // end namespace PPCII
+
} // end namespace llvm;
// Defines symbolic names for PowerPC registers. This defines a mapping from