]> Git Repo - binutils.git/blobdiff - gas/ChangeLog
* read.c (cons_worker): Don't use #elif; old compilers don't
[binutils.git] / gas / ChangeLog
index 5cf71e59470f290c694f031992fed829770096a1..52f457f65d74fcd7af33210517d9175fa1901c8b 100644 (file)
@@ -1,5 +1,715 @@
+Thu Sep  7 12:33:58 1995  Ian Lance Taylor  <[email protected]>
+
+       * read.c (cons_worker): Don't use #elif; old compilers don't
+       support it.
+
+Wed Sep  6 21:13:06 1995  Ian Lance Taylor  <[email protected]>
+
+       * app.c (do_scrub_chars): In MRI mode, silently end quoted strings
+       at newline characters.  In MRI mode, always keep spaces in the
+       operands field.  In MRI mode, treat a line comment character as a
+       regular comment character following a space.
+       * cond.c (ignore_input): Use strncasecmp rather than strncmp when
+       looking for special pseudo-ops.
+       * read.c (cons_worker): In MRI mode, the expressions stop at the
+       first unquoted space.
+       (equals): Likewise.
+
+start-sanitize-sh3e
+Wed Sep  6 15:03:53 1995  Jim Wilson  <[email protected]>
+
+       * config/tc-sh.c (get_operands): Read third arg if it exists.
+       Otherwise, clear it.
+       (get_specific, case F_FR0): Add.
+
+end-sanitize-sh3e
+Wed Sep  6 15:03:53 1995  Jim Wilson  <[email protected]>
+
+       * config/tc-sh.c (get_specific): Delete arg_to_test.
+       (md_assemble): Increase operand array from 2 to 3.
+
+Tue Sep  5 16:47:36 1995  Stan Shebs  <[email protected]>
+
+       * config/tc-mips.c: Remove CYGNUS LOCAL comments.
+       (md_begin): Use 0/1 instead of TRUE/FALSE.
+       (md_show_usage): Break up long format string for the benefit
+       of lame compilers.
+       * config/tc-m68k.c (md_show_usage): Ditto.
+       * gasp.c (show_usage): Ditto.
+       * macro.c (check_macro): Cast result of hash_find.
+
+Tue Sep  5 14:46:38 1995  Ken Raeburn  <[email protected]>
+
+       * configure.in: When testing for a free() declaration in system
+       header files, cast the address to a function pointer, not to an
+       integer.
+
+       * write.c (fix_new_internal): Call TC_INIT_FIX_DATA if TC_FIX_TYPE
+       is defined.  Don't initialize fx_bsr.  Verify that fx_size field
+       is wide enough to hold stored value.
+       * write.h (struct fix): Change tc_fix_data to type TC_FIX_TYPE if
+       that is defined, otherwise omit it.  Delete fx_bsr.  Change
+       fx_size to unsigned char.
+       * config/tc-i960.h (TC_FIX_TYPE, fx_bsr, TC_INIT_FIX_DATA): New
+       macros.
+       * config/tc-ns32k.h (TC_FIX_TYPE, fx_bsr, TC_INIT_FIX_DATA): New
+       macros.
+       * config/tc-hppa.h (TC_FIX_TYPE): Define as PTR.
+
+       * config/tc-i860.c (md_apply_fix): Delete code for checking
+       fx_im_disp, and for handling non-zero values, since it never gets
+       set after being initialized to zero.
+
+       * write.h (struct fix): Make fx_im_disp always 2 bits, since the
+       only tc-* files actually using it need that much.
+
+       NS32K changes from Ian Dall:
+       * configure.in: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
+       ns32k-pc532-lites* like ns32k-pc532-netbsd*.
+       * config/tc-ns32k.h (LOCAL_LABELS_FB): Define to 1.
+
+Fri Sep  1 17:02:15 1995  steve chamberlain  <[email protected]>
+
+       * write.c (fixup_segment): Get TC_FORCE_RELOCATION up the
+       right way!
+
+Fri Sep  1 08:20:19 1995  James G. Smith  <[email protected]>
+
+        * config/tc-mips.c (md_parse_option, md_begin, md_show_usage):
+       Add support for "-mcpu=vr4300" as processor identifier.
+
+Thu Aug 31 16:41:06 1995  steve chamberlain  <[email protected]>
+
+       * write.c (fixup_segment): Remove change of 29th.
+       * config/tc-{i386,arm}.h (TC_FORCE_RELOCATION): Keep RVA relocs.
+
+Tue Aug 29 19:42:58 1995  Andreas Schwab  <[email protected]>
+
+       * config/tc-m68k.c (m68k_ip) [case POST/PRE/BASE]: Fix typo when
+       looking at outer displacement.  Don't set the postindex bit if the
+       index suppress bit is set (for memory indirect addressing mode).
+
+Thu Aug 31 06:49:37 1995  Doug Evans  <[email protected]>
+
+       * config/tc-arm.c (tc_gen_reloc): Delete duplicated code.
+
+Wed Aug 30 23:51:57 1995  Ian Lance Taylor  <[email protected]>
+
+       * app.c (do_scrub_chars): Free saved_input when the from buffer
+       exactly fills the to buffer.
+
+Wed Aug 30 13:46:39 1995  Doug Evans  <[email protected]>
+
+       * config/tc-sparc.c (parse_keyword_arg, parse_const_expr_arg): New fns.
+       (sparc_ip): Call them for asi, membar, and prefetch parsing.
+
+Tue Aug 29 15:45:37 1995  Doug Evans  <[email protected]>
+
+       * config/tc-sparc.c (membar_masks): Deleted.
+       (sparc_ip): Clean up ASI and membar support.
+
+Tue Aug 29 13:20:27 1995  steve chamberlain  <[email protected]>
+
+       * read.c (potable): Rva is new entry.
+       (cons_worker): New, split from cons.  Handles rva.
+       (cons, s_rva): Call cons_worker.
+       * read.h (s_rva): New declaration.
+       * write.c (fixup_segment): Don't throw away rva relocs.
+       * config/tc-arm.c (md_apply_fix, tc_gen_reloc): Handle RVA.
+       * config/tc-i386.c (tc_coff_fix2type): Handle RVA.
+       * config/tc-i386.h (TC_COUNT_RELOC): Remember RVAs.
+       (TC_RVA_RELOC): New definition.
+
+Sun Aug 27 17:41:05 1995  Doug Evans  <[email protected]>
+
+       * config/tc-arm.c (do_swi): Allow optional leading '#'.
+
+Sat Aug 26 17:24:20 1995  Ian Lance Taylor  ([email protected])
+
+       * config/tc-m68k.c (comment_chars): If TE_DELTA is defined,
+       include '#'.
+       * config/tc-m68k.h (NO_PSEUDO_DOT): Define if TE_DELTA is
+       defined.
+
+       * config/te-delta.h: Include obj-format.h.
+       * config/te-sco386.h: Likewise.
+       * config/te-sysv32.h: Likewise.
+
+       * app.c (scrub_file): Remove.
+       (scrub_from_file, scrub_to_file): Remove.
+       (scrub_string, scrub_last_string): Remove.
+       (scrub_from_string, scrub_to_string): Remove.
+       (saved_input, saved_input_len): New static variables.
+       (struct app_saved): Remove scrub_string, scrub_last_string, and
+       scrub_file fields.  Add saved_input and saved_input_len fields.
+       (app_push): Adjust saved fields for changes in struct app_save.
+       Initialize state and saved_input.
+       (app_pop): Adjust saved fields for changes in struct app_save.
+       (do_scrub_chars): Rename from do_scrub_next_char and rewrite to
+       process a buffer at a time rather than a character at a time.
+       (main, as_warn): Remove obsolete testing code.
+       * as.h (do_scrub_next_char): Don't declare.
+       (do_scrub_chars): Declare.
+       (scrub_from_file, scrub_from_string): Don't declare.
+       (scrub_to_file, scrub_to_string): Don't declare.
+       * input-file.c (input_file_get): New static function.
+       (input_file_give_next_buffer): Call do_scrub_chars rather than
+       do_scrub_next_char.
+       * read.c (scrub_string, scrub_string_end): New static variables.
+       (scrub_from_string): New static function.
+       (read_a_source_file): Call do_scrub_chars rather than
+       do_scrub_next_char.
+
+Thu Aug 24 18:50:19 1995  Ian Lance Taylor  ([email protected])
+
+       * gasp.c (as_abort): New function.
+       * sb.c (sb_build): Revert yesterday's patch.
+
+       * Makefile.in (gasp.new): Depend upon ../libiberty/libiberty.a.
+       Just link against libiberty, not against $(LIBS).
+
+Wed Aug 23 15:18:20 1995  Ian Lance Taylor  ([email protected])
+
+       * sb.c (sb_build): Undefine abort before calling it, since gasp
+       does not provide as_abort.
+
+Wed Aug 23 10:40:41 1995  Michael Meissner  <[email protected]>
+
+       * config/tc-ppc.c (set_target_endian): New static to say whether
+       we've initialized target_big_endian or not.
+       (md_parse_option): Set set_target_endian if we set the variable
+       target_big_endian.
+       (md_begin): Only set target_big_endian if !set_target_endian.
+
+Tue Aug 22 03:00:33 1995  Ken Raeburn  <[email protected]>
+
+       Sat Aug 19 18:08:16 1995  Pat Rankin  <[email protected]>
+
+       * config/obj-vms.h (DST_S_C_SRC_SETREC_W, DST_S_C_SRC_DEFLINES_B):
+       New macros.
+       * config/obj-vms.c (VMS_TBT_Line_PC_Correlation,
+       VMS_TBT_Source_Lines): Make traceback info be robust enough to
+       handle huge source files.
+       (VMS_TBT_Source_File): Reorganize the native- vs cross-assembly
+       support so that actual object file output is clearer.
+       (VMS_TBT_Source_File: Fab, Nam, Date_Xab, File_Header_Xab):
+       Replace static variables with automatic ones.
+
+       Sat Aug 12 20:18:15 1995  Pat Rankin  <[email protected]>
+
+       * config/obj-vms.c (Module_Name): new file scope variable.
+       (VMS_TBT_Module_Begin): use it instead of local variable.
+       (Write_VMS_MHD_Records): ditto; assign its value here.
+       (Write_VMS_EOM_Record): second argument has type valueT.
+       (VMS_Initialized_Data_Size):  simplify search loop; return
+       type is offsetT; second argument is unsigned.
+
+       Sat Jun 17 19:05:25 1995  Pat Rankin  ([email protected])
+
+       * messages.c (as_perror): Use xstrerror instead of strerror.
+
+Mon Aug 21 13:57:20 1995  Ian Lance Taylor  <[email protected]>
+
+       * as.c (parse_args): Accept --defsym SYM=VALUE.
+       * doc/as.texinfo, doc/as.1: Document --defsym.
+
+       * read.c (read_a_source_file): In MRI mode, don't end the
+       statement inside a quotation.
+       (s_space): Don't warn about a zero repeat count in MRI mode.
+       * config/tc-m68k.c (crack_operand): In MRI mode, don't count
+       parentheses inside quotes.
+       (md_assemble): In MRI mode, anything after the operands field is a
+       comment.
+       (parse_mri_control_operand): Adjust start and stop to remove
+       spaces.
+       (s_mri_for): Likewise.
+
+       * cond.c (s_ifdef): Restore the character after the symbol name,
+       in case it is a newline.
+       (s_if): If ignoring the current tree, don't try to parse the
+       expression.
+
+       * app.c (do_scrub_next_char): If LEX_IS_STRINGQUOTE or
+       LEX_IS_ONECHAR_QUOTE is seen in state 10, preserve one space.
+
+       * doc/as.texinfo: Document irp, irpc, macro, and rept. MRI mode
+       now supports macros, ifc, ifnc, irp, irpc, rept, and endr, without
+       using gasp.
+
+       Add support for macros.
+       * as.c: Include sb.h and macro.h.
+       (max_macro_next): New global variable.
+       (main): Call macro_init.
+       (macro_expr): New static function.
+       * as.h (max_macro_nest): Declare.
+       * read.c (line_label): Rename from mri_line_label.  Change all
+       uses.
+       (potable): Add exitm, irp, irpc, macro, mexit, rept.
+       (read_a_source_file): Always clear line_label at the start of a
+       line, not just when flag_mri or LABELS_WITHOUT_COLONS.  Fix
+       MRI/LABELS_WITHOUT_COLONS handling.  In MRI mode, permit label:
+       equ val.  Set line_label when calling colon.  In MRI mode, a
+       leading '.' does not imply a pseudo-op.  Check for macro expansion
+       before calling md_assemble.
+       (s_irp): New function.
+       (get_line_sb): New static function.
+       (s_macro): New function.
+       (s_mexit): New function.
+       (s_rept): New function.
+       * read.h (line_label): Rename from mri_line_label.
+       (s_irp, s_rept): Declare.
+       (s_macro, s_mexit): Declare.
+       * input-scrub.c: Include sb.h.
+       (sb_index, from_sb): New static variables.
+       (macro_nest): New static variable.
+       (struct input_save): Add sb_index and from_sb fields.  Change
+       next_saved_file field to be struct input_save *.
+       (next_saved_file): Changed to be struct input_save *.
+       (input_scrub_push): Change to return type struct input_save *.
+       Save sb_index and from_sb.
+       (input_scrub_pop): Change parameter type to struct input_save *.
+       Restore sb_index and from_sb.
+       (input_scrub_include_sb): New function.
+       (input_scrub_next_buffer): Handle reading from from_sb.
+       (bump_line_counters): Only increment lines if not using from_sb.
+       * config/tc-m68k.c (opt_table): Add nest.
+       (opt_nest): New static function.
+       * gasp.c: Include sb.h and macro.h.  Move all sb related functions
+       and definitions to sb.h and sb.c.  Move all macro related
+       functions and definitions to macro.h and macro.c.
+       * sb.h, sb.c: New files, extracted from gasp.c.
+       * macro.h, macro.c: Likewise.
+       * Makefile.in (OBJS): Add sb.o and macro.o
+       (GASPOBJS): Define.
+       (gasp.new): Depend upon $(GASPOBJS).  Use $(GASPOBJS) to link.
+       (TARG_CPU_DEP_m68k): Depend upon subsegs.h.
+       (gasp.o): Depend upon sb.h and macro.h.
+       (sb.o): New target.
+       (macro.o): New target.
+       (as.o): Depend upon sb.h and macro.h.
+       (input-scrub.o): Depend upon sb.h.
+       (read.o): Depend upon sb.h and macro.h.
+
+       * cond.c (get_mri_string): New static function.
+       (s_ifc): New function.
+       * read.c (potable): Add ifc and ifnc.
+       * read.h (s_ifc): Declare.
+
+       * app.c (do_scrub_begin): In MRI mode, set lex of ' to
+       LEX_IS_STRINGQUOTE.
+
+Mon Aug 21 13:41:33 1995  Michael Meissner  <[email protected]>
+
+       * config/tc-ppc.c (md_assemble): Allow @HA, @L, and @H suffixes on
+       constant expressions.
+
+Sun Aug 20 15:54:37 1995  Jim Wilson  <[email protected]>
+
+       * config/tc-arm.c (md_reloc_size): Add const to declaration.
+
+Fri Aug 18 10:58:09 1995  Ian Lance Taylor  <[email protected]>
+
+       * read.c (s_include): In MRI mode, don't expect quotes around the
+       file name.
+       * listing.c (listing_title): Don't require the title to be quoted.
+
+       * gasp.c (include_print_where_line): Always subtract 1 from
+       linecount before printing it.
+       (process_file): In MRI mode, lines beginning with '*' or '!' are
+       comments.
+       (do_reg): In MRI mode, don't require parentheses.
+       (do_include): In MRI mode, don't requires quotes.  If the file can
+       not be found in the include path, try opening it in the current
+       directory.  Print the file name correctly in the error message.
+       (chartype_init): In MRI mode, set FIRSTBIT for '.'.
+       (main): Set comment_char to ';' when entering MRI mode.
+
+       * config/tc-m68k.c: Include subsegs.h.
+       (m68k_ip): Pass 64 rather than -1 to add_Fix in 'B' 'B' case.
+       (md_pcrel_from): If fx_pcrel_adjust is 64, use -1 instead.
+
+       * config/tc-sparc.h (tc_fix_adjustable): For OBJ_AOUT case, adjust
+       BFD_RELOC_16 and BFD_RELOC_32 relocs.
+
+Wed Aug 16 14:48:44 1995  Ken Raeburn  <[email protected]>
+
+       * as.h (alloca): Use void* declaration on HP/UX.
+
+Wed Aug 16 12:49:17 1995  Ian Lance Taylor  <[email protected]>
+
+       * config/tc-sparc.c (tc_gen_reloc): If PIC, only change PCREL_S2
+       to WPLT30 for an undefined or external symbol.  Don't consider
+       PC10 or PC22 to be a PC relative reloc when choosing between
+       fx_addnumber and fx_offset.
+
+       * config/tc-z8k.c (md_number_to_chars): Don't do it here, call
+       number_to_chars_bigendian.
+       * config/tc-z8k.h (TARGET_BYTES_BIG_ENDIAN): Define.
+
+       * 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.
+
+Tue Aug 15 15:08:49 1995  Ian Lance Taylor  <[email protected]>
+
+       * 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.
+
+       * symbols.c (colon): Change parameter to const char *.
+       * symbols.h (colon): Update declaration.
+
+Mon Aug 14 20:51:56 1995  Ken Raeburn  <[email protected]>
+
+       * 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.
+
+Mon Aug 14 14:08:07 1995  Jeff Law  ([email protected])
+
+       * config/tc-hppa.c (md_apply_fix): Don't try to apply BEGIN_BRTAB
+       or END_BRTAB fixups.
+
+Mon Aug 14 15:45:07 1995  Ian Lance Taylor  <[email protected]>
+
+       * gasp.c (do_align, get_any_string): Mark as static.
+       (do_assigna, do_assignc, new_file): Likewise.
+
+       * config/tc-m68k.c (s_reg): Rename local op to rop to avoid
+       confusion with macro op.
+
+       * 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.
+
+       * config/tc-m68k.c (s_opt): Reset *input_line_pointer even if we
+       don't do anything with the option.
+
+Sun Aug 13 17:03:58 1995  Ian Lance Taylor  <[email protected]>
+
+       * frags.c (frag_align): Handle absolute_section.
+       * write.c (record_alignment): Likewise.
+
+       * config/tc-mips.c (macro_build): Skip insns with an inappropriate
+       ISA level.
+
+Sun Aug 13 00:35:02 1995  Jeff Law  ([email protected])
+
+       * 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.
+
+Fri Aug 11 20:34:05 1995  Ken Raeburn  <[email protected]>
+
+       * Makefile.in (TE_OBJS): Add empty definition.
+
+Fri Aug 11 19:16:08 1995  Ian Lance Taylor  <[email protected]>
+
+       * 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.
+
+       * gasp.c: Include ansidecl.h.  Make all local functions static.
+        Add prototypes for all static functions.
+       (mri): New global variable.
+       (sb_add_char): Change parameter c from char to int.
+       (sb_add_string): Make parameter s into a const pointer.
+       (sb_add_buffer): Likewise.
+       (checkconst): Change parameter op from char to int.
+       (exp_get_abs): Make parameter emsg into a const pointer.
+       (do_res): Change parameter type from char to int.
+       (buffer_and_nest): Make parameters from and to into const
+       pointers.
+       (do_sdata): Change parameter type from char to int.
+       (new_file): Make parameter name into a const pointer.
+       (do_define): Make parameter string into a const pointer.
+
+       * config/tc-h8300.c (md_number_to_chars): Don't do it here, call
+       number_to_chars_bigendian.
+       * config/tc-h8300.h (TARGET_BYTES_BIG_ENDIAN): Define.
+
+Fri Aug 11 13:23:56 1995  Michael Meissner  <[email protected]>
+
+       * write.h (struct fix): Add new field fx_no_overflow.
+
+       * write.c (fixup_segment): If fx_no_overflow is non-zero, don't
+       complain if the addend is too large.
+
+       * config/tc-ppc.c (md_assemble): Set fx_no_overflow if the half
+       word relocations BFD_RELOC_{LO16,HI16,HI16_S}.
+
+Thu Aug 10 20:56:38 1995  Ken Raeburn  <[email protected]>
+
+       * read.c (s_mri_sect) [BFD_ASSEMBLER]: Fix typos in choosing and
+       setting section flags.
+
+Thu Aug 10 00:38:11 1995  Ian Lance Taylor  <[email protected]>
+
+       * doc/as.texinfo: Add documentation for MRI compatibility mode.
+       * doc/as.1: Likewise.
+
+       * 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.
+
+       * 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.
+
+       * 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.
+       
+Wed Aug  9 10:51:48 1995  Ian Lance Taylor  <[email protected]>
+
+       * 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.
+
+       * 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.
+
+       * symbols.c (symbol_begin): Set sy_frag of abs_symbol to
+       &zero_address_frag.
+
+       * 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.
+
+       * 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.
+       * 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.
+
+       * 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.
+
+       * 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.
+       * cond.c (s_if): Treat argument as an operatorT describing how to
+       compare the argument against zero.
+       (ignore_input): Don't require an initial dot in MRI mode, or if
+       NO_PSEUDO_DOT is defined.
+
+       * 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.
+       * cond.c (s_end): Remove.
+       * listing.c (listing_psize): Treat argument as indicating whether
+       a height is expected.
+
+       * read.c (mri_pending_align): New static variable.
+       (read_a_source_file): Handle mri_pending_align.
+       (cons): Set mri_pending_align if appropriate.
+
+       * configure.in: Move random special target handling before
+       possible break.
+       * configure: Rebuild.
+
+Tue Aug  8 23:41:25 1995  Alan Modra  <[email protected]>
+
+       * 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@.
+
+Tue Aug  8 17:27:17 1995  Ken Raeburn  <[email protected]>
+
+       * expr.h (operatorT): Remove comma after last enumerator value.
+
+       * config/obj-vms.c: Some whitespace cleanup from Pat Rankin.
+
+       * as.h (alloca): If __STDC__, declare void* instead of char*.
+
+       Wed Aug  2 18:54:37 1995  Pat Rankin  <[email protected]>
+
+       * config/obj-vms.c (Flush_VMS_Object_Record_Buffer,
+       Close_VMS_Object_File): Reorganize the `#if !VMS' cross-assmebler
+       support code.
+       (Close_VMS_Object_File): Call Set_VMS_Object_File_Record to flush
+       output buffer--just in case--before closing the file.
+
 Tue Aug  8 13:07:05 1995  Ian Lance Taylor  <[email protected]>
 
+       * 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.
+
+       * 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.
+
+       * doc/c-m68k.texi: Add documentation for CPU specific options, and
+       for Motorola syntax.
+
        * config/m68k-parse.y (motorola_operand): For (%pc), set mode to
        DISP, not BASE.
 
@@ -168,7 +878,6 @@ Mon Jul 31 18:19:26 1995  steve chamberlain  <[email protected]>
        * gasp.c (main): Parse -I option.
        (do_include): Look through include list.
        * gasp.c (change_base): Don't modify numbers in strings. 
-       (pr7583)
 
 Mon Jul 31 12:16:21 1995  Ian Lance Taylor  <[email protected]>
 
@@ -9542,7 +10251,7 @@ Wed Apr 21 00:20:11 1993  Ken Raeburn  ([email protected])
 
        * symbols.c (DEBUG): Enabled.
        (symbol_new): Make sure bfd_make_empty_symbol works.
-       (verify_symbol_chain_2): New funcion; takes one symbol as
+       (verify_symbol_chain_2): New function; takes one symbol as
        argument, anywhere in the chain.
        (dollar_label*): Use default initializers.
 
@@ -9575,7 +10284,7 @@ Wed Apr 21 00:20:11 1993  Ken Raeburn  ([email protected])
        (_doprnt): Deleted.
        (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
        VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
-       VMS_Psect_Spec): Fixed to compiler under traditional C.
+       VMS_Psect_Spec): Fixed to compile under traditional C.
        * config/obj-vms.h: Use PARAMS macro.
        (vms_resolve_symbol_redef): Declare.
        (RESOLVE_SYMBOL_REDEFINITION): New macro.
This page took 0.046751 seconds and 4 git commands to generate.