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
Nick Clifton
37d8bb275b
Preserve copy of case clobber opcodes so that .req pseudo op works
2000-11-02 19:32:47 +00:00
Nick Clifton
85a3969410
Add --gdwarf2 support to ARM toolchain
2000-10-25 19:15:34 +00:00
Kazu Hirata
f0e652b4aa
2000-09-11 Kazu Hirata <kazu@hxi.com>
...
* 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.
2000-09-12 03:56:22 +00:00
Alan Modra
4c400d5ea7
comment-finding hack for hppa-linux.
2000-07-28 05:05:20 +00:00
Nick Clifton
041ff4dd56
Fix formatting.
2000-07-20 17:12:25 +00:00
Alan Modra
63a0b638d4
Don't treat `;' as a line separator by default.
...
Explicitly mention `;' in line_separator_chars in each backend.
2000-06-09 00:00:04 +00:00
Alan Modra
0b5454486c
(is_end_of_line): Add three missing lines of 0 initializers.
2000-06-04 05:03:31 +00:00
Alan Modra
ac743b2c9d
(is_end_of_line): No ';' for TC_HPPA.
2000-06-04 03:28:38 +00:00
H.J. Lu
969e1a7b86
2000-06-03 H.J. Lu <hjl@gnu.org>
...
* read.c (is_end_of_line): Put back `;'.
2000-06-03 22:33:09 +00:00
Alan Modra
b75c0c920f
is_end_of_line fixes.
2000-06-02 02:52:10 +00:00
Jim Wilson
800eeca487
IA-64 ELF support.
2000-04-21 20:22:24 +00:00
Timothy Wall
9f10757c40
Add macro handling extensions and line substitution support.
2000-03-26 14:47:33 +00:00
Hans-Peter Nilsson
8684e216c8
* read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
...
(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.
2000-03-13 20:46:07 +00:00
Alan Modra
abd63a324b
Remove dead code when not TC_M68K.
2000-02-24 01:56:31 +00:00
Timothy Wall
a25c045a58
Check label validity with TC_START_LABEL_WITHOUT_COLON if defined.
2000-02-10 21:03:12 +00:00
Timothy Wall
6dc19fc4d6
Remove redundant code for checking numbers with suffixes. Add
...
functionality to break out of assembler loops.
2000-02-08 19:06:00 +00:00
Timothy Wall
3fd9f0476f
New elseif directive has been added.
2000-02-08 14:13:57 +00:00
Timothy Wall
bea9907b2a
octets vs bytes changes for GAS
2000-02-03 18:20:23 +00:00
Alan Modra
fa3061313c
Make copyright date lists comply with GNU requirement
2000-01-26 23:58:13 +00:00
Alan Modra
4c63da97a7
This set of patches add support for aout emulation on the x86
...
assembler. ie. You will be able to do "as --em=i386aout" on an x86
linux-elf assembler to generate aout format object files, rather than
using a separate assembler. The aout emulation is enabled by giving
"--enable-targets=i386-linuxaout" to configure.
Oh yeah, there's a couple of fixes too. Error messages shouldn't be
passed to printf in the format arg just in case someone puts a `%' in
the message.
2000-01-26 22:48:31 +00:00
Ian Lance Taylor
53b0d3971a
* read.c (pseudo_set): Reject attempts to set the value of a
...
section symbol.
1999-11-03 22:14:47 +00:00
Ian Lance Taylor
ab9da55419
* Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
...
as appropriate. Fill in structure initializations. Add variable
initializations. Add casts.
* dwarf2dbg.c (print_stats): Change i to size_t.
* listing.c (listing_listing): Change list_line to unsigned int.
1999-07-11 20:20:04 +00:00
Ian Lance Taylor
b9e57a387a
* subsegs.c (subseg_text_p): New function.
...
* as.h (subseg_text_p): Declare.
* read.c (do_align): Use subseg_text_p to set the default fill.
* write.c (subsegs_finish): Likewise.
* config/obj-coff.c (write_object_file): Likewise.
* config/tc-i386.h (md_maybe_text): Don't define.
(md_do_align): Use subseg_text_p to set the default fill.
* config/tc-m32r.c (m32r_do_align): Likewise.
* config/tc-sh.c (sh_do_align): Likewise.
* config/tc-sparc.h (md_do_align): Likewise.
1999-06-12 16:49:51 +00:00
Ian Lance Taylor
1bf67e0db8
* read.c (read_a_source_file): Only declare inescape if
...
QUOTES_IN_INSN.
1999-06-10 21:36:37 +00:00
Richard Henderson
58b5739a4e
* dwarf2dbg.c (*): Convert to K&R + prototypes.
...
(dwarf2_gen_line_info): Kill unused variables.
(dwarf2_finish): Likewise.
(dwarf2_where): Likewise.
(dwarf2_directive_file): If we've only got a string,
hand off to s_app_file.
* ecoff.c: Move the include of ecoff.h.
* symbols.h (S_IS_FUNCTION): Prototype.
* read.c (LEX_HASH): Supply a default.
(lex_type): Use it.
(s_globl): Update `c' after skipping whitespace.
* read.h (LEX_END_NAME, is_name_ender): New.
* expr.c (get_symbol_end): Respect it.
1999-06-05 18:19:09 +00:00
Richard Henderson
1c32af2255
* read.c (read_a_source_file): Conditionally allow matched "
...
in lines passed to md_assemble.
1999-06-03 02:51:09 +00:00
Ian Lance Taylor
2b47531bf9
* app.c (input_buffer): New static variable.
...
(app_push): Save saved_input in allocated buffer.
(app_pop): Restored saved_input.
(do_scrub_chars): Change get parameter to take char * and int as
arguments. Change GET macro to pass input_buffer to get
function. Don't save input into allocated buffer.
* as.h (do_scrub_chars): Update declaration.
* input-file.c (input_file_get): Change to take char * and int.
Read data into passed in buffer. Remove static buffer.
* read.c (scrub_from_string): Change to take char * and int. Copy
data into passed in buffer.
1999-06-03 00:24:14 +00:00
Alan Modra
6d4d30bb14
/
...
Move bitfield overflow checks to after the md_apply_fix call in
fixup_segment so that md_apply_fix has a chance to modify value.
Handle 8 and 16-bit pcrel relocs for i386.
Prototypes and other minor code cleanups.
1999-05-17 03:21:46 +00:00
Richard Henderson
252b5132c7
19990502 sourceware import
1999-05-03 07:29:11 +00:00