brintos

brintos / llvm-project-archived public Read only

0
0
Text · 957 B · 93c6013 Raw
36 lines · plain
1// RUN: llvm-tblgen %s | FileCheck %s2// XFAIL: vg_leak3 4// CHECK: --- Defs ---5 6// CHECK: def A0 {7// CHECK:   bits<8> add = { 0, 0, 0, 1, 1, 0, 0, 0 };8// CHECK:   bits<8> sub = { 0, 0, 0, 1, 0, 0, 1, 0 };9// CHECK:   bits<8> and = { 0, 0, 0, 0, 0, 0, 0, 1 };10// CHECK:   bits<8> or = { 0, 0, 0, 1, 0, 1, 1, 1 };11// CHECK:   bits<8> xor = { 0, 0, 0, 1, 0, 1, 1, 0 };12// CHECK:   bits<8> srl = { 0, 0, 0, 0, 0, 0, 1, 0 };13// CHECK:   bits<8> sra = { 0, 0, 0, 0, 0, 0, 1, 0 };14// CHECK:   bits<8> shl = { 1, 0, 1, 0, 1, 0, 0, 0 };15 16// CHECK:   bits<8> sra = { 1, 1, 1, 1, 1, 1, 1, 1 };17 18class A<bits<8> a, bits<2> b> {19  // Operands of different bits types are allowed.20  bits<8> add = !add(a, b);21  bits<8> sub = !sub(a, b);22  bits<8> and = !and(a, b);23  bits<8> or =  !or(a, b);24  bits<8> xor = !xor(a, b);25  bits<8> srl = !srl(a, b);26  bits<8> sra = !sra(a, b);27  bits<8> shl = !shl(a, b);28}29 30def A0 : A<21, 3>;31 32def A1 {33  bits<8> sra = !sra(-1, 3);34}35 36