Emit a single _udivmodsi4 libcall instead of two separate _udivsi3 and
authorEvan Cheng <evan.cheng@apple.com>
Thu, 21 Jun 2012 05:56:05 +0000 (05:56 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 21 Jun 2012 05:56:05 +0000 (05:56 +0000)
commit8ef0968dc230f6fae8fcbd6dc4a5cb9ccc780b6b
tree4dcacc50d2c34a682fe9314c4b7a5c559e97d1b6
parentb60182e99b97f31756b013022d94fcfb1aa0be73
Emit a single _udivmodsi4 libcall instead of two separate _udivsi3 and
_umodsi3 libcalls if they have the same arguments. This optimization
was apparently broken if one of the node was replaced in place.
rdar://11714607

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158900 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
test/CodeGen/ARM/divmod.ll