https://gcc.gnu.org/g:ebef2cea73f63e836c2a818e5fc0bb3dd03161e2

commit ebef2cea73f63e836c2a818e5fc0bb3dd03161e2
Author: Michael Meissner <meiss...@linux.ibm.com>
Date:   Sat Jun 22 04:47:51 2024 -0400

    Delete -mlrspr, -mintspr, -mfpspr
    
    2024-06-21  Michael Meissner  <meiss...@linux.ibm.com>
    
            * config/rs6000/rs6000.cc (rs6000_hard_regno_mode_ok_uncached): 
Delete
            -mlrspr, -mintspr, and -mfpspr.
            (rs6000_debug_reg_global): Likewise.
            * config/rs6000/rs6000.opt (-mlrspr): Delete.
            (-mintspr): Likewise.
            (-mfpspr): Likewise.

Diff:
---
 gcc/config/rs6000/rs6000.cc  | 26 +++++++++++---------------
 gcc/config/rs6000/rs6000.opt | 12 ------------
 2 files changed, 11 insertions(+), 27 deletions(-)

diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc
index ca551451060..d96adf12c5d 100644
--- a/gcc/config/rs6000/rs6000.cc
+++ b/gcc/config/rs6000/rs6000.cc
@@ -1949,10 +1949,6 @@ rs6000_hard_regno_mode_ok_uncached (int regno, 
machine_mode mode)
       return (!orig_complex_p && mode == SImode);
 
     case LR_REGNO:
-      if (!TARGET_LRSPR)
-       return (!orig_complex_p && mode == Pmode);
-      /* fall through.  */
-
     case CTR_REGNO:
     case TAR_REGNO:
       if (orig_complex_p)
@@ -1964,22 +1960,22 @@ rs6000_hard_regno_mode_ok_uncached (int regno, 
machine_mode mode)
       switch (mode)
        {
        case E_QImode:
-         return (TARGET_QISPR || TARGET_INTSPR);
+         return TARGET_QISPR != 0;
 
        case E_HImode:
-         return (TARGET_HISPR || TARGET_INTSPR);
+         return TARGET_HISPR != 0;
 
        case E_SImode:
-         return (TARGET_SISPR || TARGET_INTSPR || !TARGET_POWERPC64);
+         return TARGET_SISPR || !TARGET_POWERPC64;
 
        case E_DImode:
-         return TARGET_POWERPC64;
+         return TARGET_POWERPC64 != 0;
 
        case E_SFmode:
-         return (TARGET_SFSPR || TARGET_FPSPR);
+         return TARGET_SFSPR != 0;
 
        case E_DFmode:
-         return ((TARGET_DFSPR || TARGET_FPSPR) && TARGET_POWERPC64);
+         return TARGET_DFSPR && TARGET_POWERPC64;
 
        default:
          break;
@@ -2654,22 +2650,22 @@ rs6000_debug_reg_global (void)
           TARGET_CCSPR ? "yes" : "no");
 
   fprintf (stderr, DEBUG_FMT_S, "QImode in SPR",
-          (TARGET_QISPR || TARGET_INTSPR) ? "yes" : "no");
+          TARGET_QISPR ? "yes" : "no");
 
   fprintf (stderr, DEBUG_FMT_S, "HImode in SPR",
-          TARGET_HISPR || TARGET_INTSPR ? "yes" : "no");
+          TARGET_HISPR ? "yes" : "no");
 
   fprintf (stderr, DEBUG_FMT_S, "SImode in SPR",
-          TARGET_SISPR || TARGET_INTSPR || !TARGET_POWERPC64 ? "yes" : "no");
+          TARGET_SISPR || !TARGET_POWERPC64 ? "yes" : "no");
 
   fprintf (stderr, DEBUG_FMT_S, "DImode in SPR",
           TARGET_POWERPC64 ? "yes" : "no");
 
   fprintf (stderr, DEBUG_FMT_S, "SFmode in SPR",
-          TARGET_SFSPR || TARGET_FPSPR ? "yes" : "no");
+          TARGET_SFSPR ? "yes" : "no");
 
   fprintf (stderr, DEBUG_FMT_S, "DFmode in SPR",
-          TARGET_DFSPR || TARGET_FPSPR ? "yes" : "no");
+          TARGET_DFSPR ? "yes" : "no");
 }
 
 
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
index b4b6dc8fa9c..27f873972b5 100644
--- a/gcc/config/rs6000/rs6000.opt
+++ b/gcc/config/rs6000/rs6000.opt
@@ -650,10 +650,6 @@ msispr
 Target Undocumented Var(TARGET_SISPR) Init(1)
 Allow (do not allow) 32-bit integers to be in the CTR or TAR registers.
 
-mintspr
-Target Undocumented Var(TARGET_INTSPR) Init(0)
-Allow (do not allow) small integers to be in the CTR or TAR registers.
-
 msfspr
 Target Undocumented Var(TARGET_SFSPR) Init(0)
 Allow (do not allow) 32-bit floating point to be in the CTR or TAR registers.
@@ -662,14 +658,6 @@ mdfspr
 Target Undocumented Var(TARGET_DFSPR) Init(0)
 Allow (do not allow) 64-bit floating point to be in the CTR or TAR registers.
 
-mfpspr
-Target Undocumented Var(TARGET_FPSPR) Init(0)
-Allow (do not allow) floating point values to be in the CTR or TAR registers.
-
-mlrspr
-Target Undocumented Var(TARGET_LRSPR) Init(1)
-Treat (do not treat) the LR register like CTR/TAR in terms of what modes it 
can hold.
-
 ; Documented parameters
 
 -param=rs6000-vect-unroll-limit=

Reply via email to