Match r[0..7]_bank operands before normal operands.
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 2000-03-15 Jonathan Larmour <jlarmour@redhat.co.uk>
2
3 * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
4 normal operands.
5
6 2000-03-15 Kazu Hirata <kazu@hxi.com>
7
8 * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
9
10 Mon Mar 13 22:02:59 2000 Hans-Peter Nilsson <hp@axis.se>
11
12 * expr.c (operand) [case 'f']: When testing if '0f' can start a
13 floating-point-number, make sure 'f' is in FLT_CHARS.
14
15 Sat Mar 11 00:01:39 2000 Hans-Peter Nilsson <hp@axis.se>
16
17 * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
18 (s_lcomm_internal): Use it.
19 * doc/internals.texi (CPU backend): Document it.
20 * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
21 bytes.
22
23 2000-03-10 Geoffrey Keating <geoffk@cygnus.com>
24
25 * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
26 when embedded-pic.
27
28 * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
29 implementation doesn't have special handling for switch
30 statements.
31 (macro_build): Allow for code in sections other than .text.
32 (macro): Likewise.
33 (mips_ip): Likewise.
34 (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
35 Don't perform relocs if we will be outputting them.
36 (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
37 relocations. Allow BFD_RELOC_16_PCREL_S2 relocs when
38 embedded-pic.
39
40 2000-03-09 Catherine Moore <clm@cygnus.com>
41
42 * config/tc-m32r.c (m32r_fix_adjustable): Look up the
43 relocation type based on the entry in the fixup structure.
44
45 2000-03-08 H.J. Lu (hjl@gnu.org)
46
47 * Makefile.am (install-exec-tooldir): Depend on
48 install-exec-bindir for parallel make.
49 * Makefile.in: Regenerated.
50
51 2000-03-06 Nick Clifton <nickc@cygnus.com>
52
53 * config/tc-m32r.c (struct md_longopts): Add -m32r command line
54 switch.
55 (md_parse_option): Parse -m32r command line switch - disable m32rx
56 compatability.
57 (md_show_usage): Document new option.
58
59 * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
60 * doc/Makefile.in: Regenerate.
61 * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
62
63 2000-03-02 Michael Meissner <meissner@redhat.com>
64
65 * config/tc-d30v.c (check_range): Remove code that incorrectly
66 sign extended values where bits < 32.
67
68 2000-03-02 H.J. Lu (hjl@gnu.org)
69
70 * configure.in: Support --enable-targets=all on ia32.
71 * configure: Regenerated.
72
73 2000-03-01 Nick Clifton <nickc@cygnus.com>
74
75 * gasp.c (do_align): Remove bogus check of alignment value.
76
77 2000-02-27 Thomas de Lellis <tdel@windriver.com>
78
79 * config/obj-elf.c (elf_frob_symbol): Remove code which when
80 TC_PPC was defined forced the type of a symbol with no other type
81 to be BSF_OBJECT.
82
83 2000-02-27 Hans-Peter Nilsson <hp@axis.com>
84
85 * doc/internals.texi (CPU backend): Mention that
86 line_separator_chars do not break up comments. Fix typos for
87 LEX_AT and LEX_NAME descriptions. Document operands for
88 TC_EQUAL_IN_INSN, md_operand and md_section_align. Correct
89 description of md_create_short_jump usage. Document argument for
90 md_undefined_symbol.
91
92 2000-02-27 Jakub Jelinek <jakub@redhat.com>
93
94 * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
95 (md_parse_option): Handle it.
96 (md_show_usage): Document it.
97
98 2000-02-27 Ian Lance Taylor <ian@zembu.com>
99
100 * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
101 opcode, for the instruction `pal19'. From Andrea Arcangeli
102 <andrea@suse.de>.
103
104 2000-02-26 Alan Modra <alan@spri.levels.unisa.edu.au>
105
106 * config/tc-i386.c (i386_immediate): Move constant operand sizing
107 from here..
108 (md_assemble): To here, before template operands are matched.
109 Also ensure a constant immediate is sign extended when we know the
110 size is at most 16 bits. This is to catch cases like "add
111 $0xffc0,%ax" where we don't know the size, and thus that the
112 immediate can be represented as Imm8S until after parsing the
113 register operand.
114 (i386_displacement): Similarly sign extend 16 bit constant
115 displacements.
116 (md_assemble): Relax 16-bit jump constant range check to suit sign
117 extended displacements.
118
119 2000-02-26 Andreas Jaeger <aj@suse.de>
120
121 * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
122
123 2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
124
125 * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
126 call operands when intel_syntax.
127 (intel_float_operand): Return 2 for "fi...".
128 (i386_operand_modifier): Change "DWORD PTR" test to suit above.
129 Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert
130 earlier "SHORT" change.
131 (md_assemble): When determining suffix from Regs, exclude
132 InOutPortReg.
133
134 2000-02-24 Nick Clifton <nickc@cygnus.com>
135
136 * configure: Add arm-wince, mips-pe and sh-pe targets.
137 * configure: Regenerate.
138
139 * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
140 sh-pe targets.
141 (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
142 "pe-mips" for the mips-pe target.
143
144 * config/tc-arm.c (insns): Change displacement encoded in BL
145 and B instructions if the target port is arm-wince.
146 (do_ldst): Do not bias the relocation offset if the target
147 port is arm-wince.
148 (md_pcrel_from): Add in missing relocation offset bias if the
149 target os arm-wince.
150
151 * config/tc-mips.c (mips_target_format): Support COFF flavour.
152 (md_begin): Disable -G support for mips-pe target.
153 (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
154 * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
155 COFF flavour.
156
157 * config/tc-sh.c (md_begin): sh-pe target is little endian.
158 * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
159 assembler, just set the alignment to 4.
160
161 * config/te-wince-pe.h: New file for WinCE targets. Define
162 TE_WINCE.
163
164 2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
165
166 * config/tc-i386.c (md_assemble): Swap segments too for intel mode
167 string instructions.
168 (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
169 (i386_intel_memory_operand): After finding a segment override,
170 check again for no `[' before looking for a displacement. Bomb if
171 more than one displacement rather than silently discarding the
172 second and subsequent ones. Free strings malloc'd by
173 build_displacement_string.
174
175 2000-02-24 Catherine Moore <clm@cygnus.com>
176
177 * config/obj-som.c (obj_pseudo_table): Add "weak".
178 (obj_som_weak): New routine.
179
180 2000-02-24 Alan Modra <alan@spri.levels.unisa.edu.au>
181
182 * config/tc-i386.c (union i386_op): New.
183 (struct _i386_insn): Delete disps[], imms[], regs[]. Add op[].
184 Throughout file replace occurences of disps[n], imms[n], regs[n]
185 with equivalent op[n].disps, op[n].imms, op[n].regs. Simplify
186 intel mode operand swapping. Add assert in regKludge and
187 fake_zero_displacement code. Test i.types[n] when outputting
188 displacements and immediates. Combine output of Disp16 with
189 Disp32.
190 (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
191 when in intel mode by (not) reversing fsub and fdiv operands
192 before the template search. This fails for single operand
193 shorthand forms of the instruction, and if UNIXWARE_COMPAT is
194 undefined. Instead fix the base_opcode after we've found the
195 template. Move base_opcode xor with found_reverse_match from
196 opcode output code to before this fix so we test for the correct
197 opcodes.
198 (md_assemble): Don't use strcmp when deciding to ignore the suffix
199 check in intel mode. Instead compare opcodes.
200
201 * config/tc-i386.h (TC_RELOC): Delete.
202 * config/tc-i386.c (TC_RELOC): Delete. Replace usage of TC_RELOC
203 with equivalent call to reloc.
204
205 * as.h (flag_m68k_mri): Move declaration after target include, and
206 only declare when TC_M68K defined. Define as zero otherwise.
207 (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
208 * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
209 Define as zero otherwise.
210 (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
211 (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
212 (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
213 (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
214 testing whether defined.
215 * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
216 * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
217 * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
218 rather than testing whether defined.
219 (s_mri): Set flag_m68k_mri only when TC_M68K defined.
220 (parse_mri_cons): Declare and use only when TC_M68K.
221 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
222 * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
223 * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
224
225 * NEWS: Mention IBM 370 support.
226
227 2000-02-23 Richard Henderson <rth@cygnus.com>
228
229 * config/tc-i386.c (md_assemble): When swapping operands for
230 intel_syntax, assume everything that's not Imm or Disp is a
231 register.
232
233 2000-02-23 Linas Vepstas <linas@linas.org>
234
235 * config/tc-i370.c, config/tc-i370.h: New files.
236 * Makefile.am: Add support for Linux/IBM 370.
237 * configure.in: Likewise.
238 * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
239 * config/obj-elf.c: Include elf/i370.h
240 (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
241
242 * Makefile.in: Regenerate.
243 * configure: Regenerate.
244
245 * doc/c-i370.texi: New file.
246 * doc/all.texi: Include it.
247 * doc/as.texinfo: And here.
248 * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
249 * doc/Makefile.in: Regenerate.
250
251 2000-02-19 Michael Meissner <meissner@redhat.com>
252
253 * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
254 determine if an instruction can be used in parallel with an ADDppp
255 or SUBppp instruction.
256
257 2000-02-22 Andrew Haley <aph@cygnus.com>
258
259 * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
260
261 1999-12-30 Andrew Haley <aph@cygnus.com>
262
263 * config/tc-mips.c (mips_gp32): New variable.
264 (macro_build) Use mips_gp32.
265 (mips_ip): Ditto.
266 (md_longopts): Add "-mgp32" and "-mgp64".
267 (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
268
269 2000-02-22 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
270
271 * config/obj-coff.c (add_lineno): Accept non-positive lineno with
272 warning, and bump it to 1.
273
274 2000-02-22 Ian Lance Taylor <ian@zembu.com>
275
276 From Brad Lucier <lucier@math.purdue.edu>:
277 * dwarf2dbg.c (print_stats): Add cast to force printf argument to
278 match format.
279
280 2000-02-21 Catherine Moore <clm@cygnus.com>
281
282 * config/tc-mips.c (MF_HILO_INSN): Define.
283 (mips_7000_hilo_fix): Declare.
284 (append_insn): Conditionally insert nops after an mfhi/mflo insn.
285 (md_parse_option): Check for 7000_HILO_FIX options.
286 (OPTION_M7000_HILO_FIX): Define.
287 (OPTION_NO_M7000_HILO_FIX): Define.
288 * doc/c-mips.texi (-mfix7000): Describe.
289
290 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
291
292 * listing.c (print_lines): Remove unused variable `end'.
293
294 * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
295 type for JumpInterSegment output. Use enum bfd_reloc_code_real for
296 reloc_type when BFD_ASSEMBLER.
297 (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
298 reloc_type when BFD_ASSEMBLER. Move common code out of switch
299 statement and quell signed vs. unsigned comparison warning.
300
301 2000-02-18 Nick Clifton <nickc@cygnus.com>
302
303 * config/tc-d10v.c (find_opcode): Add a symbol's value to
304 the computed frag offset, rather than overwriting it.
305
306 Thu Feb 17 00:11:08 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
307
308 * config/tc-sh.c ("elf/sh.h"): Include.
309 (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
310 (md.begin): Initialize target_arch.
311 Only include opcodes in has table that match selected architecture.
312 (parse_reg): Recognize register names for sh-dsp.
313 (parse_at): Recognize post-modify addressing.
314 (get_operands): The leading space is now optional.
315 (get_specific): Remove FDREG_N support. Add support for sh-dsp
316 arguments. Update valid_arch.
317 (build_Mytes): Add support for SDT_REG_N.
318 (find_cooked_opcode): New function, broken out of md_assemble.
319 (assemble_ppi, sh_elf_final_processing): New functions.
320 (md_assemble): Use find_cooked_opcode and assemble_ppi.
321 (md_longopts, md_parse_option): New option: -dsp.
322 * config/tc-sh.h (elf_tc_final_processing): Define.
323 (sh_elf_final_processing): Declare.
324
325 Fri Feb 11 14:21:51 2000 Jeffrey A Law (law@cygnus.com)
326
327 * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
328 the unwinder subspace. Save the current seg/subseg before creating
329 the new seg/subseg.
330
331 2000-02-10 Nick Clifton <nickc@cygnus.com>
332
333 * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
334 little endian targets.
335 (INST_BYTE1): Redefine to handle big and little endian
336 targets.
337 (cpu_type): New type: Select between M340 and M210.
338 (parse_psrmod): New function: Parse the PSRCLR and PSRSET
339 instructions of the M340.
340 (md_assemble): Add support for the MULSH and OPSR classes of
341 instructions.
342 (md_atof): Add support for little endian targets.
343 (md_parse_option): Add support for -EL, -EB and -mcpu command
344 line switches.
345 (md_convert_frag): Add support for little endian targets.
346 (md_apply_fix3): Add support for little endian targets.
347 (md_number_to_chars): Add support for little endian targets.
348
349 2000-02-10 Timothy Wall <twall@redhat.com>
350
351 * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
352 defined, use it to verify the symbol just read should be a label.
353
354 2000-02-10 Timothy Wall <twall@redhat.com>
355
356 * app.c (do_scrub_chars): Handle "||" for parallel instructions
357 when DOUBLEBAR_PARALLEL is defined. Avoid stripping whitespace
358 around colons when KEEP_WHITE_AROUND_COLON is defined.
359 * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
360 and KEEP_WHITE_AROUND_COLON.
361
362 2000-02-08 Timothy Wall <twall@redhat.com>
363
364 * read.c (s_rept): Call do_repeat, which abstracts the repeat
365 logic.
366 (do_repeat): New. Abstract repeat logic so that a "break" can be
367 implemented.
368 (end_repeat): New. Provide support for a "break" out of the
369 repeat loop.
370 * read.h: Add prototypes for new functions.
371
372 2000-02-08 Timothy Wall <twall@redhat.com>
373
374 * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
375 * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
376 * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
377 non-zero.
378
379 2000-02-08 Timothy Wall <twall@redhat.com>
380
381 * read.c: Added elseif to directives table.
382 * read.h: Added prototype for s_elseif.
383 * doc/as.texinfo: Added description for elseif.
384 * cond.c (s_elseif): New function
385
386 2000-02-04 Timothy Wall <twall@redhat.com>
387
388 * listing.c (print_lines): Remove conditionals causing bug in
389 listings.
390
391 2000-02-03 Timothy Wall <twall@cygnus.com>
392
393 * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
394 default values.
395 * frags.c (frag_new): Calculate fr_fix in octets
396 (frag_now_fix) Return offset as target address offset (bytes).
397 (frag_now_fix_octets) New - Return offset in octets (8-bit
398 quantities).
399 * frags.h: Added prototype for frag_now_fix_octets().
400 Distinguish between octets and bytes in field descriptions.
401 * listing.c (calc_hex): Account for octets vs bytes when
402 printing addresses/offsets.
403 (print_lines) Ditto. Also, if LISTING_WORD_SIZE is not 1, and
404 target is little-endian, print the octets in a word in big-endian
405 order so that the display looks like a proper hexadecimal number,
406 instead of having the octets reversed.
407 * read.c (do_align): When recording alignment, alignment power
408 should be in terms of target bytes (minimum addressible unit)
409 instead of octets.
410 (do_org) Convert ORG target address (byte) argument into an
411 octet offset when generating a variable fragment.
412 * symbols.c (resolve_symbol_value): Symbol final value
413 converted to a target address offset (bytes) from its octet offset.
414 * config/obj-coff.c (coff_frob_symbol): Symbol target address
415 offset (bytes) is adjusted by the frag offset (octets) converted
416 to bytes.
417 (coff_frob_section) Section alignment power is in terms of bytes;
418 convert it to an octet alignment power when calculating size (and
419 size mask) in octets. Don't modify the section size in order to
420 "align" it for TI COFF, since that format has a different method
421 for storing alignment information.
422
423 2000-02-01 Timothy Wall <twall@cygnus.com>
424
425 * stabs.c (generate_asm_file): Escape backslashes in stabs file
426 entries, matching the way GCC generates them. If not escaped, the
427 filename is encoded incorrectly.
428
429 2000-01-31 Nick Clifton <nickc@cygnus.com>
430 * config/tc-arm.c (reg_table): Add support for ATPCS register
431 naming conventions.
432
433 2000-01-31 Geoff Keating <geoffk@cygnus.com>
434
435 * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
436 already defined.
437 * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
438 New macro.
439 * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
440 of a symbol when we really care about its value.
441
442 2000-01-19 Chandra Chavva <cchavva@cygnus.com>
443
444 * config/tc-mcore.c (md_assemble): Give warning message if
445 operands passes to instruction are more than the spec.
446
447 2000-01-27 Thomas de Lellis <tdel@windriver.com>
448
449 * config/tc-arm.c (armadjust_symtab): If the assembler is in
450 Thumb mode but the label seen was not declared as '.thumb_func'
451 then set the ST_INFO type to STT_ARM_16BIT mode. This allows
452 correct disassembly of Thumb code bounded by non function labels.
453
454 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
455
456 * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
457 Add dependencies for e-i386aout.o. Fix 2 comment lines.
458
459 * Makefile.in: Same here.
460 Update copyright.
461
462 * configure.in: Set bfd_gas for i386-aout when primary target
463 is bfd. Handle i386aout emulation. Don't use te_file=multi, as
464 we may need the primary te_file. Remove incorrect comment.
465
466 * configure: Regenerate.
467
468 * config/e-i386aout.c: New file.
469
470 * as.c (USE_EMULATIONS): Move to before print_version_id.
471 (struct emulation): Add i386aout.
472 (show_usage): Split text strings. Reformat -a text. Add --em
473 help.
474 Update copyright.
475
476 * obj.h (struct format_ops): Add s_get_other and s_get_desc.
477 (aout_format_ops): New.
478 Update copyright.
479
480 * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
481 preprocessor conditional and add aout USE_EMULATIONS tests.
482 (read_a_source_file): Don't pass error strings to printf as
483 format arg.
484 Update copyright.
485
486 * gasp.c (exp_get_abs): Don't pass error strings to printf as
487 format arg.
488 (do_data): Same here.
489 (process_file): And here.
490 Update copyright.
491
492 * symbols.c (colon): Rewrite "already defined" fatal message
493 code for aout with USE_EMULATIONS.
494 Update copyright.
495
496 * config/obj-aout.c (OBJ_HEADER): Define.
497 (obj_pseudo_table): Rename to aout_pseudo_table. Init all
498 fields of sentinel.
499 (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
500 S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
501 forms here.
502 (obj_aout_type): Expand S_SET_OTHER here too.
503 (obj_read_begin_hook): Remove.
504 (aout_pop_insert): New.
505 (obj_aout_s_get_other): New.
506 (obj_aout_s_get_desc): New.
507 (aout_format_ops): New.
508 Update copyright.
509
510 * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
511 gets aout_pseudo_table.
512 (aout_pseudo_table): Declare.
513 (obj_read_begin_hook): Define.
514 Update copyright.
515
516 * config/obj-coff.c (obj_pseudo_table): Rename to
517 coff_pseudo_table.
518 (coff_pop_insert): Use coff_pseudo_table.
519 (coff_sec_sym_ok_for_reloc): Remove.
520 (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
521 and comment all zero entries and remove #if 0 code.
522 Update copyright.
523
524 * config/obj-coff.h (obj_pop_insert): Define.
525 (coff_pseudo_table): Declare.
526 Update copyright.
527
528 * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
529 s_get_size, s_set_size. Comment all zero entries.
530 Update copyright.
531
532 * config/obj-elf.c (elf_s_get_other): New function.
533 (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
534 (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
535 (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
536 comment.
537 (obj_elf_parse_section_letters): Don't pass error strings to
538 printf as format arg.
539 Update copyright.
540
541 * config/obj-elf.h (ECOFF_DEBUGGING): Define when
542 OBJ_MAYBE_ECOFF.
543 (elf_s_get_other): Declare.
544 (S_GET_OTHER) Define as elf_s_get_other if not already
545 defined.
546 (S_SET_OTHER): Only define when not already defined.
547 (elf_obj_read_begin_hook): Declare.
548 (obj_read_begin_hook): Define.
549 (elf_obj_symbol_new_hook): Declare.
550 (obj_symbol_new_hook): Define.
551 Update copyright.
552
553 * config/obj-multi.h: Add copyright header and protect against
554 multiple inclusion. Add * to all function pointers.
555 (OBJ_HEADER): If defined, include it rather than other defines
556 in this file.
557 (obj_frob_file_after_relocs): Test for NULL.
558 (obj_symbol_new_hook): Here too.
559 (obj_sec_sym_ok_for_reloc): And here.
560 (S_GET_OTHER): Define.
561 (S_GET_DESC): Define.
562 (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
563 (OBJ_MAYBE_ELF): Update comment.
564
565 * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
566 OBJ_AOUT preprocessor conditional and handle emulation by
567 testing OUTPUT_FLAVOR.
568 (i386_displacement): Here too.
569 (md_section_align): Similarly here.
570 (i386_target_format): Conditionally compile when more than one
571 of OBJ_MAYBE_{ELF,COFF,AOUT} defined. Add aout case.
572 (i386_immediate): Fix error message for aout BFD_ASSMBLER.
573 (i386_displacement): Here too.
574 Update copyright.
575
576 * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
577 Define TARGET_FORMAT for aout only when not multi.
578 Update copyright.
579
580 * config/te-multi.h: Delete file as it's identical to te-generic.h
581
582 2000-01-15 Alan Modra <alan@spri.levels.unisa.edu.au>
583
584 * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
585 * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
586 LONG_MNEM_SUFFIX.
587
588 * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
589 DWORD_MNEM_SUFFIX.
590 * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too. Fix some
591 comments.
592
593 2000-01-13 Clinton Popetz <cpopetz@cygnus.com>
594
595 * config/tc-mips.c (mips_do_align): New function.
596 * config/tc-mips.h (md_do_align): Define.
597
598 2000-01-10 Philip Blundell <philb@gnu.org>
599
600 * doc/c-arm.texi (ARM Options): Fix typo.
601 (ARM-Chars): Correct description of `#'. Mention that `;' is a
602 line separator for Linux.
603 * doc/as.texinfo (Comments): Mention the ARM.
604
605 2000-01-10 Philip Blundell <pb@futuretv.com>
606
607 * configure.in (arm*-*-conix*): New target.
608 (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
609 armv*-*-linux-gnu.
610 * configure: Regenerate.
611
612 2000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de>
613
614 * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
615 (obj_elf_visibility): New function.
616
617 * doc/as.texinfo (Visibility): New node: document visibility
618 pseudo ops.
619
620 1999-12-27 Alan Modra <alan@spri.levels.unisa.edu.au>
621
622 * config/tc-i386.c (MATCH): Relax JumpAbsolute check. Emit a
623 warning for absolute jump/call without `*' in non-intel mode. No
624 need to set i.types[0] JumpAbsolute in intel mode.
625
626 1999-12-22 Philip Blundell <pb@futuretv.com>
627
628 * config/tc-arm.c (arm_s_text): If OBJ_ELF, call the appropriate
629 hook function when changing sections.
630 (arm_s_data): Likewise.
631
632 1999-12-14 Nick Clifton <nickc@cygnus.com>
633
634 * config/tc-arm.c (md_parse_option): Add support for -marm720
635 command line switch.
636
637 Tue Nov 30 22:59:00 1999 Jeffrey A Law (law@cygnus.com)
638
639 * config/tc-mn10300.c (md_pseudo_table): Add ".am33" pseudo-op.
640 (r_registers, xr_registers): Define.
641 (r_register_name, xr_register_name): New functions.
642 (md_assemble): Handle new am33 operand types and instruction
643 formats.
644 (mn10300_insert_operand, check_operand): Likewise.
645
646 1999-11-29 Nick Clifton <nickc@cygnus.com>
647
648 * config/tc-arm.c (thumb_mode): Turn into a tristate variable.
649 (s_force_thumb): Set thumb_mode to 2.
650 (md_assemble): Do not complain about thumb instructions on a
651 non-thumb target if thumb_mode is set to 2.
652
653 1999-11-28 Michael Meissner <meissner@cygnus.com>
654
655 * config/tc-alpha.c (toplevel): Include struc-symbol.h.
656 (alpha_macro_arg): Add MACRO_{LITERAL,BASE,BYTOFF,JSR} cases.
657 (O_...): Add new machine dependent expressions if we are handling
658 explicit relocations.
659 (alpha_reloc_op): New static table holding the explicit relocation
660 information.
661 (alpha_literal_hash): New static to hold the hash table for
662 explicit relocations.
663 (alpha_macros): Add support for explicit relocations.
664 (md_begin): If explicit relocations, initialize hash table.
665 (md_assemble): Don't print a second error if tokenize_arguments
666 already printed an error message.
667 (md_apply_fix): Add support for explicit relocations.
668 (alpha_force_relocation): Ditto.
669 (alpha_fix_adjustable): Ditto.
670 (alpha_adjust_symtab): New function to support explicit
671 relocations.
672 (alpha_adjust_symtab_relocs): Ditto.
673 (debug_exp): Debug stub compiled if DEBUG_ALPHA is defined.
674 (tokenize_arguments): Add debug code if DEBUG_ALPHA is defined.
675 Add support for explicit relocations. Return -2 if an error
676 message was already printed.
677 (find_macro_match): Add support for explicit relocations. Comment
678 each of the cases.
679 (emit_insn): Add support for explicit relocations.
680 (assemble_tokens): Ditto.
681 (emit_ldgp): Ditto.
682 (load_expression): Ditto.
683 (emit_lda): Ditto.
684 (emit_ldah): Ditto.
685 (emit_ir_load): Ditto.
686 (emit_loadstore): Ditto.
687 (emit_ldXu): Ditto.
688 (emit_ldil): Ditto.
689 (emit_sextX): Ditto.
690 (emit_division): Ditto.
691 (emit_jsrjmp): Ditto.
692 (emit_retjcr): Ditto.
693
694 * config/tc-alpha.h (RELOC_OP_P): Enable explicit relocations if
695 ELF object format.
696 (tc_adjust_symtab): If explicit relocations, call the function
697 alpha_adjust_symtab.
698 (TC_FIX_TYPE): Add fields to be able to move explicit lituse
699 relocations next to the literal relocation they reference.
700 (TC_INIT_FIX_DATA): Initialize the new fields.
701 (TC_FIX_DATA_PRINT): Print the new fields if DEBUG5 is defined.
702
703 Wed Nov 24 20:27:58 1999 Jeffrey A Law (law@cygnus.com)
704
705 * config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers. Handle
706 'B' operand for PA2.0 bb instruction.
707
708 1999-11-18 Nick Clifton <nickc@cygnus.com>
709
710 * config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe
711 target.
712
713 * config/tc-mcore.c (tc_gen_reloc): Support generation of RVA
714 relocs.
715 (mcore_force_relocation): Force relocations to be generated for
716 RVA relocs.
717
718 1999-11-16 Alan Modra <alan@spri.levels.unisa.edu.au>
719
720 * config/tc-i386.c (i386_immediate): Disallow O_big immediates.
721 (i386_displacement): Disallow O_big displacements.
722
723 Mon Nov 15 20:12:43 1999 Donald Lindsay <dlindsay@cygnus.com>
724
725 * config/tc-arm.c (do_mia,do_mar,do_mra,do_pld,do_ldrl,do_co_reg): Small
726 improvements in error checking.
727 (md_assemble): Support for unconditional ARM instructions.
728 (md_parse_option): Support for -m[arm]v5e flag.
729
730 1999-11-12 Nick Clifton <nickc@cygnus.com>
731
732 * macro.c (buffer_and_nest): Do not check beyond the end of the
733 buffer.
734
735 1999-11-11 Nick Clifton <nickc@cygnus.com>
736
737 * macro.c (buffer_and_nest): Look for seperator after TO and
738 FROM tokens.
739
740 1999-11-08 Andrew Haley <aph@cygnus.com>
741
742 * app.c (do_scrub_chars): When in State 10, treat backslash
743 characters in the same way as as symbol characters.
744
745 1999-11-07 Richard Henderson <rth@cygnus.com>
746
747 * config/tc-alpha.c (alpha_align): Check, don't assert, that
748 the previous label was in the current section before playing
749 with auto-alignment.
750
751 1999-11-06 Nick Clifton <nickc@cygnus.com>
752
753 * config/tc-v850.c (v850_force_relocation): Force relocation
754 for weak symbols.
755 (v850_pcrel_from_selection): Do not compute a pcrel offset if
756 the symbol is weak.
757
758 1999-11-05 Michael Meissner <meissner@cygnus.com>
759
760 * expr.h (operatorT): Increase machine dependent operators to 16.
761 * expr.c (op_rank): Ditto.
762
763 1999-11-03 Ian Lance Taylor <ian@zembu.com>
764
765 * read.c (pseudo_set): Reject attempts to set the value of a
766 section symbol.
767
768 * config/obj-elf.c (obj_elf_ident): Call md_flush_pending_output
769 if it is defined.
770
771 * config/obj-elf.c (elf_set_index): Add ATTRIBUTE_UNUSED.
772
773 * config/obj-elf.c (elf_frob_file_after_relocs): Don't pass NULL
774 to bfd_set_section_contents.
775
776 1999-11-03 Nick Clifton <nickc@cygnus.com>
777
778 * config/tc-mcore.h (TARGET_BYTES_BIG_ENDIAN): Change to false.
779
780 1999-11-01 Gavin Romig-Koch <gavin@cygnus.com>
781
782 * config/tc-mips.c (macro_build): Use OPCODE_IS_MEMBER.
783 (mips_ip): Use OPCODE_IS_MEMBER.
784
785 Wed Oct 27 16:50:44 1999 Don Lindsay <dlindsay@cygnus.com>
786
787 * config/tc-arm.c (reg_required_here): Improve comments.
788
789 * config/tc-arm.c (thumb_opcode): Add "variants" field.
790 (tinsns): Initialize variants field.
791
792 * config/tc-arm.c (bad_args, bad_pc): Renamed to BAD_ARGS and
793 BAD_PC respectively.
794
795 1999-10-27 Scott Bambrough <scottb@netwinder.org>
796
797 * config/tc-arm.c (reloc_map[]): Fix compiler warning.
798 * config/tc-arm.h: Fix compile time warnings.
799
800 Mon Oct 18 18:11:10 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
801
802 * tc_d10v.c (find_opcode): Allow ATSIGN to match expressions of the
803 form @abs16, @(abs16) and @(abs16 + imm).
804
805 1999-10-21 Gavin Romig-Koch <gavin@cygnus.com>
806
807 * config/tc-mips.c (ISA_HAS_COPROC_DELAYS) : New.
808 (ISA_HAS_64_BIT_REGS) New.
809 (gpr_interlocks,md_begin,reg_needs_delay,append_insn,
810 mips_emit_delays,macro_build,load_register,load_addresss,
811 macro,macro2,mips_ip,s_cprestore,s_cpadd): Simplify
812 and/or use new ISA_xxx macros in expressions involving
813 ISA, particularly mips_opts.isa.
814
815 1999-10-18 Michael Meissner <meissner@cygnus.com>
816
817 * expr.h (operatorT): Add machine dependent operators md1..md8.
818 (expressionS): Make X_op 8 bits instead of 7. Add a X_md field
819 for the machine dependent operators to use.
820
821 * expr.c (op_rank): Add machine dependent operators.
822
823 * config/tc-alpha.c (O_pregister): Define as a machine dependent
824 operator.
825 (O_cpregister): Ditto.
826 (md_begin): Change X_op test that field is wide enough to use
827 O_max instead of O_alpha_max.
828 (cpu_types): Fill in missing initializer.
829 (alpha_num_macros): Make unsigned.
830 (md_assemble): Make opnamelen be size_t.
831 (md_apply_fix): Cast alpha_num_operands to int before testing.
832 (alpha_force_relocation): Ditto.
833 (alpha_fix_adjustable): Ditto.
834 (alpha_fix_adjustable): Mark unused arguments ATTRIBUTE_UNUSED.
835 (tc_gen_reloc): Ditto.
836 (tc_get_register): Ditto.
837 (emit_ldgp): Ditto.
838 (emit_lda): Ditto.
839 (emit_ldah): Ditto.
840 (emit_ldil): Ditto.
841 (s_alpha_ent): Ditto.
842 (s_alpha_end): Ditto.
843 (s_alpha_frame): Ditto.
844 (s_alpha_prologue): Ditto.
845 (s_alpha_file): Ditto.
846 (s_alpha_gprel32): Ditto.
847 (s_alpha_proc): Ditto.
848 (s_alpha_set): Ditto.
849 (s_alpha_base): Ditto.
850 (s_alpha_align): Ditto.
851 (s_alpha_arch): Ditto.
852 (alpha_align): Ditto.
853 (assemble_insn): Suppress unused variable warning.
854 (emit_insn): Ditto.
855 (assemble_insn): Don't assume X_op and X_unsigned are in a given
856 order in the structure.
857 (s_alpha_coff_wrapper): Avoid int/unsigned comparison.
858
859 Sun Oct 17 17:15:58 1999 Jeffrey A Law (law@cygnus.com)
860
861 * config/tc-hppa.c (md_apply_fix): Make "fmt" an int.
862
863 1999-10-12 Alan Modra <alan@spri.levels.unisa.edu.au>
864
865 * config/tc-i386.c (i386_index_check): Correct #endif location.
866
867 Mon Oct 11 14:02:40 1999 Geoffrey Keating <geoffk@cygnus.com>
868
869 * as.c (show_usage): Document new options.
870 (parse_args): Add --no-warn, --warn, --fatal-warnings,
871 which become 'W', OPTION_WARN, and OPTION_WARN_FATAL.
872 (parse_args): Parse the new options.
873 (main): If there were warnings, and --fatal-warnings
874 was specified, print an error.
875 * as.h: New variable, flag_fatal_warnings, for new option.
876
877 Sun Oct 10 01:47:23 1999 Jerry Quinn <jerry.quinn.adv91@alum.dartmouth.org>
878
879 * config/tc-hppa.c (pa_ip): Add new codes 'cc', 'cd', 'cC', 'co',
880 '@'. Change autoincrement completers to fall through to cache control
881 completers.
882
883 * config/tc-hppa.c (pa_ip): Remove unused args. Add code to '?W'
884 arg.
885 (pa_parse_addb_64_cmpltr): New function.
886
887 * config/tc-hppa.c (pa_ip): Change error message.
888 (pa_ip,pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr) Fix '?N' and
889 '?Q' args to allow falling through.
890
891 * configtc-hppa.c (pa_ip): Implement conditional codes "?N", "?Q".
892 Remove unused conditional codes.
893 (pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr): New.
894
895 Thu Oct 7 00:23:53 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
896
897 * config/tc-d30v.c (CHAR_BIT): Define.
898 (check_range): Fix bit operations to support integers bigger than
899 32 bits.
900
901 Thu Oct 7 00:11:50 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
902
903 * config/tc-d10v.c (check_range): Check range for RESTRICTED_NUM3
904 operands.
905
906 Mon Oct 4 17:24:23 1999 Nick Clifton <nickc@cygnus.com>
907 Doug Evans <devans@cygnus.com>
908
909 Add support for m32rx.
910 * config/tc-m32r.c (enable_m32rx): New static global.
911 (enable_special,warn_explicit_parallel_conflicts,optimize): Ditto.
912 (allow_m32rx): New function.
913 (M32R_SHORTOPTS): Add `O'.
914 (md_longopts): Add --m32rx plus several warning options.
915 (md_parse_option): Handle new options.
916 (md_show_usage): Print them.
917 (md_begin): Enable m32rx.
918 (OPERAND_IS_COND_BIT): New macro.
919 (first_writes_to_seconds_operands): New function.
920 (writes_to_pc,can_make_parallel,make_parallel): New functions.
921 (target_make_parallel,assemble_two_insns): New functions.
922 (md_assemble): Recognize "insn1 -> insn2" and "insn1 || insn2".
923 If optimizing and m32rx, try to make consecutive insns parallel.
924
925 Tue Sep 28 14:06:44 1999 Geoffrey Keating <geoffk@cygnus.com>
926
927 * config/tc-mips.c (nopic_need_relax): Allow for the
928 .sdata.foo sections generated by -fdata-sections,
929 and for the .gnu.linkonce.s sections generated by C++.
930
931 Thu Sep 23 07:13:45 1999 Jerry Quinn <jquinn@nortelnetworks.com>
932
933 * config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
934 with cleaner code using completer prefixes. Add 'Y'.
935
936 * config/tc-hppa.c (pa_ip): Add parens to silence compiler.
937
938 Wed Sep 22 09:37:19 1999 Jeffrey A Law (law@cygnus.com)
939
940 * config/tc-hppa.c (pa_ip): Avoid ANSI specific initialization.
941 (pa_ip, case 'm'): Failure to get a CBIT specifier just means the
942 insn does not match and we should try the next insn in the table.
943
944 1999-09-22 Nick Clifton <nickc@cygnus.com>
945
946 * config/tc-arm.c (MULTI_SET_PSR): Rename to LDM_TYPE_2_OR_3.
947
948 Mon Sep 20 04:01:41 1999 Jeffrey A Law (law@cygnus.com)
949
950 * config/tc-hppa.c (pa_ip): Fix thinkos in recent cleanup
951 of PA2.0 support.
952
953 1999-09-19 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
954
955 * config/tc-i386.c (md_shortopts): Check OBJ_MAYBE_ELF as well as
956 OBJ_ELF. If ELF, add "sq".
957 (md_parse_option): If ELF, ignore -s and -q.
958 (md_show_usage): Mention ELF options.
959
960 Sun Sep 19 10:43:31 1999 Jeffrey A Law (law@cygnus.com)
961
962 * config/tc-hppa.c (pa_ip): Handle 'J', 'K' and 'cc'
963 operands.
964
965 * config/tc-hppa.c (pa_ip); Handle "fe", and 'cJ'.
966
967 * config/tc-hppa.c (pa_ip): Handle 'd', '#' and 'cq'.
968
969 * config/tc-hppa.c (struct pa_it): New field "trunc".
970 (pa_ip): Hadnle 'h', 'm', '=', '{', and '_' operands.
971 (pa_parse_ftest_gfx_completer): New function
972 (pa_parse_fp_cnv_format): New function.
973
974 * config/tc-hppa.c (pa_ip): Handle 'X' operand.
975 (md_apply_fix): Handle 22bit pc-rel branches.
976
977 * config/tc-hppa.c (pa_ip): Handle 'B' operand.
978
979 * config/tc-hppa.c (pa_ip): Handle 'L' and 'M' operands.
980
981 * config/tc-hppa.c (pa_ip): Handle 'l' operand.
982
983 * config/tc-hppa.c (pa_ip): Handle 'g' operand.
984
985 at Sep 18 12:13:28 1999 Jeffrey A Law (law@cygnus.com)
986
987 * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
988 (pa_ip): Handle 'fX'.
989
990 Sat Sep 18 12:13:28 1999 Jeffrey A Law (law@cygnus.com)
991
992 * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
993 (pa_ip): Handle 'fX'.
994
995 Fri Sep 17 11:57:34 1999 Jeffrey A Law (law@cygnus.com)
996
997 * config/tc-hppa.c (pa_build_unwind_subspace): Do not build
998 unwinds unless the function is in the text space.
999 (pa_type_args): Set BSF_FUNCTION for an exproted data symbol.
1000
1001 Wed Sep 15 05:14:32 1999 Jeffrey A Law (law@cygnus.com)
1002
1003 * config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
1004 (md_assemble): To here. Tweak address generation.
1005
1006 * config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF. Declare
1007 debug_line.
1008 (md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
1009 (md_assemble): Call dwarf2_where for OBJ_ELF.
1010 (pa_ip): Call dwarf2_gen_line_info for OBJ_ELF.
1011 (pa_end_of_source): New function.
1012 * tc-hppa.h (md_end): Define for OBJ_ELF.
1013
1014 1999-09-14 Michael Meissner <meissner@cygnus.com>
1015
1016 * configure.in (Canonicalization of target names): Remove adding
1017 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
1018 generates $ac_config_sub with a ${CONFIG_SHELL} already.
1019 * configure: Regenerate.
1020
1021 1999-09-14 Donn Terry <donn@interix.com>
1022
1023 * config/te-interix.h (GLOBAL_OFFSET_TABLE_NAME): Define.
1024
1025 1999-09-13 Alan Modra <alan@spri.levels.unisa.edu.au>
1026
1027 * config/tc-i386.c (md_assemble): Handle "jmp/call constant" as a
1028 pc-relative jmp/call to an absolute symbol.
1029 (md_apply_fix3): When OBJ_ELF, don't add the values in twice for
1030 absolute section symbols.
1031
1032 * config/tc-i386.c (md_assemble): Correct frag_var size. Tidy
1033 jump handling code and comments.
1034
1035 1999-09-12 Ian Lance Taylor <ian@zembu.com>
1036
1037 * config/tc-i386.c (md_apply_fix3): Add horrible adjustments to
1038 the value if TE_PE and a global defined symbol.
1039
1040 1999-09-11 Ian Lance Taylor <ian@zembu.com>
1041
1042 * write.c (dump_section_relocs): Call print_symbol_value_1 to
1043 print the symbol, rather than printing it here.
1044
1045 1999-09-11 Donn Terry <donn@interix.com>
1046
1047 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
1048 BFD_RELOC_RVA relocations.
1049
1050 * config/tc-i386.c (md_undefined_symbol): Compare the name against
1051 the macro GLOBAL_OFFSET_TABLE_NAME, rather than assuming that it
1052 starts with "_G".
1053
1054 * write.c (write_relocs): Call SET_SECTION_RELOCS if it is
1055 defined.
1056 * config/obj-coff.h (SET_SECTION_RELOCS): Define.
1057 * doc/internals.texi (Object format backend): Document
1058 SET_SECTION_RELOCS.
1059
1060 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
1061 relocations against global symbols if TE_PE.
1062
1063 * config/obj-coff.c (obj_coff_ident): Add BFD_ASSEMBLER version.
1064 (obj_pseudo_table): Always handle ".ident" with obj-coff_ident.
1065
1066 * config/obj-coff.c (coff_frob_symbol): Prohibit weak common
1067 symbols.
1068
1069 * config/obj-coff.c (obj_coff_endef): Don't merge labels, or
1070 symbols which do not have a constant value, or tags with
1071 non-tags. Remove the symbol from the list before adding it at the
1072 end.
1073
1074 * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Handle .ef
1075 C_FCN symbol differently if TE_PE.
1076 (obj_coff_line) [BFD_ASSEMBLER]: Always use the line number which
1077 appears in the pseudo-op, rather coff_line_base which is only set
1078 for a .bf symbol.
1079
1080 * config/obj-coff.c (obj_coff_loc): New static function.
1081 (obj_pseudo_table): Add "loc".
1082
1083 * config/obj-coff.c (add_lineno): Check that the line number is
1084 positive.
1085
1086 * config/atof-ieee.c (atof_ieee): Change what_kind to int.
1087 * config/atof-vax.c (flonum_gen2vax): Change format_letter to
1088 int.
1089 (md_atof): Return NULL rather than 0.
1090 * config/tc-i386.c (md_atof): Change type to int.
1091 * expr.c (expr): Change first parameter to int.
1092 * config/obj-coff.c: Add declarations for static functions.
1093 (coff_frob_symbol): Use SYM_AUXENT.
1094 * config/tc-i386.h (flag_16bit_code): Don't declare.
1095
1096 * config/obj-coff.c (obj_coff_section): Default to setting
1097 SEC_LOAD. Don't set SEC_DATA for 'w' modifier.
1098
1099 * write.c (adjust_reloc_syms): Print adjusted fixup.
1100
1101 * expr.c (integer_constant): Correct too_many_digits calculation
1102 in base 10 case.
1103
1104 1999-09-09 Andreas Schwab <schwab@suse.de>
1105
1106 * doc/c-arm.texi: Fix arguments of @var to not contain
1107 punctuation.
1108
1109 1999-09-08 Philip Blundell <pb@nexus.co.uk>
1110
1111 * config/tc-arm.c (s_thumb_set): Only support interworking for ELF
1112 and COFF targets.
1113 (md_parse_option): Only support -k flag for ELF and COFF targets.
1114
1115 Tue Sep 7 13:28:59 1999 Jeffrey A Law (law@cygnus.com)
1116
1117 * config/tc-hppa.c (pa_ip): Put strict register checks before
1118 call to pa_parse_number.
1119
1120 * config/tc-hppa.c (pa_ip): Support 'Z' argument.
1121
1122 1999-09-06 Ian Lance Taylor <ian@zembu.com>
1123
1124 * config/obj-coff.c: Add ATTRIBUTE_UNUSED as needed for
1125 BFD_ASSEMBLER code.
1126
1127 1999-09-06 Donn Terry <donn@interix.com>
1128
1129 * as.c (perform_an_assembly_pass): Set SEC_DATA for data_section.
1130
1131 Mon Sep 6 04:26:56 1999 Jeffrey A Law (law@cygnus.com)
1132
1133 * config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
1134 candidate instruction. Require registers for register arguments
1135 when in strict mode. Require assemble-time constants for
1136 constants when in strict mode.
1137 (pa_get_absolute_expression): Require a constant when in strict
1138 mode.
1139
1140 1999-09-06 Nick Clifton <nickc@cygnus.com>
1141
1142 * config/tc-m32r.c (md_longopts): Fix value for -Wnuh.
1143
1144 1999-09-04 Steve Chamberlain <sac@pobox.com>
1145
1146 * config/tc-pj.c: New file, supports picoJava in ELF.
1147 * config/tc-pj.h: Ditto.
1148 * configure.in (pjl*, pj*): New targets.
1149 * Makefile.am: Rebuild dependencies.
1150 (CPU_TYPES): Add pj.
1151 (TARGET_CPU_CFILES): Add config/tc-pj.c.
1152 (TARGET_CPU_HFILES): Add config/tc-pj.h.
1153 * doc/c-pj.texi: New file.
1154 * doc/as.texinfo: Add some PJ specifics.
1155 * doc/all.texi: Add PJ to the list of all architectures, sort them
1156 all alphabetically.
1157 * doc/Makefile.in (CPU_DOCS): Add c-pj.texi.
1158 * configure, Makefile.in, doc/Makefile.in: Rebuild.
1159
1160 1999-09-02 Alan Modra <alan@spri.levels.unisa.edu.au>
1161
1162 * config/obj-multi.h: Include obj-elf.h if OBJ_MAYBE_ELF. Reformat.
1163 (obj_frob_file): Test for null pointer.
1164 (OBJ_COPY_SYMBOL_ATTRIBUTES): Here too.
1165 (OBJ_PROCESS_STAB): And here.
1166 (elf_obj_sy): Remove
1167
1168 * config/obj-elf.h: #ifndef everything defined in obj-multi.h,
1169 except OBJ_PROCESS_STAB, which we #undef for ecoff.
1170 (elf_obj_sy): Remove #ifndef OBJ_SYMFIELD_TYPE.
1171
1172 * config/obj-coff.c (no_func): Remove.
1173 (coff_format_ops): Change occurrences of no_func to 0, as we test
1174 for 0 in obj-multi.h.
1175
1176 * configure.in: Enable bfd for i386-coff when primary target is
1177 bfd. Enable i386 elf,coff emulation support. Don't set
1178 USE_EMULATIONS=1 or te_file=multi unless there is more than one
1179 emulation to support.
1180 *configure: Regenerate.
1181
1182 1999-09-02 Nick Clifton <nickc@cygnus.com>
1183
1184 * config/tc-mcore.c (mcore_s_section): Do not dump literals if a
1185 .section .line directive is encountered.
1186
1187 1999-09-01 Nick Clifton <nickc@cygnus.com>
1188
1189 * config/tc-arm.c (md_section_align): Do not align sections in ELF
1190 format.
1191
1192 * as.c (show_usage): Add --gdwarf2 to list of options displayed.
1193 * as.texinfo: Document --gdwarf2 command line option.
1194 Add additional documentation of ARM command line switches.
1195
1196 1999-08-30 Alan Modra <alan@spri.levels.unisa.edu.au>
1197
1198 * config/tc-i386.c (i386_intel_memory_operand): Combine
1199 i386_is_reg and parse_register calls. Remove END_STRING_AND_SAVE
1200 and RESTORE_END_STRING around parse_register calls.
1201 (i386_operand): Here too.
1202 (i386_is_reg): Remove.
1203 (parse_register): Move as_bad calls from within this function to
1204 callers.
1205
1206 1999-08-29 Alan Modra <alan@spri.levels.unisa.edu.au>
1207
1208 Based on a patch from H.J. Lu <hjl@gnu.org>
1209 * config/tc-i386.c (parse_register): Handle FP regs specially.
1210 (md_begin): Remove '(' and ')' from register_chars.
1211
1212 1999-08-29 Doug Evans <devans@casey.cygnus.com>
1213
1214 * config/tc-m32r.c (md_parse_option): Delete unrecognized option
1215 error message (done elsewhere).
1216
1217 Sat Aug 28 01:23:11 1999 Jeffrey A Law (law@cygnus.com)
1218
1219 * config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers.
1220
1221 Sat Aug 28 00:26:26 1999 Jerry Quinn <jquinn@nortelnetworks.com>
1222
1223 * config/tc-hppa.c (pa_ip): Replace 'f' by 'v'. Prefix float register
1224 args by 'f'.
1225
1226 * config/tc-hppa.c (pa_ip): Add args q, %, and |.
1227
1228 * config/tc-hppa.c (pa_ip): Absorb white space in instructions
1229 between args.
1230 Add new completers. Fix bug in 64 bit condition handling.
1231
1232 * config/tc-hppa.c (pa_ip): Add completer codes 'a', 'ch', 'cH',
1233 'cS', and 'c*'.
1234
1235 * config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'.
1236
1237 * config/tc-hppa.c (pa_ip): Add cases for '.', '~'. '$'. and '!'
1238
1239 * config/tc-hppa.c (pa_ip): Add case for 'I'.
1240
1241 1999-08-27 Jim Wilson <wilson@cygnus.com>
1242
1243 * dwarf2dbg.c (MAX_SPECIAL_ADDR_DELTA): Correct typo in comment.
1244 (struct ls): Add frag field. Initialize it to zero.
1245 (out_end_sequence): New local text_frag. Set it while in text section.
1246 Replace address check with frag check. Set ls.frag to text_frag if
1247 out_set_addr called.
1248 (dwarf2_gen_line_info): Add explanatory comment. New local saved_frag.
1249 Set it before switching sections. Replace address check with frag
1250 check. Set ls.frag to saved_frag if out_set_addr called.
1251
1252 1999-08-26 David Mosberger <davidm@hpl.hp.com>
1253
1254 * dwarf2dbg.c (out_end_sequence): If address changed, directly
1255 output "advance_pc" opcode instead of calling gen_addr_line().
1256 The latter has the undesired side-effect of creating a new row
1257 in the debug line info matrix.
1258
1259 1999-08-26 Jim Wilson <wilson@cygnus.com>
1260
1261 * dwarf2dbg.c (out_end_sequence): Correct comments. Set last to
1262 ls.last_filename if last is less than zero. Set ls.last_filename
1263 when allocating new entry.
1264 (dwarf2_gen_line_info): Save seg and subseg info before subseg_new
1265 call.
1266
1267 1999-08-20 Alan Modra <alan@spri.levels.unisa.edu.au>
1268
1269 * config/tc-i386.c (i386_index_check): Fix the displacement size
1270 when INFER_ADDR_PREFIX.
1271
1272 1999-08-18 Nick Clifton <nickc@cygnus.com>
1273
1274 * config/tc-arm.c (md_apply_fix3): If an offset is invalid,
1275 display its value.
1276
1277 1999-08-17 Ian Lance Taylor <ian@zembu.com>
1278
1279 * config/tc-ppc.c (md_assemble): Trim @ha constant to 16 bits, to
1280 handle 0xffffNNNN constants correctly.
1281
1282 1999-08-16 Nick Clifton <nickc@cygnus.com>
1283
1284 * config/tc-arm.c (do_ldst): Look for register conflicts on stores
1285 as well as loads.
1286
1287 1999-08-13 Nick Clifton <nickc@cygnus.com>
1288
1289 * config/tc-arm.c (validate_offset_imm): Work on unsigned values.
1290 (md_apply_fix3): Always pass positive values to
1291 validate_offset_imm.
1292
1293 1999-08-12 Nick Clifton <nickc@cygnus.com>
1294
1295 * config/tc-arm.c (skip_whitespace): New macro.
1296 Formatting tidy ups.
1297
1298 (md_apply_fix3): Store relocation offset in addend for ELF based
1299 relocs.
1300 (arm_force_relocation): Always generate relocs for Thumb function
1301 calls.
1302
1303 1999-08-11 Alan Modra <alan@spri.levels.unisa.edu.au>
1304
1305 * config/tc-i386.c (md_assemble): Remove dead code. intel_syntax
1306 LONG_DOUBLE_MNEM_SUFFIX floating point is done in opcode/i386.h
1307
1308 Tue Aug 10 12:58:31 1999 Jeffrey A Law (law@cygnus.com)
1309
1310 * config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
1311 flags for the unwind subspace.
1312
1313 * config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
1314 (pa_build_unwind_subspace): Remove #if 0 wrapper. Select a
1315 suitable relocation based on the size of the target's pointer.
1316 Always Use subsegment zero for the unwinders.
1317 (pa_level): Handle "2.0w".
1318
1319 Mon Aug 9 20:02:22 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1320
1321 * config/tc-d30v.c (write_2_short): Don't group repeat instructions
1322 with the following instruction unless this was specified.
1323
1324 1999-08-09 Ian Lance Taylor <ian@zembu.com>
1325
1326 * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 for
1327 certain sections, to match BFD changes.
1328
1329 1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
1330
1331 * Makefile.am (noinst_SCRIPTS): Change .gdbinit to $(GDBINIT).
1332 (EXTRA_SCRIPTS): Define to keep automake happy.
1333 * Makefile.in: Rebuild.
1334
1335 1999-08-08 Ian Lance Taylor <ian@zembu.com>
1336
1337 * Makefile.am: Rename .dep* files to DEP*.
1338 (MKDEP): Rename from DEP. Change all uses. Use $${srcdir} rather
1339 than $(srcdir). Rename TCDEP targets to DEPTC. Rename OBJDEP
1340 targets to DEPOBJ.
1341 * Makefile.in: Rebuild.
1342
1343 1999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
1344
1345 * config/tc-sparc.c (sparc_ip): Allow assembly of %lo()+%reg.
1346
1347 1999-08-08 Ian Lance Taylor <ian@zembu.com>
1348
1349 * Makefile.am: Change all uses of itbl-test-ops to itbl-tops to
1350 avoid problems on DOS filesystems.
1351 * Makefile.in: Rebuild.
1352
1353 * doc/as.texinfo (Section): Document 's' flag for COFF version.
1354
1355 1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
1356
1357 * config/obj-coff.c (obj_coff_section): Handle 's' (shared)
1358 section flag.
1359
1360 1999-08-08 Ian Lance Taylor <ian@zembu.com>
1361
1362 * configure.in: Define and substitute GDBINIT. Change AC_OUTPUT
1363 line to create ${GDBINIT} rather than .gdbinit.
1364 * configure, Makefile.in, doc/Makefile.in: Rebuild.
1365
1366 Fri Aug 6 12:12:44 1999 Jeffrey A Law (law@cygnus.com)
1367
1368 * config/tc-hppa.c (pa_ip, case '?'): Add missing break.
1369
1370 Fri Aug 6 09:46:35 1999 Jerry Quinn <jquinn@nortelnetworks.com>
1371
1372 * config/tc-hppa.c (pa_ip): Add 64 bit condition completers.
1373
1374 1999-08-06 Jakub Jelinek <jj@ultra.linux.cz>
1375
1376 * config/tc-sparc.h (tc_fix_adjustable): Fix check for PIC local
1377 non-adjustable symbols.
1378
1379 Thu Aug 5 16:52:51 1999 Jerry Quinn <jquinn@nortelnetworks.com>
1380
1381 * config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix.
1382
1383 Thu Aug 5 23:05:56 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1384
1385 * config/tc-sh.c (md_assemble): Call as_bad when there are excess
1386 operands.
1387
1388 1999-08-05 Donn Terry <donn@interix.com>
1389
1390 * config/te-interix.h: New file.
1391 * configure.in (i386-*-interix*): New target.
1392 * configure: Rebuild.
1393
1394 Wed Aug 4 13:12:17 1999 Jeffrey A Law (law@cygnus.com)
1395
1396 * config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
1397 selectors for ELF too.
1398 (selector_table): Add "ltp" and "rtp" selectors.
1399
1400 1999-08-04 Alan Modra <alan@spri.levels.unisa.edu.au>
1401
1402 * config/tc-i386.c (i386_operand): No need to change
1403 operand_string pointer in segment reg case before goto
1404 do_memory_reference. Initialise displacement_string_start and
1405 displacement_string_end after do_memory_reference label.
1406 (i386_index_check): Add operand_string param, and print error
1407 message on failure here.
1408 (i386_intel_memory_operand): Instead of here.
1409 (i386_operand): And here.
1410 (INFER_ADDR_PREFIX): Enable.
1411
1412 * doc/c-i386.texi (i386-16bit): Document .code16gcc.
1413
1414 * config/tc-i386.h (DefaultSize): Define. Renumber following
1415 opcode_modifier defines.
1416
1417 From Etienne Lorrain <etienne.lorrain@ibm.net>
1418 * config/tc-i386.c (stackop_size): New variable.
1419 (set_16bit_code_flag): Clear it here.
1420 (set_16bit_gcc_code_flag): New function.
1421 (md_pseudo_table): Add "code16gcc" entry.
1422 (md_assemble): Set i.suffix for insns with DefaultSize modifier.
1423
1424 1999-08-03 Ian Lance Taylor <ian@zembu.com>
1425
1426 * config/obj-coff.c (coff_frob_symbol): Always update set_end with
1427 next_set_end even if the end symbol is being discarded.
1428
1429 * gasp.c: Add ATTRIBUTE_UNUSED as needed for non-BFD_ASSEMBLER.
1430 * output-file.c, symbols.c, config/tc-i386.c: Likewise.
1431 * config/obj-coff.c: Likewise.
1432 (seg_info_type): Remove.
1433 (seg_info_off_by_4): Change to array of segT.
1434 (s_get_segment): Adjust accordingly.
1435 (obj_pseudo_table): Fully initialize sentinel entry.
1436
1437 * config/tc-mips.c (append_insn): Correct INSN_SYNC test. From
1438 Ralf Baechle <ralf@uni-koblenz.de>.
1439
1440 1999-08-03 Etienne Lorrain <etienne.lorrain@ibm.net>
1441
1442 * config/tc-i386.c (f16_3): New. Fixes 16 bit 3 byte nop.
1443
1444 1999-08-03 Alan Modra <alan@spri.levels.unisa.edu.au>
1445
1446 * config/tc-i386.c: Indentation and white space changes.
1447 (i386_index_check): New function. Add INFER_ADDR_PREFIX code, but
1448 don't enable it by default.
1449 (i386_intel_operand): Remove redundant prototype.
1450 Move check on number of memory operands, and i.mem_operands++
1451 (i386_intel_memory_operand): To here.
1452 Remove i386_immediate code from here. Remove special case code
1453 for input and output using (%dx). Remove base/index checks and
1454 call i386_index_check instead. Save initial operand_string
1455 argument for error message.
1456 (i386_operand): Remove redundant prototype. Move base/index
1457 checks to i386_index_check.
1458 (i386_displacement): Move intel mode check for non-zero
1459 i.disp_operand
1460 (i386_intel_memory_operand): To here.
1461
1462 1999-07-30 Jakub Jelinek <jj@ultra.linux.cz>
1463
1464 * config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
1465 (sparc_ip): Warn if %g2 or %g3 register is used and not covered
1466 by .register pseudo-op if -64 and --no-undeclared-regs.
1467 (s_register, sparc_adjust_symtab): New functions.
1468 * config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
1469 Declare sparc_adjust_symtab as tc_adjust_symtab.
1470 * doc/c-sparc.texi: Add description of #ignore special literal
1471 for .register pseudo-op.
1472
1473 1999-07-30 Catherine Moore <clm@cygnus.com>
1474
1475 * config/tc-arm.c (tc_gen_reloc): Record the vtable entry in
1476 the relocation's section offset.
1477
1478 1999-07-29 Alan Modra <alan@spri.levels.unisa.edu.au>
1479
1480 * write.c (fixup_segment): Fix generic error check overflow test.
1481
1482 * config/tc-i386.c (pe): Change %d to %ld, %x to %lx, and cast
1483 X_add_number to long.
1484
1485 Wed Jul 28 02:04:24 1999 "Jerry Quinn" <jquinn@nortelnetworks.com>
1486
1487 * config/tc-hppa.c (pa_ip): Add 'J' and 'K' code
1488 processing.
1489
1490 1999-07-27 Ian Lance Taylor <ian@zembu.com>
1491
1492 * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
1493 VTABLE relocations.
1494
1495 1999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
1496
1497 * config/te-go32.h (COFF_LONG_SECTION_NAMES): Define.
1498
1499 * configure.bat: Remove; obsolete.
1500 * config/go32.cfg: Likewise.
1501
1502 1999-07-21 Brad M. Garcia <bgarcia@fore.com>
1503
1504 * configure.in (i386-*-vxworks*): New target.
1505 * configure: Rebuild.
1506
1507 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
1508
1509 * doc/c-sparc.texi: Document .register and .nword pseudo-ops.
1510
1511 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
1512
1513 * config/tc-sparc.c (sparc_ip): Allow OLO10 relocations
1514 on -64 and not pic.
1515 (output_insn): Put OLO10's secondary addend into tc_fix_data.
1516 (md_apply_fix3): Handle BFD_RELOC_SPARC_OLO10.
1517 (tc_gen_reloc): Return two relocs for OLO10, LO10 and SPARC13.
1518 * config/tc-sparc.h (RELOC_EXPANSION_POSSIBLE,
1519 MAX_RELOC_EXPANSION): Define.
1520 (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
1521
1522 1999-07-16 Alan Modra <alan@spri.levels.unisa.edu.au>
1523
1524 * config/tc-i386.c (intel_float_operand): Add prototype, make static.
1525 (md_assemble): Localize *exp variable to if (fake_zero_displacement)
1526 block. Print a warning if an 8-bit or 16-bit constant
1527 displacement or immediate is truncated on output.
1528 (i386_immediate): Ensure Imm16 is always legal for a 16-bit mode
1529 immediate.
1530 (i386_operand): Disallow immediate jump absolute operand.
1531
1532 1999-07-15 Ian Lance Taylor <ian@zembu.com>
1533
1534 * configure.in: Bump version number to 2.9.5.
1535 * configure: Rebuild.
1536
1537 * dwarf2dbg.c (dwarf2_gen_line_info): Don't assume that long long
1538 or %llx work.
1539
1540 Thu Jul 15 02:45:30 1999 Jeffrey A Law (law@cygnus.com)
1541
1542 * config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
1543 (cons_fix_new_hppa): Derive size of fixup from size of the object.
1544
1545 1999-07-14 Philip Blundell <pb@nexus.co.uk>
1546
1547 * symbols.c (dollar_label_name): Prepend LOCAL_LABEL_PREFIX if it
1548 is defined.
1549 * config/tc-arm.h (LOCAL_LABEL_PREFIX): Define to '.' for ELF.
1550
1551 * config/tc-arm.c (md_begin): Set F_SOFTFLOAT in the output file
1552 if -mno-fpu was given.
1553 (tc_gen_reloc): Fix typo. Delete bogus code related to GOTPC
1554 relocs.
1555 (cons_fix_new_arm): Remove misleading comments.
1556
1557 1999-07-14 Ian Lance Taylor <ian@zembu.com>
1558
1559 * write.c (cvt_frag_to_fill): Use frag file and line in rs_org
1560 error message.
1561 (relax_segment): Likewise. After giving a rs_org error, convert
1562 the frag to rs_align to avoid cascading errors.
1563
1564 1999-07-12 Andreas Schwab <schwab@suse.de>
1565
1566 * config/tc-m68k.c: Add some ATTRIBUTE_UNUSED.
1567
1568 1999-07-11 Ian Lance Taylor <ian@zembu.com>
1569
1570 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
1571 as appropriate. Fill in structure initializations. Add variable
1572 initializations. Add casts.
1573 * dwarf2dbg.c (print_stats): Change i to size_t.
1574 * listing.c (listing_listing): Change list_line to unsigned int.
1575
1576 1999-07-10 Ian Lance Taylor <ian@zembu.com>
1577
1578 * config/tc-ppc.h (tc_fix_adjustable) [OBJ_ELF]: Call S_IS_LOCAL
1579 rather than checking for \001 and \002 in symbol name.
1580 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: Likewise.
1581
1582 Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
1583
1584 * configure.in (hppa*-linux-gnu*): New target.
1585 * configure: Rebuilt.
1586
1587 1999-07-08 Nick Clifton <nickc@cygnus.com>
1588
1589 * doc/c-arm.texi (ARM Directives): Document .thumb_set directive.
1590
1591 1999-07-07 Nick Clifton <nickc@cygnus.com>
1592
1593 * config/tc-v850.c (v850_comm): Use symbol_get_obj() rather than
1594 accessing symbolP directly.
1595
1596 Tue Jul 6 10:41:42 1999 Jeffrey A Law (law@cygnus.com)
1597
1598 * config/tc-hppa.h (tc_frob_symbol): Always punt "$global$" symbol
1599 for ELF.
1600
1601 1999-07-05 Nick Clifton <nickc@cygnus.com>
1602
1603 * config/tc-arm.c (ARM_EXT_V5): Define.
1604 (ARM_ARCH_V5, ARM_ARCH_V5T): Define.
1605 (md_begin): Detect ARM v5 architectures.
1606 (md_parse_option): Accept arm v5 specification.
1607 (md_show_usage): Documment -marmv5 switch.
1608
1609 * doc/c-arm.texi: Document -marmv5 command line option.
1610
1611 * config/tc-arm.c (do_adrl): New function. Implement ADRL pseudo
1612 op.
1613 (validate_immediate_twopart): New function. Determine if a
1614 constant can be computed by two ADD instructions.
1615 (output_inst): Remove its command line parameter - it was never
1616 used.
1617 (md_apply_fix3): Support BFD_RELOC_ARM_ADRL_IMMEDIATE, used to
1618 implememt the ADRL pseudo op.
1619 (tc_gen_reloc): Generate a suitable error message if an ADRL
1620 instruction tries to generate a real reloc.
1621
1622 * doc/c-arm.texi: Document NOP, ADR and ADRL pseudo ops.
1623
1624 Thu Jul 1 15:33:10 1999 Jeffrey A Law (law@cygnus.com)
1625
1626 * config/tc-hppa.c (pa_ip): Convert the opcode and all completers
1627 into lower case.
1628
1629 1999-06-27 H.J. Lu <hjl@gnu.org>
1630
1631 * subsegs.c (subseg_text_p): Use 1/0 instead of true/false for
1632 non BFD_ASSEMBLER case.
1633
1634 1999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
1635
1636 * config/obj-coff.c (obj_coff_section): Mark writable sections as
1637 data.
1638
1639 1999-06-26 David Mosberger <davidm@hpl.hp.com>
1640
1641 * dwarf2dbg.c (dwarf2_gen_line_info): Don't call
1642 out_end_sequence() when the address decreases due to a new frag.
1643 (gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
1644 numbering starts with 1.
1645
1646 1999-06-23 Nick Clifton <nickc@cygnus.com>
1647
1648 * config/tc-mcore.c (md_pseudo_table): Add .comm for ELF and allow
1649 .section for COFF.
1650 (mcore_s_text): Call obj_elf_text for ELF target.
1651 (mcore_s_data): Call obj_elf_data for ELF target.
1652 (mcore_s_section): No longer ELF specific. Call obj_coff_section
1653 for COFF target.
1654 (mcore_s_bss): New function: Dump literal table before changing
1655 sections.
1656 (mcore_s_comm): New function: Dump literal table before changing
1657 sections.
1658
1659 * config/obj-elf.c (obj_elf_common, obj_elf_data, obj_elf_text):
1660 No longer static functions.
1661 * config/obj-elf.h (obj_elf_common, obj_elf_data, obj_elf_text):
1662 Provide prototypes for these functions.
1663
1664 1999-06-22 Ian Lance Taylor <ian@zembu.com>
1665
1666 * subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
1667 a list of names, to try obj_segment_name, and to try abbreviated
1668 names when using COFF without long section names.
1669
1670 * config/tc-alpha.c: More use of symbol accessor functions.
1671 * config/tc-arc.c: Likewise.
1672 * config/tc-d30v.c: Likewise.
1673 * config/tc-fr30.c: Likewise.
1674 * config/tc-i860.c: Likewise.
1675 * config/tc-m88k.c: Likewise.
1676 * config/tc-mcore.c: Likewise.
1677 * config/tc-ns32k.c: Likewise.
1678 * config/tc-sparc.c: Likewise.
1679 * config/tc-v850.c: Likewise.
1680
1681 * config/tc-arc.c (get_arc_exp_reloc_type): Change uses of
1682 sy_value with appropriate accessor functions.
1683 * config/tc-arm.c (md_apply_fix3): Likewise.
1684 * config/tc-d10v.c (AT_WORD_P): Likewise.
1685 * config/tc-v850.c (reg_name_search): Likewise.
1686
1687 * config/obj-ecoff.c (obj_ecoff_set_ext): Change uses of bsym to
1688 use symbol_get_bfdsym instead.
1689 * config/tc-ppc.c (md_assemble): Likewise.
1690 * config/tc-v850.c (v850_comm): Likewise.
1691
1692 1999-06-22 Jonathan Larmour <jlarmour@cygnus.co.uk>
1693
1694 * config/tc-arc.c (tc_gen_reloc): Use symbol_get_bfdsym to get at
1695 the symbol, rather than accessing the bsym member.
1696 * config/tc-d10v.c (tc_gen_reloc): Likewise.
1697 * config/tc-d30v.c (tc_gen_reloc): Likewise.
1698 * config/tc-mcore.c (tc_gen_reloc): Likewise.
1699 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
1700 * config/tc-mn10300.c (tc_gen_reloc): Likewise.
1701 * config/tc-ns32k.c (tc_gen_reloc): Likewise.
1702 * config/tc-tic30.c (tc_gen_reloc): Likewise.
1703 * config/tc-v850.c (tc_gen_reloc): Likewise.
1704
1705 Mon Jun 21 16:45:19 1999 Jeffrey A Law (law@cygnus.com)
1706
1707 * tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
1708 (hppa_gen_reloc_type): Conditionalize on BFD64.
1709 (tc_gen_reloc): Re-enable ELF relocations.
1710 * tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
1711
1712 1999-06-21 Ian Lance Taylor <ian@zembu.com>
1713
1714 * config/tc-arm.c (ldst_extend): Add parentheses to avoid
1715 warning.
1716 (do_ldst): Move assignment out of if condition.
1717 (md_apply_fix3): Add casts to avoid printf format warnings. Add
1718 parentheses to avoid warning.
1719
1720 1999-06-21 Nick Clifton <nickc@cygnus.com>
1721
1722 * config/tc-arm.c (arm_adjust_symtab): Use symbol_get_bfdsym()
1723 macro to get at the BFD symbol associated with a GAS symbol.
1724
1725 1999-06-19 Ian Lance Taylor <ian@zembu.com>
1726
1727 * config/tc-ppc.c: Update for symbol handling changes.
1728 * config/obj-coff.c: Likewise.
1729
1730 Fri Jun 18 14:34:18 1999 Jeffrey A Law (law@cygnus.com)
1731
1732 * tc-hppa.c: General cleanups of ELF support. No more spaces
1733 and subspaces for ELF.
1734 (GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
1735 (GDB_STRINGS_SUBSPACE_NAME): Likewise.
1736 (GDB_SYMBOLS_SUBSPACE_NAME): Likewise
1737 (UNWIND_SECTION_NAME): Likewise.
1738 (space/subspace related structures): Conditionalize definitions
1739 on OBJ_SOM.
1740 (space/subspace directives and support routines): Conditionalize
1741 definitions and references/uses on OBJ_SOM.
1742 (label_symbol_struct): For ELF, track the symbol's segment. For
1743 SOM track its space.
1744 (pa_define_label, pa_undefine_label, pa_get_label): Corresponding
1745 changes.
1746 (USE_ALIASES): Kill for both SOM & ELF.
1747 (pa_def_subspaces, pa_def_spaces): Corresponding changes.
1748 (pa_space, pa_subspace): Corresponding changes.
1749 (pa_spaces_begin): Corresponding chagnes.
1750 (md_begin): Do not muck around with space/subspace stuff for
1751 OBJ_ELF.
1752 (md_apply_fix): Temporarily disable argument relocation stuff
1753 for OBJ_ELF.
1754 (tc_gen_reloc): Temporarily disable relocation generation for
1755 OBJ_ELF
1756 (pa_build_unwind_subspace): Similarly.
1757
1758 1999-06-16 Nick Clifton <nickc@cygnus.com>
1759
1760 * config/tc-arm.c (thumb_set): New pseudo op.
1761 (text, data, section): Override these pseudo ops with ARM
1762 specific versions.
1763 (s_thumb_set): New function: Perform the same as a .set pseudo
1764 op, but also mark the alias'ed symbol as being a Thumb
1765 function.
1766 (arm_s_text): New function: Perform the same as the .text
1767 pseudo op, but dump the literal pool before changing
1768 sections.
1769 (arm_s_data): New function: Perform the same as the .data
1770 pseudo op, but dump the literal pool before changing
1771 sections.
1772 (arm_s_section): New function: Perform the same as the
1773 .section pseudo op, but dump the literal pool before changing
1774 sections.
1775 (arm_cleanup): Do not reset the current section before dumping
1776 the literal pool.
1777
1778 1999-06-17 Nick Clifton <nickc@cygnus.com>
1779
1780 * config/tc-m32r.c (md_longopts): Fix OPTION_WARN_UNMATCHED and
1781 OPTION_NO_WARN_UNMATCHED entries.
1782 (md_parse_option): Generate a warning message if an unrecognised
1783 option is encountered.
1784
1785 * config/tc-d10v.c (do_not_ignore_hash): New variable.
1786 (get_operands): When parsing an expression after an '@' symbol
1787 has been detected, do not ignore '#' symbols.
1788 (md_operand): Only ignore '#' symbols if do_not_ignore_hash is
1789 false.
1790
1791 1999-06-13 Ian Lance Taylor <ian@zembu.com>
1792
1793 From K. Richard Pixley <rich@noir.com>:
1794 * configure.in (ppc-*-vxworks*): New target.
1795 * configure: Rebuild.
1796
1797 1999-06-12 Philip Blundell <philb@gnu.org>
1798
1799 * config/tc-arm.c (tc_gen_reloc): Fix handling of GOTPC relocs.
1800
1801 1999-06-13 Ian Lance Taylor <ian@zembu.com>
1802
1803 * write.c (adjust_reloc_syms): Rather than never reducing reloc
1804 which refer to symbols in linkonce sections, permit reducing the
1805 relocs if the symbol is local.
1806
1807 1999-06-12 Ian Lance Taylor <ian@zembu.com>
1808
1809 * subsegs.c (subseg_text_p): New function.
1810 * as.h (subseg_text_p): Declare.
1811 * read.c (do_align): Use subseg_text_p to set the default fill.
1812 * write.c (subsegs_finish): Likewise.
1813 * config/obj-coff.c (write_object_file): Likewise.
1814 * config/tc-i386.h (md_maybe_text): Don't define.
1815 (md_do_align): Use subseg_text_p to set the default fill.
1816 * config/tc-m32r.c (m32r_do_align): Likewise.
1817 * config/tc-sh.c (sh_do_align): Likewise.
1818 * config/tc-sparc.h (md_do_align): Likewise.
1819
1820 1999-06-12 David O'Brien <obrien@freebsd.org>
1821
1822 * configure.in: (i[3456]86-*-freebsd*): Now defaults to ELF.
1823 * configure: Rebuild.
1824
1825 1999-06-12 Ian Lance Taylor <ian@zembu.com>
1826
1827 * dwarf2dbg.c: Include elf/dwarf2.h with "", not <>.
1828 * Makefile.am: Rebuild dependencies.
1829 * Makefile.in: Rebuild.
1830
1831 * config/tc-i386.c (i386_immediate): Remove unused label
1832 seg_unimplemented.
1833
1834 * struc-symbol.h: Put local_symbol code in ifdef BFD_ASSEMBLER.
1835 * symbols.c: Likewise.
1836 * config/obj-aout.c (obj_crawl_symbol_chain): Refer directly to
1837 sy_next field when taking address, rather than symbol_next.
1838
1839 * dwarf2dbg.c: Change bfd_vma to addressT and bfd_signed_vma to
1840 offsetT.
1841 (out_set_addr): Don't use BYTES_PER_ADDRESS. Instead, get the
1842 value from the output file architecture.
1843 (dwarf2_gen_line_info): Ifdef BFD_ASSEMBLER specific code.
1844 * dwarf2dbg.h: Change bfd_vma to addressT.
1845
1846 1999-06-11 Ian Lance Taylor <ian@zembu.com>
1847
1848 * dwarf2dbg.h: Use PARAMS in function declarations.
1849
1850 1999-06-11 Martin Dorey <mdorey@madge.com>
1851
1852 * write.c (fixup_segment): Don't add symbol value for i960 ELF.
1853 * config/tc-i960.c (s_leafproc): Don't call tc_set_bal_of_cal if
1854 OBJ_ELF.
1855 (md_apply_fix): Simplify BFD_ASSEMBLER handling.
1856
1857 1999-06-11 Ian Lance Taylor <ian@zembu.com>
1858
1859 * config/tc-i386.c (md_apply_fix3): Add default case to switch.
1860
1861 * config/tc-sparc.c (md_pseudo_table): Remove pushsection and
1862 popsection.
1863
1864 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
1865
1866 * read.c (read_a_source_file): Only declare inescape if
1867 QUOTES_IN_INSN.
1868
1869 * itbl-ops.c (itbl_disassemble): Change sprintf format strings to
1870 match parameters.
1871 (find_entry_byval): Add parens to avoid warning.
1872
1873 * as.c: If HAVE_ITBL_CPU, include "itbl-ops.h".
1874
1875 * symbols.c (resolve_symbol_value): Don't permit subtraction of
1876 undefined symbols.
1877
1878 1999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
1879
1880 * config/tc-sparc.c (sparc_ip): Don't use side-effect expression
1881 with isoctal.
1882
1883 * config/tc-sparc.c (synthetize_setuw, synthetize_setsw,
1884 synthetize_setx): New functions.
1885 (md_assemble): Broken the special cases into the above
1886 functions. Make compiler happy if sizeof(bfd_vma)==4.
1887 Fix sethi generated from set/setuw. If instructions have a relloc,
1888 always clear the fields to be relocated in the opcode.
1889 (sparc_ip): Remove special_case global variable.
1890
1891 1999-06-10 Ian Lance Taylor <ian@zembu.com>
1892
1893 Based on patches from John W. Woznack <jwoznack@concentric.net>:
1894 * itbl-ops.c (itbl_get_reg_val): Add pval parameter. Return
1895 indication of success rather than a value.
1896 (itbl_get_val): Likewise.
1897 (itbl_get_field): Use strcspn. Change delimiters to include
1898 parens.
1899 * itbl-ops.h (itbl_get_reg_val): Update declaration.
1900 (itbl_get_val): Likewise.
1901 * config/tc-mips.c (mips_ip): Update call to itbl_get_reg_val.
1902
1903 * symbols.c (copy_symbol_attributes): Convert local symbols to
1904 regular symbols.
1905
1906 1999-06-10 Nick Clifton <nickc@cygnus.com>
1907
1908 * config/tc-arm.c (md_parse_option): Add support for ARM920 and
1909 ARM920t.
1910
1911 1999-06-07 Jakub Jelinek <jj@ultra.linux.cz>
1912
1913 * config/tc-sparc.c (md_assemble): Fix up setx, support setsw.
1914 Optimize set if sizeof(bfd_vma) == 64.
1915 (sparc_ip): Fix sethi - without %hi() it should generate
1916 R_SPARC_22 reloc, not R_SPARC_HI22.
1917 (tc_gen_reloc): Handle BFD_RELOC_SPARC22.
1918
1919 1999-06-07 Jakub Jelinek <jj@ultra.linux.cz>
1920
1921 * config/tc-sparc.c (md_begin): Handle native wordsize aliases.
1922 (s_ncons): New function.
1923 (native_op_table): New table.
1924 (sparc_ip): Be more strict on %hi() etc.; prepare assembler for
1925 R_SPARC_OLO10 handling.
1926
1927 Mon Jun 7 10:22:16 1999 Richard Henderson <rth@cygnus.com>
1928
1929 * expr.h (struct expressionS): Revert last change; widen X_op.
1930 * config/tc-alpha.c (md_begin): Check the field is wide enough.
1931
1932 Mon Jun 7 11:25:16 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1933
1934 * Makefile.am (TARGET_CPU_CFILES): Add config/tc-fr30.c.
1935 (TARGET_CPU_HFILES): Add config/tc-fr30.h.
1936 (TARG_ENV_HFILES): Add config/te-epoc-pe.h.
1937 * Makefile.in: Regenerated.
1938
1939 * config/obj-elf.c (obj_elf_common): In MRI mode if called as
1940 `common' pass on to s_mri_common.
1941 (elf_pseudo_table): Pass 1 to obj_elf_common for `common'.
1942
1943 1999-06-06 Richard Henderson <rth@cygnus.com>
1944
1945 * config/obj-elf.c (obj_elf_section): Don't free the return
1946 value of demand_copy_C_string.
1947
1948 1999-06-05 Richard Henderson <rth@cygnus.com>
1949
1950 * dwarf2dbg.c (dwarf2_gen_line_info): Mirror the section symbol
1951 creation logic from obj_elf_create_section.
1952
1953 * config/obj-elf.c (elf_pseudo_tab): Add pushsection/popsection.
1954 (section_stack): New.
1955 (special_sections): Make const.
1956 (obj_elf_section): Gut and rewrite parsing.
1957 (obj_elf_change_section): New function broken out of obj_elf_section.
1958 (obj_elf_parse_section_letters): Likewise.
1959 (obj_elf_section_word): Likewise.
1960 (obj_elf_section_type): Likewise.
1961 (obj_elf_previous): Treat as a toggle.
1962 (obj_elf_popsection): New.
1963 * config/tc-ppc.c (ppc_section_word): Take str+len not ptr_str.
1964 (ppc_section_type): Likewise.
1965 * config/tc-ppc.h: Likewise.
1966
1967 * expr.h (struct expressionS): Don't make X_op a bitfield.
1968 * config/tc-alpha.c: Update for symbol handling changes.
1969 (md_apply_fix) [case GPREL]: Use now_seg instead of absolute_section.
1970 (load_expression, emit_ir_load, emit_loadstore, emit_jsrjmp): Likewise.
1971
1972 1999-06-05 Richard Henderson <rth@cygnus.com>
1973
1974 * dwarf2dbg.c (*): Convert to K&R + prototypes.
1975 (dwarf2_gen_line_info): Kill unused variables.
1976 (dwarf2_finish): Likewise.
1977 (dwarf2_where): Likewise.
1978 (dwarf2_directive_file): If we've only got a string,
1979 hand off to s_app_file.
1980 * ecoff.c: Move the include of ecoff.h.
1981 * symbols.h (S_IS_FUNCTION): Prototype.
1982
1983 * read.c (LEX_HASH): Supply a default.
1984 (lex_type): Use it.
1985 (s_globl): Update `c' after skipping whitespace.
1986 * read.h (LEX_END_NAME, is_name_ender): New.
1987 * expr.c (get_symbol_end): Respect it.
1988
1989 1999-06-04 Mark Klein <mklein@dis.com>
1990
1991 * config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
1992 to real if OBJ_SOM
1993 (tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
1994
1995 * config/tc-hppa.c: Update for symbol handling changes.
1996
1997 1999-06-03 Ian Lance Taylor <ian@zembu.com>
1998
1999 * cgen.c: Update for symbol handling changes.
2000 * config/tc-m32r.c: Likewise.
2001
2002 * config/tc-hppa.h: Update for symbol handling changes.
2003 * config/tc-hppa.c: Likewise.
2004
2005 * config/tc-arm.h: Update for symbol handling changes.
2006 * config/tc-arm.c: Likewise.
2007 (symbol_make_empty): Remove. Just use symbol_create.
2008
2009 * symbols.c (symbol_set_tc): Correct name.
2010
2011 * Makefile.am: Rebuild dependencies.
2012 ($(OBJS)): Don't depend upon struc-symbol.h.
2013 (.dep1, .tcdep, .objdep): Create itbl-parse.h.
2014 * dep-in.sed: Don't remove struc-symbol.h.
2015 * Makefile.in: Rebuild.
2016
2017 * doc/internals.texi (Symbols): Describe changes in symbol
2018 handling.
2019
2020 1999-06-03 Richard Henderson <rth@cygnus.com>
2021
2022 * dwarf2dbg.c (dwarf2_gen_line_info): Use section_symbol
2023 instead of doing the work by hand.
2024
2025 1999-06-03 David Mosberger <davidm@hpl.hp.com>
2026
2027 * dwarf2dbg.c (INITIAL_STATE): New macro encapsulating initial
2028 state of line state-machine.
2029 (struct ls): Collect DWARF2 line state-machine state in new member
2030 SM. Add member EMPTY_SEQUENCE to keep track if a code sequence
2031 resulted in any DWARF2 directives.
2032 (reset_state_machine): New function.
2033 (out_end_sequence): Ditto.
2034 (dwarf2_gen_line_info): When switching sections or switching to a
2035 lower text address, call out_end_sequence() first to terminate the
2036 previous code sequence as code sequences MUST have monotonically
2037 increasing addresses.
2038 (dwarf2_finish): Call out_end_sequence() instead of open coding it.
2039
2040 1999-06-03 David Mosberger <davidm@hpl.hp.com>
2041
2042 * as.c (parse_args): Add option -gdwarf2 to allow requesting
2043 DWARF2 debug info (line information only, at this point).
2044 * as.h: Update comment about supported debug formats.
2045 * dwarf2dbg.c, dwarf2dbg.h: New files.
2046 * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
2047
2048 * expr.c (operand): Don't use [ for parens if we want an index op.
2049 (op_encoding): Switch [ into O_index, if desired.
2050 (op_rank): Renumber with O_index on bottom.
2051 (expr): If O_index, match closing bracket.
2052 * expr.h (O_index): New.
2053
2054 * read.c (read_a_source_file): Conditionally allow matched "
2055 in lines passed to md_assemble.
2056
2057 * config/obj-elf.c (elf_pseudo_table): Add `common'.
2058
2059 1999-06-03 Ian Lance Taylor <ian@zembu.com>
2060
2061 Add support for storing local symbols in a small structure to save
2062 memory when assembling large files.
2063 * as.h: Don't include struc-symbol.h.
2064 (symbolS): Add typedef.
2065 * symbols.c: Include struc-symbol.h.
2066 (local_hash): New static variable.
2067 (save_symbol_name): New static function, from symbol_create.
2068 (symbol_create): Call save_symbol_name.
2069 (local_symbol_count): New static variable.
2070 (local_symbol_conversion_count): Likewise.
2071 (LOCAL_SYMBOL_CHECK): Define.
2072 (local_symbol_make): New static function.
2073 (local_symbol_convert): New static function.
2074 (colon): Handle local symbols. Create local symbol for local
2075 label name.
2076 (symbol_table_insert): Handle local symbols.
2077 (symbol_find_or_make): Create local symbol for local label name.
2078 (symbol_find_base): Check for local symbol.
2079 (symbol_append, symbol_insert): Check for local symbols.
2080 (symbol_clear_list_pointers, symbol_remove): Likewise.
2081 (verify_symbol_chain): Likewise.
2082 (copy_symbol_attributes): Likewise.
2083 (resolve_symbol_value): Handle local symbols.
2084 (resolve_local_symbol): New static function.
2085 (resolve_local_symbol_values): New function.
2086 (S_GET_VALUE, S_SET_VALUE): Handle local symbols.
2087 (S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
2088 (S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
2089 (S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
2090 (S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
2091 (symbol_previous, symbol_next): New functions.
2092 (symbol_get_value_expression): Likewise.
2093 (symbol_set_value_expression): Likewise.
2094 (symbol_set_frag, symbol_get_frag): Likewise.
2095 (symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
2096 (symbol_mark_used_in_reloc): Likewise.
2097 (symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
2098 (symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
2099 (symbol_mri_common_p): Likewise.
2100 (symbol_mark_written, symbol_clear_written): Likewise.
2101 (symbol_written_p): Likewise.
2102 (symbol_mark_resolved, symbol_resolved_p): Likewise.
2103 (symbol_section_p, symbol_equated_p): Likewise.
2104 (symbol_constant_p): Likewise.
2105 (symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
2106 (symbol_get_obj, symbol_set_obj): Likewise.
2107 (symbol_get_tc, symbol_set_tc): Likewise.
2108 (symbol_begin): Initialize local_hash.
2109 (print_symbol_value_1): Handle local symbols.
2110 (symbol_print_statistics): Print local symbol statistics.
2111 * symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
2112 Declare new symbols.c functions. Move many declarations here from
2113 struc-symbol.h.
2114 (SYMBOLS_NEED_BACKPOINTERS): Define if needed.
2115 * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
2116 (struct symbol): Move bsym to make it clearly the first field.
2117 Remove TARGET_SYMBOL_FIELDS.
2118 (symbolS): Don't typedef.
2119 (struct broken_word): Remove.
2120 (N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
2121 (SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
2122 (symbol_clear_list_pointers): Likewise.
2123 (symbol_insert, symbol_remove): Likewise.
2124 (symbol_previous, symbol_append): Likewise.
2125 (verify_symbol_chain, verify_symbol_chain_2): Likewise.
2126 (struct local_symbol): Define.
2127 (local_symbol_converted_p, local_symbol_mark_converted): Define.
2128 (local_symbol_resolved_p, local_symbol_mark_resolved): Define.
2129 (local_symbol_get_frag, local_symbol_set_frag): Define.
2130 (local_symbol_get_real_symbol): Define.
2131 (local_symbol_set_real_symbol): Define.
2132 Define.
2133 * write.c (write_object_file): Call resolve_local_symbol_values.
2134 * config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
2135 (TARGET_SYMBOL_FIELDS): Don't define.
2136 * config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field. If
2137 ECOFF_DEBUGGING, add ECOFF fields.
2138 (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
2139 * config/obj-multi.h (struct elf_obj_sy): Add local field. If
2140 ECOFF_DEBUGGING, add ECOFF fields.
2141 (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
2142 (ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
2143 * config/tc-mcore.h: Don't include struc-symbol.h.
2144 (TARGET_SYMBOL_FIELDS): Don't define.
2145 (struct mcore_tc_sy): Define.
2146 (TC_SYMFIELD_TYPE): Define.
2147 * Many files: Use symbolS instead of struct symbol. Use new
2148 accessor functions rather than referring to symbolS fields
2149 directly.
2150
2151 * read.c (s_mri_common): Don't add in value of line_label.
2152
2153 * config/tc-mips.c (md_apply_fix): Correct parenthesization when
2154 checking for SEC_LINK_ONCE.
2155
2156 * config/tc-sh.h (sh_fix_adjustable): Declare.
2157
2158 * app.c (input_buffer): New static variable.
2159 (app_push): Save saved_input in allocated buffer.
2160 (app_pop): Restored saved_input.
2161 (do_scrub_chars): Change get parameter to take char * and int as
2162 arguments. Change GET macro to pass input_buffer to get
2163 function. Don't save input into allocated buffer.
2164 * as.h (do_scrub_chars): Update declaration.
2165 * input-file.c (input_file_get): Change to take char * and int.
2166 Read data into passed in buffer. Remove static buffer.
2167 * read.c (scrub_from_string): Change to take char * and int. Copy
2168 data into passed in buffer.
2169
2170 * hash.h: Neaten. Declare hash_traverse.
2171 * hash.c: Complete rewrite based on BFD hashing code.
2172 * gasp.c (chunksize): New variable.
2173 * macro.c (macro_expand_body): Call hash_jam with NULL rather than
2174 hash_delete.
2175
2176 1999-05-28 Nick Clifton <nickc@cygnus.com>
2177
2178 * config/tc-arm.c (md_apply_fix3): Add pipeline offset into reloc
2179 addend unless the target uses an old ABI.
2180
2181 Mon May 24 13:36:55 1999 Doug Evans <devans@canuck.cygnus.com>
2182
2183 -Wchar-subscripts cleanup
2184 * listing.c (listing_newline): Use unsigned char variable, so
2185 calls to isascii,iscntrl are correct.
2186 * atof-generic.c (atof_generic): Cast arg to isdigit, et. al. with
2187 (unsigned char).
2188 * ecoff.c (ecoff_directive_ent,ecoff_stab): Ditto.
2189 * config/obj-elf.c (obj_elf_vtable_inherit): Ditto.
2190 * config/tc-mips.c (mips_ip,mips16_ip): Ditto.
2191 (my_getSmallExpression,get_number,s_mips_ent): Ditto.
2192
2193 1999-05-28 Torbjorn Granlund <tege@matematik.su.se>
2194
2195 * config/tc-m68k.c (m68k_ip): Check for disallowed index register
2196 width for Coldfire.
2197 (arch_coldfire_p): New #define.
2198 (m68k_ip, m68k_init_after_args): Use arch_coldfire_p.
2199
2200 1999-05-28 Linus Nordberg <linus.nordberg@canit.se>
2201
2202 * config/tc-m68k.c (install_operand): Add places `n', `o'.
2203
2204 * config/tc-m68k.c (m68k_ip): Add formats `E', `G', `H'.
2205 (install_operand): Add place `N'.
2206 (init_table): Add registers ACC, MACSR, MASK.
2207
2208 * config/m68k-parse.h (m68k_register): Add ACC, MACSR, MASK.
2209
2210 * config/tc-m68k.c: Change mcf5200 --> mcf.
2211 (archs): Add mcf5206e, mcf5307.
2212 (m68k_ip): Add format `u'.
2213 (install_operand): Add place `m', `M', `h'.
2214 (init_table): Add upper/lower registers.
2215
2216 * config/m68k-parse.h (m68k_register): Add upper/lower registers.
2217
2218 1999-05-28 Martin Dorey <mdorey@madge.com>
2219
2220 * config/tc-i960.c: Several minor changes to add ELF and
2221 BFD_ASSEMBLER support.
2222 * config/tc-i960.h: Likewise.
2223 * configure.in (i960-*-elf*): New target.
2224 * aclocal.m4, configure: Rebuild.
2225
2226 1999-05-25 Alan Modra <alan@spri.levels.unisa.edu.au>
2227
2228 * config/tc-i386.c (md_apply_fix3): Only do 1999-05-17 fx_pcrel
2229 reloc changes when defined(BFD_ASSEMBLER).
2230
2231 1999-05-17 Alan Modra <alan@spri.levels.unisa.edu.au>
2232
2233 * config/tc-i386.c (tc_gen_reloc): Remove F and MAP macros.
2234
2235 * write.c (write_print_statistics): Output to file, not stderr.
2236
2237 * expr.c (generic_bignum_to_int32,64): Prototype.
2238
2239 * read.c (s_lcomm_internal, sizeof_sleb128, sizeof_uleb128,
2240 output_sleb128, output_uleb128, output_big_sleb128,
2241 output_big_uleb128, output_big_leb128): Prototype.
2242 (output_big_sleb128, output_big_uleb128): Make inline.
2243 (output_big_leb128): Remove inline
2244
2245 From Maciej W. Rozycki <macro@ds2.pg.gda.pl>
2246 * config/tc-i386.c (md_apply_fix3): Convert BFD_RELOC_16 with
2247 fx_pcrel set to BFD_RELOC_16_PCREL. Similarly for BFD_RELOC_8.
2248 Handle BFD_RELOC_16_PCREL and BFD_RELOC_8_PCREL. Return changed
2249 value for correct overflow check in write.c:fixup_segment.
2250 * write.c (fixup_segment): Move bitfield overflow checks to after
2251 the md_apply_fix call.
2252 * config/obj-coff.c (fixup_segment): Likewise.
2253 * doc/internals.texi (CPU backend): Mention md_apply_fix modifying
2254 valueT *val argument.
2255
2256 Fri May 14 10:52:13 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2257
2258 * config/atof-ieee.c (gen_to_words): Correctly round a
2259 denormalized number. Fix off-by-one in range checking for
2260 exponent in a denormal.
2261
2262 1999-05-10 Nick Clifton <nickc@cygnus.com>
2263
2264 * config/tc-mcore.c (parse_reg): Accept 'sp' as a valid register
2265 name.
2266
2267 Thu May 13 09:46:59 1999 Joel Sherrill (joel@OARcorp.com)
2268
2269 * configure.in (i386-*-rtemself*, sh-*-rtemself*): New targets.
2270
2271 1999-05-12 Alan Modra <alan@spri.levels.unisa.edu.au>
2272
2273 * config/tc-i386.h (InvMem): New flag. Add to AnyMem.
2274 (ReverseRegRegmem): Remove.
2275 (ImmExt): New flag. Renumber some of the opcode_modifier bits.
2276 * config/tc-i386.c (md_assemble): Test for PIII SIMD and AMD
2277 3DNow! via ImmExt opcode_modifier. Remove ReverseRegRegmem
2278 kludge.
2279
2280 From Doug Ledford <dledford@redhat.com>
2281 * config/tc-i386.h (RegXMM): New for P/III.
2282 * config/tc-i386.c: Add support for P/III.
2283
2284 Sat May 8 23:28:50 1999 Richard Henderson <rth@cygnus.com>
2285
2286 * config/tc-ppc.c (md_parse_option): Recognize -mppc64bridge.
2287 (md_begin): Allow ppc32 insns in ppc64bridge mode.
2288 (ppc_insert_operand): Accept SIGNOPT in ppc64 mode.
2289
2290 Thu May 6 23:13:39 1999 Richard Henderson <rth@cygnus.com>
2291
2292 * config/tc-i386.c (i386_immediate): Skip whitespace before
2293 complaining about junk after expression.
2294 (i386_displacement): Likewise.
2295
2296 Thu May 6 19:50:14 1999 Richard Henderson <rth@cygnus.com>
2297
2298 * symbols.c (symbol_find_base): Use memcpy instead of strcpy.
2299 Don't copy before downcaseing.
2300
2301 1999-05-05 Catherine Moore <clm@cygnus.com>
2302
2303 * tc-m68k.c: Include elf/m68k.h.
2304 (m68k_elf_final_processing): New routine.
2305 * tc-m68k.h (elf_tc_final_processing m68k_elf_final_processing):
2306 Define.
2307
2308 Mon May 3 10:26:03 1999 Jeffrey A Law (law@cygnus.com)
2309
2310 * config/tc-hppa.c (md_apply_fix): Handle 22 bit fmt insn like a
2311 17 bit fmt insn.
2312
2313 1999-04-30 Nick Clifton <nickc@cygnus.com>
2314
2315 * config/tc-mcore.c (mcore_s_section): Dump literals before
2316 changing section.
2317
2318 1999-04-29 Nick Clifton <nickc@cygnus.com>
2319
2320 * config/tc-mcore.c (md_apply_fix3): Insert reloc addend into insn
2321 for COFF/PE port.
2322
2323 Mon Apr 26 12:34:37 1999 Doug Evans <devans@canuck.cygnus.com>
2324
2325 * config/tc-fr30.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
2326 (TC_INIT_FIX_DATA): Delete.
2327 * config/tc-m32r.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
2328 (TC_INIT_FIX_DATA): Delete.
2329 * write.h (struct fix): New member fx_cgen, ifdef USING_CGEN.
2330 * write.c (fix_new_internal): Initialize fx_cgen member.
2331 * cgen.c (gas_cgen_record_fixup,gas_cgen_record_fixup_exp): Update.
2332 (gas_cgen_md_apply_fix3): Update.
2333 * config/tc-m32r.c (md_cgen_lookup_reloc): Update.
2334 (md_cgen_record_fixup_exp): Update.
2335 (FX_OPINFO_R_TYPE): Update.
2336
2337 * frags.c (frag_var,frag_variant): Initialize fr_cgen here.
2338 * config/tc-fr30.h (TC_FRAG_INIT): Delete.
2339 * config/tc-m32r.h (TC_FRAG_INIT): Delete.
2340 * frags.h (struct frag): Make opindex, opinfo ints.
2341
2342 * config/tc-fr30.c (FX_OPINFO_R_TYPE): Delete, unused.
2343
2344 1999-04-26 Tom Tromey <tromey@cygnus.com>
2345
2346 * aclocal.m4, configure: Updated for new version of libtool.
2347
2348 1999-04-22 Nick Clifton <nickc@cygnus.com>
2349
2350 * config/tc-mcore.c (md_apply_fix3): Renamed function from
2351 md_apply_fix.
2352 (md_apply_fix3): Do not fix up absolute relocations against
2353 symbolic values.
2354
2355 * config/tc-mcore.h (MD_APPLY_FIX3): Define.
2356
2357 1999-04-20 Nick Clifton <nickc@cygnus.com>
2358
2359 * config/tc-mcore.c (md_pseudo_table): Add intercepts for section
2360 changes and data-in-text directives.
2361 (mcore_cons): New function: intercept cons() operations.
2362 (mcore_float_cons): New function: intercept float_cons()
2363 operations.
2364 (mcore_stringer): New function: intercept stringer() operations.
2365
2366 1999-04-18 Ian Lance Taylor <ian@zembu.com>
2367
2368 * obj.h (struct format_ops): Change generate_asm_lineno field to
2369 take no parameters.
2370 * config/obj-ecoff.h (OBJ_GENERATE_ASM_LINENO): Don't define.
2371
2372 * config/tc-alpha.c (find_opcode_match): Add default case to
2373 switch.
2374 (find_macro_match): Likewise.
2375 (load_expression): Parenthesize && within ||.
2376
2377 * config/tc-alpha.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
2378
2379 1999-04-17 Nick Clifton <nickc@cygnus.com>
2380
2381 * config/tc-mcore.c (md_pseudo_table): Add overrides for .bss
2382 .text .data .section pseudo ops.
2383 (mcore_s_section): New function. Dump lits before changing secs.
2384 (mcore_s_text): New function. Dump lits before changing secs.
2385 (mcore_s_data): New function. Dump lits before changing secs.
2386
2387 1999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
2388
2389 * config/tc-mips.c (mips_32bitmode): New.
2390 (md_begin): Set mips_32bitmode if needed.
2391 (mips_elf_final_processing): Don't set EF_MIPS_ARCH.
2392 Set EF_MIPS_32BITMODE.
2393
2394 Fri Apr 16 12:26:39 1999 Bob Manson <manson@charmed.cygnus.com>
2395
2396 * config/obj-coff.c (c_section_symbol): Fix typo in previous
2397 change.
2398
2399 1999-04-16 Nick Clifton <nickc@cygnus.com>
2400
2401 * config/tc-mcore.h (LOCAL_LABELS_FB): Define to 1.
2402
2403 Thu Apr 15 16:52:09 1999 Jeffrey A Law (law@cygnus.com)
2404
2405 * tc-hppa.c (pa_get_absolute_exression): Try to handle "5 %r3"
2406 expressions correctly.
2407
2408
2409 1999-04-15 Gavin Romig-Koch <gavin@cygnus.com>
2410
2411 * config/tc-mips.c (mips_elf_final_processing): Set EF_MIPS_ARCH.
2412
2413 Mon Apr 12 23:45:07 1999 Jeffrey A Law (law@cygnus.com)
2414
2415 * tc-hppa.c (pa_ip, case '3'): New case for PA2.0 fmpyfadd
2416 and fmpynfadd instructions.
2417
2418 1999-04-11 Richard Henderson <rth@cygnus.com>
2419
2420 * as.h (environ): Declare it, if needed.
2421 * as.c (dump_statistics): Don't declare environ.
2422 * configure.in (environ): Detect declaration.
2423 * configure, config.in: Rebuild
2424
2425 * config/tc-i386.c (i386_immediate): Accept @GOT relocations.
2426 (i386_displacement): Allocate enough space for replacement buffer.
2427 Clean up replacement buffer initialization.
2428
2429 1999-04-11 Bob Manson <manson@charmed.cygnus.com>:
2430
2431 * subsegs.c (section_symbol): Don't create a new symbol if one
2432 already exists; instead, use the existing one, but set its segment
2433 and frag data if it hasn't already been defined.
2434 * config/obj-coff.c (c_section_symbol): Likewise.
2435
2436 Sat Apr 10 20:10:02 1999 Richard Henderson <rth@cygnus.com>
2437
2438 * tc-alpha.c (load_expression): Call as_bad instead of abort.
2439
2440 1999-04-08 Nick Clifton <nickc@cygnus.com>
2441
2442 * config/tc-mcore.c: New File: Support routines for MCore
2443 assembler.
2444 * config/tc-mcore.h: New File: Definitions for MCore assembler.
2445 * config/obj-coff.c: Add support for mcore-pe target.
2446
2447 * Makefile.am: Add support for MCore targets.
2448 * Makefile.in: Regenerate.
2449 * configure.in: Add support for MCore targets.
2450 * configure: Regenerate.
2451
2452 * doc/all.texi: Set MCORE.
2453 * doc/as.texinfo: Document MCore specific command line options.
2454
2455 * write.h: Prevent multiple inclusion.
2456
2457 1999-04-06 Ian Lance Taylor <ian@zembu.com>
2458
2459 * asintl.h (LC_MESSAGES): Never define.
2460 * as.c (main): Don't pass LC_MESSAGES to setlocale if the system
2461 does not define it.
2462 * gasp.c (main): Don't pass LC_MESSAGES to setlocale if the system
2463 does not define it.
2464
2465 * Makefile.am (m68k-parse.c): If configuring in the source
2466 directory, copy m68k-parse.y into the local directory before
2467 running ylwrap, to remove spurious differences when generating
2468 snapshots.
2469 * Makefile.in: Rebuild.
2470
2471 * config/tc-sparc.h (md_do_align): Just allocate the number of
2472 bytes necessary, rather than always allocating 1024.
2473
2474 1999-04-04 Ian Lance Taylor <ian@zembu.com>
2475
2476 * listing.c (listing_newline): Add cast to avoid warning.
2477 * read.c (generate_lineno_debug): Add cases to switch. Reindent.
2478 * config/tc-i386.c (i386_scale): Add return value.
2479 (build_displacement_string): Remove unused local temp_disp2.
2480 (i386_intel_memory_operand): Add parentheses to avoid warning.
2481 (i386_intel_operand): Remove unused local end_of_operand_string.
2482 (i386_operand): Remove unused local operand_modifier.
2483 (i386_operand): Add parens to avoid warning.
2484
2485 1999-04-04 Don Bowman <don@pixsci.com>
2486
2487 * configure.in: Add mips*-*-vxworks* target; have it define
2488 MIPS_STABS_ELF.
2489 * configure, config.in: Rebuild.
2490
2491 1999-03-31 Nick Clifton <nickc@cygnus.com>
2492
2493 * configure.in (emulations): Add support for arm-epoc-pe.
2494 * configure: Regenerate.
2495 * config/te-epoc-pe.h: New file. Define macros specific to
2496 arm-epoc-pe target.
2497 * config/tc-arm.h: Select epoc-pe-arm target format if configured
2498 for arm-epoc-pe target.
2499
2500 Mon Mar 29 10:15:40 CST 1999 Catherine Moore <clm@cygnus.com>
2501
2502 * tc-mips.c (md_apply_fix): Adjust value for linkonce sections.
2503
2504 Wed Mar 24 14:11:10 1999 Jeffrey A Law (law@cygnus.com)
2505
2506 * tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Clean up code to
2507 detect ",n" without a condition.
2508 (pa_parse_neg_cmpsub_cmpltr): Likewise.
2509
2510
2511 Tue Mar 23 11:28:23 1999 Jeffrey A Law (law@cygnus.com)
2512
2513 * tc-hppa.c (pa_ip, case '~'): The condition for a branch on bit
2514 instruction is encoded with one bit.
2515
2516
2517 1999-03-23 Ian Lance Taylor <ian@zembu.com>
2518
2519 * doc/internals.texi (CPU backend): Mention that
2520 line_separator_chars should not include newline. From thi
2521 <ttn@mingle.glug.org>.
2522
2523 1999-03-22 Doug Evans <devans@casey.cygnus.com>
2524
2525 * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
2526 * config/tc-m32r.c (md_begin): Update call to m32r_cgen_cpu_open.
2527
2528 Sun Mar 21 18:08:18 1999 Richard Henderson <rth@cygnus.com>
2529
2530 * tc-alpha.c (md_assemble): Allow '6' in an opcode.
2531
2532 Thu Mar 18 10:55:30 1999 Jeffrey A Law (law@cygnus.com)
2533
2534 * tc-hppa.c (pa_ip, case 'a'): Do not call pa_parse_..._cmpsub_cmpltr.
2535
2536
2537 Thu Mar 18 02:30:07 1999 Jeffrey A Law (law@cygnus.com)
2538
2539 * tc-hppa.c (pa_ip, case 'd'): Do not allow ",n".
2540
2541 1999-03-15 Martin Hunt <hunt@cygnus.com>
2542
2543 * app.c (do_scrub_begin): Change '-' back to a symbol char
2544 so we can use multiple opcodes on a line again.
2545
2546 * config/tc-d30v.c: By default, warn if a symbol has
2547 the same name as a register. Plus some minor
2548 updates from the branch.
2549
2550 1999-03-13 Nick Clifton <nickc@cygnus.com>
2551
2552 * config/tc-d30v.c (md_apply_fix3): Handle BFD_RELOC_8,
2553 BFD_RELOC_16 and BFD_RELOC_64.
2554
2555 1999-03-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2556
2557 * expr.c (expr): Add missing else.
2558
2559 1999-03-12 Nick Clifton <nickc@cygnus.com>
2560
2561 * config/tc-arm.c (md_apply_fix3): Improve error message.
2562
2563 1999-03-11 Doug Evans <devans@casey.cygnus.com>
2564
2565 * Makefile.am (CPU_TYPES): Add fr30.
2566 (cgen.o): Add $(CGEN_CPU_PREFIX)-desc.h dependency.
2567 (fr30,m32r dependencies): Update.
2568 * Makefile.in: Rebuild.
2569
2570 * cgen.c (gas_cgen_record_fixup): Update use of operand->type.
2571 (gas_cgen_record_fixup_exp): Ditto.
2572 (gas_cgen_finish_insn): Call cgen_operand_lookup_by_num.
2573 (gas_cgen_md_apply_fix3): Ditto. Update call to set_vma_operand.
2574 * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
2575 (md_cgen_lookup_reloc): Update use of operand->type.
2576 * config/tc-m32r.c (md_begin): Update call to fr30_cgen_cpu_open.
2577 (md_convert_frag): Call cgen_operand_lookup_by_num.
2578 (md_cgen_lookup_reloc): Update use of operand->type.
2579 (m32r_cgen_record_fixup_exp): Ditto.
2580
2581 1999-03-09 Jim Blandy <jimb@zwingli.cygnus.com>
2582
2583 * config/tc-mips.c (md_show_usage): Fix message.
2584
2585 1999-03-03 Nick Clifton <nickc@cygnus.com>
2586
2587 * doc/c-arm.texi (ARM Syntax): Document new command line switches
2588 and LDR reg,=<expr> instruction.
2589
2590 * config/tc-arm.c: Add support for -mcpu=arm810, -mcpu=arm9 and
2591 -mcpu=arm9tdmi.
2592
2593 Fri Feb 19 09:36:30 1999 Ian Lance Taylor <ian@cygnus.com>
2594
2595 * doc/c-arm.texi (ARM-Chars): Fix typo in use of '@'.
2596
2597 1999-02-17 Nick Clifton <nickc@cygnus.com>
2598
2599 This patch was created by: Scott Bambrough
2600 <scottb@corelcomputer.com>
2601
2602 * app.c:
2603 Special cased '@' character. The '@' character is used as the
2604 ARM assembler comment character, as a special character
2605 and in ELF .symver pseudo-op's, and as a special character in
2606 .type and .section pseudo-ops.
2607 (symver_pseudo): New static variable.
2608 (symver_state): New static variable.
2609 (struct app_save): Add field 'symver_state'.
2610 (app_push): Save global symver_state int struct app_save.
2611 (app_pop): Restore global symver_state from struct app_save.
2612 (do_scrub_chars): Special case handling of '@' character in
2613 .symver pseudo-ops.
2614
2615 * configure.in: Modified to recognize armv* uname syntax from ARM
2616 Linux kernel.
2617 * configure: Regenerated.
2618
2619 * config/obj-elf.c (obj_elf_section): Allow '%' as well as '@' as
2620 a prefix to the section's type.
2621 (obj_elf_type): Allow '%' as well as '@' and '#' as prefixes to
2622 the type's typename.
2623
2624 * config/tc-arm.h: Add support for PIC generation:
2625 (pic_code): New boolean.
2626 (obj_relocate_extern): Define.
2627 (TC_RELOC_RTSYM_LOC_FIXUP): Define
2628 (TC_CONS_FIX_NEW): Define.
2629 (tc_fix_adjustable): Define.
2630 (GLOBAL_OFFSET_TABLE_NAME): Define.
2631
2632 * config/tc-arm.c: Add support for PIC generation:
2633 (line_seperator_chars): Allow ';' as a seperator for Linux.
2634 (is_immediate_prefix): New macro.
2635 (arm_parse_reloc): New function.
2636 (s_arm_elf_cons): New function.
2637 (do_branch): Special case for BFD_RELOC_ARM_PLT32.
2638 (md_undefined_symbol): Special case handling for the Global Offset
2639 Table's symbol.
2640 (md_apply_fix3): Handle PIC relocs.
2641 (tc_gen_reloc): Handle PIC relocs.
2642 (md_parse_option): Add support for '-k' command line switch to
2643 enable PIC generation.
2644 (cons_fix_new_arm): New function.
2645 (s_arm_elf_cons): New function.
2646
2647 Tue Feb 16 16:31:53 1999 Ian Lance Taylor <ian@cygnus.com>
2648
2649 * configure.in: Add comments for uses of AC_DEFINE.
2650 * acinclude.m4: Likewise.
2651 * acconfig.h: Remove.
2652 * aclocal.m4: Rebuild.
2653 * configure: Rebuild.
2654 * Makefile.in: Rebuild.
2655 * config.in: Rebuild.
2656
2657 1999-02-15 Jim Lemke <jlemke@cygnus.com>
2658
2659 * config/tc-mips.c (mips_ip: case 'o'): Fix assertion failure for
2660 non-constant offset from a base register.
2661
2662 1999-02-14 Ken Raeburn <raeburn@raeburn.org>
2663
2664 * config/tc-alpha.c (md_show_usage): Put \ before newline in
2665 strings always.
2666
2667 Sat Feb 13 14:10:10 1999 Richard Henderson <rth@cygnus.com>
2668
2669 * config/tc-alpha.c (cpu_types): Enable EV6 PALcode with -m21264.
2670 (emit_insn): Look for pc-relative and no-overflow specifiers on
2671 internal relocation types.
2672
2673 1999-02-13 Jim Blandy <jimb@zwingli.cygnus.com>
2674
2675 * doc/c-mips.texi (MIPS Opts): Updated list of -mNNNN and
2676 -mcpu=NNNN flags.
2677
2678 * config/tc-mips.c: Remove all the mips_NNNN variables; just use
2679 mips_cpu instead.
2680 (mips_4650, mips_4010, mips_4100): Variables removed.
2681 (hilo_interlocks, gpr_interlocks, append_insn, macro_build, macro,
2682 macro2, mips16_macro, mips_ip): Test mips_cpu, not the mips_NNNN
2683 variables.
2684 (md_begin): Don't bother initializing the mips_NNNN variables;
2685 mips_cpu is set, and that's good enough now.
2686 (md_parse_option): Have the -mNNNN options set mips_cpu instead of
2687 the mips_NNNN variable. The -no-mNNNN flags are now no-ops.
2688 (show): New function, to handle wrapping in the CPU lists.
2689 (md_show_usage): Update lists of -mcpu and -mNNNN switches.
2690
2691 Sat Feb 13 00:17:26 1999 Richard Henderson <rth@cygnus.com>
2692
2693 * config/tc-i386.c (i386_intel_operand): Ignore `SHORT' rather
2694 than treat as an immediate specifier.
2695
2696 Thu Feb 11 16:18:31 1999 Richard Henderson <rth@cygnus.com>
2697
2698 * config/tc-i386.c: Prototype many functions.
2699 (set_intel_syntax): Accept `prefix'/`noprefix' specifiers.
2700 (i386_immediate): Remove unused second argument.
2701 (i386_intel_operand): Fix i386_is_reg typo.
2702 (i386_operand): Use allow_naked_reg.
2703 (output_invalid): Make operand int for K&R.
2704
2705 Thu Feb 11 11:21:02 1999 Ian Lance Taylor <ian@cygnus.com>
2706
2707 * Makefile.am (EXTRA_as_new_SOURCES): Uncomment--fixed by automake
2708 patch.
2709 * Makefile.in: Rebuild.
2710
2711 1999-02-09 Doug Evans <devans@casey.cygnus.com>
2712
2713 * Makefile.am (DISTCLEANFILES): Change cgen-opc.h to cgen-desc.h.
2714 (cgen.o): Ditto.
2715 (EXTRA_as_new_SOURCES): Comment out.
2716 (.tcdep): <arch>-opc.h renamed to <arch>-desc.h.
2717 * Makefile.in: Rebuild.
2718 * doc/Makefile.in: Rebuild.
2719 * configure.in: Require autoconf 2.13. Redo using_cgen handling.
2720 Delete call to AM_CYGWIN32. Replace AM_EXEEXT with AC_EXEEXT.
2721 (AC_OUTPUT): <arch>-opc.h renamed to <arch>-desc.h.
2722 * configure: Rebuild.
2723 * aclocal.m4: Rebuild.
2724 * config.in: Rebuild.
2725 * cgen.c: Include cgen-desc.h, not cgen-opc.h.
2726 (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
2727 (gas_cgen_cpu_desc): Renamed from gas_cgen_opcode_desc.
2728 CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
2729 CGEN_OPERAND_ATTR renamed to CGEN_OPERAND_ATTR_VALUE.
2730 (gas_cgen_record_fixup): Remove unnecessary != 0 test.
2731 (gas_cgen_record_fixup_exp): Ditto.
2732 (gas_cgen_finish_insn): Ditto. Refer to operand table via cpu
2733 descriptor, not global variable.
2734 (gas_cgen_md_apply_fix3): Refer to operand_table via cpu
2735 descriptor, not global variable. Refer to insert_operand handler
2736 via cpu descriptor, not global function.
2737 * cgen.h (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
2738 * config/tc-fr30.c: Include opcodes/fr30-desc.h.
2739 (*): gas_cgen_opcode_desc renamed to gas_cgen_cpu_desc.
2740 CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
2741 Update call to CGEN_OPERAND_TYPE,CGEN_INSN_OPERANDS.
2742 * config/tc-m32r.c: Ditto.
2743 (assemble_two_insns): Update calls to cgen_lookup_get_insn_operands.
2744 (md_assemble): Ditto.
2745 (md_convert_frag): Update call to CGEN_OPERAND_ENTRY.
2746
2747 1999-02-09 Nick Clifton <nickc@cygnus.com>
2748
2749 * config/tc-arm.c (md_apply_fix3): Fix handling of label1 - label2
2750 relocations for ELF targets.
2751
2752 1999-02-08 Nick Clifton <nickc@cygnus.com>
2753
2754 * configure.in: Add support for StrongARM target.
2755 * configure: Regenerate.
2756
2757 1999-02-05 Nick Clifton <nickc@cygnus.com>
2758
2759 * config/tc-arm.h: Tidy OBJ_ELF and OBJ_COFF definitions.
2760
2761 * config/tc-arm.c (md_apply_fix3): Fix BFD_RELOC_ARM_PCREL_BRANCH
2762 for COFF ports.
2763
2764 Wed Feb 3 11:35:47 1999 Richard Henderson <rth@cygnus.com>
2765
2766 * config/tc-alpha.c (md_show_usage): Document pca56 and ev6 options.
2767
2768 Mon Feb 1 20:37:30 1999 Catherine Moore <clm@cygnus.com>
2769
2770 * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX): Define.
2771 (INTEL_DWORD_MNEM_SUFFIX): Define.
2772 (BYTE_PTR): Define.
2773 (WORD_PTR): Define.
2774 (DWORD_PTR): Define.
2775 (XWORD_PTR): Define.
2776 (SHORT): Define.
2777 (OFFSET_FLAT): Define.
2778 (FLAT): Define.
2779 (NONE_FOUND): Define.
2780 (No_dSuf): Define.
2781 (No_xSuf): Define.
2782 * config/tc-i386.c (set_intel_syntax): New routine.
2783 (intel_syntax): Declare.
2784 (allow_naked_reg): Declare.
2785 (md_pseudo_table): Support .intel_syntax and .att_syntax.
2786 (intel_float_operand): New routine.
2787 (md_assemble): Handle INTEL_DWORD_MNEM_SUFFIX.
2788 Handle brackets as well as parens. Call i386_intel_operand for
2789 intel syntax. Reverse operands if appropriate. Handle new
2790 suffixes. Handle movzx and movsx.
2791 (i386_is_reg): New routine.
2792 (i386_immediate): New routine.
2793 (i386_scale): New routine.
2794 (i386_displacement): New routine.
2795 (i386_operand_modifier): New routine.
2796 (build_displacement_string): New routine.
2797 (i386_parse_seg): New routine.
2798 (i386_intel_memory_operand): New routine.
2799 (i386_intel_operand): New routine.
2800 (i386_operand): Call i386_displacement, i386_immediate,
2801 i386_scale, etc. instead of handling inline.
2802 (parse_register): Handle registers without prefix.
2803
2804 Mon Feb 1 12:24:58 1999 Catherine Moore <clm@cygnus.com>
2805
2806 * configure: Regenerate.
2807 * configure.in (arm-*-oabi): New.
2808 (thumb-*-oabi): New.
2809 * config/tc-arm.c (target_oabi): Declare.
2810 (md_apply_fix3): Support REL relocs.
2811 (md_parse_option): Handle -oabi.
2812 (elf32_arm_target_format): New routine.
2813 (md_longopts): Add OPTION_OABI.
2814 * config/tc-arm.h: Redefine TARGET_FORMAT.
2815
2816
2817 1999-01-28 Nick Clifton <nickc@cygnus.com>
2818
2819 * write.c (write_relocs): Handle out of range error.
2820
2821 * config/tc-fr30.c (fr30_fix_adjustable): New function.
2822 (fr30_force_relocation): Default to 0.
2823
2824 * config/tc-fr30.h (obj_fix_adjustable): Define.
2825 (TC_FORCE_RELOCATION): Define.
2826
2827 * cgen.c (gas_cgen_md_apply_fix3): Do not apply fixes to VTABLE
2828 relocs.
2829
2830 1999-01-16 Nick Clifton <nickc@cygnus.com>
2831
2832 * config/tc-d30v.c (write_2_short): Do not generate a sequential
2833 merge of two instructions if the left instruciton kills the right.
2834
2835 1999-01-11 Doug Evans <devans@casey.cygnus.com>
2836
2837 * Makefile.in: Regenerate.
2838 * configure.in: Redo test for using cgen.
2839 * configure: Regenerate.
2840
2841 1999-01-09 Nick Clifton <nickc@cygnus.com>
2842
2843 * config/obj-coff.h (obj_adjust_symtab): Prevent accidental
2844 redefinition of this macro.
2845
2846 Tue Jan 5 21:58:03 1999 Doug Evans <devans@canuck.cygnus.com>
2847
2848 * config/tc-mips.c (mips_frob_file): Disable "Unmatched %hi reloc"
2849 warning.
2850
2851 1998-12-29 Gavin Romig-Koch <gavin@cygnus.com>
2852
2853 * config/tc-mips.c (append_insn): For mips16, insert a nop between
2854 a read of HI or LO and an immediatly following branch.
2855
2856 1998-12-29 Gavin Romig-Koch <gavin@cygnus.com>
2857
2858 * config/tc-mips.c (md_begin): Another correction to the setting of
2859 mips_eabi64.
2860
2861 1998-12-23 Gavin Romig-Koch <gavin@cygnus.com>
2862
2863 * config/tc-mips.c (md_begin): Correct type-o in setting of mips_eabi64.
2864
2865 1998-12-21 Nick Clifton <nickc@cygnus.com>
2866
2867 * config/tc-m32r.c (md_assemble): Emit a NOP after a relaxable 16
2868 bit insn when optimizing, so that parallelised instructions will
2869 start on a 32 bit boundary.
2870
2871 1998-12-19 Gavin Romig-Koch <gavin@cygnus.com>
2872
2873 * config/tc-mips.c (mips_eabi64): New.
2874 (md_begin): Set mips_eabi64.
2875 (mips_elf_final_processing): Use it.
2876
2877 1998-12-18 Gavin Romig-Koch <gavin@cygnus.com>
2878
2879 * config/tc-mips.c (mips_elf_final_processing):
2880 Correct setting of ABI in e_flags.
2881
2882 Wed Dec 16 16:17:22 1998 Dave Brolley <brolley@cygnus.com>
2883
2884 * config/tc-fr30.c (md_assemble): Warn about invalid instructions in delay slots.
2885
2886 1998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
2887
2888 * config/tc-mips.c (md_begin,md_parse_option): Handle vr4111.
2889
2890 1998-12-15 Doug Evans <devans@casey.cygnus.com>
2891
2892 * cgen.c (gas_cgen_md_apply_fix3): Mark as an error, rather than a
2893 warning, values that don't fit in the field.
2894
2895 1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
2896
2897 * config/tc-mips.c (mips_abi_string): New.
2898 (md_parse_option,md_longopts): Add mabi.
2899 (mips_elf_final_processing): Set e_flags based on mabi flag.
2900
2901 1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
2902
2903 * config/tc-mips.c (md_parse_option): Handle vr4111.
2904
2905 98-12-11 Ken Raeburn <raeburn@cygnus.com>
2906
2907 * config/tc-h8300.c (build_bytes): Change message given if the
2908 instruction requires H8/300H mode and we're not in Hmode, to
2909 suggest that it may be the operand modes that are the problem, not
2910 necessarily the opcode.
2911
2912 1998-12-10 Nick Clifton <nickc@cygnus.com>
2913
2914 * config/tc-fr30.c: Add line separator character.
2915
2916 Tue Dec 8 19:51:50 1998 Mark Klein <mklein@dis.com>
2917
2918 * configure.in (hppa-*-mpeix*): New target.
2919 * config/obj-som.h (obj_som_compiler): Declare.
2920 * config/obj-som.c (compiler_seen): New static variable.
2921 (obj_som_compiler): New function.
2922 * config/tc-hppa.c: Update tc_data uses for change to bfd/som.h.
2923 (md_pseudo_table): Add "compiler" if OBJ_SOM.
2924 (pa_type_args): Set hppa_priv_level.
2925 (pa_compiler): New static function if OBJ_SOM.
2926 * configure: Rebuild.
2927
2928 Tue Dec 8 15:00:50 1998 Ian Lance Taylor <ian@cygnus.com>
2929
2930 * read.c (output_leb128): Don't mark as inline.
2931
2932 1998-12-08 Andrew MacLeod <amacleod@cygnus.com>
2933
2934 * config/tc-ppc.c (ppc_vbyte): Prototype and new function for
2935 AIX .vbyte unaligned data support.
2936 (md_pseudo_table): Add 'vbyte' to list of valid pseudos.
2937 (ppc_elf_validate_fix): Add eh_frame to list of ELF relocatable
2938 sections.
2939
2940 1998-12-07 Nick Clifton <nickc@cygnus.com>
2941
2942 * config/tc-d30v.c (md_assemble, do_assemble): Improve erroneous
2943 input handling.
2944
2945 Mon Dec 7 09:48:34 1998 Catherine Moore <clm@cygnus.com>
2946
2947 * config/tc-arm.c (elf32_arm_force_relocation): Check for
2948 BFD_RELOC_ARM_PCREL_BRANCH.
2949
2950 Sun Dec 6 12:46:36 1998 Ian Lance Taylor <ian@cygnus.com>
2951
2952 * configure.in: Define TARGET_BYTES_{BIG,LITTLE}_ENDIAN after
2953 checking the target type.
2954 (mips-dec-bsd*): Set endian to little.
2955 * configure: Rebuild.
2956
2957 COFF weak symbol support, based on patches from Mark Elbrecht
2958 <snowball3@usa.net>:
2959 * config/obj-coff.h (S_IS_WEAK): Define if not BFD_ASSEMBLER.
2960 * config/obj-coff.c (obj_coff_weak): New static function.
2961 (obj_coff_endef) [both versions]: Handle weak symbols.
2962 (coff_frob_symbol): Likewise.
2963 (yank_symbols): Likewise.
2964 (obj_pseudo_table): Add "weak".
2965
2966 * configure.in (m68k-*-gnu*): New target. From Aymeric Vincent
2967 <aymeric.vincent@emi.u-bordeaux.fr>.
2968 * aclocal.m4: Rebuild with current tools.
2969 * configure: Rebuild.
2970
2971 * config/tc-alpha.c (emit_ldgp): Give an error message rather than
2972 an assertion failure for a case we can't handle when OBJ_ECOFF.
2973
2974 * expr.c (operator): And with 0xff to avoid problems with signed
2975 char.
2976
2977 1998-12-03 Nick Clifton <nickc@cygnus.com>
2978
2979 * config/tc-fr30.c (md_cgen_lookup_reloc): Generate
2980 BFD_RELOC_FR30_48 instead of BFD_RELOC_FR30_32.
2981
2982 1998-12-02 Nick Clifton <nickc@cygnus.com>
2983
2984 * config/tc-fr30.c (md_cgen_lookup_reloc): Enable relocs for
2985 LDI:20 insn.
2986
2987 Thu Nov 26 11:23:48 1998 Dave Brolley <brolley@cygnus.com>
2988
2989 * config/tc-fr30.c (md_pcrel_from_section): Restore previous calculation
2990 of pcrel point.
2991
2992 Tue Nov 24 17:21:52 1998 Nick Clifton <nickc@cygnus.com>
2993
2994 * config/tc-fr30.c (md_pcrel_from_section): Fix calculation of
2995 pcrel point.
2996
2997 Tue Nov 24 14:54:38 1998 Nick Clifton <nickc@cygnus.com>
2998
2999 * config/tc-d10v.c (md_assemble): Make static 'etype' have file
3000 scope.
3001 (d10v_cleanup): Only generate previous insn if a multiline insn is
3002 not pending.
3003
3004 Fri Nov 20 11:41:13 1998 Nick Clifton <nickc@cygnus.com>
3005
3006 * config/tc-fr30.c (md_cgen_lookup_reloc): Add support for
3007 FR30_OPERAND_I32.
3008
3009 Thu Nov 19 15:01:29 1998 Nick Clifton <nickc@cygnus.com>
3010
3011 * config/tc-arm.c (md_parse_option): Add support for -marm7xxx and
3012 -marm6xxx command line switches.
3013
3014 1998-11-18 Doug Evans <devans@casey.cygnus.com>
3015
3016 * Makefile.am (DEP): Use $(srcdir)/../mkdep.
3017 (itbl-ops.o): Delete duplicate dependencies.
3018 Rebuild dependencies.
3019 Add fr30 dependencies.
3020 * Makefile.in: Rebuild.
3021
3022 Tue Nov 17 13:42:42 1998 Nick Clifton <nickc@cygnus.com>
3023
3024 * config/tc-fr30.c (md_cgen_lookup_reloc): Updated to match latest
3025 opcode list.
3026 * listing.c: Ignore line terminator characters found inside
3027 strings.
3028
3029 Thu Nov 12 19:21:24 1998 Dave Brolley <brolley@cygnus.com>
3030
3031 * po/gas.pot: Regenerated.
3032
3033 Thu Nov 12 10:54:16 1998 Nick Clifton <nickc@cygnus.com>
3034
3035 * config/tc-fr30.c (fr30_is_colon_insn): New name for
3036 fr30_is_label_start(). Also checks for delay slot insns.
3037
3038 * config/tc-fr30.c (fr30_is_label_start): New function: Handle
3039 FR30 instructions which contain a colon in the mnemonic.
3040
3041 * config/tc-fr30.h (TC_START_LABEL): Define this macro.
3042
3043 Wed Nov 11 09:58:21 1998 Nick Clifton <nickc@cygnus.com>
3044
3045 * config/tc-fr30.c: Removed currently superflous code.
3046
3047 Tue Nov 10 13:13:05 1998 Nick Clifton <nickc@cygnus.com>
3048
3049 * config/tc-fr30.h: New file.
3050 * config/tc-fr30.c: Tweaking so that it will compile.
3051
3052 Tue Nov 10 14:41:33 1998 Catherine Moore <clm@cygnus.com>
3053
3054 * config/tc-d10v.h (obj_fix_adjustable): Define.
3055 (TC_FORCE_RELOCATION): Define.
3056 (d10v_force_relocation): Declare.
3057 * config/tc-d10v.c (tc_gen_reloc): Handle Vtable relocs.
3058 (md_apply_fix3): Handle Vtable relocs.
3059 (d10v_fix_adjustable): New.
3060 (d10v_force_relocation): New.
3061
3062 Mon Nov 9 14:25:06 1998 Nick Clifton <nickc@cygnus.com>
3063
3064 * config/tc-d30v.c: Change default behaviour to ignore potential
3065 conflicts between register name and symbol names.
3066
3067 Wed Nov 4 18:42:00 1998 Dave Brolley <brolley@cygnus.com>
3068
3069 * configure.in: Add fr30-*-*.
3070 * config/tc-fr30.c: New file.
3071 * Makefile.in: Regenerated.
3072 * config.in: Regenerated.
3073 * configure: Regenerated.
3074 * doc/Makefile.in: Regenerated.
3075 * po/gas.pot: Regenerated.
3076
3077 Mon Nov 2 20:54:16 1998 Doug Evans <devans@canuck.cygnus.com>
3078
3079 * config/tc-m32r.c (assemble_two_insns): Ensure both insns
3080 are 16 bit insns.
3081
3082 Mon Nov 2 20:10:18 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
3083
3084 * app.c (do_scrub_begin): Set characters above 127 to be symbol
3085 characters.
3086 (do_scrub_chars): Add some casts to unsigned char to avoid
3087 unwanted sign extension.
3088 * read.c (lex_type): Set characters about 127 to be symbol
3089 characters.
3090 * config/tc-i386.c (md_begin): Set identifier_chars and
3091 operand_chars for values above 127.
3092
3093 Mon Nov 2 15:05:33 1998 Geoffrey Noer <noer@cygnus.com>
3094
3095 * configure.in: detect cygwin* instead of cygwin32*
3096 * configure: regenerate
3097
3098 Tue Oct 27 13:18:40 1998 Nick Clifton <nickc@cygnus.com>
3099
3100 * listing.c: Add support for producing a listing from piped
3101 input.
3102
3103 Tue Oct 27 08:56:44 1998 Gavin Romig-Koch <gavin@cygnus.com>
3104
3105 * config/tc-mips.c (hilo_interlocks): Remove mips_3900.
3106 (append_insn): Account for the tx39's multiply behavior.
3107
3108 1998-10-26 Michael Meissner <meissner@cygnus.com>
3109
3110 * config/tc-m32r.c (assemble_two_insns): Rename assemble_two_insns
3111 from assemble_parallel_insns. Add support for '->' to indicate
3112 explicitly serializing the instructions.
3113 (md_assemble): Ditto.
3114
3115 Sat Oct 24 15:12:19 1998 Catherine Moore <clm@cygnus.com>
3116
3117 * config/tc-sh.c (sh_fix_adjustable): Adjust EXTERN and
3118 WEAK handling.
3119
3120 Thu Oct 22 12:41:33 1998 Catherine Moore <clm@cygnus.com>
3121
3122 * cgen.c (gas_cgen_md_apply_fix3): Revert last change.
3123
3124 Thu Oct 22 10:03:15 1998 Ron Unrau <runrau@cygnus.com>
3125
3126 * config/tc-mips.c : support frame and regmask/fregmask when
3127 MIPS_STABS_ELF is specified.
3128
3129 Wed Oct 21 11;34:51 1998 Catherine Moore <clm@cygnus.com>
3130
3131 * config/tc-sh.c (sh_fix_adjustable): Only include if OBJ_ELF.
3132 (md_apply_fix): Don't return 1 for VTABLE relocs.
3133 * config/tc-sh.h (obj_fix_adjustable): Define only if OBJ_ELF.
3134
3135 Tue Oct 20 11:18:28 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3136
3137 * doc/c-i386.texi: Replace occurences of "opcode" with
3138 "instruction mnemonic", "instruction", or "mnemonic" when
3139 referring to the name of an instruction. Use "opcode" when
3140 referring to the sequence of machine bytes.
3141
3142 * config/tc-i386.c (opcode_chars): Rename to mnemonic_chars.
3143 (is_opcode_char): Rename to is_mnemonic_char.
3144 (md_assemble and i386_operand): Correct error messages from
3145 "opcode" to "instruction mnemonic"
3146 Rename throughout opcode[] -> mnemonic[], opp -> mnem_p,
3147 MAX_OPCODE_SIZE -> MAX_MNEM_SIZE,
3148 DWORD_OPCODE_SUFFIX -> DWORD_MNEM_SUFFIX,
3149 WORD_OPCODE_SUFFIX -> WORD_MNEM_SUFFIX,
3150 BYTE_OPCODE_SUFFIX -> BYTE_MNEM_SUFFIX,
3151 SHORT_OPCODE_SUFFIX -> SHORT_MNEM_SUFFIX
3152 LONG_OPCODE_SUFFIX -> LONG_MNEM_SUFFIX
3153
3154 * config/tc-i386.h (*_MNEM_SUFFIX): Rename from *_OPCODE_SUFFIX.
3155
3156 * config/tc-i386.c (i386_operand): Check for garbage after
3157 register name.
3158
3159 Tue Oct 20 10:49:42 1998 Ian Lance Taylor <ian@cygnus.com>
3160
3161 * config/tc-i386.c (md_apply_fix3): Change handling of PCREL reloc
3162 for BFD_ASSEMBLER to only change value when COFF if TE_PE.
3163
3164 Mon Oct 19 20:20:42 1998 Catherine Moore <clm@cygnus.com>
3165
3166 * config/tc-sh.h (obj_fix_adjustable): Define.
3167 * config/tc-sh.c (sh_force_relocation): Handle VT relocs.
3168 (md_apply_fix): Likewise.
3169 (tc_gen_reloc): Likewise.
3170 (sh_fix_adjustable): New.
3171
3172 Mon Oct 19 12:35:43 1998 Doug Evans <devans@seba.cygnus.com>
3173
3174 * cgen.c (gas_cgen_finish_insn): Update handling of CGEN_INT_INSN_P.
3175 * cgen.h (gas_cgen_finish_insn): Update prototype.
3176 * config/tc-m32r.c (m32r_insn): CGEN_INT_INSN -> CGEN_INT_INSN_P.
3177 cgen_insn_t -> CGEN_INSN_INT.
3178 (make_parallel): Update handling of CGEN_INT_INSN_P.
3179 (assemble_parallel_insn): Ditto.
3180 (target_make_parallel): New function.
3181 (md_assemble): Use it.
3182
3183 Mon Oct 19 13:16:12 1998 Catherine Moore <clm@cygnus.com>
3184
3185 * config/tc-m32r.c (m32r_force_relocation): Fix typo.
3186
3187 Sun Oct 18 18:48:57 1998 Jeffrey A Law (law@cygnus.com)
3188
3189 * config/tc-sh.c (md_assemble): Make sure the entire opcode is
3190 converted into lower case.
3191
3192 Fri Oct 16 13:36:34 CDT Catherine Moore <clm@cygnus.com>
3193
3194 * cgen.c (gas_cgen_md_apply_fix3): Handle VTABLE relocs.
3195 (gas_cgen_tc_gen_reloc): Likewise.
3196 * config/tc-m32r.h (obj_fix_adjustable): Define.
3197 * config/tc-m32r.c (m32r_fix_adjustable): New.
3198 (m32r_force_relocation): Handle VTABLE relocs.
3199
3200 Wed Oct 14 11:33:38 1998 Nick Clifton <nickc@cygnus.com>
3201
3202 * doc/c-arm.texi (ARM Directives): Document .ltorn directive.
3203
3204 Mon Oct 12 11:07:21 1998 Nick Clifton <nickc@cygnus.com>
3205
3206 * config/tc-m32r.c (assemble_parallel_insn): Convert second opcode
3207 to lower case before parsing.
3208
3209 * config/tc-d30v.c (parallel_ok): Ignore conflicts when explicitly
3210 parallel insns modift buts in the PSW as a side effect.
3211
3212 Thu Oct 8 10:18:33 1998 Nick Clifton <nickc@cygnus.com>
3213
3214 * config/tc-d30v.c (find_format): Test for missing flag and
3215 control registers.
3216
3217 (md_apply_fix3): Fix error messages to avoid
3218 assumption about presence of a symbol.
3219
3220 (parallel_ok): Disallow parallel instructions that both modify the
3221 same flag register.
3222
3223 (find_format): Generate a warning if an odd numbered register is
3224 used as the first register in a mutli-register instruction.
3225
3226 Wed Oct 7 14:09:14 1998 Nick Clifton <nickc@cygnus.com>
3227
3228 * config/tc-d30v.c (md_apply_fix3): Do not assume that bad
3229 relocations are always associated with a symbol.
3230
3231 Tue Oct 6 09:31:15 1998 Catherine Moore <clm@cygnus.com>
3232
3233 * tc-sparc.h (TC_FORCE_RELOCATION): Define.
3234 (elf32_sparc_force_relocation): Declare.
3235 * tc-sparc.c (md_apply_fix3): Handle vtable relocs.
3236 (tc_gen_reloc): Handle vtable relocs.
3237 (elf32_sparc_force_relocation): New.
3238
3239 Mon Oct 5 09:25:32 1998 Catherine Moore <clm@cygnsu.com>
3240
3241 * symbols.c (S_IS_FUNCTION): New.
3242 * config/tc-v850.h (obj_fix_adjustable): Define.
3243 (TC_FORCE_RELOCATION): Define.
3244 (v850_force_relocation): Declare.
3245 * config/tc-v850.c (tc_gen_reloc): Use offset instead
3246 of fx_addnumber for VTABLE reloc addends.
3247 (md_apply_fix3): Handle VTABLE relocs.
3248 (v850_fix_adjustable): New.
3249 (v850_force_relocation): New.
3250
3251 Mon Oct 5 00:48:52 1998 Jeffrey A Law (law@cygnus.com)
3252
3253 * tc-hppa.c (fp_operand_format): Add some additional formats.
3254 (pa_ip): Do not automatically promote into pa2.0 mode.
3255 (pa_level): Handle ".level 2.0".
3256
3257 Sun Oct 4 20:57:43 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3258
3259 * config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
3260 * config/tc-i386.h (template.extension_opcode): Change to
3261 unsigned int to allow full range of 8-bit opcode suffixes.
3262 (None): Redefine as 0xffff.
3263
3264 From Jeff B Epler <jepler@usgs.gov>
3265 * doc/c-i386.texi (i386-SIMD): New section.
3266
3267 Thu Oct 1 15:37:54 1998 Richard Henderson <rth@cygnus.com>
3268
3269 * read.c (discard_rest_of_line): New function.
3270 * read.h: Declare it.
3271 * config/tc-alpha.c (s_alpha_mask, s_alpha_frame): Use it.
3272
3273 Thu Oct 1 10:33:53 1998 Nick Clifton <nickc@cygnus.com>
3274
3275 * config/tc-d10v.c (find_symbol_matching_register): New function.
3276 (find_opcode): Cope with the case where a register name matches
3277 a symbol name.
3278
3279 Wed Sep 30 10:52:32 1998 Nick Clifton <nickc@cygnus.com>
3280
3281 * config/tc-v850.c (md_pcrel_from): Rename to
3282 v850_pcrel_from_section.
3283 (v850_pcrel_from_section): Do not resolves symbols in other
3284 sections.
3285
3286 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
3287
3288 Mon Sep 28 11:01:20 1998 Nick Clifton <nickc@cygnus.com>
3289
3290 * config/tc-d10v.c (find_opcode): Generate an error if a register
3291 is supplied for an operand that should not be a register.
3292
3293 Fri Sep 25 10:04:21 1998 Nick Clifton <nickc@cygnus.com>
3294
3295 * config/tc-d30v.c (write_2_short): But do allow delayed branch
3296 instructions to have another instruction in the right bin.
3297
3298 Thu Sep 24 09:28:34 1998 Nick Clifton <nickc@cygnus.com>
3299
3300 * config/tc-d30v.c (write_2_short): Do not allow instructions in
3301 the right container if the left container holds a branch
3302 instruction.
3303
3304 Wed Sep 23 10:54:29 1998 Nick Clifton <nickc@cygnus.com>
3305
3306 * config/tc-d30v.c (reg_name_search): Only warn if a name matches
3307 both a register name and symbol name.
3308 (find_format): Allow correct parsing of MVTSYS and MVFSYS insns.
3309
3310 Tue Sep 22 17:49:16 1998 Nick Clifton <nickc@cygnus.com>
3311
3312 * config/tc-d30v.c (write_2_short): Implement EITHER_BUT_PREFER_MU
3313 execution unit class.
3314
3315 (reg_name_search): If a name matches a register and a symbol,
3316 prefer the register.
3317 (find_format): Disallow flag registers when a general purpose
3318 register is required.
3319 If a number is required, but a register has been given, check to
3320 see if a symbol with the same name as the register exists, and if
3321 so, use that symbol.
3322
3323 Tue Sep 22 16:40:52 1998 Jim Wilson <wilson@cygnus.com>
3324
3325 * config/obj-elf.h (ECOFF_DEBUGGING): Add missing parens.
3326
3327 Tue Sep 22 15:44:21 1998 Nick Clifton <nickc@cygnus.com>
3328
3329 * config/tc-d30v.c (find_format): Do not accept flag registers as
3330 general purpose registers.
3331 (find_format): If an immediate value is expected at a given place
3332 in a format, but a register name has been provided instead, check
3333 to see if that register name matches the name of a predefined
3334 symbol and if it does, then use the symbol instead.
3335 (reg_name_search): If a register name matches a symbol name,
3336 prefer the register name to the symbol name.
3337
3338 Mon Sep 21 10:42:57 1998 Nick Clifton <nickc@cygnus.com>
3339
3340 * config/tc-m32r.c (m32r_do_align): After inserting NOPs, reset
3341 the previous insn to empty.
3342
3343 1998-09-20 Michael Meissner <meissner@cygnus.com>
3344
3345 * config/tc-ppc.c (md_apply_fix3): Do not break string into two
3346 pieces, forcing the use of an ANSI compiler.
3347
3348 Sun Sep 20 00:58:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3349
3350 * config/tc-m68k.h (TC_FORCE_RELOCATION): New macro. Force vtable
3351 relocs.
3352 * config/tc-m68k.c (md_apply_fix_2): Do nothing for vtable relocs.
3353
3354 Tue Sep 15 08:51:07 1998 Catherine Moore <clm@cygnus.com>
3355
3356 * config/obj-elf.c (obj_elf_vtable_inherit): Handle arm
3357 assembler syntax.
3358 (obj_elf_vtable_entry): Likewise.
3359 * config/tc-arm.h: Define TC_FORCE_RELOCATION for OBJ_ELF.
3360 * config/tc-arm.c (md_apply_fix3): Handle VTABLE relocations.
3361 (tc_gen_reloc): Likewise.
3362 (arm_fix_adjustable): Likewise.
3363 (elf32_arm_force_relocation): New.
3364 (armelf_frob_symbol): Remove coff-style symbol support.
3365
3366 Wed Sep 9 11:27:16 1998 Richard Henderson <rth@cygnus.com>
3367
3368 * config/tc-i386.c (i386_operand): Fix typo in last patch.
3369
3370 Tue Sep 8 18:10:01 1998 Catherine Moore <clm@cygnus.com>
3371
3372 * config/tc-arm.c (arm_adjust_symtab): Move #ifdef
3373 OBJ_COFF so that routine is defined for a.out format.
3374
3375 Tue Sep 8 15:56:19 1998 Richard Henderson <rth@cygnus.com>
3376
3377 * config/tc-i386.c (i386_operand): Detect non-segment registers
3378 used as segment prefixes.
3379
3380 Sat Sep 5 19:00:38 1998 Ian Lance Taylor <ian@cygnus.com>
3381
3382 * ehopt.c (check_eh_frame): Check the size of the FDE, and don't
3383 optimize across FDE boundaries.
3384
3385 * config/obj-coff.c (obj_coff_section): Preserve any link once
3386 flags when setting the section flags.
3387
3388 Fri Sep 4 17:07:14 1998 Nick Clifton <nickc@cygnus.com>
3389
3390 * config/tc-arm.h (obj_adjust_symtab): Fixed typo.
3391 * config/tc-arm.c (armelf_adjust_symtab): Reformatted.
3392
3393 Fri Sep 4 13:57:43 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
3394
3395 * config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
3396 to the host width.
3397
3398 Wed Sep 2 11:31:14 1998 Richard Henderson <rth@cygnus.com>
3399
3400 * frags.c (frag_grow): Include the size of the frag struct in the
3401 obstack chunk size.
3402
3403 * subsegs.c (subseg_set_rest): Adjust the seginfo frchain start
3404 if the new subseg comes before the old.
3405
3406 Tue Sep 1 15:01:33 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
3407
3408 * config/tc-sparc.c (sparc_ip): Allow all digits in an instruction
3409 to handle edge8 and edge16.
3410
3411 Mon Aug 31 09:51:14 1998 Richard Henderson <rth@cygnus.com>
3412
3413 * config/obj-elf.c (obj_elf_vtable_inherit): Print error message
3414 before we clobber the symbol involved.
3415
3416 Mon Aug 31 10:58:06 1998 Catherine Moore <clm@cygnus.com>
3417
3418 * config/tc-arm.c: Remove OBJ_ELF definitions for
3419 S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS. Only
3420 use arm_adjust_symtab for OBJ_COFF.
3421 (armelf_adjust_symtab): New Routine.
3422 * config/tc-arm.h: Define obj_adjust_symtab to
3423 armelf_adjust_symtab for OBJ_ELF.
3424
3425 Sat Aug 29 22:18:51 1998 Richard Henderson <rth@cygnus.com>
3426
3427 * configure.in: Make all i386-elf targets use bfd_gas.
3428 * config/tc-i386.c (tc_i386_force_relocation): New.
3429 (tc_i386_fix_adjustable): Don't fix vtable relocs.
3430 (md_apply_fix3): Likewise.
3431 (tc_gen_reloc): Handle them.
3432 * config/tc-i386.h (TC_FORCE_RELOCATION): Always define, calling
3433 tc_i386_force_relocation.
3434
3435 Mon Aug 24 13:40:21 1998 Nick Clifton <nickc@cygnus.com>
3436
3437 * config/tc-arm.c (md_show_usage): Improve formatting of --help output.
3438
3439 Fri Aug 21 18:43:48 1998 Nick Clifton <nickc@cygnus.com>
3440
3441 * config/tc-d30v.c (md_assemble): Copy previous opcode over
3442 current opcode after writing the first insturction of a reverse
3443 sequential pair.
3444
3445 Fri Aug 21 07:30:35 1998 Doug Evans <devans@canuck.cygnus.com>
3446
3447 * read.h (generate_lineno_debug): Add prototype.
3448 * read.c (generate_lineno_debug): Make non-static.
3449
3450 Thu Aug 20 23:17:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3451
3452 * config/tc-i386.c (md_assemble): Only warn for address/data size
3453 prefixes.
3454
3455 Thu Aug 20 14:45:08 1998 Nick Clifton <nickc@cygnus.com>
3456
3457 * config/tc-arm.c (arm_fix_adjustable): Do not adjust relocations
3458 against Thumb function names, as the linker needs this information.
3459
3460 1998-08-20 Vladimir N. Makarov <vmakarov@cygnus.com>
3461
3462 * expr.c (operand): Check also that there is no advance in operand
3463 after atof_generic in order to decide "is it label 0f or floating
3464 point number?".
3465
3466 Wed Aug 19 09:30:16 1998 Nick Clifton <nickc@cygnus.com>
3467
3468 * config/tc-m32r.c: Replace double dash prefix to M32R specific
3469 command line options with a single dash.
3470 * doc/c-m32r.texi: Replace double dash prefix with a single dash.
3471
3472 Tue Aug 18 11:59:43 1998 Catherine Moore <clm@cygnus.com>
3473
3474 * tc-arm.h: Define obj_fix_adjustable for OBJ_ELF.
3475 * tc-arm.c (arm_fix_adjustable): New routine.
3476
3477 1998-08-13 Vladimir N. Makarov <vmakarov@cygnus.com>
3478
3479 * read.c (s_align, s_comm, s_mri_common, s_fail, s_globl, s_space,
3480 s_float_space, s_struct, cons_worker): Move ignore_rest_of_line or
3481 demand_empty_rest_of_line before mri_comment_end.
3482 (equals): Check garbage after expression before
3483 mri_comment_end in MRI mode.
3484
3485 Thu Aug 13 15:08:42 1998 Ian Lance Taylor <ian@cygnus.com>
3486
3487 * config/tc-mips.c (macro): Correct M_SGE_I/M_SGEUI_I case for a
3488 small immediate constant to use the constant itself rather than
3489 always using 1.
3490
3491 Wed Aug 12 18:47:38 1998 Ian Lance Taylor <ian@cygnus.com>
3492
3493 * config/tc-hppa.c (pa_enter): Call as_bad rather than abort.
3494 (pa_leave): Likewise.
3495
3496 Wed Aug 12 13:25:03 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3497
3498 * config/tc-i386.c (md_assemble): Emit a warning for stand-alone
3499 prefixes.
3500 (i386_operand): Fix an error message.
3501
3502 Tue Aug 11 14:44:32 1998 Nick Clifton <nickc@cygnus.com>
3503
3504 * doc/c-arm.texi (ARM Directives): Document .req directive.
3505
3506 * config/tc-arm.c (reg_required_here): Display erroneous string if
3507 the register name could not be decoded.
3508 Do not set inst.instruction if the sift is -1.
3509
3510 Mon Aug 10 15:39:56 1998 Richard Henderson <rth@cygnus.com>
3511
3512 * config/tc-alpha.c (tc_gen_reloc): Bias WEAK symbols just as
3513 we do for EXTERN.
3514
3515 Mon Aug 10 15:06:18 1998 Nick Clifton <nickc@cygnus.com>
3516
3517 * config/tc-d30v.c (d30v_align): Always perform alignment request,
3518 even if it is belived to be unnecessary.
3519
3520 Mon Aug 10 17:48:09 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3521
3522 config/tc-i386.c (i386_operand): Size immediate constants by
3523 suffix (erroneously removed as part of July 7 change).
3524
3525 Sun Aug 9 20:45:32 1998 Catherine Moore <clm@cygnus.com>
3526
3527 * config/obj-elf.h: Check for redefinition of obj_frob_symbol.
3528 * config/tc-arm.c: Define S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.
3529 (armelf_frob_symbol): New Routine.
3530 * config/tc-arm.h: Define obj_frob_symbol if OBJ_ELF.
3531
3532 Sat Aug 8 15:21:28 1998 Richard Henderson <rth@cygnus.com>
3533
3534 * config/tc-alpha.c (alpha_fix_adjustable): Don't adjust weak syms.
3535
3536 Wed Aug 5 15:54:14 1998 Nick Clifton <nickc@cygnus.com>
3537
3538 * config/tc-arm.c (md_begin): Set BFD private flags depending upon
3539 command line switches passed to assembler.
3540
3541 Mon Aug 3 14:02:52 1998 Doug Evans <devans@seba.cygnus.com>
3542
3543 * cgen.h (GAS_CGEN_MAX_FIXUPS): GAS_ prepended, all uses updated.
3544 (gas_cgen_opcode_desc): Declare.
3545 (gas_cgen_parse_operand): Declare.
3546 (*): Prepend gas_ to gas specific fns to denote them as such.
3547 All uses updated.
3548 * cgen.c (gas_cgen_opcode_desc): New global
3549 (gas_cgen_init_parse): Renamed from cgen_asm_init_parse.
3550 (queue_fixup): Renamed from cgen_queue_fixup.
3551 (*): Prepend gas_ to gas specific fns to denote them as such.
3552 All uses updated.
3553 (gas_cgen_md_apply_fix3): Update call to insert_operand.
3554 (gas_cgen_finish_insn): Renamed from cgen_asm_finish_insn.
3555 * config/tc-m32r.c (md_begin): Remove use of CGEN_SYM.
3556 Open opcode table and initialize it.
3557 (make_parallel): Use gas_cgen_opcode_desc.
3558 (assemble_parallel_insn): Ditto. Remove use of CGEN_SYM.
3559 (md_assemble): Ditto.
3560
3561 Sat Aug 1 19:27:30 1998 Richard Henderson <rth@cygnus.com>
3562
3563 * as.h (debug_info_type): Add entries for unspecified and dwarf*.
3564 * ecoff.c (ecoff_generate_asm_lineno): Take no arguments; call
3565 as_where ourselves. Provide a stub for !ECOFF_DEBUGGING.
3566 * ecoff.h: Move ECOFF_DEBUGGING protection inside GAS_ECOFF_H.
3567 Move ecoff_generate_asm_lineno outside ECOFF_DEBUGGING protection.
3568 * read.c (generate_lineno_debug): Tidy ECOFF bits. Use
3569 DEBUG_UNSPECIFIED rather than DEBUG_NONE for initial test.
3570 * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Define to a variable.
3571 (SEPARATE_STAB_SECTIONS): Conditionalize on value of ECOFF_DEBUGGING.
3572 (INIT_STAB_SECTION): Likewise.
3573 (OBJ_PROCESS_STAB): Likewise.
3574
3575 * config/tc-alpha.c (md_longopts): New options -mdebug/-no-mdebug.
3576 (md_parse_option): Watch for them.
3577 (alpha_cur_ent_sym, alpha_flag_mdebug): New variables.
3578 (md_begin): Kill neverdef code.
3579 (s_alpha_ent, s_alpha_end, s_alpha_mask, s_alpha_frame): New.
3580 (s_alpha_prologue): Watch alpha_cur_ent_sym.
3581 (s_alpha_coff_wrapper): New.
3582 (md_pseudo_table): Trap all ECOFF pseudos.
3583
3584 Fri Jul 31 16:45:54 1998 Ron Unrau <runrau@cygnus.com>
3585
3586 Start of changes to remove mdebug section from mips*-elf
3587 Based on MIPS_STAB_ELF definition
3588 * acconfig.h: undef if not configured
3589 * config.in: undef if not configured
3590 * config/mips-elf.h: only set ECOFF debugging if not stabs-in-elf
3591 * config/tc-mips.c (s_ent): set BSF_FUNCTION
3592 * stabs.c (s_stab_generic): flush frag
3593
3594 Fri Jul 31 16:14:45 1998 Catherine Moore <clm@cygnus.com>
3595
3596 * configure.in: (arm-*-elf): Handle.
3597 (thumb-*-elf): Handle.
3598 * configure: Regenerate.
3599 * read.c (stringer): Fix typo in comment.
3600 * write.c (fixup_segment): Don't add symbol value to addend if
3601 TC_ARM and OBJ_ELF.
3602 * config/tc-arm.c (md_section_align): Don't align dwarf debug
3603 sections.
3604 (tc_gen_reloc): Always set the reloc addend to fixp->fx_offset
3605 for OBJ_ELF.
3606
3607 Thu Jul 30 21:38:43 1998 Frank Ch. Eigler <fche@cygnus.com>
3608
3609 * config/tc-d30v.c ({cur,prev}_left_kills_right_p): New variables.
3610 (write_2_short): Emit warning if new flag is set.
3611 (do_assemble): Set flags if left instruction is one of special
3612 "right-instruction-killer" type.
3613
3614 Tue Jun 28 18:12:28 1998 Stan Cox <scox@cygnus.com>
3615
3616 * config/tc-sparc.c (md_number_to_chars, cons_fix_new_sparc):
3617 Always output words in debug_info section as big endian.
3618 (sparc_target_format): Choose correct bfd target.
3619 (md_apply_fix3): Rename BFD_RELOC_SPARC_32LE to BFD_RELOC_SPARC_REV32.
3620
3621 Tue Jul 28 11:01:21 1998 Jeffrey A Law (law@cygnus.com)
3622
3623 * config/tc-mn10300.c (md_assemble): Fix "errmsg" initialization
3624 to work with internationalization code. Issue an error when two
3625 operands match that are not allowed to match.
3626
3627 Mon Jul 27 16:25:58 1998 Doug Evans <devans@canuck.cygnus.com>
3628
3629 * configure.in (install_tooldir): Allow target to specify whether
3630 it wants to be installed in $(tooldir)/bin.
3631 * configure: Regenerate.
3632 * Makefile.am (install-exec-local): Set install-exec-tooldir
3633 dependency via configure.
3634 * Makefile.in: Regenerate.
3635
3636 Fri Jul 24 19:58:59 1998 Doug Evans <devans@canuck.cygnus.com>
3637
3638 * Makefile.am (install-exec-local): Split into two ...
3639 (install-exec-bindir,install-exec-tooldir): New rules.
3640 * Makefile.in: Regenerate.
3641
3642 Fri Jul 24 16:31:49 1998 Ian Lance Taylor <ian@cygnus.com>
3643
3644 * Makefile.am (install-exec-local): Don't remove the file before
3645 checking whether $(bindir) == $(tooldir)/bin. From Maciej
3646 W. Rozycki <macro@ds2.pg.gda.pl>.
3647 * Makefile.in: Rebuild.
3648
3649 Fri Jul 24 09:13:46 1998 Doug Evans <devans@canuck.cygnus.com>
3650
3651 * cgen.c: Include libiberty.h.
3652 (cgen_md_apply_fix3): Update call to md_cgen_lookup_reloc.
3653 (cgen_tc_gen_reloc): Use xmalloc, not bfd_alloc.
3654 * cgen.h (cgen_md_apply_fix3,cgen_tc_gen_reloc): Declare.
3655 (md_cgen_lookup_reloc)): Declare.
3656 (md_cgen_record_fixup_exp): Declare.
3657 * config/tc-m32r.h (md_pcrel_from_section): Declare.
3658 (m32r_relax_frag): Declare.
3659 (cgen_md_apply_fix3): Decls moved to cgen.h.
3660 (cgen_record_fixup_exp,cgen_tc_gen_reloc): Ditto.
3661 (m32r_cgen_record_fixup_exp): Delete decl.
3662 * config/tc-m32r.c (m32r_cpu_desc): #if 0 out.
3663 (assemble_nop): Delete.
3664 (expand_debug_syms): Delete unused `exp'.
3665 (md_cgen_lookup_reloc): Renamed from CGEN_SYM (lookup_reloc).
3666 Add default case for -Wall.
3667 (m32r_cgen_record_fixup_exp): Add default case for -Wall.
3668 (md_atof): Delete unused wordP.
3669
3670 Thu Jul 23 13:19:50 1998 Jeffrey A Law (law@cygnus.com)
3671
3672 * config/tc-mn10300.c (md_assemble): Make sure "errmsg" has a non-NULL
3673 value.
3674
3675 Wed Jul 22 14:36:56 1998 Ian Lance Taylor <ian@cygnus.com>
3676
3677 * doc/as.texinfo: Add documentation for .end, .exitm, .fail,
3678 .ifc, .ifeqs, .ifge, .ifgt, .ifle, .iflt, .ifnc, .ifne, .ifnes,
3679 .print, .purgem, and .struct. Remove documentation for
3680 .app-file.
3681
3682 Tue Jul 21 16:50:52 1998 Doug Evans <devans@seba.cygnus.com>
3683
3684 * cgen.c (cgen_md_apply_fix3): set_operand renamed to set_vma_operand.
3685 Update call to insert_operand.
3686
3687 Fri Jul 17 11:42:20 1998 Nick Clifton <nickc@cygnus.com>
3688
3689 * config/tc-m32r.c (ms_show_usage): Formatting changes.
3690
3691 Wed Jul 15 15:38:28 1998 Ian Lance Taylor <ian@cygnus.com>
3692
3693 * config/tc-i386.c (md_assemble): Don't get confused by trailing
3694 whitespace after a prefix operator.
3695
3696 Tue Jul 14 15:32:56 1998 Richard Henderson <rth@cygnus.com>
3697
3698 * configure.in (i386-*-beos{pe,elf,}*): Recognize.
3699
3700 Tue Jul 14 12:33:44 1998 Chris Torek <torek@bsdi.com>
3701
3702 * config/tc-sparc.c (log2): New static function.
3703 (s_reserve): Use log2 to convert alignment before calling
3704 record_alignment.
3705 (s_common): Use log2 to convert alignment before calling
3706 record_alignment and frag_align.
3707 (sparc_cons_align): Use log2.
3708
3709 Tue Jul 14 11:58:40 1998 Ian Lance Taylor <ian@cygnus.com>
3710
3711 * config/tc-sparc.c (s_reserve): Set symbol size if OBJ_ELF.
3712 (s_common): Likewise.
3713
3714 * config/tc-sparc.c (sparc_handle_align): Reindent a bit. Correct
3715 initialization of waddr.
3716 (sparc_elf_final_processing): Add default case to switch.
3717
3718 Tue Jul 14 11:00:16 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3719
3720 * doc/c-i386.texi: Fix a typo. Use the term 80-bit real rather
3721 than temporary real.
3722
3723 Mon Jul 13 13:55:42 1998 Ian Lance Taylor <ian@cygnus.com>
3724
3725 * write.c (subsegs_finish): Don't align the segments if there were
3726 any errors.
3727
3728 * config/obj-coff.c (c_symbol_merge): Correct number of bytes when
3729 copying aux information.
3730
3731 * expr.c (make_expr_symbol): Catch attempts to turn an O_big
3732 expression into a symbol.
3733
3734 Mon Jul 13 13:29:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3735
3736 * config/tc-i386.c (mode_from_disp_size): Change arg and return
3737 type to unsigned int.
3738 (md_assemble): Change type used to store offsets from unsigned
3739 long to long.
3740 (i386_operand): Switch error check to only call RESTORE_END_STRING
3741 once after parse_register.
3742
3743 Fri Jul 10 16:00:04 1998 Nick Clifton <nickc@cygnus.com>
3744
3745 * config/tc-v850.c (md_show_usage): Changed format to match that
3746 of gcc, ld, etc.
3747
3748 * as.c (show_usage): Changed format to match that of gcc, ld, etc.
3749
3750 Thu Jul 9 12:09:57 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3751
3752 * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't adjust vtable
3753 relocs.
3754 (md_apply_fix_2): Force the symbol of the vtable reloc to be
3755 weak.
3756
3757 Thu Jul 9 11:31:54 1998 Ian Lance Taylor <ian@cygnus.com>
3758
3759 * doc/Makefile.am (MAINTAINERCLEANFILES): Define.
3760 * doc/Makefile.in: Rebuild.
3761
3762 Wed Jul 8 12:18:56 1998 Jeffrey A Law (law@cygnus.com)
3763
3764 * config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
3765 for %lo expressions.
3766 (mips_ip, case 'u'): Move range check after code to mask
3767 off bits in %hi/%lo expressions. Mask off high bits for
3768 %lo expressions.
3769
3770 Tue Jul 7 17:57:38 1998 Ian Lance Taylor <ian@cygnus.com>
3771
3772 * doc/Makefile.am (gasver.texi): New target.
3773 (as.info, as.dvi): Depends upon gasver.texi.
3774 * doc/as.texinfo: Include gasver.texi. Mention version number on
3775 title page and in top node.
3776 * doc/Makefile.in: Rebuild.
3777
3778 Tue Jul 7 11:42:16 1998 Richard Henderson <rth@cygnus.com>
3779
3780 * listing.c (listing_listing): For EDICT_LIST, skip all lines up to
3781 but not including the line containing the edict.
3782 * listing.h (LISTING_EOF): New.
3783 * input-scrub.c (input_scrub_next_buffer): Call it.
3784
3785 Tue Jul 7 13:00:37 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3786
3787 * config/tc-i386.c (i386_operand): Don't set the size of an
3788 immediate address based solely on the suffix and the mode.
3789
3790 * config/tc-i386.c (md_assemble): Add assertion to make sure
3791 overlap2 does not set Imm.
3792
3793 * config/tc-i386.c (space_chars): Remove. The scrubber converts
3794 sequences of whitespace to a single space.
3795 (is_space_chars): Just compare with space.
3796 (md_begin): Don't initialize space_chars.
3797 (md_assemble): Just skip a single whitespace character.
3798 (i386_operand): Rewrite base-index parsing to use new
3799 parse_register, and to skip white space. Skip white space in a
3800 number of other places too. Don't give error message if
3801 parse_register fails.
3802 (parse_register): Change reg_string parameter to be non-const.
3803 Add end_op parameter. Skip white space after the `%', and return
3804 end of register string. Give error message here rather than
3805 caller.
3806
3807 Fri Jul 3 15:34:34 1998 Ian Lance Taylor <ian@cygnus.com>
3808
3809 Based on patch from Matt Semersky <matts@scd.hp.com>:
3810 * expr.c (op_encoding): Make const.
3811 (expr_set_precedence): New function.
3812 (expr_begin): Don't set operator rankings, just call
3813 expr_set_precedence.
3814 * expr.h (expr_set_precedence): Declare.
3815 * read.c (s_mri): Call expr_set_precedence.
3816
3817 Thu Jul 2 16:24:58 1998 Ian Lance Taylor <ian@cygnus.com>
3818
3819 * doc/as.texinfo (Statements): Remove paragraph discussing
3820 continuing lines with a backslash. This hasn't worked for years,
3821 if it ever did.
3822
3823 Thu Jul 2 14:06:22 1998 Klaus Kaempf <kkaempf@rmi.de>
3824
3825 * obj-vms.c: Add C++ support with ctors/dtors sections. Add weak
3826 symbol definitions.
3827 (Ctors_Symbols, Dtors_Symbols): New symbol chains.
3828 (ps_CTORS, ps_DTORS): New section types.
3829 (vms_fixup_xtors_section): New function
3830 (Ctors_Psect, Dtors_Psect): Define.
3831 (IS_GXX_XTOR): Define
3832 (global_symbol_directory): Change check of gxx_bug_fixed to 0.
3833 Filter static constructors/destructors and add to
3834 Ctors_Symbols/Dtors_Symbols chain.
3835 (vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
3836 appropriate section.
3837
3838 * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
3839 * makefile.vms: Merge vax/vms support.
3840
3841 Wed Jul 1 20:06:20 1998 Richard Henderson <rth@cygnus.com>
3842
3843 * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
3844 (elf_pseudo_table): Add them.
3845 * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
3846 (md_apply_fix): Accept them.
3847 (mips_fix_adjustable): Don't adjust them.
3848 (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
3849 * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
3850 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
3851 (tc_fix_adjustable): Don't adjust them.
3852
3853 Wed Jul 1 16:35:32 1998 Doug Evans <devans@seba.cygnus.com>
3854
3855 * Makefile.am (CGEN_CPU_PREFIX): New variable.
3856 (cgen.o): Use it.
3857 * Makefile.in: Regenerate.
3858 * configure.in: AC_SUBST cgen_cpu_prefix.
3859 * configure: Regenerate.
3860
3861 Wed Jul 1 21:38:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3862
3863 * config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
3864 Changed all users of COND12_DELAY.
3865
3866 Fri Jun 26 11:21:11 1998 Jeffrey A Law (law@cygnus.com)
3867
3868 * config/tc-mn10300.c (set_arch_mach): New function.
3869 (md_pseudo_table): Add pseudo-ops to set the current machine type.
3870 (md_begin): Default to mn10300 mode.
3871 (md_assemble): Only accept instructions for the core mn10300
3872 chip and the active machine type.
3873
3874 Wed Jun 24 19:06:04 1998 Ian Lance Taylor <ian@cygnus.com>
3875
3876 * subsegs.h (segment_info_type): Give the struct a name.
3877 * config/tc-h8300.h (tc_reloc_mangle): Add prototype.
3878 * config/tc-h8500.h (tc_reloc_mangle): Declare.
3879 * config/tc-sh.h (sh_coff_reloc_mangle): Add prototype.
3880 * config/tc-w65.h (tc_reloc_mangle): Declare.
3881 * config/tc-z8k.h (tc_reloc_mangle): Declare.
3882
3883 Wed Jun 24 13:45:00 1998 Catherine Moore <clm@cygnus.com>
3884
3885 * config/tc-v850.c (v850_comm): Restore old section
3886 after common processing.
3887
3888 Wed Jun 24 11:50:54 1998 Klaus Kaempf <kkaempf@progis.de>
3889
3890 * config/obj-vms.c (Create_VMS_Object_File): Force binary file.
3891
3892 Tue Jun 23 17:47:31 1998 Jim Wilson <wilson@cygnus.com>
3893
3894 * config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
3895 char with code that explicitly sign-extends.
3896
3897 Tue Jun 23 13:54:57 1998 Nick Clifton <nickc@cygnus.com>
3898
3899 * config/tc-v850.c (md_begin): Restore text section as the current
3900 section after creating call table sections.
3901 * config/obj-coff.h (SYM_AUXINFO): New macro to conceal ugly
3902 code.
3903
3904 * config/obj-coff.c (c_symbol_merge): Replace complex expresion
3905 with call to macro SYM_AUXINFO.
3906
3907 Tue Jun 23 15:09:27 1998 Mike Stump <mrs@wrs.com>
3908
3909 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
3910 with the program transform name.
3911 * Makefile.in: Rebuild.
3912
3913 Mon Jun 22 19:52:42 1998 Ian Lance Taylor <ian@cygnus.com>
3914
3915 * config/obj-coff.c (c_symbol_merge): Fix copying of auxiliary
3916 information.
3917
3918 Mon Jun 22 15:18:58 1998 Ian Lance Taylor <ian@cygnus.com>
3919
3920 * config/tc-i386.c (i386_operand): Be prepared for a space between
3921 the open parenthesis and the start of the register operand,
3922 because of the June 16 change.
3923
3924 Sun Jun 21 21:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
3925
3926 * config/tc-sh.c (md_apply_fix): Handle weak symbols correctly if
3927 BFD_ASSEMBLER.
3928
3929 Sun Jun 21 12:26:36 1998 Nick Clifton <nickc@cygnus.com>
3930
3931 * config/tc-d30v.c (d30v_align): Always perform alignment request,
3932 even if it is belived to be unnecessary.
3933
3934 Fri Jun 19 13:57:06 1998 Ian Lance Taylor <ian@cygnus.com>
3935
3936 * write.c (adjust_reloc_syms): Never adjust relocs against weak
3937 symbols.
3938 * config/tc-mips.c (md_apply_fix): Adjust accordingly.
3939
3940 Fri Jun 19 09:50:17 1998 Jeffrey A Law (law@cygnus.com)
3941
3942 * config/tc-mn10300.c (mn10300_insert_operand): Do not hardcode the
3943 shift amount for a repeated operand. The shift amount for the
3944 repeated copy comes from the size of the operand.
3945
3946 Fri Jun 19 00:44:19 1998 Jeffrey A Law (law@cygnus.com)
3947
3948 * config/tc-h8300.c (get_operand): Fix typos in ldm/stm support.
3949
3950 Wed Jun 17 13:07:05 1998 Ian Lance Taylor <ian@cygnus.com>
3951
3952 * config/tc-mips.c (md_show_usage): Fix -mipsN usage.
3953
3954 Tue Jun 16 13:06:21 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3955
3956 * app.c (do_scrub_begin): If tc_symbol_chars is defined, treat all
3957 characters in it as LEX_IS_SYMBOL_COMPONENT.
3958 * config/tc-i386.h (tc_symbol_chars): Define.
3959 (extra_symbol_chars): Declare.
3960 * config/tc-i386.c (extra_symbol_chars): Define.
3961 (comment_chars): Don't use '/' as comment start if TE_LINUX.
3962 (line_comment_chars): Set to '/' if TE_LINUX.
3963 * doc/c-i386.texi (i386-prefixes): Update.
3964 * doc/internals.texi (CPU backend): Document tc_symbol_chars.
3965
3966 Fri Jun 12 13:36:54 1998 Tom Tromey <tromey@cygnus.com>
3967
3968 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
3969 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
3970
3971 1998-06-12 Vladimir N. Makarov <vmakarov@cygnus.com>
3972
3973 * config/tc-d10v.c (md_apply_fix3): Checking displacement
3974 constraint in instructions REP & REPI.
3975
3976 Thu Jun 11 08:56:46 1998 Nick Clifton <nickc@cygnus.com>
3977
3978 * config/tc-d30v.c (md_apply_fix3): Catch BFD_RELOC_8,
3979 BFD_RELOC_16, BFD_RELOC_64 and issue appropriate error messages.
3980
3981 (check_range): If the operand is shifted, then shift the number
3982 before checking its range.
3983
3984 * write.c (adjust_reloc_syms): Add more checks for NULL pointers.
3985
3986 * config/tc-v850.c (v850_comm): Set SEC_COMMON bit on special
3987 common sections.
3988
3989 Wed Jun 10 17:26:35 1998 Nick Clifton <nickc@cygnus.com>
3990
3991 * config/tc-v850.c (v850_comm): Create special sections as needed.
3992
3993 1998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
3994
3995 * config/tc-d10v.c (write_2_short): Addition of swapping
3996 instructions for sequential and reverse sequential order when
3997 given order is not possible.
3998
3999 Tue Jun 9 13:52:53 1998 Ian Lance Taylor <ian@cygnus.com>
4000
4001 * Makefile.am: Rebuild dependencies.
4002 (DEP_INCLUDES): Fix reference to intl build directory.
4003 * Makefile.in: Rebuild.
4004
4005 Tue Jun 9 12:20:05 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4006
4007 * doc/c-i386.texi: Update 16 bit documentation.
4008
4009 * config/tc-i386.h: Change Data16 to Size16, Data32 to Size32,
4010 IgnoreDataSize to IgnoreSize as they are used for address size as
4011 well as data size.
4012 * config/tc-i386.c: Likewise. Add code to reject addr32/data32 in
4013 32-bit mode, similarly addr16/data16 and variants.
4014
4015 Mon Jun 8 18:32:01 1998 Nick Clifton <nickc@cygnus.com>
4016
4017 * config/tc-d30v.c (md_assemble): Fix handling of reverse
4018 sequential word multiply instructions.
4019
4020 (do_assemble): Add extra command line argument, to allow mul32
4021 attribute to be preserved across parallel insns.
4022 (md_assemble): Insert NOPs between explicitly parallel insns which
4023 contain an 32 bit multiply and a 16 multiply.
4024
4025 Mon Jun 8 12:20:30 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4026
4027 * config/tc-i386.c: REPNE renamed to REPNE_PREFIX_OPCODE, and
4028 likewise for REPE.
4029
4030 * config/tc-i386.c (reloc): Add braces.
4031
4032 * config/tc-i386.c (struct _i386_insn): Rename bi to sib to be
4033 consistent with Intel naming.
4034 * config/tc-i386.h (base_index_byte): Rename to sib_byte. Don't
4035 use bitfields in sib_byte.
4036 (modrm_byte): Don't use bitfields here either.
4037
4038 * config/tc-i386.c (current_templates): Add const.
4039 (parse_register): Add const to return, param, and char *s.
4040 (i386_operand): Add const to reg_entry *r.
4041 * config/tc-i386.h (templates): Add const to start, end.
4042
4043 Inspired by code for 16 bit gas support from Martynas Kunigelis
4044 <martynas@nm3.ktu.lt>:
4045 * config/tc-i386.c (md_assemble): Add full support for 16 bit
4046 modrm, and Jump, JumpByte, JumpDword, JumpInterSegment insns.
4047 (uses_mem_addrmode): Remove.
4048 (md_estimate_size_before_relax): Add support here too.
4049 (md_relax_table): Rewrite interface to md_relax for 16 bit
4050 support.
4051 (BYTE, WORD, DWORD, UNKNOWN_SIZE): Remove.
4052 (opcode_suffix_to_type): Remove.
4053 (CODE16, SMALL, SMALL16, BIG, BIG16): Define.
4054 (SIZE_FROM_RELAX_STATE): Modify to suit above.
4055 (md_convert_frag): Likewise.
4056 (i386_operand): Add support for 16 bit base/index regs,
4057 immediates, and displacements. Remove some unnecessary casts, and
4058 localise end_of_operand_string, displacement_string_start,
4059 displacement_string_end variables. Add GCC_ASM_O_HACK.
4060 * config/tc-i386.h (NO_BASE_REGISTER_16): Define.
4061
4062 * config/tc-i386.c (prefix_hash): Remove.
4063 (md_begin): Rewrite without obstacks. Remove prefix hash table
4064 handling. Rewrite lexical table handling.
4065 (i386_print_statistics): Don't print prefix statistics.
4066 (md_assemble): Rewrite instruction parser so that line is not
4067 converted to lower case. Don't do a hash_find for prefixes,
4068 instead recognise them via opcode modifier.
4069 (expecting_operand, paren_not_balanced): Localise variables.
4070 * config/tc-i386.h (IsPrefix): Define.
4071 (prefix_entry): Remove.
4072
4073 * config/tc-i386.h (PREFIX_SEPERATOR): Don't define.
4074 * config/tc-i386.c (PREFIX_SEPARATOR): Define here instead, using
4075 '\\' in case where comment_chars contains '/'.
4076
4077 * config/tc-i386.c (MATCH): Ensure given operand and template
4078 match for JumpAbsolute. Makes e.g. `ljmp table(%ebx)' invalid;
4079 you must write `ljmp *table(%ebx)'.
4080
4081 From H.J. Lu <hjl@gnu.org>:
4082 * config/tc-i386.c (BFD_RELOC_16, BFD_RELOC_16_PCREL): Define
4083 as 0 ifndef BFD_ASSEMBLER.
4084 (md_assemble): Allow immediate operands without suffix or
4085 other reg operand to default in size to the current code size.
4086
4087 Mon Jun 8 09:45:00 1998 Catherine Moore <clm@cygnus.com>
4088
4089 * config/tc-v850.c (md_begin): Restore creation of
4090 .call_table_text and .call_table_data sections.
4091
4092 Sat Jun 6 00:02:41 1998 Nick Clifton <nickc@cygnus.com>
4093
4094 * config/tc-d30v.c (md_assemble): Set execution type to unknown
4095 after emitting a word of noops.
4096
4097 Fri Jun 5 23:27:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4098
4099 * config/tc-i386.c (mode_from_disp_size): Disp16 is mode 2.
4100 (i386_operand): Simplify checks for valid base/index combinations.
4101 Disallow `in 4(%dx),%al'.
4102
4103 * config/tc-i386.c (struct _i386_insn): Make regs, base_reg, and
4104 index_reg const.
4105 (add_prefix): Change parameter from char to int.
4106
4107 * config/tc-i386.h (Ugh): Define opcode modifier.
4108 * config/tc-i386.c (md_assemble): Print warnings for Ugh insns.
4109
4110 * config/tc-i386.c (md_assemble): Rewrite MATCH and
4111 CONSISTENT_REGISTER_MATCH macros to check register types more
4112 thoroughly. Check for illegal suffix/operand combinations
4113 when matching insns with operands. Handle new `s' suffix, and
4114 associated FloatMF opcode modifier for float insns with memory
4115 operands.
4116 * config/tc-i386.h (FloatMF): Define new opcode modifier.
4117 (No_sSuf, No_bSuf, No_wSuf, No_lSuf): Likewise.
4118 (SHORT_OPCODE_SUFFIX, LONG_OPCODE_SUFFIX): Define.
4119 * config/tc-i386.c: Rename WORD_PREFIX_OPCODE to
4120 DATA_PREFIX_OPCODE throughout.
4121
4122 * config/tc-i386.c (REGISTER_WARNINGS): Define.
4123 (md_assemble): Rewrite suffix/register operand checking code to be
4124 more thorough. Remove Abs8,16,32. Change occurrences of Mem to
4125 AnyMem, the better to grep.
4126 (pi): Remove Abs.
4127 (i386_operand): Don't set Mem bits in i.types[this_operand] when
4128 given a memory operand. Don't set Abs bits either.
4129 (type_names): Remove Mem*, Abs*.
4130 * config/tc-i386.h (Mem8, Mem16, Mem32, Abs8, Abs16, Abs32): Don't
4131 define opcode_modifiers as these cases are handled by Disp8,
4132 Disp16, Disp32 and suffix checks.
4133 (COMES_IN_BOTH_DIRECTIONS): Remove.
4134 (FloatR): Define. It's OK to share the bit with ReverseRegRegmem.
4135
4136 * config/tc-i386.c (md_assemble): Don't emit operand size prefix
4137 if IgnoreDataSize modifier given. Remove ShortformW modifier
4138 test. Add test for ShortForm in W base_opcode modification.
4139 Merge Seg2ShortForm and Seg3ShortForm code.
4140 * config/tc-i386.h (ShortFormW): Remove.
4141 (IgnoreDataSize): Define.
4142
4143 Fri Jun 5 10:50:53 1998 Nick Clifton <nickc@cygnus.com>
4144
4145 * config/tc-d30v.c (md_assemble): Store previous segment state
4146 with previous instruction.
4147
4148 Wed Jun 3 18:21:56 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4149
4150 * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
4151 (ebp, esp): Remove static variables.
4152 (MATCH): Remove test for InOutPortReg.
4153 (i386_operand): Properly handle InOutPortReg here instead.
4154 Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
4155 (md_assemble): Simplify and correct modrm and sib generation.
4156 (i386_operand): Add warning for scale without index.
4157 Rewrite checks for valid base/index combinations.
4158
4159 * config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
4160 macros and enclose in do while(0).
4161 (RESTORE_END_STRING): Likewise.
4162 (md_assemble): Add one to printed operand number so we start
4163 from 1 not 0. Add some more gettext invocations.
4164 (i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
4165 number here too.
4166
4167 * config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
4168 DATA_PREFIX, SEG_PREFIX): Define.
4169 * config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
4170 (check_prefix): Remove function.
4171 (add_prefix): New function. Add prefix to i.prefix as well as
4172 doing checks.
4173 (md_assemble): Changes for add_prefix. Remove hack for wait
4174 prefix, instead always output prefixes in fixed order. Test
4175 for jcxz/loop when selecting between word & dword operations,
4176 and add address size prefix rather than operand size prefix.
4177 Remove operand -> address size hack when emitting jcxz/loop.
4178 (i386_operand): Remove O_Absent check as it's done in expr.
4179
4180 Wed Jun 3 15:09:10 1998 Ian Lance Taylor <ian@cygnus.com>
4181
4182 * configure.in: Recognize m5200 as a cpu_type of m68k.
4183 * aclocal.m4: Rebuild with current libtool.
4184 * configure: Rebuild.
4185
4186 Wed Jun 3 14:11:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4187
4188 * config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
4189 to relaxable_symbol to prevent references to external symbol from
4190 being relaxed.
4191
4192 Wed Jun 3 14:10:36 1998 Ian Lance Taylor <ian@cygnus.com>
4193
4194 * config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
4195 symbols are relaxable.
4196
4197 Wed Jun 3 09:16:00 1998 Catherine Moore <clm@cygnus.com>
4198
4199 * config/tc-v850.c (md_begin): Don't create special
4200 sections by default.
4201
4202 Tue Jun 2 14:52:56 1998 Jeffrey A Law (law@cygnus.com)
4203
4204 * config/tc-mips.c (macro): For div and udiv, close the
4205 reorder block as soon as possible.
4206
4207 Tue Jun 2 15:36:13 1998 Ian Lance Taylor <ian@cygnus.com>
4208
4209 From Matt Semersky <matts@scd.hp.com>:
4210 * macro.c (macro_mri_mode): New function.
4211 * macro.h (macro_mri_mode): Declare.
4212 * read.c (s_mri): Call macro_mri_mode when switching in and out of
4213 MRI mode.
4214
4215 Tue Jun 2 13:32:22 1998 Klaus Kaempf <kkaempf@progis.de>
4216
4217 * config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
4218 OBJ_EVAX case.
4219
4220 * config/tc-alpha.c (s_alpha_comm): Defer restoring character
4221 until after xstrdup in OBJ_EVAX case.
4222
4223 Tue Jun 2 13:11:13 1998 Pat Rankin <rankin@eql.caltech.edu>
4224
4225 * config/tc-vax.c (md_create_short_jump): Fix off by two bug in
4226 offset calculation. Also, use VAX_BRW from vax-inst.h instead
4227 of hardcoded magic number.
4228 (md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
4229
4230 Tue Jun 2 09:25:34 1998 Doug Evans <devans@canuck.cygnus.com>
4231
4232 * read.c (do_s_func): New function.
4233 (s_func): Call it.
4234 * read.h (do_s_func): Add prototype.
4235
4236 Mon Jun 1 12:47:30 1998 Doug Evans <devans@canuck.cygnus.com>
4237
4238 * config/tc-m32r.c (m32r_do_align): Only fill code sections with
4239 nops if fill pattern not specified.
4240
4241 Mon Jun 1 14:08:35 1998 Ian Lance Taylor <ian@cygnus.com>
4242
4243 From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
4244 * config/te-go32.h (TE_GO32): Define.
4245 * config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
4246
4247 Sun May 31 15:43:06 1998 Doug Evans <devans@canuck.cygnus.com>
4248
4249 Implement .func/.endfunc pseudo-ops.
4250 * read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
4251 (s_func): Declare.
4252 * read.c (potable): Add .func,.endfunc.
4253 (s_func): New function.
4254 * stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
4255 functions.
4256 (in_doc_func_p,current_function_label): New static globals.
4257 (stabs_generate_asm_lineno): Emit function relative stabs if in .func.
4258
4259 Fri May 29 18:13:12 1998 Ian Lance Taylor <ian@cygnus.com>
4260
4261 * config/tc-a29k.h (WORKING_DOT_WORD): Define.
4262 * config/tc-alpha.h (WORKING_DOT_WORD): Define.
4263 * config/tc-arm.h (WORKING_DOT_WORD): Define.
4264 * config/tc-h8300.h (WORKING_DOT_WORD): Define.
4265 * config/tc-h8500.h (WORKING_DOT_WORD): Define.
4266 * config/tc-hppa.h (WORKING_DOT_WORD): Define.
4267 * config/tc-i860.h (WORKING_DOT_WORD): Define.
4268 * config/tc-i960.h (WORKING_DOT_WORD): Define.
4269 * config/tc-tic30.h (WORKING_DOT_WORD): Define.
4270 * config/tc-w65.h (WORKING_DOT_WORD): Define.
4271 * config/tc-z8k.h (WORKING_DOT_WORD): Define.
4272 * config/tc-a29k.c: Don't define md_short_jump_size,
4273 md_long_jump_size, md_create_short_jump or md_create_long_jump.
4274 * config/tc-alpha.c: Likewise.
4275 * config/tc-alpha.h: Likewise.
4276 * config/tc-arm.c: Likewise.
4277 * config/tc-h8300.c: Likewise.
4278 * config/tc-h8500.c: Likewise.
4279 * config/tc-hppa.c: Likewise.
4280 * config/tc-i860.c: Likewise.
4281 * config/tc-i960.c: Likewise.
4282 * config/tc-ppc.c: Likewise.
4283 * config/tc-sh.c: Likewise.
4284 * config/tc-sparc.h: Likewise.
4285 * config/tc-tic30.c: Likewise.
4286 * config/tc-w65.c: Likewise.
4287 * config/tc-z8k.c: Likewise.
4288
4289 Fri May 29 16:03:26 1998 Pat Rankin <rankin@eql.caltech.edu>
4290
4291 * config/tc-vax.c (_): Delete this macro used for placeholder
4292 values in vax_operand_width_size; it conflicts with the _() macro
4293 used for internationalization.
4294
4295 Fri May 29 13:46:07 1998 Ian Lance Taylor <ian@cygnus.com>
4296
4297 * symbols.c (symbol_find_base): Fix case insensitive symbol name
4298 code. From Chris Moller <moller@bops.com>.
4299
4300 Based on patch from Klaus Kaempf <kkaempf@progis.de>:
4301 * struc-symbol.h (struct broken_word): Add seg and subseg fields.
4302 * read.c (emit_expr): Initialize seg and subseg fields of a new
4303 broken word.
4304 * write.c (write_object_file): Switch to the appropriate segment
4305 and subsegment when processing a broken word.
4306
4307 * config/tc-m68k.c (mri_assemble): New static function.
4308 (build_mri_control_operand): Call mri_assemble rather than
4309 md_assemble.
4310 (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
4311 (s_mri_endf, s_mri_endw): Likewise.
4312
4313 Wed May 27 11:16:25 1998 Ian Lance Taylor <ian@cygnus.com>
4314
4315 * read.c (s_org): Call md_flush_pending_output if it is defined.
4316
4317 * config/tc-sparc.c (md_show_usage): Add \n\ to new string.
4318
4319 Tue May 26 19:27:52 1998 Stan Cox <scox@equinox.cygnus.com>
4320
4321 * config/tc-sparc.c (OPTION_LITTLE_ENDIAN_DATA): New.
4322 (md_parse_option): Add for same.
4323 (sparc_md_end): Set bfd_mach_sparc_sparclite_le.
4324 (md_apply_fix3, tc_gen_reloc): Allow BFD_RELOC_SPARC_32LE.
4325 (cons_fix_new_sparc): Added to create BFD_RELOC_SPARC_32LE.
4326
4327 * config/tc-sparc.h (cons_fix_new_sparc): Added.
4328
4329 Thu May 21 15:02:41 1998 Nick Clifton <nickc@cygnus.com>
4330
4331 * config/tc-arm.c (find_real_start): Relax definition of local
4332 labels.
4333
4334 Tue May 19 16:59:44 1998 Nick Clifton <nickc@cygnus.com>
4335
4336 * config/tc-d30v.c (d30v_align): Apply address adjustment to all
4337 symbols at the given address, not just the last one specified.
4338
4339 Tue May 19 08:25:19 1998 Catherine Moore <clm@cygnus.com>
4340
4341 * config/tc-sparc.c (sparc_handle_align): Use number_to_chars_bigendian
4342 or number_to_chars_littleendian to write data.
4343
4344 Mon May 18 17:09:30 1998 Nick Clifton <nickc@cygnus.com>
4345
4346 * config/tc-v850.c (md_assemble): Remove artificially created
4347 register name symbols.
4348
4349 Mon May 18 13:47:06 1998 Doug Evans <devans@canuck.cygnus.com>
4350
4351 * write.c (fixup_segment): Change "segment" to "section" in
4352 error message.
4353
4354 Mon May 18 16:55:40 1998 Michael Meissner <meissner@cygnus.com>
4355
4356 * write.c (fixup_segment): Change sym1-sym2 message again.
4357
4358 Mon May 18 09:31:43 1998 Michael Meissner <meissner@cygnus.com>
4359
4360 * write.c (fixup_segment): Improve error message for sym1-sym2
4361 errors when sym1 is in a different segment from sym2.
4362
4363 Wed May 13 10:16:37 1998 Doug Evans <devans@canuck.cygnus.com>
4364
4365 * config/tc-m32r.c (warn_unmatched_high): New static local.
4366 (OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
4367 (OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
4368 (md_longopts): Recognize --{no-,}warn-unmatched-high.
4369 (md_parse_option): Likewise.
4370 (md_show_usage): Likewise.
4371 (m32r_frob_file): Likewise.
4372
4373 * read.c (generate_file_debug,generate_lineno_debug): New functions.
4374 (read_a_source_file): Call them.
4375 * read.h (stabs_generate_asm_file): Declare.
4376 * stabs.c (stabs_generate_asm_file): New function.
4377 (generate_asm_file): New function.
4378 (stabs_generate_asm_lineno): Move file name handling into
4379 generate_asm_file.
4380
4381 Tue May 12 12:03:44 1998 Richard Henderson <rth@cygnus.com>
4382
4383 * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
4384 (d30v_current_align, d30v_current_align_seg): New variables.
4385 (d30v_last_label): New variable.
4386 (d30v_align, s_d30v_align, s_d30v_text): New functions.
4387 (s_d30v_data, s_d30v_section): Likewise.
4388 (md_pseudo_table): Call them.
4389 (md_begin): Initialize d30v_current_align_seg.
4390 (md_assemble): Call d30v_align when needed by known current alignment.
4391 (d30v_frob_label, d30v_cons_align): New functions.
4392 * config/tc-d30v.h (md_do_align): Remove.
4393 (tc_frob_label): Call d30v_frob_label.
4394 (md_cons_align): New.
4395
4396 * config/tc-d30v.c (find_format): Convert complex expressions to
4397 expression symbols before processing. Clean up code formatting.
4398
4399 Sun May 10 22:35:02 1998 Jeffrey A Law (law@cygnus.com)
4400
4401 * po/Make-in (install-info): New target.
4402
4403 Thu May 7 15:49:07 1998 Jeffrey A Law (law@cygnus.com)
4404
4405 * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
4406 instructions.
4407 * config/tc-mn10300.c (md_assemble): Likewise.
4408
4409 Thu May 7 11:47:22 1998 Doug Evans <devans@canuck.cygnus.com>
4410
4411 * Makefile.am: Update with `make dep-am'.
4412 (HFILES): Add cgen.h.
4413 (cgen.o): Depend on cgen.h.
4414 * Makefile.in: Regenerate.
4415
4416 * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where.
4417
4418 Thu May 7 13:20:56 1998 Anders Blomdell <anders.blomdell@control.lth.se>
4419
4420 * gasp.c (grab_label): Permit a label to be a preprocessor
4421 variable by permitting a label to start with a backslash.
4422
4423 Thu May 7 12:50:33 1998 Frank Ch. Eigler <fche@cygnus.com>
4424
4425 * config/tc-mips.c (validate_mips_insn): Removed hack
4426 for previously inaccessible bitfields in some INSN_TRAP
4427 instructions.
4428
4429 Thu May 7 11:13:00 1998 Frank Ch. Eigler <fche@cygnus.com>
4430
4431 * config/tc-d30v.c (do_assemble): Abort with error message
4432 if opcode operands do not match.
4433
4434 Thu May 7 09:36:06 1998 Frank Ch. Eigler <fche@cygnus.com>
4435
4436 * config/tc-mips.c (macro_build, validate_mips_insn): Implement
4437 'q' operand format for 20-bit "break"/"sdbbp" instructions.
4438 (mips_ip): Truncate overflowed "break" 'c' operand. Implement
4439 similar new 'q' operand.
4440
4441 Thu May 7 07:47:14 1998 Michael Meissner <meissner@cygnus.com>
4442
4443 * cgen.c (cgen_asm_finish_insn): Fix typo.
4444
4445 Thu May 7 02:19:14 1998 Doug Evans <devans@charmed.cygnus.com>
4446
4447 * cgen.h: New file.
4448 * cgen.c: Include it.
4449 (MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
4450 (cgen_asm_finish_insn): Result is now void. New arg `result'.
4451 All callers updated.
4452 * config/tc-m32r.c: Include cgen.h.
4453 (m23r_insn): New members num_fixups,fixups.
4454
4455 Wed May 6 16:29:19 1998 Jeffrey A Law (law@cygnus.com)
4456
4457 * config/tc-hppa.c (md_apply_fix): Slightly rework some code
4458 to avoid compiler warning.
4459
4460 Wed May 6 15:26:34 1998 Klaus Kaempf <kkaempf@progis.de>
4461
4462 * makefile.vms: Run dec c with /nodebug. Pass CC value when
4463 calling make.
4464
4465 * makefile.vms (OBJS): Add ehopt.obj
4466
4467 Wed May 6 15:11:12 1998 Klaus Kaempf <kkaempf@progis.de>
4468
4469 * doc/c-vax.texi: Correct and extend vax/vms documentation.
4470
4471 Wed May 6 11:51:51 1998 Richard Henderson <rth@cygnus.com>
4472
4473 * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
4474 a short format insn.
4475 (md_assemble): Set it for explicitly packed insns.
4476
4477 Tue May 5 13:23:13 1998 Nick Clifton <nickc@cygnus.com>
4478
4479 * config/obj-coff.c (c_symbol_merge): Do not take address of
4480 native fields when performing the memcpy.
4481
4482 Tue May 5 13:10:41 1998 Gavin Koch <gavin@cygnus.com>
4483
4484 * config/tc-mips.c (macro,macro2): Implement
4485 M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
4486
4487 Mon May 4 17:49:14 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4488
4489 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
4490 relocations against globally visible symbols.
4491 * config/tc-m68k.c (relaxable_symbol): New macro.
4492 (m68k_ip, md_estimate_size_before_relax): Use it.
4493 (tc_m68k_fix_adjustable): Also handle weak symbols.
4494
4495 Mon May 4 16:12:23 1998 Ian Lance Taylor <ian@cygnus.com>
4496
4497 * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
4498 references to externally visible symbols.
4499 * config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
4500 values in twice for a PC relative reloc if the symbol is
4501 externally defined.
4502
4503 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
4504 don't adjust a PC relative reloc against an externally visible
4505 symbol.
4506 * config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
4507 for a PC relative fixup against an externally visible defined
4508 symbol, arrange to store object file and addend values as though
4509 the symbol were not defined.
4510 (tc_gen_reloc): Likewise.
4511
4512 Thu Apr 30 13:09:39 1998 Fred Fish <fnf@ninemoons.com>
4513
4514 * read.c (sizeof_leb128): Referenced externally by write.c so
4515 don't inline.
4516
4517 Wed Apr 29 15:45:57 1998 Michael Meissner <meissner@cygnus.com>
4518
4519 * config/tc-m32r.c ({,expand_}debug_sym): New functions to record
4520 and expand a 'debug' symbol associated with the next instruction
4521 that does not cause a short instruction to be filled with a NOP.
4522 (md_pseudo_table): Add support for .debugsym.
4523 (assemble_parallel_insn): Add calls to expand_debug_sym as
4524 appropriate.
4525 (md_assemble): Ditto.
4526
4527 Tue Apr 28 19:16:26 1998 Tom Tromey <tromey@cygnus.com>
4528
4529 * as.c (main): Conditionally call setlocale.
4530 * gasp.c (main): Likewise.
4531 * asintl.h: Include <locale.h> if HAVE_LOCALE_H.
4532 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
4533
4534 Tue Apr 28 18:33:23 1998 Frank Ch. Eigler <fche@cygnus.com>
4535
4536 * config/tc-d30v.c (md_show_usage): Correct gettext typo.
4537
4538 Tue Apr 28 12:16:30 1998 Ian Lance Taylor <ian@cygnus.com>
4539
4540 * config/tc-hppa.c: Change all calls to bzero to use memset.
4541 (pa_ip): Add cast to avoid warning.
4542 (tc_gen_reloc, md_apply_fix): Likewise.
4543 (pa_find_space_by_number): Likewise.
4544 (hppa_force_relocation): Likewise.
4545 (pa_block): Change i to unsigned int.
4546 * config/obj-som.h (obj_som_copyright): Declare.
4547
4548 Tue Apr 28 11:35:56 1998 Frank Ch. Eigler <fche@cygnus.com>
4549
4550 * ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
4551 for line numbers for assembly source.
4552
4553 Mon Apr 27 15:58:46 1998 Ian Lance Taylor <ian@cygnus.com>
4554
4555 * configure.in: Change version number to 2.9.4
4556 * configure: Rebuild.
4557
4558 Mon Apr 27 12:07:33 1998 Doug Evans <devans@seba.cygnus.com>
4559
4560 * cgen.c (cgen_asm_finish_insn): New arg relax_p. All callers updated.
4561
4562 Mon Apr 27 15:16:12 1998 Ian Lance Taylor <ian@cygnus.com>
4563
4564 * ecoff.h: Change symbolS in function declaration to struct
4565 symbol.
4566
4567 Sun Apr 26 13:44:22 1998 Ian Lance Taylor <ian@cygnus.com>
4568
4569 * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
4570 (md_convert_frag): Fix i18n typo.
4571
4572 Sat Apr 25 20:12:02 1998 Richard Henderson <rth@cygnus.com>
4573
4574 * ecoff.c (ecoff_get_cur_proc_sym): New function.
4575 * ecoff.h: Protoype it.
4576 * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
4577 [EVAX] (s_alpha_prologue): Delete.
4578 (md_pseudo_table): Update.
4579
4580 Sat Apr 25 14:00:52 1998 Ian Lance Taylor <ian@cygnus.com>
4581
4582 * config/tc-i960.c (md_assemble): Change bp_error_msg from static
4583 array to local pointer.
4584 (get_args, parse_expr): Add casts to avoid warnings.
4585
4586 Fri Apr 24 12:47:42 1998 Philippe De Muyter <phdm@macqel.be>
4587
4588 * read.c (s_set): Cast xmalloc return value to fragS *.
4589 * config/tc-m68k.c (m68k_ip): Function made static to match
4590 previous forward declaration.
4591 (insert_reg, init_regtable, md_convert_frag_1): Likewise.
4592
4593 Fri Apr 24 09:26:46 1998 Nick Clifton <nickc@cygnus.com>
4594
4595 * config/tc-v850.c: Add internationalisation macros to error
4596 strings.
4597
4598 * config/tc-m32r.c (can_make_parallel): Add internationalisation
4599 macros to error strings.
4600
4601 Thu Apr 23 19:23:23 1998 Ian Lance Taylor <ian@cygnus.com>
4602
4603 * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
4604 reloc is in the TOC csect.
4605 (md_apply_fix3): Correct gettext typo.
4606
4607 Thu Apr 23 14:58:31 1998 Nick Clifton <nickc@cygnus.com>
4608
4609 * config/tc-arm.c (find_real_start): Ignore symbols starting with
4610 .L - they are local labels and the branches are not really
4611 function calls but rather far jumps.
4612
4613 Wed Apr 22 15:57:21 1998 Tom Tromey <tromey@cygnus.com>
4614
4615 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
4616
4617 Wed Apr 22 14:52:36 1998 Ian Lance Taylor <ian@cygnus.com>
4618
4619 * config/tc-i386.c (md_assemble): Print operand number rather than
4620 using ordinal_names.
4621 (i386_operand): Likewise.
4622
4623 Tue Apr 21 22:34:25 1998 Tom Tromey <tromey@scribbles.cygnus.com>
4624
4625 * Makefile.am (INTLLIBS): Define to work around apparent automake
4626 bug.
4627 All Makefiles: Regenerated.
4628
4629 * Many files: Added gettext invocations around user-visible
4630 strings.
4631 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
4632 HAVE_LC_MESSAGES): Define.
4633 * dep-in.sed: Added asintl.h.
4634 * po/Make-in: New file.
4635 * gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
4636 Include "asintl.h".
4637 * read.c (Z_): Renamed from `_'.
4638 * Makefile.am (SUBDIRS): Added po.
4639 (POTFILES): new macro.
4640 (po/POTFILES.in): New target.
4641 ($(OBJS)): Added asintl.h.
4642 (HFILES): Likewise.
4643 (INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
4644 (as_new_LDADD): Added $(INTLLIBS).
4645 (as_new_DEPENDENCIES): Added $(INTLDEPS).
4646 (gasp_new_LDADD): Added $(INTLLIBS).
4647 (gasp_new_DEPENDENCIES): New macro.
4648 * configure, aclocal.m4: Rebuilt.
4649 * configure.in: Call CY_GNU_GETTEXT. Generate po/Makefile.in and
4650 po/Makefile.
4651 (ALL_LINGUAS): Define.
4652 * macro.c: Include "asintl.h".
4653 * as.c (main): Call setlocale, bindtextdomain, and textdomain.
4654 * as.h: Include "asintl.h".
4655 * config/tc-i386.c (ordinal_names): Removed.
4656 (md_assemble): Changed error text to avoid ordinal_names.
4657 (i386_operand): Likewise.
4658 (reloc): Added as_bad to avoid i18n problems.
4659 (tc_gen_reloc): Likewise.
4660 * config/tc-arm.c (bad_args): Now a #define.
4661 (bad_pc): Likewise.
4662 * config/obj-vms.c (VMS_stab_parse): Changed type of
4663 `long_const_msg'.
4664 (global_symbol_directory): Unified strings to avoid i18n
4665 problems.
4666 * config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
4667 avoid i18n problems.
4668 * config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
4669 * config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
4670 i18n problems.
4671 * config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
4672 problems.
4673 * config/tc-v850.c (md_assemble): Changed C++ comment into C
4674 comment.
4675 * config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
4676 problems.
4677 * as.c (print_version_id): Added an fprintf to avoid i18n
4678 problems.
4679 * cond.c (cond_finish_check): Added as_bad call to avoid i18n
4680 problems.
4681 * expr.c (expr): Added as_warn call to avoid i18n problems.
4682 * messages.c (as_assert): Changed code to avoid i18n problems.
4683 (as_abort): Likewise.
4684 * read.c (pseudo_set): Added as_bad call to avoid i18n problems.
4685 (s_space): Likewise.
4686 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
4687
4688 Tue Apr 21 17:01:22 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4689
4690 * config/tc-i386.c (check_prefix): New static function, split out
4691 from md_assemble.
4692 (struct _i386_insn): Add wait_prefix field.
4693 (md_assemble): Remove wait_prefix local variable. Use
4694 check_prefix when adding a prefix.
4695
4696 * config/tc-i386.c (current_templates): New static variable.
4697 (md_assemble): Remove current_templates local variable.
4698 (md_assemble, i386_operand): Improve error and warning messages in
4699 many places. Add RESTORE_END_STRING in many places before error
4700 return. Clarify some comments.
4701
4702 * config/tc-i386.c (struct _i386_insn): Change seg field to a two
4703 element array.
4704 (md_assemble): Parse string instruction operands, looking for
4705 segment override prefixes. Check for invalid segment prefixes on
4706 string instruction.
4707 (i386_operand): i.seg[] and max mem_operand changes for string
4708 insns.
4709 * config/tc-i386.h (EsSeg): Define.
4710
4711 * config/tc-i386.h (regKludge): Define.
4712 (iclrKludge, imulKludge): Don't define.
4713 * config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
4714 code. Move ReverseRegRegmem fudges into Modrm case. Reorder
4715 opcode_modifier checks to look for more common cases first. Add
4716 default_seg for IsString case.
4717
4718 Tue Apr 21 16:18:12 1998 Ian Lance Taylor <ian@cygnus.com>
4719
4720 * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
4721 AC_DECL_YYTEXT.
4722 * configure: Rebuild with new automake and libtool.
4723 * aclocal.m4, Makefile.in: Likewise.
4724
4725 * doc/Makefile.am (as.dvi): New target.
4726 * doc/Makefile.in: Rebuild.
4727
4728 Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
4729
4730 * configure.in: Added sparc86x support.
4731
4732 * configure: Rebuild.
4733
4734 * config/tc-sparc.c (lookup_arch): Added arch_type to struct
4735 sparc_arch.
4736 (md_parse_option): Warn if -EL is not supported for this architecture.
4737
4738 * config/tc-sparc.h (SPARC_BIENDIAN) Always define.
4739
4740 Sat Apr 18 01:19:01 1998 Jeffrey A Law (law@cygnus.com)
4741
4742 * config/tc-mips.c (mips_ip): Note when we use get match on
4743 the full instruction name.
4744
4745 Wed Apr 15 15:17:27 1998 Richard Henderson <rth@cygnus.com>
4746
4747 * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
4748 back into the expression to handle add/sub simplification correctly.
4749
4750 Wed Apr 15 07:06:04 1998 Catherine Moore <clm@cygnus.com>
4751
4752 * config/tc-mips.c (hilo_interlocks): Remove 4300.
4753
4754 Mon Apr 13 16:51:04 1998 Nick Clifton <nickc@cygnus.com>
4755
4756 * config/tc-arm.c (do_msr): Support undocumented 'msr cpsr_flg,
4757 #<n>' instruction.
4758
4759 Thu Apr 9 10:29:42 1998 Doug Evans <devans@canuck.cygnus.com>
4760
4761 * symbols.c (max_indent_level): New global.
4762 (print_symbol_value_1): Use it.
4763 * expr.h (expr_build_dot): Declare.
4764 * expr.c (expr_build_dot): New function.
4765
4766 Wed Apr 8 16:16:11 1998 Doug Evans <devans@canuck.cygnus.com>
4767
4768 * symbols.c (print_binary): New function.
4769 (print_expr_1): Call it.
4770
4771 Mon Apr 6 12:06:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4772
4773 * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
4774 operand in the opcode.
4775
4776 Fri Apr 3 11:58:19 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4777
4778 * config/tc-i386.h: Reorder operand flags and opcode modifier
4779 flags for clarity. Remove unused definitions: Unknown,
4780 ImmUnknown, DispUnknown, NoModrm.
4781 * config/tc-i386.c (type_names): Add missing Debug type.
4782 (md_assemble): Better duplicate prefix checking. Quicker string
4783 instruction check via new opcode_modifier flag.
4784
4785 Fri Apr 3 11:44:34 1998 Ian Lance Taylor <ian@cygnus.com>
4786
4787 * doc/as.texinfo (Invoking): Clarify -Wa example.
4788
4789 Fri Apr 3 09:12:23 1998 Gavin Koch <gavin@cetus.cygnus.com>
4790
4791 * config/tc-mips.c (mips_pseudo_table): Add weakext entry.
4792 (s_mips_weakext): Define.
4793 * ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
4794 * config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if
4795 defined(TC_MIPS).
4796
4797 Thu Apr 2 22:42:02 1998 Jeffrey A Law (law@cygnus.com)
4798
4799 * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
4800 is an error if the value can not be computed at assembly time.
4801 * config/tc-mn10300.c (tc_gen-reloc): Likewise.
4802
4803 Thu Apr 2 16:36:47 1998 Ian Lance Taylor <ian@cygnus.com>
4804
4805 * gasp.c (main): Set next field of new include_path structure to
4806 NULL. From Avery Pennarun <averyp@gdc.ca>.
4807
4808 * read.c (s_mri_sect): Call as_bad rather than abort for an
4809 unsupported MRI target.
4810
4811 Wed Apr 1 11:08:27 1998 Nick Clifton <nickc@cygnus.com>
4812
4813 * config/tc-arm.c (arm_validate_fix): New function. Determine if
4814 the destination of a branch instruction should be altered.
4815 (find_real_start): New function: Locate the real, Thumb coded
4816 start of a Thumb function.
4817 (do_t_branch23): Alter the destination of branches to Thumb
4818 functions.
4819
4820 * config/tc-arm.h: Define TC_VALIDATE_FIX.
4821
4822 Tue Mar 31 13:27:33 1998 Dean M. Deaver <deaver@amt.tay1.dec.com>
4823
4824 * config/tc-arm.c (decode_shift): Handle addressing mode 2 w/rrx
4825 also.
4826
4827 Wed Apr 1 13:13:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4828
4829 * doc/as.texinfo: Use @itemx for a secondary item in a table.
4830 * doc/c-hppa.texi: Likewise.
4831
4832 Tue Mar 31 17:52:40 1998 Ian Lance Taylor <ian@cygnus.com>
4833
4834 * Makefile.am: Rebuild dependencies.
4835 * Makefile.in: Rebuild.
4836
4837 * Makefile.am (DEP_INCLUDES): New variable.
4838 (.dep1): Change to work when srcdir is not an absolute path.
4839 (.tcdep, .objdep, .dep2, dep.sed): Likewise.
4840 * Makefile.in: Rebuild.
4841
4842 Mon Mar 30 12:46:48 1998 Ian Lance Taylor <ian@cygnus.com>
4843
4844 * config/tc-i386.h, config/tc-i386.c: Revert March 24
4845 LinearAddress patch.
4846
4847 * configure.in: Set version to 2.9.1.
4848 * configure: Rebuild.
4849
4850 * Branched binutils 2.9.
4851
4852 Mon Mar 30 11:22:08 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4853
4854 * config/tc-i386.h (FWait): Define.
4855 * config/tc-i386.c (md_assemble): Emit fwait prefix before any
4856 other prefixes. Check FWait flag in opcode table to see which
4857 instructions require an fwait prefix.
4858
4859 Mon Mar 30 10:12:00 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4860
4861 * stabs.c (get_stab_string_offset): Always create a stab string
4862 section.
4863
4864 Sat Mar 28 22:28:02 1998 Ian Lance Taylor <ian@cygnus.com>
4865
4866 Fix some gcc -Wall warnings:
4867 * atof-generic.c (atof_generic): Add casts to avoid warnings.
4868 * ehopt.c (eh_frame_code_alignment): Likewise.
4869 * expr.c (integer_constant, operand): Likewise.
4870 * frags.c (frag_align): Likewise.
4871 * gasp.c (level_0, change_base, doinstr): Likewise.
4872 * hash.c (hash_ask): Likewise.
4873 * listing.c (listing_page, calc_hex, print_lines): Likewise.
4874 (debugging_pseudo): Likewise.
4875 * macro.c (define_macro, check_macro): Likewise.
4876 * read.c (read_a_source_file, s_align, s_float_space): Likewise.
4877 (ignore_rest_of_line, float_cons): Likewise.
4878 * symbols.c (decode_local_label_name): Likewise.
4879 * write.c (record_alignment, cvs_frag_to_fill): Likewise.
4880 (fixup_segment, number_to_chars_bigendian): Likewise.
4881 (number_to_chars_littleendian): Likewise.
4882 * config/atof-ieee.c (gen_to_words): Likewise.
4883 * config/tc-sparc.c (md_begin, md_assemble): Likewise.
4884 (sparc_ip, parse_keyword_arg, s_common): Likewise.
4885 * read.c (output_big_sleb128): Initialize locals to avoid
4886 warnings.
4887 (output_big_uleb128, equals): Likewise.
4888 * atof-generic.c (atof_generic): Change number_of_digits_* locals
4889 to unsigned int. Change zeros to unsigned int.
4890 * cond.c (s_if): Add return to default case.
4891 * frags.c (frag_now_fix): Change return type to addressT.
4892 * frags.h (frag_now_fix): Update declaration.
4893 * listing.c (file_info_struct): Change linenum to unsigned int.
4894 (struct list_info_struct): Change hll_line to unsigned int.
4895 (print_source): Update format string.
4896 * read.c (emit_expr): Change scan to unsigned int, and don't
4897 bother to initialize it.
4898 * symbols.c (dollar_label_count): Change to unsigned long.
4899 * write.c (adjust_reloc_syms): Remove unused label reduce_fixup.
4900 * config/tc-sparc.c (sparc_memory_model): Only define if OBJ_ELF.
4901 * config/tc-sparc.c (tc_gen_reloc): Add return to default case.
4902
4903 Fri Mar 27 12:46:47 1998 Ian Lance Taylor <ian@cygnus.com>
4904
4905 * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
4906 mcf5200 just as we do for m68000.
4907 (m68k_init_after_args): Likewise.
4908 (md_estimate_size_before_relax): Likewise.
4909
4910 Fri Mar 27 10:30:01 1998 Catherine Moore <clm@cygnus.com>
4911
4912 * config/tc-v850.c (md_assemble): Store relocation addend in
4913 fixup instead of instruction.
4914
4915 Thu Mar 26 23:07:18 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4916
4917 * config/tc-i386.c (md_assemble): Swap template arguments to
4918 CONSISTENT_REGISTER_MATCH macro in reverse direction test.
4919 This macro is currently symmetric, so passing them the wrong
4920 way didn't cause any problem, but may if the macro is changed
4921 in the future.
4922 After copying template to i.tm, use i.tm. rather than t-> to
4923 access fields, and make t a const*
4924 Move i.tm.operand_types[] swap to immediately after the copy.
4925
4926 Wed Mar 25 13:44:18 1998 Doug Evans <devans@canuck.cygnus.com>
4927
4928 * expr.h (expr_build_uconstant): Add prototype.
4929 (expr_build_unary,expr_build_binary): Add prototypes.
4930 * expr.c (expr_build_uconstant): New function.
4931 (expr_build_unary,expr_build_binary): New functions.
4932
4933 Wed Mar 25 13:10:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
4934
4935 * gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
4936 * macro.c (macro_expand_body): Increase buffer size.
4937 * messages.c (as_warn): Likewise.
4938 (as_warn_where, as_bad, as_bad_where): Likewise.
4939
4940 Wed Mar 25 12:59:07 1998 Ian Lance Taylor <ian@cygnus.com>
4941
4942 Based on patch from H.J. Lu <hjl@gnu.org>:
4943 * Makefile.am (DISTSTUFF): New variable.
4944 (diststuff): New target.
4945 * Makefile.in: Rebuild.
4946
4947 Tue Mar 24 16:51:29 1998 Nick Clifton <nickc@cygnus.com>
4948
4949 * config/tc-m32r.h (md_cleanup, md_elf_section_change_hook): Call
4950 m32r_elf_section_change_hook.
4951
4952 * config/tc-m32r.c (m32r_elf_section_change_hook): New function to
4953 emit a nop if a section ends with a 16 bit instruction.
4954
4955 Tue Mar 24 19:48:09 1998 Ian Lance Taylor <ian@cygnus.com>
4956
4957 * config/obj-coff.c (obj_coff_bss): Compile unconditionally. Call
4958 s_lcomm rather than obj_coff_lcomm.
4959 (obj_pseudo_table): Compile .bss pseudo-op unconditionally.
4960
4961 Tue Mar 24 18:30:58 1998 H.J. Lu <hjl@gnu.org>
4962
4963 * config/tc-i386.h (LinearAddress): Define.
4964 * config/tc-i386.c (md_assemble): If LinearAddress is set for the
4965 instruction, don't use a default segment.
4966
4967 Mon Mar 23 18:53:40 1998 Joel Sherrill <joel@OARcorp.com>
4968
4969 * configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
4970 * configure: Rebuild.
4971
4972 Fri Mar 20 19:15:44 1998 Ian Lance Taylor <ian@cygnus.com>
4973
4974 * aclocal.m4, configure: Rebuild with libtool 1.2.
4975
4976 Thu Mar 19 16:03:12 1998 Nick Clifton <nickc@cygnus.com>
4977
4978 * config/tc-arm.c (md_apply_fix3): fix code to test the range of
4979 PC relative branches. Patch courtesy of Jonathan Walton.
4980
4981
4982 Wed Mar 18 09:29:51 1998 Nick Clifton <nickc@cygnus.com>
4983
4984 * configure.in (emulations): Add thumb-pe target.
4985
4986 * configure (emulations): Add thumb-pe target.
4987
4988 1998-03-17 Ken Raeburn <raeburn@cygnus.com>
4989
4990 * itbl-lex.l (yywrap): Don't define if already defined as a
4991 macro.
4992
4993 Fri Mar 13 16:31:38 1998 Tom Tromey <tromey@cygnus.com>
4994
4995 * depend.c (quote_string_for_make): New function.
4996 (wrap_output): Use it.
4997
4998 Thu Mar 12 18:28:22 1998 Nick Clifton <nickc@cygnus.com>
4999
5000 * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
5001 structure if type is SHT_NOBITS. [Bug fix courtesy of rth]
5002
5003 Sat Feb 28 17:28:55 1998 Richard Henderson <rth@cygnus.com>
5004
5005 * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
5006 Recognize -GN and -relax.
5007 (md_begin): Initialize gp size from -G switch.
5008 (alpha_force_relocation): Always force if -relax.
5009 (alpha_align): Take a new argument that will specify when to
5010 emit an R_ALPHA_ALIGN relocation (though we don't do that now).
5011 Change all callers. Emit nop alignment padding as nop+unop pair.
5012
5013 Sat Feb 28 17:06:22 1998 Richard Henderson <rth@cygnus.com>
5014
5015 * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
5016 * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
5017
5018 Thu Feb 26 15:49:04 1998 Michael Meissner <meissner@cygnus.com>
5019
5020 * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
5021 require padding to the next long word boundary.
5022
5023 Mon Feb 23 11:29:06 1998 Doug Evans <devans@seba.cygnus.com>
5024
5025 * cgen.c: #include symcat.h.
5026 * config/tc-m32r.c: Likewise.
5027
5028 Mon Feb 23 10:27:40 1998 Jeffrey A Law (law@cygnus.com)
5029
5030 * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
5031 absolute expressions instead of '$' prefixed register names.
5032
5033 Sat Feb 21 22:36:52 1998 Richard Henderson <rth@cygnus.com>
5034
5035 * read.c (s_set): Record file and line info for symbols when -as.
5036 (pseudo_set): Don't overwrite that dummy fragment.
5037
5038 Fri Feb 20 15:03:13 1998 Ian Lance Taylor <ian@cygnus.com>
5039
5040 * config/tc-ppc.c (md_pseudo_table): Add "section".
5041 (ppc_named_section): New static function.
5042
5043 Thu Feb 19 22:25:42 1998 Richard Henderson <rth@cygnus.com>
5044
5045 * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
5046 so we don't have to scan the entire list.
5047
5048 Tue Feb 17 17:02:15 1998 Fred Fish <fnf@cygnus.com>
5049
5050 * config/tc-d30v.c (parallel_ok): For the explicitly parallel
5051 case, allow the parallel instructions to modify the same flag
5052 bits.
5053
5054 Thu Feb 19 16:08:15 1998 Richard Henderson <rth@cygnus.com>
5055
5056 * listing.c (list_symbol_table): Categorize symbols by
5057 undefined_section rather than sy_frag->line == NULL.
5058
5059 Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
5060
5061 * Makefile.am (install-exec-local): Install properly when ln
5062 fails or tooldir == prefix.
5063
5064 Tue Feb 17 18:58:51 1998 Doug Evans <devans@seba.cygnus.com>
5065
5066 * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
5067 Test result of insert_operand for error.
5068
5069 Fri Feb 13 16:41:42 1998 Ian Lance Taylor <ian@cygnus.com>
5070
5071 * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
5072 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
5073 * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
5074 * doc/Makefile.in: Rebuild.
5075
5076 Fri Feb 13 00:47:44 1998 Ian Lance Taylor <ian@cygnus.com>
5077
5078 * config/tc-mips.c (macro_build): Handle operand type 'C'.
5079 (macro): Fix handling of M_COP[0-3].
5080
5081 Thu Feb 12 14:06:59 1998 Ian Lance Taylor <ian@cygnus.com>
5082
5083 Based on patches from Ross Harvey <ross@teraflop.com>:
5084 * macro.c (ISSEP): Only treat '<' and '>' as separator characters
5085 if macro_alternate or macro_mri.
5086 (getstring): Remove support for byte constants between < and >.
5087 (get_any_string): '<' only starts a string if macro_alternate or
5088 macro_mri.
5089 (macro_expand_body): Permit keyword parameters following
5090 positional parameters.
5091
5092 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
5093 * configure.in (alpha*-*-netbsd*): New target.
5094 * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
5095 * configure: Rebuild.
5096
5097 * as.h (flag_warn_suppress_instructionswap): Move from here...
5098 * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
5099 here, and make static.
5100
5101 * ehopt.c (eh_frame_code_alignment): Only use seg_info if
5102 BFD_ASSEMBLER or MANY_SEGMENTS.
5103
5104 * as.c (show_usage): Update bug-gnu-utils address.
5105 * gasp.c (show_usage): Likewise.
5106 * doc/as.texinfo (Bug Reporting): Likewise.
5107
5108 Wed Feb 11 23:26:28 1998 Jeffrey A Law (law@cygnus.com)
5109
5110 * config/tc-mips.c (load_address): Don't use mips III or mips IV
5111 insns regardless of the size of a pointer if we're in mips I or
5112 MIPS II mode.
5113 (macro, macro2, s_cprestore, s_cpadd): Likewise.
5114
5115 Thu Feb 12 03:41:00 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5116
5117 Fix rac to accept only a0:
5118 * tc-d10v.c (parallel_ok, find_opcode):
5119 Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
5120 Introduce OPERAND_GPR.
5121
5122 Wed Feb 11 16:28:13 1998 Richard Henderson <rth@cygnus.com>
5123
5124 * read.c (s_fill): Handle non-constant repeat counts by creating
5125 an rs_space fragment.
5126
5127 Tue Feb 10 18:31:31 1998 Ian Lance Taylor <ian@cygnus.com>
5128
5129 * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
5130 from as_bad to as_warn.
5131
5132 Tue Feb 10 18:04:00 1998 Jim Lemke <jlemke@cygnus.com>
5133
5134 * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
5135 * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
5136 * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
5137
5138 Tue Feb 10 17:58:18 1998 Ian Lance Taylor <ian@cygnus.com>
5139
5140 * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
5141 seg_fix_rotP rather than fix_root from seg_info.
5142
5143 Tue Feb 10 15:32:22 1998 Ian Carmichael <iancarm@cygnus.com>
5144
5145 * expr.c: Add support for 0x1_2_3_4 bignums.
5146
5147 Tue Feb 10 14:43:40 1998 Ian Lance Taylor <ian@cygnus.com>
5148
5149 * configure.in: Change -linux* to -linux-gnu*.
5150 * configure: Rebuild.
5151
5152 * app.c (do_scrub_begin): Treat \r as whitespace.
5153
5154 Mon Feb 9 14:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
5155
5156 * Makefile.am: Update dependencies.
5157 * Makefile.in: Rebuild.
5158
5159 Sat Feb 7 15:33:51 1998 Ian Lance Taylor <ian@cygnus.com>
5160
5161 * configure, aclocal.m4: Rebuild with new libtool.
5162
5163 Fri Feb 6 16:08:30 1998 Jeffrey A Law (law@cygnus.com)
5164
5165 * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
5166 the argument to bfd_set_arch_mach.
5167 (load_address): Use bfd_arch_bits_per_address to determine the
5168 bit size of an address instead of looking at the isa level.
5169 (macro, macro2, s_cprestore, s_cpadd): Likewise.
5170
5171 Fri Feb 6 14:44:34 1998 Nick Clifton <nickc@cygnus.com>
5172
5173 * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
5174
5175 Thu Feb 5 12:39:08 1998 Ian Lance Taylor <ian@cygnus.com>
5176
5177 * ehopt.c: New file.
5178 * as.h (enum _relax_state): Add rs_cfa.
5179 (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
5180 (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
5181 * read.c (emit_expr): Call check_eh_frame.
5182 * write.c (cvt_frag_to_fill): Handle rs_cfa.
5183 (relax_segment): Likewise.
5184 * Makefile.am: Rebuild dependencies.
5185 (GAS_CFILES): Add ehopt.c.
5186 (GENERIC_OBJS): Add ehopt.o.
5187 * doc/internals.texi (Frags): Document rs_cfa.
5188
5189 * as.c (show_usage): Mention --traditional-format.
5190 (parse_args): Accept --traditional-format.
5191 * as.h (flag_traditional_format): Declare.
5192 * output-file.c (output_file_create): If flag_traditional_format,
5193 set BFD_TRADITIONAL_FORMAT on stdoutput.
5194 * doc/as.texinfo, doc/as.1: Document --traditional-format.
5195
5196 * config/tc-mips.c (append_insn): Make sure that if we have a
5197 fixup for an unmatched %hi reloc, it does not associated with a
5198 variant frag.
5199
5200 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
5201 * doc/Makefile.in: Likewise.
5202
5203 Wed Feb 4 15:41:54 1998 Nick Clifton <nickc@cygnus.com>
5204
5205 * config/tc-m32r.c (check_for_side_effects): New function.
5206 (can_make_parallel): Add checks for instruction side effects
5207 clashing with the other instruction.
5208 (assemble_parallel_insn): Improve warning messages. Return error
5209 message from non-swapped instruction order.
5210
5211 Wed Feb 4 20:00:26 1998 James G. Smith <jsmith@teknema.demon.co.uk>
5212
5213 * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
5214
5215 * config/tc-arm.h: Replace md_after_pass_hook definition with a
5216 md_cleanup definition. This moves the forced literal output to
5217 the end of the source pass, and avoids macro's inserting literals
5218 into the code immediately after the macro expansion.
5219
5220 Wed Feb 4 13:17:19 1998 Ian Lance Taylor <ian@cygnus.com>
5221
5222 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
5223 a gas internal symbol is adjustable.
5224 * config/tc-ppc.h (tc_fix_adjustable): Likewise.
5225
5226 * as.h: If gcc version greater than 2.6, use `__format__' and
5227 `__printf__' in function attributes, rather than `format' and
5228 `printf'.
5229
5230 Mon Feb 2 18:38:18 1998 Ian Lance Taylor <ian@cygnus.com>
5231
5232 * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
5233
5234 Mon Feb 2 18:30:34 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
5235
5236 Add tms320c30 support:
5237 * config/tc-tic30.h: New file.
5238 * config/tc-tic30.c: New file.
5239 * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
5240 TARGET_FORMAT as "coff-tic30".
5241 * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
5242 * Makefile.am: Rebuild dependencies.
5243 (CPU_TYPES): Add tic30.
5244 (CPU_OBJ_VALID): tic30-aout is valid.
5245 (TARGET_CPU_CFILES): Add config/tc-tic30.c.
5246 (TARGET_CPU_HFILES): Add config/tc-tic30.h.
5247 * configure, Makefile.in: Rebuild.
5248
5249 Mon Feb 2 10:20:37 1998 Nick Clifton <nickc@cygnus.com>
5250
5251 * config/tc-v850.c (md_assemble): Improvements to error messages.
5252
5253 Mon Feb 2 12:39:05 1998 Geoff Keating <geoffk@ozemail.com.au>
5254
5255 * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
5256 BFD_RELOC_HI16_S to store the high bits of any value.
5257
5258 * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
5259 (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
5260 assembler calculate relocations to any external symbol at all.
5261 * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
5262 involving generation of pc-relative relocs.
5263 (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
5264 has been moved to md_apply_fix3.
5265
5266 * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
5267 (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
5268 which actually means (the address of identifier's GOT entry) +
5269 constant, which is not particularly useful.
5270
5271 Fri Jan 30 11:02:35 1998 Doug Evans <devans@canuck.cygnus.com>
5272
5273 * read.h (include_dirs): Declare.
5274 (include_dir_count,include_dir_maxlen): Declare.
5275
5276 Fri Jan 30 11:47:02 1998 Ian Lance Taylor <ian@cygnus.com>
5277
5278 * configure.in: Correct check for shared opcodes library.
5279 * configure: Rebuild.
5280
5281 * listing.c (buffer_line): If we can't open the file, set at_end.
5282 (listing_print): Remove unused local variable fi.
5283
5284 * config/m68k-parse.y (reglistpair): Handle register list in
5285 either order.
5286
5287 * config/vms-conf.h: Don't undef VERSION.
5288
5289 Thu Jan 29 14:42:44 1998 Pat Rankin <rankin@eql.caltech.edu>
5290
5291 * Makefile.am (CONFIG_OBJS): New variable, containing part of old
5292 OBJS variable.
5293 (GENERIC_OBJS): New variable, with the rest of the old OBJS
5294 variable.
5295 (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
5296 ($(srcdir)/make-gas.com): Rename from make-gas.com.
5297 (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
5298 (EXTRA_DIST): Define.
5299 * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
5300 explicitly rather than via the list of object files.
5301 (gcc-as.opt): New file created when make-gas.com is run.
5302 * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
5303 itbl-cpu.h} to #include appropriate file rather than copying that
5304 file.
5305 * config/vms-conf.h: Synchronize with current config.in.
5306 * Makefile.in: Rebuild.
5307
5308 Thu Jan 29 18:48:19 1998 Bill Moyer <billm@cygnus.com>
5309
5310 * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
5311 (parallel_ok): Relaxed parallel subinstruction dependency check.
5312
5313 Wed Jan 28 14:35:00 1998 Bill Moyer <billm@cygnus.com>
5314
5315 * as.h (flag_warn_suppress_instructionswap): added new flag.
5316 * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap"
5317 command line argument.
5318 * tc-d10v.c (write_2_short): emit "Swapping instructions"
5319 warning only if flag_warn_suppress_instructionswap is false.
5320
5321 Wed Jan 28 16:41:19 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
5322
5323 * configure.in (i386-*-mingw32*): New target.
5324 * configure: Rebuild.
5325
5326 Wed Jan 28 14:51:18 1998 Ian Lance Taylor <ian@cygnus.com>
5327
5328 * symbols.c (resolve_symbol_value): Don't set the segment if it
5329 hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
5330
5331 * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
5332 S_GET_SEGMENT.
5333
5334 Wed Jan 28 13:54:50 1998 Pat Rankin <rankin@eql.caltech.edu>
5335
5336 as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
5337 depends upon HAVE_{UNLINK,REMOVE} values rather than host
5338 compiler.
5339
5340 Wed Jan 28 13:48:08 1998 Ian Lance Taylor <ian@cygnus.com>
5341
5342 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
5343
5344 Wed Jan 28 09:52:00 1998 Nick Clifton <nickc@cygnus.com>
5345
5346 * config/tc-v850.c (v850_insert_operand): Display instruction when
5347 an error is encountered.
5348
5349 Tue Jan 27 13:32:01 1998 Robert Lipe <robertl@dgii.com>
5350
5351 * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
5352 (i386-*-sco3.2v5*coff): New target.
5353 (i386-*-sco3.2*): New target.
5354 * configure: Rebuild.
5355
5356 Tue Jan 27 11:06:52 1998 Nick Clifton <nickc@cygnus.com>
5357
5358 * config/tc-v850.c: Tidy error message production.
5359
5360 Tue Jan 27 12:24:32 1998 Ian Lance Taylor <ian@cygnus.com>
5361
5362 * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
5363 validate_immediate return value in the right type for comparisons
5364 to FAIL.
5365
5366 Tue Jan 27 06:51:59 1998 Richard Henderson <rth@cygnus.com>
5367
5368 * listing.c (MAX_BYTES): Use listing variables not constants.
5369 (data_buffer): No longer an array, but a pointer.
5370 (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
5371 (listing_listing): Allocate data_buffer.
5372
5373 Tue Jan 27 06:38:35 1998 Richard Henderson <rth@cygnus.com>
5374
5375 * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
5376 --listing-rhs-width, --listing-cont-lines.
5377 (show_usage): Update.
5378 * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
5379 (listing_lhs_cont_lines, listing_rhs_width): New vars.
5380 (print_lines): Use the variables instead of the constants.
5381 (listing_listing): Likewise.
5382 * listing.h: Declare the new vars.
5383
5384 Tue Jan 27 05:32:05 1998 Richard Henderson <rth@cygnus.com>
5385
5386 * as.c (parse_args): Add --keep-locals alias for -L.
5387 Add --strip-local-absolute.
5388 (show_usage): Update.
5389 * as.h (flag_strip_local_absolute): New flag.
5390 * symbols.c (S_IS_LOCAL): Use it.
5391 * config/obj-aout.h (S_IS_LOCAL): Likewise.
5392 * config/obj-bout.h (S_IS_LOCAL): Likewise.
5393 * config/obj-coff.h (S_IS_LOCAL): Likewise.
5394
5395 Mon Jan 26 13:07:41 1998 Nick Clifton <nickc@cygnus.com>
5396
5397 * config/tc-m32r.c: Detect if explicitly parallel instructions
5398 might have an io conflict and issue a warning message.
5399
5400 Thu Jan 22 17:51:44 1998 Nick Clifton <nickc@cygnus.com>
5401
5402 * cgen.c (cgen_save_fixups, cgen_restore_fixups,
5403 cgen_swap_fixups): Functions to save, restore and swap the fixup
5404 chain with a backup copy.
5405 (cgen_asm_finish_insn): Returns address of constructed insn.
5406
5407 Wed Jan 21 16:49:10 1998 Richard Henderson <rth@cygnus.com>
5408
5409 * listing.c (file_info_struct): Remove FILE, add POS.
5410 (last_open_file_info, last_open_file): New; a one entry FILE* cache.
5411 (file_info): Don't open the file.
5412 (buffer_line): Check for the file in the last_open cache, updating
5413 as necessary.
5414 (print_source): Don't reference file_info->file.
5415 (listing_listing): Likewise.
5416 (listing_print): Close the file in the cache, if any.
5417
5418 Fri Jan 16 14:51:48 1998 Ian Lance Taylor <ian@cygnus.com>
5419
5420 * read.c (dwarf_file_string): New file static variable.
5421 (emit_expr): Look for constant sequence that leads up to a file
5422 name in DWARF debugging output.
5423 (stringer): Use dwarf_file_string to decide whether to accept a
5424 string as a file name.
5425
5426 Fri Jan 16 11:30:37 1998 Richard Henderson <rth@cygnus.com>
5427
5428 * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
5429 (crack_operand): Add reg->reglst MRI hack.
5430 (r_seg): Put reglst symbols in reg_section.
5431 (m68k_frob_symbol): Frob reglst symbols into absolute_section.
5432
5433 Thu Jan 15 14:19:01 1998 Richard Henderson <rth@cygnus.com>
5434
5435 * tc-sh.c (get_specific): Handle SGR & DBR.
5436
5437 Thu Jan 15 13:46:48 1998 Richard Henderson <rth@cygnus.com>
5438
5439 * tc-h8300.c (parse_reg): Take the length of the symbol into
5440 account when attempting to match a register name.
5441 * tc-h8500.c (parse_reg): Likewise.
5442
5443 Wed Jan 14 17:52:33 1998 Nick Clifton <nickc@cygnus.com>
5444
5445 * cgen.c: Formatting changes to improve readability.
5446
5447 Wed Jan 14 15:41:41 1998 Jeffrey A Law (law@cygnus.com)
5448
5449 * config/tc-mips.c (macro): Rework division code to avoid unfilled
5450 delay slot.
5451
5452 Wed Jan 14 18:04:20 1998 Michael Meissner <meissner@cygnus.com>
5453
5454 Based on a patch from Jim Wilson
5455 * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
5456 (tc_gen_reloc): Handle cross section PC relative relocs
5457 correctly.
5458
5459 Wed Jan 14 15:02:19 1998 Doug Evans <devans@seba.cygnus.com>
5460
5461 * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
5462
5463 Mon Jan 12 13:04:57 1998 Doug Evans <devans@seba.cygnus.com>
5464
5465 * cgen.c: #include setjmp.h. Clean up pass over `struct foo' usage.
5466 (expr_jmp_buf): New static local.
5467 (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
5468 (cgen_md_operand): New function.
5469 * tc-m32r.c: Clean up pass over `struct foo' usage.
5470 (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
5471
5472 Tue Jan 6 15:36:02 1998 Richard Henderson <rth@cygnus.com>
5473
5474 * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
5475 (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
5476
5477 Fri Jan 2 16:08:54 1998 Ian Lance Taylor <ian@cygnus.com>
5478
5479 * config/tc-i386.c (i386_operand): Give an error if there are
5480 unrecognized characters after an expression.
5481
5482 For older changes see ChangeLog-9697
This page took 0.13735 seconds and 5 git commands to generate.