summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorcamthesaxman <cameronghall@cox.net>2017-10-26 00:28:13 -0500
committercamthesaxman <cameronghall@cox.net>2017-10-26 00:28:13 -0500
commitf49e7cbb33e6e27b0ce5eb35244d7241c800a7c1 (patch)
tree7f27a5795e25d2490dffee05502ef09320f5702f /gcc
parent928b1951972d7ff8c46347b3dce9e254cf6c215c (diff)
finally fix 64-bit
Diffstat (limited to 'gcc')
-rw-r--r--gcc/Makefile2
-rwxr-xr-xgcc/thumb.md8
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/Makefile b/gcc/Makefile
index 1e2c4ad..c30991a 100644
--- a/gcc/Makefile
+++ b/gcc/Makefile
@@ -24,7 +24,7 @@ VPATH = $(srcdir)
CC = gcc
-BASE_CFLAGS = -g -std=gnu11 -m32
+BASE_CFLAGS = -g -std=gnu11
INCLUDES = -I. -I$(srcdir)
diff --git a/gcc/thumb.md b/gcc/thumb.md
index 8cebc50..f78624f 100755
--- a/gcc/thumb.md
+++ b/gcc/thumb.md
@@ -1085,8 +1085,10 @@
{
case MODE_FLOAT:
{
+ int i;
union real_extract u;
- memcpy((char *)&u, (char *)&CONST_DOUBLE_LOW(operands[0]), sizeof u);
+ for (i = 0; i < sizeof (REAL_VALUE_TYPE) / sizeof (HOST_WIDE_INT); i++)
+ u.i[i] = XWINT(operands[0], 2 + i);
assemble_real (u.d, GET_MODE (operands[0]));
break;
}
@@ -1107,8 +1109,10 @@
{
case MODE_FLOAT:
{
+ int i;
union real_extract u;
- memcpy((char *)&u, (char *)&CONST_DOUBLE_LOW(operands[0]), sizeof u);
+ for (i = 0; i < sizeof (REAL_VALUE_TYPE) / sizeof (HOST_WIDE_INT); i++)
+ u.i[i] = XWINT(operands[0], 2 + i);
assemble_real (u.d, GET_MODE (operands[0]));
break;
}