https://gcc.gnu.org/g:39e679e25deca32e73870f7f7a9c4f2c108d4a5e

commit r15-1766-g39e679e25deca32e73870f7f7a9c4f2c108d4a5e
Author: Kewen Lin <li...@linux.ibm.com>
Date:   Tue Jul 2 03:58:06 2024 -0500

    sparc: define SPARC_LONG_DOUBLE_TYPE_SIZE for vxworks [PR115739]
    
    Commit r15-1594 removed define of LONG_DOUBLE_TYPE_SIZE in
    sparc.cc, it's based on the assumption that each OS has its
    own define (see the comments in sparc.h), but it exposes an
    issue on vxworks which lacks of the define.
    
    We can bring back the default SPARC_LONG_DOUBLE_TYPE_SIZE to
    sparc.cc, but according to the comments in sparc.h, I think
    it's better to define this in vxworks.h.  btw, I also went
    through all the sparc supported triples, vxworks is the only
    one that misses this define.
    
            PR target/115739
    
    gcc/ChangeLog:
    
            * config/sparc/vxworks.h (SPARC_LONG_DOUBLE_TYPE_SIZE): New define.

Diff:
---
 gcc/config/sparc/vxworks.h | 4 ++++
 1 file changed, 4 insertions(+)

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)

Reply via email to