aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Law <law@gcc.gnu.org>1999-05-23 13:37:42 -0600
committerJeff Law <law@gcc.gnu.org>1999-05-23 13:37:42 -0600
commita366a40a7effd50925bca3f0254782084cde015c (patch)
treeae6717c3524afb167f389ccae9d90bea6d0237f4
parent1ba5d5ce7a2b44c554fcaec7352d12760a640d90 (diff)
downloadgcc-a366a40a7effd50925bca3f0254782084cde015c.zip
gcc-a366a40a7effd50925bca3f0254782084cde015c.tar.gz
gcc-a366a40a7effd50925bca3f0254782084cde015c.tar.bz2
[multiple changes]
Sun May 23 20:31:16 1999 Jeffrey A Law (law@cygnus.com) * loop.c (strength_reduce): Grow reg_single_usage as needed. Sun May 23 10:13:20 1999 David O'Brien <obrien@FreeBSD.org> * i386/freebsd-elf.h (LINK_SPEC): Change -static to -Bstatic. Also remove a useless comment. Sun May 23 10:05:23 1999 Jerry Quinn <jquinn@nortelnetworks.com> * pa.md (negdf2,negsf2): Use fneg instead of fsub on pa 2.0. From-SVN: r27111
-rw-r--r--gcc/ChangeLog13
-rw-r--r--gcc/config/i386/freebsd-elf.h4
-rw-r--r--gcc/config/pa/pa.md16
-rw-r--r--gcc/loop.c1
4 files changed, 29 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cbad49b..ac3e2d7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,16 @@
+Sun May 23 20:31:16 1999 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (strength_reduce): Grow reg_single_usage as needed.
+
+Sun May 23 10:13:20 1999 David O'Brien <obrien@FreeBSD.org>
+
+ * i386/freebsd-elf.h (LINK_SPEC): Change -static to -Bstatic.
+ Also remove a useless comment.
+
+Sun May 23 10:05:23 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * pa.md (negdf2,negsf2): Use fneg instead of fsub on pa 2.0.
+
Sat May 22 21:02:06 1999 David Edelsohn <edelsohn@gnu.org>
* collect2.c (main): Only generate import or export file and add
diff --git a/gcc/config/i386/freebsd-elf.h b/gcc/config/i386/freebsd-elf.h
index 988f6a9..35ea674 100644
--- a/gcc/config/i386/freebsd-elf.h
+++ b/gcc/config/i386/freebsd-elf.h
@@ -187,9 +187,7 @@ Boston, MA 02111-1307, USA. */
%{!static: \
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
- %{static:-static}}}"
-
-/* Get perform_* macros to build libgcc.a. */
+ %{static:-Bstatic}}}"
/* A C statement to output to the stdio stream FILE an assembler
command to advance the location counter to a multiple of 1<<LOG
diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md
index 09294c4..05a1b97 100644
--- a/gcc/config/pa/pa.md
+++ b/gcc/config/pa/pa.md
@@ -3600,7 +3600,13 @@
[(set (match_operand:DF 0 "register_operand" "=f")
(neg:DF (match_operand:DF 1 "register_operand" "f")))]
"! TARGET_SOFT_FLOAT"
- "fsub,dbl %%fr0,%1,%0"
+ "*
+{
+ if (TARGET_PA_20)
+ return \"fneg,dbl %1,%0\";
+ else
+ return \"fsub,dbl %%fr0,%1,%0\";
+}"
[(set_attr "type" "fpalu")
(set_attr "length" "4")])
@@ -3608,7 +3614,13 @@
[(set (match_operand:SF 0 "register_operand" "=f")
(neg:SF (match_operand:SF 1 "register_operand" "f")))]
"! TARGET_SOFT_FLOAT"
- "fsub,sgl %%fr0,%1,%0"
+ "*
+{
+ if (TARGET_PA_20)
+ return \"fneg,sgl %1,%0\";
+ else
+ return \"fsub,sgl %%fr0,%1,%0\";
+}"
[(set_attr "type" "fpalu")
(set_attr "length" "4")])
diff --git a/gcc/loop.c b/gcc/loop.c
index 192461a..244d939 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -4198,6 +4198,7 @@ strength_reduce (scan_start, end, loop_top, insn_count,
VARRAY_GROW (set_in_loop, nregs);
VARRAY_GROW (n_times_set, nregs);
VARRAY_GROW (may_not_optimize, nregs);
+ VARRAY_GROW (reg_single_usage, nregs);
}
if (! validate_change (next->insn, next->location, add_val, 0))