| /openbsd-src/gnu/llvm/llvm/lib/CodeGen/ |
| H A D | ExpandVectorPredication.cpp | 333 Value *Reduction; in expandPredicationInReduction() local 340 Reduction = Builder.CreateAddReduce(RedOp); in expandPredicationInReduction() 341 Reduction = Builder.CreateAdd(Reduction, Start); in expandPredicationInReduction() 344 Reduction = Builder.CreateMulReduce(RedOp); in expandPredicationInReduction() 345 Reduction = Builder.CreateMul(Reduction, Start); in expandPredicationInReduction() 348 Reduction = Builder.CreateAndReduce(RedOp); in expandPredicationInReduction() 349 Reduction = Builder.CreateAnd(Reduction, Start); in expandPredicationInReduction() 352 Reduction = Builder.CreateOrReduce(RedOp); in expandPredicationInReduction() 353 Reduction = Builder.CreateOr(Reduction, Start); in expandPredicationInReduction() 356 Reduction = Builder.CreateXorReduce(RedOp); in expandPredicationInReduction() [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/ARM/ |
| H A D | ARMParallelDSP.cpp | 54 class Reduction; 85 class Reduction { class 93 Reduction() = delete; 95 Reduction (Instruction *Add) : Root(Add) { } in Reduction() function in __anon02a3a5800111::Reduction 225 bool Search(Value *V, BasicBlock *BB, Reduction &R); 227 void InsertParallelMACs(Reduction &Reduction); 230 bool CreateParallelPairs(Reduction &R); 431 bool ARMParallelDSP::Search(Value *V, BasicBlock *BB, Reduction &R) { in Search() 528 Reduction R(&I); in MatchSMLAD() 548 bool ARMParallelDSP::CreateParallelPairs(Reduction &R) { in CreateParallelPairs() [all …]
|
| H A D | ARMISelLowering.cpp | 13137 auto Reduction = in PerformSELECTCombine() local 13142 Reduction = DCI.DAG.getNode(ISD::TRUNCATE, dl, VectorScalarType, Reduction); in PerformSELECTCombine() 13144 return Reduction; in PerformSELECTCombine()
|
| /openbsd-src/gnu/llvm/llvm/lib/Transforms/Vectorize/ |
| H A D | LoopVectorizationLegality.cpp | 1034 return (all_of(getReductionVars(), [&](auto &Reduction) -> bool { in canVectorizeFPMath() argument 1035 const RecurrenceDescriptor &RdxDesc = Reduction.second; in canVectorizeFPMath() 1041 return any_of(getReductionVars(), [&](auto &Reduction) -> bool { in isInvariantStoreOfReduction() argument 1042 const RecurrenceDescriptor &RdxDesc = Reduction.second; in isInvariantStoreOfReduction() 1048 return any_of(getReductionVars(), [&](auto &Reduction) -> bool { in isInvariantAddressOfReduction() argument 1049 const RecurrenceDescriptor &RdxDesc = Reduction.second; in isInvariantAddressOfReduction() 1389 for (const auto &Reduction : getReductionVars()) in prepareToFoldTailByMasking() local 1390 ReductionLiveOuts.insert(Reduction.second.getLoopExitInstr()); in prepareToFoldTailByMasking()
|
| H A D | LoopVectorize.cpp | 1462 return (all_of(Legal->getReductionVars(), [&](auto &Reduction) -> bool { in canVectorizeReductions() argument 1463 const RecurrenceDescriptor &RdxDesc = Reduction.second; in canVectorizeReductions() 5853 any_of(Legal->getReductionVars(), [&](auto &Reduction) -> bool { in selectInterleaveCount() argument 5854 const RecurrenceDescriptor &RdxDesc = Reduction.second; in selectInterleaveCount() 5870 any_of(Legal->getReductionVars(), [&](auto &Reduction) -> bool { in selectInterleaveCount() argument 5871 const RecurrenceDescriptor &RdxDesc = Reduction.second; in selectInterleaveCount() 7394 for (const auto &Reduction : Legal->getReductionVars()) { in collectValuesToIgnore() local 7395 const RecurrenceDescriptor &RedDes = Reduction.second; in collectValuesToIgnore() 7409 for (const auto &Reduction : Legal->getReductionVars()) { in collectInLoopReductions() local 7410 PHINode *Phi = Reduction.first; in collectInLoopReductions() [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/RISCV/ |
| H A D | RISCVScheduleV.td | 299 // 14. Vector Reduction Operations 300 // 14.1. Vector Single-Width Integer Reduction Instructions 302 // 14.2. Vector Widening Integer Reduction Instructions 304 // 14.3. Vector Single-Width Floating-Point Reduction Instructions 307 // 14.4. Vector Widening Floating-Point Reduction Instructions 515 // 14. Vector Reduction Operations 516 // 14.1. Vector Single-Width Integer Reduction Instructions 519 // 14.2. Vector Widening Integer Reduction Instructions 522 // 14.3. Vector Single-Width Floating-Point Reduction Instructions 527 // 14.4. Vector Widening Floating-Point Reduction Instructions [all …]
|
| H A D | RISCVInstrInfoVVLPatterns.td | 1872 // 14. Vector Reduction Operations 1874 // 14.1. Vector Single-Width Integer Reduction Instructions 1885 // 14.2. Vector Widening Integer Reduction Instructions 1893 // 14.3. Vector Single-Width Floating-Point Reduction Instructions 1900 // 14.4. Vector Widening Floating-Point Reduction Instructions
|
| H A D | RISCVInstrInfoV.td | 1477 // Vector Single-Width Integer Reduction Instructions 1489 // Vector Widening Integer Reduction Instructions 1502 // Vector Single-Width Floating-Point Reduction Instructions 1517 // Vector Widening Floating-Point Reduction Instructions
|
| H A D | RISCVInstrInfoVPseudos.td | 5618 // 14. Vector Reduction Operations 5623 // 14.1. Vector Single-Width Integer Reduction Instructions 5635 // 14.2. Vector Widening Integer Reduction Instructions 5645 // 14.3. Vector Single-Width Floating-Point Reduction Instructions 5657 // 14.4. Vector Widening Floating-Point Reduction Instructions 6230 // 14. Vector Reduction Operations 6235 // 14.1. Vector Single-Width Integer Reduction Instructions 6247 // 14.2. Vector Widening Integer Reduction Instructions 6255 // 14.3. Vector Single-Width Floating-Point Reduction Instructions 6263 // 14.4. Vector Widening Floating-Point Reduction Instructions
|
| /openbsd-src/gnu/llvm/llvm/docs/HistoricalNotes/ |
| H A D | 2001-06-01-GCCOptimizations.txt | 25 12. Strength Reduction
|
| /openbsd-src/gnu/llvm/lldb/source/Plugins/TraceExporter/docs/ |
| H A D | htr.rst | 33 **Basic Super Block Reduction**
|
| /openbsd-src/gnu/llvm/clang/include/clang/Basic/ |
| H A D | arm_mve.td | 539 multiclass Reduction<Type Accumulator, string basename, list<Type> basetypes, 561 defm vminvq: Reduction<Scalar, "minv", [Vector], 1, (seq (Scalar $ret))>; 562 defm vmaxvq: Reduction<Scalar, "maxv", [Vector], 1, (seq (Scalar $ret))>; 566 defm vminavq: Reduction<UScalar, "minav", [Vector], 0, (seq (UScalar $ret))>; 567 defm vmaxavq: Reduction<UScalar, "maxav", [Vector], 0, (seq (UScalar $ret))>; 571 defm vminnmvq: Reduction<Scalar, "minnmv", [Scalar, Vector]>; 572 defm vmaxnmvq: Reduction<Scalar, "maxnmv", [Scalar, Vector]>; 573 defm vminnmavq: Reduction<Scalar, "minnmav", [Scalar, Vector]>; 574 defm vmaxnmavq: Reduction<Scalar, "maxnmav", [Scalar, Vector]>;
|
| H A D | riscv_vector.td | 2098 // 15. Vector Reduction Operations 2099 // 15.1. Vector Single-Width Integer Reduction Instructions 2112 // 15.2. Vector Widening Integer Reduction Instructions 2113 // Vector Widening Integer Reduction Operations 2121 // 15.3. Vector Single-Width Floating-Point Reduction Instructions 2127 // 15.4. Vector Widening Floating-Point Reduction Instructions
|
| /openbsd-src/gnu/gcc/gcc/config/mips/ |
| H A D | mips-ps-3d.md | 237 ; addr.ps - Floating Point Reduction Add 268 ; mulr.ps - Floating Point Reduction Multiply
|
| /openbsd-src/gnu/llvm/llvm/ |
| H A D | CODE_OWNERS.TXT | 71 D: Loop Strength Reduction, Register allocators
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/AArch64/ |
| H A D | AArch64SchedNeoverseN2.td | 1848 // Reduction, arithmetic, B form 1851 // Reduction, arithmetic, H form 1854 // Reduction, arithmetic, S form 1857 // Reduction, arithmetic, D form 1860 // Reduction, logical
|
| H A D | SVEInstrFormats.td | 5110 // SVE Floating Point Fast Reduction Group 5146 // SVE Floating Point Accumulating Reduction Group 7944 // SVE Integer Reduction Group
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/VE/ |
| H A D | VEInstrVec.td | 1333 // Section 8.14 - Vector Reduction Instructions 1393 // Section 8.14.7 - VRAND (Vector Reduction And) 1396 // Section 8.14.8 - VROR (Vector Reduction Or) 1399 // Section 8.14.9 - VRXOR (Vector Reduction Exclusive Or)
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/IR/ |
| H A D | VPIntrinsics.def | 597 ///// } Reduction
|
| H A D | IntrinsicsRISCV.td | 706 // For Reduction ternary operations. 716 // For Reduction ternary operations with mask.
|
| H A D | Intrinsics.td | 1966 //===------------------------ Reduction Intrinsics ------------------------===//
|
| /openbsd-src/gnu/llvm/llvm/docs/GlobalISel/ |
| H A D | GenericOpcode.rst | 633 Vector Reduction Operations
|
| /openbsd-src/gnu/llvm/llvm/docs/ |
| H A D | Passes.rst | 774 ``-loop-reduce``: Loop Strength Reduction
|
| /openbsd-src/gnu/gcc/gcc/ |
| H A D | tree.def | 1036 /* Reduction operations.
|
| /openbsd-src/gnu/llvm/clang/lib/CodeGen/ |
| H A D | CGOpenMPRuntime.cpp | 627 std::pair<llvm::Function *, llvm::Function *> Reduction = in emitInitWithReductionInitializer() local 641 RValue Func = RValue::get(Reduction.second); in emitInitWithReductionInitializer() 4997 std::pair<llvm::Function *, llvm::Function *> Reduction = in emitReductionCombiner() local 4999 RValue Func = RValue::get(Reduction.first); in emitReductionCombiner()
|