Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(335)

Side by Side Diff: tests_lit/llvm2ice_tests/nacl-other-intrinsics.ll

Issue 649463002: Handle "Mov" which is mov, movss, movsd, and used for nacl.read.tp. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: bounds check Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 ; This tests the NaCl intrinsics not related to atomic operations. 1 ; This tests the NaCl intrinsics not related to atomic operations.
2 2
3 ; TODO(jvoung): fix extra "CALLTARGETS" run. The llvm-objdump symbolizer 3 ; TODO(jvoung): fix extra "CALLTARGETS" run. The llvm-objdump symbolizer
4 ; doesn't know how to symbolize non-section-local functions. 4 ; doesn't know how to symbolize non-section-local functions.
5 ; The newer LLVM 3.6 one does work, but watch out for other bugs. 5 ; The newer LLVM 3.6 one does work, but watch out for other bugs.
6 6
7 ; RUN: %p2i -i %s --args -O2 --verbose none \ 7 ; RUN: %p2i -i %s --args -O2 --verbose none \
8 ; RUN: | FileCheck --check-prefix=CALLTARGETS %s 8 ; RUN: | FileCheck --check-prefix=CALLTARGETS %s
9 ; RUN: %p2i -i %s --args -O2 --verbose none -sandbox \ 9 ; RUN: %p2i -i %s --args -O2 --verbose none -sandbox \
10 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \ 10 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 ; CALLTARGETS-LABEL: test_nacl_read_tp 67 ; CALLTARGETS-LABEL: test_nacl_read_tp
68 ; CALLTARGETS: call __nacl_read_tp 68 ; CALLTARGETS: call __nacl_read_tp
69 69
70 define i32 @test_nacl_read_tp_more_addressing() { 70 define i32 @test_nacl_read_tp_more_addressing() {
71 entry: 71 entry:
72 %ptr = call i8* @llvm.nacl.read.tp() 72 %ptr = call i8* @llvm.nacl.read.tp()
73 %__1 = ptrtoint i8* %ptr to i32 73 %__1 = ptrtoint i8* %ptr to i32
74 %x = add i32 %__1, %__1 74 %x = add i32 %__1, %__1
75 %__3 = inttoptr i32 %x to i32* 75 %__3 = inttoptr i32 %x to i32*
76 %v = load i32* %__3, align 1 76 %v = load i32* %__3, align 1
77 %v_add = add i32 %v, 1
78
77 %ptr2 = call i8* @llvm.nacl.read.tp() 79 %ptr2 = call i8* @llvm.nacl.read.tp()
78 %__6 = ptrtoint i8* %ptr2 to i32 80 %__6 = ptrtoint i8* %ptr2 to i32
79 %y = add i32 %__6, 4 81 %y = add i32 %__6, 4
80 %__8 = inttoptr i32 %y to i32* 82 %__8 = inttoptr i32 %y to i32*
81 store i32 %v, i32* %__8, align 1 83 %v_add2 = add i32 %v, 4
84 store i32 %v_add2, i32* %__8, align 1
82 ret i32 %v 85 ret i32 %v
83 } 86 }
84 ; CHECK-LABEL: test_nacl_read_tp_more_addressing 87 ; CHECK-LABEL: test_nacl_read_tp_more_addressing
85 ; CHECK: mov e{{.*}}, dword ptr gs:[0] 88 ; CHECK: mov e{{.*}}, dword ptr gs:[0]
86 ; CHECK: mov e{{.*}}, dword ptr gs:[0] 89 ; CHECK: mov e{{.*}}, dword ptr gs:[0]
87 ; CHECKO2REM-LABEL: test_nacl_read_tp_more_addressing 90 ; CHECKO2REM-LABEL: test_nacl_read_tp_more_addressing
88 ; CHECKO2REM: mov e{{.*}}, dword ptr gs:[0] 91 ; CHECKO2REM: mov e{{.*}}, dword ptr gs:[0]
89 ; CHECKO2REM: mov e{{.*}}, dword ptr gs:[0] 92 ; CHECKO2REM: mov e{{.*}}, dword ptr gs:[0]
90 ; CHECKO2UNSANDBOXEDREM-LABEL: test_nacl_read_tp_more_addressing 93 ; CHECKO2UNSANDBOXEDREM-LABEL: test_nacl_read_tp_more_addressing
91 ; CHECKO2UNSANDBOXEDREM: call -4 94 ; CHECKO2UNSANDBOXEDREM: call -4
(...skipping 426 matching lines...) Expand 10 before | Expand all | Expand 10 after
518 ret void 521 ret void
519 } 522 }
520 ; CHECK-LABEL: test_stacksave_multiple 523 ; CHECK-LABEL: test_stacksave_multiple
521 ; At least 3 copies of esp, but probably more from having to do the allocas. 524 ; At least 3 copies of esp, but probably more from having to do the allocas.
522 ; CHECK: mov {{.*}}, esp 525 ; CHECK: mov {{.*}}, esp
523 ; CHECK: mov {{.*}}, esp 526 ; CHECK: mov {{.*}}, esp
524 ; CHECK: mov {{.*}}, esp 527 ; CHECK: mov {{.*}}, esp
525 ; CHECK: mov esp, {{.*}} 528 ; CHECK: mov esp, {{.*}}
526 529
527 ; ERRORS-NOT: ICE translation error 530 ; ERRORS-NOT: ICE translation error
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698