aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2008-12-02 12:51:10 +0000
committerBen Elliston <bje@gcc.gnu.org>2008-12-02 23:51:10 +1100
commit96e4a79fbd9ee3c390c77bc2bff69a783ee13ff2 (patch)
tree885e21551ef9dfa5579cb5fec9c05d49cd69f564
parent726d8566c19edbbf347cac9dd93fd263a7fd8ce4 (diff)
downloadgcc-96e4a79fbd9ee3c390c77bc2bff69a783ee13ff2.zip
gcc-96e4a79fbd9ee3c390c77bc2bff69a783ee13ff2.tar.gz
gcc-96e4a79fbd9ee3c390c77bc2bff69a783ee13ff2.tar.bz2
float_disf.c (__floatdisf): Prototype.
* config/spu/float_disf.c (__floatdisf): Prototype. * config/spu/float_unsdisf.c (__float_undisf): Likewise. * config/spu/float_unssidf.c (__float_unssidf): Constify cast. * config/spu/float_unsdidf.c (__float_unsdidf): Likewise. From-SVN: r142352
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/spu/float_disf.c3
-rw-r--r--gcc/config/spu/float_unsdidf.c4
-rw-r--r--gcc/config/spu/float_unsdisf.c3
-rw-r--r--gcc/config/spu/float_unssidf.c2
5 files changed, 16 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 56cfc1b..b4979f3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2008-12-02 Ben Elliston <bje@au.ibm.com>
+
+ * config/spu/float_disf.c (__floatdisf): Prototype.
+ * config/spu/float_unsdisf.c (__float_undisf): Likewise.
+ * config/spu/float_unssidf.c (__float_unssidf): Constify cast.
+ * config/spu/float_unsdidf.c (__float_unsdidf): Likewise.
+
2008-12-02 DJ Delorie <dj@redhat.com>
* config/stormy16/stormy16.h (INCOMING_FRAME_SP_OFFSET): Negate.
diff --git a/gcc/config/spu/float_disf.c b/gcc/config/spu/float_disf.c
index d8f3eb4..a298c49 100644
--- a/gcc/config/spu/float_disf.c
+++ b/gcc/config/spu/float_disf.c
@@ -21,6 +21,9 @@
however invalidate any other reasons why the executable file might be covered
by the GNU General Public License. */
+/* Prototype. */
+float __floatdisf (long long x);
+
float __floatdisf (long long x)
{
/* The SPU back-end now generates inline code for this conversion.
diff --git a/gcc/config/spu/float_unsdidf.c b/gcc/config/spu/float_unsdidf.c
index 9b30949..41a08b0 100644
--- a/gcc/config/spu/float_unsdidf.c
+++ b/gcc/config/spu/float_unsdidf.c
@@ -46,10 +46,10 @@ __float_unsdidf (qword DI)
t0 = si_clz (DI);
t1 = si_shl (DI, t0);
t2 = si_ceqi (t0, 32);
- t3 = si_sf (t0, *(qword *) __didf_scale);
+ t3 = si_sf (t0, *(const qword *) __didf_scale);
t4 = si_a (t1, t1);
t5 = si_andc (t3, t2);
- t6 = si_shufb (t5, t4, *(qword *) __didf_pat);
+ t6 = si_shufb (t5, t4, *(const qword *) __didf_pat);
t7 = si_shlqbii (t6, 4);
t8 = si_shlqbyi (t7, 8);
return si_dfa (t7, t8);
diff --git a/gcc/config/spu/float_unsdisf.c b/gcc/config/spu/float_unsdisf.c
index 0f16b96..ca570ac 100644
--- a/gcc/config/spu/float_unsdisf.c
+++ b/gcc/config/spu/float_unsdisf.c
@@ -21,6 +21,9 @@
however invalidate any other reasons why the executable file might be covered
by the GNU General Public License. */
+/* Prototype. */
+float __floatundisf (unsigned long long x);
+
float __floatundisf (unsigned long long x)
{
/* The SPU back-end now generates inline code for this conversion.
diff --git a/gcc/config/spu/float_unssidf.c b/gcc/config/spu/float_unssidf.c
index 63d475b..4bdb598 100644
--- a/gcc/config/spu/float_unssidf.c
+++ b/gcc/config/spu/float_unssidf.c
@@ -42,6 +42,6 @@ __float_unssidf (qword SI)
t4 = si_sf (t0, t1);
t5 = si_a (t2, t2);
t6 = si_andc (t4, t3);
- t7 = si_shufb (t6, t5, *(qword *)__sidf_pat);
+ t7 = si_shufb (t6, t5, *(const qword *) __sidf_pat);
return si_shlqbii (t7, 4);
}