aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1993-04-02 22:34:38 +0000
committerIan Lance Taylor <ian@airs.com>1993-04-02 22:34:38 +0000
commit1b8a42f353def1d2ca03871657a32cf90ae159b3 (patch)
treead2357361b3bf7e309f2ea4ced6a3df4649b69f8 /ld
parent0433135db44d65401b36724800661012e9ff0af6 (diff)
downloadfsf-binutils-gdb-1b8a42f353def1d2ca03871657a32cf90ae159b3.zip
fsf-binutils-gdb-1b8a42f353def1d2ca03871657a32cf90ae159b3.tar.gz
fsf-binutils-gdb-1b8a42f353def1d2ca03871657a32cf90ae159b3.tar.bz2
* ldlang.c (lang_output_section_statement_lookup): Initialize all
fields of newly created structure.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog13
-rw-r--r--ld/ldlang.c8
2 files changed, 21 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 6ce807f..28114f4 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,16 @@
+Fri Apr 2 14:33:52 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ldlang.c (lang_output_section_statement_lookup): Initialize all
+ fields of newly created structure.
+
+Wed Mar 31 18:19:15 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ldmain.c (g_switch_value): New variable.
+ * ldgram.y (OPTION_G, OPTION_Gval): New tokens.
+ (command_line_option): Accept -G and set g_switch_value.
+ * ldlex.l (COMMAND): Accept -G.
+ * ldlang.c (open_output): Call bfd_set_gp_size on new BFD.
+
Tue Mar 30 09:40:25 1993 Steve Chamberlain (sac@thepub.cygnus.com)
Support for linking and loading at different places:
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 151fe58..3f286f0 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -94,6 +94,7 @@ extern args_type command_line;
extern ld_config_type config;
extern boolean had_script;
extern boolean write_map;
+extern int g_switch_value;
etree_type *base; /* Relocation base - or null */
@@ -476,6 +477,12 @@ DEFUN (lang_output_section_statement_lookup, (name),
lookup->addr_tree = (etree_type *) NULL;
lang_list_init (&lookup->children);
+ lookup->memspec = (CONST char *) NULL;
+ lookup->flags = 0;
+ lookup->subsection_alignment = -1;
+ lookup->section_alignment = -1;
+ lookup->load_base = (union etree_union *) NULL;
+
lang_statement_append (&lang_output_section_statement,
(lang_statement_union_type *) lookup,
&lookup->next);
@@ -798,6 +805,7 @@ DEFUN (open_output, (name),
bfd_set_arch_mach (output,
ldfile_output_architecture,
ldfile_output_machine);
+ bfd_set_gp_size (output, g_switch_value);
return output;
}