diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2021-02-16 20:13:02 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2021-02-16 20:13:02 +0000 |
commit | b60736ec1405bb0a8dd40989f67ef4c93da068ab (patch) | |
tree | 5c43fbb7c9fc45f0f87e0e6795a86267dbd12f9d /llvm/lib/Target/SystemZ/SystemZSubtarget.cpp | |
parent | cfca06d7963fa0909f90483b42a6d7d194d01e08 (diff) | |
download | src-b60736ec1405bb0a8dd40989f67ef4c93da068ab.tar.gz src-b60736ec1405bb0a8dd40989f67ef4c93da068ab.zip |
Vendor import of llvm-project main 8e464dd76bef, the last commit beforevendor/llvm-project/llvmorg-12-init-17869-g8e464dd76bef
the upstream release/12.x branch was created.
Diffstat (limited to 'llvm/lib/Target/SystemZ/SystemZSubtarget.cpp')
-rw-r--r-- | llvm/lib/Target/SystemZ/SystemZSubtarget.cpp | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp b/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp index 68e0b7ae66a4..d24e264b03a5 100644 --- a/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp +++ b/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp @@ -33,24 +33,32 @@ SystemZSubtarget::initializeSubtargetDependencies(StringRef CPU, StringRef FS) { if (CPUName.empty()) CPUName = "generic"; // Parse features string. - ParseSubtargetFeatures(CPUName, FS); + ParseSubtargetFeatures(CPUName, /*TuneCPU*/ CPUName, FS); // -msoft-float implies -mno-vx. if (HasSoftFloat) HasVector = false; + // -mno-vx implicitly disables all vector-related features. + if (!HasVector) { + HasVectorEnhancements1 = false; + HasVectorEnhancements2 = false; + HasVectorPackedDecimal = false; + HasVectorPackedDecimalEnhancement = false; + } + return *this; } SystemZSubtarget::SystemZSubtarget(const Triple &TT, const std::string &CPU, const std::string &FS, const TargetMachine &TM) - : SystemZGenSubtargetInfo(TT, CPU, FS), HasDistinctOps(false), - HasLoadStoreOnCond(false), HasHighWord(false), HasFPExtension(false), - HasPopulationCount(false), HasMessageSecurityAssist3(false), - HasMessageSecurityAssist4(false), HasResetReferenceBitsMultiple(false), - HasFastSerialization(false), HasInterlockedAccess1(false), - HasMiscellaneousExtensions(false), + : SystemZGenSubtargetInfo(TT, CPU, /*TuneCPU*/ CPU, FS), + HasDistinctOps(false), HasLoadStoreOnCond(false), HasHighWord(false), + HasFPExtension(false), HasPopulationCount(false), + HasMessageSecurityAssist3(false), HasMessageSecurityAssist4(false), + HasResetReferenceBitsMultiple(false), HasFastSerialization(false), + HasInterlockedAccess1(false), HasMiscellaneousExtensions(false), HasExecutionHint(false), HasLoadAndTrap(false), HasTransactionalExecution(false), HasProcessorAssist(false), HasDFPZonedConversion(false), HasEnhancedDAT2(false), |