diff options
author | Andrew Trick <atrick@apple.com> | 2011-09-20 03:17:40 +0000 |
---|---|---|
committer | Andrew Trick <atrick@apple.com> | 2011-09-20 03:17:40 +0000 |
commit | 8586e62d91771717510593cfedd0dfee226f9773 (patch) | |
tree | 4c701b1e5f3eb731a1e3e999a8fdf7fa0a7988eb /llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp | |
parent | 53df4b6dfa3300a98f9336f5fee7f676c878680d (diff) | |
download | bcm5719-llvm-8586e62d91771717510593cfedd0dfee226f9773.tar.gz bcm5719-llvm-8586e62d91771717510593cfedd0dfee226f9773.zip |
ARM isel bug fix for adds/subs operands.
Modified ARMISelLowering::AdjustInstrPostInstrSelection to handle the
full gamut of CPSR defs/uses including instructins whose "optional"
cc_out operand is not really optional. This allowed removal of the
hasPostISelHook to simplify the .td files and make the implementation
more robust.
Fixes rdar://10137436: sqlite3 miscompile
llvm-svn: 140134
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp')
-rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp b/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp index e2e906afa6a..eebf2b2f691 100644 --- a/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp @@ -763,8 +763,7 @@ EmitMachineNode(SDNode *Node, bool IsClone, bool IsCloned, } // Run post-isel target hook to adjust this instruction if needed. - if (II.hasPostISelHook()) - TLI->AdjustInstrPostInstrSelection(MI, Node); + TLI->AdjustInstrPostInstrSelection(MI, Node); } /// EmitSpecialNode - Generate machine code for a target-independent node and |