aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid S. Miller <davem@pierdol.cobaltmicro.com>1998-08-19 08:14:26 +0000
committerDavid S. Miller <davem@gcc.gnu.org>1998-08-19 01:14:26 -0700
commit24a43d7b431866afc13b95bd9ce00889bfb874c5 (patch)
treee6cc441eb480b57f9b9d94d237aff821849de59a
parent839603a8220ab276a69f090a487570f207c66db8 (diff)
downloadgcc-24a43d7b431866afc13b95bd9ce00889bfb874c5.zip
gcc-24a43d7b431866afc13b95bd9ce00889bfb874c5.tar.gz
gcc-24a43d7b431866afc13b95bd9ce00889bfb874c5.tar.bz2
sparc.c (finalize_pic): Check for the correct nonlocal_goto_receiver UNSPEC number.
* config/sparc/sparc.c (finalize_pic): Check for the correct nonlocal_goto_receiver UNSPEC number. * config/sparc/sparc.md (nonlocal_goto_receiver): Add comment making note of this dependency existing in sparc.c From-SVN: r21842
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/sparc/sparc.c7
-rw-r--r--gcc/config/sparc/sparc.md1
3 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d8c9d06..9309247 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+Wed Aug 19 07:08:15 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.c (finalize_pic): Check for the correct
+ nonlocal_goto_receiver UNSPEC number.
+ * config/sparc/sparc.md (nonlocal_goto_receiver): Add comment
+ making note of this dependency existing in sparc.c
+
Tue Aug 18 12:40:27 1998 Richard Henderson <rth@cygnus.com>
* c-common.c (decl_attributes): Issue an error if the argument
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index dd75d7f..31c7a49 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -2492,10 +2492,13 @@ finalize_pic ()
emit_insn_after (pic_setup_code (), get_insns ());
- /* Insert the code in each nonlocal goto receiver. */
+ /* Insert the code in each nonlocal goto receiver.
+ If you make changes here or to the nonlocal_goto_receiver
+ pattern, make sure the unspec_volatile numbers still
+ match. */
for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
if (GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == UNSPEC_VOLATILE
- && XINT (PATTERN (insn), 1) == 4)
+ && XINT (PATTERN (insn), 1) == 5)
emit_insn_after (pic_setup_code (), insn);
flag_pic = orig_flag_pic;
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index c4c8003..37c93d4 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -7791,6 +7791,7 @@
;; if we need it. So do nothing much here, but we'll check for this in
;; finalize_pic.
+;; Make sure this unspec_volatile number agrees with finalize_pic.
(define_insn "nonlocal_goto_receiver"
[(unspec_volatile [(const_int 0)] 5)]
"flag_pic"