aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2004-07-27 13:56:55 +0000
committerAlan Modra <amodra@gmail.com>2004-07-27 13:56:55 +0000
commit9232bbb040244905a13453a40beeb3b4ffac8e1b (patch)
tree0fe947608df0d58db9a6b7b5a4b01deba884ab8b
parent6cd7f07efc8106ce7b57f9fbd509ecf2bf18079c (diff)
downloadfsf-binutils-gdb-9232bbb040244905a13453a40beeb3b4ffac8e1b.zip
fsf-binutils-gdb-9232bbb040244905a13453a40beeb3b4ffac8e1b.tar.gz
fsf-binutils-gdb-9232bbb040244905a13453a40beeb3b4ffac8e1b.tar.bz2
* config/tc-ppc.c (ppc_frob_file_before_adjust): Warn if .toc too big.
(ppc_arch): Expand comment.
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-ppc.c9
2 files changed, 13 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 7fa3398..d8e4ccc 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2004-07-27 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-ppc.c (ppc_frob_file_before_adjust): Warn if .toc too big.
+ (ppc_arch): Expand comment.
+
2004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
* config/tc-crx.c: Support evaluating the difference between two
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
index 7bc7011..3f54f9e 100644
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -1156,7 +1156,8 @@ ppc_set_cpu ()
}
}
-/* Figure out the BFD architecture to use. */
+/* Figure out the BFD architecture to use. This function and ppc_mach
+ are called well before md_begin, when the output file is opened. */
enum bfd_architecture
ppc_arch ()
@@ -1891,6 +1892,7 @@ void
ppc_frob_file_before_adjust ()
{
symbolS *symp;
+ asection *toc;
if (!ppc_obj64)
return;
@@ -1922,6 +1924,11 @@ ppc_frob_file_before_adjust ()
}
+ toc = bfd_get_section_by_name (stdoutput, ".toc");
+ if (toc != NULL
+ && bfd_section_size (stdoutput, toc) > 0x10000)
+ as_warn (_("TOC section size exceeds 64k"));
+
/* Don't emit .TOC. symbol. */
symp = symbol_find (".TOC.");
if (symp != NULL)