Ian Lance Taylor [Wed, 16 Aug 1995 17:18:00 +0000 (17:18 +0000)]
* expr.c (operand): Add support for .startof. and .sizeof. by
using magic symbol names which the linker will recognize
specially.
* doc/as.texinfo: Take out note that .startof. and .sizeof. are
not supported.
Ian Lance Taylor [Wed, 16 Aug 1995 16:28:00 +0000 (16:28 +0000)]
* gas/mips/*.d: Change all test names to say MIPS.
Ian Lance Taylor [Wed, 16 Aug 1995 16:26:57 +0000 (16:26 +0000)]
* ldgram.y: Tweak casesymlist to avoid bison errors.
Ian Lance Taylor [Wed, 16 Aug 1995 15:50:27 +0000 (15:50 +0000)]
* lexsup.c (parse_args): Accept -h as a synonym for --soname, for
Solaris compatibility.
Fred Fish [Wed, 16 Aug 1995 07:37:19 +0000 (07:37 +0000)]
* gdb.base/Makefile.in: Add action to .c.o transformation
rule that generates a .ci file for each .o file and remove
explicit .c.o rules except for callfuncs.o.
* gdb.c++/Makefile.in: Add .cc.o transformation rule that
generates a .ci file for each .o file and remove explicit
.cc.o rules.
(clean): Remove *.tmp *.ci files.
(EXECUTABLES): Remove templ-info.exp.
* gdb.base/compiler.c: New file.
* gdb.c++/compiler.cc: New file
* gdb.base/scope.exp: Source gdb.base/scope.ci.
Change rs6000-*-* xfail for
"print 'scope0.c'::filelocal_ro" and
"print 'scope1.c'::filelocal" and
"print 'scope1.c'::filelocal_bss" and
"print 'scope1.c'::filelocal_ro" and
"print 'scope1.c'::foo::funclocal" and
"print 'scope1.c'::foo::funclocal_ro" and
"print 'scope1.c'::bar::funclocal" and
"print 'scope0.c'::filelocal_ro" and
"print 'scope1.c'::filelocal at foo" and
"print 'scope1.c'::filelocal_bss at foo" and
"print 'scope1.c'::filelocal_ro at foo" and
"print 'scope1.c'::foo::funclocal at foo" and
"print 'scope1.c'::foo::funclocal_bss at foo" and
"print 'scope1.c'::foo::funclocal_ro at foo" and
"print 'scope1.c'::bar::funclocal at foo" and
"print 'scope0.c'::filelocal_ro" and
"print 'scope1.c'::filelocal" and
"print 'scope1.c'::filelocal_bss" and
"print 'scope1.c'::filelocal_ro" and
"print 'scope1.c'::foo::funclocal" and
"print 'scope1.c'::foo::funclocal_bss" and
"print 'scope1.c'::foo::funclocal_ro" and
"print 'scope1.c'::bar::funclocal" and
"print 'scope1.c'::bar::funclocal_bss"
to only be xfail'd when not compiled with gcc.
Add rs6000-*-* xfail for
"print 'scope0.c'::filelocal_bss before run"
when compiled with gcc.
(test_at_main): Add rs6000-*-* xfail for
"print filelocal_ro in test_at_main"
when compiled with gcc.
* gdb.base/ptype.exp: Source gdb.base/ptype.ci.
Add rs6000-*-aix* xfail for
"whatis unnamed typedef'd enum (compiler bug in IBM's xlc)" and
"ptype t_char_array", not compiled with gcc.
* gdb.base/list.exp (test_list_function): Add rs6000-*-*
xfail for "list foo (in include file)" when gcc compiled.
* gdb.base/funcargs.exp: Source gdb.base/funcargs.ci
(integral_args): Add rs6000-*-* xfail for
"run to call0a" if not compiled with gcc.
(unsigned_integral_args): Add rs6000-*-* xfail for
"run to call1a" if not compiled with gcc.
(float_and_integral_args): Add rs6000-*-* xfail for
"run to call2a" if not compiled with gcc and for
"continue to call2b" for any compiler.
Add rs6000-*-* xfail to
"print f1 after run to call2a" for gcc compiled.
(discard_and_shuffle): Add rs6000-*-* xfail for
"run to call6a".
(shuffle_round_robin): Add rs6000-*-* xfail for
"backtrace from call7a" if not compiled with gcc.
Add rs6000-*-* xfail for
"backtrace from call7b" if compiled with gcc.
(call_after_alloca): Add rs6000-*-* xfail for
"print c in call_after_alloca" and
"print s in call_after_alloca" and
"backtrace from call_after_alloca_subr"
if not compiled with gcc.
(localvars_in_indirect_call): Add rs6000-*-* xfail for
"print c in localvars_in_indirect_call" and
"print c in localvars_in_indirect_call" and
"backtrace in indirectly called function" and
"stepping into indirectly called function"
if not compiled with gcc.
(localvars_after_alloca): Add rs6000-*-* xfail for
"print c after runto localvars_after_alloca" and
"print s after runto localvars_after_alloca" and
"print i after runto localvars_after_alloca" and
"print l after runto localvars_after_alloca"
for all compilers.
* gdb.base/whatis.exp: Source gdb.base/whatis.ci rather
than whatis-info.exp.
* gdb.base/opaque.exp: Source gdb.base/opaque0.ci rather
than opaque-info.exp.
Setup rs6000-*-* xfail for
"ptype on opaque struct pointer (statically)" and
"ptype on opaque struct pointer (dynamically)" when
not compiled with gcc.
* gdb.base/callfuncs.exp: Source gdb.base/callfuncs.ci
rather than callf-info.exp.
(do_function_calls): Add clear_xfail for rs6000-*-* for
"p t_float_values2(3.14159,float_val2)". Seems to work
fine there, both with xlc and gcc. Need to find out what
it is doing right and fix other platforms.
* gdb.base/callfuncs.exp: Add rs6000-*-* xfail for
"call inferior func with struct - returns int",
"call inferior func with struct - returns long",
"call inferior func with struct - returns float",
"call inferior func with struct - returns double",
"call inferior func with struct - returns char *",
but only if not gcc compiled (presumes xlc compiled).
Change rs6000-*-* xfails for
"call inferior func with struct - returns char" and
" call inferior func with struct - returns short" to only
xfail if not using gcc.
(clean mostlyclean): Remove *.ci and *.tmp files.
* gdb.c++/templates.exp: Source gdb.c++/templates.ci rather
than templ-info.exp.
* gdb.base/langs.exp: Source gdb.base/langs.ci.
Add rs6000-*-* xfail for "up to foo in langs.exp"
"up to cppsub_ in langs.exp" and "up to fsub in langs.exp"
when not gcc compiled.
Jason Molenda [Wed, 16 Aug 1995 04:06:53 +0000 (04:06 +0000)]
all v2.2 && v2.3 autoconf-generated configure scripts updated to
autoconf v2.4 (not a very big change). fixes PR 7695.
Ian Lance Taylor [Tue, 15 Aug 1995 21:37:19 +0000 (21:37 +0000)]
* ld-scripts/script.exp: Split script verification into a proc.
Add simple test of MRI script.
* ld-scripts/scriptm.t: New file.
Ian Lance Taylor [Tue, 15 Aug 1995 21:35:46 +0000 (21:35 +0000)]
* ldgram.y (YYDEBUG): If not defined, define as 1.
(CASE, EXTERN, START): New tokens.
(mri_script_command): Handle CASE, EXTERN, INCLUDE, START.
(casesymlist): New nonterminal.
(extern_name_list): New nonterminal.
* ldlex.l: Accept lower case trailing base specifiers. Don't
ignore the first digit when the base is a suffix. Accept many
EXPRESSION state tokens in MRI state. Support MRI continuation
lines and MRI semicolon comments. Accept all MRI keywords in
lower case. Add CASE, EXTERN, and START MRI keywords.
Ian Lance Taylor [Tue, 15 Aug 1995 19:44:20 +0000 (19:44 +0000)]
* gas/mri/for.d, gas/mri/for.s: New test.
* gas/mri/if.d, gas/mri/if.s: New test.
* gas/mri/repeat.d, gas/mri/repeat.s: New test.
* gas/mri/while.d, gas/mri/while.s: New test.
* gas/mri/mri.exp: Run the new tests.
Ian Lance Taylor [Tue, 15 Aug 1995 19:42:47 +0000 (19:42 +0000)]
* config/tc-m68k.c (md_pseudo_table): Add MRI structured control
directives: if, if.b, if.w, if.l, else, else.s, else.l, endi,
break, break.s, break.l, next, next.s, next.l, for, for.b, for.w,
for.l, endf, repeat, until, until.b, until.w, until.l, while,
while.b, while.w, while.l, endw.
(enum mri_control_type): Define.
(struct mri_control_info): Define.
(mri_control_stack): New static variable.
(mri_control_index): New static variable.
(mri_control_label): New static function.
(push_mri_control, pop_mri_control): New static functions.
(parse_mri_condition): New static function.
(parse_mri_control_operand): New static function.
(swap_mri_condition, reverse_mri_condition): New static functions.
(build_mri_control_operand): New static function.
(parse_mri_control_expression): New static function.
(s_mri_if, s_mri_else, s_mri_endi): New static functions.
(s_mri_break, s_mri_next): New static functions.
(s_mri_for, s_mri_endf): New static functions.
(s_mri_repeat, s_mri_until): New static functions.
(s_mri_while, s_mri_endw): New static functions.
* gasp.c (mrikinfo): Remove IF.
* expr.c (get_symbol_end): Accept \001 as part of a name.
Steve Chamberlain [Tue, 15 Aug 1995 14:53:24 +0000 (14:53 +0000)]
* remote.c (remote_write_bytes): Chop up large transfers.
Ken Raeburn [Tue, 15 Aug 1995 01:28:59 +0000 (01:28 +0000)]
* write.c (write_contents): Always do it the BFD_FAST_SECTION_FILL way.
Reformat and reindent that code to GNU standards.
(BFD_FAST_SECTION_FILL): Don't define.
Stan Shebs [Tue, 15 Aug 1995 01:10:44 +0000 (01:10 +0000)]
Departure of gcc.patch
Stan Shebs [Tue, 15 Aug 1995 01:07:54 +0000 (01:07 +0000)]
* gcc.patch: Remove, relevant only to long-ago versions of GCC.
Kung Hsu [Mon, 14 Aug 1995 22:15:16 +0000 (22:15 +0000)]
* blokcframe.c (inside_main_func): Add comments.
Ian Lance Taylor [Mon, 14 Aug 1995 22:00:21 +0000 (22:00 +0000)]
* gasp.c (do_align, get_any_string): Mark as static.
(do_assigna, do_assignc, new_file): Likewise.
Kung Hsu [Mon, 14 Aug 1995 21:42:17 +0000 (21:42 +0000)]
* blockframe.c (inside_main_func): Fix a typo in previous change.
Ian Lance Taylor [Mon, 14 Aug 1995 21:33:29 +0000 (21:33 +0000)]
* config/tc-m68k.c (s_reg): Rename local op to rop to avoid
confusion with macro op.
Ian Lance Taylor [Mon, 14 Aug 1995 20:59:36 +0000 (20:59 +0000)]
* gas/mri/expr.d: Permit leading zeroes, in case we're using a
64-bit BFD.
Kung Hsu [Mon, 14 Aug 1995 20:46:59 +0000 (20:46 +0000)]
* config/sparc/tm-sparclite.h: Define FRAME_CHAIN_VALID_ALTERNATE.
Kung Hsu [Mon, 14 Aug 1995 20:45:51 +0000 (20:45 +0000)]
* config/sparc/tm-sparclite.h: Define FRAME_CHAIN_VALID_ALTERNATE.
* blockframe.c (inside_main_func): If main func addr range not set,
try to set it now.
Jeff Law [Mon, 14 Aug 1995 20:10:21 +0000 (20:10 +0000)]
* config/tc-hppa.c (md_apply_fix): Don't try to apply BEGIN_BRTAB
or END_BRTAB fixups.
Ian Lance Taylor [Mon, 14 Aug 1995 20:06:03 +0000 (20:06 +0000)]
* gasp/mri/*: New tests.
* gasp/gasp.exp: Run them. Also, clean up the test names used in
pass and fail.
Ian Lance Taylor [Mon, 14 Aug 1995 20:03:38 +0000 (20:03 +0000)]
* gasp.c (strip_comments): Comment out; it's not used.
(do_end): Add parameter. In MRI mode, print it out.
(do_irp): New static function.
(sub_actual): Change parameter m to formal_hash, changing type
from macro_entryh * to hash_table *.
(macro_expand_body): New static function, broken out of
macro_expand.
(macro_expand): Call macro_expand_body.
(K_*): Fully parenthesize.
(K_IRP, K_IRPC): Define.
(mrikinfo): Add IRP and IRPC.
(process_pseudo_op): In MRI mode, print out END pseudo-op. Pass
line to do_end. Handle K_IRP and K_IRPC.
Ian Lance Taylor [Mon, 14 Aug 1995 19:50:12 +0000 (19:50 +0000)]
* config/tc-m68k.c (s_opt): Reset *input_line_pointer even if we
don't do anything with the option.
Ian Lance Taylor [Mon, 14 Aug 1995 16:43:17 +0000 (16:43 +0000)]
* aoutx.h (NAME(aout,machine_type)): Handle a machine of
bfd_mach_sparc or bfd_mach_sparc64.
Ian Lance Taylor [Mon, 14 Aug 1995 15:57:17 +0000 (15:57 +0000)]
* elflink.h (elf_link_add_object_symbols): If a symbol is a weak
definition, add it to the dynamic symbol table if any dynamic
object mentions it. If we do add it, make sure we add the
corresponding real symbol.
(elf_adjust_dynamic_symbol): Adjust a weak defined symbol which we
put in the dynamic symbol table, even if no regular object refers
to it.
* elf32-i386.c (elf_i386_check_relocs): When creating a shared
library, don't allocate space for a PC relative reloc against a
local symbol.
* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
* elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Change assertion
to accept symbol with weakdef set.
* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
* elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
* elf32-m68k.c (elf_m68k_relocate_section): When creating a shared
libary, don't copy over a PC relative reloc against a local
symbol.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
PR 7711.
Ian Lance Taylor [Sun, 13 Aug 1995 21:19:00 +0000 (21:19 +0000)]
* frags.c (frag_align): Handle absolute_section.
* write.c (record_alignment): Likewise.
Ken Raeburn [Sun, 13 Aug 1995 09:37:59 +0000 (09:37 +0000)]
fix up aug 8 log entry
Jeff Law [Sun, 13 Aug 1995 06:43:23 +0000 (06:43 +0000)]
* som.h (R_HPPA_BEGIN_BRTAB): Define.
(R_HPPA_END_BRTAB): Likewise.
* som.c (som_write_fixups): Handle R_BEGIN_BRTAB and R_END_BRTAB.
More PA optimization infrastructure.
Jeff Law [Sun, 13 Aug 1995 06:41:18 +0000 (06:41 +0000)]
* gas/sh/basic.exp: Update now that we know the right
bit patters for the new sts instructions.
Jeff Law [Sun, 13 Aug 1995 06:39:39 +0000 (06:39 +0000)]
* config/tc-hppa.c (md_pseudo_table): Add entries for
"begin_brtab" and "end_brtab" pseudo-ops.
(pa_brtab): New function.
(tc_gen_reloc, SOM version): Handle R_BEGIN_BRTAB and R_END_BRTAB.
(hppa_force_relocation): Force relocations for BRTAB fixups
when OBJ_SOM is defined.
More infrastructure for PA optimziations.
Jeff Law [Sun, 13 Aug 1995 06:11:38 +0000 (06:11 +0000)]
* config/powerpc/xm-aix.h (FIVE_ARG_PTRACE): Define.
* config/rs6000/xm-rs6000.h (FIVE_ARG_PTRACE): Likewise.
So we can build under aix4 with an ansi compiler (should not effect aix3
since aix3 doesn't have a ptrace prototype).
Jeff Law [Sat, 12 Aug 1995 22:50:04 +0000 (22:50 +0000)]
* configure.in: Recognize aix4 specially as some aspects
of aix4 need different handling than aix3.
* configure: Updated.
* config/powerpc/{aix4.mh,aix4.mt,tm-ppc-aix4.h}: New files
specific to aix4 support on the power pc.
* config/powerpc/tm-ppc-aix.h (DONT_RELOCATE_SYMFILE_OBJFILE): Do
not defined. The aix4 specific target files will do that.
* config/rs6000/{aix4,mh,aix4,mt,tm-rs6000-aix4.h}: New files
specific to aix4 support on the rs6000.
* config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR): Don't
do the conversion if the pointer is not a magic aix function
pointer.
* rs6000-tdep.c: Include objfiles.h and symtab.h.
(is_magic_function_pointer): New function.
* rs6000-tdep.c (skip_prologue): Refine check for frameless
functions. Handle b .+4 emitted by aix4 compilers. Only
allow one load of a minimal toc pointer. Handle aix4 compiler's
code for alloca.
* rs6000-tdep.c (find_toc_address): Report an error if no toc was
found rather than possibly core dumping.
* partial-stab.h: Handle extra field generated by the aix4 compiler
for enumerations.
* stabsread.c (read_enum_type): Likewise.
Jeff Law [Sat, 12 Aug 1995 22:11:33 +0000 (22:11 +0000)]
* gdb.base/callfuncs.exp: Add xfails for the powerpc.
* gdb.base/corefile.exp: Likewise.
* gdb.base/list.exp: Likewise.
* gdb.base/scope.exp: Likewise.
* gdb.base/siganls.exp: Likewise.
* gdb.base/nodebug.exp: Add xfails for the powerpc. Handle aix4
compiler output.
* gdb.base/whatis.exp: Likewise.
Peter Schauer [Sat, 12 Aug 1995 10:21:12 +0000 (10:21 +0000)]
* rs6000-tdep.c (extract_return_value): Fix returning of values
whose length is less than the register size for big endian targets.
Jim Wilson [Sat, 12 Aug 1995 01:03:16 +0000 (01:03 +0000)]
For Sega/Hitachi, when simulator exits, check to see if it was because
of a signal.
Ken Raeburn [Sat, 12 Aug 1995 00:49:19 +0000 (00:49 +0000)]
* Makefile.in (TE_OBJS): Add empty definition.
Ian Lance Taylor [Fri, 11 Aug 1995 23:49:17 +0000 (23:49 +0000)]
* gasp.c (change_base): Don't treat ' specially in MRI mode.
(process_file): Don't warn about missing END in MRI mode.
(do_if): New static function.
(get_mri_string, do_ifc): New static functions.
(buffer_and_nest): Treat MRI mode like alternate syntax mode.
(do_aendr): Change error message in MRI mode.
(do_arepeat): Use REPT/ENDR in MRI mode.
(do_formals): In MRI mode, add special NARG formal.
(macro_expand): Various changes for MRI mode: permit a qualifier
on the macro name; set special NARG formal; permit unnamed
positional arguments; use && to concatenate named parameters;
permit \d to specify an unnamed parameter; permit named parameters
to not start with \; use == to see if a parameter exists.
(getstring): In MRI mode, allow <> to quote a string.
(K_IFEQ, K_IFNE, K_IFLT, K_IFLE, K_IFGE, K_IFGT): Define.
(K_IFC, K_IFNC): Define.
(struct keyword): Name structure used in kinfo array.
(mrikinfo): New static array.
(process_pseudo_op): Don't require leading '.' in MRI mode.
Handle new MRI pseudo-op definitions.
(add_keyword): New static function, broken out of process_init.
(process_init): Use add_keyword. In MRI mode, add mrikinfo table.
(long_options): Add "mri".
(show_usage): Mention -M/--mri.
(main): Call process_init after processing arguments. Handle -M.
* doc/gasp.texi: Document -M/--mri.
Per Bothner [Fri, 11 Aug 1995 22:40:18 +0000 (22:40 +0000)]
* config.guess: Merge with FSF:
Wed Jun 28 17:57:27 1995 David Edelsohn <edelsohn@mhpcc.edu>
* config.guess (AIX4): More robust release numbering discovery.
Thu Jun 22 19:01:24 1995 Kenneth Stailey (kstailey@eagle.dol-esa.gov)
* config.guess (i386-sequent-ptx): Properly get version number.
Thu Jun 22 18:36:42 1995 Uwe Seimet (seimet@iris1.chemie.uni-kl.de)
* config.guess (mips:*:4*:UMIPS): New case.
Ian Lance Taylor [Fri, 11 Aug 1995 22:29:41 +0000 (22:29 +0000)]
* nm.c (main): Ignore -e.
PR 6758.
Kung Hsu [Fri, 11 Aug 1995 20:15:21 +0000 (20:15 +0000)]
* symtab.c (list_symbols): if break command set breakpoint on matched
symbol.
Jeff Law [Fri, 11 Aug 1995 19:39:26 +0000 (19:39 +0000)]
* gdb.disasm/sh3.exp (all_fp_misc_tests): No longer expect a
failure (opcode table has been fixed to match reality).
Michael Meissner [Fri, 11 Aug 1995 17:36:54 +0000 (17:36 +0000)]
Allow large addends for BFD_RELOC_{LO16,HI16,HI16_S} relocs.
Fred Fish [Fri, 11 Aug 1995 16:42:45 +0000 (16:42 +0000)]
* gdb.base/a1-selftest.exp: Change "i*86-*-sysv4" xfail for
"backtrace through signal handler" to "i*86-*-sysv4*".
* gdb.base/signals.exp: Add xfail for "'next' behaved as
continue" case. Add "known SVR4 bug" to fail message.
Add "i*86-*-bsdi2.0" xfail for "handle all print".
Add "i*86-*-bsdi2.0" xfail for "backtrace in signals_tests_1".
* gdb.base/ptype.exp: Add "i*86-*-sysv4*" xfail for
"whatis unnamed typedef'd enum..." and "ptype t_char_array".
* gdb.base/langs.exp: Add "i*86-*-sysv4*" xfail for
"up to foo in langs.exp", "show language at foo in
langs.exp", "up to cppsub_ in langs.exp", "show
language at cppsub_ in langs.exp", "up to fsub in
langs.exp", and "show language at fsub in langs.exp".
* gdb.base/corefile.exp: Add "i*86-*-sysv4*" to xfail for
"bactrace in corefile.exp".
* gdb.base/callfuncs.exp: Change xfail to "i*86-*-*" for
"call inferior function with struct - returns float" and
"call inferior function with struct - returns double".
Fred Fish [Fri, 11 Aug 1995 16:39:14 +0000 (16:39 +0000)]
* defs.h (strchr, strrchr, strstr, strtok, strerror): Enclose in
#ifndefs to protect against previous definitions as macros.
* HOW_TO_RELEASE: Continue updating...
Ken Raeburn [Fri, 11 Aug 1995 01:11:30 +0000 (01:11 +0000)]
* read.c (s_mri_sect) [BFD_ASSEMBLER]: Fix typos in choosing and setting
section flags.
Ken Raeburn [Thu, 10 Aug 1995 21:42:57 +0000 (21:42 +0000)]
put version number into doc from makefile
Ian Lance Taylor [Thu, 10 Aug 1995 21:18:21 +0000 (21:18 +0000)]
* doc/as.texinfo: Add documentation for MRI compatibility mode.
* doc/as.1: Likewise.
Ian Lance Taylor [Thu, 10 Aug 1995 20:12:11 +0000 (20:12 +0000)]
* coffgrok.c (do_type): Handle array dimensions the same way gdb
does.
Ian Lance Taylor [Thu, 10 Aug 1995 19:58:56 +0000 (19:58 +0000)]
* coffswap.h (coff_swap_aux_in): Swap the array dimensions
whenever x_fcnary is not being used for something else, rather
than only for an array.
(coff_swap_aux_out): Likewise.
PR 7373.
Ian Lance Taylor [Thu, 10 Aug 1995 16:43:00 +0000 (16:43 +0000)]
* config/tc-m68k.c (m68k_ip): When recognizing '#', use isbyte and
iword rather than expr8 and expr16. When recognizing 'M', use
issbyte rather than expr8. When recognizing 'Q' and 't', just
check for O_constant rather than using expr8.
* config/m68k-parse.h (expr8, expr16): Don't define.
* Makefile.in (m68k-parse.o): Depend upon m68k-parse.h, not
m68k-parse.y.
Ian Lance Taylor [Thu, 10 Aug 1995 16:19:34 +0000 (16:19 +0000)]
* read.c (potable): Add spc, ttl, xcom, xref.
(s_mri_sect): New function.
* read.h (s_mri_sect): Declare.
* config/obj-coff.c (obj_coff_section) (both versions): In MRI
mode, call s_mri_sect.
(obj_pseudo_table): Add sect.s and section.s. Move sect outside
of ifndef BFD_ASSEMBLER.
* config/obj-elf.c (elf_pseudo_table): Add section.s, sect,
sect.s.
(obj_elf_section): In MRI mode, call s_mri_sect.
* config/tc-m68k.c (md_pseudo_table): Add restore, save.
(struct save_opts): Define.
(save_stack): New static variable.
(s_save, s_restore): New static functions.
Ian Lance Taylor [Thu, 10 Aug 1995 04:47:20 +0000 (04:47 +0000)]
* gas/mri/char.d: Fix for little endian machines.
* gas/mri/float.d: Likewise.
Ian Lance Taylor [Thu, 10 Aug 1995 04:44:59 +0000 (04:44 +0000)]
* read.c (s_set): Remove unused local ptr.
(hex_float): Check target_big_endian.
(equals): Remove unused local p.
* config/tc-a29k.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-h8500.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-hppa.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-i860.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-m68k.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-m88k.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-tahoe.h (TARGET_BYTES_BIG_ENDIAN): Define.
* config/tc-sh.c (little): Set target_big_endian.
(md_begin): Likewise.
(md_parse_option): Likewise.
(build_relax): Check target_big_endian rather than shl.
(build_Mytes, md_atof): Likewise.
(md_convert_frag, md_apply_fix): Likewise.
(md_number_to_chars): Likewise.
Ian Lance Taylor [Wed, 9 Aug 1995 23:22:13 +0000 (23:22 +0000)]
* config/tc-m68k.c (m68k_abspcadd): New static variable.
(m68k_quick): New static variable.
(m68k_rel32): New static variable.
(md_pseudo_table): Add opt and reg.
(m68k_ip): Permit absolute symbols in 'l'/'L' recognition. Check
m68k_quick in 'M' and 'Q' recognition. Check m68k_abspcadd in
DISP handling. Check m68k_rel32 in BASE/POST/PRE handling.
(md_begin): In MRI mode, initialize m68k_abspcadd and m68k_rel32.
In MRI mode, change unsized branch aliases to be variable sized.
(struct opt_action): Define.
(opt_table): Define.
(s_opt): New static function.
(skip_to_comma): New static function.
(opt_chip): New static function.
(opt_list): New static function.
(opt_list_symbols): New static function.
(s_reg): New static function.
* as.h (flag_keep_locals): Change from unsigned char to int.
(flag_no_warnings): Likewise.
Ian Lance Taylor [Wed, 9 Aug 1995 23:16:06 +0000 (23:16 +0000)]
* read.c (mri_line_label): Make non-static.
(potable): Add nopage, page, plen.
(s_org): Error if in MRI mode.
* read.h (mri_line_label): Declare.
* listing.c (listing_nopage): New function.
* listing.h (listing_nopage): Declare.
Ian Lance Taylor [Wed, 9 Aug 1995 23:13:30 +0000 (23:13 +0000)]
* symbols.c (symbol_begin): Set sy_frag of abs_symbol to
&zero_address_frag.
Kung Hsu [Wed, 9 Aug 1995 21:56:37 +0000 (21:56 +0000)]
* xcoffread.x (xcoff_symfile_offset): Revert an unwanted change gets
in accidentally from Aug 1 checkin.
Steve Chamberlain [Wed, 9 Aug 1995 20:41:16 +0000 (20:41 +0000)]
* remote-hms.c (hms_cmds): Get reg term right.
* monitor.c (monitor_fetch_register): If we see
a non-hex digit, just stop reading.
* remote.c (remote_wait): Change way $O is handled.
Ian Lance Taylor [Wed, 9 Aug 1995 19:38:01 +0000 (19:38 +0000)]
* gas/all/struct.s, gas/all/struct.d: New test.
* gas/all/gas.exp: Run it.
Ian Lance Taylor [Wed, 9 Aug 1995 19:36:25 +0000 (19:36 +0000)]
* read.c (abs_section_offset): New global variable.
(potable): Add offset, struct.
(do_org): New static function; handle changing the origin in the
absolute section.
(s_org): Use do_org.
(s_set): Likewise.
(equals): Likewise.
(s_space): In absolute_section, just increase abs_section_offset.
(s_struct): New function.
(emit_expr): Handle absolute_section specially.
* read.h (abs_section_offset): Declare.
(s_struct): Declare.
* read.c (potable): Add ifeq, ifge, ifgt, ifle, iflt, ifne.
Change if to pass O_ne to s_if.
(read_a_source_file): Don't define an label without a colon if
ignore_input returns true.
* read.c (potable): Add dcb, dcb.b, dcb.d, dcb.l, dcb.s, dcb.w,
dcb.x, ds.d, ds.p, ds.s, ds.x, elsec, endc, fail, format, llen,
noformat.
(read_a_source_file): If pseudo-op handler is s_end, quit
immediately.
(s_end): New function.
(s_fail): New function.
(s_float_space): New function.
(hex_float): New static function.
(float_cons): Use hex_float.
* read.h (s_fail): Declare.
(s_float_space): Declare.
Ian Lance Taylor [Wed, 9 Aug 1995 19:34:00 +0000 (19:34 +0000)]
* write.c (adjust_reloc_syms): Check that symbol is not NULL
before checking sy_mri_common.
(fixup_segment): Likewise.
* config/obj-coff.c (fixup_segment): Likewise.
Ian Lance Taylor [Wed, 9 Aug 1995 19:33:17 +0000 (19:33 +0000)]
* frags.c (frag_more): Warn if in absolute_section.
(frag_now_fix): In absolute_section, return abs_section_offset.
* subsegs.c (subseg_change): If switching to absolute_section,
just set now_seg and now_subseg.
(subseg_set_rest): Special handling when switching to or from
absolute_section.
Ian Lance Taylor [Wed, 9 Aug 1995 19:32:49 +0000 (19:32 +0000)]
* config/tc-m68k.c (m68k_float_copnum): New static variable.
(md_pseudo_table): Add fopt and mask2.
(m68k_ip): Use m68k_float_copnum, not COPNUM, when setting
coprocessor register to use. In case 'I' when checking operands,
correct coprocessor register numbers. In case 'I' when setting
operands, don't add 1.
(s_fopt): New static function.
* config/m68k-parse.h (COPNUM): Don't define.
Ian Lance Taylor [Wed, 9 Aug 1995 19:32:03 +0000 (19:32 +0000)]
* listing.c (listing_psize): Treat argument as indicating whether
a height is expected.
Jeff Law [Wed, 9 Aug 1995 18:59:48 +0000 (18:59 +0000)]
Fix typo in changelog entry.
Jeff Law [Wed, 9 Aug 1995 18:53:41 +0000 (18:53 +0000)]
* configure.in (powerpc-*-aix*): Recognize as a new gdb host
and target.
(powerpc-*-eabi*): Don't set configdirs.
(powerpcle-*-eabi*0: Likewise.
* configure: Updated.
* rs6000-nat.c (vmap_ldinfo): Don't relocate data addresses
for the main objfile if DONT_RELOCATE_SYMFILE_OBJFILE is
defined.
* config/powerpc/{aix.mh,aix.mh}: Host and target makefile fragments
for powerpc running aix4.
* config/powerpc/{nm-aix.h, tm-ppc-aix.h, xm-aix.h}: Native, target
and host include files for powerpc running aix4.
More of Mike's powerpc work + minor changes.
Ian Lance Taylor [Wed, 9 Aug 1995 15:44:05 +0000 (15:44 +0000)]
Add ChangeLog entry for accidental checkin of read.c.
Stan Shebs [Wed, 9 Aug 1995 15:16:33 +0000 (15:16 +0000)]
* top.c (target_output_hook): Really make it match defs.h (char *
is not the same as unsigned char *).
Ian Lance Taylor [Wed, 9 Aug 1995 14:53:21 +0000 (14:53 +0000)]
* configure.in: Move random special target handling before
possible break.
* configure: Rebuild.
Ian Lance Taylor [Wed, 9 Aug 1995 03:46:15 +0000 (03:46 +0000)]
Tue Aug 8 23:41:25 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
* configure.in: Consistently use ${target_cpu_type} rather than
${cpu_type} after the loop.
* configure: Rebuild.
* Makefile.in (targ-cpu.o): Use @target_cpu_type@ rather than
@cpu_type@.
Ken Raeburn [Wed, 9 Aug 1995 01:44:02 +0000 (01:44 +0000)]
* expr.h (operatorT): Remove comma after last enumerator value.
Ken Raeburn [Wed, 9 Aug 1995 01:39:47 +0000 (01:39 +0000)]
yet more vms work from pat rankin
Ken Raeburn [Wed, 9 Aug 1995 01:16:09 +0000 (01:16 +0000)]
* as.h (alloca): If __STDC__, declare void* instead of char*.
Steve Chamberlain [Wed, 9 Aug 1995 00:12:18 +0000 (00:12 +0000)]
* dlltool.c (mtable): New fields.
(ASM_RVA_BEFORE, ASM_RVA_AFTER): New.
(flush_page, gen_lib_file): Use new macros.
Steve Chamberlain [Tue, 8 Aug 1995 23:54:27 +0000 (23:54 +0000)]
Tue Aug 8 16:34:57 1995 steve chamberlain <sac@slash.cygnus.com>
* cofflink.c (_bfd_coff_generic_relocate_section): Remove most
of special case stuff for PE. Now handled by relocs.
* coff-i386.c (coff_i386_reloc): Special case of PE type 7s.
(howto_table): Type 7 is dir32-rva.
Ken Raeburn [Tue, 8 Aug 1995 23:31:28 +0000 (23:31 +0000)]
* emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Use xmalloc instead of
alloca.
J.T. Conklin [Tue, 8 Aug 1995 22:25:36 +0000 (22:25 +0000)]
* Makefile.in (CC_FOR_TARGET, CXX_FOR_TARGET): Don't use
$r/../gcc/xgcc unless it is present.
J.T. Conklin [Tue, 8 Aug 1995 22:15:20 +0000 (22:15 +0000)]
* Makefile.in (CXX_FOR_TARGET): Don't use ${rootme}/../gcc/xgcc
unless it is present.
Ian Lance Taylor [Tue, 8 Aug 1995 21:49:12 +0000 (21:49 +0000)]
* binutils-all/objcopy.exp: Add setup_xfail for a29k-*-vxworks*
for simple copy test.
Ian Lance Taylor [Tue, 8 Aug 1995 21:46:37 +0000 (21:46 +0000)]
* config/tc-m68k.c (archs): Add 68ec000, 68hc000, 68hc001,
68ec020, 68ec030, 68ec040, and 68330.
(md_pseudo_table): Add chip and comline.
(m68k_init_after_args): Use strcasecmp when comparing default_cpu
against architectures.
(mri_chip, s_chip): New static functions.
Ian Lance Taylor [Tue, 8 Aug 1995 21:41:52 +0000 (21:41 +0000)]
* gas/mri/common.s, gas/mri/common.d: New test.
* gas/mri/mri.exp: Run it.
Ian Lance Taylor [Tue, 8 Aug 1995 21:41:30 +0000 (21:41 +0000)]
* struc-symbol.h (struct symbol): Add sy_mri_common bit.
* read.h (mri_comon_symbol): Declare.
(s_mri_common): Declare.
* read.c (mri_line_label): New static variable.
(mri_common_symbol): New global variable.
(potable): Add "common" and "common.s".
(read_a_source_file): In MRI mode, set mri_line_label for a label
at the start of a line.
(s_mri_common): New function.
(s_space): Handle mri_common_symbol.
* symbols.c (colon): Change return value from void to symbolS *,
and return new symbol. If mri_common_symbol is set, attach the
new symbol to it.
(resolve_symbol_value): Handle an sy_mri_common symbol.
* symbols.h (colon): Change return value in declaration.
* subsegs.c (subseg_set_rest): Clear mri_common_symbol.
(subseg_set (both versions)): Likewise.
* frags.c (frag_more): Warn if mri_common_symbol is not NULL.
* write.c (adjust_reloc_syms): Skip sy_mri_common symbols.
(write_object_file): Discard sy_mri_common symbols.
(fixup_segment): Change relocations against sy_mri_common symbols
to be against the common symbol itself.
* config/obj-coff.c (yank_symbols): Discard sy_mri_common symbols.
(fixup_segment): Change relocations against sy_mri_common symbols
to be against the common symbol itself.
* config/obj-aout.c (obj_crawl_symbol_chain): Discard
sy_mri_common symbols.
Jeff Law [Tue, 8 Aug 1995 18:01:46 +0000 (18:01 +0000)]
* top.c (target_output_hook): Make declaration match the one
in defs.h.
Jeff Law [Tue, 8 Aug 1995 17:53:58 +0000 (17:53 +0000)]
* symfile.c (add_psymbol_to_list): Initialize SYMBOL_SECTION.
(add_psymbol_addr_to_list): Likewise.
* symfile.h (ADD_PSYMBOL_VT_TO_LIST): Likewise.
Jeff Law [Tue, 8 Aug 1995 17:31:52 +0000 (17:31 +0000)]
* configure.host: Recognize aix4 explicitly.
* rs6000-core.c (CORE_DATA_SIZE_FIELD): New macro to get a the size
of a core dump's data section. Provide alternate definition for aix4.
(SAVE_FIELD): Similarly for save state field (register info).
(STACK_END_ADDR): Provide definition suitable for aix4.
* config/{aix4.mh,aix4.mt}: New configuration files.
* hosts/aix4.h: Likewise.
Mike's aix4 changes, slightly modified.
Ian Lance Taylor [Tue, 8 Aug 1995 17:12:22 +0000 (17:12 +0000)]
* doc/c-m68k.texi: Add documentation for CPU specific options, and
for Motorola syntax.
Ian Lance Taylor [Tue, 8 Aug 1995 17:09:10 +0000 (17:09 +0000)]
* config/m68k-parse.y (motorola_operand): For (%pc), set mode to
DISP, not BASE.
Ken Raeburn [Tue, 8 Aug 1995 06:54:30 +0000 (06:54 +0000)]
* write.c (relax_align): Add extra padding for linkrelax only if
LINKER_RELAXING_SHRINKS_ONLY is defined.
* config/tc-i960.h (LINKER_RELAXING_SHRINKS_ONLY): Define it.
* doc/internals.texi (Relaxation): Write up some stuff on linker relaxing and
LINKER_RELAXING_SHRINKS_ONLY.
Ian Lance Taylor [Tue, 8 Aug 1995 03:48:22 +0000 (03:48 +0000)]
* gas/mri/mri.exp: Add setup_xfail for a29k*-*-* for constants
test.
Ian Lance Taylor [Tue, 8 Aug 1995 03:38:59 +0000 (03:38 +0000)]
* gasp/crash1.out, gasp/macro.out, gasp/sfunc.out: Complete
truncated files, so that the tests pass.
Ian Lance Taylor [Tue, 8 Aug 1995 03:35:44 +0000 (03:35 +0000)]
Move testsuite ChangeLog entries to testsuite/ChangeLog.
Ian Lance Taylor [Tue, 8 Aug 1995 03:22:47 +0000 (03:22 +0000)]
* gas/mri/mri.exp: Add setup_xfail for hppa*-*-* for equ,
constants, and expr.
Ian Lance Taylor [Tue, 8 Aug 1995 03:17:41 +0000 (03:17 +0000)]
* gas/m68k/all.exp: Run schwab test on hpux*, not just hpux. Run
on vxworks*, not just vxworks5.1.
Ian Lance Taylor [Tue, 8 Aug 1995 03:05:16 +0000 (03:05 +0000)]
* som.c (som_bfd_copy_private_symbol_data): Cast initializations
to avoid warnings.
Ian Lance Taylor [Tue, 8 Aug 1995 02:56:44 +0000 (02:56 +0000)]
* lib/gas-defs.exp (fail_phase, pass_phase): Remove.
(run_dump_test): Just call pass or fail.
Ian Lance Taylor [Tue, 8 Aug 1995 02:43:30 +0000 (02:43 +0000)]
* gas/m68k/operands.s, gas/m68k/operands.d: New test.
* gas/m68k/op68000.d: New test.
* gas/m68k/cas.s, gas/m68k/cas.d: New test.
* gas/m68k/bitfield.s, gas/m68k/bitfield.d: New test.
* gas/m68k/schwab.d: Run objdump with -j .text. Adjust for
changes to disassembler.
* gas/m68k/all.exp: Run new tests. Run schwab test for
m68k-*-coff*.
Ian Lance Taylor [Tue, 8 Aug 1995 02:36:10 +0000 (02:36 +0000)]
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
Steve Chamberlain [Mon, 7 Aug 1995 22:42:19 +0000 (22:42 +0000)]
* top.c (target_output_hook): New definition.