When removing a function from the function set and adding it to deferred, we
[llvm.git] / test / Transforms / InstCombine / sdiv-1.ll
blobc46b5eaef4a87f2cdc7bb26a4cb204169c42d7d0
1 ; RUN: opt < %s -instcombine -inline -S | not grep '-715827882'
2 ; PR3142
4 define i32 @a(i32 %X) nounwind readnone {
5 entry:
6        %0 = sub i32 0, %X
7        %1 = sdiv i32 %0, -3
8        ret i32 %1
11 define i32 @b(i32 %X) nounwind readnone {
12 entry:
13        %0 = call i32 @a(i32 -2147483648)
14        ret i32 %0
17 define i32 @c(i32 %X) nounwind readnone {
18 entry:
19        %0 = sub i32 0, -2147483648
20        %1 = sdiv i32 %0, -3
21        ret i32 %1