This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Update ARM mapping symbol support
- From: Richard Earnshaw <Richard dot Earnshaw at buzzard dot freeserve dot co dot uk>
- To: Daniel Jacobowitz <drow at false dot org>
- Cc: binutils at sourceware dot org, Daniel Gutson <dgutson at codesourcery dot com>
- Date: Sun, 02 Aug 2009 20:13:51 +0100
- Subject: Re: Update ARM mapping symbol support
- References: <20090731181200.GA15988@caradoc.them.org>
On Fri, 2009-07-31 at 14:12 -0400, Daniel Jacobowitz wrote:
> 2009-07-15 Daniel Gutson <dgutson@codesourcery.com>
> Daniel Jacobowitz <dan@codesourcery.com>
>
> gas/
> * config/obj-elf.c (obj_elf_ident): Notify section change to the hook.
> * config/tc-arm.c (make_mapping_symbol): New function, from
> mapping_state. Save mapping symbols in the frag.
> (insert_data_mapping_symbol): New.
> (mapping_state): Use make_mapping_symbol, improve state transitions.
> (mapping_state_2): New. Provide dummy definition.
> (opcode_select): Do not call mapping_state.
> (s_bss): Call md_elf_section_change_hook instead of mapping_state.
> (output_inst): Update use of tc_frag_data.
> (new_automatic_it_block): Call mapping_state before emitting the
> IT instruction.
> (md_assemble): Move mapping_state to just before outputting the
> new instruction.
> (arm_handle_align): Update use of tc_frag_data.
> Call insert_data_mapping_symbol.
> (arm_init_frag): Update use of tc_frag_data. Call
> mapping_state_2.
> (arm_elf_change_section): Always update the mapping symbol FSM state.
> (check_mapping_symbols): New function.
> (arm_adjust_symtab): Use check_mapping_symbols.
> * config/tc-arm.h (struct arm_frag_type): New.
> (TC_FRAG_TYPE): Change to struct arm_frag_type.
> (TC_FRAG_INIT): Pass max_chars.
> (arm_init_frag): Update prototype.
>
.code 16
.type _obstack_newchunk, %function
_obstack_newchunk:
push {r4, r5, r6, r7, lr}
.ident "GCC: (GNU) 4.5.0 20090801 (experimental)"
.code 16
.align 1
.L13:
bx r2
$ as-new test.s
test.s: Assembler messages:
test.s:9: Internal error!
Assertion failure in make_mapping_symbol
at /home/rearnsha/gnusrc/gcc-cross/trunk/gas/config/tc-arm.c line 2491.
Please report this bug.