aboutsummaryrefslogtreecommitdiff
path: root/gas
AgeCommit message (Collapse)AuthorFilesLines
1995-08-23Fix -mlittle/-mbig so that it really does override the default endianessMichael Meissner1-0/+8
1995-08-22new routine xstrerror for better vms error handling; gas fixed to use itKen Raeburn1-0/+4
1995-08-22vms changesKen Raeburn3-568/+378
1995-08-21 * as.c (parse_args): Accept --defsym SYM=VALUE.Ian Lance Taylor2-1/+29
* doc/as.texinfo, doc/as.1: Document --defsym.
1995-08-21 * read.c (read_a_source_file): In MRI mode, don't end theIan Lance Taylor2-11/+79
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.
1995-08-21 * app.c (do_scrub_next_char): If LEX_IS_STRINGQUOTE orIan Lance Taylor1-2/+16
LEX_IS_ONECHAR_QUOTE is seen in state 10, preserve one space.
1995-08-21 * gas/macros/*: New tests for macros.Ian Lance Taylor14-0/+139
1995-08-21 * gasp/pl3.out: Update for changes in commented source output whenIan Lance Taylor1-26/+26
LOCAL is used.
1995-08-21 * doc/as.texinfo: Document irp, irpc, macro, and rept. MRI modeIan Lance Taylor2-13/+181
now supports macros, ifc, ifnc, irp, irpc, rept, and endr, without using gasp.
1995-08-21 Add support for macros.Ian Lance Taylor12-1394/+1098
* 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. Fixup 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.
1995-08-21 * app.c (do_scrub_begin): In MRI mode, set lex of ' toIan Lance Taylor1-16/+26
LEX_IS_STRINGQUOTE.
1995-08-21 * cond.c (get_mri_string): New static function.Ian Lance Taylor1-187/+256
(s_ifc): New function.
1995-08-21Allow @HA, @L, and @H on constant expressions.Michael Meissner2-11/+75
1995-08-20 * config/tc-arm.c (md_reloc_size): Add const to declaration.Jim Wilson1-0/+4
1995-08-19 * gasp/gasp.exp (gasp_test): Call prune_system_crud on the outputIan Lance Taylor2-0/+9
of diff. * lib/gas-defs.exp: Define prune_system_crud if it is not already defined.
1995-08-18 * read.c (s_include): In MRI mode, don't expect quotes around theIan Lance Taylor2-5/+25
file name. * listing.c (listing_title): Don't require the title to be quoted.
1995-08-18 * gasp/mri/*.out: Use ;, not !, for the comment character.Ian Lance Taylor8-92/+96
1995-08-18 * gasp.c (include_print_where_line): Always subtract 1 fromIan Lance Taylor2-6/+45
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.
1995-08-18 * config/tc-m68k.c: Include subsegs.h.Ian Lance Taylor2-3/+1094
(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. You can't portably store negative numbers in a char.
1995-08-16* as.h (alloca): Use void* declaration on HP/UX.Ken Raeburn2-7/+12
1995-08-16 * gas/mri/mri.exp: Change hppa*-*-* expected failures to onlyIan Lance Taylor1-0/+3
expect failure for targets which use SOM.
1995-08-16 * lib/gas-defs.exp (run_dump_test): If the program to run does notIan Lance Taylor2-0/+8
exist, mark the test as untested.
1995-08-16 * gas/mri/mri.exp: Add setup_xfail for i960 b.out targets forIan Lance Taylor2-0/+16
common test.
1995-08-16 * lib/gas-defs.exp (run_dump_test): Name the output file dump.o,Ian Lance Taylor1-22/+35
rather than using an implicit a.out.
1995-08-16 * config/tc-sparc.c (tc_gen_reloc): If PIC, only change PCREL_S2Ian Lance Taylor2-13/+102
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.
1995-08-16 * gas/mri/for.s: Add nop to round out to four byte boundary.Ian Lance Taylor1-0/+11
* gas/mri/repeat.s: Likewise. * gas/mri/while.s: Likewise. * gas/mri/for.d: Expected added nop. * gas/mri/repeat.d: Likewise. * gas/mri/while.d: Likewise.
1995-08-16 * config/tc-z8k.c (md_number_to_chars): Don't do it here, callIan Lance Taylor1-1/+5
number_to_chars_bigendian. * config/tc-z8k.h (TARGET_BYTES_BIG_ENDIAN): Define.
1995-08-16 * expr.c (operand): Add support for .startof. and .sizeof. byIan Lance Taylor2-5/+47
using magic symbol names which the linker will recognize specially. * doc/as.texinfo: Take out note that .startof. and .sizeof. are not supported.
1995-08-16 * gas/mips/*.d: Change all test names to say MIPS.Ian Lance Taylor25-6/+3228
1995-08-15 * gas/mri/for.d, gas/mri/for.s: New test.Ian Lance Taylor10-0/+166
* 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.
1995-08-15 * config/tc-m68k.c (md_pseudo_table): Add MRI structured controlIan Lance Taylor1-1/+0
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.
1995-08-15* write.c (write_contents): Always do it the BFD_FAST_SECTION_FILL way.Ken Raeburn1-0/+6
Reformat and reindent that code to GNU standards. (BFD_FAST_SECTION_FILL): Don't define.
1995-08-14 * gasp.c (do_align, get_any_string): Mark as static.Ian Lance Taylor2-5/+8
(do_assigna, do_assignc, new_file): Likewise.
1995-08-14 * config/tc-m68k.c (s_reg): Rename local op to rop to avoidIan Lance Taylor2-18/+21
confusion with macro op.
1995-08-14 * gas/mri/expr.d: Permit leading zeroes, in case we're using aIan Lance Taylor1-0/+3
64-bit BFD.
1995-08-14 * config/tc-hppa.c (md_apply_fix): Don't try to apply BEGIN_BRTABJeff Law1-0/+5
or END_BRTAB fixups.
1995-08-14 * gasp/mri/*: New tests.Ian Lance Taylor18-10/+230
* gasp/gasp.exp: Run them. Also, clean up the test names used in pass and fail.
1995-08-14 * gasp.c (strip_comments): Comment out; it's not used.Ian Lance Taylor2-207/+355
(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.
1995-08-14 * config/tc-m68k.c (s_opt): Reset *input_line_pointer even if weIan Lance Taylor1-0/+2
don't do anything with the option.
1995-08-13 * frags.c (frag_align): Handle absolute_section.Ian Lance Taylor2-0/+10
* write.c (record_alignment): Likewise.
1995-08-13fix up aug 8 log entryKen Raeburn1-2/+2
1995-08-13 * gas/sh/basic.exp: Update now that we know the rightJeff Law2-4/+11
bit patters for the new sts instructions.
1995-08-13 * config/tc-hppa.c (md_pseudo_table): Add entries forJeff Law2-1/+38
"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.
1995-08-12* Makefile.in (TE_OBJS): Add empty definition.Ken Raeburn1-0/+4
1995-08-11 * gasp.c (change_base): Don't treat ' specially in MRI mode.Ian Lance Taylor3-115/+641
(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.
1995-08-11Allow large addends for BFD_RELOC_{LO16,HI16,HI16_S} relocs.Michael Meissner2-1/+11
1995-08-11* read.c (s_mri_sect) [BFD_ASSEMBLER]: Fix typos in choosing and settingKen Raeburn1-0/+5
section flags.
1995-08-10 * doc/as.texinfo: Add documentation for MRI compatibility mode.Ian Lance Taylor3-3421/+138
* doc/as.1: Likewise.
1995-08-10 * config/tc-m68k.c (m68k_ip): When recognizing '#', use isbyte andIan Lance Taylor3-6/+17
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.
1995-08-10 * read.c (potable): Add spc, ttl, xcom, xref.Ian Lance Taylor3-0/+191
(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.