Changeset View
Changeset View
Standalone View
Standalone View
llvm/lib/Target/PowerPC/PPC.td
Show First 20 Lines • Show All 155 Lines • ▼ Show 20 Lines | def FeatureP8Vector : SubtargetFeature<"power8-vector", "HasP8Vector", "true", | ||||
[FeatureVSX, FeatureP8Altivec]>; | [FeatureVSX, FeatureP8Altivec]>; | ||||
def FeatureDirectMove : | def FeatureDirectMove : | ||||
SubtargetFeature<"direct-move", "HasDirectMove", "true", | SubtargetFeature<"direct-move", "HasDirectMove", "true", | ||||
"Enable Power8 direct move instructions", | "Enable Power8 direct move instructions", | ||||
[FeatureVSX]>; | [FeatureVSX]>; | ||||
def FeaturePartwordAtomic : SubtargetFeature<"partword-atomics", | def FeaturePartwordAtomic : SubtargetFeature<"partword-atomics", | ||||
"HasPartwordAtomics", "true", | "HasPartwordAtomics", "true", | ||||
"Enable l[bh]arx and st[bh]cx.">; | "Enable l[bh]arx and st[bh]cx.">; | ||||
def FeatureQuadwordAtomic : SubtargetFeature<"quadword-atomics", | |||||
"HasQuadwordAtomics", "true", | |||||
"Enable lqarx and stqcx.">; | |||||
def FeatureInvariantFunctionDescriptors : | def FeatureInvariantFunctionDescriptors : | ||||
SubtargetFeature<"invariant-function-descriptors", | SubtargetFeature<"invariant-function-descriptors", | ||||
"HasInvariantFunctionDescriptors", "true", | "HasInvariantFunctionDescriptors", "true", | ||||
"Assume function descriptors are invariant">; | "Assume function descriptors are invariant">; | ||||
def FeatureLongCall : SubtargetFeature<"longcall", "UseLongCalls", "true", | def FeatureLongCall : SubtargetFeature<"longcall", "UseLongCalls", "true", | ||||
"Always use indirect calls">; | "Always use indirect calls">; | ||||
def FeatureHTM : SubtargetFeature<"htm", "HasHTM", "true", | def FeatureHTM : SubtargetFeature<"htm", "HasHTM", "true", | ||||
"Enable Hardware Transactional Memory instructions">; | "Enable Hardware Transactional Memory instructions">; | ||||
▲ Show 20 Lines • Show All 150 Lines • ▼ Show 20 Lines | list<SubtargetFeature> P8AdditionalFeatures = | ||||
[DirectivePwr8, | [DirectivePwr8, | ||||
FeatureP8Altivec, | FeatureP8Altivec, | ||||
FeatureP8Vector, | FeatureP8Vector, | ||||
FeatureP8Crypto, | FeatureP8Crypto, | ||||
FeatureHTM, | FeatureHTM, | ||||
FeatureDirectMove, | FeatureDirectMove, | ||||
FeatureICBT, | FeatureICBT, | ||||
FeaturePartwordAtomic, | FeaturePartwordAtomic, | ||||
FeatureQuadwordAtomic, | |||||
FeaturePredictableSelectIsExpensive | FeaturePredictableSelectIsExpensive | ||||
]; | ]; | ||||
list<SubtargetFeature> P8SpecificFeatures = [FeatureAddiLoadFusion, | list<SubtargetFeature> P8SpecificFeatures = [FeatureAddiLoadFusion, | ||||
FeatureAddisLoadFusion]; | FeatureAddisLoadFusion]; | ||||
list<SubtargetFeature> P8InheritableFeatures = | list<SubtargetFeature> P8InheritableFeatures = | ||||
!listconcat(P7InheritableFeatures, P8AdditionalFeatures); | !listconcat(P7InheritableFeatures, P8AdditionalFeatures); | ||||
list<SubtargetFeature> P8Features = | list<SubtargetFeature> P8Features = | ||||
▲ Show 20 Lines • Show All 310 Lines • Show Last 20 Lines |