summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/CodeCompleteConsumer.cpp
diff options
context:
space:
mode:
authorArtyom Skrobov <Artyom.Skrobov@arm.com>2015-10-20 13:06:02 +0000
committerArtyom Skrobov <Artyom.Skrobov@arm.com>2015-10-20 13:06:02 +0000
commitb844fa7fc0aa4b47d062dea7495183d78d23b7b9 (patch)
treee869981cdd650c510e172582a60f0512162922c7 /clang/lib/Sema/CodeCompleteConsumer.cpp
parent3ca34bc8707e6875a1ba0b18ff903427281131aa (diff)
downloadbcm5719-llvm-b844fa7fc0aa4b47d062dea7495183d78d23b7b9.tar.gz
bcm5719-llvm-b844fa7fc0aa4b47d062dea7495183d78d23b7b9.zip
Combining DIV+REM->DIVREM doesn't belong in LegalizeDAG; move it over into DAGCombiner.
Summary: In addition to moving the code over, this patch amends the DIV,REM -> DIVREM combining to run on all affected nodes at once: if the nodes are converted to DIVREM one at a time, then the resulting DIVREM may get legalized by the backend into something target-specific that we won't be able to recognize and correlate with the remaining nodes. The motivation is to "prepare terrain" for D13862: when we set DIV and REM to be legalized to libcalls, instead of the DIVREM, we otherwise lose the ability to combine them together. To prevent this, we need to take the DIV,REM -> DIVREM combining out of the lowering stage. Reviewers: RKSimon, eli.friedman, rengolin Subscribers: john.brawn, rengolin, llvm-commits Differential Revision: http://reviews.llvm.org/D13733 llvm-svn: 250825
Diffstat (limited to 'clang/lib/Sema/CodeCompleteConsumer.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud