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

Unified Diff: tests_lit/llvm2ice_tests/convert.ll

Issue 2448193008: Subzero, MIPS32: Enable MIPS support in lit tests (Closed)
Patch Set: Addressed review comments Created 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tests_lit/llvm2ice_tests/commutativity.ll ('k') | tests_lit/llvm2ice_tests/fp.call_ret.ll » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests_lit/llvm2ice_tests/convert.ll
diff --git a/tests_lit/llvm2ice_tests/convert.ll b/tests_lit/llvm2ice_tests/convert.ll
index 52c55ef896242ee6ac34615f0688db1509dbc610..743cdadf1fd793e46d7d72d905a28e30c4e3efe2 100644
--- a/tests_lit/llvm2ice_tests/convert.ll
+++ b/tests_lit/llvm2ice_tests/convert.ll
@@ -20,6 +20,12 @@
; RUN: | %if --need=target_ARM32 \
; RUN: --command FileCheck --check-prefix ARM32 %s
+; RUN: %if --need=target_MIPS32 --need=allow_dump \
+; RUN: --command %p2i --filetype=asm --assemble --disassemble --target \
+; RUN: mips32 -i %s --args -O2 -allow-externally-defined-symbols \
+; RUN: | %if --need=target_MIPS32 --need=allow_dump \
+; RUN: --command FileCheck --check-prefix MIPS32 %s
+
@i8v = internal global [1 x i8] zeroinitializer, align 1
@i16v = internal global [2 x i8] zeroinitializer, align 2
@i32v = internal global [4 x i8] zeroinitializer, align 4
@@ -70,6 +76,28 @@ entry:
; ARM32-DAG: str r{{.*}}, [r{{[0-9]+}}]
; ARM32-DAG: str r{{.*}}, [{{.*}}, #4]
+; MIPS32-LABEL: from_int8
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: lb
+; MIPS32: move
+; MIPS32: sll {{.*}},0x18
+; MIPS32: sra {{.*}},0x18
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: sh
+; MIPS32: move
+; MIPS32: sll {{.*}},0x18
+; MIPS32: sra {{.*}},0x18
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
+; MIPS32: sw
+; MIPS32: sll {{.*}},0x18
+; MIPS32: sra {{.*}},0x18
+; MIPS32: sra {{.*}},0x1f
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+
define internal void @from_int16() {
entry:
%__0 = bitcast [2 x i8]* @i16v to i16*
@@ -107,6 +135,26 @@ entry:
; ARM32: movw {{.*}}i64v
; ARM32: str r
+; MIPS32-LABEL: from_int16
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: lh
+; MIPS32: move
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: sb
+; MIPS32: move
+; MIPS32: sll {{.*}},0x10
+; MIPS32: sra {{.*}},0x10
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
+; MIPS32: sw
+; MIPS32: sll {{.*}},0x10
+; MIPS32: sra {{.*}},0x10
+; MIPS32: sra {{.*}},0x1f
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+
define internal void @from_int32() {
entry:
%__0 = bitcast [4 x i8]* @i32v to i32*
@@ -140,6 +188,22 @@ entry:
; ARM32: movw {{.*}}i64v
; ARM32: str r
+; MIPS32-LABEL: from_int32
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
+; MIPS32: lw
+; MIPS32: move
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: sb
+; MIPS32: move
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: sh
+; MIPS32: sra {{.*}},0x1f
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+
define internal void @from_int64() {
entry:
%__0 = bitcast [8 x i8]* @i64v to i64*
@@ -171,6 +235,21 @@ entry:
; ARM32: movw {{.*}}i32v
; ARM32: str r
+; MIPS32-LABEL: from_int64
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+; MIPS32: lw
+; MIPS32: move
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: sb
+; MIPS32: move
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: sh
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
+
define internal void @from_uint8() {
entry:
%__0 = bitcast [1 x i8]* @u8v to i8*
@@ -210,6 +289,25 @@ entry:
; ARM32: movw {{.*}}i64v
; ARM32: str r
+; MIPS32-LABEL: from_uint8
+; MIPS32: lui {{.*}} u8v
+; MIPS32: addiu {{.*}} u8v
+; MIPS32: lb
+; MIPS32: move
+; MIPS32: andi {{.*}},0xff
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: sh
+; MIPS32: move
+; MIPS32: andi {{.*}},0xff
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
+; MIPS32: sw
+; MIPS32: andi {{.*}},0xff
+; MIPS32: li {{.*}},0
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+
define internal void @from_uint16() {
entry:
%__0 = bitcast [2 x i8]* @u16v to i16*
@@ -247,6 +345,24 @@ entry:
; ARM32: movw {{.*}}i64v
; ARM32: str r
+; MIPS32-LABEL: from_uint16
+; MIPS32: lui {{.*}} u16v
+; MIPS32: addiu {{.*}} u16v
+; MIPS32: lh
+; MIPS32: move
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: sb
+; MIPS32: move
+; MIPS32: andi {{.*}},0xffff
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
+; MIPS32: sw
+; MIPS32: andi {{.*}},0xffff
+; MIPS32: li {{.*}},0
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+
define internal void @from_uint32() {
entry:
%__0 = bitcast [4 x i8]* @u32v to i32*
@@ -280,6 +396,22 @@ entry:
; ARM32: movw {{.*}}i64v
; ARM32: str r
+; MIPS32-LABEL: from_uint32
+; MIPS32: lui {{.*}} u32v
+; MIPS32: addiu {{.*}} u32v
+; MIPS32: lw
+; MIPS32: move
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: sb
+; MIPS32: move
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: sh
+; MIPS32: li {{.*}},0
+; MIPS32: lui {{.*}} i64v
+; MIPS32: addiu {{.*}} i64v
+
define internal void @from_uint64() {
entry:
%__0 = bitcast [8 x i8]* @u64v to i64*
@@ -310,3 +442,18 @@ entry:
; ARM32: strh
; ARM32: movw {{.*}}i32v
; ARM32: str r
+
+; MIPS32-LABEL: from_uint64
+; MIPS32: lui {{.*}} u64v
+; MIPS32: addiu {{.*}} u64v
+; MIPS32: lw
+; MIPS32: move
+; MIPS32: lui {{.*}} i8v
+; MIPS32: addiu {{.*}} i8v
+; MIPS32: sb
+; MIPS32: move
+; MIPS32: lui {{.*}} i16v
+; MIPS32: addiu {{.*}} i16v
+; MIPS32: sh
+; MIPS32: lui {{.*}} i32v
+; MIPS32: addiu {{.*}} i32v
« no previous file with comments | « tests_lit/llvm2ice_tests/commutativity.ll ('k') | tests_lit/llvm2ice_tests/fp.call_ret.ll » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698