diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-08-21 00:34:53 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-08-21 00:34:53 +0000 |
commit | 74e6f9fc6546c4b0104e1b5e8e037415ea62ff7c (patch) | |
tree | 35df329789b91d8c56680d2a06367c9155eb0c6f | |
parent | 075d5d2e99eec488f8cf0e1d53057d26cf62b457 (diff) | |
download | bcm5719-llvm-74e6f9fc6546c4b0104e1b5e8e037415ea62ff7c.tar.gz bcm5719-llvm-74e6f9fc6546c4b0104e1b5e8e037415ea62ff7c.zip |
Add a missing def flag.
*** Bad machine code: Explicit definition marked as use ***
- function: test_cos
- basic block: BB#0 L.entry (0x7ff2a2024fd0)
- instruction: VSETLNi32 %D11, %D11<undef>, %R0, 0, pred:14, pred:%noreg, %Q5<imp-use,kill>, %Q5<imp-def>
- operand 0: %D11
llvm-svn: 162247
-rw-r--r-- | llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/2011-11-29-128bitArithmetics.ll | 2 |
2 files changed, 3 insertions, 5 deletions
diff --git a/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp b/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp index 64d80dc67ab..29033e5117f 100644 --- a/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp +++ b/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp @@ -3464,13 +3464,11 @@ ARMBaseInstrInfo::setExecutionDomain(MachineInstr *MI, unsigned Domain) const { MI->RemoveOperand(0); MI->setDesc(get(ARM::VSETLNi32)); - MIB.addReg(DReg); - MIB.addReg(DReg); + MIB.addReg(DReg, RegState::Define); + MIB.addReg(DReg, RegState::Undef); MIB.addReg(SrcReg); MIB.addImm(Lane); - MIB->getOperand(1).setIsUndef(); - if (isKill) MIB->addRegisterKilled(DstReg, TRI, true); MIB->addRegisterDefined(DstReg, TRI); diff --git a/llvm/test/CodeGen/ARM/2011-11-29-128bitArithmetics.ll b/llvm/test/CodeGen/ARM/2011-11-29-128bitArithmetics.ll index 89c01d58c39..bf2db3aa252 100644 --- a/llvm/test/CodeGen/ARM/2011-11-29-128bitArithmetics.ll +++ b/llvm/test/CodeGen/ARM/2011-11-29-128bitArithmetics.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=arm -mcpu=cortex-a9 | FileCheck %s +; RUN: llc < %s -march=arm -mcpu=cortex-a9 -verify-machineinstrs | FileCheck %s @A = global <4 x float> <float 0., float 1., float 2., float 3.> |