From 3ce88b92ba80048e91dfef86dfaa6198d4e75c1c Mon Sep 17 00:00:00 2001 From: David Greene Date: Wed, 19 Oct 2011 13:04:50 +0000 Subject: [PATCH] Add Paste Test This tests TableGen's paste functionality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142526 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/TableGen/Paste.td | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 test/TableGen/Paste.td diff --git a/test/TableGen/Paste.td b/test/TableGen/Paste.td new file mode 100644 index 00000000000..33d61ccde12 --- /dev/null +++ b/test/TableGen/Paste.td @@ -0,0 +1,35 @@ +// RUN: llvm-tblgen %s | FileCheck %s + +class Instr { + int index = i; +} + +multiclass Test { + def Vx#NAME#PS : Instr<0>; + def Vx#NAME#PD : Instr<1>; + def Vy#NAME#PS : Instr<2>; + def Vy#NAME#PD : Instr<3>; +} + +defm ADD : Test; +defm SUB : Test; + +// CHECK: VxADDPD +// CHECK: index = 1; +// CHECK: VxADDPS +// CHECK: index = 0; + +// CHECK: VxSUBPD +// CHECK: index = 1; +// CHECK: VxSUBPS +// CHECK: index = 0; + +// CHECK: VyADDPD +// CHECK: index = 3; +// CHECK: VyADDPS +// CHECK: index = 2; + +// CHECK: VySUBPD +// CHECK: index = 3; +// CHECK: VySUBPS +// CHECK: index = 2;