Fix PR target/102588
authorEric Botcazou <ebotcazou@adacore.com>
Tue, 12 Oct 2021 09:20:42 +0000 (11:20 +0200)
committerEric Botcazou <ebotcazou@adacore.com>
Tue, 12 Oct 2021 09:20:42 +0000 (11:20 +0200)
We need a 32-byte wide integer mode (OImode) in order to handle structure
returns in the 64-bit ABI.

gcc/
PR target/102588
* config/sparc/sparc-modes.def (OI): New integer mode.

gcc/config/sparc/sparc-modes.def

index 5cc4743..057c093 100644 (file)
@@ -23,6 +23,9 @@ along with GCC; see the file COPYING3.  If not see
 /* 128-bit floating point */
 FLOAT_MODE (TF, 16, ieee_quad_format);
 
+/* We need a 32-byte mode to return structures in the 64-bit ABI.  */
+INT_MODE (OI, 32);
+
 /* Add any extra modes needed to represent the condition code.
 
    We have a CCNZ mode which is used for implicit comparisons with zero when