diff options
author | Steve Chamberlain <sac@cygnus> | 1992-08-07 19:34:59 +0000 |
---|---|---|
committer | Steve Chamberlain <sac@cygnus> | 1992-08-07 19:34:59 +0000 |
commit | ae475b39b2c0aa785d265bb0b6baa44de30c415c (patch) | |
tree | 061b7217353e3f0e658b6fc01a45bc885f017872 /ld/ldgram.y | |
parent | f6492282df033583f56eb2d910719f3274f2ddf2 (diff) | |
download | gdb-ae475b39b2c0aa785d265bb0b6baa44de30c415c.zip gdb-ae475b39b2c0aa785d265bb0b6baa44de30c415c.tar.gz gdb-ae475b39b2c0aa785d265bb0b6baa44de30c415c.tar.bz2 |
* ldlang.h: add new field "loadable" to output_section_statement.
* ldlang.c (lang_output_section_statement_lookup): initilize new
field. (wild_doit): if new field is not set, then stop output
section from being loadable.
(lang_enter_output_section_statement): set the field from the
NOLOAD keyword
* ldgram.y: new synax for NOLOAD. Removes a shift/reduce too.
* h8300hms.sc-sh, h8300hms.em: get -r right.
Diffstat (limited to 'ld/ldgram.y')
-rw-r--r-- | ld/ldgram.y | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/ld/ldgram.y b/ld/ldgram.y index 7639ab1..12acc19 100644 --- a/ld/ldgram.y +++ b/ld/ldgram.y @@ -299,7 +299,7 @@ command_line_option: { lang_add_input_file($1,lang_input_file_is_file_enum, (char *)NULL); } | OPTION_c filename - { ldfile_open_command_file($2); } mri_script_file END { ldlex_command()}; + { ldfile_open_command_file($2); } mri_script_file END { ldlex_command();} | OPTION_Tfile { ldfile_open_command_file($1); } script_file @@ -327,7 +327,7 @@ END { ldlex_command();} lang_add_assignment(exp_assop($4,$3,$5)); } | '-' NAME - { info("%P%F Unrecognised option -%s\n", $2); } + { info("%P%F Unrecognized option -%s\n", $2); } | '{' script_file '}' ; @@ -747,6 +747,8 @@ exp : { $$ = exp_nameop(SIZEOF,$3); } | ADDR '(' NAME ')' { $$ = exp_nameop(ADDR,$3); } + | ABSOLUTE '(' exp ')' + { $$ = exp_unop(ABSOLUTE, $3); } | ALIGN_K '(' exp ')' { $$ = exp_unop(ALIGN_K,$3); } | NAME @@ -772,11 +774,11 @@ opt_comma ; opt_type: - '(' NOLOAD ')' { $$ = SEC_NO_FLAGS; } - | '(' DSECT ')' { $$ = 0; } - | '(' COPY ')' { $$ = 0; } - | '(' INFO ')' { $$ = 0; } - | '(' OVERLAY ')' { $$ = 0; } + NOLOAD { $$ = SEC_NEVER_LOAD; } + | DSECT { $$ = 0; } + | COPY { $$ = 0; } + | INFO { $$ = 0; } + | OVERLAY { $$ = 0; } | { $$ = SEC_ALLOC | SEC_LOAD | SEC_HAS_CONTENTS; } ; |