/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
H A D | RISCVScheduleV.td | 13 // Used for widening and narrowing instructions as it doesn't contain M8. 15 // Used for widening reductions, which does contain M8. 20 // Used for widening floating-point Reduction as it doesn't contain MF8. 34 // For widening instructions, SEW will not be 64. 353 // 11.2. Vector Widening Integer Add/Subtract 384 // 11.12. Vector Widening Integer Multiply Instructions 390 // 11.14. Vector Widening Integer Multiply-Add Instructions 426 // 13.3. Vector Widening Floating-Point Add/Subtract Instructions 434 // 13.5. Vector Widening Floating-Point Multiply 440 // 13.7. Vector Widening Floating-Point Fused Multiply-Add Instructions [all …]
|
H A D | RISCVInstrInfoVSDPatterns.td | 928 // widening vwsub.vx which can recognize a extended folded into the 945 // 11.2. Vector Widening Integer Add and Subtract 954 // shl (ext v, splat 1) is a special case of widening add. 1098 // 11.12. Vector Widening Integer Multiply Instructions 1116 // 11.14 Vector Widening Integer Multiply-Add Instructions 1209 // 13.3. Vector Widening Floating-Point Add/Subtract Instructions 1218 // 13.5. Vector Widening Floating-Point Multiply Instructions 1316 // 13.7. Vector Widening Floating-Point Fused Multiply-Add Instructions 1433 // 13.18. Widening Floating-Point/Integer Type-Convert Instructions
|
H A D | RISCVInstrInfoV.td | 1102 // Vector Widening Integer Add/Subtract 1103 // Refer to 11.2 Widening Vector Arithmetic Instructions 1269 // Vector Widening Integer Multiply Instructions 1282 // Vector Widening Integer Multiply-Add Instructions 1342 // Vector Widening Floating-Point Add/Subtract Instructions 1367 // Vector Widening Floating-Point Multiply 1385 // Vector Widening Floating-Point Fused Multiply-Add Instructions 1472 // Widening Floating-Point/Integer Type-Convert Instructions 1517 // Vector Widening Integer Reduction Instructions 1545 // Vector Widening Floating-Point Reduction Instructions
|
H A D | RISCVInstrFormats.td | 72 // * Widening: The destination EEW is greater than the source EEW, the source 221 // 1 -> default value for vector pseudos. not widening or narrowing. 223 // 3 -> widening case
|
H A D | RISCVInstrInfoVVLPatterns.td | 1348 // Widening converting 1421 // Reuse the same list of types used in the widening nodes, but just swap the 1439 // Reuse the same list of types used in the widening nodes, but just swap the 2216 // 11.2. Vector Widening Integer Add/Subtract 2222 // shl_vl (ext_vl v, splat 1) is a special case of widening add. 2374 // 11.12. Vector Widening Integer Multiply Instructions 2385 // 11.14. Vector Widening Integer Multiply-Add Instructions 2481 // 13.3. Vector Widening Floating-Point Add/Subtract Instructions 2492 // 13.5. Vector Widening Floating-Point Multiply Instructions 2505 // 13.7. Vector Widening Floating-Point Fused Multiply-Add Instructions [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | GuardWidening.cpp | 1 //===- GuardWidening.cpp - ---- Guard widening ----------------------------===// 9 // This file implements the guard widening pass. The semantics of the 12 // "widening" and can be used hoist and common runtime checks in situations like 67 #define DEBUG_TYPE "guard-widening" 74 WidenBranchGuards("guard-widening-widen-branch-guards", cl::Hidden, 119 /// account for the following situation: widening should not turn a 154 /// Try to eliminate instruction \p Instr by widening it into an earlier 163 /// Used to keep track of which widening potential is more effective. 168 /// Widening is performance neutral as far as the cycles spent in check 173 /// Widening is profitable. [all …]
|
H A D | LoopFlatten.cpp | 142 // widening. 210 // on the phi, which can be the result of widening the induction variables. in matchLinearIVUser() 229 // The mul should not have any other uses. Widening may leave trivially dead in matchLinearIVUser() 243 "Unexpected type mismatch in types after widening"); in matchLinearIVUser() 276 // After widening the IVs, a trunc instruction might have been introduced, in checkInnerInductionPhiUsers() 333 // widening the IV. in verifyTripCount() 842 LLVM_DEBUG(dbgs() << "Widening the IVs is disabled\n"); in CanWidenIV() 846 LLVM_DEBUG(dbgs() << "Try widening the IVs\n"); in CanWidenIV() 900 // After widening, rediscover all the loop components. in CanWidenIV() 921 // It can happen that after widening of the IV, flattening may not be in FlattenLoopPair() [all …]
|
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
H A D | CastToStructChecker.cpp | 10 // cast from non-struct pointer to struct pointer and widening struct data cast. 90 // Warn when there is widening cast. in VisitCastExpr() 97 BR.EmitBasicReport(AC->getDecl(), Checker, "Widening cast to struct type", in VisitCastExpr()
|
/freebsd/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
H A D | LoopWidening.h | 10 /// loops which do not otherwise exit. The widening is done by invalidating 24 /// Get the states that result from widening the loop.
|
/freebsd/contrib/llvm-project/clang/include/clang/Basic/ |
H A D | riscv_vector.td | 1207 // 11.2. Vector Widening Integer Add/Subtract 1208 // Widening unsigned integer add/subtract, 2*SEW = SEW +/- SEW 1212 // Widening signed integer add/subtract, 2*SEW = SEW +/- SEW 1215 // Widening unsigned integer add/subtract, 2*SEW = 2*SEW +/- SEW 1218 // Widening signed integer add/subtract, 2*SEW = 2*SEW +/- SEW 1314 // 11.12. Vector Widening Integer Multiply Instructions 1334 // 11.14. Vector Widening Integer Multiply-Add Instructions 1561 // 13.3. Vector Widening Floating-Point Add/Subtract Instructions 1562 // Widening FP add/subtract, 2*SEW = 2*SEW +/- SEW 1576 // 13.3. Vector Widening Floating-Point Add/Subtract Instructions [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | HexagonStoreWidening.cpp | 80 StringRef getPassName() const override { return "Hexagon Store Widening"; } in getPassName() 116 "Hexason Store Widening", false, false) 119 "Hexagon Store Widening", false, false) in INITIALIZE_PASS_DEPENDENCY() 152 // this function will not be subjected to widening. 564 // any ill effects (other than not having performed widening in the unpro-
|
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/MCTargetDesc/ |
H A D | RISCVBaseInfo.h | 93 // Is this instruction a vector widening reduction instruction. Used by RVV 121 // 1 -> default value for vector pseudos. not widening or narrowing. 123 // 3 -> widening case 157 /// \returns true if it is a vector widening reduction instruction.
|
/freebsd/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/ |
H A D | TypeErasedDataflowAnalysis.h | 80 /// widened result in the current element (`Current`). Widening is optional -- 87 /// the widening.
|
H A D | DataflowAnalysis.h | 145 // The second-choice implementation: `widen` is unavailable. Widening is 146 // merged with equality checking, so when widening is unimplemented, we
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
H A D | IndVarSimplify.h | 26 /// Perform IV widening during the pass.
|
H A D | LoopPredication.h | 10 // widening checks across loop iterations.
|
H A D | GuardWidening.h | 9 // Guard widening is an optimization over the @llvm.experimental.guard intrinsic
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | ValueLattice.h | 82 /// Number of times a constant range has been extended with widening enabled. 119 /// The number of allowed widening steps (including setting the range 379 // Simple form of widening. If a range is extended multiple times, go to
|
/freebsd/contrib/arm-optimized-routines/math/aarch64/advsimd/ |
H A D | acoshf.c | 48 Widening sign-extend special predicate in order to mask with it. */ in V_NAME_F1()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | SimplifyIndVar.cpp | 933 // widening) basing on it. in simplifyUsers() 1540 /// widening it's type? In other words, can the extend be safely hoisted out of 1625 assert(CastWidth <= IVWidth && "Unexpected width while widening compare."); in widenLoopCompare() 1684 // - narrow def (in case of we are widening the IV increment); in widenWithVariantUse() 1766 // Generating a widening use instruction. in widenWithVariantUse() 1857 // Widening the PHI requires us to insert a trunc. The logical place in widenIVUse() 1895 // another round of IV widening in which the intermediate IV becomes in widenIVUse() 1917 // No further widening is needed. The deceased [sz]ext had done it for us. in widenIVUse() 1922 // Does this user itself evaluate to a recurrence after widening? in widenIVUse() 1993 // This user does not evaluate to a recurrence after widening, so don't in widenIVUse() [all …]
|
/freebsd/contrib/llvm-project/clang/lib/Analysis/FlowSensitive/ |
H A D | DataflowEnvironment.cpp | 83 // convergence. Once we have widening support for the reference/pointer and 165 // Boolean-model widening. in widenDistinctValues() 193 // FIXME: Add other built-in model widening. in widenDistinctValues() 195 // Custom-model widening. in widenDistinctValues() 260 // Perform widening on either `LocToVal` or `ExprToVal`. `Key` must be either
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64Features.td | 439 "Enable SVE2.1 or SME2.1 non-widening BFloat16 to BFloat16 instructions", [FeatureBF16]>; 445 …"Enable SVE2 non-widening and SME2 Z-targeting non-widening BFloat16 instructions", [FeatureB16B16… 448 "Enable SME2.1 ZA-targeting non-widening BFloat16 instructions", [FeatureSME2, FeatureB16B16]>; 451 "Enable SME non-widening Float16 instructions", [FeatureSME2]>;
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86Subtarget.h | 228 // Helper functions to determine when we should allow widening to 512-bit 230 // TODO: Currently we're always allowing widening on CPUs without VLX,
|
/freebsd/contrib/llvm-project/clang/include/clang/Sema/ |
H A D | Overload.h | 219 /// HLSL Scalar Widening 225 /// HLSL Scalar Widening with promotion 234 /// OpenCL Scalar Widening 237 /// HLSL Scalar Widening with conversion
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
H A D | LegalizeVectorTypes.cpp | 4278 // Result Vector Widening in WidenVectorResult() 4407 // Vector-predicated binary op widening. Note that -- unlike the in WidenVectorResult() 4606 // Ternary op widening. in WidenVecRes_Ternary() 4625 // Binary op widening. in WidenVecRes_Binary() 4666 // Binary op widening, but with an extra operand that shouldn't be widened. in WidenVecRes_BinaryWithExtraScalarOp() 4757 // Binary op widening for operations that can trap. in WidenVecRes_BinaryCanTrap() 4846 // StrictFP op widening for operations that can trap. in WidenVecRes_StrictFP() 5077 // Because the result and the input are different vector types, widening in WidenVecRes_Convert() 5078 // the result could create a legal type but widening the input might make in WidenVecRes_Convert() 5080 // and then widening i in WidenVecRes_Convert() [all...] |