summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/Passes.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2012-10-02 23:49:13 +0000
committerEvan Cheng <evan.cheng@apple.com>2012-10-02 23:49:13 +0000
commit214156c43dc1522c22faa730e5c51e192992478b (patch)
tree0f662fb99f62456cd45b5f61200c96aefcef8427 /llvm/lib/CodeGen/Passes.cpp
parentd7e9a450eb4b3eb4c97408764b1bbad796bc6941 (diff)
downloadbcm5719-llvm-214156c43dc1522c22faa730e5c51e192992478b.tar.gz
bcm5719-llvm-214156c43dc1522c22faa730e5c51e192992478b.zip
Fix a serious X86 instruction selection bug. In
X86DAGToDAGISel::PreprocessISelDAG(), isel is moving load inside callseq_start / callseq_end so it can be folded into a call. This can create a cycle in the DAG when the call is glued to a copytoreg. We have been lucky this hasn't caused too many issues because the pre-ra scheduler has special handling of call sequences. However, it has caused a crash in a specific tailcall case. rdar://12393897 llvm-svn: 165072
Diffstat (limited to 'llvm/lib/CodeGen/Passes.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud