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

Side by Side Diff: tests_lit/llvm2ice_tests/sdiv.ll

Issue 1387963002: Make sure that all globals are internal, except for "start" functions. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix new tests. Created 5 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
« no previous file with comments | « tests_lit/llvm2ice_tests/rng.ll ('k') | tests_lit/llvm2ice_tests/select-opt.ll » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 ; This checks the correctness of the lowering code for the small 1 ; This checks the correctness of the lowering code for the small
2 ; integer variants of sdiv and srem. 2 ; integer variants of sdiv and srem.
3 3
4 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 | FileCheck %s 4 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 | FileCheck %s
5 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 | FileCheck %s 5 ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 | FileCheck %s
6 6
7 define i32 @sdiv_i8(i32 %a.i32, i32 %b.i32) { 7 define internal i32 @sdiv_i8(i32 %a.i32, i32 %b.i32) {
8 entry: 8 entry:
9 %a = trunc i32 %a.i32 to i8 9 %a = trunc i32 %a.i32 to i8
10 %b = trunc i32 %b.i32 to i8 10 %b = trunc i32 %b.i32 to i8
11 %res = sdiv i8 %a, %b 11 %res = sdiv i8 %a, %b
12 %res.i32 = zext i8 %res to i32 12 %res.i32 = zext i8 %res to i32
13 ret i32 %res.i32 13 ret i32 %res.i32
14 ; CHECK-LABEL: sdiv_i8 14 ; CHECK-LABEL: sdiv_i8
15 ; CHECK: cbw 15 ; CHECK: cbw
16 ; CHECK: idiv 16 ; CHECK: idiv
17 } 17 }
18 18
19 define i32 @sdiv_i16(i32 %a.i32, i32 %b.i32) { 19 define internal i32 @sdiv_i16(i32 %a.i32, i32 %b.i32) {
20 entry: 20 entry:
21 %a = trunc i32 %a.i32 to i16 21 %a = trunc i32 %a.i32 to i16
22 %b = trunc i32 %b.i32 to i16 22 %b = trunc i32 %b.i32 to i16
23 %res = sdiv i16 %a, %b 23 %res = sdiv i16 %a, %b
24 %res.i32 = zext i16 %res to i32 24 %res.i32 = zext i16 %res to i32
25 ret i32 %res.i32 25 ret i32 %res.i32
26 ; CHECK-LABEL: sdiv_i16 26 ; CHECK-LABEL: sdiv_i16
27 ; CHECK: cwd 27 ; CHECK: cwd
28 ; CHECK: idiv 28 ; CHECK: idiv
29 } 29 }
30 30
31 define i32 @sdiv_i32(i32 %a, i32 %b) { 31 define internal i32 @sdiv_i32(i32 %a, i32 %b) {
32 entry: 32 entry:
33 %res = sdiv i32 %a, %b 33 %res = sdiv i32 %a, %b
34 ret i32 %res 34 ret i32 %res
35 ; CHECK-LABEL: sdiv_i32 35 ; CHECK-LABEL: sdiv_i32
36 ; CHECK: cdq 36 ; CHECK: cdq
37 ; CHECK: idiv 37 ; CHECK: idiv
38 } 38 }
39 39
40 define i32 @srem_i8(i32 %a.i32, i32 %b.i32) { 40 define internal i32 @srem_i8(i32 %a.i32, i32 %b.i32) {
41 entry: 41 entry:
42 %a = trunc i32 %a.i32 to i8 42 %a = trunc i32 %a.i32 to i8
43 %b = trunc i32 %b.i32 to i8 43 %b = trunc i32 %b.i32 to i8
44 %res = srem i8 %a, %b 44 %res = srem i8 %a, %b
45 %res.i32 = zext i8 %res to i32 45 %res.i32 = zext i8 %res to i32
46 ret i32 %res.i32 46 ret i32 %res.i32
47 ; CHECK-LABEL: srem_i8 47 ; CHECK-LABEL: srem_i8
48 ; CHECK: cbw 48 ; CHECK: cbw
49 ; CHECK: idiv 49 ; CHECK: idiv
50 } 50 }
51 51
52 define i32 @srem_i16(i32 %a.i32, i32 %b.i32) { 52 define internal i32 @srem_i16(i32 %a.i32, i32 %b.i32) {
53 entry: 53 entry:
54 %a = trunc i32 %a.i32 to i16 54 %a = trunc i32 %a.i32 to i16
55 %b = trunc i32 %b.i32 to i16 55 %b = trunc i32 %b.i32 to i16
56 %res = srem i16 %a, %b 56 %res = srem i16 %a, %b
57 %res.i32 = zext i16 %res to i32 57 %res.i32 = zext i16 %res to i32
58 ret i32 %res.i32 58 ret i32 %res.i32
59 ; CHECK-LABEL: srem_i16 59 ; CHECK-LABEL: srem_i16
60 ; CHECK: cwd 60 ; CHECK: cwd
61 ; CHECK: idiv 61 ; CHECK: idiv
62 } 62 }
63 63
64 define i32 @srem_i32(i32 %a, i32 %b) { 64 define internal i32 @srem_i32(i32 %a, i32 %b) {
65 entry: 65 entry:
66 %res = srem i32 %a, %b 66 %res = srem i32 %a, %b
67 ret i32 %res 67 ret i32 %res
68 ; CHECK-LABEL: srem_i32 68 ; CHECK-LABEL: srem_i32
69 ; CHECK: cdq 69 ; CHECK: cdq
70 ; CHECK: idiv 70 ; CHECK: idiv
71 } 71 }
OLDNEW
« no previous file with comments | « tests_lit/llvm2ice_tests/rng.ll ('k') | tests_lit/llvm2ice_tests/select-opt.ll » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698