[llvm] [CodeGen] Make LoadExtActions address-space aware (PR #162407)

Demetrius Kanios via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 5 11:50:00 PST 2025


================
@@ -1472,27 +1472,40 @@ class LLVM_ABI TargetLoweringBase {
   /// Return how this load with extension should be treated: either it is legal,
   /// needs to be promoted to a larger size, needs to be expanded to some other
   /// code sequence, or the target has a custom expander for it.
-  LegalizeAction getLoadExtAction(unsigned ExtType, EVT ValVT,
-                                  EVT MemVT) const {
-    if (ValVT.isExtended() || MemVT.isExtended()) return Expand;
-    unsigned ValI = (unsigned) ValVT.getSimpleVT().SimpleTy;
-    unsigned MemI = (unsigned) MemVT.getSimpleVT().SimpleTy;
+  LegalizeAction getLoadExtAction(unsigned ExtType, EVT ValVT, EVT MemVT,
+                                  unsigned AddrSpace) const {
----------------
QuantumSegfault wrote:

Fair point, Custom means "might be legal as is, might be not". Even so, with this setup, it's not possible to specify alternate actions, such as `Expand` based on address spaces. Do you have anything against what I described yesterday?
https://github.com/llvm/llvm-project/pull/162407#issuecomment-3614035261

https://github.com/llvm/llvm-project/pull/162407


More information about the llvm-commits mailing list