mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-13 04:38:24 +00:00
[mips] Fold FeatureBitCount into FeatureMips32 and FeatureMips64
Summary: DCL[ZO] are now correctly marked as being MIPS64 instructions. This has no effect on the CodeGen tests since expansion of i64 prevented their use anyway. The check for MIPS16 to prevent the use of CLZ no longer prevents DCLZ as well. This is not a functional change since DCLZ is still prohibited by being a MIPS64 instruction (MIPS16 is only compatible with MIPS32). No functional change Reviewers: vmedic Reviewed By: vmedic Differential Revision: http://reviews.llvm.org/D3694 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208544 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -81,7 +81,7 @@ MipsSubtarget::MipsSubtarget(const std::string &TT, const std::string &CPU,
|
||||
MipsABI(UnknownABI), IsLittle(little), IsSingleFloat(false),
|
||||
IsFP64bit(false), IsNaN2008bit(false), IsGP64bit(false), HasVFPU(false),
|
||||
HasCnMips(false), IsLinux(true), HasMips3_32(false), HasMips4_32(false),
|
||||
HasMips4_32r2(false), HasBitCount(false), InMips16Mode(false),
|
||||
HasMips4_32r2(false), InMips16Mode(false),
|
||||
InMips16HardFloat(Mips16HardFloat), InMicroMipsMode(false), HasDSP(false),
|
||||
HasDSPR2(false), AllowMixed16_32(Mixed16_32 | Mips_Os16), Os16(Mips_Os16),
|
||||
HasMSA(false), RM(_RM), OverrideMode(NoOverride), TM(_TM),
|
||||
@ -154,9 +154,6 @@ MipsSubtarget::MipsSubtarget(const std::string &TT, const std::string &CPU,
|
||||
// TODO: Investigate the IsLinux check. I suspect it's really checking for
|
||||
// bare-metal.
|
||||
UseSmallSection = !IsLinux && (RM == Reloc::Static);
|
||||
// set some subtarget specific features
|
||||
if (inMips16Mode())
|
||||
HasBitCount=false;
|
||||
}
|
||||
|
||||
bool
|
||||
|
Reference in New Issue
Block a user