summaryrefslogtreecommitdiffstats
path: root/llvm/test/TableGen/patsubst.td
blob: 0a7b3d8219d8d708e2781186168225eeaa2e1080 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// RUN: tblgen %s | grep {Match1 = "v4f32"} | count 1
// RUN: tblgen %s | grep {Match2 = "v2f64"} | count 1
// RUN: tblgen %s | grep {Match3 = "v4f32 add"} | count 1
// RUN: tblgen %s | grep {Match4 = "v2f64 add"} | count 1

class Foo<string v> {
      string Value = v;
      string Match1 = !patsubst(".*ps$", "v4f32", v);
      string Match2 = !patsubst(".*pd$", "v2f64", v);
      string Match3 = !patsubst("(.*)ps$", "v4f32 $1", v);
      string Match4 = !patsubst("(.*)pd$", "v2f64 $1", v);
}

def Bar : Foo<"addps">;
def Baz : Foo<"addpd">;
OpenPOWER on IntegriCloud