Home | History | Annotate | Download | only in TableGen
      1 // RUN: llvm-tblgen %s | FileCheck %s
      2 
      3 class Or4<bits<8> Val> {
      4   bits<8> V = {Val{7}, Val{6}, Val{5}, Val{4}, Val{3}, 1, Val{1}, Val{0} };
      5 }
      6 
      7 class Whatev<bits<8> x>;
      8 
      9 class Whatever<bits<8> x> {
     10   bits<8> W = {x{0}, x{1}, x{2}, x{3}, x{4}, x{5}, x{6}, x{7} };
     11 }
     12 
     13 multiclass X<bits<8> BaseOpc> {
     14  def bar : Whatev<Or4<BaseOpc>.V >;
     15 }
     16 
     17 multiclass Y<bits<8> BaseOpc> {
     18  def foo : Whatever<Or4<BaseOpc>.V >;
     19 }
     20 
     21 defm a : X<4>;
     22 
     23 // CHECK: def abar
     24 
     25 defm b : Y<8>;
     26 
     27 // CHECK: def bfoo
     28 // CHECK-NEXT: bits<8> W = { 0, 0, 1, 1, 0, 0, 0, 0 };
     29