[PATCH] D43982: [GlobalISel][ARM] Adding HPR and QPR regclasses to FPRB regbank

Roman Tereshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 22 20:05:53 PDT 2018


This revision was automatically updated to reflect the committed changes.
Closed by commit rL333056: [GlobalISel][ARM] Adding HPR and QPR regclasses to FPRB regbank (authored by rtereshin, committed by ).

Changed prior to commit:
  https://reviews.llvm.org/D43982?vs=147236&id=148150#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D43982

Files:
  llvm/trunk/lib/Target/ARM/ARMInstructionSelector.cpp
  llvm/trunk/lib/Target/ARM/ARMRegisterBankInfo.cpp
  llvm/trunk/lib/Target/ARM/ARMRegisterBanks.td


Index: llvm/trunk/lib/Target/ARM/ARMInstructionSelector.cpp
===================================================================
--- llvm/trunk/lib/Target/ARM/ARMInstructionSelector.cpp
+++ llvm/trunk/lib/Target/ARM/ARMInstructionSelector.cpp
@@ -134,6 +134,8 @@
       return &ARM::SPRRegClass;
     else if (Size == 64)
       return &ARM::DPRRegClass;
+    else if (Size == 128)
+      return &ARM::QPRRegClass;
     else
       llvm_unreachable("Unsupported destination size");
   }
Index: llvm/trunk/lib/Target/ARM/ARMRegisterBankInfo.cpp
===================================================================
--- llvm/trunk/lib/Target/ARM/ARMRegisterBankInfo.cpp
+++ llvm/trunk/lib/Target/ARM/ARMRegisterBankInfo.cpp
@@ -175,15 +175,20 @@
 
   switch (RC.getID()) {
   case GPRRegClassID:
+  case GPRwithAPSRRegClassID:
   case GPRnopcRegClassID:
+  case rGPRRegClassID:
   case GPRspRegClassID:
   case tGPR_and_tcGPRRegClassID:
+  case tcGPRRegClassID:
   case tGPRRegClassID:
     return getRegBank(ARM::GPRRegBankID);
+  case HPRRegClassID:
   case SPR_8RegClassID:
   case SPRRegClassID:
   case DPR_8RegClassID:
   case DPRRegClassID:
+  case QPRRegClassID:
     return getRegBank(ARM::FPRRegBankID);
   default:
     llvm_unreachable("Unsupported register kind");
Index: llvm/trunk/lib/Target/ARM/ARMRegisterBanks.td
===================================================================
--- llvm/trunk/lib/Target/ARM/ARMRegisterBanks.td
+++ llvm/trunk/lib/Target/ARM/ARMRegisterBanks.td
@@ -11,4 +11,4 @@
 //===----------------------------------------------------------------------===//
 
 def GPRRegBank : RegisterBank<"GPRB", [GPR, GPRwithAPSR]>;
-def FPRRegBank : RegisterBank<"FPRB", [SPR, DPR]>;
+def FPRRegBank : RegisterBank<"FPRB", [HPR, SPR, DPR, QPR]>;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D43982.148150.patch
Type: text/x-patch
Size: 1770 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180523/d9ece0f7/attachment-0001.bin>


More information about the llvm-commits mailing list