[ARM] Cortex-M4 schedule additions
[llvm-complete.git] / test / Assembler / immarg-param-attribute.ll
blobf31443a8a3ea48811c648b77273fdac536bec717
1 ; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s
3 ; CHECK: declare void @llvm.test.immarg.intrinsic.i32(i32 immarg)
4 declare void @llvm.test.immarg.intrinsic.i32(i32 immarg)
6 ; CHECK: declare void @llvm.test.immarg.intrinsic.f32(float immarg)
7 declare void @llvm.test.immarg.intrinsic.f32(float immarg)
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)
14   ; CHECK: call void @llvm.test.immarg.intrinsic.i32(i32 0)
15   call void @llvm.test.immarg.intrinsic.i32(i32 0)
17   ; CHECK call void @llvm.test.immarg.intrinsic.i32(i32 1)
18   call void @llvm.test.immarg.intrinsic.i32(i32 1)
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))
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
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
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