如何编写返回多个结果的模式

时间:2019-03-06 16:08:51

标签: llvm

假设我有

t55: v16i32 = sign_extend t54
t56: v16i32 = mul t55, t55

其中t54v16i16

所以我想生成vmpy {square} Va.v16i16,vZ0.v8i32,vZ1.v8i32 所以我需要捕捉的模式是:

mul (v16i32 (sext (v16i16 vRegs:$src0))),(v16i32 (sext (v16i16 vRegs:$src0)))

但结果如何? 如何将2个v8i32输出转换为一个v16i32? 意思是:

def : Pat<(v16i32 (mul (v16i32 (sext (v16i16 vRegs:$src0))),(v16i32 (sext 
(v16i16 vRegs:$src0)))),
vmpy_vA_vZ0_vZ1_square $src0>;

0 个答案:

没有答案