Home
last modified time | relevance | path

Searched full:widening (Results 1 – 25 of 130) sorted by relevance

123456

/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVScheduleV.td13 // 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 DRISCVInstrInfoVSDPatterns.td928 // 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 DRISCVInstrInfoV.td1102 // 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 DRISCVInstrFormats.td72 // * 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 DRISCVInstrInfoVVLPatterns.td1348 // 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 DGuardWidening.cpp1 //===- 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 DLoopFlatten.cpp142 // 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 DCastToStructChecker.cpp10 // 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 DLoopWidening.h10 /// 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 Driscv_vector.td1207 // 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 DHexagonStoreWidening.cpp80 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 DRISCVBaseInfo.h93 // 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 DTypeErasedDataflowAnalysis.h80 /// widened result in the current element (`Current`). Widening is optional --
87 /// the widening.
H A DDataflowAnalysis.h145 // 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 DIndVarSimplify.h26 /// Perform IV widening during the pass.
H A DLoopPredication.h10 // widening checks across loop iterations.
H A DGuardWidening.h9 // Guard widening is an optimization over the @llvm.experimental.guard intrinsic
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DValueLattice.h82 /// 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 Dacoshf.c48 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 DSimplifyIndVar.cpp933 // 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 DDataflowEnvironment.cpp83 // 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 DAArch64Features.td439 "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 DX86Subtarget.h228 // 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 DOverload.h219 /// 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 DLegalizeVectorTypes.cpp4278 // 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...]

123456