| /openbsd-src/gnu/llvm/llvm/lib/Target/Hexagon/ |
| H A D | HexagonDepMapAsm2Intrin.td | 14 def: Pat<(int_hexagon_A2_abs IntRegs:$src1), 16 def: Pat<(int_hexagon_A2_absp DoubleRegs:$src1), 18 def: Pat<(int_hexagon_A2_abssat IntRegs:$src1), 20 def: Pat<(int_hexagon_A2_add IntRegs:$src1, IntRegs:$src2), 22 def: Pat<(int_hexagon_A2_addh_h16_hh IntRegs:$src1, IntRegs:$src2), 24 def: Pat<(int_hexagon_A2_addh_h16_hl IntRegs:$src1, IntRegs:$src2), 26 def: Pat<(int_hexagon_A2_addh_h16_lh IntRegs:$src1, IntRegs:$src2), 28 def: Pat<(int_hexagon_A2_addh_h16_ll IntRegs:$src1, IntRegs:$src2), 30 def: Pat<(int_hexagon_A2_addh_h16_sat_hh IntRegs:$src1, IntRegs:$src2), 32 def: Pat<(int_hexagon_A2_addh_h16_sat_hl IntRegs:$src1, IntRegs:$src2), [all …]
|
| H A D | HexagonIntrinsics.td | 12 : Pat <(IntID I32:$Rs), 16 : Pat <(IntID I32:$Rs, I32:$Rt), 20 : Pat <(IntID I32:$Rs, I64:$Rt), 23 def: Pat<(int_hexagon_A2_add IntRegs:$Rs, IntRegs:$Rt), 25 def: Pat<(int_hexagon_A2_addi IntRegs:$Rs, timm:$s16), 27 def: Pat<(int_hexagon_A2_addp DoubleRegs:$Rs, DoubleRegs:$Rt), 30 def: Pat<(int_hexagon_A2_sub IntRegs:$Rs, IntRegs:$Rt), 32 def: Pat<(int_hexagon_A2_subri timm:$s10, IntRegs:$Rs), 34 def: Pat<(int_hexagon_A2_subp DoubleRegs:$Rs, DoubleRegs:$Rt), 37 def: Pat<(int_hexagon_M2_mpyi IntRegs:$Rs, IntRegs:$Rt), [all …]
|
| H A D | HexagonPatternsHVX.td | 126 def: Pat<(ResType (Load (add (i32 AddrFI:$fi), ImmPred:$Off))), 128 def: Pat<(ResType (Load (IsOrAdd (i32 AddrFI:$fi), ImmPred:$Off))), 130 def: Pat<(ResType (Load AddrFI:$fi)), (ResType (MI AddrFI:$fi, 0))>; 135 def: Pat<(ResType (Load (add I32:$Rt, ImmPred:$Off))), 137 def: Pat<(ResType (Load I32:$Rt)), 145 def: Pat<(ResType (Load (HexagonCP tconstpool:$Addr))), 147 def: Pat<(ResType (Load (HexagonAtPcrel tconstpool:$Addr))), 162 def: Pat<(ResType (Load (valignaddr I32:$Rt))), 164 def: Pat<(ResType (Load (add (valignaddr I32:$Rt), ImmPred:$Off))), 197 def: Pat<(Store Value:$Vs, (add (i32 AddrFI:$fi), ImmPred:$Off)), [all …]
|
| H A D | HexagonMapAsm2IntrinV62.gen.td | 10 def: Pat<(IntID HvxVR:$src1, IntRegs:$src2), 12 def: Pat<(!cast<Intrinsic>(IntID#"_128B") HvxVR:$src1, IntRegs:$src2), 17 def: Pat<(IntID HvxVR:$src1, HvxVR:$src2, IntRegsLow8:$src3), 19 def: Pat<(!cast<Intrinsic>(IntID#"_128B") HvxVR:$src1, HvxVR:$src2, 25 def: Pat<(IntID HvxVR:$src1, HvxVR:$src2), 27 def: Pat<(!cast<Intrinsic>(IntID#"_128B") HvxVR:$src1, HvxVR:$src2), 32 def: Pat<(IntID HvxWR:$src1, HvxWR:$src2), 34 def: Pat<(!cast<Intrinsic>(IntID#"_128B") HvxWR:$src1, HvxWR:$src2), 39 def: Pat<(IntID HvxWR:$src1, HvxVR:$src2, HvxVR:$src3), 41 def: Pat<(!cast<Intrinsic>(IntID#"_128B") HvxWR:$src1, HvxVR:$src2, [all …]
|
| H A D | HexagonIntrinsicsV60.td | 15 def : Pat < (v16i32 (int_hexagon_V6_lo (v32i32 HvxWR:$src1))), 18 def : Pat < (v16i32 (int_hexagon_V6_hi (v32i32 HvxWR:$src1))), 21 def : Pat < (v32i32 (int_hexagon_V6_lo_128B (v64i32 HvxWR:$src1))), 24 def : Pat < (v32i32 (int_hexagon_V6_hi_128B (v64i32 HvxWR:$src1))), 28 def : Pat <(v64i1 (bitconvert (v16i32 HvxVR:$src1))), 31 def : Pat <(v64i1 (bitconvert (v32i16 HvxVR:$src1))), 34 def : Pat <(v64i1 (bitconvert (v64i8 HvxVR:$src1))), 37 def : Pat <(v16i32 (bitconvert (v64i1 HvxQR:$src1))), 40 def : Pat <(v32i16 (bitconvert (v64i1 HvxQR:$src1))), 43 def : Pat <(v64i8 (bitconvert (v64i1 HvxQR:$src1))), [all …]
|
| H A D | HexagonPatterns.td | 286 def: Pat<(IsOrAdd (i32 AddrFI:$Rs), s32_0ImmPred:$off), 323 : Pat<(ResVT (Op RegPred:$Rs)), (MI RegPred:$Rs)>; 327 : Pat<(ResType (Op RegPred:$Rs, ImmPred:$I)), 332 : Pat<(ResType (Op RsPred:$Rs, RtPred:$Rt)), 337 : Pat<(AccOp RegPred:$Rx, (Op RegPred:$Rs, ImmPred:$I)), 342 : Pat<(AccOp RxPred:$Rx, (Op RsPred:$Rs, RtPred:$Rt)), 347 def: Pat<(select (i1 (CmpOp Val:$A, Val:$B)), Val:$A, Val:$B), 349 def: Pat<(select (i1 (CmpOp Val:$A, Val:$B)), Val:$B, Val:$A), 356 def: Pat<(Sel (CmpType (CmpOp CmpPred:$Vs, CmpPred:$Vt)), 359 def: Pat<(Sel (CmpType (CmpOp CmpPred:$Vs, CmpPred:$Vt)), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/VE/ |
| H A D | VEInstrIntrinsicVL.gen.td | 1 def : Pat<(int_ve_vl_vld_vssl i64:$sy, i64:$sz, i32:$vl), (VLDrrl i64:$sy, i64:$sz, i32:$vl)>; 2 def : Pat<(int_ve_vl_vld_vssvl i64:$sy, i64:$sz, v256f64:$pt, i32:$vl), (VLDrrl_v i64:$sy, i64:$sz,… 3 def : Pat<(int_ve_vl_vld_vssl simm7:$I, i64:$sz, i32:$vl), (VLDirl (LO7 $I), i64:$sz, i32:$vl)>; 4 def : Pat<(int_ve_vl_vld_vssvl simm7:$I, i64:$sz, v256f64:$pt, i32:$vl), (VLDirl_v (LO7 $I), i64:$s… 5 def : Pat<(int_ve_vl_vldnc_vssl i64:$sy, i64:$sz, i32:$vl), (VLDNCrrl i64:$sy, i64:$sz, i32:$vl)>; 6 def : Pat<(int_ve_vl_vldnc_vssvl i64:$sy, i64:$sz, v256f64:$pt, i32:$vl), (VLDNCrrl_v i64:$sy, i64:… 7 def : Pat<(int_ve_vl_vldnc_vssl simm7:$I, i64:$sz, i32:$vl), (VLDNCirl (LO7 $I), i64:$sz, i32:$vl)>; 8 def : Pat<(int_ve_vl_vldnc_vssvl simm7:$I, i64:$sz, v256f64:$pt, i32:$vl), (VLDNCirl_v (LO7 $I), i6… 9 def : Pat<(int_ve_vl_vldu_vssl i64:$sy, i64:$sz, i32:$vl), (VLDUrrl i64:$sy, i64:$sz, i32:$vl)>; 10 def : Pat<(int_ve_vl_vldu_vssvl i64:$sy, i64:$sz, v256f64:$pt, i32:$vl), (VLDUrrl_v i64:$sy, i64:$s… [all …]
|
| H A D | VEInstrPatternsVec.td | 19 def: Pat<(i64 (repl_f32 f32:$val)), 23 def: Pat<(i64 (repl_i32 i32:$val)), 34 def : Pat<(v256i1 (load ADDRrii:$addr)), 36 def : Pat<(v512i1 (load ADDRrii:$addr)), 38 def : Pat<(store v256i1:$vx, ADDRrii:$addr), 40 def : Pat<(store v512i1:$vx, ADDRrii:$addr), 46 def : Pat<(v32 (vec_broadcast (s32 ImmOp:$sy), i32:$vl)), 50 def : Pat<(v32 (vec_broadcast s32:$sy, i32:$vl)), 57 def : Pat<(v64 (vec_broadcast (s64 ImmOp:$sy), i32:$vl)), 61 def : Pat<(v64 (vec_broadcast s64:$sy, i32:$vl)), [all …]
|
| H A D | VEInstrIntrinsicVL.td | 6 def : Pat<(i64 (int_ve_vl_pack_f32p ADDRrii:$addr0, ADDRrii:$addr1)), 10 def : Pat<(i64 (int_ve_vl_pack_f32a ADDRrii:$addr)), 18 def : Pat<(v256i1 (int_ve_vl_extract_vm512u v512i1:$vm)), 21 def : Pat<(v256i1 (int_ve_vl_extract_vm512l v512i1:$vm)), 24 def : Pat<(v512i1 (int_ve_vl_insert_vm512u v512i1:$vmx, v256i1:$vmy)), 27 def : Pat<(v512i1 (int_ve_vl_insert_vm512l v512i1:$vmx, v256i1:$vmy)), 31 def : Pat<(int_ve_vl_vmrgw_vsvMl i32:$sy, v256f64:$vz, v512i1:$vm, i32:$vl), 33 def : Pat<(int_ve_vl_vmrgw_vsvMvl i32:$sy, v256f64:$vz, v512i1:$vm, 39 def : Pat<(int_ve_vl_vmv_vsvl i32:$sy, v256f64:$vz, i32:$vl), 41 def : Pat<(int_ve_vl_vmv_vsvvl i32:$sy, v256f64:$vz, v256f64:$pt, i32:$vl), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/AArch64/ |
| H A D | AArch64InstrAtomics.td | 17 def : Pat<(atomic_fence (timm), 0), (MEMBARRIER)>; 18 def : Pat<(atomic_fence (i64 4), (timm)), (DMB (i32 0x9))>; 19 def : Pat<(atomic_fence (timm), (timm)), (DMB (i32 0xb))>; 54 def : Pat<(acquiring_load<atomic_load_8> GPR64sp:$ptr), (LDAPRB GPR64sp:$ptr)>; 56 def : Pat<(acquiring_load<atomic_load_16> GPR64sp:$ptr), (LDAPRH GPR64sp:$ptr)>; 58 def : Pat<(acquiring_load<atomic_load_32> GPR64sp:$ptr), (LDAPRW GPR64sp:$ptr)>; 60 def : Pat<(acquiring_load<atomic_load_64> GPR64sp:$ptr), (LDAPRX GPR64sp:$ptr)>; 64 def : Pat<(seq_cst_load<atomic_load_az_8> GPR64sp:$ptr), (LDARB GPR64sp:$ptr)>; 65 def : Pat<(acquiring_load<atomic_load_az_8> GPR64sp:$ptr), (LDARB GPR64sp:$ptr)>; 66 def : Pat<(relaxed_load<atomic_load_az_8> (ro_Windexed8 GPR64sp:$Rn, GPR32:$Rm, [all …]
|
| H A D | AArch64InstrInfo.td | 929 def : Pat<(AArch64LOADgot tglobaltlsaddr:$addr), 932 def : Pat<(AArch64LOADgot texternalsym:$addr), 935 def : Pat<(AArch64LOADgot tconstpool:$addr), 1083 def : Pat<(v2f32 (int_aarch64_neon_bfdot 1159 : Pat<(VecTy (OpNode (VecTy V128:$Vd), (VecTy V128:$Vn), (VecTy V128:$Vm))), 1162 def : Pat<(v2i64 (int_aarch64_crypto_sha512su0 (v2i64 V128:$Vn), (v2i64 V128:$Vm))), 1175 : Pat<(xor (xor (VecTy V128:$Vn), (VecTy V128:$Vm)), (VecTy V128:$Va)), 1184 : Pat<(xor (VecTy V128:$Vn), (and (VecTy V128:$Vm), (vnot (VecTy V128:$Va)))), 1207 def : Pat<(v2i64 (int_aarch64_crypto_rax1 (v2i64 V128:$Vn), (v2i64 V128:$Vm))), 1210 def : Pat<(v2i64 (int_aarch64_crypto_xar (v2i64 V128:$Vn), (v2i64 V128:$Vm), (i64 timm0_63:$imm))), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/X86/ |
| H A D | X86InstrVecCompiler.td | 10 // compiler, as well as Pat patterns used during instruction selection. 20 def : Pat<(f16 (extractelt (v8f16 VR128:$src), (iPTR 0))), 22 def : Pat<(f32 (extractelt (v4f32 VR128:$src), (iPTR 0))), 24 def : Pat<(f64 (extractelt (v2f64 VR128:$src), (iPTR 0))), 30 def : Pat<(f16 (extractelt (v8f16 VR128X:$src), (iPTR 0))), 32 def : Pat<(f32 (extractelt (v4f32 VR128X:$src), (iPTR 0))), 34 def : Pat<(f64 (extractelt (v2f64 VR128X:$src), (iPTR 0))), 39 def : Pat<(v8f16 (scalar_to_vector FR16:$src)), 42 def : Pat<(v4f32 (scalar_to_vector FR32:$src)), 45 def : Pat<(v2f64 (scalar_to_vector FR64:$src)), [all …]
|
| H A D | X86InstrCompiler.td | 10 // as well as Pat patterns used during instruction selection. 48 def : Pat<(X86callseq_start timm:$amt1, timm:$amt2), 66 def : Pat<(X86callseq_start timm:$amt1, timm:$amt2), 328 def : Pat<(i8 0), (EXTRACT_SUBREG (MOV32r0), sub_8bit)>; 329 def : Pat<(i16 0), (EXTRACT_SUBREG (MOV32r0), sub_16bit)>; 330 def : Pat<(i64 0), (SUBREG_TO_REG (i64 0), (MOV32r0), sub_32bit)>; 347 def : Pat<(i16 1), (EXTRACT_SUBREG (MOV32r1), sub_16bit)>; 348 def : Pat<(i16 -1), (EXTRACT_SUBREG (MOV32r_1), sub_16bit)>; 373 def : Pat<(i64 mov64imm32:$src), (MOV32ri64 mov64imm32:$src)>; 378 // FIXME: These are pseudo ops that should be replaced with Pat<> patterns. [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/PowerPC/ |
| H A D | PPCInstrVSX.td | 280 def : Pat<(Ty (scalar_to_vector In)), (Ty NonPermOut)>; 281 def : Pat<(Ty (PPCSToV In)), (Ty PermOut)>; 2482 def : Pat<(v16i8 (int_ppc_altivec_crypto_vpermxor v16i8:$a, 2487 def : Pat<(v16i8 (int_ppc_altivec_crypto_vpermxor v16i8:$a, 2491 def : Pat<(v16i8 (int_ppc_altivec_crypto_vpermxor_be v16i8:$a, 2498 def : Pat<(v4i32 (vnot v4i32:$A)), 2500 def : Pat<(v4i32 (or (and (vnot v4i32:$C), v4i32:$A), 2504 def : Pat<(f64 (fpimm0neg)), 2507 def : Pat<(f32 (fpimm0neg)), 2510 def : Pat<(f64 (nzFPImmExactInti5:$A)), [all …]
|
| H A D | PPCInstrHTM.td | 97 def : Pat<(int_ppc_tbegin i32:$R), 100 def : Pat<(int_ppc_tend i32:$R), 103 def : Pat<(int_ppc_tabort i32:$R), 106 def : Pat<(int_ppc_tabortwc i32:$TO, i32:$RA, i32:$RB), 109 def : Pat<(int_ppc_tabortwci i32:$TO, i32:$RA, i32:$SI), 112 def : Pat<(int_ppc_tabortdc i32:$TO, i32:$RA, i32:$RB), 115 def : Pat<(int_ppc_tabortdci i32:$TO, i32:$RA, i32:$SI), 118 def : Pat<(int_ppc_tcheck), 121 def : Pat<(int_ppc_treclaim i32:$RA), 124 def : Pat<(int_ppc_trechkpt), [all …]
|
| H A D | PPCInstrMMA.td | 645 def : Pat<(v512i1 (int_ppc_mma_xvi4ger8 v16i8:$XA, v16i8:$XB)), 647 def : Pat<(v512i1 (int_ppc_mma_xvi4ger8pp v512i1:$ATi, v16i8:$XA, v16i8:$XB)), 650 def : Pat<(v512i1 (int_ppc_mma_xvi8ger4 v16i8:$XA, v16i8:$XB)), 652 def : Pat<(v512i1 (int_ppc_mma_xvi8ger4pp v512i1:$ATi, v16i8:$XA, v16i8:$XB)), 655 def : Pat<(v512i1 (int_ppc_mma_xvi16ger2s v16i8:$XA, v16i8:$XB)), 657 def : Pat<(v512i1 (int_ppc_mma_xvi16ger2spp v512i1:$ATi, v16i8:$XA, v16i8:$XB)), 662 def : Pat<(v512i1 (int_ppc_mma_xvi4ger8 v16i8:$XA, v16i8:$XB)), 664 def : Pat<(v512i1 (int_ppc_mma_xvi4ger8pp v512i1:$ATi, v16i8:$XA, v16i8:$XB)), 667 def : Pat<(v512i1 (int_ppc_mma_xvi8ger4 v16i8:$XA, v16i8:$XB)), 669 def : Pat<(v512i1 (int_ppc_mma_xvi8ger4pp v512i1:$ATi, v16i8:$XA, v16i8:$XB)), [all …]
|
| H A D | PPCInstrP10.td | 1043 def : Pat<(v256i1 (PPCPairBuild v4i32:$vs1, v4i32:$vs0)), 1045 def : Pat<(v256i1 (int_ppc_vsx_assemble_pair v16i8:$vs1, v16i8:$vs0)), 1047 def : Pat<(v4i32 (PPCPairExtractVsx vsrpevenrc:$v, 0)), 1049 def : Pat<(v4i32 (PPCPairExtractVsx vsrpevenrc:$v, 1)), 1087 def : Pat<(v256i1 (int_ppc_vsx_lxvp DQForm:$src)), (LXVP memrix16:$src)>; 1088 def : Pat<(v256i1 (int_ppc_vsx_lxvp XForm:$src)), (LXVPX XForm:$src)>; 1090 def : Pat<(v256i1 (int_ppc_vsx_lxvp PDForm:$src)), (PLXVP memri34:$src)>; 1093 def : Pat<(int_ppc_vsx_stxvp v256i1:$XSp, DQForm:$dst), 1095 def : Pat<(int_ppc_vsx_stxvp v256i1:$XSp, XForm:$dst), 1098 def : Pat<(int_ppc_vsx_stxvp v256i1:$XSp, PDForm:$dst), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/RISCV/ |
| H A D | RISCVInstrInfoXVentana.td | 33 def : Pat<(select GPR:$rc, GPR:$rs1, (i64 0)), 35 def : Pat<(select GPR:$rc, (i64 0), GPR:$rs1), 38 def : Pat<(select (i64 (setne GPR:$rc, (i64 0))), GPR:$rs1, (i64 0)), 40 def : Pat<(select (i64 (seteq GPR:$rc, (i64 0))), GPR:$rs1, (i64 0)), 42 def : Pat<(select (i64 (setne GPR:$rc, (i64 0))), (i64 0), GPR:$rs1), 44 def : Pat<(select (i64 (seteq GPR:$rc, (i64 0))), (i64 0), GPR:$rs1), 47 def : Pat<(select (i64 (setne GPR:$x, simm12_plus1:$y)), GPR:$rs1, (i64 0)), 49 def : Pat<(select (i64 (seteq GPR:$x, simm12_plus1:$y)), GPR:$rs1, (i64 0)), 51 def : Pat<(select (i64 (setne GPR:$x, simm12_plus1:$y)), (i64 0), GPR:$rs1), 53 def : Pat<(select (i64 (seteq GPR:$x, simm12_plus1:$y)), (i64 0), GPR:$rs1), [all …]
|
| H A D | RISCVInstrInfoZfh.td | 259 def : Pat<(f16 (fpimmneg0)), (FSGNJN_H (FMV_H_X X0), (FMV_H_X X0))>; 273 def : Pat<(any_fsqrt FPR16:$rs1), (FSQRT_H FPR16:$rs1, 0b111)>; 275 def : Pat<(fneg FPR16:$rs1), (FSGNJN_H $rs1, $rs1)>; 276 def : Pat<(fabs FPR16:$rs1), (FSGNJX_H $rs1, $rs1)>; 279 def : Pat<(fcopysign FPR16:$rs1, (fneg FPR16:$rs2)), (FSGNJN_H $rs1, $rs2)>; 280 def : Pat<(fcopysign FPR16:$rs1, FPR32:$rs2), 284 def : Pat<(any_fma FPR16:$rs1, FPR16:$rs2, FPR16:$rs3), 288 def : Pat<(any_fma FPR16:$rs1, FPR16:$rs2, (fneg FPR16:$rs3)), 292 def : Pat<(any_fma (fneg FPR16:$rs1), FPR16:$rs2, FPR16:$rs3), 296 def : Pat<(any_fma (fneg FPR16:$rs1), FPR16:$rs2, (fneg FPR16:$rs3)), [all …]
|
| H A D | RISCVInstrInfoZb.td | 525 def : Pat<(and GPR:$rs1, (not GPR:$rs2)), (ANDN GPR:$rs1, GPR:$rs2)>; 526 def : Pat<(or GPR:$rs1, (not GPR:$rs2)), (ORN GPR:$rs1, GPR:$rs2)>; 527 def : Pat<(xor GPR:$rs1, (not GPR:$rs2)), (XNOR GPR:$rs1, GPR:$rs2)>; 537 def : Pat<(rotl GPR:$rs1, uimmlog2xlen:$shamt), 545 def : Pat<(riscv_rolw GPR:$rs1, uimm5:$rs2), 550 def : Pat<(and (not (shiftop<shl> 1, GPR:$rs2)), GPR:$rs1), 552 def : Pat<(and (rotl -2, GPR:$rs2), GPR:$rs1), (BCLR GPR:$rs1, GPR:$rs2)>; 553 def : Pat<(or (shiftop<shl> 1, GPR:$rs2), GPR:$rs1), 555 def : Pat<(xor (shiftop<shl> 1, GPR:$rs2), GPR:$rs1), 557 def : Pat<(and (shiftop<srl> GPR:$rs1, GPR:$rs2), 1), [all …]
|
| H A D | RISCVInstrInfoD.td | 259 def : Pat<(any_fpround FPR64:$rs1), (FCVT_S_D FPR64:$rs1, 0b111)>; 260 def : Pat<(any_fpextend FPR32:$rs1), (FCVT_D_S FPR32:$rs1)>; 272 def : Pat<(any_fsqrt FPR64:$rs1), (FSQRT_D FPR64:$rs1, 0b111)>; 274 def : Pat<(fneg FPR64:$rs1), (FSGNJN_D $rs1, $rs1)>; 275 def : Pat<(fabs FPR64:$rs1), (FSGNJX_D $rs1, $rs1)>; 278 def : Pat<(fcopysign FPR64:$rs1, (fneg FPR64:$rs2)), (FSGNJN_D $rs1, $rs2)>; 279 def : Pat<(fcopysign FPR64:$rs1, FPR32:$rs2), (FSGNJ_D $rs1, (FCVT_D_S $rs2))>; 280 def : Pat<(fcopysign FPR32:$rs1, FPR64:$rs2), (FSGNJ_S $rs1, (FCVT_S_D $rs2, 284 def : Pat<(any_fma FPR64:$rs1, FPR64:$rs2, FPR64:$rs3), 288 def : Pat<(any_fma FPR64:$rs1, FPR64:$rs2, (fneg FPR64:$rs3)), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/M68k/ |
| H A D | M68kInstrCompiler.td | 11 /// as well as Pat patterns used during instruction selection. 19 def : Pat<(i32 (MxWrapper tconstpool :$src)), (MOV32ri tconstpool :$src)>; 20 def : Pat<(i32 (MxWrapper tglobaladdr :$src)), (MOV32ri tglobaladdr :$src)>; 21 def : Pat<(i32 (MxWrapper texternalsym :$src)), (MOV32ri texternalsym :$src)>; 22 def : Pat<(i32 (MxWrapper tjumptable :$src)), (MOV32ri tjumptable :$src)>; 23 def : Pat<(i32 (MxWrapper tblockaddress :$src)), (MOV32ri tblockaddress :$src)>; 25 def : Pat<(add MxDRD32:$src, (MxWrapper tconstpool:$opd)), 27 def : Pat<(add MxARD32:$src, (MxWrapper tjumptable:$opd)), 29 def : Pat<(add MxARD32:$src, (MxWrapper tglobaladdr :$opd)), 31 def : Pat<(add MxARD32:$src, (MxWrapper texternalsym:$opd)), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/CSKY/ |
| H A D | CSKYInstrInfoF2.td | 109 def : Pat<(f32 (load constpool:$src)), (f2FLRW_S (to_tconstpool tconstpool:$src))>, Requires<[HasFP… 110 def : Pat<(f64 (load constpool:$src)), (f2FLRW_D (to_tconstpool tconstpool:$src))>, Requires<[HasFP… 240 def : Pat<(i32 (fp_to_sint (fround FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOSI32_RN $vrx), GPR)… 241 def : Pat<(i32 (fp_to_uint (fround FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOUI32_RN $vrx), GPR)… 242 def : Pat<(i32 (fp_to_sint (fceil FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOSI32_RPI $vrx), GPR)… 243 def : Pat<(i32 (fp_to_uint (fceil FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOUI32_RPI $vrx), GPR)… 244 def : Pat<(i32 (fp_to_sint (ffloor FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOSI32_RNI $vrx), GPR)… 245 def : Pat<(i32 (fp_to_uint (ffloor FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOUI32_RNI $vrx), GPR)… 246 def : Pat<(i32 (fp_to_sint (ftrunc FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOSI32_RZ $vrx), GPR)… 247 def : Pat<(i32 (fp_to_uint (ftrunc FPR32Op:$vrx))), (COPY_TO_REGCLASS (f2FF32TOUI32_RZ $vrx), GPR)… [all …]
|
| H A D | CSKYInstrInfoF1.td | 168 def : Pat<(f32 (sint_to_fp GPR:$a)), 173 def : Pat<(f32 (uint_to_fp GPR:$a)), 178 def : Pat<(f64 (sint_to_fp GPR:$a)), 183 def : Pat<(f64 (uint_to_fp GPR:$a)), 213 def : Pat<(i32 (fp_to_sint (round sFPR32Op:$Rn))), 216 def : Pat<(i32 (fp_to_uint (round sFPR32Op:$Rn))), 219 def : Pat<(i32 (fp_to_sint (round sFPR64Op:$Rn))), 222 def : Pat<(i32 (fp_to_uint (round sFPR64Op:$Rn))), 232 def : Pat<(i32 (fp_to_sint sFPR32Op:$Rn)), 235 def : Pat<(i32 (fp_to_uint sFPR32Op:$Rn)), [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/Sparc/ |
| H A D | SparcInstr64Bit.td | 21 def : Pat<(i64 (anyext i32:$val)), (COPY_TO_REGCLASS $val, I64Regs)>; 22 def : Pat<(i32 (trunc i64:$val)), (COPY_TO_REGCLASS $val, IntRegs)>; 39 def : Pat<(i64 (zext i32:$val)), (SRLri $val, 0)>; 40 def : Pat<(i64 (sext i32:$val)), (SRAri $val, 0)>; 42 def : Pat<(i64 (and i64:$val, 0xffffffff)), (SRLri $val, 0)>; 43 def : Pat<(i64 (sext_inreg i64:$val, i32)), (SRAri $val, 0)>; 64 def : Pat<(i64 0), (COPY (i64 G0))>, 71 def : Pat<(i64 simm13:$val), (ORri (i64 G0), (as_i32imm $val))>; 72 def : Pat<(i64 SETHIimm:$val), (SETHIi (HI22 $val))>; 78 def : Pat<(i64 uimm32:$val), (ORri (SETHIi (HI22 $val)), (LO10 $val))>, [all …]
|