[llvm] [AArch64] Tidy up getMemOpInfo cases where Width == Scale (NFC) (PR #201153)
Benjamin Maxwell via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 2 09:49:51 PDT 2026
https://github.com/MacDue created https://github.com/llvm/llvm-project/pull/201153
None
>From ffe3b43939d6cb8c226e7be1fd0b4fad630aa650 Mon Sep 17 00:00:00 2001
From: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: Tue, 2 Jun 2026 16:46:15 +0000
Subject: [PATCH] [AArch64] Tidy up getMemOpInfo cases where Width == Scale
(NFC)
---
llvm/lib/Target/AArch64/AArch64InstrInfo.cpp | 69 +++++++-------------
1 file changed, 23 insertions(+), 46 deletions(-)
diff --git a/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp b/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
index 63cdaa9c44850..0624764cb8abd 100644
--- a/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
+++ b/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
@@ -4588,15 +4588,13 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
switch (Opcode) {
// Not a memory operation or something we want to handle.
default:
- Scale = TypeSize::getFixed(0);
- Width = TypeSize::getFixed(0);
+ Scale = Width = TypeSize::getFixed(0);
MinOffset = MaxOffset = 0;
return false;
// LDR / STR
case AArch64::LDRQui:
case AArch64::STRQui:
- Scale = TypeSize::getFixed(16);
- Width = TypeSize::getFixed(16);
+ Scale = Width = TypeSize::getFixed(16);
MinOffset = 0;
MaxOffset = 4095;
break;
@@ -4605,8 +4603,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::STRXui:
case AArch64::STRDui:
case AArch64::PRFMui:
- Scale = TypeSize::getFixed(8);
- Width = TypeSize::getFixed(8);
+ Scale = Width = TypeSize::getFixed(8);
MinOffset = 0;
MaxOffset = 4095;
break;
@@ -4615,8 +4612,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDRSWui:
case AArch64::STRWui:
case AArch64::STRSui:
- Scale = TypeSize::getFixed(4);
- Width = TypeSize::getFixed(4);
+ Scale = Width = TypeSize::getFixed(4);
MinOffset = 0;
MaxOffset = 4095;
break;
@@ -4626,8 +4622,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDRSHXui:
case AArch64::STRHui:
case AArch64::STRHHui:
- Scale = TypeSize::getFixed(2);
- Width = TypeSize::getFixed(2);
+ Scale = Width = TypeSize::getFixed(2);
MinOffset = 0;
MaxOffset = 4095;
break;
@@ -4637,8 +4632,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDRSBXui:
case AArch64::STRBui:
case AArch64::STRBBui:
- Scale = TypeSize::getFixed(1);
- Width = TypeSize::getFixed(1);
+ Scale = Width = TypeSize::getFixed(1);
MinOffset = 0;
MaxOffset = 4095;
break;
@@ -4697,8 +4691,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDRBBpre:
case AArch64::STRBBpost:
case AArch64::STRBBpre:
- Scale = TypeSize::getFixed(1);
- Width = TypeSize::getFixed(1);
+ Scale = Width = TypeSize::getFixed(1);
MinOffset = -256;
MaxOffset = 255;
break;
@@ -4760,8 +4753,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::STURBi:
case AArch64::STURBBi:
case AArch64::STLURBi:
- Scale = TypeSize::getFixed(1);
- Width = TypeSize::getFixed(1);
+ Scale = Width = TypeSize::getFixed(1);
MinOffset = -256;
MaxOffset = 255;
break;
@@ -4849,8 +4841,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::STZGi:
case AArch64::STZGPreIndex:
case AArch64::STZGPostIndex:
- Scale = TypeSize::getFixed(16);
- Width = TypeSize::getFixed(16);
+ Scale = Width = TypeSize::getFixed(16);
MinOffset = -256;
MaxOffset = 255;
break;
@@ -4882,8 +4873,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
break;
case AArch64::LDR_PXI:
case AArch64::STR_PXI:
- Scale = TypeSize::getScalable(2);
- Width = TypeSize::getScalable(2);
+ Scale = Width = TypeSize::getScalable(2);
MinOffset = -256;
MaxOffset = 255;
break;
@@ -4896,8 +4886,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
break;
case AArch64::LDR_ZXI:
case AArch64::STR_ZXI:
- Scale = TypeSize::getScalable(16);
- Width = TypeSize::getScalable(16);
+ Scale = Width = TypeSize::getScalable(16);
MinOffset = -256;
MaxOffset = 255;
break;
@@ -4923,8 +4912,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDNF1D_IMM:
// A full vectors worth of data
// Width = mbytes * elements
- Scale = TypeSize::getScalable(16);
- Width = TypeSize::getScalable(16);
+ Scale = Width = TypeSize::getScalable(16);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -4976,8 +4964,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::STNT1W_2Z_STRIDED_IMM:
case AArch64::STNT1D_2Z_IMM:
case AArch64::STNT1D_2Z_STRIDED_IMM:
- Scale = TypeSize::getScalable(32);
- Width = TypeSize::getScalable(16 * 2);
+ Scale = Width = TypeSize::getScalable(16 * 2);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -4989,8 +4976,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::ST3H_IMM:
case AArch64::ST3W_IMM:
case AArch64::ST3D_IMM:
- Scale = TypeSize::getScalable(48);
- Width = TypeSize::getScalable(16 * 3);
+ Scale = Width = TypeSize::getScalable(16 * 3);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -5042,8 +5028,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::STNT1W_4Z_STRIDED_IMM:
case AArch64::STNT1D_4Z_IMM:
case AArch64::STNT1D_4Z_STRIDED_IMM:
- Scale = TypeSize::getScalable(64);
- Width = TypeSize::getScalable(16 * 4);
+ Scale = Width = TypeSize::getScalable(16 * 4);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -5064,8 +5049,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDNF1SW_D_IMM:
// A half vector worth of data
// Width = mbytes * elements
- Scale = TypeSize::getScalable(8);
- Width = TypeSize::getScalable(8);
+ Scale = Width = TypeSize::getScalable(8);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -5081,8 +5065,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDNF1SH_D_IMM:
// A quarter vector worth of data
// Width = mbytes * elements
- Scale = TypeSize::getScalable(4);
- Width = TypeSize::getScalable(4);
+ Scale = Width = TypeSize::getScalable(4);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -5093,8 +5076,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LDNF1SB_D_IMM:
// A eighth vector worth of data
// Width = mbytes * elements
- Scale = TypeSize::getScalable(2);
- Width = TypeSize::getScalable(2);
+ Scale = Width = TypeSize::getScalable(2);
MinOffset = -8;
MaxOffset = 7;
break;
@@ -5112,8 +5094,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::STGPi:
case AArch64::STGPpost:
case AArch64::STGPpre:
- Scale = TypeSize::getFixed(16);
- Width = TypeSize::getFixed(16);
+ Scale = Width = TypeSize::getFixed(16);
MinOffset = -64;
MaxOffset = 63;
break;
@@ -5124,8 +5105,7 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LD1RSB_H_IMM:
case AArch64::LD1RSB_S_IMM:
case AArch64::LD1RSB_D_IMM:
- Scale = TypeSize::getFixed(1);
- Width = TypeSize::getFixed(1);
+ Scale = Width = TypeSize::getFixed(1);
MinOffset = 0;
MaxOffset = 63;
break;
@@ -5134,22 +5114,19 @@ bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale,
case AArch64::LD1RH_D_IMM:
case AArch64::LD1RSH_S_IMM:
case AArch64::LD1RSH_D_IMM:
- Scale = TypeSize::getFixed(2);
- Width = TypeSize::getFixed(2);
+ Scale = Width = TypeSize::getFixed(2);
MinOffset = 0;
MaxOffset = 63;
break;
case AArch64::LD1RW_IMM:
case AArch64::LD1RW_D_IMM:
case AArch64::LD1RSW_IMM:
- Scale = TypeSize::getFixed(4);
- Width = TypeSize::getFixed(4);
+ Scale = Width = TypeSize::getFixed(4);
MinOffset = 0;
MaxOffset = 63;
break;
case AArch64::LD1RD_IMM:
- Scale = TypeSize::getFixed(8);
- Width = TypeSize::getFixed(8);
+ Scale = Width = TypeSize::getFixed(8);
MinOffset = 0;
MaxOffset = 63;
break;
More information about the llvm-commits
mailing list