Alan Modra
2d0441d962
* config/tc-arc.c (md_assemble): Use is_end_of_line instead of
...
testing for NULs.
2001-05-22 11:03:35 +00:00
Alan Modra
6386f3a767
* symbols.c (resolve_symbol_value): Remove "finalize" param,
...
instead use finalize_syms directly. Don't treat expressions
specially with regard to finalize_syms. Update calls to self.
(resolve_local_symbol): Update call to resolve_symbol_value.
(S_GET_VALUE): Likewise. Return resolve_symbol_value if
!finalize_syms.
* symbols.h (resolve_symbol_value): Update prototype.
* config/obj-aout.c (obj_crawl_symbol_chain): Update call
to resolve_symbol_value.
* config/obj-bout.c (obj_crawl_symbol_chain): Likewise.
* config/obj-coff.c (do_relocs_for): Likewise.
(yank_symbols): Likewise.
(fixup_segment): Likewise.
* config/obj-vms.c (obj_crawl_symbol_chain): Likewise.
* config/tc-mips.c (md_convert_frag): Likewise.
* config/tc-ppc.c (ppc_frob_symbol): Likewise.
(ppc_fix_adjustable): Likewise.
* dwarf2dbg.c (dwarf2dbg_estimate_size_before_relax): Likewise.
(dwarf2dbg_convert_frag): Likewise.
* ehopt.c (eh_frame_estimate_size_before_relax): Likewise.
(eh_frame_convert_frag): Likewise.
* expr.c (make_expr_symbol): Likewise.
* write.c (adjust_reloc_syms): Likewise.
(write_object_file): Likewise.
(relax_segment): Likewise.
(fixup_segment): Likewise.
(finalize_syms): Init to zero, and update comment.
(write_object_file): Set finalize_syms to 1 rather than 2.
* doc/internals.texi (sy_value): Mention finalize_syms.
(S_GET_VALUE): Remove restriction on when S_GET_VALUE can be called.
2001-05-22 10:23:50 +00:00
Alan Modra
c801568a3a
* config/tc-m68k.c (relaxable_symbol): Only treat external symbols
...
as relaxable if embedded system, make weak syms non-relaxable.
Move definition..
(tc_m68k_fix_adjustable): ..so it can be used here.
(md_apply_fix_2): Sign extend without conditional.
2001-05-22 09:01:55 +00:00
Alan Modra
507c8a1a57
Update copyright date.
2001-05-22 08:41:10 +00:00
Alexandre Oliva
7e8f410030
* config/tc-mn10300.c (mn10300_force_relocation): Don't
...
optimize differences between symbols in code sections to
constants.
(mn10300_fix_adjustable): Don't adjust to section+offset
relocations pointing at symbols in code sections.
2001-05-16 01:48:51 +00:00
Alan Modra
9fcc94b611
Fix dwarf2_emit_insn calls when frag_var breaks things.
...
Put back an old entry in ChangeLog-9899, deleted when ChangeLog split.
2001-05-16 01:08:21 +00:00
Alexandre Oliva
076dc439b8
* config/tc-mn10300.c (md_assemble): Anchor dwarf2 line info
...
before a relaxable insns.
2001-05-14 20:01:12 +00:00
Alexandre Oliva
4e75439ae5
* config/tc-mn10300.c (tc_gen_reloc): Don't reject differences
...
between symbols if the base symbol is in the current section;
emit a PC-relative relocation instead.
2001-05-13 23:16:30 +00:00
Alan Modra
bcee8eb8ca
Peter Targett's backwards compatibility and other arc fixes.
2001-05-12 15:14:53 +00:00
Jakub Jelinek
579f31ac74
* elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
...
sections as well.
(elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
to .gnu.linkonce.t.FOO text section.
* readelf.c (process_unwind): Print all unwind sections, not just
one.
* config/tc-ia64.c (special_linkonce_name): New.
(make_unw_section): Map .gnu.linkonce.t.FOO text section into
.gnu.linkonce.ia64unw{,i}.FOO.
(ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO.
(dot_endp): Add comment about it.
* elf/ia64.h (ELF_STRING_ia64_unwind_once): Define.
(ELF_STRING_ia64_unwind_info_once): Define.
* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
.gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
output sections.
* emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
2001-05-11 12:36:47 +00:00
Nick Clifton
15f65ae412
When truncating an aligned block, ensure that the low order bits of the
...
alignment are preserved.
2001-05-11 10:01:41 +00:00
Alan Modra
606ab118ba
Fix more fallout from multi-pass relaxation patch.
2001-05-10 11:32:52 +00:00
Richard Henderson
1f23ade4f4
* config/tc-ia64.c (generate_unwind_image): Align the fragment
...
beginning a function's unwind info block.
2001-05-10 00:18:19 +00:00
Alexandre Oliva
96f37af640
* config/tc-mn10300.c (md_apply_fix3): Accept PC-relative relocs.
2001-05-09 13:32:01 +00:00
Andreas Schwab
8390138c6b
* config/tc-m68k.c: Instead of replacing -1 by 64 in assignment to
...
fx_pcrel_adjust explicitly sign extend when reading it.
2001-05-08 18:03:27 +00:00
Alan Modra
5c65dbc1ca
More fallout from 2001-03-30 changes.
...
* config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var
from md_relax_table, and combine some switch cases.
2001-05-08 13:13:56 +00:00
Alexandre Oliva
a7c92daeed
* config/tc-mn10300.c (md_assemble): Subtract operand->shift
...
from offset in non-pcrel operands too.
2001-05-06 20:05:28 +00:00
Nick Clifton
d8708f403e
Do not insert more than MAX_MEM_FOR_RS_ALIGN_CODE bytes.
2001-05-06 10:11:33 +00:00
Alan Modra
3438adb37d
Warning fixes and configure/makefile tweaks by Thiemo Seufer.
2001-05-03 02:07:02 +00:00
Alan Modra
636c26b044
* config/tc-i386.c (i386_displacement): Call as_bad for bad GOTOFF
...
expressions rather than triggering an assert.
2001-05-03 01:08:44 +00:00
Nick Clifton
6e1e737c86
Fix indentation and parenthesis
2001-05-02 18:40:10 +00:00
Nick Clifton
c7e4034828
Add gas and ld support for openrisc
2001-05-02 18:14:31 +00:00
Nick Clifton
5cb1517bba
imprrove error message
2001-05-02 11:33:12 +00:00
H.J. Lu
f4ddc5e633
2001-04-29 Keith M Wesolowski <wesolows@foobazco.org>
...
* config/tc-mips.c (md_parse_option): Also accept
elf64-tradbigmips and elf64-tradlittlemips for OPTION_64.
2001-04-29 17:58:39 +00:00
H.J. Lu
fa7fda74e9
2001-04-27 David Mosberger <davidm@hpl.hp.com>
...
* config/tc-ia64.c (dot_spillmem_p): Fix output_spill_?sprel_p()
argument passing order: predicate goes last, not first.
2001-04-27 20:42:55 +00:00
Nick Clifton
16a0c2d4ec
Add ability to pad code alignment frags with no-ops.
2001-04-26 15:19:21 +00:00
Nick Clifton
ea3b9044a6
Check to see if the filename symbol has been initialised before extracting
...
its symbol index.
2001-04-25 09:11:31 +00:00
Nick Clifton
6840198f93
z8k fixes
2001-04-24 15:22:25 +00:00
Jason Eckhardt
1c97d17b13
2000-04-20 Jason Eckhardt <jle@redhat.com>
...
* config/tc-d10v.h (tc_frob_label): Update the symbol's frag
since frag_now can change after d10v_cleanup is called.
2001-04-20 23:38:37 +00:00
Alexandre Oliva
eb0dfd58c8
* config/tc-mn10300.c (md_assemble): Simplify offset adjustment of
...
pc-relative relocations not placed at the end of the instruction.
2001-04-14 06:53:57 +00:00
Jim Wilson
1deb8127a2
Fix latent bug exposed by a gcc-3 bug fix.
...
* tc-ia64.c (is_conditional_branch): Return true for br, brl, and br.
excluding br.i.
2001-04-14 03:51:40 +00:00
Jakub Jelinek
f5fa8ca231
bfd/
...
* libbfd-in.h (_bfd_merge_section): New.
(_bfd_write_merged_section): New.
(_bfd_merged_section_offset): New.
* libbfd.h: Rebuilt.
* linker.c (_bfd_generic_link_output_symbols): Handle
discard_sec_merge.
* aoutx.h (aout_link_write_symbols): Likewise.
* pdp11.c (aout_link_write_symbols): Likewise.
* elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section.
(elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE
sections.
(elf_link_sec_merge_syms): New.
(elf_link_input_bfd): Call _bfd_merged_section_offset
and _bfd_write_merged_section.
Handle discard_sec_merge.
* elf-bfd.h (struct elf_link_hash_table): Add merge_info
field.
(struct bfd_elf_section_data): Likewise.
* elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and
SEC_STRINGS section flags and entsize from their ELF counterparts.
(_bfd_elf_link_hash_table_init): Initialize merge_info.
(elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize
from their BFD counterparts.
* merge.c: New file.
* Makefile.am: Add strtab.lo.
* Makefile.in: Rebuilt.
include/
* bfdlink.h (bfd_link_discard): Add discard_sec_merge.
gas/
* config/obj-elf.c (obj_elf_change_section): Add entsize argument,
handle SHF_MERGE and SHF_STRINGS.
(obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS.
(obj_elf_section): Allow additional argument specifying entity size.
* write.c (adjust_reloc_syms): Keep relocations against local symbols
in SEC_MERGE sections.
ld/
* ldmain.c (main): Default to discard_sec_merge.
* lexsup.c (OPTION_DISCARD_NONE): Define.
(ld_options): Add --discard-none.
(parse_args): Handle OPTION_DISCARD_NONE.
* ldlang.c (wild_doit): SEC_MERGE should be set in the output
section only if SEC_MERGE and SEC_STRINGS flags and entsize of
all its input sections match.
2001-04-13 00:34:36 +00:00
Alexandre Oliva
a8a22e3365
* expr.c (operand): Pass &c to md_parse_name().
...
* config/tc-ia64.h, config/tc-ppc.h, config/tc-tic54x.h: Adjust.
2001-04-12 07:03:10 +00:00
H.J. Lu
af9539e4e5
2001-04-07 Steven J. Hill <sjhill@cotw.com>
...
* config/tc-mips.c: Support ELF64 for traditional MIPS targets.
* Makefile.am: (TARG_ENV_HFILES): Add tc-mips.h.
* Makefile.in: Regenerated.
* configure.in: Use traditional MIPS targets for Linux/MIPS.
* configure: Regenerated.
2001-04-08 05:09:21 +00:00
Alexandre Oliva
4dfea10551
* config/tc-mn10300.c (xr_registers): Added `pc'.
2001-04-06 07:50:48 +00:00
Alan Modra
e66457fbf3
Fix more breakages from the multiple relax pass patch.
2001-04-05 04:21:36 +00:00
Hans-Peter Nilsson
ed67db7ab9
* config/tc-cris.c (cris_insn_first_word_frag): New.
...
(md_assemble): Call cris_insn_first_word_frag to get the first
frag in an insn, not frag_more. Don't call dwarf2_emit_insn at
end. Drop variable insn_size.
(gen_bdap): Call cris_insn_first_word_frag, not frag_more.
(cris_sym_leading_underscore): Wrap first as_bad parameter in _().
(cris_sym_no_leading_underscore, s_cris_file, s_cris_loc): Ditto.
2001-04-04 04:23:20 +00:00
Hans-Peter Nilsson
c335d39444
* config/tc-cris.c (md_estimate_size_before_relax) <case
...
ENCODE_RELAX (STATE_CONDITIONAL_BRANCH, STATE_UNDF)>: Don't emit
32-bit branch, just set fragP->fr_subtype. Set fragP->fr_var.
<all cases>: Always set fragP->fr_var using md_cris_relax_table.
Add cases to cover all relax states.
2001-04-04 03:53:12 +00:00
Alan Modra
1a5447b835
Pass finalize_syms on calls to resolve_symbol_value.
2001-03-30 07:07:11 +00:00
Alan Modra
93c2a809af
Prepare for multi-pass relaxation.
2001-03-30 00:06:10 +00:00
Hans-Peter Nilsson
d551a338e2
* config/tc-cris.h (tc_fix_adjustable): Allow only
...
BFD_RELOC_CRIS_32_GOTREL of the PIC relocs.
* config/tc-cris.c (cris_get_pic_suffix): Correct reloc used in
example to valid.
2001-03-29 02:29:38 +00:00
Alan Modra
8a238888b4
Default hppa64 to ".level 2.0w"
2001-03-28 14:13:46 +00:00
Nick Clifton
07855becf9
Do not optimize BFD_RELOC_390_GOTENT relocs.
...
Always generate relocs for VT_ relocs.
2001-03-26 19:38:33 +00:00
Nick Clifton
0285c67df1
Automate generate on man pages
2001-03-25 20:32:31 +00:00
Alan Modra
551c1ca176
Accept an absolute expression for index scale factor.
2001-03-25 05:57:09 +00:00
Hans-Peter Nilsson
08caf3f870
* config/tc-cris.[ch]: Tweak attribution. Fix typos. PIC support.
2001-03-23 05:27:42 +00:00
Alan Modra
2e98d2de04
Fix register name printed in warning message.
2001-03-19 11:28:20 +00:00
Stephane Carrez
e629c13fd6
* config/tc-m68hc11.c (md_pseudo_table): Recognize xrefb to comply
...
with 'Motorola specification for assembly language input standard'.
2001-03-18 10:14:13 +00:00
Jim Wilson
4d5a53ff76
Add local tag support. Don't flush instructions for .xdata directives.
...
* config/tc-ia64.c (md): New member keep_pending_output.
(ia64_flush_pending_output): Flush only if md.keep_pending_output
is not set.
(dot_xdata): Turn on md.keep_pending_output for the duration of
this function.
(dot_xfloat_cons): Ditto.
(dot_xstringer): Ditto.
(dot_xdata_ua): Ditto.
(dot_xfloat_cons_ua): Ditto.
* config/tc-ia64.c (ia64_unrecognized_line, case '['): Add local
label support.
2001-03-16 04:56:31 +00:00
Alexandre Oliva
19c0258a7f
* config/tc-sh.c (parse_reg): Match capital MACH and MACL.
2001-03-16 02:11:05 +00:00