diff options
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp')
-rw-r--r-- | contrib/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp b/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp index 9d901fd70446..30bd580ad86a 100644 --- a/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp +++ b/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp @@ -2228,7 +2228,6 @@ bool AArch64InstrInfo::hasUnscaledLdStOffset(unsigned Opc) { case AArch64::LDRWpre: case AArch64::LDURXi: case AArch64::LDRXpre: - case AArch64::LDRSWpre: case AArch64::LDURSWi: case AArch64::LDURHHi: case AArch64::LDURBBi: @@ -2438,7 +2437,6 @@ bool AArch64InstrInfo::isPairableLdStInst(const MachineInstr &MI) { case AArch64::LDURXi: case AArch64::LDRXpre: case AArch64::LDURSWi: - case AArch64::LDRSWpre: return true; } } @@ -2559,8 +2557,7 @@ bool AArch64InstrInfo::isCandidateToMergeOrPair(const MachineInstr &MI) const { // Can't merge/pair if the instruction modifies the base register. // e.g., ldr x0, [x0] // This case will never occur with an FI base. - // However, if the instruction is an LDR<S,D,Q,W,X,SW>pre or - // STR<S,D,Q,W,X>pre, it can be merged. + // However, if the instruction is an LDR/STR<S,D,Q,W,X>pre, it can be merged. // For example: // ldr q0, [x11, #32]! // ldr q1, [x11, #16] @@ -3137,7 +3134,6 @@ int AArch64InstrInfo::getMemScale(unsigned Opc) { case AArch64::LDRSpre: case AArch64::LDRSWui: case AArch64::LDURSWi: - case AArch64::LDRSWpre: case AArch64::LDRWpre: case AArch64::LDRWui: case AArch64::LDURWi: @@ -3193,7 +3189,6 @@ bool AArch64InstrInfo::isPreLd(const MachineInstr &MI) { return false; case AArch64::LDRWpre: case AArch64::LDRXpre: - case AArch64::LDRSWpre: case AArch64::LDRSpre: case AArch64::LDRDpre: case AArch64::LDRQpre: @@ -5438,8 +5433,8 @@ static bool getFNEGPatterns(MachineInstr &Root, auto Match = [&](unsigned Opcode, MachineCombinerPattern Pattern) -> bool { MachineOperand &MO = Root.getOperand(1); MachineInstr *MI = MRI.getUniqueVRegDef(MO.getReg()); - if (MI != nullptr && MRI.hasOneNonDBGUse(MI->getOperand(0).getReg()) && - (MI->getOpcode() == Opcode) && + if (MI != nullptr && (MI->getOpcode() == Opcode) && + MRI.hasOneNonDBGUse(MI->getOperand(0).getReg()) && Root.getFlag(MachineInstr::MIFlag::FmContract) && Root.getFlag(MachineInstr::MIFlag::FmNsz) && MI->getFlag(MachineInstr::MIFlag::FmContract) && |