// RUN: llvm-tblgen %s | FileCheck %s // XFAIL: vg_leak // CHECK: bit IsDouble = 1; // CHECK: bit IsDouble = 1; // CHECK: bit IsDouble = 1; // CHECK-NOT: bit IsDouble = 1; class Instruction<bits<4> opc, string Name> { bits<4> opcode = opc; string name = Name; bit IsDouble = 0; } multiclass basic_r<bits<4> opc> { let name = "newname" in { def rr : Instruction<opc, "rr">; def rm : Instruction<opc, "rm">; } let name = "othername" in def rx : Instruction<opc, "rx">; } multiclass basic_ss<bits<4> opc> { let IsDouble = 0 in defm SS : basic_r<opc>; let IsDouble = 1 in defm SD : basic_r<opc>; } defm ADD : basic_ss<0xf>;