The toxic stew of created values named 'tmp' and tests that already have values named 'tmp' and CHECK lines looking for values named 'tmp' causes bad things to happen in our test line auto-generation scripts because it wants to use 'TMP' as a prefix for unnamed values. Use less 'tmp' to avoid that. llvm-svn: 317818
17 lines
416 B
LLVM
17 lines
416 B
LLVM
; RUN: opt < %s -reassociate -instcombine -S | FileCheck %s
|
|
|
|
; There should be exactly one shift and one add left.
|
|
|
|
define i32 @test1(i32 %X, i32 %Y) {
|
|
; CHECK-LABEL: @test1(
|
|
; CHECK-NEXT: [[REASS_ADD:%.*]] = add i32 %Y, %X
|
|
; CHECK-NEXT: [[REASS_MUL:%.*]] = shl i32 [[REASS_ADD]], 1
|
|
; CHECK-NEXT: ret i32 [[REASS_MUL]]
|
|
;
|
|
%t2 = shl i32 %X, 1
|
|
%t6 = shl i32 %Y, 1
|
|
%t4 = add i32 %t6, %t2
|
|
ret i32 %t4
|
|
}
|
|
|