OLD | NEW |
1 ; RUN: pnacl-abicheck < %s | FileCheck %s | 1 ; RUN: pnacl-abicheck < %s | FileCheck %s |
2 ; RUN: pnacl-abicheck -pnaclabi-allow-debug-metadata < %s | \ | 2 ; RUN: pnacl-abicheck -pnaclabi-allow-debug-metadata < %s | \ |
3 ; RUN: FileCheck %s --check-prefix=DBG | 3 ; RUN: FileCheck %s --check-prefix=DBG |
4 ; RUN: pnacl-abicheck -pnaclabi-allow-dev-intrinsics < %s | \ | 4 ; RUN: pnacl-abicheck -pnaclabi-allow-dev-intrinsics < %s | \ |
5 ; RUN: FileCheck %s --check-prefix=DEV | 5 ; RUN: FileCheck %s --check-prefix=DEV |
6 | 6 |
7 ; Test that only white-listed intrinsics are allowed. | 7 ; Test that only white-listed intrinsics are allowed. |
8 | 8 |
9 ; =================================== | 9 ; =================================== |
10 ; Some "Dev" intrinsics which are disallowed by default. | 10 ; Some "Dev" intrinsics which are disallowed by default. |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 declare void @llvm.nacl.atomic.store.i64(i64, i64*, i32) | 47 declare void @llvm.nacl.atomic.store.i64(i64, i64*, i32) |
48 declare i8 @llvm.nacl.atomic.rmw.i8(i32, i8*, i8, i32) | 48 declare i8 @llvm.nacl.atomic.rmw.i8(i32, i8*, i8, i32) |
49 declare i16 @llvm.nacl.atomic.rmw.i16(i32, i16*, i16, i32) | 49 declare i16 @llvm.nacl.atomic.rmw.i16(i32, i16*, i16, i32) |
50 declare i32 @llvm.nacl.atomic.rmw.i32(i32, i32*, i32, i32) | 50 declare i32 @llvm.nacl.atomic.rmw.i32(i32, i32*, i32, i32) |
51 declare i64 @llvm.nacl.atomic.rmw.i64(i32, i64*, i64, i32) | 51 declare i64 @llvm.nacl.atomic.rmw.i64(i32, i64*, i64, i32) |
52 declare i8 @llvm.nacl.atomic.cmpxchg.i8(i8*, i8, i8, i32, i32) | 52 declare i8 @llvm.nacl.atomic.cmpxchg.i8(i8*, i8, i8, i32, i32) |
53 declare i16 @llvm.nacl.atomic.cmpxchg.i16(i16*, i16, i16, i32, i32) | 53 declare i16 @llvm.nacl.atomic.cmpxchg.i16(i16*, i16, i16, i32, i32) |
54 declare i32 @llvm.nacl.atomic.cmpxchg.i32(i32*, i32, i32, i32, i32) | 54 declare i32 @llvm.nacl.atomic.cmpxchg.i32(i32*, i32, i32, i32, i32) |
55 declare i64 @llvm.nacl.atomic.cmpxchg.i64(i64*, i64, i64, i32, i32) | 55 declare i64 @llvm.nacl.atomic.cmpxchg.i64(i64*, i64, i64, i32, i32) |
56 declare void @llvm.nacl.atomic.fence(i32) | 56 declare void @llvm.nacl.atomic.fence(i32) |
| 57 declare void @llvm.nacl.atomic.fence.all() |
57 declare i1 @llvm.nacl.atomic.is.lock.free(i32, i8*) | 58 declare i1 @llvm.nacl.atomic.is.lock.free(i32, i8*) |
58 | 59 |
59 declare i16 @llvm.bswap.i16(i16) | 60 declare i16 @llvm.bswap.i16(i16) |
60 declare i32 @llvm.bswap.i32(i32) | 61 declare i32 @llvm.bswap.i32(i32) |
61 declare i64 @llvm.bswap.i64(i64) | 62 declare i64 @llvm.bswap.i64(i64) |
62 | 63 |
63 declare i32 @llvm.cttz.i32(i32, i1) | 64 declare i32 @llvm.cttz.i32(i32, i1) |
64 declare i64 @llvm.cttz.i64(i64, i1) | 65 declare i64 @llvm.cttz.i64(i64, i1) |
65 | 66 |
66 declare i32 @llvm.ctlz.i32(i32, i1) | 67 declare i32 @llvm.ctlz.i32(i32, i1) |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 declare void @llvm.memmove.p0i8.p0i8.i64(i8* %dest, i8* %src, | 144 declare void @llvm.memmove.p0i8.p0i8.i64(i8* %dest, i8* %src, |
144 i64 %len, i32 %align, i1 %isvolatile) | 145 i64 %len, i32 %align, i1 %isvolatile) |
145 ; CHECK: Function llvm.memset.p0i8.i64 is a disallowed LLVM intrinsic | 146 ; CHECK: Function llvm.memset.p0i8.i64 is a disallowed LLVM intrinsic |
146 declare void @llvm.memset.p0i8.i64(i8* %dest, i8 %val, | 147 declare void @llvm.memset.p0i8.i64(i8* %dest, i8 %val, |
147 i64 %len, i32 %align, i1 %isvolatile) | 148 i64 %len, i32 %align, i1 %isvolatile) |
148 | 149 |
149 ; Test that the ABI checker checks the full function name. | 150 ; Test that the ABI checker checks the full function name. |
150 ; CHECK: Function llvm.memset.foo is a disallowed LLVM intrinsic | 151 ; CHECK: Function llvm.memset.foo is a disallowed LLVM intrinsic |
151 declare void @llvm.memset.foo(i8* %dest, i8 %val, | 152 declare void @llvm.memset.foo(i8* %dest, i8 %val, |
152 i64 %len, i32 %align, i1 %isvolatile) | 153 i64 %len, i32 %align, i1 %isvolatile) |
OLD | NEW |