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