updated base/gcc33 (3.3.3) updated base/binutils (2.14.90.0.8) git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@2397 c5f82cb5-29bc-0310-9cd0-bff59a50e3bcrocklinux
@ -1,31 +0,0 @@ |
|||||
--- ./bfd/elfxx-mips.c.orig Wed Nov 13 12:59:20 2002 |
|
||||
+++ ./bfd/elfxx-mips.c Wed Nov 13 13:15:57 2002 |
|
||||
@@ -4794,6 +4794,28 @@ |
|
||||
entries, but not always. */ |
|
||||
local_gotno *= 2; |
|
||||
|
|
||||
+ /* jbr: THIS IS A COMPLETE HACK. IT MUST BE FIXED! |
|
||||
+ Don't let the .got section get to be bigger than |
|
||||
+ 2^15 bytes (i.e., half the size that can be addressed |
|
||||
+ off of the gp). If it is trying to get that big, it |
|
||||
+ could be because of a not large number of large static |
|
||||
+ arrays in the .bss and therefore it doesn't really |
|
||||
+ need to be that big. We issue a warning and then |
|
||||
+ reduce the size to 2^15. */ |
|
||||
+ if ((s->_raw_size + local_gotno * MIPS_ELF_GOT_SIZE (dynobj)) > 0x8000) { |
|
||||
+ (*_bfd_error_handler) |
|
||||
+ (_(".got wants %d bytes (maybe due to big .bss)"), |
|
||||
+ s->_raw_size + local_gotno * MIPS_ELF_GOT_SIZE (dynobj)); |
|
||||
+ if (s->_raw_size >= 0x4000) |
|
||||
+ (*_bfd_error_handler) |
|
||||
+ (_(".got is too big to fix, try using -G 0 or -xgot")); |
|
||||
+ else { |
|
||||
+ (*_bfd_error_handler) |
|
||||
+ (_("attempting to truncate .got; if you get relocation truncations, try using -G 0 or -xgot")); |
|
||||
+ local_gotno = (0x8000 - s->_raw_size) / MIPS_ELF_GOT_SIZE (dynobj); |
|
||||
+ } |
|
||||
+ } |
|
||||
+ /* jbr: end of hack */ |
|
||||
g->local_gotno += local_gotno; |
|
||||
s->_raw_size += local_gotno * MIPS_ELF_GOT_SIZE (dynobj); |
|
||||
|
|
||||
@ -1,42 +0,0 @@ |
|||||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|
||||
# |
|
||||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|
||||
# Please add additional copyright information _after_ the line containing |
|
||||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|
||||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|
||||
# |
|
||||
# ROCK Linux: rock-src/package/base/binutils/gas-mips-gprel.patch.disabled |
|
||||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|
||||
# |
|
||||
# This program is free software; you can redistribute it and/or modify |
|
||||
# it under the terms of the GNU General Public License as published by |
|
||||
# the Free Software Foundation; either version 2 of the License, or |
|
||||
# (at your option) any later version. A copy of the GNU General Public |
|
||||
# License can be found at Documentation/COPYING. |
|
||||
# |
|
||||
# Many people helped and are helping developing ROCK Linux. Please |
|
||||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|
||||
# file for details. |
|
||||
# |
|
||||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|
||||
|
|
||||
--- ./gas/config/tc-mips.c.gprel Fri Dec 6 17:38:22 2002 |
|
||||
+++ ./gas/config/tc-mips.c Fri Dec 6 17:39:09 2002 |
|
||||
@@ -13396,7 +13396,16 @@ tc_gen_reloc (section, fixp) |
|
||||
&& (code == BFD_RELOC_GPREL16 || code == BFD_RELOC_MIPS16_GPREL) |
|
||||
&& reloc->addend != 0 |
|
||||
&& mips_need_elf_addend_fixup (fixp)) |
|
||||
- reloc->addend += S_GET_VALUE (fixp->fx_addsy); |
|
||||
+ { |
|
||||
+ /* gbl: in o32 GPREL16 is always inplace, but in n32 and 64 |
|
||||
+ it isn't. I wish someone would get rid of this "fix". */ |
|
||||
+ reloc_howto_type *howto; |
|
||||
+ |
|
||||
+ howto = bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type); |
|
||||
+ if (howto->partial_inplace) { |
|
||||
+ reloc->addend += S_GET_VALUE (fixp->fx_addsy); |
|
||||
+ } |
|
||||
+ } |
|
||||
#endif |
|
||||
|
|
||||
/* To support a PC relative reloc when generating embedded PIC code |
|
||||
@ -1,35 +0,0 @@ |
|||||
2004-01-15 J"orn Rennecke <joern.rennecke@superh.com> |
|
||||
|
|
||||
PR optimization/10392 |
|
||||
===================================================================
|
|
||||
RCS file: /cvs/gcc/gcc/gcc/cfgcleanup.c,v |
|
||||
retrieving revision 1.68.2.9 |
|
||||
retrieving revision 1.68.2.10 |
|
||||
diff -u -r1.68.2.9 -r1.68.2.10
|
|
||||
--- gcc/gcc/cfgcleanup.c 2004/01/01 13:19:39 1.68.2.9
|
|
||||
+++ gcc/gcc/cfgcleanup.c 2004/01/16 11:07:16 1.68.2.10
|
|
||||
@@ -1704,7 +1704,7 @@
|
|
||||
/* If the jump insn has side effects, |
|
||||
we can't kill the edge. */ |
|
||||
&& (GET_CODE (b->end) != JUMP_INSN |
|
||||
- || (flow2_completed
|
|
||||
+ || (reload_completed
|
|
||||
? simplejump_p (b->end) |
|
||||
: onlyjump_p (b->end))) |
|
||||
&& merge_blocks (s, b, c, mode)) |
|
||||
===================================================================
|
|
||||
RCS file: /cvs/gcc/gcc/gcc/cfgrtl.c,v |
|
||||
retrieving revision 1.61.2.13 |
|
||||
retrieving revision 1.61.2.14 |
|
||||
diff -u -r1.61.2.13 -r1.61.2.14
|
|
||||
--- gcc/gcc/cfgrtl.c 2003/12/03 07:00:29 1.61.2.13
|
|
||||
+++ gcc/gcc/cfgrtl.c 2004/01/16 11:07:17 1.61.2.14
|
|
||||
@@ -688,7 +688,7 @@
|
|
||||
|
|
||||
if (tmp || !onlyjump_p (insn)) |
|
||||
return false; |
|
||||
- if (flow2_completed && JUMP_LABEL (insn)
|
|
||||
+ if (reload_completed && JUMP_LABEL (insn)
|
|
||||
&& (table = NEXT_INSN (JUMP_LABEL (insn))) != NULL_RTX |
|
||||
&& GET_CODE (table) == JUMP_INSN |
|
||||
&& (GET_CODE (PATTERN (table)) == ADDR_VEC |
|
||||