Age | Commit message (Collapse) | Author | Files | Lines |
|
Update relaxing code to work in 64-bit address spaces.
|
|
(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.
|
|
* dw2gencfi.c (output_fde): Remove pcrel reloc hack.
|
|
* 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.
|
|
(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.
|
|
* 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.
|
|
(get_line_sb): Return end of line character or '\n' if it is zero or
non-existent.
|
|
(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.
|
|
|
|
|
|
ATTRIBUTE_UNUSED.
|
|
(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.
|
|
|
|
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.
|
|
* 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.
|
|
|
|
|
|
* read.c (do_align): If in absolute section, warn about and ignore
non-zero fill pattern.
|
|
|
|
(ecoff_build_symbols): Likewise.
* read.c (s_lcomm_internal): Fix signed/unsigned warning.
|
|
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.
|
|
|
|
|
|
|
|
* read.c (s_fill): Correct spelling error in comments.
|
|
|
|
|
|
subtractive operations on symbols within a segment.
* read.c (pseudo_set): Set segment for complex expressions.
|
|
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.
|
|
* read.c (equals): Set to local for COFF only if it hasn't been
defined before.
|
|
|
|
|
|
|
|
* 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.
|
|
* 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.
|
|
* 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.
|
|
|
|
|
|
* bignum-copy.c: Fix formatting.
* ehopt.c: Likewise.
* flonum-copy.c: Likewise.
* flonum-konst.c: Likewise.
* flonum-mult.c: Likewise.
* literal.c: Likewise.
* read.c: Likewise.
* sb.c: Likewise.
* stabs.c: Likewise.
* subsegs.c: Likewise.
|
|
|
|
|
|
Explicitly mention `;' in line_separator_chars in each backend.
|
|
|
|
|
|
* read.c (is_end_of_line): Put back `;'.
|
|
|
|
|
|
|
|
(s_lcomm_internal): Use it.
* doc/internals.texi (CPU backend): Document it.
* config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
bytes.
|
|
|