"argument should be an 8-bit value shifted by a multiple of 8 bits, or in the form 0x??FF">;
def err_argument_not_contiguous_bit_field : Error<
"argument %0 value should represent a contiguous bit field">;
-def err_rotation_argument_to_cadd
- : Error<"argument should be the value 90 or 270">;
-def err_rotation_argument_to_cmla
- : Error<"argument should be the value 0, 90, 180 or 270">;
+def err_rotation_argument_to_cadd : Error<
+ "argument should be the value 90 or 270">;
+def err_rotation_argument_to_cmla : Error<
+ "argument should be the value 0, 90, 180 or 270">;
def warn_neon_vector_initializer_non_portable : Warning<
"vector initializers are not compatible with NEON intrinsics in big endian "
"mode">, InGroup<DiagGroup<"nonportable-vector-initialization">>;
DIGlobalVariable *createTempGlobalVariableFwdDecl(
DIScope *Context, StringRef Name, StringRef LinkageName, DIFile *File,
unsigned LineNo, DIType *Ty, bool IsLocalToUnit, MDNode *Decl = nullptr,
- MDTuple *TemplateParams= nullptr, uint32_t AlignInBits = 0);
+ MDTuple *TemplateParams = nullptr, uint32_t AlignInBits = 0);
/// Create a new descriptor for an auto variable. This is a local variable
/// that is not a subprogram parameter.
else {
Cost = TTI->getInstructionCost(&Inst, CostKind);
}
+
if (auto CostVal = Cost.getValue())
OS << "Cost Model: Found an estimated cost of " << *CostVal;
else
else {
Cost = TTI.getInstructionCost(&Inst, CostKind);
}
+
if (auto CostVal = Cost.getValue())
OS << "Cost Model: Found an estimated cost of " << *CostVal;
else
return ParseRet::None;
}
+
#ifndef NDEBUG
// Verify the assumtion that all vectors in the signature of a vector
// function have the same number of elements.
return (EC == VTy->getElementCount());
});
}
-
#endif // NDEBUG
// Extract the VectorizationFactor from a given function signature,
}
// If we have a zero-sized type, the index doesn't matter. Keep looping.
- if (Q.DL.getTypeAllocSize(GTI.getIndexedType()).getKnownMinSize() == 0)
+ if (Q.DL.getTypeAllocSize(GTI.getIndexedType()).isZero())
continue;
// Fast path the constant operand case both for efficiency and so we don't
return DAG.getVectorShuffle(OutVT, dl, V0, V1, NewMask);
}
-
SDValue DAGTypeLegalizer::PromoteIntRes_BUILD_VECTOR(SDNode *N) {
EVT OutVT = N->getValueType(0);
EVT NOutVT = TLI.getTypeToTransformTo(*DAG.getContext(), OutVT);
}
namespace llvm {
-
extern cl::opt<unsigned> MaxDevirtIterations;
extern cl::opt<bool> EnableConstraintElimination;
extern cl::opt<bool> EnableFunctionSpecialization;
extern cl::opt<bool> RunNewGVN;
extern cl::opt<bool> RunPartialInlining;
extern cl::opt<bool> ExtraVectorizerPasses;
-
extern cl::opt<bool> FlattenedProfileUsed;
-
extern cl::opt<AttributorRunOption> AttributorRun;
extern cl::opt<bool> EnableKnowledgeRetention;
-
extern cl::opt<bool> EnableMatrix;
-
extern cl::opt<bool> DisablePreInliner;
extern cl::opt<int> PreInlineThreshold;
} // namespace llvm
struct VectorizationFactor {
/// Vector width with best cost.
ElementCount Width;
+
/// Cost of the loop with that width.
InstructionCost Cost;