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