OLD | NEW |
1 ; Test parsing NaCl atomic instructions. | 1 ; Test parsing NaCl atomic instructions. |
2 | 2 |
3 ; RUN: %p2i -i %s --insts | FileCheck %s | 3 ; RUN: %p2i -i %s --insts | FileCheck %s |
4 ; RUN: %if --need=allow_disable_ir_gen --command \ | 4 ; RUN: %if --need=allow_disable_ir_gen --command \ |
5 ; RUN: %p2i -i %s --args -notranslate -timing -no-ir-gen \ | 5 ; RUN: %p2i -i %s --args -notranslate -timing \ |
6 ; RUN: | %if --need=allow_disable_ir_gen --command \ | 6 ; RUN: | %if --need=allow_disable_ir_gen --command \ |
7 ; RUN: FileCheck --check-prefix=NOIR %s | 7 ; RUN: FileCheck --check-prefix=NOIR %s |
8 | 8 |
9 declare i8 @llvm.nacl.atomic.load.i8(i8*, i32) | 9 declare i8 @llvm.nacl.atomic.load.i8(i8*, i32) |
10 declare i16 @llvm.nacl.atomic.load.i16(i16*, i32) | 10 declare i16 @llvm.nacl.atomic.load.i16(i16*, i32) |
11 declare i32 @llvm.nacl.atomic.load.i32(i32*, i32) | 11 declare i32 @llvm.nacl.atomic.load.i32(i32*, i32) |
12 declare i64 @llvm.nacl.atomic.load.i64(i64*, i32) | 12 declare i64 @llvm.nacl.atomic.load.i64(i64*, i32) |
13 declare void @llvm.nacl.atomic.store.i8(i8, i8*, i32) | 13 declare void @llvm.nacl.atomic.store.i8(i8, i8*, i32) |
14 declare void @llvm.nacl.atomic.store.i16(i16, i16*, i32) | 14 declare void @llvm.nacl.atomic.store.i16(i16, i16*, i32) |
15 declare void @llvm.nacl.atomic.store.i32(i32, i32*, i32) | 15 declare void @llvm.nacl.atomic.store.i32(i32, i32*, i32) |
(...skipping 620 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
636 } | 636 } |
637 | 637 |
638 ; CHECK-NEXT: define internal i32 @test_atomic_is_lock_free(i32 %iptr) { | 638 ; CHECK-NEXT: define internal i32 @test_atomic_is_lock_free(i32 %iptr) { |
639 ; CHECK-NEXT: entry: | 639 ; CHECK-NEXT: entry: |
640 ; CHECK-NEXT: %i = call i1 @llvm.nacl.atomic.is.lock.free(i32 4, i32 %iptr) | 640 ; CHECK-NEXT: %i = call i1 @llvm.nacl.atomic.is.lock.free(i32 4, i32 %iptr) |
641 ; CHECK-NEXT: %r = zext i1 %i to i32 | 641 ; CHECK-NEXT: %r = zext i1 %i to i32 |
642 ; CHECK-NEXT: ret i32 %r | 642 ; CHECK-NEXT: ret i32 %r |
643 ; CHECK-NEXT: } | 643 ; CHECK-NEXT: } |
644 | 644 |
645 ; NOIR: Total across all functions | 645 ; NOIR: Total across all functions |
OLD | NEW |