Nick Clifton
caa32fe507
Add and handle new --alternate command line option.
2004-08-13 19:53:52 +00:00
Nathan Sidwell
b8861cfbc7
* read.c (do_align): Call md_flush_pending_output, if defined.
2004-04-19 09:32:55 +00:00
Nathan Sidwell
c95b35a920
* read.c (read_a_source_file): Use demand_empty_rest_of_line.
...
(demand_empty_rest_of_line): Issue an error here.
(ignore_rest_of_line): Silently skip to end.
(demand_copy_string): Issue an error, not warning.
(equals): Likewise.
* config/obj-elf.c (obj_elf_section_name): Likewise.
(obj_elf_section): Likewise.
* config/tc-arc.c (arc_extoper): Remove bogus NULL checks.
(arc_extinst): Likewise.
* config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line.
(dot_spill): Likewise.
(dot_unwabi): Likewise.
(dot_prologue): Likewise.
2004-03-18 13:31:04 +00:00
Bob Wilson
00bbdfe753
* read.c (s_leb128): Call md_flush_pending_output.
2004-03-12 17:48:12 +00:00
Nathan Sidwell
a8a3b3b21c
* read.h (IGNORE_OPCODE_CASE): Do not define. Replace with ...
...
(TC_CASE_SENSITIVE): ... this.
* read.c: Replace IGNORE_OPCODE_CASE with TC_CASE_SENSITIVE.
* doc/internals.texi (TC_CASE_SENSITIVE): Document.
2004-02-09 12:12:42 +00:00
Nathan Sidwell
e4475e391f
.:
...
* dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';'
* read.h (SKIP_WHITESPACE): Turn into an expression.
* read.c (read_a_source_file): A pseudo is removed by having a
NULL handler.
testsuite:
* gas/macros/test2.s: Lowercase it.
2004-02-06 16:00:21 +00:00
Alan Modra
13c5698440
* read.c (s_lcomm_internal): Make global.
...
* read.h (s_lcomm_internal): Declare.
* config/obj-elf.c (elf_pseudo_table): Handle lcomm.
(obj_elf_lcomm): New function.
2003-12-13 08:59:24 +00:00
Alan Modra
e13bab5a71
* read.c: Remove unneeded prototypes.
...
(s_comm): Split out code to..
(s_comm_internal): ..here. Tidy error returns. Rearrange so that
"name" from input line may be used in more places. Merge code
testing for valid size from elf_common. Merge code from
s_lcomm_internal. Call comm_parse_extra.
(bss_alloc): New function, split out of s_lcomm_internal and
elf_common.
(parse_align): Likewise.
(s_lcomm_internal): Rewrite.
(s_lcomm, s_lcomm_bytes): Use s_comm_internal.
* read.h (bss_alloc, parse_align, s_comm_internal): Declare.
* config/obj-elf.c (elf_common): Split out code to..
(elf_common_parse): ..here. Remove code common to s_comm_internal,
parse_align and bss_alloc. Rearrange and Tidy.
* config/tc-alpha.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Define.
2003-12-13 08:23:05 +00:00
Kazu Hirata
39e6acbdff
* read.c: Convert to ISO-C.
...
* read.h: Likewise.
2003-11-27 19:14:41 +00:00
Kazu Hirata
47eebc207f
* ChangeLog: Fix typos.
...
* ChangeLog-9295: Likewise.
* as.c: Fix comment typos.
* as.h: Likewise.
* atof-generic.c: Likewise.
* bit_fix.h: Likewise.
* frags.h: Likewise.
* hash.c: Likewise.
* input-file.c: Likewise.
* input-scrub.c: Likewise.
* itbl-ops.c: Likewise.
* itbl-parse.y: Likewise.
* listing.c: Likewise.
* macro.h: Likewise.
* read.c: Likewise.
* sb.c: Likewise.
* sb.h: Likewise.
* symbols.c: Likewise.
* symbols.h: Likewise.
2003-10-27 12:45:17 +00:00
Alan Modra
d6415f6cd6
* read.c (s_print): Check for NULL.
2003-08-16 14:04:48 +00:00
Rainer Orth
2d150871cf
* read.c (s_space): Revert 2003-07-28 change.
2003-07-30 17:21:52 +00:00
Rainer Orth
8d548edbc9
* read.c (s_space): Don't warn about .space 0.
2003-07-28 20:35:59 +00:00
H.J. Lu
b41b1f95b7
2003-07-22 H.J. Lu <hongjiu.lu@intel.com>
...
* read.c (do_parse_cons_expression): Mark nbytes unused to
silence gcc.
2003-07-22 15:27:06 +00:00
Nick Clifton
685736be24
Update .comm error messages to assume an unsigned value.
...
Update relaxing code to work in 64-bit address spaces.
2003-06-24 11:10:47 +00:00
Richard Henderson
cdfbf930b9
* dw2gencfi.c (struct cfi_escape_data): New.
...
(cfi_add_CFA_nop): Remove.
(CFI_escape, dot_cfi_escape): New.
(dot_cfi): Remove nop.
(cfi_pseudo_table): Remove nop; add escape.
(output_cfi_insn): Likewise.
(select_cie_for_fde): Stop on escape.
* dw2gencfi.h (cfi_add_CFA_nop): Remove.
* read.c, read.h (do_parse_cons_expression): New.
* doc/as.texinfo (.cfi_escape): New.
* gas/cfi/cfi-common-3.[ds]: New.
* gas/cfi/cfi.exp: Run it.
2003-06-11 23:16:58 +00:00
Alan Modra
ed7d5d1a43
* read.c (emit_expr): Set dot_value.
...
* dw2gencfi.c (output_fde): Remove pcrel reloc hack.
2003-06-02 22:48:59 +00:00
Alan Modra
54cfded08e
* dw2gencfi.c, dw2gencfi.h: New files.
...
* config/tc-i386.c (tc_x86_cfi_init): New function.
* config/tc-i386.h (TARGET_USE_CFIPOP, tc_cfi_init): New defines.
* as.c (parse_args): Set verbose flag on --verbose.
(main): Call tc_cfi_init()/cfi_finish().
* as.h (verbose): New external variable.
* read.c (pobegin): Insert CFI pops to the list.
* symbols.c (local_symbol_make): Make symbol external.
* symbols.h (local_symbol_make): New prototype.
* Makefile.am: Add dw2gencfi.[ch] files. Run "make dep-am".
* Makefile.in: Regenerate.
* doc/as.texinfo: Added node "CFI directives" with description of
all implemented .cfi_* directives.
* doc/Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
2003-05-20 07:58:07 +00:00
Hans-Peter Nilsson
64e55042d6
* read.c (old_buffer, old_input, old_limit): Remove variables.
...
(read_a_source_file): Delete label contin.
<handling #APP/#NO_APP>: Use an "sb" to push #APP expansion into
input as with macros, instead of in separate old_* variables.
Zero-terminate string being scrubbed.
2003-05-13 01:51:40 +00:00
H.J. Lu
a645d1eb84
2003-05-01 H.J. Lu <hjl@gnu.org>
...
* config/tc-ia64.c (ia64_check_label): New.
* config/tc-ia64.h (tc_check_label): New.
* read.c (read_a_source_file): Call tc_check_label after
creating a user-defined label if defined.
2003-05-02 02:41:45 +00:00
Nick Clifton
0822d0753e
(buffer_and_nest): Store more to sb instead of '\n'.
...
(get_line_sb): Return end of line character or '\n' if it is zero or
non-existent.
2003-03-13 11:49:33 +00:00
Alan Modra
a0ea3e1db8
* read.c (get_absolute_expr): New, split out from..
...
(get_absolute_expression): ..here.
* read.h (get_absolute_expr): Declare.
* config/obj-elf.c (elf_common): Use offsetT for "temp" and "size".
Trim size to arch bits_per_address, and test for negative input
via get_absolute_expr.
2003-01-11 06:24:12 +00:00
Nick Clifton
fea179166e
Remove GASP.
2002-12-02 15:42:15 +00:00
Hans-Peter Nilsson
dc59a89726
* read.c (emit_expr) [WORKING_DOT_WORD]: Initialize x->use_jump.
2002-12-02 07:18:53 +00:00
Hans-Peter Nilsson
a6bd2a4f18
* read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not
...
ATTRIBUTE_UNUSED.
2002-08-31 18:51:07 +00:00
Alan Modra
7065849339
* dwarf2dbg.c: Always include dwarf2dbg.h.
...
(dwarf2_directive_file): Adjust dummy version args.
* ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED.
* expr.c (clean_up_expression <O_subtract>): Allow subtraction
when symbol values differ.
* read.c (do_align): Add ATTRIBUTE_UNUSED to label.
(pseudo_set <O_subtract>): Remove unnecessary segment test.
* config/obj-bout.c (obj_pseudo_table): Warning fix.
2002-08-27 11:09:43 +00:00
Nick Clifton
8ac9ba6cf2
Catch attempts to create strings in the abs section.
2002-08-14 16:38:14 +00:00
Daniel Jacobowitz
ecb4347ade
2002-06-14 H.J. Lu <hjl@gnu.org>
...
Daniel Jacobowitz <drow@mvista.com>
* dwarf2dbg.h (dwarf2_directive_file): Return char *.
* dwarf2dbg.c (dwarf2_directive_file): Return filename.
* config/tc-mips.c (s_mips_file): Call s_app_file_string
and new_logical_line for the first .file directive.
* read.c (s_app_file_string): New function.
(s_app_file): Call it.
* read.h (s_app_file_string): Add declaration.
2002-06-14 Daniel Jacobowitz <drow@mvista.com>
* configure.in: Remove MIPS_STABS_ELF.
* configure: Regenerated.
* config.in: Regenerated.
* config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug
for MIPS targets.
* config/tc-mips.c (mips_pseudo_table): Remove #ifdef around
".extern".
(pdr_seg): Declare unconditionally.
(md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF.
(s_mips_end): Likewise. Generate stabs function markers.
(s_mips_ent): Generate stabs function markers.
(s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not
ELF.
(s_mips_mask): Likewise.
(mips_flag_mdebug): New.
(md_longopts): Add "mdebug" and "no-mdebug".
(md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG.
(mips_after_parse_args): Set mips_flag_mdebug.
* doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS.
2002-06-14 Daniel Jacobowitz <drow@mvista.com>
* gas/mips/lineno.d: Use --gstabs.
* gas/mips/mips.exp (lineno.s): Remove XFAIL.
2002-06-14 14:08:54 +00:00
Kazu Hirata
d1a6c2428d
* as.h: Fix formatting.
...
* cgen.c: Likewise.
* cgen.h: Likewise.
* dwarf2dbg.c: Likewise.
* frags.h: Likewise.
* gasp.c: Likewise.
* macro.c: Likewise.
* read.c: Likewise.
* stabs.c: Likewise.
* symbols.c: Likewise.
2002-05-03 02:25:33 +00:00
Nick Clifton
ceac3f6271
do not allow size or nbytes to go negative.
2002-01-07 17:51:18 +00:00
Nick Clifton
7f28ab9dc7
Generate warning message if .endr is used without preceeding .rept/.irc/.irp
2001-10-12 08:56:17 +00:00
Alan Modra
ebeb92533b
* subsegs.c (subseg_text_p): Return 0 for absolute section.
...
* read.c (do_align): If in absolute section, warn about and ignore
non-zero fill pattern.
2001-10-05 10:53:00 +00:00
H.J. Lu
3882b01078
Locale changes from Bruno Haible <haible@clisp.cons.org>.
2001-09-19 05:33:36 +00:00
Alan Modra
23fe39dfb9
* ecoff.c (ecoff_frob_symbol): Remove casts from bfd_get_gp_size.
...
(ecoff_build_symbols): Likewise.
* read.c (s_lcomm_internal): Fix signed/unsigned warning.
2001-08-17 16:01:49 +00:00
Alan Modra
0e389e770d
* read.c: Standardize error/warning messages - don't capitalise, no
...
final period or newline, don't say "ignored" or "zero assumed" for
as_bad messages. In some cases, change the wording to that used
elsewhere for similar messages.
* app.c, as.c, atof-generic.c, cgen.c, cond.c, depend.c, dwarf2dbg.c,
ecoff.c, expr.c, frags.c, input-file.c, input-scrub.c, listing.c,
output-file.c, stabs.c, subsegs.c, symbols.c, write.c: Likewise.
* ecoff.c (ecoff_directive_end): Test for missing name by
comparing input line pointers rather than reading string.
(ecoff_directive_ent): Likewise.
* read.c (s_set): Likewise.
(s_align): Report a warning rather than an error for
alignment too large.
(s_comm): Check for missing symbol name.
(s_lcomm_internal): Likewise.
(s_lsym): Likewise.
(s_globl): Use is_end_of_line instead of looking for '\n'.
(s_lcomm_internal): Likewise.
(ignore_rest_of_line): Report a warning rather than an error.
2001-08-01 01:44:25 +00:00
Alan Modra
409d19c41a
* read.c (s_set): Check for missing symbol name.
2001-07-27 08:35:56 +00:00
Nick Clifton
f740e790c7
Use FOPEN_.. macros in calls to fopen().
2001-07-10 09:45:50 +00:00
Nick Clifton
7e005732aa
Add .incbin pseudo op
2001-07-09 08:19:18 +00:00
Ben Elliston
2a1e2a6d6e
2001-07-05 Ben Elliston <bje@redhat.com>
...
* read.c (s_fill): Correct spelling error in comments.
2001-07-05 00:36:50 +00:00
Richard Henderson
371b7465e4
* read.c (emit_leb128_expr): Call md_cons_align.
2001-05-31 00:00:30 +00:00
Alan Modra
ce34c3732a
Revert last patch.
2001-05-25 01:59:43 +00:00
Alan Modra
40e3ba9bb7
* expr.c (expr): Set return value to absolute_section for
...
subtractive operations on symbols within a segment.
* read.c (pseudo_set): Set segment for complex expressions.
2001-05-25 00:01:30 +00:00
Richard Henderson
67a659f60e
* ehopt.c (get_cie_info): Rename from eh_frame_code_alignment;
...
also collect whether to expect an FDE augmentation.
(check_eh_frame): Rewrite as a state machine. Track where in
an FDE we are located, skip any augmentation.
(eh_frame_estimate_size_before_relax): Get code alignment from
the fragment subtype.
(eh_frame_relax_frag, eh_frame_convert_frag): Likewise.
* read.c (emit_leb128_expr): Call check_eh_frame.
2001-05-14 22:37:47 +00:00
H.J. Lu
440ecb3800
2001-03-28 H.J. Lu <hjl@gnu.org>
...
* read.c (equals): Set to local for COFF only if it hasn't been
defined before.
2001-03-28 17:24:01 +00:00
Nick Clifton
775cf89163
(for COFF) default symbols to being local.
2001-03-27 19:13:55 +00:00
Alan Modra
2289f85d24
Teach .org to handle complex expressions
2001-03-17 03:02:06 +00:00
Nick Clifton
f7e42eb4af
Fix copyright notices
2001-03-08 23:24:26 +00:00
Richard Henderson
0a9ef43907
* as.h (rs_align_test): New.
...
* frags.c (NOP_OPCODE): Move default from read.c.
(MAX_MEM_FOR_RS_ALIGN_CODE): New default.
(frag_align_code): New.
* frags.h (frag_align_code): Declare.
* read.c (NOP_OPCODE): Remove.
(do_align): Use frag_align_code.
* write.c (NOP_OPCODE): Remove.
(get_recorded_alignment): New.
(cvt_frag_to_fill): Handle rs_align_test.
(relax_segment): Likewise.
(subsegs_finish): Align last subseg in section to the
section alignment. Use frag_align_code.
* write.h (get_recorded_alignment): Declare.
* config/obj-coff.c (size_section): Handle rs_align_test.
(fill_section, fixup_mdeps): Likewise.
(write_object_file): Use frag_align_code.
* config/tc-alpha.c (alpha_align): Use frag_align_code.
(alpha_handle_align): New.
* config/tc-alpha.h (HANDLE_ALIGN): New.
(MAX_MEM_FOR_RS_ALIGN_CODE): New.
* config/tc-i386.h (md_do_align): Use frag_align_code.
(MAX_MEM_FOR_RS_ALIGN_CODE): New.
* config/tc-ia64.c (ia64_md_do_align): Don't do code alignment.
(ia64_handle_align): New.
* config/tc-ia64.h (HANDLE_ALIGN): New.
(MAX_MEM_FOR_RS_ALIGN_CODE): New.
* config/tc-m32r.c (m32r_do_align): Remove.
(m32r_handle_align): New.
(fill_insn): Use frag_align_code.
* config/tc-m32r.h (md_do_align): Remove.
(HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New.
* config/tc-m88k.c, config/tc-m88k.h: Similarly.
* config/tc-mips.c, config/tc-mips.h: Similarly.
* config/tc-sh.c (sh_cons_align): Use rs_align_test.
(sh_handle_align): Likewise. Handle rs_align_code.
(sh_do_align): Remove.
* config/tc-sh.h (md_do_align): Remove.
(MAX_MEM_FOR_RS_ALIGN_CODE): New.
* config/tc-sparc.c (sparc_cons_align): Use rs_align_test.
(sparc_handle_align): Likewise. Handle rs_align_code.
* config/tc-sparc.h (md_do_align): Remove.
(MAX_MEM_FOR_RS_ALIGN_CODE): New.
2000-12-28 10:07:56 +00:00
Richard Henderson
4dc7ead9fd
* as.c (debug_type): Init to DEBUG_UNSPECIFIED.
...
* as.h (debug_type): Clarify documentation of the meaning
of this variable.
* dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
(print_stats): Fix parenthesis problem.
(now_subseg_size): New.
(dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info.
(dwarf2_directive_file): Don't set debug_type.
(dwarf2_where): Honor DEBUG_DWARF2 first.
(dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
do nothing if not emitting dwarf2 debug info, or no work.
* dwarf2dbg.h (dwarf2_emit_insn): Update.
* ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
(ecoff_new_file): Likewise.
* read.c (generate_lineno_debug): Kill ecoff hackery. Update
commentary wrt dwarf2.
* config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
ATTRIBUTE_UNUSED as needed.
(emit_insn): Call dwarf2_emit_insn.
(s_alpha_file): New.
(s_alpha_loc): New.
(s_alpha_coff_wrapper): Don't handle them.
(md_pseudo_table): Update for .file and .loc.
* config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
* config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
don't protect with debug_type.
* config/tc-hppa.c (md_assemble): Likewise.
* config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
* config/tc-mn10300.c (md_assemble): Likewise.
* config/tc-sh.c (md_assemble): Likewise.
* config/tc-v850.c (md_assemble): Likewise.
* config/tc-arm.c (arm_end_of_source): Remove.
* config/tc-hppa.c (pa_end_of_source): Remove.
* config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
* config/tc-mn10300.c (mn10300_finalize): Remove.
* config/tc-sh.c (sh_finalize): Remove.
* config/tc-v850.c (sh_finalize): Remove.
* config/tc-arm.h (md_end): Remove.
* config/tc-hppa.h (md_end): Remove.
(DWARF2_LINE_MIN_INSN_LENGTH): New.
* config/tc-m68hc11.h (md_end): Remove.
* config/tc-mn10300.h (md_end): Remove.
* config/tc-sh.h (md_end): Remove.
* config/tc-v850.h (md_end): Remove.
* config/tc-ia64.c (emit_one_bundle): Don't protect
dwarf2 bits with debug_type.
(md_assemble): Likewise.
(ia64_end_of_source): Don't call dwarf2_finish.
2000-11-17 08:47:52 +00:00
Kazu Hirata
ef99799a42
2000-11-06 Kazu Hirata <kazu@hxi.com>
...
* as.c: Fix formatting.
* dwarf2dbg.c: Likewise.
* itbl-ops.c: Likewise.
* listing.c: Likewise.
* macro.h: Likewise.
* messages.c: Likewise.
* read.c: Likewise.
* subsegs.c: Likewise.
* subsegs.h: Likewise.
* write.c: Likewise.
2000-11-07 01:18:45 +00:00