From 9795d9fd7a80977d03a81e17f5d980e3b69f84d1 Mon Sep 17 00:00:00 2001
From: Andrew Pinski <pinskia@physics.uc.edu>
Date: Thu, 19 Jan 2006 17:28:53 +0000
Subject: [PATCH] re PR target/22099 (builtin_setjmp gives duplicate labels)

2006-01-19  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/22099
        * config/i386/i386.md (builtin_setjmp_receiver): Don't emit the label.
        * config/i386/i386.c (output_set_got): Output the label if we have one
        for the TARGET_DEEP_BRANCH_PREDICTION case.

From-SVN: r109974
---
 gcc/ChangeLog           | 7 +++++++
 gcc/config/i386/i386.c  | 3 +++
 gcc/config/i386/i386.md | 1 -
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dfd029051392..927251a579b9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2006-01-19  Andrew Pinski  <pinskia@physics.uc.edu>
+
+	PR target/22099
+	* config/i386/i386.md (builtin_setjmp_receiver): Don't emit the label.
+	* config/i386/i386.c (output_set_got): Output the label if we have one
+	for the TARGET_DEEP_BRANCH_PREDICTION case.
+
 2006-01-19  Jan Hubicka  <jh@suse.cz>
             H.J. Lu  <hongjiu.lu@intel.com>
 	    Evandro Menezes <evandro.menezes@amd.com>
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 107545ec1855..0b5277b36288 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -4752,6 +4752,9 @@ output_set_got (rtx dest, rtx label ATTRIBUTE_UNUSED)
 #if TARGET_MACHO
       if (!label)
 	ASM_OUTPUT_LABEL (asm_out_file, machopic_function_base_name ());
+      else
+        targetm.asm_out.internal_label (asm_out_file, "L",
+					   CODE_LABEL_NUMBER (label));
 #endif
     }
 
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 40fc24496a6b..0b1d153af38c 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -18987,7 +18987,6 @@
       rtx picreg = gen_rtx_REG (Pmode, PIC_OFFSET_TABLE_REGNUM);
       rtx label_rtx = gen_label_rtx ();
       emit_insn (gen_set_got_labelled (pic_offset_table_rtx, label_rtx));
-      emit_label (label_rtx);
       xops[0] = xops[1] = picreg;
       xops[2] = gen_rtx_CONST (SImode,
 	          gen_rtx_MINUS (SImode,
-- 
GitLab