diff options
author | Sebastian Pop <sebpop@gmail.com> | 2016-12-12 02:52:51 +0000 |
---|---|---|
committer | Sebastian Pop <sebpop@gmail.com> | 2016-12-12 02:52:51 +0000 |
commit | 8c9cc8c86be80abd4224341314725d03551460d6 (patch) | |
tree | 233be3a765d7f5e2f181c5dd2ffaaf5085c473d9 /clang/lib/Sema/SemaExceptionSpec.cpp | |
parent | 7fc6d34ed1fce99505713c5b09b3701aaac9d60e (diff) | |
download | bcm5719-llvm-8c9cc8c86be80abd4224341314725d03551460d6.tar.gz bcm5719-llvm-8c9cc8c86be80abd4224341314725d03551460d6.zip |
[SCEVExpand] do not hoist divisions by zero (PR30935)
SCEVExpand computes the insertion point for the components of a SCEV to be code
generated. When it comes to generating code for a division, SCEVexpand would
not be able to check (at compilation time) all the conditions necessary to avoid
a division by zero. The patch disables hoisting of expressions containing
divisions by anything other than non-zero constants in order to avoid hoisting
these expressions past conditions that should hold before doing the division.
The patch passes check-all on x86_64-linux.
Differential Revision: https://reviews.llvm.org/D27216
llvm-svn: 289412
Diffstat (limited to 'clang/lib/Sema/SemaExceptionSpec.cpp')
0 files changed, 0 insertions, 0 deletions