reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | ; RUN: opt -S -instcombine < %s | FileCheck %s ; Checking for a crash declare void @use.i1(i1 %val) declare void @use.i64(i64 %val) define i64 @f(i32 %x) { ; CHECK-LABEL: @f( entry: %x.wide = sext i32 %x to i64 %minus.x = sub i32 0, %x %minus.x.wide = sext i32 %minus.x to i64 %c = icmp slt i32 %x, 0 %val = select i1 %c, i64 %x.wide, i64 %minus.x.wide call void @use.i1(i1 %c) call void @use.i64(i64 %x.wide) ret i64 %val ; CHECK: ret i64 %val } |