aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.md11
2 files changed, 15 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4d90dfe..8307e52 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-01-03 Anthony Green <green@cygnus.com>
+
+ * config/i386/i386.md (builtin_setjmp_receiver): New pattern.
+ Restore the pic register if required.
+
2000-01-03 Ulrich Drepper <drepper@cygnus.com>
* c-common.c (format_char_info): Update comment.
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index bd2304f..4fc2bff 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -1,5 +1,5 @@
;; GCC machine description for IA-32.
-;; Copyright (C) 1988, 94-98, 1999 Free Software Foundation, Inc.
+;; Copyright (C) 1988, 94-99, 2000 Free Software Foundation, Inc.
;; Mostly by William Schelter.
;;
;; This file is part of GNU CC.
@@ -8335,6 +8335,15 @@
load_pic_register ();
DONE;
}")
+
+(define_expand "builtin_setjmp_receiver"
+ [(label_ref (match_operand 0 "" ""))]
+ "flag_pic"
+ "
+{
+ load_pic_register ();
+ DONE;
+}")
;; Avoid redundant prefixes by splitting HImode arithmetic to SImode.