mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-10-13 10:55:46 +08:00
* read.c (cons): Conditionalize parsing of expression. Move
putting value into object file into separate function. Separate out MRI and WANT_BITFIELDS cases into separate functions. (emit_expr): New function to write data into object file. Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on processor types. (parse_bitfield_cons): New function to parse bitfield expressions as used by i960 assemblers. Only compiled if BITFIELD_CONS_EXPRESSIONS is defined. (parse_mri_cons): New function to parse MRI style strings. Only compiled if MRI is defined. (parse_repeat_cons): New function to parse repeat counts. Only compiled if REPEAT_CONS_EXPRESSIONS is defined. * read.h (emit_expr): Added declaration of new function. * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32. * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD. * config/tc-hppa.c (parse_cons_expression_hppa): New function to parse a HPPA expression, rather than special case in cons function. (cons_fix_new_hppa): New function to emit an HPPA fixup, rather than special case in emit_expr function. * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW): Define to use new functions from tc-hppa.c. * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define. (WANT_BITFIELDS): Removed; now obsolete. * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define. * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an NS32K fixup, rather than special case in emit_expr function. * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be cons_fix_new_ns32k. Also use PARAMS rather than checking __STDC__. * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32. * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents): Don't core dump if gas has no information about a section.
This commit is contained in:
193
gas/ChangeLog
193
gas/ChangeLog
@ -1,21 +1,180 @@
|
|||||||
|
Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
|
||||||
|
|
||||||
|
* read.c (cons): Conditionalize parsing of expression. Move
|
||||||
|
putting value into object file into separate function. Separate
|
||||||
|
out MRI and WANT_BITFIELDS cases into separate functions.
|
||||||
|
(emit_expr): New function to write data into object file.
|
||||||
|
Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
|
||||||
|
processor types.
|
||||||
|
(parse_bitfield_cons): New function to parse bitfield expressions
|
||||||
|
as used by i960 assemblers. Only compiled if
|
||||||
|
BITFIELD_CONS_EXPRESSIONS is defined.
|
||||||
|
(parse_mri_cons): New function to parse MRI style strings. Only
|
||||||
|
compiled if MRI is defined.
|
||||||
|
(parse_repeat_cons): New function to parse repeat counts. Only
|
||||||
|
compiled if REPEAT_CONS_EXPRESSIONS is defined.
|
||||||
|
* read.h (emit_expr): Added declaration of new function.
|
||||||
|
* config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
|
||||||
|
* config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
|
||||||
|
* config/tc-hppa.c (parse_cons_expression_hppa): New function to
|
||||||
|
parse a HPPA expression, rather than special case in cons
|
||||||
|
function.
|
||||||
|
(cons_fix_new_hppa): New function to emit an HPPA fixup, rather
|
||||||
|
than special case in emit_expr function.
|
||||||
|
* config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
|
||||||
|
Define to use new functions from tc-hppa.c.
|
||||||
|
* config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
|
||||||
|
(WANT_BITFIELDS): Removed; now obsolete.
|
||||||
|
* config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
|
||||||
|
* config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
|
||||||
|
NS32K fixup, rather than special case in emit_expr function.
|
||||||
|
* config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
|
||||||
|
cons_fix_new_ns32k. Also use PARAMS rather than checking
|
||||||
|
__STDC__.
|
||||||
|
* config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
|
||||||
|
|
||||||
|
* write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
|
||||||
|
Don't core dump if gas has no information about a section.
|
||||||
|
|
||||||
|
Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
||||||
|
|
||||||
|
* write.c (relax_and_size_seg): Always fully process a section.
|
||||||
|
Section size is last frag's (vm)address plus its size. If no
|
||||||
|
relocations are present, force SEC_RELOC flag clear.
|
||||||
|
(dump_section_relocs): New debugging routine.
|
||||||
|
(adjust_reloc_syms): New routine, broken out from write_contents.
|
||||||
|
Don't adjust relocs that are already relative to section symbol.
|
||||||
|
Look for obj_fix_adjustable macro to know what else to skip,
|
||||||
|
instead of obj_write_symbol. Look for section symbol stored in
|
||||||
|
section information.
|
||||||
|
(write_object_file): Map adjust_reloc_syms over all sections.
|
||||||
|
(write_contents): Clear SEC_RELOC flag if no relocations are
|
||||||
|
found.
|
||||||
|
|
||||||
|
* as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
|
||||||
|
keep it quiet.
|
||||||
|
|
||||||
|
* write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
|
||||||
|
|
||||||
|
Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
||||||
|
|
||||||
|
* as.h (strstr): Disable declaration for now.
|
||||||
|
(fprint_value, sprint_value): Declare.
|
||||||
|
|
||||||
|
* subsegs.c (subseg_new_rest): Use memset to clear new frag.
|
||||||
|
(subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
|
||||||
|
|
||||||
|
* expr.c (expr_part): Made sanity checks a.out-specific.
|
||||||
|
(expr): Disabled sanity checks.
|
||||||
|
|
||||||
|
* subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
|
||||||
|
section symbol.
|
||||||
|
* subsegs.c (subseg_change): Initialize section symbol pointer
|
||||||
|
when setting up a new section.
|
||||||
|
|
||||||
|
* symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
|
||||||
|
field back at gas symbol structure.
|
||||||
|
|
||||||
|
* symbols.c (colon): Cast obstack_next_free value to char* before
|
||||||
|
doing arithmetic on it.
|
||||||
|
* subsegs.c (subseg_new_rest): Likewise.
|
||||||
|
* as.h (frag_now_fix): Likewise.
|
||||||
|
|
||||||
|
* config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
|
||||||
|
calling bfd_make_section_old_way directly, and call subseg_set
|
||||||
|
instead of subseg_change. Now returns void.
|
||||||
|
(obj_elf_write_symbol): Only check local symbols for now.
|
||||||
|
(elf_stab_symbol): Now static and void, and disabled until it
|
||||||
|
works completely.
|
||||||
|
(obj_elf_size): For expression values, fail silently for now.
|
||||||
|
(obj_symbol_new_hook): Do nothing.
|
||||||
|
|
||||||
|
* config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
|
||||||
|
relocation.
|
||||||
|
(s_local) [OBJ_ELF]: New function.
|
||||||
|
(md_pseudo_table) [OBJ_ELF]: Call it for "local".
|
||||||
|
(s_common): Rearrange to handle Solaris .common pseudo, which may
|
||||||
|
sometimes use bss space instead of common.
|
||||||
|
* config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
|
||||||
|
|
||||||
Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
||||||
|
|
||||||
* configure.in: set host config to hpux for hppa*-hp-hpux
|
* configure.in: set host config to hpux for hppa*-hp-hpux
|
||||||
|
|
||||||
|
Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
||||||
|
|
||||||
|
* app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
|
||||||
|
|
||||||
|
Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
||||||
|
|
||||||
|
* subsegs.c (subseg_new): Don't special-case a.out -R flag here.
|
||||||
|
* config/obj-aout.c (s_sect): Do it here.
|
||||||
|
|
||||||
|
* as.h (BAD_CASE): Don't make some lame compilers think we want
|
||||||
|
substitution inside strings.
|
||||||
|
|
||||||
|
* as.c (print_version_id): New function, split off from main.
|
||||||
|
(main): Call it.
|
||||||
|
* config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
|
||||||
|
for -V. Ignore -Q and -s options for now.
|
||||||
|
|
||||||
Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
||||||
|
|
||||||
* Makefile.in: make installation & builds work again for crosses
|
* Makefile.in: make installation & builds work again for crosses
|
||||||
|
|
||||||
|
Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
|
||||||
|
|
||||||
|
* listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
|
||||||
|
symbol values correctly.
|
||||||
|
|
||||||
|
* write.c (write_object_file): Deleted unused variables.
|
||||||
|
(fixup_segment): Use sprint_value.
|
||||||
|
|
||||||
|
* messages.c (sprint_value, fprint_value): New routines.
|
||||||
|
|
||||||
|
* config/obj-elf.c (elf_stab_symbol): Now returns void.
|
||||||
|
(obj_elf_stab_generic): Fix typo in logic.
|
||||||
|
|
||||||
|
* Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
|
||||||
|
|
||||||
|
* as.h (addressT, offsetT): New types, using BFD types if
|
||||||
|
available.
|
||||||
|
(relax_addressT, struct frag): Use them.
|
||||||
|
* struc-symbol.h (valueT, struct broken_word): Likewise.
|
||||||
|
|
||||||
|
* as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
|
||||||
|
* subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
|
||||||
|
|
||||||
Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
|
Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
|
||||||
|
|
||||||
* Makefile.in: canonicalize install.sh; for use within
|
* Makefile.in: canonicalize install.sh; for use within
|
||||||
this directory (and subdirs)
|
this directory (and subdirs)
|
||||||
|
|
||||||
Thu Jun 17 14:56:07 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
|
||||||
|
|
||||||
* config/obj-coffbfd.c (fill_section): Don't allow fills backwards.
|
* m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
|
||||||
* config/tc-sh (get_specific, md_convert_frag,
|
specified, should have both S1 and S2 fields identical
|
||||||
md_estimate_size_before_relax): Add support for rest of opcodes.
|
If only finding the problem was as fast as fixing the bug !!!!
|
||||||
|
|
||||||
|
Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
||||||
|
|
||||||
|
* write.c (write_contents): Do write out non-loadable sections.
|
||||||
|
Debug sections can fall in this category.
|
||||||
|
|
||||||
|
* read.c (s_app_file): Call elf_file_symbol for ELF files.
|
||||||
|
* config/obj-elf.c (elf_file_symbol): New function.
|
||||||
|
|
||||||
|
* config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
|
||||||
|
added argument to specify section base name.
|
||||||
|
(obj_elf_stab_generic): Renamed from ..._stab. New argument
|
||||||
|
specifies section base name.
|
||||||
|
(obj_elf_stab): New function, calls obj_elf_stab_generic with
|
||||||
|
".stab" as section base name.
|
||||||
|
(obj_elf_xstab): New function, calls obj_elf_stab_generic.
|
||||||
|
(obj_elf_type): Handle "object". Use bitwise-or to merge in
|
||||||
|
symbol flags rather than simply replacing, so global/local flags
|
||||||
|
are preserved.
|
||||||
|
(obj_elf_ident): Rewrite.
|
||||||
|
|
||||||
Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
|
||||||
|
|
||||||
@ -28,6 +187,32 @@ Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
|
|||||||
* config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
|
* config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
|
||||||
target.
|
target.
|
||||||
|
|
||||||
|
Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
|
||||||
|
|
||||||
|
* config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
|
||||||
|
don't exist or duplicate other inclusions.
|
||||||
|
|
||||||
|
* config/tc-vax.h (NO_RELOC): Define.
|
||||||
|
|
||||||
|
Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
|
||||||
|
|
||||||
|
* gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
|
||||||
|
* gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
|
||||||
|
char to reg_prefix instead of to 'r'.
|
||||||
|
(calcop): Change calls to get_reg.
|
||||||
|
(calcop): Handle new case 'x' to set reg_prefix.
|
||||||
|
(calcop): Set reg_prefix to 'r' after each call to get_reg.
|
||||||
|
(cmpslot): Add 88110 conditions.
|
||||||
|
|
||||||
|
* gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
|
||||||
|
|
||||||
|
* gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
|
||||||
|
before returning.
|
||||||
|
|
||||||
|
* gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
|
||||||
|
adjacent; mov.s and mov.d swapped.
|
||||||
|
(m88k_opcodes): Fix typo `r2' -> `2'.
|
||||||
|
|
||||||
Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
|
||||||
|
|
||||||
* config/h8300.c: Support for H8/300-H opcodes.
|
* config/h8300.c: Support for H8/300-H opcodes.
|
||||||
|
@ -33,10 +33,12 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||||||
on the h8, this is allways true, since no fixup is done
|
on the h8, this is allways true, since no fixup is done
|
||||||
*/
|
*/
|
||||||
#define TC_COUNT_RELOC(x) (x->fx_addsy)
|
#define TC_COUNT_RELOC(x) (x->fx_addsy)
|
||||||
/* end of tc-a29k.h */
|
#define TC_CONS_RELOC RELOC_32
|
||||||
|
|
||||||
#define COFF_FLAGS F_AR32W
|
#define COFF_FLAGS F_AR32W
|
||||||
#define reloc_type int
|
#define reloc_type int
|
||||||
#define NEED_FX_R_TYPE
|
#define NEED_FX_R_TYPE
|
||||||
|
|
||||||
#define ZERO_BASED_SEGMENTS
|
#define ZERO_BASED_SEGMENTS
|
||||||
|
|
||||||
|
/* end of tc-a29k.h */
|
||||||
|
Reference in New Issue
Block a user