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

Side by Side Diff: tests_lit/assembler/arm32/or-vec.ll

Issue 1639403004: ARM32 vorr lowering (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Alphabetizing Created 4 years, 10 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/assembler/arm32/and-vec.ll ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 ; Show that we know how to translate vorr vector instructions.
2
3 ; REQUIRES: allow_dump
4
5 ; Compile using standalone assembler.
6 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --args -O2 \
7 ; RUN: | FileCheck %s --check-prefix=ASM
8
9 ; Show bytes in assembled standalone code.
10 ; RUN: %p2i --filetype=asm -i %s --target=arm32 --assemble --disassemble \
11 ; RUN: --args -O2 \
12 ; RUN: | FileCheck %s --check-prefix=DIS
13
14 ; Compile using integrated assembler.
15 ; RUN: %p2i --filetype=iasm -i %s --target=arm32 --args -O2 \
16 ; RUN: | FileCheck %s --check-prefix=IASM
17
18 ; Show bytes in assembled integrated code.
19 ; RUN: %p2i --filetype=iasm -i %s --target=arm32 --assemble --disassemble \
20 ; RUN: --args -O2 \
21 ; RUN: | FileCheck %s --check-prefix=DIS
22
23 define internal <4 x i32> @testVor4i32(<4 x i32> %v1, <4 x i32> %v2) {
24 ; ASM-LABEL: testVor4i32:
25 ; DIS-LABEL: 00000000 <testVor4i32>:
26 ; IASM-LABEL: testVor4i32:
27
28 entry:
29 %res = or <4 x i32> %v1, %v2
30
31 ; ASM: vorr.i32 q0, q0, q1
32 ; DIS: 0: f2200152
33 ; IASM: vorr.i32
34
35 ret <4 x i32> %res
36 }
37
38 define internal <8 x i16> @testVor8i16(<8 x i16> %v1, <8 x i16> %v2) {
39 ; ASM-LABEL: testVor8i16:
40 ; DIS-LABEL: 00000010 <testVor8i16>:
41 ; IASM-LABEL: testVor8i16:
42
43 entry:
44 %res = or <8 x i16> %v1, %v2
45
46 ; ASM: vorr.i16 q0, q0, q1
47 ; DIS: 10: f2200152
48 ; IASM: vorr.i16
49
50 ret <8 x i16> %res
51 }
52
53 define internal <16 x i8> @testVor16i8(<16 x i8> %v1, <16 x i8> %v2) {
54 ; ASM-LABEL: testVor16i8:
55 ; DIS-LABEL: 00000020 <testVor16i8>:
56 ; IASM-LABEL: testVor16i8:
57
58 entry:
59 %res = or <16 x i8> %v1, %v2
60
61 ; ASM: vorr.i8 q0, q0, q1
62 ; DIS: 20: f2200152
63 ; IASM: vorr.i8
64
65 ret <16 x i8> %res
66 }
67
68 ;;
69 ;; The following tests make sure logical or works on predicate vectors.
70 ;;
71
72 define internal <4 x i1> @testVor4i1(<4 x i1> %v1, <4 x i1> %v2) {
73 ; ASM-LABEL: testVor4i1:
74 ; DIS-LABEL: 00000030 <testVor4i1>:
75 ; IASM-LABEL: testVor4i1:
76
77 entry:
78 %res = or <4 x i1> %v1, %v2
79
80 ; ASM: vorr.i32 q0, q0, q1
81 ; DIS: 30: f2200152
82 ; IASM: vorr.i32
83
84 ret <4 x i1> %res
85 }
86
87 define internal <8 x i1> @testVor8i1(<8 x i1> %v1, <8 x i1> %v2) {
88 ; ASM-LABEL: testVor8i1:
89 ; DIS-LABEL: 00000040 <testVor8i1>:
90 ; IASM-LABEL: testVor8i1:
91
92 entry:
93 %res = or <8 x i1> %v1, %v2
94
95 ; ASM: vorr.i16 q0, q0, q1
96 ; DIS: 40: f2200152
97 ; IASM: vorr.i16
98
99 ret <8 x i1> %res
100 }
101
102 define internal <16 x i1> @testVor16i1(<16 x i1> %v1, <16 x i1> %v2) {
103 ; ASM-LABEL: testVor16i1:
104 ; DIS-LABEL: 00000050 <testVor16i1>:
105 ; IASM-LABEL: testVor16i1:
106
107 entry:
108 %res = or <16 x i1> %v1, %v2
109
110 ; ASM: vorr.i8 q0, q0, q1
111 ; DIS: 50: f2200152
112 ; IASM: vorr.i8
113
114 ret <16 x i1> %res
115 }
OLDNEW
« no previous file with comments | « tests_lit/assembler/arm32/and-vec.ll ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698