https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115739

Kewen Lin <linkw at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ebotcazou at gcc dot gnu.org

--- Comment #2 from Kewen Lin <linkw at gcc dot gnu.org> ---
The commit dropped the define of SPARC_LONG_DOUBLE_TYPE_SIZE in sparc.cc and we
don't have a default one in sparc.h:

  /* SPARC_LONG_DOUBLE_TYPE_SIZE is defined per OS even though the
     SPARC ABI says that it is 128-bit wide.  LONG_DOUBLE_TYPE_SIZE
     get poisoned, so add SPARC_ prefix.  */
  /* #define SPARC_LONG_DOUBLE_TYPE_SIZE  128 */

Although we can bring back the define to sparc.cc, but per the above comments,
I think we want to define it in vxworks.h:

diff --git a/gcc/config/sparc/vxworks.h b/gcc/config/sparc/vxworks.h
index c1a9310fb3f..4cdb3b1685d 100644
--- a/gcc/config/sparc/vxworks.h
+++ b/gcc/config/sparc/vxworks.h
@@ -62,3 +62,7 @@ along with GCC; see the file COPYING3.  If not see
 /* This platform supports the probing method of stack checking (RTP mode).
    8K is reserved in the stack to propagate exceptions in case of overflow. 
*/
 #define STACK_CHECK_PROTECT 8192
+
+/* SPARC_LONG_DOUBLE_TYPE_SIZE should be defined per OS.  */
+#undef SPARC_LONG_DOUBLE_TYPE_SIZE
+#define SPARC_LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)

Built well with the above fix.

Reply via email to