summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/SourceManager.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2017-06-05 17:01:10 +0000
committerSanjay Patel <spatel@rotateright.com>2017-06-05 17:01:10 +0000
commit6350de76fa8c369a6cc659b31f558bf4d352a58a (patch)
tree4a09ea4a543b10888aad2b1da78746b5f4bee5fe /clang/lib/Basic/SourceManager.cpp
parent807b708d1375558b25d74253c952e04d092c5b91 (diff)
downloadbcm5719-llvm-6350de76fa8c369a6cc659b31f558bf4d352a58a.tar.gz
bcm5719-llvm-6350de76fa8c369a6cc659b31f558bf4d352a58a.zip
[DAGCombine] Fix unchecked calls to DAGCombiner::*ExtPromoteOperand
Other calls to DAGCombiner::*PromoteOperand check the result, but here it could cause an assertion in getNode. Falling back to any extend in this case instead of failing outright seems correct to me. No test case because: The failure was triggered by an out of tree backend. In order to trigger it, a backend would need to overload TargetLowering::IsDesirableToPromoteOp to return true for a type for which ISD::SIGN_EXTEND_INREG is marked illegal. In tree, only X86 overloads and sometimes returns true for MVT::i16 yet it marks setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i16 , Legal);. Patch by Jacob Young! Differential Revision: https://reviews.llvm.org/D33633 llvm-svn: 304723
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud