Open
Description
$ cat /tmp/a.ll
define double @f() {
entry:
%0 = shl nuw i64 4503599627370496, 11
%cmp3.not.1.i.i856 = icmp eq i64 %0, 0
br i1 %cmp3.not.1.i.i856, label %if.end23.sink.split.i894, label %lor.lhs.false.i858
lor.lhs.false.i858: ; preds = %entry
br label %if.end23.sink.split.i894
if.end23.sink.split.i894: ; preds = %lor.lhs.false.i858, %entry
ret double 0.000000e+00
}
# opt built with ubsan
$ opt -p constraint-elimination -disable-output /tmp/a.ll
../../llvm/lib/Transforms/Scalar/ConstraintElimination.cpp:700:11: runtime error: signed integer overflow: -9223372036854775808 * -1 cannot be represented in type 'int64_t' (aka 'long')
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../../llvm/lib/Transforms/Scalar/ConstraintElimination.cpp:700:11