aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKewen Lin <linkw@linux.ibm.com>2024-07-02 03:58:06 -0500
committerKewen Lin <linkw@gcc.gnu.org>2024-07-02 03:58:06 -0500
commit39e679e25deca32e73870f7f7a9c4f2c108d4a5e (patch)
treeca9ba9db764ecff22b585160b59573842d8013dc /gcc
parent90c8782615e5fadb566ed4fbe4e08af9ea3d2d2d (diff)
downloadgcc-39e679e25deca32e73870f7f7a9c4f2c108d4a5e.zip
gcc-39e679e25deca32e73870f7f7a9c4f2c108d4a5e.tar.gz
gcc-39e679e25deca32e73870f7f7a9c4f2c108d4a5e.tar.bz2
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.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/sparc/vxworks.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/config/sparc/vxworks.h b/gcc/config/sparc/vxworks.h
index c1a9310..4cdb3b1 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)