Changeset View
Changeset View
Standalone View
Standalone View
llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
Show First 20 Lines • Show All 1,342 Lines • ▼ Show 20 Lines | |||||
foreach vti = AllFloatVectors in { | foreach vti = AllFloatVectors in { | ||||
// 14.8. Vector Floating-Point Square-Root Instruction | // 14.8. Vector Floating-Point Square-Root Instruction | ||||
def : Pat<(riscv_fsqrt_vl (vti.Vector vti.RegClass:$rs2), (vti.Mask true_mask), | def : Pat<(riscv_fsqrt_vl (vti.Vector vti.RegClass:$rs2), (vti.Mask true_mask), | ||||
VLOpFrag), | VLOpFrag), | ||||
(!cast<Instruction>("PseudoVFSQRT_V_"# vti.LMul.MX) | (!cast<Instruction>("PseudoVFSQRT_V_"# vti.LMul.MX) | ||||
vti.RegClass:$rs2, GPR:$vl, vti.Log2SEW)>; | vti.RegClass:$rs2, GPR:$vl, vti.Log2SEW)>; | ||||
// 14.12. Vector Floating-Point Sign-Injection Instructions | // 14.12. Vector Floating-Point Sign-Injection Instructions | ||||
def : Pat<(riscv_fabs_vl (vti.Vector vti.RegClass:$rs), (vti.Mask true_mask), | def : Pat<(riscv_fabs_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0), | ||||
VLOpFrag), | VLOpFrag), | ||||
(!cast<Instruction>("PseudoVFSGNJX_VV_"# vti.LMul.MX) | (!cast<Instruction>("PseudoVFSGNJX_VV_"# vti.LMul.MX #"_MASK") | ||||
vti.RegClass:$rs, vti.RegClass:$rs, GPR:$vl, vti.Log2SEW)>; | (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs, | ||||
vti.RegClass:$rs, (vti.Mask V0), GPR:$vl, vti.Log2SEW, | |||||
TAIL_AGNOSTIC)>; | |||||
// Handle fneg with VFSGNJN using the same input for both operands. | // Handle fneg with VFSGNJN using the same input for both operands. | ||||
def : Pat<(riscv_fneg_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0), | def : Pat<(riscv_fneg_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0), | ||||
VLOpFrag), | VLOpFrag), | ||||
(!cast<Instruction>("PseudoVFSGNJN_VV_"# vti.LMul.MX #"_MASK") | (!cast<Instruction>("PseudoVFSGNJN_VV_"# vti.LMul.MX #"_MASK") | ||||
(vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs, | (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs, | ||||
vti.RegClass:$rs, (vti.Mask V0), GPR:$vl, vti.Log2SEW, | vti.RegClass:$rs, (vti.Mask V0), GPR:$vl, vti.Log2SEW, | ||||
TAIL_AGNOSTIC)>; | TAIL_AGNOSTIC)>; | ||||
▲ Show 20 Lines • Show All 454 Lines • Show Last 20 Lines |