diff options
| author | Chris Lattner <sabre@nondot.org> | 2010-04-26 23:37:21 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2010-04-26 23:37:21 +0000 |
| commit | 6a5e706e3c99f5995dbefe1a4f058c7b49a0bb01 (patch) | |
| tree | 34dcbe21fc6100c474a93ffed9494ff64bd5f222 /llvm/lib/Target/X86/X86InstrInfo.h | |
| parent | b8b85c1ddb5ce5a2a5ac7f3180055b38fec6500f (diff) | |
| download | bcm5719-llvm-6a5e706e3c99f5995dbefe1a4f058c7b49a0bb01.tar.gz bcm5719-llvm-6a5e706e3c99f5995dbefe1a4f058c7b49a0bb01.zip | |
on darwin empty functions need to codegen into something of non-zero length,
otherwise labels get incorrectly merged. We handled this by emitting a
".byte 0", but this isn't correct on thumb/arm targets where the text segment
needs to be a multiple of 2/4 bytes. Handle this by emitting a noop. This
is more gross than it should be because arm/ppc are not fully mc'ized yet.
This fixes rdar://7908505
llvm-svn: 102400
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrInfo.h')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.h b/llvm/lib/Target/X86/X86InstrInfo.h index 3626f96b6aa..52a9050c1d1 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.h +++ b/llvm/lib/Target/X86/X86InstrInfo.h @@ -693,6 +693,8 @@ public: int64_t Offset1, int64_t Offset2, unsigned NumLoads) const; + virtual void getNoopForMachoTarget(MCInst &NopInst) const; + virtual bool ReverseBranchCondition(SmallVectorImpl<MachineOperand> &Cond) const; |

