150
|
1 ; RUN: opt -S -early-cse < %s | FileCheck %s
|
|
2
|
|
3 ; This test isn't directly related to EarlyCSE or varargs. It is just
|
|
4 ; using these as a vehicle for testing the correctness of
|
|
5 ; haveSameSpecialState around operand bundles.
|
|
6
|
|
7 declare i32 @foo(...)
|
|
8
|
|
9 define i32 @f() {
|
|
10 ; CHECK-LABEL: @f(
|
|
11 entry:
|
|
12 ; CHECK: %v0 = call i32 (...) @foo(
|
|
13 ; CHECK: %v1 = call i32 (...) @foo(
|
|
14 ; CHECK: %v = add i32 %v0, %v1
|
|
15 ; CHECK: ret i32 %v
|
|
16
|
|
17 %v0 = call i32 (...) @foo(i32 10) readonly [ "foo"(i32 20) ]
|
|
18 %v1 = call i32 (...) @foo() readonly [ "foo"(i32 10, i32 20) ]
|
|
19 %v = add i32 %v0, %v1
|
|
20 ret i32 %v
|
|
21 }
|