Matt Arsenault | caf1316 | 2019-03-12 21:02:54 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s |
| 2 | |
| 3 | ; CHECK: declare void @llvm.test.immarg.intrinsic.i32(i32 immarg) |
| 4 | declare void @llvm.test.immarg.intrinsic.i32(i32 immarg) |
| 5 | |
| 6 | ; CHECK: declare void @llvm.test.immarg.intrinsic.f32(float immarg) |
| 7 | declare void @llvm.test.immarg.intrinsic.f32(float immarg) |
| 8 | |
| 9 | ; CHECK-LABEL: @call_llvm.test.immarg.intrinsic.i32( |
| 10 | define void @call_llvm.test.immarg.intrinsic.i32() { |
| 11 | ; CHECK: call void @llvm.test.immarg.intrinsic.i32(i32 0) |
| 12 | call void @llvm.test.immarg.intrinsic.i32(i32 0) |
| 13 | |
| 14 | ; CHECK: call void @llvm.test.immarg.intrinsic.i32(i32 0) |
| 15 | call void @llvm.test.immarg.intrinsic.i32(i32 0) |
| 16 | |
| 17 | ; CHECK call void @llvm.test.immarg.intrinsic.i32(i32 1) |
| 18 | call void @llvm.test.immarg.intrinsic.i32(i32 1) |
| 19 | |
| 20 | ; CHECK: call void @llvm.test.immarg.intrinsic.i32(i32 5) |
| 21 | call void @llvm.test.immarg.intrinsic.i32(i32 add (i32 2, i32 3)) |
| 22 | |
| 23 | ; CHECK: call void @llvm.test.immarg.intrinsic.i32(i32 0) |
| 24 | call void @llvm.test.immarg.intrinsic.i32(i32 ptrtoint (i32* null to i32)) |
| 25 | ret void |
| 26 | } |
| 27 | |
| 28 | ; CHECK-LABEL: @call_llvm.test.immarg.intrinsic.f32( |
| 29 | define void @call_llvm.test.immarg.intrinsic.f32() { |
| 30 | ; CHECK: call void @llvm.test.immarg.intrinsic.f32(float 1.000000e+00) |
| 31 | call void @llvm.test.immarg.intrinsic.f32(float 1.0) |
| 32 | ret void |
| 33 | } |
| 34 | |
| 35 | define void @on_callsite_and_declaration() { |
| 36 | ; CHECK: call void @llvm.test.immarg.intrinsic.i32(i32 immarg 0) |
| 37 | call void @llvm.test.immarg.intrinsic.i32(i32 immarg 0) |
| 38 | ret void |
| 39 | } |