xref: /aosp_15_r20/external/llvm/test/Analysis/ScalarEvolution/div-overflow.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -scalar-evolution -analyze | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker; CHECK: -->  ((-128 * %a) /u -128)
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Worker; Don't let ScalarEvolution fold this div away.
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Workerdefine i8 @foo(i8 %a) {
8*9880d681SAndroid Build Coastguard Worker        %t0 = shl i8 %a, 7
9*9880d681SAndroid Build Coastguard Worker        %t1 = lshr i8 %t0, 7
10*9880d681SAndroid Build Coastguard Worker        ret i8 %t1
11*9880d681SAndroid Build Coastguard Worker}
12