aboutsummaryrefslogtreecommitdiff
path: root/test/TableGen
diff options
context:
space:
mode:
authorDavid Greene <greened@obbligato.org>2011-10-06 21:20:44 +0000
committerDavid Greene <greened@obbligato.org>2011-10-06 21:20:44 +0000
commit2f0722c10575154c35b51a3e4e77832b75001a13 (patch)
tree382bdaec1d658e15bd1cc69ed1e7cf8b9a4d4fd1 /test/TableGen
parent3ef12348d775405a50927a0d7f596710f006c7b6 (diff)
Make Test More Thorough
Check that all ADD patters are processed. Add a SUB test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141314 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/TableGen')
-rw-r--r--test/TableGen/MultiPat.td12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/TableGen/MultiPat.td b/test/TableGen/MultiPat.td
index 648855b4d3..91767dcbd6 100644
--- a/test/TableGen/MultiPat.td
+++ b/test/TableGen/MultiPat.td
@@ -83,9 +83,12 @@ def Decls : decls;
// Define intrinsics
def int_x86_sse2_add_ps : Intrinsic<"addps">;
def int_x86_sse2_add_pd : Intrinsic<"addpd">;
+def int_x86_sse2_sub_ps : Intrinsic<"subps">;
+def int_x86_sse2_sub_pd : Intrinsic<"subpd">;
def INTRINSIC : Intrinsic<"Dummy">;
def bitconvert;
def add;
+def sub;
class MakePatImpl<list<dag> patterns> : Pat<patterns[0], patterns[1]>;
class MakePat<list<dag> patterns,
@@ -126,3 +129,12 @@ defm ADD : arith<0x58, "add", "int_x86_sse2_addSUFFIX",
// CHECK: [(set VR128:$dst, (int_x86_sse2_add_pd VR128:$src1, VR128:$src2))]
// CHECK: [(set VR128:$dst, (int_x86_sse2_add_ps VR128:$src1, VR128:$src2))]
+// CHECK: (set VR128:$dst, (add (int_x86_sse2_add_ps VR128:$src1, VR128:$src2)))
+// CHECK: (set VR128:$dst, (add (int_x86_sse2_add_pd VR128:$src1, VR128:$src2)))
+
+defm SUB : arith<0x59, "sub", "int_x86_sse2_subSUFFIX",
+ // rr Patterns
+ [[(set REGCLASS:$dst, (INTRINSIC REGCLASS:$src1, REGCLASS:$src2))]]>;
+
+// CHECK: [(set VR128:$dst, (int_x86_sse2_sub_pd VR128:$src1, VR128:$src2))]
+// CHECK: [(set VR128:$dst, (int_x86_sse2_sub_ps VR128:$src1, VR128:$src2))]