Mercurial > hg > CbC > CbC_llvm
comparison test/CodeGen/X86/stackmap-fast-isel.ll @ 95:afa8332a0e37 LLVM3.8
LLVM 3.8
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 13 Oct 2015 17:48:58 +0900 |
parents | 60c9769439b8 |
children | 1172e4bd9c6f |
comparison
equal
deleted
inserted
replaced
84:f3e34b893a5f | 95:afa8332a0e37 |
---|---|
1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=corei7 | FileCheck %s | 1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=corei7 | FileCheck %s |
2 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=corei7 -fast-isel -fast-isel-abort | FileCheck %s | 2 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=corei7 -fast-isel -fast-isel-abort=1 | FileCheck %s |
3 | 3 |
4 ; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps | 4 ; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps |
5 ; CHECK-NEXT: __LLVM_StackMaps: | 5 ; CHECK-NEXT: __LLVM_StackMaps: |
6 ; Header | 6 ; Header |
7 ; CHECK-NEXT: .byte 1 | 7 ; CHECK-NEXT: .byte 1 |
97 ; CHECK-NEXT: .short 0 | 97 ; CHECK-NEXT: .short 0 |
98 ; CHECK-NEXT: .long -1 | 98 ; CHECK-NEXT: .long -1 |
99 | 99 |
100 define void @constantargs() { | 100 define void @constantargs() { |
101 entry: | 101 entry: |
102 tail call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 1, i32 15, i16 65535, i16 -1, i32 65536, i32 2000000000, i32 2147483647, i32 -1, i32 4294967295, i32 4294967296, i64 2147483648, i64 4294967295, i64 4294967296, i64 -1) | 102 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 1, i32 15, i16 65535, i16 -1, i32 65536, i32 2000000000, i32 2147483647, i32 -1, i32 4294967295, i32 4294967296, i64 2147483648, i64 4294967295, i64 4294967296, i64 -1) |
103 ret void | 103 ret void |
104 } | 104 } |
105 | 105 |
106 ; Map a constant value. | 106 ; Map a constant value. |
107 ; | 107 ; |
114 ; CHECK-NEXT: .byte 8 | 114 ; CHECK-NEXT: .byte 8 |
115 ; CHECK-NEXT: .short 0 | 115 ; CHECK-NEXT: .short 0 |
116 ; CHECK-NEXT: .long 33 | 116 ; CHECK-NEXT: .long 33 |
117 | 117 |
118 define void @liveConstant() { | 118 define void @liveConstant() { |
119 tail call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 15, i32 5, i32 33) | 119 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 15, i32 5, i32 33) |
120 ret void | 120 ret void |
121 } | 121 } |
122 | 122 |
123 ; Directly map an alloca's address. | 123 ; Directly map an alloca's address. |
124 ; | 124 ; |
137 entry: | 137 entry: |
138 %metadata1 = alloca i64, i32 3, align 8 | 138 %metadata1 = alloca i64, i32 3, align 8 |
139 store i64 11, i64* %metadata1 | 139 store i64 11, i64* %metadata1 |
140 store i64 12, i64* %metadata1 | 140 store i64 12, i64* %metadata1 |
141 store i64 13, i64* %metadata1 | 141 store i64 13, i64* %metadata1 |
142 call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 16, i32 0, i64* %metadata1) | 142 call void (i64, i32, ...) @llvm.experimental.stackmap(i64 16, i32 0, i64* %metadata1) |
143 ret void | 143 ret void |
144 } | 144 } |
145 | 145 |
146 ; Test a 64-bit ID. | 146 ; Test a 64-bit ID. |
147 ; | 147 ; |
153 ; CHECK-LABEL: .long L{{.*}}-_longid | 153 ; CHECK-LABEL: .long L{{.*}}-_longid |
154 ; CHECK: .quad -1 | 154 ; CHECK: .quad -1 |
155 ; CHECK-LABEL: .long L{{.*}}-_longid | 155 ; CHECK-LABEL: .long L{{.*}}-_longid |
156 define void @longid() { | 156 define void @longid() { |
157 entry: | 157 entry: |
158 tail call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 4294967295, i32 0) | 158 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 4294967295, i32 0) |
159 tail call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 4294967296, i32 0) | 159 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 4294967296, i32 0) |
160 tail call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 9223372036854775807, i32 0) | 160 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 9223372036854775807, i32 0) |
161 tail call void (i64, i32, ...)* @llvm.experimental.stackmap(i64 -1, i32 0) | 161 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 -1, i32 0) |
162 ret void | 162 ret void |
163 } | 163 } |
164 | 164 |
165 declare void @llvm.experimental.stackmap(i64, i32, ...) | 165 declare void @llvm.experimental.stackmap(i64, i32, ...) |