https://gcc.gnu.org/g:2eb1dff8b34a8a7da02b988878172d1b8f203d96

commit r15-704-g2eb1dff8b34a8a7da02b988878172d1b8f203d96
Author: Kewen Lin <li...@linux.ibm.com>
Date:   Mon May 20 21:01:06 2024 -0500

    rs6000: Clean up TF and TD check with FLOAT128_2REG_P
    
    Commit r6-2116-g2c83faf86827bf did some clean up on TFmode
    and TFmode check with FLOAT128_2REG_P, but it missed to
    update an assertion, this patch is to make it align.
    
    btw, it's noticed when I'm making a patch to get rid of
    TFmode.
    
    gcc/ChangeLog:
    
            * config/rs6000/rs6000-call.cc (rs6000_darwin64_record_arg_recurse):
            Clean up TFmode and TDmode check with FLOAT128_2REG_P.

Diff:
---
 gcc/config/rs6000/rs6000-call.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/rs6000/rs6000-call.cc b/gcc/config/rs6000/rs6000-call.cc
index 1f8f93a2ee78..a039ff75f3c9 100644
--- a/gcc/config/rs6000/rs6000-call.cc
+++ b/gcc/config/rs6000/rs6000-call.cc
@@ -1391,7 +1391,7 @@ rs6000_darwin64_record_arg_recurse (CUMULATIVE_ARGS *cum, 
const_tree type,
            if (cum->fregno + n_fpreg > FP_ARG_MAX_REG + 1)
              {
                gcc_assert (cum->fregno == FP_ARG_MAX_REG
-                           && (mode == TFmode || mode == TDmode));
+                           && FLOAT128_2REG_P (mode));
                /* Long double or _Decimal128 split over regs and memory.  */
                mode = DECIMAL_FLOAT_MODE_P (mode) ? DDmode : DFmode;
                cum->use_stack=1;

Reply via email to