Tidy up formatting.
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
00d2865b
NC
12000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
2
3 * config/tc-avr.c: Change _ () to _() around all strings marked
4 for translation (exception from the usual coding style).
5 (avr_opt): New struct variable, how the new switches are set.
6 (OPTION_MMCU): Define as 'm' and actually use.
7 (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap.
8 (show_mcu_list): New function, display the list of known MCUs.
9 (md_show_usage): Document the new switches. Call show_mcu_list.
10 (avr_set_arch): Change 'm' to OPTION_MMCU.
11 (md_parse_option): Call show_mcu_list if unknown MCU specified.
12 Handle the new switches.
13 (avr_operands): Disable warnings for undefined combinations of
14 operands if -mall-opcodes. Disable warnings for skipping two-word
15 instructions if enhanced core or -mno-skip-bug.
16 (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes.
17 (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap.
18 (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes.
19 (avr_ldi_expression): Warn about implicit lo8().
20 * config/tc-avr.h (md_pcrel_from_section): Add prototype.
21
54588503
UC
222000-07-01 Koundinya K <kk@ddeorg.soft.net>
23
24 * configure.in: Add entry for mips-*-sysv4*MP*
25 * configure: Rebuild
26 * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or
27 elf32-tradlittlemips for traditional mips targets.
28 * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the
29 test for Link Once sections as in adjust_reloc_syms.
30 * config/te-tmips.h: New file for traditional mips targets. Define
31 TE_TMIPS.
32
c9900432
NC
332000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
34
35 * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the
36 flags argument is not present, don't change an existing section's
37 section's attributes. If the flags argument is present, warn if the
38 attributes don't match the section's current attributes. When
39 long section names are supported, set SEC_LINK_ONCE and
40 SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section.
41
9d87310a
HPN
42Thu Jun 29 21:30:00 2000 Hans-Peter Nilsson <hp@axis.com>
43
44 * config/obj-aout.c (obj_aout_type): Do not ignore for undefined
45 symbols; create them.
46
dbddefbf
NC
472000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
48
49 * write.c (set_segment_vma): New: Set vma and lma for a segment.
6aa4f516 50 (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it.
dbddefbf 51
2ae7e77b
AH
522000-06-27 Aldy Hernandez <aldyh@redhat.com>
53
54 * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
55 expressions. Ignore the problem when handling 16 bit immediates,
56 because the assembler will take care of the relocation later.
57
6b2539e3
NC
582000-06-27 Nick Clifton <nickc@cygnus.com>
59
60 * config/tc-d30v.c (write_2_short): Do not allow opcodes with
61 the EITHER_BUT_PREFER_MU attribute to be combined into a reverse
62 sequential order, and emit warning messages if the input source
63 code contains constructs like that, or parallel constructs
64 containing such opcodes.
65
65aa24b6
NC
662000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
67
68 * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4.
69 Add more MCU types for avr4 and avr5. Replace at94k{10,20,40}
70 with just at94k. Change AVR_ISA_85xx back to AVR_ISA_2xxx.
71 (md_show_usage): Update usage message.
72 (md_parse_option): Allow redefinition of MCU type within the
73 same avr[1-5] bfd machine type. Show both old and new MCU type
74 in the error message.
75 (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set.
76 Simplify 8K wrap code.
77
f0c56b90
NC
782000-06-25 Kazu Hirata <kazu@hxi.com>
79
1994a7c7
NC
80 * config/obj-aout.c: Remove all uses of DEFUN.
81 * config/obj-ieee.c: Likewise.
82 * config/tc-sh.c: Fix comment typos.
83 * config/tc-tahoe.c: Likewise.
84 * config/tc-vax.c: Likewise.
85 * config/tc-w65.c: Likewise.
86 * config/tc-z8k.c: Likewise.
f0c56b90
NC
87 * config/tc-h8300.c (build_bytes): Assemble ldmac correctly.
88
6d249963
DD
892000-06-24 DJ Delorie <dj@cygnus.com>
90
91 * config/tc-i386.c (md_estimate_size_before_relax): Revert
92 more changes from Sept 1999
93 (tc_i386_fix_adjustable): ditto
94 (md_apply_fix3): ditto
95
680d2857
FCE
962000-06-24 Frank Ch. Eigler <fche@redhat.com>
97
98 * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
99 (gas_cgen_parse_operand): Set it around expression() call.
100 (gas_cgen_md_operand): Test for it before longjmp().
101
e7b305a2
AM
1022000-06-24 Kazu Hirata <kazu@hxi.com>
103
c0fecd35
AM
104 * config/tc-h8500.c: Remove all uses of DEFUN.
105 * config/tc-sh.c: Likewise.
106 * config/tc-w65.c: Likewise.
107 * config/tc-z8k.c: Likewise.
108
e7b305a2
AM
109 * config/tc-h8500.c: Fix typos in comments.
110
ed6d6fd3
FCE
1112000-06-23 Frank Ch. Eigler <fche@redhat.com>
112
113 * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX
114 is defined.
115
f7c88872
AM
1162000-06-23 matthew green <mrg@redhat.com>
117
118 * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
3e87a760 119 defined. Fix error message for `[' grouping.
f7c88872 120
70d6ecf3
AM
1212000-06-22 Kazu Hirata <kazu@hxi.com>
122
123 * config/tc-h8300.c: Fix formatting and comment typos.
124
e9718fe1
TW
1252000-06-22 Timothy Wall <twall@cygnus.com>
126
127 * config/tc-ia64.c (note_register_values): Move premature QP
128 notation clearing into the appropriate place.
129
45288df1
AM
1302000-06-22 Alan Modra <alan@linuxcare.com.au>
131
1581f8c9
AM
132 * dep-in.sed: Escape literal `.'s on patterns. Trim off `../'
133 first before anything else. Add bin-bugs.h, emul.h and progress.h
134 Sort list of files as for $(OBJS) in Makefile.am.
135
136 * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we
137 find one. Remake dependencies.
138 ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h Sort the list.
139 * Makefile.in: Regenerate.
140 * doc/Makefile.in: Regenerate.
141
45288df1
AM
142 * config/tc-i386.c (i386_displacement): Don't assume a constant
143 displacement is necessarily 16 bits when in 16 bit code mode.
144 (md_assemble): Instead size the displacement here after we know
145 for sure that a .code16gcc operand hasn't automatically added
146 operand size prefixes.
147
01580992
L
1482000-06-21 H.J. Lu <hjl@gnu.org>
149
150 * Makefile.am: Rebuild dependency.
151 * Makefile.in: Rebuild.
152
40f09f82
JL
1532000-06-21 Kazu Hirata <kazu@hxi.com>
154
155 * config/tc-h8300.c (parse_reg): Make the function static.
156 (parse_exp): Likewise.
157
78295804
DD
1582000-06-20 DJ Delorie <dj@cygnus.com>
159
160 * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from
161 Sept 1999; RVA relocs need to be treated more like DIR32 relocs
162 for cygwin import libraries to work properly.
163
45f85b08
L
1642000-06-20 H.J. Lu <hjl@gnu.org>
165
166 * Makefile.am: Rebuild dependency.
167 * Makefile.in: Rebuild.
168 * configure: Likewise.
169 * doc/Makefile.in: Likewise.
170
39bec121
TW
1712000-06-20 Timothy Wall <twall@cygnus.com>
172
173 * doc/internals.texi (CPU backend): Add @itemx for
3e87a760 174 TC_START_LABEL_WITHOUT_COLON.
39bec121
TW
175 * doc/c-tic54x.texi: New.
176 * doc/as.texinfo: Add tic54x features and include primary tic54x
3e87a760 177 documentation file.
39bec121 178 * doc/all.texi: Add C54X.
3e87a760 179 * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi.
39bec121
TW
180 * doc/Makefile.in: Regenerate.
181 * configure.in: Add tic54x and define LIBM for tic54x.
182 * configure: Regenrate.
183 * config/tc-tic54x.[ch]: New.
184 * config/obj-coff.h: Add tic54x.
185 * Makefile.am: (CPU_TYPES): Add tic54x.
186 (TARGET_CPU_CFILES): Add 'tc-tic54x.c'.
187 (TARGET_CPU_HFILES): Add 'tc-tic54x.h'.
188 (as_new_LDADD): Add $(LIBM).
189 * Makefile.in: Regenerate.
3e87a760 190
60bcf0fa
NC
1912000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
192
193 * doc/Makefile.am (CPU_DOCS): Added 68hc11 file.
194 * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port.
195 * doc/as.texinfo: Likewise.
196
197 * configure, Makefile.in: Regenerate.
198 * configure.in (emulations): Recognize m6811 and m6812.
199 * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
200 Added files for 68hc11 and 68hc12 assembler.
201 * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12.
202 * config/tc-m68hc11.h: Header definition for that assembler.
203
ec05f674
NC
2042000-06-18 Nick Clifton <nickc@redhat.com>
205
24ef8152
NC
206 * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte
207 instead of OCTETS_PER_BYTE.
208
ec05f674 209 * config/tc-v850.c: Fix compile time warnings.
5480ccf3 210 * config/tc-ppc.c: Fix compile time warnings.
ec05f674 211
119caedd
L
2122000-06-18 H.J. Lu <hjl@gnu.org>
213
214 * configure.in: Don't emulate i386-pc-pe-coff with i386coff.
215 * configure: Rebuild.
216
607723e4
NC
2172000-06-17 Mark Elbrecht <snowball3@bigfoot.com>
218
3e87a760
AM
219 * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER
220 to BFD_ASSEMBLER.
607723e4 221
b946ec34
NC
2222000-06-16 Nick Clifton <nickc@cygnus.com>
223
224 * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230,
225 RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants.
226
227 * doc/c-mips.texi: Document newly accepted cpu variants.
228
37ce37b1
UC
2292000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
230
231 * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES.
232
c06ae4f2
UC
2332000-06-13 Ulf Carlsson <ulfc@engr.sgi.com>
234
235 * macro.c (getstring): Make it possible to escape the quote
236 character.
237
20348649
JL
238Tue Jun 13 20:58:28 2000 Catherine Moore <clm@redhat.com>
239
240 * config/tc-hppa.c (pa_export): Weak symbols can be global.
241
bcef29e6
L
2422000-06-13 H.J. Lu <hjl@gnu.org>
243
244 * configure: Regenerate.
245
63a0b638
AM
2462000-06-09 Alan Modra <alan@linuxcare.com.au>
247
248 * app.c (do_scrub_begin): Don't default lex[';'] as a line
249 separator.
250 * doc/internals.texi (line_separator_chars): Semicolon is no
251 longer a default. Mention null and newline as defaults.
252
253 * read.c (is_end_of_line): Remove ifdef TC_HPPA.
254
255 * config/tc-i386.h (line_separator_chars): Explicitly mention `;'
256 * config/tc-i860.h (line_separator_chars): Likewise.
257 * config/tc-h8300.c (line_separator_chars): Likewise.
258 * config/tc-i960.c (line_separator_chars): Likewise.
259 * config/tc-m68k.c (line_separator_chars): Likewise.
260 * config/tc-mips.c (line_separator_chars): Likewise.
261 * config/tc-ns32k.c (line_separator_chars): Likewise.
262 * config/tc-sparc.c (line_separator_chars): Likewise.
263 * config/tc-vax.c (line_separator_chars): Likewise.
264
265 * config/tc-h8300.c (comment_chars): Use string initialiser.
266 * config/tc-i960.c (line_comment_chars): Likewise.
267 * config/tc-z8k.c (comment_chars, line_comment_chars,
268 line_separator_chars): Likewise.
269
270 * config/tc-arm.c (line_separator_chars): Always use `;', not just
271 for TE_LINUX.
272
9bab9349
NC
2732000-06-08 Nick Clifton <nickc@cygnus.com>
274
275 * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value
276 for size 1 fixes.
277
946efd95
DB
2782000-06-08 David O'Brien <obrien@FreeBSD.org>
279
280 * configure.in (VERSION): Update to show this is the CVS mainline.
281
6480b79a
DB
2822000-06-08 Matthew Jacob <mjacob@feral.com>
283
284 * config/tc-alpha.c (md_undefined_symbol): Properly understand that
285 $at is the integer register $r28, vs. both $r28 and the floating
286 point register $f28.
287
10850f29
JW
2882000-06-08 James E. Wilson <wilson@cygnus.com>
289
290 * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns.
291 (dot_endp): Don't call ia64_flush_insns.
292 (emit_one_bundle): Don't delete prologue/body records from
293 unwind_record list in first loop. Rewrite second loop to account for
294 this.
295
150f24a2
JW
2962000-06-07 David Mosberger <davidm@hpl.hp.com>
297
298 * config/tc-ia64.c: Add missing prototypes.
299 (generate_unwind_image): Cast argument to output_unw_records call.
300
e38c9cc2
DC
301Wed Jun 7 22:44:14 2000 Denis Chertykov <denisc@overta.ru>
302
303 * config/tc-avr.c (avr_operand): fix the fomratting of the comment.
304
1188e082
DC
305Wed Jun 7 21:26:15 2000 Denis Chertykov <denisc@overta.ru>
306
307 * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h
308 (REGISTER_P): likewise.
309 (avr_opcodes): uses include/opcode/avr.h
310 (avr_operand): enable ld r,Z or st r,Z for at90s1200.
3e87a760 311
ac743b2c
AM
3122000-06-04 Alan Modra <alan@linuxcare.com.au>
313
0b545448
AM
314 * read.c (is_end_of_line): No ';' for TC_HPPA. Add missing
315 initializers too.
ac743b2c 316
969e1a7b
L
3172000-06-03 H.J. Lu <hjl@gnu.org>
318
319 * read.c (is_end_of_line): Put back `;'.
320
65172ab8
AM
3212000-06-03 Alan Modra <alan@linuxcare.com.au>
322
323 * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf.
324
b75c0c92
AM
3252000-06-01 Alan Modra <alan@linuxcare.com.au>
326
327 * expr.c (operand): Test is_end_of_line outside switch to catch
328 line separator chars that are also operators.
329 (operator): Return O_illegal for line separator chars.
330
331 * read.c (is_end_of_line): Use 1 instead of 99. Don't set `;'
332 entry (or `!' entry for TC_HPPA).
333
334 * config/tc-arm.c (my_get_float_expression): Cast to unsigned char
335 before indexing is_end_of_line. Remove redundant check for '\0'.
336 (fp_op2): Likewise.
337 * config/tc-h8500.c (md_assemble): Likewise.
338 * config/tc-mcore.c (md_assemble): Likewise.
339 * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
340 (md_atof): Likewise
341
342 * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing
343 is_end_of_line.
344 * config/tc-mcore.c (mcore_cons): Likewise.
345 (mcore_float_cons): Likewise.
346 (mcore_stringer): Likewise.
347 * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
348
a6836251
SB
3492000-06-01 Scott Bambrough <scottb@netwinder.org>
350
351 * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
352
43841e91
NC
3532000-05-29 Nick Clifton <nickc@cygnus.com>
354
355 * config/tc-sh.c: Fix compile time warning messages.
356
357 * config/tc-mips.c: Fix compile time warning messages.
358
a057431b
PB
3592000-05-29 Philip Blundell <philb@gnu.org>
360
361 * doc/as.texinfo: Update copyright dates.
a81d9f0c 362 (Local Labels): Delete misplaced mention of ARM.
a057431b
PB
363 * NEWS: Mention ARM ELF support.
364
3c07fb76
AO
3652000-05-27 Alexandre Oliva <aoliva@cygnus.com>
366
367 * config/tc-mn10300.c (md_assemble): Copy size to real_size before
368 it is modified, and use the real_size to compute the frag address
369 for dwarf2 line info.
370
ad4d6ccf
AM
3712000-05-27 Alan Modra <alan@linuxcare.com.au>
372
373 * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed
374 line-matching scheme to cope with automake moving variables around.
375 ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@
376 * Makefile.in: Regenerate.
377
6faf3d66
JJ
3782000-05-26 Jakub Jelinek <jakub@redhat.com>
379
380 * config/tc-sparc.c (sparc_relax): New.
381 (md_longopts): Add -relax and -no-relax options.
382 (md_parse_options, md_show_usage): Likewise.
383 (md_apply_fix3): Optimize tail call into branch always if possible.
384
0a44c2b1
DL
385Thu May 4 15:27:07 2000 Donald Lindsay <dlindsay@cygnus.com>
386
387 * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble,
388 d10v_cleanup) implement Mitsubishi's newly explained branch-packing
389 rules, with warning when a GAS statement specifies a packing that
390 will result in an instruction being squashed.
3e87a760
AM
391 Added typdef packing_type and enumerals, changed various integer
392 literals to use the enumerals.
0a44c2b1 393
e0c9811a
JW
3942000-05-24 David Mosberger <davidm@hpl.hp.com>
395
396 * config/tc-ia64.c (dot_restorereg_p): New function.
397 (md_pseudo_table): Add restorereg.p.
398 (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1.
399 (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2.
400
401 * config/tc-ia64.h (unw_record_type): Add unwabi.
402 (unw_r_record): Rename member MASK to GRMASK. Add sub-structure
403 called MASK with members for imask, and the masks produced by
404 fr_mem, gr_mem, br_mem, and frgr_mem.
405 (unw_p_record): Add members ABI and CONTEXT.
406 (unw_x_record): Add member AB.
407 * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT
408 as pseudo-register for use during unwind info generation.
409 (AR_PFS, AR_LC): New macros.
410 (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers
411 whose names start with an at sign (as in "@priunat").
412 (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat"
413 register.
414 (unwind_list, unwind_tail, current_unwind_entry, proc_start,
415 proc_end, unwind_info, personality_routine): Consolidate into
416 "unwind" structure to reduce offset-table use. Add member
417 NEXT_SLOT_NUMBER to track the slot number for the next instruction
418 to be emitted.
419 (output_R1_format, output_R3_format, output_P3_format,
420 output_P6_format): Initialize R with zero to reduce compiler warnings.
421 (output_P7_format): Ditto. Add `default' branch to switch
422 statement to reduce compiler warnings.
423 (output_P8_format, output_B1_format, output_B4_format): Ditto.
424 (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE.
425 (format_ab_reg): Rename from format_a_b_reg. Merge A and B args
426 into single argument.
427 (output_X1_format, output_X3_format): Initialize R with zero to reduce
428 compiler warnings. Merge A and B args into single argument.
429 (output_X2_format, output_X4_format): Remove unused variable R. Merge
430 A and B args into single argument.
431 (free_record): Removed (wasn't used).
432 (free_list_records): Also free imasks in prologue records.
433 (output_prologue, output_prologue_gr): Initialize mask bits to zero.
434 (output_spill_mask): Remove.
435 (output_unwabi): New function.
436 (output_epilogue, output_label_state, output_copy_state): Call
437 alloc_record.
438 (output_spill_psprel, output_spill_sprel, output_spill_psprel_p,
439 output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB
440 argument.
441 (process_one_record): New locals FR_MASK and GR_MASK. Ignore
442 gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them
443 as part of handling the prologue records. Emit region's imask if
444 we have one. Handle unwabi, epilogue, label_state, copy_state,
445 spill_psprel, spill_sprel, spill_reg, spill_psprel_p,
446 spill_sprel_p, and spill_reg_p records.
447 (set_imask, count_bits, slot_index): New function.
448 (fixup_unw_records): Fix region size computation. Handle
449 epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p,
450 spill_sprel_p, and spill_psprel_p records. Merge mask bits of
451 frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and
452 set_imask accordingly. Update imask for gr_gr, and br_gr records.
453 (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function.
454 (dot_save): Use manifest constants for applicaton registers.
455 Handle REG_PR and REG_PRIUNAT.
456 (dot_restore): Don't just ignore it.
457 (dot_restorereg): New function..
458 (generate_unwind_image): Ensure unwind info is a multiple of eight
459 bytes, not just four bytes.
460 (dot_handlerdata, dot_unwentry): Demand empty rest of line.
461 (dot_altrp): Don't just ignore it.
462 (dot_savemem): New function. Replaces dot_savesp() and
463 dot_savepsp(). Use manifest constants for applicaton registers.
464 Handle REG_PR and REG_PRIUNAT.
465 (dot_savef): Simplify.
466 (dot_saveb): Support generation of br_gr.
467 (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p,
468 dot_label_state, dot_copy_state): New function.
469 (dot_unwabi): Don't just ignore it.
470 (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp,
3e87a760 471 spillreg.p, spillsp.p, spillpsp, label_state, copy_state,
e0c9811a
JW
472 unwabi, vframesp, and vframepsp. Fix typo alprp->altrp.
473 (emit_one_bundle): Set slot number for prologue/body records
474 *before* emitting the first insn.
475 (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER.
476 (md_begin): Declare "psp" pseudo-register.
477 (md_operand): Handle PSEUDO_FUNC_REG. Fix printing of error message
478 so we don't get segfault.
479 (output_psp_sprel): Output sp/psp relative offsets as 4-byte word
480 counts as required per SW Conventions manual
481 (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel,
482 output_preds_psprel, output_preds_sprel, output_spill_base,
483 output_unat_psprel, output_unat_sprel, output_lc_psprel,
484 output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel,
485 output_priunat_psprel, output_priunat_sprel, output_bsp_psprel,
486 output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel,
487 output_rnat_psprel, output_rnat_sprel, output_spill_psprel,
488 output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto.
489 (dot_vframe): Implement.
490 (dot_vframesp, dot_vframepsp): New function.
491
f98fd99f
HPN
492Tue May 23 00:57:05 2000 Hans-Peter Nilsson <hp@axis.com>
493
494 * configure.in (i386-*-freebsd a.out entry): Quote properly.
4c8d9ec6 495 * configure: Regenerate.
f98fd99f 496
ee7fcc42
AM
4972000-05-23 Alan Modra <alan@linuxcare.com.au>
498
499 * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var...
500 (md_estimate_size_before_relax): so we can use it here instead of
501 old kludges. Localise vars to blocks. Comment.
502
503 * frags.c (frag_new): Update fr_var comments.
504 * frags.h (struct frag): Ditto.
505
c67e42c9
RH
5062000-05-22 Richard Henderson <rth@cygnus.com>
507
508 * config/tc-ia64.c (FUNC_PC_RELATIVE): New.
509 (pseudo_func): Add pcrel.
510 (operand_match): Handle IA64_OPND_TGT64.
511 (build_insn): Likewise.
512 (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE].
513 (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE.
514 (fix_insn): Handle all three 64-bit relocation types.
515
5110c57e
HPN
516Mon May 22 22:43:32 2000 Hans-Peter Nilsson <hp@axis.com>
517
518 * obj.h (struct format_ops): New members begin, app_file,
519 s_set_other, s_set_desc, s_get_type, s_set_type,
520 separate_stab_sections, init_stab_section.
521
522 * config/obj-multi.h: Update GPL notice to v2.
523 (obj_begin): New.
524 (obj_app_file): New.
525 (S_SET_SIZE): Test s_set_size for NULL before calling.
526 (S_SET_ALIGN): Similar for s_set_align.
527 (S_SET_OTHER): New.
528 (S_SET_DESC): New.
529 (S_GET_TYPE): New.
530 (S_SET_TYPE): New.
531 (SEPARATE_STAB_SECTIONS): New.
532 (INIT_STAB_SECTION): New.
533 (EMIT_SECTION_SYMBOLS): New.
534 (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define.
535
536 * config/obj-elf.h: Update GPL notice to v2.
537 Mention that this file is included from obj-multi.h.
538 (obj_begin): Wrap definition in ifndef.
539 (elf_file_symbol): Constify declaration.
540 (obj_app_file): Ditto.
541 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
542 Wrap in ifndef SEPARATE_STAB_SECTIONS.
543
544 * config/obj-elf.c (elf_s_set_other): New.
545 (elf_file_symbol): Constify argument.
546 (elf_separate_stab_sections): New.
547 (elf_init_stab_section): New.
548 (elf_format_ops): Add new members. Remove comma at end.
549
550 * config/obj-ecoff.c (ecoff_separate_stab_sections): New.
551 (ecoff_format_ops): Add new fields. Remove comma at end.
552 Mention inconsistency for emit_section_symbols.
553
554 * config/obj-coff.h (c_dot_file_symbol): Constify declaration.
555
556 * config/obj-coff.c (c_dot_file_symbol): Constify argument.
557 (coff_separate_stab_sections): New.
558 (coff_format_ops): Add new members.
559
560 * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New.
561 (obj_aout_s_set_other): New.
562 (obj_aout_s_set_desc): New.
563 (obj_aout_s_get_type): New.
564 (obj_aout_s_set_type): New.
565 (obj_aout_separate_stab_sections): New.
566 (aout_format_ops): New members added. Use obj_aout_process_stab,
567 not 0. Use obj_aout_sec_sym_ok_for_reloc, not 0.
568 (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as
569 appropriate.
570 (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto.
571
b98ef147
AM
5722000-05-22 Alan Modra <alan@linuxcare.com.au>
573
574 * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment
575 for OBJ_MAYBE_ELF too. Use S_IS_EXTERNAL instead of S_IS_EXTERN.
576 (md_estimate_size_before_relax): Ensure jumps to weak and
577 externally visible symbols are relocatable.
578
0aa5d426
HPN
579Sat May 20 16:41:55 2000 Hans-Peter Nilsson <hp@axis.com>
580
581 * stabs.c (aout_process_stab): Make global.
582 (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate.
583 * read.h (aout_process_stab): Declare.
584
585 * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]:
586 Generalize to *aout, *coff *elf.
587 * configure: Regenerated.
588
589 * doc/internals.texi (Object format backend): Say
590 SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined.
b8166459
HPN
591
592 * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h.
593 * Makefile.in: Regenerated.
594
7c3dc350
CM
5952000-05-19 Catherine Moore <clm@cygnus.com>
596
597 * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined.
598
b3b6a3fe
JL
5992000-05-18 Alan Modra <alan@linuxcare.com.au>
600
601 * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
602 instruction to reflect change in re_assemble_*.
603
c9e10a08
JL
604Thu May 18 10:52:14 2000 Jeffrey A Law (law@cygnus.com)
605
606 * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
607 build PA64 ELF tools.
608 * configure: Rebuilt.
609
3043679f
AM
6102000-05-17 Alan Modra <alan@linuxcare.com.au>
611
612 * Makefile.am: Regenerate dependencies.
613 * Makefile.in: Regenerate.
614
322f2c45
NC
6152000-05-15 Nick Clifton <nickc@cygnus.com>
616
617 * config/tc-arm.c (struct asm_psr): Add boolean field
618 distinguishing between CSPR and SPSR. Rename 'number' field
619 to 'field'.
620 (psrs): Rearrange contents to match new asm_psr structure.
621 (arm_psr_parse): Move next to psr_required_here. Make it
622 return an asm_psr structure.
623 (psr_required_here): Use asm_psr structure returned by
624 arm_psr_parse.
625 (do_msr): Reorganise to allow psr_required_here to be called
626 only once.
627 (md_undefined_name): Mark 'name' parameter as unused, since
628 the COFF target does not use it.
322f2c45 629
5e6cbf41
PB
6302000-05-14 David O'Brien <obrien@FreeBSD.org>
631
632 * config/te-386bsd.h: Clean up comments to adhere to the GNU coding
633 standards.
634 * config/te-aux.h: Likewise.
635 * config/te-dpx2.h: Likewise.
636 * config/te-go32.h: Likewise.
637 * config/te-hp300.h: Likewise.
638 * config/te-hppa.h: Likewise.
639 * config/te-i386aix.h: Likewise.
640 * config/te-ic960.h: Likewise.
641 * config/te-interix.h: Likewise.
642 * config/te-nbsd532.h: Likewise.
643 * config/te-pc532mach.h: Likewise.
644 * config/te-ppcnw.h: Likewise.
645 * config/te-psos.h: Likewise.
646 * config/te-sparcaout.h: Likewise.
647 * config/te-sun3.h: Likewise.
648 * config/te-sysv32.h: Likewise.
649
4132022d
AM
6502000-05-14 Alan Modra <alan@linuxcare.com.au>
651
652 * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16
653 bits. Instead explicitly mask and sign extend. Do the 8 bit mask
654 and sign extend without an if statement.
655 (build_bytes): Likewise.
656
6572000-05-14 Kazu Hirata <kazu@hxi.com>
658
659 * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no
660 X_add_symbol L_32 case.
661
b4fd930a
AM
6622000-05-14 David O'Brien <obrien@FreeBSD.org>
663
664 * config/te-freebsd.h: New file.
665
a38cf1db
AM
6662000-05-13 Alan Modra <alan@linuxcare.com.au>
667
897083bd
AM
668 * asintl.h (gettext, dgettext, dcgettext, textdomain,
669 bindtextdomain): Replace defines with those from intl/libgettext.h
670 to quieten gcc warnings.
671
a38cf1db
AM
672 * NEWS: Mention x86 .arch and -q.
673
674 * config/tc-i386.c (quiet_warnings): New.
675 (md_assemble): Use quiet_warnings.
676 (md_parse_option): Set quiet_warnings from -q.
677 (md_show_usage): Mention -q, delete -m.
678 (flag_do_long_jump): Delete.
679 (md_parse_option): Remove -m.
680 (md_show_usage): Remove -m.
681 (md_create_long_jump): Remove useless flag_do_long_jump code.
682
683 * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold
684 the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER.
685
e413e4e9
AM
6862000-05-13 Alan Modra <alan@linuxcare.com.au>
687 Alexander Sokolov <robocop@netlink.ru>
688
689 * doc/c-i386.texi (i386-Arch): New section.
690 (i386-Syntax): Mention .intel_syntax and .att_syntax.
691
692 * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New.
693 (smallest_imm_type): Use smallest opcode for shift by one if cpu
694 architecture has been given and is not 486.
695 (set_cpu_arch): New.
696 (md_pseudo_table): Add .arch.
697 (md_assemble): Warn if cpu architecture has been given and an
698 unsupported instruction.
699
700 * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete.
701 Move operand_types bit defines after relevant template field.
702 (template): Add cpu_flags.
703 (Cpu*): Define.
704 (arch_entry): New.
705
e8b1cae5
AO
7062000-05-12 Alexandre Oliva <aoliva@cygnus.com>
707
708 * config/tc-mn10300.h (md_end): Define.
709 (mn10300_finalize): Declare.
710 * config/tc-mn10300.c: Include dwarf2dbg.h.
711 (debug_line): Define.
712 (md_assemble): Generate dwarf2 line info.
713 (mn10300_finalize): New function. Finalize dwarf2 info.
714
426b0403
AM
7152000-05-11 Ulf Carlsson <ulfc@engr.sgi.com>
716
717 * config/tc-mips.c (md_estimate_size_before_relax): Use the
718 external version of the relocation for weak symbols.
719
e4c58b25
JW
7202000-05-08 David Mosberger <davidm@hpl.hp.com>
721
722 * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed
723 frame size in units of 16 bytes, as required per SW Conventions manual.
724 (output_unw_records): Output info-block header as a dword to get
725 byte-order right.
726
8fce3f5e
AM
7272000-05-08 Alan Modra <alan@linuxcare.com.au>
728
729 * as.h: #include "file", not <file> on files from ../include.
730 (as_abort, as_fatal): Add ATTRIBUTE_NORETURN.
731 * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings.
732 (md_convert_frag): Add ATTRIBUTE_UNUSED.
733 (tc_coff_symbol_emit_hook): Ditto.
734 (OPTCOUNT): Cast to int to avoid compiler warning.
735 (md_begin): Fix signed/unsigned warnings.
736
7372000-05-08 Michael Sokolov <msokolov@ivan.Harhan.ORG>
738
739 * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the
740 ABRANCH LONG case for a conditional branch on a 68000.
741 (md_estimate_size_before_relax): Likewise. Also handle
742 flag_short_refs correctly for ABRANCH, BCC68000, and DBCC.
743 (m68k-ip: case ABSL): Relax absolute references to 16-bit
744 PC-relative on all CPUs.
745 (md_estimate_size_before_relax): Likewise.
746
fb166ee3
AM
7472000-05-04 Alan Modra <alan@linuxcare.com.au>
748
749 * as.c (parse_args): Just mention current year in printed
750 copyright message.
751
7a899fff
C
7522000-05-03 J.T. Conklin <jtc@redback.com>
753
754 * config/tc-ppc.c (pre_defined_registers): Add entries for vector
3e87a760 755 unit registers.
7a899fff
C
756 (md_parse_option): Recognize -m7400.
757
44877466
ILT
7582000-05-03 Ian Lance Taylor <ian@zembu.com>
759
760 * config/atof-ieee.c (gen_to_words): When adding carry back in,
761 don't permit lp to become less than the words array.
762
eaa15ab8
NC
7632000-05-03 Rodney Brown <RodneyBrown@pmsc.com>
764
765 config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
766 Fix little-endian case.
767
7c4f6a03
AM
7682000-05-03 David O'Brien <obrien@NUXI.com>
769
770 * as.c (parse_args): Update copyright.
771
da5d444c
AM
7722000-05-03 Mark Elbrecht <snowball3@bigfoot.com>
773
774 * gas/config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4
775 for the .bss section too.
776
3f9b03b5
AM
7772000-05-02 Alan Modra <alan@linuxcare.com.au>
778
779 * configure.in: Set em=linux for hppa-*-linux.
780 * configure: Regenerate.
781 * doc/Makefile.in: Regenerate with correct automake.
782
783 * frags.c (frag_grow): Sanity check chunk_size.
784
785 * config/obj-elf.h: #include "bfd.h" not <bfd.h>
786 * config/obj-som.h: Likewise.
787 * config/obj-ieee.h: Likewise.
788
789 * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64.
790
791 * config/tc-hppa.c (log2): Only compile when OBJ_SOM.
792 (md_pseudo_table): Fully initialise OBJ_ELF cases.
793 (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate.
794 (pa_ip): low_sign_unext now returns via function value. Use
795 re_assemble_* instead of dis_assemble_* and
796 INSERT_FIELD_AND_CONTINUE combination. Don't call sign_unext
797 unnecessarily.
798 (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate.
799 (md_section_align, md_parse_option, md_show_usage,
800 md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try,
801 pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry,
802 pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level,
803 pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum,
804 pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym,
805 pa_text): Likewise.
806 (md_apply_fix): Change type of new_val to offsetT. Delete w1, w2,
807 w, resulti. Add insn, val. Move bfd_get_32 and bfd_put_32
808 outside of switch. Correct mask and shifting errors in case 10
809 and case -11. In case 21, compare against signed range to suit
810 hppa_field_adjust changes. In case 12, use re_assemble_12. In
811 case 17 and case 22, use offsetT variable to properly check range.
812 Use re_assemble_* here too.
813 (evaluate_absolute): Change type of value to offsetT. Call
814 hppa_field_adjust to do the work for us.
815 (pa_parse_cmpb_64_cmpltr): Delete save_s.
816 (pa_parse_cmpib_64_cmpltr): Ditto.
817 (pa_build_unwind_subspace): Delete unused var subseg. Change type
818 of i to unsigned int.
819 (pa_type_args): Conditionally declare symbol if OBJ_SOM.
820 (pa_end_of_source): Return type is void.
821
a2984248
CM
822Mon May 1 08:54:23 2000 Catherine Moore <clm@cygnus.com>
823
824 * macro.c (macro_expand_body): Don't prepend macro number with zeroes.
825
df136245
DC
826Mon May 1 14:19:39 2000 Denis Chertykov <denisc@overta.ru>
827
828 * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places.
829 More comments added.
830 (md_begin): Removed "construct symbols for each register name".
831 Because register names conflicts with GCC generated function
832 names.
833 (avr_operand): Now constant numbers can be used as a register
834 identifiers (0 as r0, 31 as r31).
835 (md_assemble): use skip_space () before parsing instruction
836 operands.
837
b170af93
DC
838Sun Apr 23 16:45:45 2000 Denis Chertykov <denisc@overta.ru>
839
840 * config/tc-avr.c: New AVR_ISA_ defined.
3e87a760 841 (md_assemble): Handle opcodes with optional operands (lpm,elpm).
b170af93 842 (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed
3e87a760 843 for `fmul', `movw' and `lpm R,Z' instructions.
b170af93 844 (avr_operands): Warn if current opcode is a two-word instruction
3e87a760 845 and previous opcode was cpse/sbic/sbis/sbrc/sbrs.
b170af93
DC
846 (avr_opcodes): New commands added.
847 (REGISTER_P): Check 'a' and 'v' constraint letters.
848 (mcu_types): New MCU added.
849
c1e73230
AM
8502000-05-01 Alan Modra <alan@linuxcare.com.au>
851
852 * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to
853 ensure all pe targets use bfd. Remove unnecessary bfd_gas=yes on
854 arm-*-netbsd* and arm-*-wince as this is set for all arm*.
855 * configure: Regenerate.
856
a1934524
AM
8572000-04-29 Andreas Jaeger <aj@suse.de>
858
859 * as.h: Correctly check GCC version.
860
7f6d05e8
CP
861Mon Apr 24 15:21:11 2000 Clinton Popetz <cpopetz@cygnus.com>
862
863 * as.c (parse_args): Allow md_parse_option to override -a listing
864 option.
865 * config/obj-coff.c (add_lineno): Change type of offset parameter
866 from "int" to "bfd_vma."
867 * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
868 (ppc_mach, ppc_subseg_align, ppc_target_format): New.
3e87a760 869 (ppc_change_csect): Align correctly for XCOFF64.
7f6d05e8
CP
870 (ppc_machine): New function, which discards "ppc_machine" line.
871 (ppc_tc): Cons for 8 when code is 64 bit.
872 (md_apply_fix3): Don't check operand->insert. Handle 64 bit
873 relocations.
874 (md_parse_option): Handle -a64 and -a32.
875 (ppc_xcoff64): New.
876 * config/tc-ppc.h (TARGET_MACH): Define.
877 (TARGET_FORMAT): Move to function.
878 (SUB_SEGMENT_ALIGN): Use ppc_subseg_align.
879
d9b7d820
AM
8802000-04-26 David O'Brien <obrien@FreeBSD.org>
881
882 * doc/as.1: Fix unbalanced brackets.
883
884 * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
885 TE_FreeBSD.
886 (line_comment_chars): Set to '/' if TE_FreeBSD.
887
cea1ab94
JL
888Tue Apr 25 11:02:02 2000 Jeffrey A Law (law@cygnus.com)
889
890 * configure.in: Configury support for PA64 (currently disabled).
891 * configure: Rebuilt.
892
e799a695
AM
8932000-04-25 Machida Hiroyuki <machida@sm.sony.co.jp>
894
3e87a760 895 * config/tc-mips.c (s_change_sec): Use record_alignment, not
e799a695
AM
896 bfd_set_section_alignment.
897
3b0ec529
AM
8982000-04-25 Alan Modra <alan@linuxcare.com.au>
899
900 * config/tc-i386.c (offset_in_range): Ensure shift counts are less
901 than 32.
902
adcf07e6
NC
9032000-04-24 Nick Clifton <nickc@cygnus.com>
904
905 * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0.
906 * doc/as.texinfo (Align): Include arm and strongarm in list of
907 targets that have the second form of the behaviour of the .align
3e87a760 908 directive.
adcf07e6 909
5047a41f
JL
9102000-04-24 Mark Klein <mklein@dis.com>
911
912 * obj-som.c: Terminate obj_pseudo_table.
913
bf3ca999
TW
9142000-04-22 Timothy Wall <twall@cygnus.com>
915
916 * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent
917 to "natval".
918 (operand_match): Conditionally insert default bit values for IMMU9.
919
98e5953c
JL
9202000-04-14 Matthew Green <mrg@cygnus.com>
921
922 * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support.
923 * configure: Rebuilt.
924
a02fab7e
JL
925Fri Apr 21 14:29:43 2000 Jeffrey A Law (law@cygnus.com)
926 Jason Eckhardt <jle@cygnus.com>
927
c67e42c9 928 * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
a02fab7e
JL
929
930 * config/tc-hppa.c (CHECK_ALIGN): New macro.
931 Added handling of new operand types l,y,&,fe,fE,fx.
932
800eeca4
JW
933Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
934 David Mosberger <davidm@hpl.hp.com>
935 Timothy Wall <twall@cygnus.com>
936 Andrew MacLeod <amacleod@cygnus.com>
937 Jim Wilson <wilson@cygnus.com>
938
939 * Makefile.am (CPU_TYPES): Add ia64.
39bec121 940 (TARGET_CPU_CFILES): Add config/tc-ia64.c.
800eeca4
JW
941 (TARGET_CPU_HFILES): Add config/tc-ia64.h.
942 * Makefile.in: Rebuild.
943 * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS.
944 * configure: Rebuild.
945 * configure.in: Recognize ia64 as cpu type. Set bfd_gas.
946 (ia64-*-elf*, ia64-*-linux-gnu*): New targets.
947 * expr.c (expr): Handle md_optimize_expr.
948 * read.c (LEX_HASH): Add comment.
949 * config/tc-ia64.c, config/tc-ia64.h: New files.
3e87a760 950
66778679
RH
9512000-04-21 Richard Henderson <rth@cygnus.com>
952
953 * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when
954 bundling a non-delayed branch type instruction.
955
aa15f6f7
AO
9562000-04-20 Alexandre Oliva <aoliva@cygnus.com>
957
958 * config/tc-mn10300.c (HAVE_AM30): Define.
959 (md_assemble): Use it.
960
16adf844
AM
9612000-04-19 Alan Modra <alan@linuxcare.com.au>
962
742f45cf
AM
963 * config/obj-elf.c (obj_elf_change_section): Check for changed
964 section attributes.
965
16adf844
AM
966 * Makefile.am: (CPU_MULTI_VALID): Remove.
967 (MULTI_CPU_TYPES): Define.
968 (MULTI_CPU_OBJ_VALID): Define.
969 (DEPTC): Use the above.
970 (DEPOBJ): Same here.
971 (DEP2): And here.
972 Regenerate dependencies.
973 * Makefile.in: Regenerate.
974
9c46fb1b
AM
9752000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>
976
742f45cf 977 * Makefile.am (YACC, LEX): Get them from configure.
9c46fb1b 978
508866be
L
9792000-04-18 H.J. Lu (hjl@gnu.org)
980
981 * config/tc-i386.c (offset_in_range): Use addressT instead of
9c46fb1b 982 bfd_vma for non-bfd assemblers.
508866be 983
ba2adb93
AM
9842000-04-17 Alan Modra <alan@linuxcare.com.au>
985
986 * config/tc-i386.c (offset_in_range): Sign extend val so BFD64
987 doesn't give spurious errors.
988
12ff5d56
AM
9892000-04-14 Michael Sokolov <msokolov@ivan.Harhan.ORG>
990
66778679 991 * as.h (SEEK_SET): Define if undefined.
12ff5d56 992
fc633e5b
AM
9932000-04-13 Alan Modra <alan@linuxcare.com.au>
994
995 * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
996 constants, and don't assume offsetT is 32 bits.
997
1ed18ec1
NC
9982000-04-12 Andrew Cagney <cagney@b1.cygnus.com>
999
1000 * config/tc-d10v.h: Include "write.h" to get definition of fixS.
1001 (md_pcrel_from_section): Add prototype.
1002 (d10v_fix_adjustable): Add prototype.
1003 (d10v_force_relocation): Replace 'struct fix' with 'fixS'.
1004
1005 * config/tc-d10v.c (md_apply_fix3): Add paren around &&.
1006
3db10f32
NC
10072000-04-12 Nick Clifton <nickc@cygnus.com>
1008
1009 * config/tc-d10v.c (find_opcode): Correctly calculate position of
1010 symbol in frag chain.
1011
847f7ad4
AM
10122000-04-10 Alan Modra <alan@linuxcare.com.au>
1013
1014 * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT.
1015 (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto.
1016 (fits_in_signed_word, smallest_imm_type): Ditto.
1017 (md_assemble): Use an offsetT var to hold offsetT values, not a
1018 long.
1019 (offset_in_range): New.
1020 (md_assemble): Use it.
1021 (md_convert_frag): Change type of target_address, opcode_address,
1022 and displacement_from_opcode_start to offsetT.
1023 (md_create_short_jump): Change type of offset to offsetT.
1024 (md_create_long_jump): Ditto.
1025 (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32.
1026 (md_chars_to_number): Remove.
1027 (output_invalid): Remove duplicate prototype.
1028
ec694b89
NC
10292000-04-09 Nick Clifton <nickc@cygnus.com>
1030
1031 * Makefile.am (CPU_TYPES): Add 'avr'.
1032 (TARGET_CPU_CFILES): Add 'tc-avr.c'.
1033 (TARGET_CPU_HFILES): Add 'tc-avr.h'.
1034
16adf844 1035 * Makefile.in: Regenerate.
ec694b89
NC
1036
1037 * doc/as.texinfo: Add M32R documentation.
1038
a2d91340 1039Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
3e87a760 1040
a2d91340 1041 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
3e87a760 1042 --enable-build-warnings option.
a2d91340
AC
1043 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
1044 * Makefile.in, configure: Re-generate.
1045
d92b1a8a
NC
10462000-04-07 Nick Clifton <nickc@cygnus.com>
1047
1048 * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX
1049 in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and
1050 BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH.
1051 (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX.
1052 (arm_force_relocation): Force relocations for
1053 BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well.
1054
52ccafd0
JR
1055Wed Apr 5 22:26:32 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1056
1057 * config/tc-sh.c (get_operands): There's no third operand if the
1058 first operand is an immediate.
1059
015551fc
JR
1060Wed Apr 5 22:07:19 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1061
1062 * config/tc-sh.c (immediate): Delete.
1063 (sh_operand_info): Add immediate member.
1064 (parse_reg): Use A_PC for pc.
1065 (parse_exp): Add second argument 'op'. All callers changed.
1066 (parse_at): Expect pc to be coded as A_PC.
1067 Use immediate field in *op.
1068 (insert): Add fourth argument 'op'. All callers changed.
1069 (build_relax): Add second argument 'op'. All callers changed.
1070 (insert_loop_bounds): New function.
1071 (build_Mytes): Remove DISP_4.
1072 Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT.
1073 (assemble_ppi): Use immediate field in *operand.
1074 (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
1075 (md_apply_fix): Likewise.
1076 (tc_gen_reloc): Likewise. Check for a pcrel BFD_RELOC_SH_LABEL.
1077
79bd78be
AO
1078Wed Apr 5 06:35:45 2000 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1079
1080 * config/tc-sparc.c (sparc_ip): Avoid string pasting.
1081
e30e5a6a
HPN
1082Tue Apr 4 19:27:50 2000 Hans-Peter Nilsson <hp@axis.com>
1083
1084 * internals.texi (CPU backend): Document
1085 TC_CHECK_ADJUSTED_BROKEN_DOT_WORD.
1086
41b49281
AM
10872000-04-04 Alan Modra <alan@linuxcare.com.au>
1088
8ad3436c
AM
1089 * po/gas.pot: Regenerate.
1090
1091 * as.c (show_usage): Restore translated part of bug string.
1092 * gasp.c (show_usage): Likewise.
1093
41b49281
AM
1094 * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep.
1095 (DEP): Quote when passing vars to sub-make. Use "mv -f" rather
1096 than move-if-change.
1097 (DEP1): Modify for "gcc -MM".
1098 (DEPTC): Likewise.
1099 (DEPOBJ): Likewise.
1100 (DEP2): Likewise.
1101 (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA.
1102 Update dependencies.
1103 * Makefile.in: Regenerate.
1104
0a727238
AO
11052000-04-03 Alexandre Oliva <aoliva@cygnus.com>
1106
1107 * config/tc-mn10300.c (md_pseudo_table): Use constant names.
1108 (md_begin): Likewise.
1109 (HAVE_AM33): New macro.
1110 (md_assemble): Use it. Match r_regs and xr_regs only if
1111 HAVE_AM33.
1112
c20f4f8c
AM
11132000-04-03 Alan Modra <alan@linuxcare.com.au>
1114
1115 * as.h: #include "bin-bugs.h"
1116 * as.c (show_usage): Use REPORT_BUGS_TO.
1117 * gasp.c: #include "bin-bugs.h"
1118 (show_usage): Use REPORT_BUGS_TO.
1119
1120 * config/tc-sparc.c (md_show_usage): Add a trailing newline.
1121
753f6b12
HPN
1122Mon Apr 3 13:56:03 2000 Hans-Peter Nilsson <hp@axis.com>
1123
1124 * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined,
1125 call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after
1126 adjustments.
1127
726c5dcd
AM
11282000-04-03 Alan Modra <alan@linuxcare.com.au>
1129
1130 * config/tc-i386.c (i386_immediate): Don't assume a constant
1131 immediate is necessarily 16 bits when in 16 bit code mode.
1132 (md_assemble): Instead set guess_suffix here after we have checked
1133 registers.
1134
bf80011a
RH
11352000-04-02 Richard Henderson <rth@cygnus.com>
1136
1137 * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit
1138 quantities. Correct right shift sign extension.
1139 (build_insn): Make `number' unsigned long. Mask top 6 bits of
1140 32-bit value when shifting into place.
1141
92161534
ILT
11422000-04-01 Ian Lance Taylor <ian@zembu.com>
1143
1144 * app.c: Add ATTRIBUTE_UNUSED as needed.
1145 * config/tc-ppc.c: Likewise.
1146 (ppc_size): Make unsigned long.
1147 (ppc_insert_operand): Add casts to avoid warnings.
1148
447f3982
NC
11492000-03-31 Nick Clifton <nickc@cygnus.com>
1150
1151 * config/tc-d10v.h (md_flush_pending_output): Define.
1152
21d75ec2
NC
11532000-03-29 Nick Clifton <nickc@cygnus.com>
1154
1155 * config/tc-sh.h (SEG_NAME): New macro: return the name of a
1156 segment. Works for both BFD_ASSEMBLER and others.
1157 (SUB_SEGMENT_ALIGN): Use SEG_NAME.
1158
d1a1bf19
NC
11592000-03-29 Nick Clifton <nickc@cygnus.com
1160
1161 * config/tc-arm.c (tinsns): Add "bal" instruction pattern.
1162
224de7a5
AM
11632000-03-28 Alan Modra <alan@linuxcare.com.au>
1164
1165 * listing.c (LISTING_LHS_WIDTH): Default depends on
1166 LISTING_WORD_SIZE.
1167 (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH.
1168
5b8274e3
ILT
11692000-03-27 Ian Lance Taylor <ian@zembu.com>
1170
1171 * config/tc-sh.c (md_show_usage): Use backslash before newline in
1172 string literal.
1173
224de7a5 11742000-03-27 Alan Modra <alan@linuxcare.com.au>
adde6300
AM
1175
1176 * config/tc-avr.h (TC_HANDLES_FX_DONE): Define.
1177
1178 * config/tc-avr.c (mcu_types): Add missing initialiser.
1179 (md_pcrel_from_section): Add prototype.
1180 (avr_operand): Remove redundant test of unsigned < 0.
1181 (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit.
1182
11832000-03-27 Denis Chertykov <denisc@overta.ru>
1184
1185 * config/tc-avr.c: New file for AVR support.
1186 * config/tc-avr.h: Likewise.
1187 * configure.in: Add AVR support.
1188 * configure: Regenerate.
1189
9f10757c
TW
11902000-03-26 Timothy Wall <twall@cygnus.com>
1191
1192 * gasp.c (macro_op): Add new argument to check_macro call.
1193 Macro structure definitions moved to macro.h
1194 * sb.h: Add argument to prototype for input_scrub_include_sb.
1195 * input-scrub.c (input_scrub_include_sb): Allow disabling of sb
1196 nesting checks with an additional flag.
1197 (struct input_save): Add flag to indicate whether current sb
1198 should be checked for proper macro/conditional nesting.
1199 (input_scrub_push/pop): Save/restore nest check flag.
1200 (input_scrub_next_buffer): Ditto. Also call end of macro hook if
3e87a760 1201 defined.
9f10757c
TW
1202 * macro.c (check_macro): Allow caller to retrieve parsed macro
1203 information if a pointer is provided. This information may be
1204 used by the new macro hooks.
1205 * macro.h: Update prototype for check_macro. Macro struct
1206 definitions moved here from macro.c/gasp.c.
1207 * read.c (read_a_source_file): Add parameter to check_macro call,
1208 and pass macro info to the macro hook, if defined.
1209 (input_scrub_insert_line): New. Allow insertion of a line of
1210 characters into the input stream.
1211 (input_scrub_insert_file): New. Allow insertion of an arbitrary
1212 file into the input stream.
1213 (s_include): Use input_scrub_insert_file.
1214 * internals.texi: Document new macro hooks.
1215 * as.h: New prototypes added.
3e87a760 1216
224de7a5 12172000-03-26 Alan Modra <alan@linuxcare.com.au>
d0b47220
AM
1218
1219 * config/tc-i386.c: Don't start any as_bad or as_warn message with
1220 an initial capital letter.
1221 (i386_index_check): Reindent.
1222
11424155
NC
12232000-03-19 Nick Clifton <nickc@cygnus.com>
1224
eaa15ab8 1225 * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
11424155
NC
1226 relative branches.
1227
43f05576
NC
12282000-03-17 Thomas de Lellis <tdel@windriver.com>
1229
66778679
RH
1230 * config/tc-arm.c (do_t_adr): Flag "adr Rd,label"
1231 instruction operand bad if Rd > 7 when generating
1232 thumb instructions. Prevents for example,
1233 "adr r12,label" from silently failing and generating
1234 the wrong instruction.
3e87a760 1235
67231402
NC
12362000-03-17 Nick Clifton <nickc@cygnus.com>
1237
1238 * config/tc-arm.c (md_apply_fix3): Handle same-section relocations
1239 that have a destingation >= 0x400000.
3e87a760 1240 Fix compile time warning messages.
67231402 1241
a37c8f88
JR
1242Thu Mar 16 23:45:16 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1243
1244 * config/tc-sh.c (md_begin): When encountering insn that are
1245 not supported by the current arch, only change the name if
1246 its contents are the same as prev_name.
1247 (get_specific): If the the architecture doesn't match, fail.
1248
dead1419
JR
1249Thu Mar 16 21:18:13 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1250
1251 * config/tc-sh.c (IDENT_CHAR): Define.
1252 (parse_reg): Use it instead of isalnum. Put r[0..7]_bank operand
1253 matching back where it came from.
1254
182e89d3
JR
1255Thu Mar 16 20:58:10 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1256
1257 * config/tc-sh.c (md_show_usage): Add description of -dsp.
1258
84f73d89
NC
12592000-03-15 Jonathan Larmour <jlarmour@redhat.co.uk>
1260
1261 * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
1262 normal operands.
1263
dbbc7809
JL
12642000-03-15 Kazu Hirata <kazu@hxi.com>
1265
1266 * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
1267
271bb601
HPN
1268Mon Mar 13 22:02:59 2000 Hans-Peter Nilsson <hp@axis.se>
1269
1270 * expr.c (operand) [case 'f']: When testing if '0f' can start a
1271 floating-point-number, make sure 'f' is in FLT_CHARS.
1272
8684e216
HPN
1273Sat Mar 11 00:01:39 2000 Hans-Peter Nilsson <hp@axis.se>
1274
1275 * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
1276 (s_lcomm_internal): Use it.
1277 * doc/internals.texi (CPU backend): Document it.
1278 * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
1279 bytes.
1280
bb2d6cd7
GK
12812000-03-10 Geoffrey Keating <geoffk@cygnus.com>
1282
1283 * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
1284 when embedded-pic.
1285
1286 * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
3e87a760
AM
1287 implementation doesn't have special handling for switch
1288 statements.
bb2d6cd7
GK
1289 (macro_build): Allow for code in sections other than .text.
1290 (macro): Likewise.
1291 (mips_ip): Likewise.
1292 (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
3e87a760 1293 Don't perform relocs if we will be outputting them.
bb2d6cd7 1294 (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
3e87a760
AM
1295 relocations. Allow BFD_RELOC_16_PCREL_S2 relocs when
1296 embedded-pic.
bb2d6cd7 1297
5c86cbc7 12982000-03-09 Catherine Moore <clm@cygnus.com>
3e87a760 1299
66778679
RH
1300 * config/tc-m32r.c (m32r_fix_adjustable): Look up the
1301 relocation type based on the entry in the fixup structure.
5c86cbc7 1302
f8c827e9
L
13032000-03-08 H.J. Lu (hjl@gnu.org)
1304
1305 * Makefile.am (install-exec-tooldir): Depend on
1306 install-exec-bindir for parallel make.
1307 * Makefile.in: Regenerated.
1308
8ad9e709
NC
13092000-03-06 Nick Clifton <nickc@cygnus.com>
1310
1311 * config/tc-m32r.c (struct md_longopts): Add -m32r command line
1312 switch.
1313 (md_parse_option): Parse -m32r command line switch - disable m32rx
1314 compatability.
ded0aeb7
NC
1315 (md_show_usage): Document new option.
1316
1317 * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
1318 * doc/Makefile.in: Regenerate.
1319 * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
8ad9e709 1320
b7b8f327
MM
13212000-03-02 Michael Meissner <meissner@redhat.com>
1322
1323 * config/tc-d30v.c (check_range): Remove code that incorrectly
1324 sign extended values where bits < 32.
1325
15886821
L
13262000-03-02 H.J. Lu (hjl@gnu.org)
1327
1328 * configure.in: Support --enable-targets=all on ia32.
1329 * configure: Regenerated.
1330
8bf950bf
NC
13312000-03-01 Nick Clifton <nickc@cygnus.com>
1332
1333 * gasp.c (do_align): Remove bogus check of alignment value.
1334
c5e54cc2
ILT
13352000-02-27 Thomas de Lellis <tdel@windriver.com>
1336
1337 * config/obj-elf.c (elf_frob_symbol): Remove code which when
1338 TC_PPC was defined forced the type of a symbol with no other type
1339 to be BSF_OBJECT.
1340
65fd87bc
ILT
13412000-02-27 Hans-Peter Nilsson <hp@axis.com>
1342
1343 * doc/internals.texi (CPU backend): Mention that
1344 line_separator_chars do not break up comments. Fix typos for
1345 LEX_AT and LEX_NAME descriptions. Document operands for
1346 TC_EQUAL_IN_INSN, md_operand and md_section_align. Correct
1347 description of md_create_short_jump usage. Document argument for
1348 md_undefined_symbol.
1349
a25fe906
ILT
13502000-02-27 Jakub Jelinek <jakub@redhat.com>
1351
1352 * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
1353 (md_parse_option): Handle it.
1354 (md_show_usage): Document it.
1355
21b10511
ILT
13562000-02-27 Ian Lance Taylor <ian@zembu.com>
1357
1358 * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
1359 opcode, for the instruction `pal19'. From Andrea Arcangeli
1360 <andrea@suse.de>.
1361
773f551c
AM
13622000-02-26 Alan Modra <alan@spri.levels.unisa.edu.au>
1363
1364 * config/tc-i386.c (i386_immediate): Move constant operand sizing
1365 from here..
1366 (md_assemble): To here, before template operands are matched.
1367 Also ensure a constant immediate is sign extended when we know the
1368 size is at most 16 bits. This is to catch cases like "add
1369 $0xffc0,%ax" where we don't know the size, and thus that the
1370 immediate can be represented as Imm8S until after parsing the
1371 register operand.
1372 (i386_displacement): Similarly sign extend 16 bit constant
1373 displacements.
1374 (md_assemble): Relax 16-bit jump constant range check to suit sign
1375 extended displacements.
1376
28d33191
JL
13772000-02-26 Andreas Jaeger <aj@suse.de>
1378
1379 * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
1380
cc5ca5ce
AM
13812000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
1382
1383 * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
1384 call operands when intel_syntax.
1385 (intel_float_operand): Return 2 for "fi...".
1386 (i386_operand_modifier): Change "DWORD PTR" test to suit above.
1387 Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert
1388 earlier "SHORT" change.
1389 (md_assemble): When determining suffix from Regs, exclude
1390 InOutPortReg.
1391
056350c6
NC
13922000-02-24 Nick Clifton <nickc@cygnus.com>
1393
1394 * configure: Add arm-wince, mips-pe and sh-pe targets.
1395 * configure: Regenerate.
1396
1397 * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
1398 sh-pe targets.
1399 (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
1400 "pe-mips" for the mips-pe target.
1401
1402 * config/tc-arm.c (insns): Change displacement encoded in BL
1403 and B instructions if the target port is arm-wince.
1404 (do_ldst): Do not bias the relocation offset if the target
1405 port is arm-wince.
1406 (md_pcrel_from): Add in missing relocation offset bias if the
1407 target os arm-wince.
1408
1409 * config/tc-mips.c (mips_target_format): Support COFF flavour.
1410 (md_begin): Disable -G support for mips-pe target.
1411 (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
1412 * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
1413 COFF flavour.
1414
1415 * config/tc-sh.c (md_begin): sh-pe target is little endian.
1416 * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
1417 assembler, just set the alignment to 4.
1418
1419 * config/te-wince-pe.h: New file for WinCE targets. Define
1420 TE_WINCE.
1421
36bf8ab9
AM
14222000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
1423
1424 * config/tc-i386.c (md_assemble): Swap segments too for intel mode
1425 string instructions.
1426 (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
1427 (i386_intel_memory_operand): After finding a segment override,
1428 check again for no `[' before looking for a displacement. Bomb if
1429 more than one displacement rather than silently discarding the
1430 second and subsequent ones. Free strings malloc'd by
1431 build_displacement_string.
1432
f5795b08
CM
14332000-02-24 Catherine Moore <clm@cygnus.com>
1434
1435 * config/obj-som.c (obj_pseudo_table): Add "weak".
1436 (obj_som_weak): New routine.
1437
abd63a32
AM
14382000-02-24 Alan Modra <alan@spri.levels.unisa.edu.au>
1439
520dc8e8
AM
1440 * config/tc-i386.c (union i386_op): New.
1441 (struct _i386_insn): Delete disps[], imms[], regs[]. Add op[].
1442 Throughout file replace occurences of disps[n], imms[n], regs[n]
1443 with equivalent op[n].disps, op[n].imms, op[n].regs. Simplify
1444 intel mode operand swapping. Add assert in regKludge and
1445 fake_zero_displacement code. Test i.types[n] when outputting
1446 displacements and immediates. Combine output of Disp16 with
1447 Disp32.
7f3f1ea2
AM
1448 (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
1449 when in intel mode by (not) reversing fsub and fdiv operands
1450 before the template search. This fails for single operand
1451 shorthand forms of the instruction, and if UNIXWARE_COMPAT is
1452 undefined. Instead fix the base_opcode after we've found the
1453 template. Move base_opcode xor with found_reverse_match from
1454 opcode output code to before this fix so we test for the correct
1455 opcodes.
1456 (md_assemble): Don't use strcmp when deciding to ignore the suffix
1457 check in intel mode. Instead compare opcodes.
520dc8e8
AM
1458
1459 * config/tc-i386.h (TC_RELOC): Delete.
1460 * config/tc-i386.c (TC_RELOC): Delete. Replace usage of TC_RELOC
1461 with equivalent call to reloc.
1462
abd63a32
AM
1463 * as.h (flag_m68k_mri): Move declaration after target include, and
1464 only declare when TC_M68K defined. Define as zero otherwise.
1465 (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
1466 * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
1467 Define as zero otherwise.
1468 (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
1469 (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
1470 (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
1471 (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
1472 testing whether defined.
1473 * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
1474 * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
1475 * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
1476 rather than testing whether defined.
1477 (s_mri): Set flag_m68k_mri only when TC_M68K defined.
1478 (parse_mri_cons): Declare and use only when TC_M68K.
1479 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
1480 * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
1481 * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
1482
1483 * NEWS: Mention IBM 370 support.
1484
7e052742
RH
14852000-02-23 Richard Henderson <rth@cygnus.com>
1486
1487 * config/tc-i386.c (md_assemble): When swapping operands for
1488 intel_syntax, assume everything that's not Imm or Disp is a
1489 register.
1490
5b93d8bb
AM
14912000-02-23 Linas Vepstas <linas@linas.org>
1492
1493 * config/tc-i370.c, config/tc-i370.h: New files.
1494 * Makefile.am: Add support for Linux/IBM 370.
1495 * configure.in: Likewise.
1496 * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
1497 * config/obj-elf.c: Include elf/i370.h
1498 (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
1499
1500 * Makefile.in: Regenerate.
1501 * configure: Regenerate.
1502
1503 * doc/c-i370.texi: New file.
1504 * doc/all.texi: Include it.
1505 * doc/as.texinfo: And here.
3e87a760 1506 * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
5b93d8bb
AM
1507 * doc/Makefile.in: Regenerate.
1508
25f2196d
CC
15092000-02-19 Michael Meissner <meissner@redhat.com>
1510
1511 * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
1512 determine if an instruction can be used in parallel with an ADDppp
1513 or SUBppp instruction.
1514
6349b5f4
AH
15152000-02-22 Andrew Haley <aph@cygnus.com>
1516
1517 * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
1518
c97ef257
AH
15191999-12-30 Andrew Haley <aph@cygnus.com>
1520
1521 * config/tc-mips.c (mips_gp32): New variable.
1522 (macro_build) Use mips_gp32.
1523 (mips_ip): Ditto.
1524 (md_longopts): Add "-mgp32" and "-mgp64".
1525 (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
3e87a760 1526
b985eaa8
ILT
15272000-02-22 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1528
1529 * config/obj-coff.c (add_lineno): Accept non-positive lineno with
1530 warning, and bump it to 1.
1531
52454417
ILT
15322000-02-22 Ian Lance Taylor <ian@zembu.com>
1533
1534 From Brad Lucier <lucier@math.purdue.edu>:
1535 * dwarf2dbg.c (print_stats): Add cast to force printf argument to
1536 match format.
1537
6b76fefe
CM
15382000-02-21 Catherine Moore <clm@cygnus.com>
1539
1540 * config/tc-mips.c (MF_HILO_INSN): Define.
1541 (mips_7000_hilo_fix): Declare.
1542 (append_insn): Conditionally insert nops after an mfhi/mflo insn.
1543 (md_parse_option): Check for 7000_HILO_FIX options.
1544 (OPTION_M7000_HILO_FIX): Define.
1545 (OPTION_NO_M7000_HILO_FIX): Define.
1546 * doc/c-mips.texi (-mfix7000): Describe.
1547
f6af82bd
AM
15482000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
1549
1550 * listing.c (print_lines): Remove unused variable `end'.
1551
1552 * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
1553 type for JumpInterSegment output. Use enum bfd_reloc_code_real for
3e87a760 1554 reloc_type when BFD_ASSEMBLER.
f6af82bd
AM
1555 (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
1556 reloc_type when BFD_ASSEMBLER. Move common code out of switch
3e87a760 1557 statement and quell signed vs. unsigned comparison warning.
f6af82bd 1558
8c8281f4
NC
15592000-02-18 Nick Clifton <nickc@cygnus.com>
1560
1561 * config/tc-d10v.c (find_opcode): Add a symbol's value to
1562 the computed frag offset, rather than overwriting it.
1563
d4845d57
JR
1564Thu Feb 17 00:11:08 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
1565
1566 * config/tc-sh.c ("elf/sh.h"): Include.
1567 (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
1568 (md.begin): Initialize target_arch.
1569 Only include opcodes in has table that match selected architecture.
1570 (parse_reg): Recognize register names for sh-dsp.
1571 (parse_at): Recognize post-modify addressing.
1572 (get_operands): The leading space is now optional.
1573 (get_specific): Remove FDREG_N support. Add support for sh-dsp
1574 arguments. Update valid_arch.
1575 (build_Mytes): Add support for SDT_REG_N.
1576 (find_cooked_opcode): New function, broken out of md_assemble.
1577 (assemble_ppi, sh_elf_final_processing): New functions.
1578 (md_assemble): Use find_cooked_opcode and assemble_ppi.
1579 (md_longopts, md_parse_option): New option: -dsp.
1580 * config/tc-sh.h (elf_tc_final_processing): Define.
1581 (sh_elf_final_processing): Declare.
1582
c97305a1
JL
1583Fri Feb 11 14:21:51 2000 Jeffrey A Law (law@cygnus.com)
1584
1585 * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
1586 the unwinder subspace. Save the current seg/subseg before creating
1587 the new seg/subseg.
1588
bec50466
NC
15892000-02-10 Nick Clifton <nickc@cygnus.com>
1590
1591 * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
66778679 1592 little endian targets.
bec50466 1593 (INST_BYTE1): Redefine to handle big and little endian
66778679 1594 targets.
bec50466
NC
1595 (cpu_type): New type: Select between M340 and M210.
1596 (parse_psrmod): New function: Parse the PSRCLR and PSRSET
66778679 1597 instructions of the M340.
bec50466 1598 (md_assemble): Add support for the MULSH and OPSR classes of
66778679 1599 instructions.
bec50466
NC
1600 (md_atof): Add support for little endian targets.
1601 (md_parse_option): Add support for -EL, -EB and -mcpu command
66778679 1602 line switches.
bec50466
NC
1603 (md_convert_frag): Add support for little endian targets.
1604 (md_apply_fix3): Add support for little endian targets.
1605 (md_number_to_chars): Add support for little endian targets.
1606
a25c045a
TW
16072000-02-10 Timothy Wall <twall@redhat.com>
1608
1609 * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
1610 defined, use it to verify the symbol just read should be a label.
1611
f28e8eb3
TW
16122000-02-10 Timothy Wall <twall@redhat.com>
1613
1614 * app.c (do_scrub_chars): Handle "||" for parallel instructions
1615 when DOUBLEBAR_PARALLEL is defined. Avoid stripping whitespace
1616 around colons when KEEP_WHITE_AROUND_COLON is defined.
1617 * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
1618 and KEEP_WHITE_AROUND_COLON.
1619
6dc19fc4
TW
16202000-02-08 Timothy Wall <twall@redhat.com>
1621
1622 * read.c (s_rept): Call do_repeat, which abstracts the repeat
3e87a760 1623 logic.
6dc19fc4 1624 (do_repeat): New. Abstract repeat logic so that a "break" can be
3e87a760 1625 implemented.
6dc19fc4
TW
1626 (end_repeat): New. Provide support for a "break" out of the
1627 repeat loop.
1628 * read.h: Add prototypes for new functions.
3e87a760 1629
f805106c
TW
16302000-02-08 Timothy Wall <twall@redhat.com>
1631
1632 * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
1633 * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
1634 * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
3e87a760
AM
1635 non-zero.
1636
4469be0f
TW
16372000-02-08 Timothy Wall <twall@redhat.com>
1638
1639 * read.c: Added elseif to directives table.
1640 * read.h: Added prototype for s_elseif.
1641 * doc/as.texinfo: Added description for elseif.
1642 * cond.c (s_elseif): New function
3e87a760 1643
24a17b6c
TW
16442000-02-04 Timothy Wall <twall@redhat.com>
1645
1646 * listing.c (print_lines): Remove conditionals causing bug in
3e87a760 1647 listings.
24a17b6c 1648
bea9907b 16492000-02-03 Timothy Wall <twall@cygnus.com>
3e87a760 1650
bea9907b
TW
1651 * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
1652 default values.
1653 * frags.c (frag_new): Calculate fr_fix in octets
1654 (frag_now_fix) Return offset as target address offset (bytes).
1655 (frag_now_fix_octets) New - Return offset in octets (8-bit
3e87a760 1656 quantities).
bea9907b
TW
1657 * frags.h: Added prototype for frag_now_fix_octets().
1658 Distinguish between octets and bytes in field descriptions.
1659 * listing.c (calc_hex): Account for octets vs bytes when
1660 printing addresses/offsets.
1661 (print_lines) Ditto. Also, if LISTING_WORD_SIZE is not 1, and
1662 target is little-endian, print the octets in a word in big-endian
1663 order so that the display looks like a proper hexadecimal number,
1664 instead of having the octets reversed.
1665 * read.c (do_align): When recording alignment, alignment power
1666 should be in terms of target bytes (minimum addressible unit)
1667 instead of octets.
1668 (do_org) Convert ORG target address (byte) argument into an
1669 octet offset when generating a variable fragment.
1670 * symbols.c (resolve_symbol_value): Symbol final value
1671 converted to a target address offset (bytes) from its octet offset.
1672 * config/obj-coff.c (coff_frob_symbol): Symbol target address
1673 offset (bytes) is adjusted by the frag offset (octets) converted
1674 to bytes.
1675 (coff_frob_section) Section alignment power is in terms of bytes;
1676 convert it to an octet alignment power when calculating size (and
1677 size mask) in octets. Don't modify the section size in order to
1678 "align" it for TI COFF, since that format has a different method
1679 for storing alignment information.
3e87a760 1680
210dcc61
TW
16812000-02-01 Timothy Wall <twall@cygnus.com>
1682
1683 * stabs.c (generate_asm_file): Escape backslashes in stabs file
1684 entries, matching the way GCC generates them. If not escaped, the
1685 filename is encoded incorrectly.
1686
557537a5 16872000-01-31 Nick Clifton <nickc@cygnus.com>
eaa15ab8 1688
557537a5
NC
1689 * config/tc-arm.c (reg_table): Add support for ATPCS register
1690 naming conventions.
2c1c4c62 1691
557537a5 16922000-01-31 Geoff Keating <geoffk@cygnus.com>
3e87a760 1693
2c1c4c62
GK
1694 * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
1695 already defined.
3e87a760 1696 * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
2c1c4c62
GK
1697 New macro.
1698 * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
1699 of a symbol when we really care about its value.
1700
17012000-01-19 Chandra Chavva <cchavva@cygnus.com>
2d473ce9
NC
1702
1703 * config/tc-mcore.c (md_assemble): Give warning message if
1704 operands passes to instruction are more than the spec.
1705
2f0ca46a
NC
17062000-01-27 Thomas de Lellis <tdel@windriver.com>
1707
66778679 1708 * config/tc-arm.c (armadjust_symtab): If the assembler is in
2f0ca46a
NC
1709 Thumb mode but the label seen was not declared as '.thumb_func'
1710 then set the ST_INFO type to STT_ARM_16BIT mode. This allows
3e87a760 1711 correct disassembly of Thumb code bounded by non function labels.
2f0ca46a 1712
4c63da97
AM
17132000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
1714
1715 * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
1716 Add dependencies for e-i386aout.o. Fix 2 comment lines.
1717
1718 * Makefile.in: Same here.
1719 Update copyright.
1720
1721 * configure.in: Set bfd_gas for i386-aout when primary target
1722 is bfd. Handle i386aout emulation. Don't use te_file=multi, as
1723 we may need the primary te_file. Remove incorrect comment.
1724
1725 * configure: Regenerate.
1726
1727 * config/e-i386aout.c: New file.
1728
1729 * as.c (USE_EMULATIONS): Move to before print_version_id.
1730 (struct emulation): Add i386aout.
1731 (show_usage): Split text strings. Reformat -a text. Add --em
1732 help.
1733 Update copyright.
1734
1735 * obj.h (struct format_ops): Add s_get_other and s_get_desc.
1736 (aout_format_ops): New.
1737 Update copyright.
1738
1739 * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
1740 preprocessor conditional and add aout USE_EMULATIONS tests.
1741 (read_a_source_file): Don't pass error strings to printf as
1742 format arg.
1743 Update copyright.
1744
1745 * gasp.c (exp_get_abs): Don't pass error strings to printf as
1746 format arg.
1747 (do_data): Same here.
1748 (process_file): And here.
1749 Update copyright.
1750
1751 * symbols.c (colon): Rewrite "already defined" fatal message
1752 code for aout with USE_EMULATIONS.
1753 Update copyright.
1754
1755 * config/obj-aout.c (OBJ_HEADER): Define.
1756 (obj_pseudo_table): Rename to aout_pseudo_table. Init all
3e87a760 1757 fields of sentinel.
4c63da97
AM
1758 (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
1759 S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
1760 forms here.
1761 (obj_aout_type): Expand S_SET_OTHER here too.
1762 (obj_read_begin_hook): Remove.
1763 (aout_pop_insert): New.
1764 (obj_aout_s_get_other): New.
1765 (obj_aout_s_get_desc): New.
1766 (aout_format_ops): New.
1767 Update copyright.
1768
1769 * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
1770 gets aout_pseudo_table.
1771 (aout_pseudo_table): Declare.
1772 (obj_read_begin_hook): Define.
1773 Update copyright.
1774
1775 * config/obj-coff.c (obj_pseudo_table): Rename to
1776 coff_pseudo_table.
1777 (coff_pop_insert): Use coff_pseudo_table.
1778 (coff_sec_sym_ok_for_reloc): Remove.
1779 (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
1780 and comment all zero entries and remove #if 0 code.
1781 Update copyright.
1782
1783 * config/obj-coff.h (obj_pop_insert): Define.
1784 (coff_pseudo_table): Declare.
1785 Update copyright.
1786
1787 * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
1788 s_get_size, s_set_size. Comment all zero entries.
1789 Update copyright.
1790
1791 * config/obj-elf.c (elf_s_get_other): New function.
1792 (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
1793 (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
1794 (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
1795 comment.
1796 (obj_elf_parse_section_letters): Don't pass error strings to
1797 printf as format arg.
1798 Update copyright.
1799
1800 * config/obj-elf.h (ECOFF_DEBUGGING): Define when
1801 OBJ_MAYBE_ECOFF.
1802 (elf_s_get_other): Declare.
1803 (S_GET_OTHER) Define as elf_s_get_other if not already
1804 defined.
1805 (S_SET_OTHER): Only define when not already defined.
1806 (elf_obj_read_begin_hook): Declare.
1807 (obj_read_begin_hook): Define.
1808 (elf_obj_symbol_new_hook): Declare.
1809 (obj_symbol_new_hook): Define.
1810 Update copyright.
1811
1812 * config/obj-multi.h: Add copyright header and protect against
1813 multiple inclusion. Add * to all function pointers.
1814 (OBJ_HEADER): If defined, include it rather than other defines
1815 in this file.
1816 (obj_frob_file_after_relocs): Test for NULL.
1817 (obj_symbol_new_hook): Here too.
1818 (obj_sec_sym_ok_for_reloc): And here.
1819 (S_GET_OTHER): Define.
1820 (S_GET_DESC): Define.
1821 (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
1822 (OBJ_MAYBE_ELF): Update comment.
1823
1824 * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
1825 OBJ_AOUT preprocessor conditional and handle emulation by
1826 testing OUTPUT_FLAVOR.
1827 (i386_displacement): Here too.
1828 (md_section_align): Similarly here.
1829 (i386_target_format): Conditionally compile when more than one
1830 of OBJ_MAYBE_{ELF,COFF,AOUT} defined. Add aout case.
1831 (i386_immediate): Fix error message for aout BFD_ASSMBLER.
1832 (i386_displacement): Here too.
1833 Update copyright.
1834
1835 * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
1836 Define TARGET_FORMAT for aout only when not multi.
1837 Update copyright.
1838
1839 * config/te-multi.h: Delete file as it's identical to te-generic.h
1840
add0c677
AM
18412000-01-15 Alan Modra <alan@spri.levels.unisa.edu.au>
1842
1843 * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
1844 * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
1845 LONG_MNEM_SUFFIX.
1846
1847 * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
1848 DWORD_MNEM_SUFFIX.
1849 * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too. Fix some
1850 comments.
1851
a19d8eb0
CP
18522000-01-13 Clinton Popetz <cpopetz@cygnus.com>
1853
66778679
RH
1854 * config/tc-mips.c (mips_do_align): New function.
1855 * config/tc-mips.h (md_do_align): Define.
a19d8eb0 1856
550262c4
NC
18572000-01-10 Philip Blundell <philb@gnu.org>
1858
1859 * doc/c-arm.texi (ARM Options): Fix typo.
3e87a760 1860 (ARM-Chars): Correct description of `#'. Mention that `;' is a
550262c4
NC
1861 line separator for Linux.
1862 * doc/as.texinfo (Comments): Mention the ARM.
1863
0decc840
NC
18642000-01-10 Philip Blundell <pb@futuretv.com>
1865
1866 * configure.in (arm*-*-conix*): New target.
1867 (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
1868 armv*-*-linux-gnu.
1869 * configure: Regenerate.
1870
2e13b764
NC
18712000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de>
1872
1873 * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
1874 (obj_elf_visibility): New function.
3e87a760 1875
2e13b764
NC
1876 * doc/as.texinfo (Visibility): New node: document visibility
1877 pseudo ops.
1878
3138f287
AM
18791999-12-27 Alan Modra <alan@spri.levels.unisa.edu.au>
1880
1881 * config/tc-i386.c (MATCH): Relax JumpAbsolute check. Emit a
1882 warning for absolute jump/call without `*' in non-intel mode. No
1883 need to set i.types[0] JumpAbsolute in intel mode.
1884
df32bc61
NC
18851999-12-22 Philip Blundell <pb@futuretv.com>
1886
1887 * config/tc-arm.c (arm_s_text): If OBJ_ELF, call the appropriate
1888 hook function when changing sections.
1889 (arm_s_data): Likewise.
1890
b4d0b2b3
NC
18911999-12-14 Nick Clifton <nickc@cygnus.com>
1892
1893 * config/tc-arm.c (md_parse_option): Add support for -marm720
df32bc61 1894 command line switch.
b4d0b2b3 1895
85cb2cf9
JL
1896Tue Nov 30 22:59:00 1999 Jeffrey A Law (law@cygnus.com)
1897
1898 * config/tc-mn10300.c (md_pseudo_table): Add ".am33" pseudo-op.
1899 (r_registers, xr_registers): Define.
1900 (r_register_name, xr_register_name): New functions.
1901 (md_assemble): Handle new am33 operand types and instruction
1902 formats.
1903 (mn10300_insert_operand, check_operand): Likewise.
1904
a64bcdd8
NC
19051999-11-29 Nick Clifton <nickc@cygnus.com>
1906
1907 * config/tc-arm.c (thumb_mode): Turn into a tristate variable.
1908 (s_force_thumb): Set thumb_mode to 2.
1909 (md_assemble): Do not complain about thumb instructions on a
1910 non-thumb target if thumb_mode is set to 2.
1911
43b4c25e
MM
19121999-11-28 Michael Meissner <meissner@cygnus.com>
1913
1914 * config/tc-alpha.c (toplevel): Include struc-symbol.h.
1915 (alpha_macro_arg): Add MACRO_{LITERAL,BASE,BYTOFF,JSR} cases.
1916 (O_...): Add new machine dependent expressions if we are handling
1917 explicit relocations.
1918 (alpha_reloc_op): New static table holding the explicit relocation
1919 information.
1920 (alpha_literal_hash): New static to hold the hash table for
1921 explicit relocations.
1922 (alpha_macros): Add support for explicit relocations.
1923 (md_begin): If explicit relocations, initialize hash table.
1924 (md_assemble): Don't print a second error if tokenize_arguments
1925 already printed an error message.
1926 (md_apply_fix): Add support for explicit relocations.
1927 (alpha_force_relocation): Ditto.
1928 (alpha_fix_adjustable): Ditto.
1929 (alpha_adjust_symtab): New function to support explicit
1930 relocations.
1931 (alpha_adjust_symtab_relocs): Ditto.
1932 (debug_exp): Debug stub compiled if DEBUG_ALPHA is defined.
1933 (tokenize_arguments): Add debug code if DEBUG_ALPHA is defined.
1934 Add support for explicit relocations. Return -2 if an error
1935 message was already printed.
1936 (find_macro_match): Add support for explicit relocations. Comment
1937 each of the cases.
1938 (emit_insn): Add support for explicit relocations.
1939 (assemble_tokens): Ditto.
1940 (emit_ldgp): Ditto.
1941 (load_expression): Ditto.
1942 (emit_lda): Ditto.
1943 (emit_ldah): Ditto.
1944 (emit_ir_load): Ditto.
1945 (emit_loadstore): Ditto.
1946 (emit_ldXu): Ditto.
1947 (emit_ldil): Ditto.
1948 (emit_sextX): Ditto.
1949 (emit_division): Ditto.
1950 (emit_jsrjmp): Ditto.
1951 (emit_retjcr): Ditto.
1952
1953 * config/tc-alpha.h (RELOC_OP_P): Enable explicit relocations if
1954 ELF object format.
1955 (tc_adjust_symtab): If explicit relocations, call the function
1956 alpha_adjust_symtab.
1957 (TC_FIX_TYPE): Add fields to be able to move explicit lituse
1958 relocations next to the literal relocation they reference.
1959 (TC_INIT_FIX_DATA): Initialize the new fields.
1960 (TC_FIX_DATA_PRINT): Print the new fields if DEBUG5 is defined.
1961
afbf211f
JL
1962Wed Nov 24 20:27:58 1999 Jeffrey A Law (law@cygnus.com)
1963
1964 * config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers. Handle
1965 'B' operand for PA2.0 bb instruction.
eaa15ab8 1966
f11900d0
NC
19671999-11-18 Nick Clifton <nickc@cygnus.com>
1968
1969 * config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe
1970 target.
3e87a760 1971
f11900d0
NC
1972 * config/tc-mcore.c (tc_gen_reloc): Support generation of RVA
1973 relocs.
1974 (mcore_force_relocation): Force relocations to be generated for
1975 RVA relocs.
1976
2daf4fd8
AM
19771999-11-16 Alan Modra <alan@spri.levels.unisa.edu.au>
1978
1979 * config/tc-i386.c (i386_immediate): Disallow O_big immediates.
1980 (i386_displacement): Disallow O_big displacements.
1981
eb726e5d
DL
1982Mon Nov 15 20:12:43 1999 Donald Lindsay <dlindsay@cygnus.com>
1983
3e87a760
AM
1984 * config/tc-arm.c (do_mia,do_mar,do_mra,do_pld,do_ldrl,do_co_reg):
1985 Small improvements in error checking.
eb726e5d
DL
1986 (md_assemble): Support for unconditional ARM instructions.
1987 (md_parse_option): Support for -m[arm]v5e flag.
1988
035349a4
NC
19891999-11-12 Nick Clifton <nickc@cygnus.com>
1990
1991 * macro.c (buffer_and_nest): Do not check beyond the end of the
3e87a760 1992 buffer.
035349a4 1993
c1eae114
NC
19941999-11-11 Nick Clifton <nickc@cygnus.com>
1995
1996 * macro.c (buffer_and_nest): Look for seperator after TO and
1997 FROM tokens.
1998
c5c834aa
AH
19991999-11-08 Andrew Haley <aph@cygnus.com>
2000
2001 * app.c (do_scrub_chars): When in State 10, treat backslash
2002 characters in the same way as as symbol characters.
2003
98007ce7
RH
20041999-11-07 Richard Henderson <rth@cygnus.com>
2005
2006 * config/tc-alpha.c (alpha_align): Check, don't assert, that
2007 the previous label was in the current section before playing
2008 with auto-alignment.
2009
d6c497c7
NC
20101999-11-06 Nick Clifton <nickc@cygnus.com>
2011
2012 * config/tc-v850.c (v850_force_relocation): Force relocation
66778679 2013 for weak symbols.
d6c497c7 2014 (v850_pcrel_from_selection): Do not compute a pcrel offset if
66778679 2015 the symbol is weak.
d6c497c7 2016
dd33dc0f
MM
20171999-11-05 Michael Meissner <meissner@cygnus.com>
2018
2019 * expr.h (operatorT): Increase machine dependent operators to 16.
2020 * expr.c (op_rank): Ditto.
2021
5f91fe03
ILT
20221999-11-03 Ian Lance Taylor <ian@zembu.com>
2023
53b0d397
ILT
2024 * read.c (pseudo_set): Reject attempts to set the value of a
2025 section symbol.
2026
5f91fe03
ILT
2027 * config/obj-elf.c (obj_elf_ident): Call md_flush_pending_output
2028 if it is defined.
2029
2030 * config/obj-elf.c (elf_set_index): Add ATTRIBUTE_UNUSED.
2031
2032 * config/obj-elf.c (elf_frob_file_after_relocs): Don't pass NULL
2033 to bfd_set_section_contents.
2034
829ce307
NC
20351999-11-03 Nick Clifton <nickc@cygnus.com>
2036
2037 * config/tc-mcore.h (TARGET_BYTES_BIG_ENDIAN): Change to false.
2038
2bd7f1f3
GRK
20391999-11-01 Gavin Romig-Koch <gavin@cygnus.com>
2040
2041 * config/tc-mips.c (macro_build): Use OPCODE_IS_MEMBER.
2042 (mips_ip): Use OPCODE_IS_MEMBER.
2043
90ca882f
JL
2044Wed Oct 27 16:50:44 1999 Don Lindsay <dlindsay@cygnus.com>
2045
acb56623
JL
2046 * config/tc-arm.c (reg_required_here): Improve comments.
2047
66778679
RH
2048 * config/tc-arm.c (thumb_opcode): Add "variants" field.
2049 (tinsns): Initialize variants field.
b49cfa5d
JL
2050
2051 * config/tc-arm.c (bad_args, bad_pc): Renamed to BAD_ARGS and
2052 BAD_PC respectively.
90ca882f 2053
29c4c6b5
NC
20541999-10-27 Scott Bambrough <scottb@netwinder.org>
2055
2056 * config/tc-arm.c (reloc_map[]): Fix compiler warning.
2057 * config/tc-arm.h: Fix compile time warnings.
2058
d9fd9852
DN
2059Mon Oct 18 18:11:10 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
2060
2061 * tc_d10v.c (find_opcode): Allow ATSIGN to match expressions of the
2062 form @abs16, @(abs16) and @(abs16 + imm).
2063
9ce8a5dd
GRK
20641999-10-21 Gavin Romig-Koch <gavin@cygnus.com>
2065
2066 * config/tc-mips.c (ISA_HAS_COPROC_DELAYS) : New.
2067 (ISA_HAS_64_BIT_REGS) New.
2068 (gpr_interlocks,md_begin,reg_needs_delay,append_insn,
2069 mips_emit_delays,macro_build,load_register,load_addresss,
2070 macro,macro2,mips_ip,s_cprestore,s_cpadd): Simplify
2071 and/or use new ISA_xxx macros in expressions involving
2072 ISA, particularly mips_opts.isa.
2073
446a06c9
MM
20741999-10-18 Michael Meissner <meissner@cygnus.com>
2075
2076 * expr.h (operatorT): Add machine dependent operators md1..md8.
2077 (expressionS): Make X_op 8 bits instead of 7. Add a X_md field
2078 for the machine dependent operators to use.
2079
2080 * expr.c (op_rank): Add machine dependent operators.
2081
2082 * config/tc-alpha.c (O_pregister): Define as a machine dependent
2083 operator.
2084 (O_cpregister): Ditto.
2085 (md_begin): Change X_op test that field is wide enough to use
2086 O_max instead of O_alpha_max.
2087 (cpu_types): Fill in missing initializer.
2088 (alpha_num_macros): Make unsigned.
2089 (md_assemble): Make opnamelen be size_t.
2090 (md_apply_fix): Cast alpha_num_operands to int before testing.
2091 (alpha_force_relocation): Ditto.
2092 (alpha_fix_adjustable): Ditto.
2093 (alpha_fix_adjustable): Mark unused arguments ATTRIBUTE_UNUSED.
2094 (tc_gen_reloc): Ditto.
2095 (tc_get_register): Ditto.
2096 (emit_ldgp): Ditto.
2097 (emit_lda): Ditto.
2098 (emit_ldah): Ditto.
2099 (emit_ldil): Ditto.
2100 (s_alpha_ent): Ditto.
2101 (s_alpha_end): Ditto.
2102 (s_alpha_frame): Ditto.
2103 (s_alpha_prologue): Ditto.
2104 (s_alpha_file): Ditto.
2105 (s_alpha_gprel32): Ditto.
2106 (s_alpha_proc): Ditto.
2107 (s_alpha_set): Ditto.
2108 (s_alpha_base): Ditto.
2109 (s_alpha_align): Ditto.
2110 (s_alpha_arch): Ditto.
2111 (alpha_align): Ditto.
2112 (assemble_insn): Suppress unused variable warning.
2113 (emit_insn): Ditto.
2114 (assemble_insn): Don't assume X_op and X_unsigned are in a given
2115 order in the structure.
2116 (s_alpha_coff_wrapper): Avoid int/unsigned comparison.
2117
476cdcb8
JL
2118Sun Oct 17 17:15:58 1999 Jeffrey A Law (law@cygnus.com)
2119
2120 * config/tc-hppa.c (md_apply_fix): Make "fmt" an int.
2121
c388dee8
AM
21221999-10-12 Alan Modra <alan@spri.levels.unisa.edu.au>
2123
2124 * config/tc-i386.c (i386_index_check): Correct #endif location.
2125
2bdd6cf5
GK
2126Mon Oct 11 14:02:40 1999 Geoffrey Keating <geoffk@cygnus.com>
2127
2128 * as.c (show_usage): Document new options.
2129 (parse_args): Add --no-warn, --warn, --fatal-warnings,
2130 which become 'W', OPTION_WARN, and OPTION_WARN_FATAL.
2131 (parse_args): Parse the new options.
2132 (main): If there were warnings, and --fatal-warnings
2133 was specified, print an error.
2134 * as.h: New variable, flag_fatal_warnings, for new option.
2135
d53d2751
JL
2136Sun Oct 10 01:47:23 1999 Jerry Quinn <jerry.quinn.adv91@alum.dartmouth.org>
2137
2138 * config/tc-hppa.c (pa_ip): Add new codes 'cc', 'cd', 'cC', 'co',
2139 '@'. Change autoincrement completers to fall through to cache control
2140 completers.
2141
2142 * config/tc-hppa.c (pa_ip): Remove unused args. Add code to '?W'
eaa15ab8 2143 arg.
d53d2751
JL
2144 (pa_parse_addb_64_cmpltr): New function.
2145
2146 * config/tc-hppa.c (pa_ip): Change error message.
2147 (pa_ip,pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr) Fix '?N' and
2148 '?Q' args to allow falling through.
2149
8fce3f5e 2150 * config/tc-hppa.c (pa_ip): Implement conditional codes "?N", "?Q".
d53d2751
JL
2151 Remove unused conditional codes.
2152 (pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr): New.
2153
ba09cd8d
DN
2154Thu Oct 7 00:23:53 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
2155
2156 * config/tc-d30v.c (CHAR_BIT): Define.
2157 (check_range): Fix bit operations to support integers bigger than
2158 32 bits.
2159
c43185de
DN
2160Thu Oct 7 00:11:50 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
2161
2162 * config/tc-d10v.c (check_range): Check range for RESTRICTED_NUM3
2163 operands.
2164
925c058e
DE
2165Mon Oct 4 17:24:23 1999 Nick Clifton <nickc@cygnus.com>
2166 Doug Evans <devans@cygnus.com>
2167
2168 Add support for m32rx.
2169 * config/tc-m32r.c (enable_m32rx): New static global.
2170 (enable_special,warn_explicit_parallel_conflicts,optimize): Ditto.
2171 (allow_m32rx): New function.
2172 (M32R_SHORTOPTS): Add `O'.
2173 (md_longopts): Add --m32rx plus several warning options.
2174 (md_parse_option): Handle new options.
2175 (md_show_usage): Print them.
2176 (md_begin): Enable m32rx.
2177 (OPERAND_IS_COND_BIT): New macro.
2178 (first_writes_to_seconds_operands): New function.
2179 (writes_to_pc,can_make_parallel,make_parallel): New functions.
2180 (target_make_parallel,assemble_two_insns): New functions.
2181 (md_assemble): Recognize "insn1 -> insn2" and "insn1 || insn2".
2182 If optimizing and m32rx, try to make consecutive insns parallel.
2183
fba2b7f9
GK
2184Tue Sep 28 14:06:44 1999 Geoffrey Keating <geoffk@cygnus.com>
2185
2186 * config/tc-mips.c (nopic_need_relax): Allow for the
2187 .sdata.foo sections generated by -fdata-sections,
2188 and for the .gnu.linkonce.s sections generated by C++.
2189
fd232ac8
JL
2190Thu Sep 23 07:13:45 1999 Jerry Quinn <jquinn@nortelnetworks.com>
2191
ce674324
JL
2192 * config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
2193 with cleaner code using completer prefixes. Add 'Y'.
2194
fd232ac8
JL
2195 * config/tc-hppa.c (pa_ip): Add parens to silence compiler.
2196
b1039fc4
JL
2197Wed Sep 22 09:37:19 1999 Jeffrey A Law (law@cygnus.com)
2198
66778679 2199 * config/tc-hppa.c (pa_ip): Avoid ANSI specific initialization.
b1039fc4
JL
2200 (pa_ip, case 'm'): Failure to get a CBIT specifier just means the
2201 insn does not match and we should try the next insn in the table.
2202
913f265c
NC
22031999-09-22 Nick Clifton <nickc@cygnus.com>
2204
2205 * config/tc-arm.c (MULTI_SET_PSR): Rename to LDM_TYPE_2_OR_3.
2206
54af6ff6
JL
2207Mon Sep 20 04:01:41 1999 Jeffrey A Law (law@cygnus.com)
2208
2209 * config/tc-hppa.c (pa_ip): Fix thinkos in recent cleanup
2210 of PA2.0 support.
2211
4cc782b5
ILT
22121999-09-19 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
2213
2214 * config/tc-i386.c (md_shortopts): Check OBJ_MAYBE_ELF as well as
2215 OBJ_ELF. If ELF, add "sq".
2216 (md_parse_option): If ELF, ignore -s and -q.
2217 (md_show_usage): Mention ELF options.
2218
6be78360
JL
2219Sun Sep 19 10:43:31 1999 Jeffrey A Law (law@cygnus.com)
2220
eaa15ab8 2221 * config/tc-hppa.c (pa_ip): Handle 'J', 'K' and 'cc'
65fab780
JL
2222 operands.
2223
71823da4
JL
2224 * config/tc-hppa.c (pa_ip); Handle "fe", and 'cJ'.
2225
61dd1d31
JL
2226 * config/tc-hppa.c (pa_ip): Handle 'd', '#' and 'cq'.
2227
1cf6ae67
JL
2228 * config/tc-hppa.c (struct pa_it): New field "trunc".
2229 (pa_ip): Hadnle 'h', 'm', '=', '{', and '_' operands.
2230 (pa_parse_ftest_gfx_completer): New function
2231 (pa_parse_fp_cnv_format): New function.
2232
77c02e18
JL
2233 * config/tc-hppa.c (pa_ip): Handle 'X' operand.
2234 (md_apply_fix): Handle 22bit pc-rel branches.
2235
629d9417
JL
2236 * config/tc-hppa.c (pa_ip): Handle 'B' operand.
2237
dbe2f9ee
JL
2238 * config/tc-hppa.c (pa_ip): Handle 'L' and 'M' operands.
2239
3db6e6bd
JL
2240 * config/tc-hppa.c (pa_ip): Handle 'l' operand.
2241
6be78360
JL
2242 * config/tc-hppa.c (pa_ip): Handle 'g' operand.
2243
e061d86f
JL
2244Sat Sep 18 12:13:28 1999 Jeffrey A Law (law@cygnus.com)
2245
66778679
RH
2246 * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
2247 (pa_ip): Handle 'fX'.
e061d86f 2248
7acbfc6b
JL
2249Fri Sep 17 11:57:34 1999 Jeffrey A Law (law@cygnus.com)
2250
2251 * config/tc-hppa.c (pa_build_unwind_subspace): Do not build
2252 unwinds unless the function is in the text space.
2253 (pa_type_args): Set BSF_FUNCTION for an exproted data symbol.
2254
2d93dcc4
JL
2255Wed Sep 15 05:14:32 1999 Jeffrey A Law (law@cygnus.com)
2256
b52c78b8
JL
2257 * config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
2258 (md_assemble): To here. Tweak address generation.
2259
2d93dcc4
JL
2260 * config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF. Declare
2261 debug_line.
2262 (md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
2263 (md_assemble): Call dwarf2_where for OBJ_ELF.
2264 (pa_ip): Call dwarf2_gen_line_info for OBJ_ELF.
2265 (pa_end_of_source): New function.
2266 * tc-hppa.h (md_end): Define for OBJ_ELF.
2267
6d83c84b
MM
22681999-09-14 Michael Meissner <meissner@cygnus.com>
2269
2270 * configure.in (Canonicalization of target names): Remove adding
2271 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
2272 generates $ac_config_sub with a ${CONFIG_SHELL} already.
2273 * configure: Regenerate.
2274
41fd319a
ILT
22751999-09-14 Donn Terry <donn@interix.com>
2276
2277 * config/te-interix.h (GLOBAL_OFFSET_TABLE_NAME): Define.
2278
795a7704
AM
22791999-09-13 Alan Modra <alan@spri.levels.unisa.edu.au>
2280
2f66722d
AM
2281 * config/tc-i386.c (md_assemble): Handle "jmp/call constant" as a
2282 pc-relative jmp/call to an absolute symbol.
2283 (md_apply_fix3): When OBJ_ELF, don't add the values in twice for
2284 absolute section symbols.
2285
795a7704
AM
2286 * config/tc-i386.c (md_assemble): Correct frag_var size. Tidy
2287 jump handling code and comments.
2288
c0c949c7
ILT
22891999-09-12 Ian Lance Taylor <ian@zembu.com>
2290
2291 * config/tc-i386.c (md_apply_fix3): Add horrible adjustments to
2292 the value if TE_PE and a global defined symbol.
2293
e723ef7c
ILT
22941999-09-11 Ian Lance Taylor <ian@zembu.com>
2295
2296 * write.c (dump_section_relocs): Call print_symbol_value_1 to
2297 print the symbol, rather than printing it here.
2298
fa16d387
ILT
22991999-09-11 Donn Terry <donn@interix.com>
2300
d33e1d24
ILT
2301 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
2302 BFD_RELOC_RVA relocations.
2303
18dc2407
ILT
2304 * config/tc-i386.c (md_undefined_symbol): Compare the name against
2305 the macro GLOBAL_OFFSET_TABLE_NAME, rather than assuming that it
2306 starts with "_G".
2307
945a1a6b
ILT
2308 * write.c (write_relocs): Call SET_SECTION_RELOCS if it is
2309 defined.
2310 * config/obj-coff.h (SET_SECTION_RELOCS): Define.
2311 * doc/internals.texi (Object format backend): Document
2312 SET_SECTION_RELOCS.
2313
79d292aa
ILT
2314 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
2315 relocations against global symbols if TE_PE.
2316
7a6284c4
ILT
2317 * config/obj-coff.c (obj_coff_ident): Add BFD_ASSEMBLER version.
2318 (obj_pseudo_table): Always handle ".ident" with obj-coff_ident.
2319
8828d862
ILT
2320 * config/obj-coff.c (coff_frob_symbol): Prohibit weak common
2321 symbols.
2322
9690c54d
ILT
2323 * config/obj-coff.c (obj_coff_endef): Don't merge labels, or
2324 symbols which do not have a constant value, or tags with
2325 non-tags. Remove the symbol from the list before adding it at the
2326 end.
2327
23dab925
ILT
2328 * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Handle .ef
2329 C_FCN symbol differently if TE_PE.
2330 (obj_coff_line) [BFD_ASSEMBLER]: Always use the line number which
2331 appears in the pseudo-op, rather coff_line_base which is only set
2332 for a .bf symbol.
2333
28428223
ILT
2334 * config/obj-coff.c (obj_coff_loc): New static function.
2335 (obj_pseudo_table): Add "loc".
2336
e8a3ab75
ILT
2337 * config/obj-coff.c (add_lineno): Check that the line number is
2338 positive.
2339
2ab9b79e
ILT
2340 * config/atof-ieee.c (atof_ieee): Change what_kind to int.
2341 * config/atof-vax.c (flonum_gen2vax): Change format_letter to
2342 int.
2343 (md_atof): Return NULL rather than 0.
2344 * config/tc-i386.c (md_atof): Change type to int.
0561a208
ILT
2345 * expr.c (expr): Change first parameter to int.
2346 * config/obj-coff.c: Add declarations for static functions.
2347 (coff_frob_symbol): Use SYM_AUXENT.
2348 * config/tc-i386.h (flag_16bit_code): Don't declare.
2ab9b79e 2349
5881e4aa
ILT
2350 * config/obj-coff.c (obj_coff_section): Default to setting
2351 SEC_LOAD. Don't set SEC_DATA for 'w' modifier.
2352
e723ef7c
ILT
2353 * write.c (adjust_reloc_syms): Print adjusted fixup.
2354
fa16d387
ILT
2355 * expr.c (integer_constant): Correct too_many_digits calculation
2356 in base 10 case.
2357
13a830b6
AS
23581999-09-09 Andreas Schwab <schwab@suse.de>
2359
2360 * doc/c-arm.texi: Fix arguments of @var to not contain
2361 punctuation.
2362
325188ec
NC
23631999-09-08 Philip Blundell <pb@nexus.co.uk>
2364
3e87a760 2365 * config/tc-arm.c (s_thumb_set): Only support interworking for ELF
325188ec
NC
2366 and COFF targets.
2367 (md_parse_option): Only support -k flag for ELF and COFF targets.
2368
e7c1f43c
JL
2369Tue Sep 7 13:28:59 1999 Jeffrey A Law (law@cygnus.com)
2370
2371 * config/tc-hppa.c (pa_ip): Put strict register checks before
2372 call to pa_parse_number.
2373
4964086a
JL
2374 * config/tc-hppa.c (pa_ip): Support 'Z' argument.
2375
c4bf532f
ILT
23761999-09-06 Ian Lance Taylor <ian@zembu.com>
2377
2378 * config/obj-coff.c: Add ATTRIBUTE_UNUSED as needed for
2379 BFD_ASSEMBLER code.
2380
a33132fd
ILT
23811999-09-06 Donn Terry <donn@interix.com>
2382
2383 * as.c (perform_an_assembly_pass): Set SEC_DATA for data_section.
2384
0f4f8b56
JL
2385Mon Sep 6 04:26:56 1999 Jeffrey A Law (law@cygnus.com)
2386
2387 * config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
2388 candidate instruction. Require registers for register arguments
2389 when in strict mode. Require assemble-time constants for
2390 constants when in strict mode.
2391 (pa_get_absolute_expression): Require a constant when in strict
2392 mode.
eaa15ab8 2393
d3388653
NC
23941999-09-06 Nick Clifton <nickc@cygnus.com>
2395
2396 * config/tc-m32r.c (md_longopts): Fix value for -Wnuh.
2397
041dd5a9
ILT
23981999-09-04 Steve Chamberlain <sac@pobox.com>
2399
2400 * config/tc-pj.c: New file, supports picoJava in ELF.
2401 * config/tc-pj.h: Ditto.
2402 * configure.in (pjl*, pj*): New targets.
2403 * Makefile.am: Rebuild dependencies.
2404 (CPU_TYPES): Add pj.
2405 (TARGET_CPU_CFILES): Add config/tc-pj.c.
2406 (TARGET_CPU_HFILES): Add config/tc-pj.h.
2407 * doc/c-pj.texi: New file.
2408 * doc/as.texinfo: Add some PJ specifics.
2409 * doc/all.texi: Add PJ to the list of all architectures, sort them
2410 all alphabetically.
2411 * doc/Makefile.in (CPU_DOCS): Add c-pj.texi.
2412 * configure, Makefile.in, doc/Makefile.in: Rebuild.
2413
4ca72d38
AM
24141999-09-02 Alan Modra <alan@spri.levels.unisa.edu.au>
2415
2416 * config/obj-multi.h: Include obj-elf.h if OBJ_MAYBE_ELF. Reformat.
2417 (obj_frob_file): Test for null pointer.
2418 (OBJ_COPY_SYMBOL_ATTRIBUTES): Here too.
2419 (OBJ_PROCESS_STAB): And here.
2420 (elf_obj_sy): Remove
2421
2422 * config/obj-elf.h: #ifndef everything defined in obj-multi.h,
2423 except OBJ_PROCESS_STAB, which we #undef for ecoff.
2424 (elf_obj_sy): Remove #ifndef OBJ_SYMFIELD_TYPE.
2425
2426 * config/obj-coff.c (no_func): Remove.
2427 (coff_format_ops): Change occurrences of no_func to 0, as we test
2428 for 0 in obj-multi.h.
2429
2430 * configure.in: Enable bfd for i386-coff when primary target is
2431 bfd. Enable i386 elf,coff emulation support. Don't set
2432 USE_EMULATIONS=1 or te_file=multi unless there is more than one
2433 emulation to support.
2434 *configure: Regenerate.
2435
bcef92fa
NC
24361999-09-02 Nick Clifton <nickc@cygnus.com>
2437
2438 * config/tc-mcore.c (mcore_s_section): Do not dump literals if a
2439 .section .line directive is encountered.
2440
cdf82bcf
NC
24411999-09-01 Nick Clifton <nickc@cygnus.com>
2442
5856c19a 2443 * config/tc-arm.c (md_section_align): Do not align sections in ELF
3e87a760 2444 format.
5856c19a 2445
cdf82bcf
NC
2446 * as.c (show_usage): Add --gdwarf2 to list of options displayed.
2447 * as.texinfo: Document --gdwarf2 command line option.
2448 Add additional documentation of ARM command line switches.
2449
af6bdddf
AM
24501999-08-30 Alan Modra <alan@spri.levels.unisa.edu.au>
2451
2452 * config/tc-i386.c (i386_intel_memory_operand): Combine
2453 i386_is_reg and parse_register calls. Remove END_STRING_AND_SAVE
2454 and RESTORE_END_STRING around parse_register calls.
2455 (i386_operand): Here too.
2456 (i386_is_reg): Remove.
2457 (parse_register): Move as_bad calls from within this function to
2458 callers.
2459
5f47d35b
AM
24601999-08-29 Alan Modra <alan@spri.levels.unisa.edu.au>
2461
2462 Based on a patch from H.J. Lu <hjl@gnu.org>
2463 * config/tc-i386.c (parse_register): Handle FP regs specially.
2464 (md_begin): Remove '(' and ')' from register_chars.
2465
1174497c
DE
24661999-08-29 Doug Evans <devans@casey.cygnus.com>
2467
2468 * config/tc-m32r.c (md_parse_option): Delete unrecognized option
2469 error message (done elsewhere).
2470
17d9105c
JL
2471Sat Aug 28 01:23:11 1999 Jeffrey A Law (law@cygnus.com)
2472
2473 * config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers.
2474
9ecc05f0
JL
2475Sat Aug 28 00:26:26 1999 Jerry Quinn <jquinn@nortelnetworks.com>
2476
66778679 2477 * config/tc-hppa.c (pa_ip): Replace 'f' by 'v'. Prefix float register
97e1581b
JL
2478 args by 'f'.
2479
9e4f2d3a
JL
2480 * config/tc-hppa.c (pa_ip): Add args q, %, and |.
2481
680ef6de
JL
2482 * config/tc-hppa.c (pa_ip): Absorb white space in instructions
2483 between args.
2484 Add new completers. Fix bug in 64 bit condition handling.
2485
413c94ba
JL
2486 * config/tc-hppa.c (pa_ip): Add completer codes 'a', 'ch', 'cH',
2487 'cS', and 'c*'.
2488
28252e61
JL
2489 * config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'.
2490
a97685e9
JL
2491 * config/tc-hppa.c (pa_ip): Add cases for '.', '~'. '$'. and '!'
2492
3e87a760 2493 * config/tc-hppa.c (pa_ip): Add case for 'I'.
9ecc05f0 2494
cb30237e
NC
24951999-08-27 Jim Wilson <wilson@cygnus.com>
2496
2497 * dwarf2dbg.c (MAX_SPECIAL_ADDR_DELTA): Correct typo in comment.
2498 (struct ls): Add frag field. Initialize it to zero.
2499 (out_end_sequence): New local text_frag. Set it while in text section.
2500 Replace address check with frag check. Set ls.frag to text_frag if
2501 out_set_addr called.
2502 (dwarf2_gen_line_info): Add explanatory comment. New local saved_frag.
2503 Set it before switching sections. Replace address check with frag
2504 check. Set ls.frag to saved_frag if out_set_addr called.
2505
09a798ea
NC
25061999-08-26 David Mosberger <davidm@hpl.hp.com>
2507
66778679 2508 * dwarf2dbg.c (out_end_sequence): If address changed, directly
09a798ea
NC
2509 output "advance_pc" opcode instead of calling gen_addr_line().
2510 The latter has the undesired side-effect of creating a new row
3e87a760 2511 in the debug line info matrix.
09a798ea 2512
e1c05f12
NC
25131999-08-26 Jim Wilson <wilson@cygnus.com>
2514
2515 * dwarf2dbg.c (out_end_sequence): Correct comments. Set last to
2516 ls.last_filename if last is less than zero. Set ls.last_filename
2517 when allocating new entry.
2518 (dwarf2_gen_line_info): Save seg and subseg info before subseg_new
2519 call.
2520
b23bac36
AM
25211999-08-20 Alan Modra <alan@spri.levels.unisa.edu.au>
2522
2523 * config/tc-i386.c (i386_index_check): Fix the displacement size
2524 when INFER_ADDR_PREFIX.
2525
50f4163f
NC
25261999-08-18 Nick Clifton <nickc@cygnus.com>
2527
2528 * config/tc-arm.c (md_apply_fix3): If an offset is invalid,
2529 display its value.
2530
f589a541
ILT
25311999-08-17 Ian Lance Taylor <ian@zembu.com>
2532
2533 * config/tc-ppc.c (md_assemble): Trim @ha constant to 16 bits, to
2534 handle 0xffffNNNN constants correctly.
2535
11450271
NC
25361999-08-16 Nick Clifton <nickc@cygnus.com>
2537
2538 * config/tc-arm.c (do_ldst): Look for register conflicts on stores
2539 as well as loads.
2540
276b1dc2
NC
25411999-08-13 Nick Clifton <nickc@cygnus.com>
2542
2543 * config/tc-arm.c (validate_offset_imm): Work on unsigned values.
2544 (md_apply_fix3): Always pass positive values to
2545 validate_offset_imm.
2546
ae5ad4ad
NC
25471999-08-12 Nick Clifton <nickc@cygnus.com>
2548
2549 * config/tc-arm.c (skip_whitespace): New macro.
2550 Formatting tidy ups.
3e87a760 2551
ae5ad4ad
NC
2552 (md_apply_fix3): Store relocation offset in addend for ELF based
2553 relocs.
2554 (arm_force_relocation): Always generate relocs for Thumb function
3e87a760
AM
2555 calls.
2556
bf6d3895
AM
25571999-08-11 Alan Modra <alan@spri.levels.unisa.edu.au>
2558
2559 * config/tc-i386.c (md_assemble): Remove dead code. intel_syntax
2560 LONG_DOUBLE_MNEM_SUFFIX floating point is done in opcode/i386.h
2561
46031ca9
JL
2562Tue Aug 10 12:58:31 1999 Jeffrey A Law (law@cygnus.com)
2563
b100be66
JL
2564 * config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
2565 flags for the unwind subspace.
2566
46031ca9
JL
2567 * config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
2568 (pa_build_unwind_subspace): Remove #if 0 wrapper. Select a
2569 suitable relocation based on the size of the target's pointer.
2570 Always Use subsegment zero for the unwinders.
2571 (pa_level): Handle "2.0w".
2572
65172ab8 2573Mon Aug 9 20:02:22 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
0825afba
JR
2574
2575 * config/tc-d30v.c (write_2_short): Don't group repeat instructions
2576 with the following instruction unless this was specified.
2577
1a1ae23e
ILT
25781999-08-09 Ian Lance Taylor <ian@zembu.com>
2579
2580 * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 for
2581 certain sections, to match BFD changes.
2582
81afc846
ILT
25831999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
2584
2585 * Makefile.am (noinst_SCRIPTS): Change .gdbinit to $(GDBINIT).
2586 (EXTRA_SCRIPTS): Define to keep automake happy.
1a1ae23e 2587 * Makefile.in: Rebuild.
81afc846 2588
04ad1543
ILT
25891999-08-08 Ian Lance Taylor <ian@zembu.com>
2590
2591 * Makefile.am: Rename .dep* files to DEP*.
2592 (MKDEP): Rename from DEP. Change all uses. Use $${srcdir} rather
2593 than $(srcdir). Rename TCDEP targets to DEPTC. Rename OBJDEP
2594 targets to DEPOBJ.
2595 * Makefile.in: Rebuild.
2596
1eb7027c
RH
25971999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
2598
2599 * config/tc-sparc.c (sparc_ip): Allow assembly of %lo()+%reg.
2600
2dcc60be
ILT
26011999-08-08 Ian Lance Taylor <ian@zembu.com>
2602
46eec08e
ILT
2603 * Makefile.am: Change all uses of itbl-test-ops to itbl-tops to
2604 avoid problems on DOS filesystems.
2605 * Makefile.in: Rebuild.
2606
2dcc60be
ILT
2607 * doc/as.texinfo (Section): Document 's' flag for COFF version.
2608
26091999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
2610
2611 * config/obj-coff.c (obj_coff_section): Handle 's' (shared)
2612 section flag.
2613
76a27922
ILT
26141999-08-08 Ian Lance Taylor <ian@zembu.com>
2615
2616 * configure.in: Define and substitute GDBINIT. Change AC_OUTPUT
81afc846 2617 line to create ${GDBINIT} rather than .gdbinit.
76a27922
ILT
2618 * configure, Makefile.in, doc/Makefile.in: Rebuild.
2619
0741736b
JL
2620Fri Aug 6 12:12:44 1999 Jeffrey A Law (law@cygnus.com)
2621
2622 * config/tc-hppa.c (pa_ip, case '?'): Add missing break.
2623
9a913dfb
JL
2624Fri Aug 6 09:46:35 1999 Jerry Quinn <jquinn@nortelnetworks.com>
2625
2626 * config/tc-hppa.c (pa_ip): Add 64 bit condition completers.
2627
a1f2d742
ILT
26281999-08-06 Jakub Jelinek <jj@ultra.linux.cz>
2629
2630 * config/tc-sparc.h (tc_fix_adjustable): Fix check for PIC local
2631 non-adjustable symbols.
2632
55a914bc
JL
2633Thu Aug 5 16:52:51 1999 Jerry Quinn <jquinn@nortelnetworks.com>
2634
2635 * config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix.
2636
336f7c70 2637Thu Aug 5 23:05:56 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
5fc44b2d
JR
2638
2639 * config/tc-sh.c (md_assemble): Call as_bad when there are excess
2640 operands.
2641
9750fcc5
ILT
26421999-08-05 Donn Terry <donn@interix.com>
2643
2644 * config/te-interix.h: New file.
2645 * configure.in (i386-*-interix*): New target.
2646 * configure: Rebuild.
2647
39ba5561
JL
2648Wed Aug 4 13:12:17 1999 Jeffrey A Law (law@cygnus.com)
2649
2650 * config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
2651 selectors for ELF too.
2652 (selector_table): Add "ltp" and "rtp" selectors.
2653
eecb386c
AM
26541999-08-04 Alan Modra <alan@spri.levels.unisa.edu.au>
2655
2656 * config/tc-i386.c (i386_operand): No need to change
2657 operand_string pointer in segment reg case before goto
2658 do_memory_reference. Initialise displacement_string_start and
2659 displacement_string_end after do_memory_reference label.
2660 (i386_index_check): Add operand_string param, and print error
2661 message on failure here.
2662 (i386_intel_memory_operand): Instead of here.
2663 (i386_operand): And here.
2664 (INFER_ADDR_PREFIX): Enable.
2665
2666 * doc/c-i386.texi (i386-16bit): Document .code16gcc.
2667
2668 * config/tc-i386.h (DefaultSize): Define. Renumber following
2669 opcode_modifier defines.
2670
2671 From Etienne Lorrain <etienne.lorrain@ibm.net>
2672 * config/tc-i386.c (stackop_size): New variable.
2673 (set_16bit_code_flag): Clear it here.
2674 (set_16bit_gcc_code_flag): New function.
2675 (md_pseudo_table): Add "code16gcc" entry.
2676 (md_assemble): Set i.suffix for insns with DefaultSize modifier.
2677
f173e82e
ILT
26781999-08-03 Ian Lance Taylor <ian@zembu.com>
2679
a04b544b
ILT
2680 * config/obj-coff.c (coff_frob_symbol): Always update set_end with
2681 next_set_end even if the end symbol is being discarded.
2682
2683 * gasp.c: Add ATTRIBUTE_UNUSED as needed for non-BFD_ASSEMBLER.
2684 * output-file.c, symbols.c, config/tc-i386.c: Likewise.
2685 * config/obj-coff.c: Likewise.
2686 (seg_info_type): Remove.
2687 (seg_info_off_by_4): Change to array of segT.
2688 (s_get_segment): Adjust accordingly.
2689 (obj_pseudo_table): Fully initialize sentinel entry.
2690
f173e82e
ILT
2691 * config/tc-mips.c (append_insn): Correct INSN_SYNC test. From
2692 Ralf Baechle <ralf@uni-koblenz.de>.
2693
c3332e24
AM
26941999-08-03 Etienne Lorrain <etienne.lorrain@ibm.net>
2695
2696 * config/tc-i386.c (f16_3): New. Fixes 16 bit 3 byte nop.
2697
26981999-08-03 Alan Modra <alan@spri.levels.unisa.edu.au>
2699
24eab124
AM
2700 * config/tc-i386.c: Indentation and white space changes.
2701 (i386_index_check): New function. Add INFER_ADDR_PREFIX code, but
2702 don't enable it by default.
2703 (i386_intel_operand): Remove redundant prototype.
2704 Move check on number of memory operands, and i.mem_operands++
2705 (i386_intel_memory_operand): To here.
2706 Remove i386_immediate code from here. Remove special case code
2707 for input and output using (%dx). Remove base/index checks and
2708 call i386_index_check instead. Save initial operand_string
2709 argument for error message.
2710 (i386_operand): Remove redundant prototype. Move base/index
2711 checks to i386_index_check.
2712 (i386_displacement): Move intel mode check for non-zero
2713 i.disp_operand
2714 (i386_intel_memory_operand): To here.
c3332e24 2715
6d8809aa
RH
27161999-07-30 Jakub Jelinek <jj@ultra.linux.cz>
2717
2718 * config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
2719 (sparc_ip): Warn if %g2 or %g3 register is used and not covered
2720 by .register pseudo-op if -64 and --no-undeclared-regs.
2721 (s_register, sparc_adjust_symtab): New functions.
2722 * config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
2723 Declare sparc_adjust_symtab as tc_adjust_symtab.
2724 * doc/c-sparc.texi: Add description of #ignore special literal
2725 for .register pseudo-op.
2726
c8d259f7
CM
27271999-07-30 Catherine Moore <clm@cygnus.com>
2728
eaa15ab8 2729 * config/tc-arm.c (tc_gen_reloc): Record the vtable entry in
c8d259f7
CM
2730 the relocation's section offset.
2731
b77ad1d4
AM
27321999-07-29 Alan Modra <alan@spri.levels.unisa.edu.au>
2733
2734 * write.c (fixup_segment): Fix generic error check overflow test.
2735
2736 * config/tc-i386.c (pe): Change %d to %ld, %x to %lx, and cast
2737 X_add_number to long.
2738
b53fcc20
JL
2739Wed Jul 28 02:04:24 1999 "Jerry Quinn" <jquinn@nortelnetworks.com>
2740
2741 * config/tc-hppa.c (pa_ip): Add 'J' and 'K' code
3e87a760 2742 processing.
b53fcc20 2743
d2e71411
ILT
27441999-07-27 Ian Lance Taylor <ian@zembu.com>
2745
2746 * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
2747 VTABLE relocations.
2748
e9f56b1d
ILT
27491999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
2750
2751 * config/te-go32.h (COFF_LONG_SECTION_NAMES): Define.
1a39f480 2752
1a39f480
ILT
2753 * configure.bat: Remove; obsolete.
2754 * config/go32.cfg: Likewise.
2755
29fe79d3
ILT
27561999-07-21 Brad M. Garcia <bgarcia@fore.com>
2757
2758 * configure.in (i386-*-vxworks*): New target.
2759 * configure: Rebuild.
2760
e06510e6
RH
27611999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
2762
2763 * doc/c-sparc.texi: Document .register and .nword pseudo-ops.
2764
dabe3bbc
RH
27651999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
2766
2767 * config/tc-sparc.c (sparc_ip): Allow OLO10 relocations
2768 on -64 and not pic.
2769 (output_insn): Put OLO10's secondary addend into tc_fix_data.
2770 (md_apply_fix3): Handle BFD_RELOC_SPARC_OLO10.
2771 (tc_gen_reloc): Return two relocs for OLO10, LO10 and SPARC13.
2772 * config/tc-sparc.h (RELOC_EXPANSION_POSSIBLE,
2773 MAX_RELOC_EXPANSION): Define.
2774 (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
2775
b4cac588
AM
27761999-07-16 Alan Modra <alan@spri.levels.unisa.edu.au>
2777
2778 * config/tc-i386.c (intel_float_operand): Add prototype, make static.
2779 (md_assemble): Localize *exp variable to if (fake_zero_displacement)
2780 block. Print a warning if an 8-bit or 16-bit constant
2781 displacement or immediate is truncated on output.
2782 (i386_immediate): Ensure Imm16 is always legal for a 16-bit mode
2783 immediate.
2784 (i386_operand): Disallow immediate jump absolute operand.
2785
966ed0b4
ILT
27861999-07-15 Ian Lance Taylor <ian@zembu.com>
2787
0ed15843
ILT
2788 * configure.in: Bump version number to 2.9.5.
2789 * configure: Rebuild.
2790
966ed0b4
ILT
2791 * dwarf2dbg.c (dwarf2_gen_line_info): Don't assume that long long
2792 or %llx work.
2793
67f1cff0
JL
2794Thu Jul 15 02:45:30 1999 Jeffrey A Law (law@cygnus.com)
2795
2796 * config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
2797 (cons_fix_new_hppa): Derive size of fixup from size of the object.
2798
2f992c04
NC
27991999-07-14 Philip Blundell <pb@nexus.co.uk>
2800
2801 * symbols.c (dollar_label_name): Prepend LOCAL_LABEL_PREFIX if it
2802 is defined.
2803 * config/tc-arm.h (LOCAL_LABEL_PREFIX): Define to '.' for ELF.
2804
2805 * config/tc-arm.c (md_begin): Set F_SOFTFLOAT in the output file
2806 if -mno-fpu was given.
2807 (tc_gen_reloc): Fix typo. Delete bogus code related to GOTPC
2808 relocs.
2809 (cons_fix_new_arm): Remove misleading comments.
2810
14ad458a
ILT
28111999-07-14 Ian Lance Taylor <ian@zembu.com>
2812
2813 * write.c (cvt_frag_to_fill): Use frag file and line in rs_org
2814 error message.
2815 (relax_segment): Likewise. After giving a rs_org error, convert
2816 the frag to rs_align to avoid cascading errors.
2817
36823076
AS
28181999-07-12 Andreas Schwab <schwab@suse.de>
2819
2820 * config/tc-m68k.c: Add some ATTRIBUTE_UNUSED.
2821
ab9da554
ILT
28221999-07-11 Ian Lance Taylor <ian@zembu.com>
2823
2824 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
2825 as appropriate. Fill in structure initializations. Add variable
2826 initializations. Add casts.
2827 * dwarf2dbg.c (print_stats): Change i to size_t.
2828 * listing.c (listing_listing): Change list_line to unsigned int.
2829
e0accf0c
ILT
28301999-07-10 Ian Lance Taylor <ian@zembu.com>
2831
2832 * config/tc-ppc.h (tc_fix_adjustable) [OBJ_ELF]: Call S_IS_LOCAL
2833 rather than checking for \001 and \002 in symbol name.
2834 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: Likewise.
2835
7d4ce8a9
JL
2836Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
2837
2838 * configure.in (hppa*-linux-gnu*): New target.
2839 * configure: Rebuilt.
2840
5395a469
NC
28411999-07-08 Nick Clifton <nickc@cygnus.com>
2842
3e87a760 2843 * doc/c-arm.texi (ARM Directives): Document .thumb_set directive.
5395a469 2844
cac58fa6
NC
28451999-07-07 Nick Clifton <nickc@cygnus.com>
2846
5395a469 2847 * config/tc-v850.c (v850_comm): Use symbol_get_obj() rather than
cac58fa6
NC
2848 accessing symbolP directly.
2849
03b36ee1
JL
2850Tue Jul 6 10:41:42 1999 Jeffrey A Law (law@cygnus.com)
2851
2852 * config/tc-hppa.h (tc_frob_symbol): Always punt "$global$" symbol
2853 for ELF.
2854
49a5575c
NC
28551999-07-05 Nick Clifton <nickc@cygnus.com>
2856
2857 * config/tc-arm.c (ARM_EXT_V5): Define.
2858 (ARM_ARCH_V5, ARM_ARCH_V5T): Define.
2859 (md_begin): Detect ARM v5 architectures.
2860 (md_parse_option): Accept arm v5 specification.
2861 (md_show_usage): Documment -marmv5 switch.
2862
2863 * doc/c-arm.texi: Document -marmv5 command line option.
3e87a760 2864
49a5575c
NC
2865 * config/tc-arm.c (do_adrl): New function. Implement ADRL pseudo
2866 op.
2867 (validate_immediate_twopart): New function. Determine if a
2868 constant can be computed by two ADD instructions.
2869 (output_inst): Remove its command line parameter - it was never
2870 used.
2871 (md_apply_fix3): Support BFD_RELOC_ARM_ADRL_IMMEDIATE, used to
2872 implememt the ADRL pseudo op.
2873 (tc_gen_reloc): Generate a suitable error message if an ADRL
2874 instruction tries to generate a real reloc.
2875
2876 * doc/c-arm.texi: Document NOP, ADR and ADRL pseudo ops.
2877
09ecf0ba
JL
2878Thu Jul 1 15:33:10 1999 Jeffrey A Law (law@cygnus.com)
2879
2880 * config/tc-hppa.c (pa_ip): Convert the opcode and all completers
2881 into lower case.
2882
264d6861
ILT
28831999-06-27 H.J. Lu <hjl@gnu.org>
2884
2885 * subsegs.c (subseg_text_p): Use 1/0 instead of true/false for
2886 non BFD_ASSEMBLER case.
2887
827c0149
ILT
28881999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
2889
2890 * config/obj-coff.c (obj_coff_section): Mark writable sections as
2891 data.
2892
a340d270
RH
28931999-06-26 David Mosberger <davidm@hpl.hp.com>
2894
2895 * dwarf2dbg.c (dwarf2_gen_line_info): Don't call
2896 out_end_sequence() when the address decreases due to a new frag.
2897 (gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
2898 numbering starts with 1.
2899
16b93d88
NC
29001999-06-23 Nick Clifton <nickc@cygnus.com>
2901
2902 * config/tc-mcore.c (md_pseudo_table): Add .comm for ELF and allow
2903 .section for COFF.
2904 (mcore_s_text): Call obj_elf_text for ELF target.
2905 (mcore_s_data): Call obj_elf_data for ELF target.
2906 (mcore_s_section): No longer ELF specific. Call obj_coff_section
2907 for COFF target.
2908 (mcore_s_bss): New function: Dump literal table before changing
2909 sections.
2910 (mcore_s_comm): New function: Dump literal table before changing
2911 sections.
3e87a760 2912
16b93d88
NC
2913 * config/obj-elf.c (obj_elf_common, obj_elf_data, obj_elf_text):
2914 No longer static functions.
2915 * config/obj-elf.h (obj_elf_common, obj_elf_data, obj_elf_text):
2916 Provide prototypes for these functions.
2917
fed9b18a
ILT
29181999-06-22 Ian Lance Taylor <ian@zembu.com>
2919
be2acf27
ILT
2920 * subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
2921 a list of names, to try obj_segment_name, and to try abbreviated
2922 names when using COFF without long section names.
2923
7dcc9865
ILT
2924 * config/tc-alpha.c: More use of symbol accessor functions.
2925 * config/tc-arc.c: Likewise.
2926 * config/tc-d30v.c: Likewise.
2927 * config/tc-fr30.c: Likewise.
2928 * config/tc-i860.c: Likewise.
2929 * config/tc-m88k.c: Likewise.
2930 * config/tc-mcore.c: Likewise.
2931 * config/tc-ns32k.c: Likewise.
2932 * config/tc-sparc.c: Likewise.
2933 * config/tc-v850.c: Likewise.
2934
a77f5182
ILT
2935 * config/tc-arc.c (get_arc_exp_reloc_type): Change uses of
2936 sy_value with appropriate accessor functions.
2937 * config/tc-arm.c (md_apply_fix3): Likewise.
2938 * config/tc-d10v.c (AT_WORD_P): Likewise.
2939 * config/tc-v850.c (reg_name_search): Likewise.
2940
fed9b18a
ILT
2941 * config/obj-ecoff.c (obj_ecoff_set_ext): Change uses of bsym to
2942 use symbol_get_bfdsym instead.
2943 * config/tc-ppc.c (md_assemble): Likewise.
2944 * config/tc-v850.c (v850_comm): Likewise.
2945
310b5aa2
ILT
29461999-06-22 Jonathan Larmour <jlarmour@cygnus.co.uk>
2947
2948 * config/tc-arc.c (tc_gen_reloc): Use symbol_get_bfdsym to get at
2949 the symbol, rather than accessing the bsym member.
2950 * config/tc-d10v.c (tc_gen_reloc): Likewise.
2951 * config/tc-d30v.c (tc_gen_reloc): Likewise.
2952 * config/tc-mcore.c (tc_gen_reloc): Likewise.
2953 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
2954 * config/tc-mn10300.c (tc_gen_reloc): Likewise.
2955 * config/tc-ns32k.c (tc_gen_reloc): Likewise.
2956 * config/tc-tic30.c (tc_gen_reloc): Likewise.
2957 * config/tc-v850.c (tc_gen_reloc): Likewise.
2958
9cb8e75e
JL
2959Mon Jun 21 16:45:19 1999 Jeffrey A Law (law@cygnus.com)
2960
2961 * tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
2962 (hppa_gen_reloc_type): Conditionalize on BFD64.
2963 (tc_gen_reloc): Re-enable ELF relocations.
2964 * tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
2965
3d103319
ILT
29661999-06-21 Ian Lance Taylor <ian@zembu.com>
2967
2968 * config/tc-arm.c (ldst_extend): Add parentheses to avoid
2969 warning.
2970 (do_ldst): Move assignment out of if condition.
2971 (md_apply_fix3): Add casts to avoid printf format warnings. Add
2972 parentheses to avoid warning.
2973
776b24b4
NC
29741999-06-21 Nick Clifton <nickc@cygnus.com>
2975
155f0fe7
NC
2976 * config/tc-arm.c (arm_adjust_symtab): Use symbol_get_bfdsym()
2977 macro to get at the BFD symbol associated with a GAS symbol.
776b24b4 2978
809ffe0d
ILT
29791999-06-19 Ian Lance Taylor <ian@zembu.com>
2980
2981 * config/tc-ppc.c: Update for symbol handling changes.
2982 * config/obj-coff.c: Likewise.
2983
49863f82
JL
2984Fri Jun 18 14:34:18 1999 Jeffrey A Law (law@cygnus.com)
2985
2986 * tc-hppa.c: General cleanups of ELF support. No more spaces
2987 and subspaces for ELF.
2988 (GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
2989 (GDB_STRINGS_SUBSPACE_NAME): Likewise.
2990 (GDB_SYMBOLS_SUBSPACE_NAME): Likewise
2991 (UNWIND_SECTION_NAME): Likewise.
2992 (space/subspace related structures): Conditionalize definitions
2993 on OBJ_SOM.
2994 (space/subspace directives and support routines): Conditionalize
2995 definitions and references/uses on OBJ_SOM.
2996 (label_symbol_struct): For ELF, track the symbol's segment. For
2997 SOM track its space.
2998 (pa_define_label, pa_undefine_label, pa_get_label): Corresponding
2999 changes.
3000 (USE_ALIASES): Kill for both SOM & ELF.
3001 (pa_def_subspaces, pa_def_spaces): Corresponding changes.
3002 (pa_space, pa_subspace): Corresponding changes.
3003 (pa_spaces_begin): Corresponding chagnes.
3004 (md_begin): Do not muck around with space/subspace stuff for
3005 OBJ_ELF.
3006 (md_apply_fix): Temporarily disable argument relocation stuff
3007 for OBJ_ELF.
3008 (tc_gen_reloc): Temporarily disable relocation generation for
3009 OBJ_ELF
3010 (pa_build_unwind_subspace): Similarly.
3011
fed881b1
NC
30121999-06-16 Nick Clifton <nickc@cygnus.com>
3013
3014 * config/tc-arm.c (thumb_set): New pseudo op.
3015 (text, data, section): Override these pseudo ops with ARM
3016 specific versions.
3017 (s_thumb_set): New function: Perform the same as a .set pseudo
3018 op, but also mark the alias'ed symbol as being a Thumb
3019 function.
3020 (arm_s_text): New function: Perform the same as the .text
3021 pseudo op, but dump the literal pool before changing
3e87a760 3022 sections.
fed881b1
NC
3023 (arm_s_data): New function: Perform the same as the .data
3024 pseudo op, but dump the literal pool before changing
3e87a760 3025 sections.
fed881b1 3026 (arm_s_section): New function: Perform the same as the
3e87a760
AM
3027 .section pseudo op, but dump the literal pool before changing
3028 sections.
fed881b1
NC
3029 (arm_cleanup): Do not reset the current section before dumping
3030 the literal pool.
3031
0f94f4c8
NC
30321999-06-17 Nick Clifton <nickc@cygnus.com>
3033
2f3519a2
NC
3034 * config/tc-m32r.c (md_longopts): Fix OPTION_WARN_UNMATCHED and
3035 OPTION_NO_WARN_UNMATCHED entries.
3036 (md_parse_option): Generate a warning message if an unrecognised
3037 option is encountered.
3038
0f94f4c8
NC
3039 * config/tc-d10v.c (do_not_ignore_hash): New variable.
3040 (get_operands): When parsing an expression after an '@' symbol
3041 has been detected, do not ignore '#' symbols.
3042 (md_operand): Only ignore '#' symbols if do_not_ignore_hash is
3e87a760 3043 false.
0f94f4c8 3044
e4a86f6f
ILT
30451999-06-13 Ian Lance Taylor <ian@zembu.com>
3046
3047 From K. Richard Pixley <rich@noir.com>:
3048 * configure.in (ppc-*-vxworks*): New target.
3049 * configure: Rebuild.
3050
a8aed0fb
UD
30511999-06-12 Philip Blundell <philb@gnu.org>
3052
3053 * config/tc-arm.c (tc_gen_reloc): Fix handling of GOTPC relocs.
3054
7565ed77
ILT
30551999-06-13 Ian Lance Taylor <ian@zembu.com>
3056
3057 * write.c (adjust_reloc_syms): Rather than never reducing reloc
3058 which refer to symbols in linkonce sections, permit reducing the
3059 relocs if the symbol is local.
3060
b9e57a38
ILT
30611999-06-12 Ian Lance Taylor <ian@zembu.com>
3062
3063 * subsegs.c (subseg_text_p): New function.
3064 * as.h (subseg_text_p): Declare.
3065 * read.c (do_align): Use subseg_text_p to set the default fill.
3066 * write.c (subsegs_finish): Likewise.
3067 * config/obj-coff.c (write_object_file): Likewise.
3068 * config/tc-i386.h (md_maybe_text): Don't define.
3069 (md_do_align): Use subseg_text_p to set the default fill.
3070 * config/tc-m32r.c (m32r_do_align): Likewise.
3071 * config/tc-sh.c (sh_do_align): Likewise.
3072 * config/tc-sparc.h (md_do_align): Likewise.
3073
008960a5
ILT
30741999-06-12 David O'Brien <obrien@freebsd.org>
3075
3076 * configure.in: (i[3456]86-*-freebsd*): Now defaults to ELF.
3077 * configure: Rebuild.
3078
a1605869
ILT
30791999-06-12 Ian Lance Taylor <ian@zembu.com>
3080
d9ac5a3b
ILT
3081 * dwarf2dbg.c: Include elf/dwarf2.h with "", not <>.
3082 * Makefile.am: Rebuild dependencies.
3083 * Makefile.in: Rebuild.
3084
a1605869
ILT
3085 * config/tc-i386.c (i386_immediate): Remove unused label
3086 seg_unimplemented.
3087
3088 * struc-symbol.h: Put local_symbol code in ifdef BFD_ASSEMBLER.
3089 * symbols.c: Likewise.
3090 * config/obj-aout.c (obj_crawl_symbol_chain): Refer directly to
3091 sy_next field when taking address, rather than symbol_next.
3092
3093 * dwarf2dbg.c: Change bfd_vma to addressT and bfd_signed_vma to
3094 offsetT.
3095 (out_set_addr): Don't use BYTES_PER_ADDRESS. Instead, get the
3096 value from the output file architecture.
3097 (dwarf2_gen_line_info): Ifdef BFD_ASSEMBLER specific code.
3098 * dwarf2dbg.h: Change bfd_vma to addressT.
3099
a7cd1c22
ILT
31001999-06-11 Ian Lance Taylor <ian@zembu.com>
3101
3102 * dwarf2dbg.h: Use PARAMS in function declarations.
3103
76171f81
ILT
31041999-06-11 Martin Dorey <mdorey@madge.com>
3105
3106 * write.c (fixup_segment): Don't add symbol value for i960 ELF.
3107 * config/tc-i960.c (s_leafproc): Don't call tc_set_bal_of_cal if
3108 OBJ_ELF.
3109 (md_apply_fix): Simplify BFD_ASSEMBLER handling.
3110
9b4d630b
ILT
31111999-06-11 Ian Lance Taylor <ian@zembu.com>
3112
5865bb77
ILT
3113 * config/tc-i386.c (md_apply_fix3): Add default case to switch.
3114
9e7c96d9
ILT
3115 * config/tc-sparc.c (md_pseudo_table): Remove pushsection and
3116 popsection.
3117
1b50c718
ILT
3118 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
3119
1bf67e0d
ILT
3120 * read.c (read_a_source_file): Only declare inescape if
3121 QUOTES_IN_INSN.
3122
3123 * itbl-ops.c (itbl_disassemble): Change sprintf format strings to
3124 match parameters.
3125 (find_entry_byval): Add parens to avoid warning.
3126
3127 * as.c: If HAVE_ITBL_CPU, include "itbl-ops.h".
3128
9b4d630b
ILT
3129 * symbols.c (resolve_symbol_value): Don't permit subtraction of
3130 undefined symbols.
3131
a22b281c
RH
31321999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
3133
66778679 3134 * config/tc-sparc.c (sparc_ip): Don't use side-effect expression
a22b281c
RH
3135 with isoctal.
3136
3137 * config/tc-sparc.c (synthetize_setuw, synthetize_setsw,
3138 synthetize_setx): New functions.
3139 (md_assemble): Broken the special cases into the above
3140 functions. Make compiler happy if sizeof(bfd_vma)==4.
3141 Fix sethi generated from set/setuw. If instructions have a relloc,
3142 always clear the fields to be relocated in the opcode.
3143 (sparc_ip): Remove special_case global variable.
3144
7f2f689c
ILT
31451999-06-10 Ian Lance Taylor <ian@zembu.com>
3146
d7ba4a77
ILT
3147 Based on patches from John W. Woznack <jwoznack@concentric.net>:
3148 * itbl-ops.c (itbl_get_reg_val): Add pval parameter. Return
3149 indication of success rather than a value.
3150 (itbl_get_val): Likewise.
3151 (itbl_get_field): Use strcspn. Change delimiters to include
3152 parens.
3153 * itbl-ops.h (itbl_get_reg_val): Update declaration.
3154 (itbl_get_val): Likewise.
3155 * config/tc-mips.c (mips_ip): Update call to itbl_get_reg_val.
3156
7f2f689c
ILT
3157 * symbols.c (copy_symbol_attributes): Convert local symbols to
3158 regular symbols.
3159
c1d3c45e
NC
31601999-06-10 Nick Clifton <nickc@cygnus.com>
3161
3162 * config/tc-arm.c (md_parse_option): Add support for ARM920 and
3e87a760 3163 ARM920t.
c1d3c45e 3164
63fab58c
RH
31651999-06-07 Jakub Jelinek <jj@ultra.linux.cz>
3166
3167 * config/tc-sparc.c (md_assemble): Fix up setx, support setsw.
3168 Optimize set if sizeof(bfd_vma) == 64.
3169 (sparc_ip): Fix sethi - without %hi() it should generate
eb858bb4 3170 R_SPARC_22 reloc, not R_SPARC_HI22.
63fab58c
RH
3171 (tc_gen_reloc): Handle BFD_RELOC_SPARC22.
3172
cf9a1301
RH
31731999-06-07 Jakub Jelinek <jj@ultra.linux.cz>
3174
3175 * config/tc-sparc.c (md_begin): Handle native wordsize aliases.
3176 (s_ncons): New function.
3177 (native_op_table): New table.
3178 (sparc_ip): Be more strict on %hi() etc.; prepare assembler for
3179 R_SPARC_OLO10 handling.
3180
bf29b231
RH
3181Mon Jun 7 10:22:16 1999 Richard Henderson <rth@cygnus.com>
3182
3183 * expr.h (struct expressionS): Revert last change; widen X_op.
3184 * config/tc-alpha.c (md_begin): Check the field is wide enough.
3185
9be1cda6
AS
3186Mon Jun 7 11:25:16 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
3187
a4835b42
AS
3188 * Makefile.am (TARGET_CPU_CFILES): Add config/tc-fr30.c.
3189 (TARGET_CPU_HFILES): Add config/tc-fr30.h.
3190 (TARG_ENV_HFILES): Add config/te-epoc-pe.h.
3191 * Makefile.in: Regenerated.
3192
9be1cda6
AS
3193 * config/obj-elf.c (obj_elf_common): In MRI mode if called as
3194 `common' pass on to s_mri_common.
3e87a760 3195 (elf_pseudo_table): Pass 1 to obj_elf_common for `common'.
9be1cda6 3196
62335629
RH
31971999-06-06 Richard Henderson <rth@cygnus.com>
3198
3199 * config/obj-elf.c (obj_elf_section): Don't free the return
3200 value of demand_copy_C_string.
3201
9de8d8f1
RH
32021999-06-05 Richard Henderson <rth@cygnus.com>
3203
3204 * dwarf2dbg.c (dwarf2_gen_line_info): Mirror the section symbol
3205 creation logic from obj_elf_create_section.
3206
3207 * config/obj-elf.c (elf_pseudo_tab): Add pushsection/popsection.
3208 (section_stack): New.
3209 (special_sections): Make const.
3210 (obj_elf_section): Gut and rewrite parsing.
3211 (obj_elf_change_section): New function broken out of obj_elf_section.
3212 (obj_elf_parse_section_letters): Likewise.
3213 (obj_elf_section_word): Likewise.
3214 (obj_elf_section_type): Likewise.
3215 (obj_elf_previous): Treat as a toggle.
3216 (obj_elf_popsection): New.
3217 * config/tc-ppc.c (ppc_section_word): Take str+len not ptr_str.
3218 (ppc_section_type): Likewise.
3219 * config/tc-ppc.h: Likewise.
3220
3221 * expr.h (struct expressionS): Don't make X_op a bitfield.
3222 * config/tc-alpha.c: Update for symbol handling changes.
3223 (md_apply_fix) [case GPREL]: Use now_seg instead of absolute_section.
3224 (load_expression, emit_ir_load, emit_loadstore, emit_jsrjmp): Likewise.
3225
58b5739a
RH
32261999-06-05 Richard Henderson <rth@cygnus.com>
3227
3228 * dwarf2dbg.c (*): Convert to K&R + prototypes.
3229 (dwarf2_gen_line_info): Kill unused variables.
3230 (dwarf2_finish): Likewise.
3231 (dwarf2_where): Likewise.
3232 (dwarf2_directive_file): If we've only got a string,
3233 hand off to s_app_file.
3234 * ecoff.c: Move the include of ecoff.h.
3235 * symbols.h (S_IS_FUNCTION): Prototype.
3236
3237 * read.c (LEX_HASH): Supply a default.
3238 (lex_type): Use it.
3239 (s_globl): Update `c' after skipping whitespace.
3240 * read.h (LEX_END_NAME, is_name_ender): New.
3241 * expr.c (get_symbol_end): Respect it.
3242
398e8c25
ILT
32431999-06-04 Mark Klein <mklein@dis.com>
3244
993142d5
ILT
3245 * config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
3246 to real if OBJ_SOM
3247 (tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
3248
398e8c25
ILT
3249 * config/tc-hppa.c: Update for symbol handling changes.
3250
b4013713
ILT
32511999-06-03 Ian Lance Taylor <ian@zembu.com>
3252
080e41e6
ILT
3253 * cgen.c: Update for symbol handling changes.
3254 * config/tc-m32r.c: Likewise.
f412ead8 3255
a0f75b47
ILT
3256 * config/tc-hppa.h: Update for symbol handling changes.
3257 * config/tc-hppa.c: Likewise.
3258
174419c1
ILT
3259 * config/tc-arm.h: Update for symbol handling changes.
3260 * config/tc-arm.c: Likewise.
3261 (symbol_make_empty): Remove. Just use symbol_create.
3262
3263 * symbols.c (symbol_set_tc): Correct name.
3264
6104f0a0
ILT
3265 * Makefile.am: Rebuild dependencies.
3266 ($(OBJS)): Don't depend upon struc-symbol.h.
3267 (.dep1, .tcdep, .objdep): Create itbl-parse.h.
3268 * dep-in.sed: Don't remove struc-symbol.h.
3269 * Makefile.in: Rebuild.
3270
b4013713
ILT
3271 * doc/internals.texi (Symbols): Describe changes in symbol
3272 handling.
3273
6576f0b5
RH
32741999-06-03 Richard Henderson <rth@cygnus.com>
3275
3276 * dwarf2dbg.c (dwarf2_gen_line_info): Use section_symbol
3277 instead of doing the work by hand.
3278
fac0d250
RH
32791999-06-03 David Mosberger <davidm@hpl.hp.com>
3280
3281 * dwarf2dbg.c (INITIAL_STATE): New macro encapsulating initial
3282 state of line state-machine.
3283 (struct ls): Collect DWARF2 line state-machine state in new member
3284 SM. Add member EMPTY_SEQUENCE to keep track if a code sequence
3285 resulted in any DWARF2 directives.
3286 (reset_state_machine): New function.
3287 (out_end_sequence): Ditto.
3288 (dwarf2_gen_line_info): When switching sections or switching to a
3289 lower text address, call out_end_sequence() first to terminate the
3290 previous code sequence as code sequences MUST have monotonically
3291 increasing addresses.
3292 (dwarf2_finish): Call out_end_sequence() instead of open coding it.
3293
32941999-06-03 David Mosberger <davidm@hpl.hp.com>
3295
3296 * as.c (parse_args): Add option -gdwarf2 to allow requesting
3297 DWARF2 debug info (line information only, at this point).
3298 * as.h: Update comment about supported debug formats.
3299 * dwarf2dbg.c, dwarf2dbg.h: New files.
3300 * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
3301
3302 * expr.c (operand): Don't use [ for parens if we want an index op.
3303 (op_encoding): Switch [ into O_index, if desired.
3304 (op_rank): Renumber with O_index on bottom.
3305 (expr): If O_index, match closing bracket.
3306 * expr.h (O_index): New.
3307
3308 * read.c (read_a_source_file): Conditionally allow matched "
3309 in lines passed to md_assemble.
3310
3311 * config/obj-elf.c (elf_pseudo_table): Add `common'.
3312
49309057
ILT
33131999-06-03 Ian Lance Taylor <ian@zembu.com>
3314
3315 Add support for storing local symbols in a small structure to save
3316 memory when assembling large files.
3317 * as.h: Don't include struc-symbol.h.
3318 (symbolS): Add typedef.
3319 * symbols.c: Include struc-symbol.h.
3320 (local_hash): New static variable.
3321 (save_symbol_name): New static function, from symbol_create.
3322 (symbol_create): Call save_symbol_name.
3323 (local_symbol_count): New static variable.
3324 (local_symbol_conversion_count): Likewise.
3325 (LOCAL_SYMBOL_CHECK): Define.
3326 (local_symbol_make): New static function.
3327 (local_symbol_convert): New static function.
3328 (colon): Handle local symbols. Create local symbol for local
3329 label name.
3330 (symbol_table_insert): Handle local symbols.
3331 (symbol_find_or_make): Create local symbol for local label name.
3332 (symbol_find_base): Check for local symbol.
3333 (symbol_append, symbol_insert): Check for local symbols.
3334 (symbol_clear_list_pointers, symbol_remove): Likewise.
3335 (verify_symbol_chain): Likewise.
3336 (copy_symbol_attributes): Likewise.
3337 (resolve_symbol_value): Handle local symbols.
3338 (resolve_local_symbol): New static function.
3339 (resolve_local_symbol_values): New function.
3340 (S_GET_VALUE, S_SET_VALUE): Handle local symbols.
3341 (S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
3342 (S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
3343 (S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
3344 (S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
3345 (symbol_previous, symbol_next): New functions.
3346 (symbol_get_value_expression): Likewise.
3347 (symbol_set_value_expression): Likewise.
3348 (symbol_set_frag, symbol_get_frag): Likewise.
3349 (symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
3350 (symbol_mark_used_in_reloc): Likewise.
3351 (symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
3352 (symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
3353 (symbol_mri_common_p): Likewise.
3354 (symbol_mark_written, symbol_clear_written): Likewise.
3355 (symbol_written_p): Likewise.
3356 (symbol_mark_resolved, symbol_resolved_p): Likewise.
3357 (symbol_section_p, symbol_equated_p): Likewise.
3358 (symbol_constant_p): Likewise.
3359 (symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
3360 (symbol_get_obj, symbol_set_obj): Likewise.
3361 (symbol_get_tc, symbol_set_tc): Likewise.
3362 (symbol_begin): Initialize local_hash.
3363 (print_symbol_value_1): Handle local symbols.
3364 (symbol_print_statistics): Print local symbol statistics.
3365 * symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
3366 Declare new symbols.c functions. Move many declarations here from
3367 struc-symbol.h.
3368 (SYMBOLS_NEED_BACKPOINTERS): Define if needed.
3369 * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
3370 (struct symbol): Move bsym to make it clearly the first field.
3371 Remove TARGET_SYMBOL_FIELDS.
3372 (symbolS): Don't typedef.
3373 (struct broken_word): Remove.
3374 (N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
3375 (SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
3376 (symbol_clear_list_pointers): Likewise.
3377 (symbol_insert, symbol_remove): Likewise.
3378 (symbol_previous, symbol_append): Likewise.
3379 (verify_symbol_chain, verify_symbol_chain_2): Likewise.
3380 (struct local_symbol): Define.
3381 (local_symbol_converted_p, local_symbol_mark_converted): Define.
3382 (local_symbol_resolved_p, local_symbol_mark_resolved): Define.
3383 (local_symbol_get_frag, local_symbol_set_frag): Define.
3384 (local_symbol_get_real_symbol): Define.
3385 (local_symbol_set_real_symbol): Define.
3386 Define.
3387 * write.c (write_object_file): Call resolve_local_symbol_values.
3388 * config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
3389 (TARGET_SYMBOL_FIELDS): Don't define.
3390 * config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field. If
3391 ECOFF_DEBUGGING, add ECOFF fields.
3392 (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
3393 * config/obj-multi.h (struct elf_obj_sy): Add local field. If
3394 ECOFF_DEBUGGING, add ECOFF fields.
3395 (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
3396 (ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
3397 * config/tc-mcore.h: Don't include struc-symbol.h.
3398 (TARGET_SYMBOL_FIELDS): Don't define.
3399 (struct mcore_tc_sy): Define.
3400 (TC_SYMFIELD_TYPE): Define.
3401 * Many files: Use symbolS instead of struct symbol. Use new
3402 accessor functions rather than referring to symbolS fields
3403 directly.
3404
3405 * read.c (s_mri_common): Don't add in value of line_label.
3406
3407 * config/tc-mips.c (md_apply_fix): Correct parenthesization when
3408 checking for SEC_LINK_ONCE.
3409
3410 * config/tc-sh.h (sh_fix_adjustable): Declare.
3411
3412 * app.c (input_buffer): New static variable.
3413 (app_push): Save saved_input in allocated buffer.
3414 (app_pop): Restored saved_input.
3415 (do_scrub_chars): Change get parameter to take char * and int as
3416 arguments. Change GET macro to pass input_buffer to get
3417 function. Don't save input into allocated buffer.
3418 * as.h (do_scrub_chars): Update declaration.
3419 * input-file.c (input_file_get): Change to take char * and int.
3420 Read data into passed in buffer. Remove static buffer.
3421 * read.c (scrub_from_string): Change to take char * and int. Copy
3422 data into passed in buffer.
3423
3424 * hash.h: Neaten. Declare hash_traverse.
3425 * hash.c: Complete rewrite based on BFD hashing code.
3426 * gasp.c (chunksize): New variable.
3427 * macro.c (macro_expand_body): Call hash_jam with NULL rather than
3428 hash_delete.
3429
661e4995
NC
34301999-05-28 Nick Clifton <nickc@cygnus.com>
3431
3432 * config/tc-arm.c (md_apply_fix3): Add pipeline offset into reloc
3433 addend unless the target uses an old ABI.
3434
d9a62219
DE
3435Mon May 24 13:36:55 1999 Doug Evans <devans@canuck.cygnus.com>
3436
3437 -Wchar-subscripts cleanup
3438 * listing.c (listing_newline): Use unsigned char variable, so
3e87a760 3439 calls to isascii,iscntrl are correct.
d9a62219
DE
3440 * atof-generic.c (atof_generic): Cast arg to isdigit, et. al. with
3441 (unsigned char).
3442 * ecoff.c (ecoff_directive_ent,ecoff_stab): Ditto.
3443 * config/obj-elf.c (obj_elf_vtable_inherit): Ditto.
3444 * config/tc-mips.c (mips_ip,mips16_ip): Ditto.
3445 (my_getSmallExpression,get_number,s_mips_ent): Ditto.
3446
6da466c7
ILT
34471999-05-28 Torbjorn Granlund <tege@matematik.su.se>
3448
3449 * config/tc-m68k.c (m68k_ip): Check for disallowed index register
3450 width for Coldfire.
3451 (arch_coldfire_p): New #define.
3452 (m68k_ip, m68k_init_after_args): Use arch_coldfire_p.
3453
34541999-05-28 Linus Nordberg <linus.nordberg@canit.se>
3455
3456 * config/tc-m68k.c (install_operand): Add places `n', `o'.
3457
3458 * config/tc-m68k.c (m68k_ip): Add formats `E', `G', `H'.
3459 (install_operand): Add place `N'.
3460 (init_table): Add registers ACC, MACSR, MASK.
3461
3462 * config/m68k-parse.h (m68k_register): Add ACC, MACSR, MASK.
3463
3464 * config/tc-m68k.c: Change mcf5200 --> mcf.
3465 (archs): Add mcf5206e, mcf5307.
3466 (m68k_ip): Add format `u'.
3467 (install_operand): Add place `m', `M', `h'.
3468 (init_table): Add upper/lower registers.
3469
3470 * config/m68k-parse.h (m68k_register): Add upper/lower registers.
3471
bedf545c
ILT
34721999-05-28 Martin Dorey <mdorey@madge.com>
3473
3474 * config/tc-i960.c: Several minor changes to add ELF and
3475 BFD_ASSEMBLER support.
3476 * config/tc-i960.h: Likewise.
3477 * configure.in (i960-*-elf*): New target.
3478 * aclocal.m4, configure: Rebuild.
3479
40c62b25
AM
34801999-05-25 Alan Modra <alan@spri.levels.unisa.edu.au>
3481
3482 * config/tc-i386.c (md_apply_fix3): Only do 1999-05-17 fx_pcrel
3483 reloc changes when defined(BFD_ASSEMBLER).
3484
daa01f85
AM
34851999-05-17 Alan Modra <alan@spri.levels.unisa.edu.au>
3486
3487 * config/tc-i386.c (tc_gen_reloc): Remove F and MAP macros.
3488
3489 * write.c (write_print_statistics): Output to file, not stderr.
3490
3491 * expr.c (generic_bignum_to_int32,64): Prototype.
3492
3493 * read.c (s_lcomm_internal, sizeof_sleb128, sizeof_uleb128,
3494 output_sleb128, output_uleb128, output_big_sleb128,
3495 output_big_uleb128, output_big_leb128): Prototype.
3496 (output_big_sleb128, output_big_uleb128): Make inline.
3497 (output_big_leb128): Remove inline
3498
3499 From Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3500 * config/tc-i386.c (md_apply_fix3): Convert BFD_RELOC_16 with
3501 fx_pcrel set to BFD_RELOC_16_PCREL. Similarly for BFD_RELOC_8.
3502 Handle BFD_RELOC_16_PCREL and BFD_RELOC_8_PCREL. Return changed
3503 value for correct overflow check in write.c:fixup_segment.
3504 * write.c (fixup_segment): Move bitfield overflow checks to after
3505 the md_apply_fix call.
3506 * config/obj-coff.c (fixup_segment): Likewise.
3507 * doc/internals.texi (CPU backend): Mention md_apply_fix modifying
3508 valueT *val argument.
3509
19b34177
AS
3510Fri May 14 10:52:13 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
3511
3512 * config/atof-ieee.c (gen_to_words): Correctly round a
3513 denormalized number. Fix off-by-one in range checking for
3e87a760 3514 exponent in a denormal.
19b34177 3515
b8a40f53
NC
35161999-05-10 Nick Clifton <nickc@cygnus.com>
3517
3518 * config/tc-mcore.c (parse_reg): Accept 'sp' as a valid register
3e87a760 3519 name.
b8a40f53 3520
53f3de98
RH
3521Thu May 13 09:46:59 1999 Joel Sherrill (joel@OARcorp.com)
3522
3523 * configure.in (i386-*-rtemself*, sh-*-rtemself*): New targets.
3524
578ec497
AM
35251999-05-12 Alan Modra <alan@spri.levels.unisa.edu.au>
3526
3527 * config/tc-i386.h (InvMem): New flag. Add to AnyMem.
3528 (ReverseRegRegmem): Remove.
3529 (ImmExt): New flag. Renumber some of the opcode_modifier bits.
3530 * config/tc-i386.c (md_assemble): Test for PIII SIMD and AMD
3531 3DNow! via ImmExt opcode_modifier. Remove ReverseRegRegmem
3532 kludge.
3533
3534 From Doug Ledford <dledford@redhat.com>
3535 * config/tc-i386.h (RegXMM): New for P/III.
3536 * config/tc-i386.c: Add support for P/III.
3537
d0e9a01c
RH
3538Sat May 8 23:28:50 1999 Richard Henderson <rth@cygnus.com>
3539
3540 * config/tc-ppc.c (md_parse_option): Recognize -mppc64bridge.
3541 (md_begin): Allow ppc32 insns in ppc64bridge mode.
3542 (ppc_insert_operand): Accept SIGNOPT in ppc64 mode.
3543
83183c0c
RH
3544Thu May 6 23:13:39 1999 Richard Henderson <rth@cygnus.com>
3545
3546 * config/tc-i386.c (i386_immediate): Skip whitespace before
3547 complaining about junk after expression.
3548 (i386_displacement): Likewise.
3549
03987ced
RH
3550Thu May 6 19:50:14 1999 Richard Henderson <rth@cygnus.com>
3551
3552 * symbols.c (symbol_find_base): Use memcpy instead of strcpy.
3553 Don't copy before downcaseing.
3554
0d96863f 35551999-05-05 Catherine Moore <clm@cygnus.com>
3e87a760 3556
66778679
RH
3557 * tc-m68k.c: Include elf/m68k.h.
3558 (m68k_elf_final_processing): New routine.
3559 * tc-m68k.h (elf_tc_final_processing m68k_elf_final_processing):
3560 Define.
3e87a760 3561
90700a53
JL
3562Mon May 3 10:26:03 1999 Jeffrey A Law (law@cygnus.com)
3563
3564 * config/tc-hppa.c (md_apply_fix): Handle 22 bit fmt insn like a
3565 17 bit fmt insn.
3566
252b5132
RH
35671999-04-30 Nick Clifton <nickc@cygnus.com>
3568
3569 * config/tc-mcore.c (mcore_s_section): Dump literals before
3570 changing section.
3571
35721999-04-29 Nick Clifton <nickc@cygnus.com>
3573
3574 * config/tc-mcore.c (md_apply_fix3): Insert reloc addend into insn
3575 for COFF/PE port.
3576
3577Mon Apr 26 12:34:37 1999 Doug Evans <devans@canuck.cygnus.com>
3578
3579 * config/tc-fr30.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
3580 (TC_INIT_FIX_DATA): Delete.
3581 * config/tc-m32r.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
3582 (TC_INIT_FIX_DATA): Delete.
3583 * write.h (struct fix): New member fx_cgen, ifdef USING_CGEN.
3584 * write.c (fix_new_internal): Initialize fx_cgen member.
3585 * cgen.c (gas_cgen_record_fixup,gas_cgen_record_fixup_exp): Update.
3586 (gas_cgen_md_apply_fix3): Update.
3587 * config/tc-m32r.c (md_cgen_lookup_reloc): Update.
3588 (md_cgen_record_fixup_exp): Update.
3589 (FX_OPINFO_R_TYPE): Update.
3590
3591 * frags.c (frag_var,frag_variant): Initialize fr_cgen here.
3592 * config/tc-fr30.h (TC_FRAG_INIT): Delete.
3593 * config/tc-m32r.h (TC_FRAG_INIT): Delete.
3594 * frags.h (struct frag): Make opindex, opinfo ints.
3595
3596 * config/tc-fr30.c (FX_OPINFO_R_TYPE): Delete, unused.
3597
35981999-04-26 Tom Tromey <tromey@cygnus.com>
3599
3600 * aclocal.m4, configure: Updated for new version of libtool.
3601
36021999-04-22 Nick Clifton <nickc@cygnus.com>
3603
3604 * config/tc-mcore.c (md_apply_fix3): Renamed function from
3e87a760 3605 md_apply_fix.
252b5132
RH
3606 (md_apply_fix3): Do not fix up absolute relocations against
3607 symbolic values.
3608
3609 * config/tc-mcore.h (MD_APPLY_FIX3): Define.
3610
36111999-04-20 Nick Clifton <nickc@cygnus.com>
3612
3613 * config/tc-mcore.c (md_pseudo_table): Add intercepts for section
3614 changes and data-in-text directives.
3615 (mcore_cons): New function: intercept cons() operations.
3616 (mcore_float_cons): New function: intercept float_cons()
3e87a760 3617 operations.
252b5132
RH
3618 (mcore_stringer): New function: intercept stringer() operations.
3619
36201999-04-18 Ian Lance Taylor <ian@zembu.com>
3621
3622 * obj.h (struct format_ops): Change generate_asm_lineno field to
3623 take no parameters.
3624 * config/obj-ecoff.h (OBJ_GENERATE_ASM_LINENO): Don't define.
3625
3626 * config/tc-alpha.c (find_opcode_match): Add default case to
3627 switch.
3628 (find_macro_match): Likewise.
3629 (load_expression): Parenthesize && within ||.
3630
3631 * config/tc-alpha.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
3632
36331999-04-17 Nick Clifton <nickc@cygnus.com>
3634
3635 * config/tc-mcore.c (md_pseudo_table): Add overrides for .bss
3636 .text .data .section pseudo ops.
3e87a760
AM
3637 (mcore_s_section): New function. Dump lits before changing secs.
3638 (mcore_s_text): New function. Dump lits before changing secs.
3639 (mcore_s_data): New function. Dump lits before changing secs.
252b5132
RH
3640
36411999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
3642
3643 * config/tc-mips.c (mips_32bitmode): New.
3644 (md_begin): Set mips_32bitmode if needed.
3645 (mips_elf_final_processing): Don't set EF_MIPS_ARCH.
3646 Set EF_MIPS_32BITMODE.
3647
3648Fri Apr 16 12:26:39 1999 Bob Manson <manson@charmed.cygnus.com>
3649
3650 * config/obj-coff.c (c_section_symbol): Fix typo in previous
3651 change.
3652
36531999-04-16 Nick Clifton <nickc@cygnus.com>
3654
3655 * config/tc-mcore.h (LOCAL_LABELS_FB): Define to 1.
3656
3657Thu Apr 15 16:52:09 1999 Jeffrey A Law (law@cygnus.com)
3658
3e87a760 3659 * tc-hppa.c (pa_get_absolute_exression): Try to handle "5 %r3"
252b5132
RH
3660 expressions correctly.
3661
3662
36631999-04-15 Gavin Romig-Koch <gavin@cygnus.com>
3664
3665 * config/tc-mips.c (mips_elf_final_processing): Set EF_MIPS_ARCH.
3666
3667Mon Apr 12 23:45:07 1999 Jeffrey A Law (law@cygnus.com)
3668
3669 * tc-hppa.c (pa_ip, case '3'): New case for PA2.0 fmpyfadd
3670 and fmpynfadd instructions.
3671
36721999-04-11 Richard Henderson <rth@cygnus.com>
3673
3674 * as.h (environ): Declare it, if needed.
3675 * as.c (dump_statistics): Don't declare environ.
3676 * configure.in (environ): Detect declaration.
3677 * configure, config.in: Rebuild
3678
3679 * config/tc-i386.c (i386_immediate): Accept @GOT relocations.
3680 (i386_displacement): Allocate enough space for replacement buffer.
3681 Clean up replacement buffer initialization.
3682
36831999-04-11 Bob Manson <manson@charmed.cygnus.com>:
3684
3685 * subsegs.c (section_symbol): Don't create a new symbol if one
3686 already exists; instead, use the existing one, but set its segment
3687 and frag data if it hasn't already been defined.
3688 * config/obj-coff.c (c_section_symbol): Likewise.
3689
3690Sat Apr 10 20:10:02 1999 Richard Henderson <rth@cygnus.com>
3691
3692 * tc-alpha.c (load_expression): Call as_bad instead of abort.
3693
36941999-04-08 Nick Clifton <nickc@cygnus.com>
3695
3696 * config/tc-mcore.c: New File: Support routines for MCore
3697 assembler.
3e87a760 3698 * config/tc-mcore.h: New File: Definitions for MCore assembler.
252b5132
RH
3699 * config/obj-coff.c: Add support for mcore-pe target.
3700
3701 * Makefile.am: Add support for MCore targets.
3702 * Makefile.in: Regenerate.
3703 * configure.in: Add support for MCore targets.
3704 * configure: Regenerate.
3705
3706 * doc/all.texi: Set MCORE.
3707 * doc/as.texinfo: Document MCore specific command line options.
3e87a760 3708
252b5132
RH
3709 * write.h: Prevent multiple inclusion.
3710
37111999-04-06 Ian Lance Taylor <ian@zembu.com>
3712
3713 * asintl.h (LC_MESSAGES): Never define.
3714 * as.c (main): Don't pass LC_MESSAGES to setlocale if the system
3715 does not define it.
3716 * gasp.c (main): Don't pass LC_MESSAGES to setlocale if the system
3717 does not define it.
3718
3719 * Makefile.am (m68k-parse.c): If configuring in the source
3720 directory, copy m68k-parse.y into the local directory before
3721 running ylwrap, to remove spurious differences when generating
3722 snapshots.
3723 * Makefile.in: Rebuild.
3724
3725 * config/tc-sparc.h (md_do_align): Just allocate the number of
3726 bytes necessary, rather than always allocating 1024.
3727
37281999-04-04 Ian Lance Taylor <ian@zembu.com>
3729
3730 * listing.c (listing_newline): Add cast to avoid warning.
3731 * read.c (generate_lineno_debug): Add cases to switch. Reindent.
3732 * config/tc-i386.c (i386_scale): Add return value.
3733 (build_displacement_string): Remove unused local temp_disp2.
3734 (i386_intel_memory_operand): Add parentheses to avoid warning.
3735 (i386_intel_operand): Remove unused local end_of_operand_string.
3736 (i386_operand): Remove unused local operand_modifier.
3737 (i386_operand): Add parens to avoid warning.
3738
37391999-04-04 Don Bowman <don@pixsci.com>
3740
3741 * configure.in: Add mips*-*-vxworks* target; have it define
3742 MIPS_STABS_ELF.
3743 * configure, config.in: Rebuild.
3744
37451999-03-31 Nick Clifton <nickc@cygnus.com>
3746
3747 * configure.in (emulations): Add support for arm-epoc-pe.
3748 * configure: Regenerate.
3749 * config/te-epoc-pe.h: New file. Define macros specific to
3750 arm-epoc-pe target.
3751 * config/tc-arm.h: Select epoc-pe-arm target format if configured
3752 for arm-epoc-pe target.
3753
3754Mon Mar 29 10:15:40 CST 1999 Catherine Moore <clm@cygnus.com>
3755
3756 * tc-mips.c (md_apply_fix): Adjust value for linkonce sections.
3757
3758Wed Mar 24 14:11:10 1999 Jeffrey A Law (law@cygnus.com)
3759
3760 * tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Clean up code to
3761 detect ",n" without a condition.
3762 (pa_parse_neg_cmpsub_cmpltr): Likewise.
3763
3764
3765Tue Mar 23 11:28:23 1999 Jeffrey A Law (law@cygnus.com)
3766
3767 * tc-hppa.c (pa_ip, case '~'): The condition for a branch on bit
3768 instruction is encoded with one bit.
3769
3770
37711999-03-23 Ian Lance Taylor <ian@zembu.com>
3772
3773 * doc/internals.texi (CPU backend): Mention that
3774 line_separator_chars should not include newline. From thi
3775 <ttn@mingle.glug.org>.
3776
37771999-03-22 Doug Evans <devans@casey.cygnus.com>
3778
3779 * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
3780 * config/tc-m32r.c (md_begin): Update call to m32r_cgen_cpu_open.
3781
3782Sun Mar 21 18:08:18 1999 Richard Henderson <rth@cygnus.com>
3783
3784 * tc-alpha.c (md_assemble): Allow '6' in an opcode.
3785
3786Thu Mar 18 10:55:30 1999 Jeffrey A Law (law@cygnus.com)
3787
3788 * tc-hppa.c (pa_ip, case 'a'): Do not call pa_parse_..._cmpsub_cmpltr.
3789
3790
3791Thu Mar 18 02:30:07 1999 Jeffrey A Law (law@cygnus.com)
3792
3793 * tc-hppa.c (pa_ip, case 'd'): Do not allow ",n".
3e87a760 3794
252b5132
RH
37951999-03-15 Martin Hunt <hunt@cygnus.com>
3796
3797 * app.c (do_scrub_begin): Change '-' back to a symbol char
3798 so we can use multiple opcodes on a line again.
3799
3800 * config/tc-d30v.c: By default, warn if a symbol has
3801 the same name as a register. Plus some minor
3802 updates from the branch.
3803
38041999-03-13 Nick Clifton <nickc@cygnus.com>
3805
3806 * config/tc-d30v.c (md_apply_fix3): Handle BFD_RELOC_8,
3807 BFD_RELOC_16 and BFD_RELOC_64.
3808
38091999-03-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
3810
3811 * expr.c (expr): Add missing else.
3812
38131999-03-12 Nick Clifton <nickc@cygnus.com>
3814
3815 * config/tc-arm.c (md_apply_fix3): Improve error message.
3816
38171999-03-11 Doug Evans <devans@casey.cygnus.com>
3818
3819 * Makefile.am (CPU_TYPES): Add fr30.
3820 (cgen.o): Add $(CGEN_CPU_PREFIX)-desc.h dependency.
3821 (fr30,m32r dependencies): Update.
3822 * Makefile.in: Rebuild.
3823
3824 * cgen.c (gas_cgen_record_fixup): Update use of operand->type.
3825 (gas_cgen_record_fixup_exp): Ditto.
3826 (gas_cgen_finish_insn): Call cgen_operand_lookup_by_num.
3827 (gas_cgen_md_apply_fix3): Ditto. Update call to set_vma_operand.
3828 * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
3829 (md_cgen_lookup_reloc): Update use of operand->type.
3830 * config/tc-m32r.c (md_begin): Update call to fr30_cgen_cpu_open.
3831 (md_convert_frag): Call cgen_operand_lookup_by_num.
3832 (md_cgen_lookup_reloc): Update use of operand->type.
3833 (m32r_cgen_record_fixup_exp): Ditto.
3834
38351999-03-09 Jim Blandy <jimb@zwingli.cygnus.com>
3836
3837 * config/tc-mips.c (md_show_usage): Fix message.
3838
38391999-03-03 Nick Clifton <nickc@cygnus.com>
3840
3841 * doc/c-arm.texi (ARM Syntax): Document new command line switches
3842 and LDR reg,=<expr> instruction.
3843
3844 * config/tc-arm.c: Add support for -mcpu=arm810, -mcpu=arm9 and
3845 -mcpu=arm9tdmi.
3846
3847Fri Feb 19 09:36:30 1999 Ian Lance Taylor <ian@cygnus.com>
3848
3849 * doc/c-arm.texi (ARM-Chars): Fix typo in use of '@'.
3850
38511999-02-17 Nick Clifton <nickc@cygnus.com>
3852
3853 This patch was created by: Scott Bambrough
3854 <scottb@corelcomputer.com>
3e87a760
AM
3855
3856 * app.c:
252b5132 3857 Special cased '@' character. The '@' character is used as the
3e87a760 3858 ARM assembler comment character, as a special character
252b5132
RH
3859 and in ELF .symver pseudo-op's, and as a special character in
3860 .type and .section pseudo-ops.
3861 (symver_pseudo): New static variable.
3862 (symver_state): New static variable.
3863 (struct app_save): Add field 'symver_state'.
3864 (app_push): Save global symver_state int struct app_save.
3865 (app_pop): Restore global symver_state from struct app_save.
3e87a760
AM
3866 (do_scrub_chars): Special case handling of '@' character in
3867 .symver pseudo-ops.
252b5132
RH
3868
3869 * configure.in: Modified to recognize armv* uname syntax from ARM
3870 Linux kernel.
3871 * configure: Regenerated.
3e87a760 3872
252b5132
RH
3873 * config/obj-elf.c (obj_elf_section): Allow '%' as well as '@' as
3874 a prefix to the section's type.
3875 (obj_elf_type): Allow '%' as well as '@' and '#' as prefixes to
3876 the type's typename.
3877
3878 * config/tc-arm.h: Add support for PIC generation:
3879 (pic_code): New boolean.
3880 (obj_relocate_extern): Define.
3881 (TC_RELOC_RTSYM_LOC_FIXUP): Define
3882 (TC_CONS_FIX_NEW): Define.
3883 (tc_fix_adjustable): Define.
3884 (GLOBAL_OFFSET_TABLE_NAME): Define.
3e87a760 3885
252b5132
RH
3886 * config/tc-arm.c: Add support for PIC generation:
3887 (line_seperator_chars): Allow ';' as a seperator for Linux.
3888 (is_immediate_prefix): New macro.
3889 (arm_parse_reloc): New function.
3890 (s_arm_elf_cons): New function.
3891 (do_branch): Special case for BFD_RELOC_ARM_PLT32.
3892 (md_undefined_symbol): Special case handling for the Global Offset
3893 Table's symbol.
3894 (md_apply_fix3): Handle PIC relocs.
3895 (tc_gen_reloc): Handle PIC relocs.
3896 (md_parse_option): Add support for '-k' command line switch to
3897 enable PIC generation.
3898 (cons_fix_new_arm): New function.
3899 (s_arm_elf_cons): New function.
3900
3901Tue Feb 16 16:31:53 1999 Ian Lance Taylor <ian@cygnus.com>
3902
3903 * configure.in: Add comments for uses of AC_DEFINE.
3904 * acinclude.m4: Likewise.
3905 * acconfig.h: Remove.
3906 * aclocal.m4: Rebuild.
3907 * configure: Rebuild.
3908 * Makefile.in: Rebuild.
3909 * config.in: Rebuild.
3910
39111999-02-15 Jim Lemke <jlemke@cygnus.com>
3912
3913 * config/tc-mips.c (mips_ip: case 'o'): Fix assertion failure for
3914 non-constant offset from a base register.
3915
39161999-02-14 Ken Raeburn <raeburn@raeburn.org>
3917
3918 * config/tc-alpha.c (md_show_usage): Put \ before newline in
3919 strings always.
3920
3921Sat Feb 13 14:10:10 1999 Richard Henderson <rth@cygnus.com>
3922
3923 * config/tc-alpha.c (cpu_types): Enable EV6 PALcode with -m21264.
3924 (emit_insn): Look for pc-relative and no-overflow specifiers on
3925 internal relocation types.
3926
39271999-02-13 Jim Blandy <jimb@zwingli.cygnus.com>
3928
3929 * doc/c-mips.texi (MIPS Opts): Updated list of -mNNNN and
3930 -mcpu=NNNN flags.
3931
3932 * config/tc-mips.c: Remove all the mips_NNNN variables; just use
3933 mips_cpu instead.
3934 (mips_4650, mips_4010, mips_4100): Variables removed.
3935 (hilo_interlocks, gpr_interlocks, append_insn, macro_build, macro,
3936 macro2, mips16_macro, mips_ip): Test mips_cpu, not the mips_NNNN
3937 variables.
3938 (md_begin): Don't bother initializing the mips_NNNN variables;
3939 mips_cpu is set, and that's good enough now.
3940 (md_parse_option): Have the -mNNNN options set mips_cpu instead of
3941 the mips_NNNN variable. The -no-mNNNN flags are now no-ops.
3942 (show): New function, to handle wrapping in the CPU lists.
3943 (md_show_usage): Update lists of -mcpu and -mNNNN switches.
3944
3945Sat Feb 13 00:17:26 1999 Richard Henderson <rth@cygnus.com>
3946
3947 * config/tc-i386.c (i386_intel_operand): Ignore `SHORT' rather
3948 than treat as an immediate specifier.
3949
3950Thu Feb 11 16:18:31 1999 Richard Henderson <rth@cygnus.com>
3951
3952 * config/tc-i386.c: Prototype many functions.
3953 (set_intel_syntax): Accept `prefix'/`noprefix' specifiers.
3954 (i386_immediate): Remove unused second argument.
3955 (i386_intel_operand): Fix i386_is_reg typo.
3956 (i386_operand): Use allow_naked_reg.
3957 (output_invalid): Make operand int for K&R.
3958
3959Thu Feb 11 11:21:02 1999 Ian Lance Taylor <ian@cygnus.com>
3960
3961 * Makefile.am (EXTRA_as_new_SOURCES): Uncomment--fixed by automake
3962 patch.
3963 * Makefile.in: Rebuild.
3964
39651999-02-09 Doug Evans <devans@casey.cygnus.com>
3966
3967 * Makefile.am (DISTCLEANFILES): Change cgen-opc.h to cgen-desc.h.
3968 (cgen.o): Ditto.
3969 (EXTRA_as_new_SOURCES): Comment out.
3970 (.tcdep): <arch>-opc.h renamed to <arch>-desc.h.
3971 * Makefile.in: Rebuild.
3972 * doc/Makefile.in: Rebuild.
3973 * configure.in: Require autoconf 2.13. Redo using_cgen handling.
3974 Delete call to AM_CYGWIN32. Replace AM_EXEEXT with AC_EXEEXT.
3975 (AC_OUTPUT): <arch>-opc.h renamed to <arch>-desc.h.
3976 * configure: Rebuild.
3977 * aclocal.m4: Rebuild.
3978 * config.in: Rebuild.
3979 * cgen.c: Include cgen-desc.h, not cgen-opc.h.
3980 (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
3981 (gas_cgen_cpu_desc): Renamed from gas_cgen_opcode_desc.
3982 CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
3983 CGEN_OPERAND_ATTR renamed to CGEN_OPERAND_ATTR_VALUE.
3984 (gas_cgen_record_fixup): Remove unnecessary != 0 test.
3985 (gas_cgen_record_fixup_exp): Ditto.
3986 (gas_cgen_finish_insn): Ditto. Refer to operand table via cpu
3987 descriptor, not global variable.
3988 (gas_cgen_md_apply_fix3): Refer to operand_table via cpu
3989 descriptor, not global variable. Refer to insert_operand handler
3990 via cpu descriptor, not global function.
3991 * cgen.h (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
3992 * config/tc-fr30.c: Include opcodes/fr30-desc.h.
3993 (*): gas_cgen_opcode_desc renamed to gas_cgen_cpu_desc.
3994 CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
3995 Update call to CGEN_OPERAND_TYPE,CGEN_INSN_OPERANDS.
3996 * config/tc-m32r.c: Ditto.
3997 (assemble_two_insns): Update calls to cgen_lookup_get_insn_operands.
3998 (md_assemble): Ditto.
3999 (md_convert_frag): Update call to CGEN_OPERAND_ENTRY.
4000
40011999-02-09 Nick Clifton <nickc@cygnus.com>
4002
4003 * config/tc-arm.c (md_apply_fix3): Fix handling of label1 - label2
4004 relocations for ELF targets.
4005
40061999-02-08 Nick Clifton <nickc@cygnus.com>
4007
4008 * configure.in: Add support for StrongARM target.
4009 * configure: Regenerate.
4010
40111999-02-05 Nick Clifton <nickc@cygnus.com>
4012
4013 * config/tc-arm.h: Tidy OBJ_ELF and OBJ_COFF definitions.
4014
4015 * config/tc-arm.c (md_apply_fix3): Fix BFD_RELOC_ARM_PCREL_BRANCH
4016 for COFF ports.
4017
4018Wed Feb 3 11:35:47 1999 Richard Henderson <rth@cygnus.com>
4019
4020 * config/tc-alpha.c (md_show_usage): Document pca56 and ev6 options.
4021
4022Mon Feb 1 20:37:30 1999 Catherine Moore <clm@cygnus.com>
4023
66778679
RH
4024 * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX): Define.
4025 (INTEL_DWORD_MNEM_SUFFIX): Define.
4026 (BYTE_PTR): Define.
4027 (WORD_PTR): Define.
4028 (DWORD_PTR): Define.
4029 (XWORD_PTR): Define.
4030 (SHORT): Define.
4031 (OFFSET_FLAT): Define.
4032 (FLAT): Define.
4033 (NONE_FOUND): Define.
4034 (No_dSuf): Define.
4035 (No_xSuf): Define.
4036 * config/tc-i386.c (set_intel_syntax): New routine.
4037 (intel_syntax): Declare.
4038 (allow_naked_reg): Declare.
4039 (md_pseudo_table): Support .intel_syntax and .att_syntax.
4040 (intel_float_operand): New routine.
4041 (md_assemble): Handle INTEL_DWORD_MNEM_SUFFIX.
4042 Handle brackets as well as parens. Call i386_intel_operand for
4043 intel syntax. Reverse operands if appropriate. Handle new
4044 suffixes. Handle movzx and movsx.
4045 (i386_is_reg): New routine.
4046 (i386_immediate): New routine.
4047 (i386_scale): New routine.
4048 (i386_displacement): New routine.
4049 (i386_operand_modifier): New routine.
4050 (build_displacement_string): New routine.
4051 (i386_parse_seg): New routine.
4052 (i386_intel_memory_operand): New routine.
4053 (i386_intel_operand): New routine.
4054 (i386_operand): Call i386_displacement, i386_immediate,
4055 i386_scale, etc. instead of handling inline.
4056 (parse_register): Handle registers without prefix.
252b5132
RH
4057
4058Mon Feb 1 12:24:58 1999 Catherine Moore <clm@cygnus.com>
4059
66778679
RH
4060 * configure: Regenerate.
4061 * configure.in (arm-*-oabi): New.
4062 (thumb-*-oabi): New.
4063 * config/tc-arm.c (target_oabi): Declare.
4064 (md_apply_fix3): Support REL relocs.
4065 (md_parse_option): Handle -oabi.
4066 (elf32_arm_target_format): New routine.
4067 (md_longopts): Add OPTION_OABI.
4068 * config/tc-arm.h: Redefine TARGET_FORMAT.
252b5132
RH
4069
4070
40711999-01-28 Nick Clifton <nickc@cygnus.com>
4072
4073 * write.c (write_relocs): Handle out of range error.
4074
4075 * config/tc-fr30.c (fr30_fix_adjustable): New function.
4076 (fr30_force_relocation): Default to 0.
4077
4078 * config/tc-fr30.h (obj_fix_adjustable): Define.
4079 (TC_FORCE_RELOCATION): Define.
4080
4081 * cgen.c (gas_cgen_md_apply_fix3): Do not apply fixes to VTABLE
3e87a760 4082 relocs.
252b5132
RH
4083
40841999-01-16 Nick Clifton <nickc@cygnus.com>
4085
4086 * config/tc-d30v.c (write_2_short): Do not generate a sequential
4087 merge of two instructions if the left instruciton kills the right.
4088
40891999-01-11 Doug Evans <devans@casey.cygnus.com>
4090
4091 * Makefile.in: Regenerate.
4092 * configure.in: Redo test for using cgen.
4093 * configure: Regenerate.
4094
40951999-01-09 Nick Clifton <nickc@cygnus.com>
4096
4097 * config/obj-coff.h (obj_adjust_symtab): Prevent accidental
4098 redefinition of this macro.
4099
4100Tue Jan 5 21:58:03 1999 Doug Evans <devans@canuck.cygnus.com>
4101
4102 * config/tc-mips.c (mips_frob_file): Disable "Unmatched %hi reloc"
4103 warning.
4104
41051998-12-29 Gavin Romig-Koch <gavin@cygnus.com>
4106
4107 * config/tc-mips.c (append_insn): For mips16, insert a nop between
4108 a read of HI or LO and an immediatly following branch.
4109
41101998-12-29 Gavin Romig-Koch <gavin@cygnus.com>
4111
4112 * config/tc-mips.c (md_begin): Another correction to the setting of
4113 mips_eabi64.
4114
41151998-12-23 Gavin Romig-Koch <gavin@cygnus.com>
4116
3e87a760
AM
4117 * config/tc-mips.c (md_begin): Correct type-o in setting of
4118 mips_eabi64.
252b5132
RH
4119
41201998-12-21 Nick Clifton <nickc@cygnus.com>
4121
4122 * config/tc-m32r.c (md_assemble): Emit a NOP after a relaxable 16
4123 bit insn when optimizing, so that parallelised instructions will
4124 start on a 32 bit boundary.
4125
41261998-12-19 Gavin Romig-Koch <gavin@cygnus.com>
4127
4128 * config/tc-mips.c (mips_eabi64): New.
4129 (md_begin): Set mips_eabi64.
4130 (mips_elf_final_processing): Use it.
4131
41321998-12-18 Gavin Romig-Koch <gavin@cygnus.com>
4133
3e87a760 4134 * config/tc-mips.c (mips_elf_final_processing):
252b5132
RH
4135 Correct setting of ABI in e_flags.
4136
4137Wed Dec 16 16:17:22 1998 Dave Brolley <brolley@cygnus.com>
4138
3e87a760
AM
4139 * config/tc-fr30.c (md_assemble): Warn about invalid instructions
4140 in delay slots.
252b5132
RH
4141
41421998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
4143
4144 * config/tc-mips.c (md_begin,md_parse_option): Handle vr4111.
3e87a760 4145
252b5132
RH
41461998-12-15 Doug Evans <devans@casey.cygnus.com>
4147
4148 * cgen.c (gas_cgen_md_apply_fix3): Mark as an error, rather than a
4149 warning, values that don't fit in the field.
4150
41511998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
4152
4153 * config/tc-mips.c (mips_abi_string): New.
4154 (md_parse_option,md_longopts): Add mabi.
4155 (mips_elf_final_processing): Set e_flags based on mabi flag.
4156
41571998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
4158
3e87a760 4159 * config/tc-mips.c (md_parse_option): Handle vr4111.
252b5132
RH
4160
416198-12-11 Ken Raeburn <raeburn@cygnus.com>
4162
4163 * config/tc-h8300.c (build_bytes): Change message given if the
4164 instruction requires H8/300H mode and we're not in Hmode, to
4165 suggest that it may be the operand modes that are the problem, not
4166 necessarily the opcode.
4167
41681998-12-10 Nick Clifton <nickc@cygnus.com>
4169
4170 * config/tc-fr30.c: Add line separator character.
4171
4172Tue Dec 8 19:51:50 1998 Mark Klein <mklein@dis.com>
4173
4174 * configure.in (hppa-*-mpeix*): New target.
4175 * config/obj-som.h (obj_som_compiler): Declare.
4176 * config/obj-som.c (compiler_seen): New static variable.
4177 (obj_som_compiler): New function.
4178 * config/tc-hppa.c: Update tc_data uses for change to bfd/som.h.
3e87a760 4179 (md_pseudo_table): Add "compiler" if OBJ_SOM.
252b5132
RH
4180 (pa_type_args): Set hppa_priv_level.
4181 (pa_compiler): New static function if OBJ_SOM.
4182 * configure: Rebuild.
4183
4184Tue Dec 8 15:00:50 1998 Ian Lance Taylor <ian@cygnus.com>
4185
4186 * read.c (output_leb128): Don't mark as inline.
4187
41881998-12-08 Andrew MacLeod <amacleod@cygnus.com>
4189
3e87a760 4190 * config/tc-ppc.c (ppc_vbyte): Prototype and new function for
252b5132
RH
4191 AIX .vbyte unaligned data support.
4192 (md_pseudo_table): Add 'vbyte' to list of valid pseudos.
3e87a760 4193 (ppc_elf_validate_fix): Add eh_frame to list of ELF relocatable
252b5132
RH
4194 sections.
4195
41961998-12-07 Nick Clifton <nickc@cygnus.com>
4197
4198 * config/tc-d30v.c (md_assemble, do_assemble): Improve erroneous
3e87a760 4199 input handling.
252b5132
RH
4200
4201Mon Dec 7 09:48:34 1998 Catherine Moore <clm@cygnus.com>
4202
66778679
RH
4203 * config/tc-arm.c (elf32_arm_force_relocation): Check for
4204 BFD_RELOC_ARM_PCREL_BRANCH.
252b5132
RH
4205
4206Sun Dec 6 12:46:36 1998 Ian Lance Taylor <ian@cygnus.com>
4207
4208 * configure.in: Define TARGET_BYTES_{BIG,LITTLE}_ENDIAN after
4209 checking the target type.
4210 (mips-dec-bsd*): Set endian to little.
4211 * configure: Rebuild.
4212
4213 COFF weak symbol support, based on patches from Mark Elbrecht
4214 <snowball3@usa.net>:
4215 * config/obj-coff.h (S_IS_WEAK): Define if not BFD_ASSEMBLER.
4216 * config/obj-coff.c (obj_coff_weak): New static function.
4217 (obj_coff_endef) [both versions]: Handle weak symbols.
4218 (coff_frob_symbol): Likewise.
4219 (yank_symbols): Likewise.
4220 (obj_pseudo_table): Add "weak".
4221
4222 * configure.in (m68k-*-gnu*): New target. From Aymeric Vincent
4223 <aymeric.vincent@emi.u-bordeaux.fr>.
4224 * aclocal.m4: Rebuild with current tools.
4225 * configure: Rebuild.
4226
4227 * config/tc-alpha.c (emit_ldgp): Give an error message rather than
4228 an assertion failure for a case we can't handle when OBJ_ECOFF.
4229
4230 * expr.c (operator): And with 0xff to avoid problems with signed
4231 char.
4232
42331998-12-03 Nick Clifton <nickc@cygnus.com>
4234
4235 * config/tc-fr30.c (md_cgen_lookup_reloc): Generate
4236 BFD_RELOC_FR30_48 instead of BFD_RELOC_FR30_32.
4237
42381998-12-02 Nick Clifton <nickc@cygnus.com>
4239
4240 * config/tc-fr30.c (md_cgen_lookup_reloc): Enable relocs for
4241 LDI:20 insn.
4242
4243Thu Nov 26 11:23:48 1998 Dave Brolley <brolley@cygnus.com>
4244
3e87a760
AM
4245 * config/tc-fr30.c (md_pcrel_from_section): Restore previous
4246 calculation of pcrel point.
252b5132
RH
4247
4248Tue Nov 24 17:21:52 1998 Nick Clifton <nickc@cygnus.com>
4249
4250 * config/tc-fr30.c (md_pcrel_from_section): Fix calculation of
4251 pcrel point.
4252
4253Tue Nov 24 14:54:38 1998 Nick Clifton <nickc@cygnus.com>
4254
4255 * config/tc-d10v.c (md_assemble): Make static 'etype' have file
4256 scope.
4257 (d10v_cleanup): Only generate previous insn if a multiline insn is
4258 not pending.
4259
4260Fri Nov 20 11:41:13 1998 Nick Clifton <nickc@cygnus.com>
4261
4262 * config/tc-fr30.c (md_cgen_lookup_reloc): Add support for
3e87a760 4263 FR30_OPERAND_I32.
252b5132
RH
4264
4265Thu Nov 19 15:01:29 1998 Nick Clifton <nickc@cygnus.com>
4266
4267 * config/tc-arm.c (md_parse_option): Add support for -marm7xxx and
4268 -marm6xxx command line switches.
4269
42701998-11-18 Doug Evans <devans@casey.cygnus.com>
4271
4272 * Makefile.am (DEP): Use $(srcdir)/../mkdep.
4273 (itbl-ops.o): Delete duplicate dependencies.
4274 Rebuild dependencies.
4275 Add fr30 dependencies.
4276 * Makefile.in: Rebuild.
4277
4278Tue Nov 17 13:42:42 1998 Nick Clifton <nickc@cygnus.com>
4279
4280 * config/tc-fr30.c (md_cgen_lookup_reloc): Updated to match latest
4281 opcode list.
4282 * listing.c: Ignore line terminator characters found inside
3e87a760 4283 strings.
252b5132
RH
4284
4285Thu Nov 12 19:21:24 1998 Dave Brolley <brolley@cygnus.com>
4286
4287 * po/gas.pot: Regenerated.
4288
4289Thu Nov 12 10:54:16 1998 Nick Clifton <nickc@cygnus.com>
4290
4291 * config/tc-fr30.c (fr30_is_colon_insn): New name for
4292 fr30_is_label_start(). Also checks for delay slot insns.
4293
4294 * config/tc-fr30.c (fr30_is_label_start): New function: Handle
4295 FR30 instructions which contain a colon in the mnemonic.
4296
4297 * config/tc-fr30.h (TC_START_LABEL): Define this macro.
4298
4299Wed Nov 11 09:58:21 1998 Nick Clifton <nickc@cygnus.com>
4300
4301 * config/tc-fr30.c: Removed currently superflous code.
4302
4303Tue Nov 10 13:13:05 1998 Nick Clifton <nickc@cygnus.com>
4304
4305 * config/tc-fr30.h: New file.
4306 * config/tc-fr30.c: Tweaking so that it will compile.
4307
4308Tue Nov 10 14:41:33 1998 Catherine Moore <clm@cygnus.com>
4309
66778679
RH
4310 * config/tc-d10v.h (obj_fix_adjustable): Define.
4311 (TC_FORCE_RELOCATION): Define.
4312 (d10v_force_relocation): Declare.
4313 * config/tc-d10v.c (tc_gen_reloc): Handle Vtable relocs.
4314 (md_apply_fix3): Handle Vtable relocs.
4315 (d10v_fix_adjustable): New.
4316 (d10v_force_relocation): New.
252b5132
RH
4317
4318Mon Nov 9 14:25:06 1998 Nick Clifton <nickc@cygnus.com>
4319
4320 * config/tc-d30v.c: Change default behaviour to ignore potential
4321 conflicts between register name and symbol names.
4322
4323Wed Nov 4 18:42:00 1998 Dave Brolley <brolley@cygnus.com>
4324
4325 * configure.in: Add fr30-*-*.
4326 * config/tc-fr30.c: New file.
4327 * Makefile.in: Regenerated.
4328 * config.in: Regenerated.
4329 * configure: Regenerated.
4330 * doc/Makefile.in: Regenerated.
4331 * po/gas.pot: Regenerated.
4332
4333Mon Nov 2 20:54:16 1998 Doug Evans <devans@canuck.cygnus.com>
4334
4335 * config/tc-m32r.c (assemble_two_insns): Ensure both insns
4336 are 16 bit insns.
4337
4338Mon Nov 2 20:10:18 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
4339
4340 * app.c (do_scrub_begin): Set characters above 127 to be symbol
4341 characters.
4342 (do_scrub_chars): Add some casts to unsigned char to avoid
4343 unwanted sign extension.
4344 * read.c (lex_type): Set characters about 127 to be symbol
4345 characters.
4346 * config/tc-i386.c (md_begin): Set identifier_chars and
4347 operand_chars for values above 127.
4348
4349Mon Nov 2 15:05:33 1998 Geoffrey Noer <noer@cygnus.com>
4350
66778679
RH
4351 * configure.in: detect cygwin* instead of cygwin32*
4352 * configure: regenerate
252b5132
RH
4353
4354Tue Oct 27 13:18:40 1998 Nick Clifton <nickc@cygnus.com>
4355
4356 * listing.c: Add support for producing a listing from piped
3e87a760 4357 input.
252b5132
RH
4358
4359Tue Oct 27 08:56:44 1998 Gavin Romig-Koch <gavin@cygnus.com>
4360
4361 * config/tc-mips.c (hilo_interlocks): Remove mips_3900.
4362 (append_insn): Account for the tx39's multiply behavior.
4363
43641998-10-26 Michael Meissner <meissner@cygnus.com>
4365
4366 * config/tc-m32r.c (assemble_two_insns): Rename assemble_two_insns
4367 from assemble_parallel_insns. Add support for '->' to indicate
4368 explicitly serializing the instructions.
4369 (md_assemble): Ditto.
4370
4371Sat Oct 24 15:12:19 1998 Catherine Moore <clm@cygnus.com>
4372
66778679
RH
4373 * config/tc-sh.c (sh_fix_adjustable): Adjust EXTERN and
4374 WEAK handling.
252b5132
RH
4375
4376Thu Oct 22 12:41:33 1998 Catherine Moore <clm@cygnus.com>
4377
66778679 4378 * cgen.c (gas_cgen_md_apply_fix3): Revert last change.
252b5132
RH
4379
4380Thu Oct 22 10:03:15 1998 Ron Unrau <runrau@cygnus.com>
4381
4382 * config/tc-mips.c : support frame and regmask/fregmask when
4383 MIPS_STABS_ELF is specified.
4384
4385Wed Oct 21 11;34:51 1998 Catherine Moore <clm@cygnus.com>
4386
66778679
RH
4387 * config/tc-sh.c (sh_fix_adjustable): Only include if OBJ_ELF.
4388 (md_apply_fix): Don't return 1 for VTABLE relocs.
4389 * config/tc-sh.h (obj_fix_adjustable): Define only if OBJ_ELF.
252b5132
RH
4390
4391Tue Oct 20 11:18:28 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4392
4393 * doc/c-i386.texi: Replace occurences of "opcode" with
4394 "instruction mnemonic", "instruction", or "mnemonic" when
4395 referring to the name of an instruction. Use "opcode" when
4396 referring to the sequence of machine bytes.
4397
4398 * config/tc-i386.c (opcode_chars): Rename to mnemonic_chars.
4399 (is_opcode_char): Rename to is_mnemonic_char.
4400 (md_assemble and i386_operand): Correct error messages from
66778679 4401 "opcode" to "instruction mnemonic"
252b5132
RH
4402 Rename throughout opcode[] -> mnemonic[], opp -> mnem_p,
4403 MAX_OPCODE_SIZE -> MAX_MNEM_SIZE,
4404 DWORD_OPCODE_SUFFIX -> DWORD_MNEM_SUFFIX,
4405 WORD_OPCODE_SUFFIX -> WORD_MNEM_SUFFIX,
4406 BYTE_OPCODE_SUFFIX -> BYTE_MNEM_SUFFIX,
4407 SHORT_OPCODE_SUFFIX -> SHORT_MNEM_SUFFIX
4408 LONG_OPCODE_SUFFIX -> LONG_MNEM_SUFFIX
4409
4410 * config/tc-i386.h (*_MNEM_SUFFIX): Rename from *_OPCODE_SUFFIX.
4411
4412 * config/tc-i386.c (i386_operand): Check for garbage after
4413 register name.
4414
4415Tue Oct 20 10:49:42 1998 Ian Lance Taylor <ian@cygnus.com>
4416
4417 * config/tc-i386.c (md_apply_fix3): Change handling of PCREL reloc
3e87a760 4418 for BFD_ASSEMBLER to only change value when COFF if TE_PE.
252b5132
RH
4419
4420Mon Oct 19 20:20:42 1998 Catherine Moore <clm@cygnus.com>
4421
66778679
RH
4422 * config/tc-sh.h (obj_fix_adjustable): Define.
4423 * config/tc-sh.c (sh_force_relocation): Handle VT relocs.
4424 (md_apply_fix): Likewise.
4425 (tc_gen_reloc): Likewise.
4426 (sh_fix_adjustable): New.
252b5132
RH
4427
4428Mon Oct 19 12:35:43 1998 Doug Evans <devans@seba.cygnus.com>
4429
4430 * cgen.c (gas_cgen_finish_insn): Update handling of CGEN_INT_INSN_P.
4431 * cgen.h (gas_cgen_finish_insn): Update prototype.
4432 * config/tc-m32r.c (m32r_insn): CGEN_INT_INSN -> CGEN_INT_INSN_P.
4433 cgen_insn_t -> CGEN_INSN_INT.
4434 (make_parallel): Update handling of CGEN_INT_INSN_P.
4435 (assemble_parallel_insn): Ditto.
4436 (target_make_parallel): New function.
4437 (md_assemble): Use it.
4438
4439Mon Oct 19 13:16:12 1998 Catherine Moore <clm@cygnus.com>
4440
66778679 4441 * config/tc-m32r.c (m32r_force_relocation): Fix typo.
252b5132
RH
4442
4443Sun Oct 18 18:48:57 1998 Jeffrey A Law (law@cygnus.com)
4444
4445 * config/tc-sh.c (md_assemble): Make sure the entire opcode is
4446 converted into lower case.
4447
4448Fri Oct 16 13:36:34 CDT Catherine Moore <clm@cygnus.com>
4449
66778679
RH
4450 * cgen.c (gas_cgen_md_apply_fix3): Handle VTABLE relocs.
4451 (gas_cgen_tc_gen_reloc): Likewise.
4452 * config/tc-m32r.h (obj_fix_adjustable): Define.
4453 * config/tc-m32r.c (m32r_fix_adjustable): New.
4454 (m32r_force_relocation): Handle VTABLE relocs.
252b5132
RH
4455
4456Wed Oct 14 11:33:38 1998 Nick Clifton <nickc@cygnus.com>
4457
4458 * doc/c-arm.texi (ARM Directives): Document .ltorn directive.
4459
4460Mon Oct 12 11:07:21 1998 Nick Clifton <nickc@cygnus.com>
4461
4462 * config/tc-m32r.c (assemble_parallel_insn): Convert second opcode
4463 to lower case before parsing.
4464
4465 * config/tc-d30v.c (parallel_ok): Ignore conflicts when explicitly
4466 parallel insns modift buts in the PSW as a side effect.
4467
4468Thu Oct 8 10:18:33 1998 Nick Clifton <nickc@cygnus.com>
4469
4470 * config/tc-d30v.c (find_format): Test for missing flag and
4471 control registers.
3e87a760 4472
252b5132
RH
4473 (md_apply_fix3): Fix error messages to avoid
4474 assumption about presence of a symbol.
4475
4476 (parallel_ok): Disallow parallel instructions that both modify the
4477 same flag register.
4478
4479 (find_format): Generate a warning if an odd numbered register is
4480 used as the first register in a mutli-register instruction.
4481
4482Wed Oct 7 14:09:14 1998 Nick Clifton <nickc@cygnus.com>
4483
4484 * config/tc-d30v.c (md_apply_fix3): Do not assume that bad
4485 relocations are always associated with a symbol.
4486
4487Tue Oct 6 09:31:15 1998 Catherine Moore <clm@cygnus.com>
4488
66778679
RH
4489 * tc-sparc.h (TC_FORCE_RELOCATION): Define.
4490 (elf32_sparc_force_relocation): Declare.
4491 * tc-sparc.c (md_apply_fix3): Handle vtable relocs.
4492 (tc_gen_reloc): Handle vtable relocs.
4493 (elf32_sparc_force_relocation): New.
252b5132
RH
4494
4495Mon Oct 5 09:25:32 1998 Catherine Moore <clm@cygnsu.com>
4496
66778679
RH
4497 * symbols.c (S_IS_FUNCTION): New.
4498 * config/tc-v850.h (obj_fix_adjustable): Define.
4499 (TC_FORCE_RELOCATION): Define.
4500 (v850_force_relocation): Declare.
4501 * config/tc-v850.c (tc_gen_reloc): Use offset instead
4502 of fx_addnumber for VTABLE reloc addends.
4503 (md_apply_fix3): Handle VTABLE relocs.
4504 (v850_fix_adjustable): New.
4505 (v850_force_relocation): New.
252b5132
RH
4506
4507Mon Oct 5 00:48:52 1998 Jeffrey A Law (law@cygnus.com)
4508
4509 * tc-hppa.c (fp_operand_format): Add some additional formats.
4510 (pa_ip): Do not automatically promote into pa2.0 mode.
4511 (pa_level): Handle ".level 2.0".
4512
4513Sun Oct 4 20:57:43 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4514
4515 * config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
4516 * config/tc-i386.h (template.extension_opcode): Change to
66778679 4517 unsigned int to allow full range of 8-bit opcode suffixes.
252b5132
RH
4518 (None): Redefine as 0xffff.
4519
4520 From Jeff B Epler <jepler@usgs.gov>
4521 * doc/c-i386.texi (i386-SIMD): New section.
4522
4523Thu Oct 1 15:37:54 1998 Richard Henderson <rth@cygnus.com>
4524
4525 * read.c (discard_rest_of_line): New function.
4526 * read.h: Declare it.
4527 * config/tc-alpha.c (s_alpha_mask, s_alpha_frame): Use it.
4528
4529Thu Oct 1 10:33:53 1998 Nick Clifton <nickc@cygnus.com>
4530
4531 * config/tc-d10v.c (find_symbol_matching_register): New function.
4532 (find_opcode): Cope with the case where a register name matches
4533 a symbol name.
4534
4535Wed Sep 30 10:52:32 1998 Nick Clifton <nickc@cygnus.com>
4536
4537 * config/tc-v850.c (md_pcrel_from): Rename to
4538 v850_pcrel_from_section.
4539 (v850_pcrel_from_section): Do not resolves symbols in other
3e87a760 4540 sections.
252b5132
RH
4541
4542 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
4543
4544Mon Sep 28 11:01:20 1998 Nick Clifton <nickc@cygnus.com>
4545
4546 * config/tc-d10v.c (find_opcode): Generate an error if a register
4547 is supplied for an operand that should not be a register.
4548
4549Fri Sep 25 10:04:21 1998 Nick Clifton <nickc@cygnus.com>
4550
4551 * config/tc-d30v.c (write_2_short): But do allow delayed branch
4552 instructions to have another instruction in the right bin.
4553
4554Thu Sep 24 09:28:34 1998 Nick Clifton <nickc@cygnus.com>
4555
4556 * config/tc-d30v.c (write_2_short): Do not allow instructions in
4557 the right container if the left container holds a branch
3e87a760 4558 instruction.
252b5132
RH
4559
4560Wed Sep 23 10:54:29 1998 Nick Clifton <nickc@cygnus.com>
4561
4562 * config/tc-d30v.c (reg_name_search): Only warn if a name matches
4563 both a register name and symbol name.
4564 (find_format): Allow correct parsing of MVTSYS and MVFSYS insns.
4565
4566Tue Sep 22 17:49:16 1998 Nick Clifton <nickc@cygnus.com>
4567
4568 * config/tc-d30v.c (write_2_short): Implement EITHER_BUT_PREFER_MU
4569 execution unit class.
4570
4571 (reg_name_search): If a name matches a register and a symbol,
4572 prefer the register.
4573 (find_format): Disallow flag registers when a general purpose
4574 register is required.
4575 If a number is required, but a register has been given, check to
4576 see if a symbol with the same name as the register exists, and if
4577 so, use that symbol.
4578
4579Tue Sep 22 16:40:52 1998 Jim Wilson <wilson@cygnus.com>
4580
4581 * config/obj-elf.h (ECOFF_DEBUGGING): Add missing parens.
4582
4583Tue Sep 22 15:44:21 1998 Nick Clifton <nickc@cygnus.com>
4584
4585 * config/tc-d30v.c (find_format): Do not accept flag registers as
4586 general purpose registers.
4587 (find_format): If an immediate value is expected at a given place
4588 in a format, but a register name has been provided instead, check
4589 to see if that register name matches the name of a predefined
4590 symbol and if it does, then use the symbol instead.
4591 (reg_name_search): If a register name matches a symbol name,
4592 prefer the register name to the symbol name.
4593
4594Mon Sep 21 10:42:57 1998 Nick Clifton <nickc@cygnus.com>
4595
4596 * config/tc-m32r.c (m32r_do_align): After inserting NOPs, reset
4597 the previous insn to empty.
4598
45991998-09-20 Michael Meissner <meissner@cygnus.com>
4600
4601 * config/tc-ppc.c (md_apply_fix3): Do not break string into two
4602 pieces, forcing the use of an ANSI compiler.
4603
4604Sun Sep 20 00:58:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4605
4606 * config/tc-m68k.h (TC_FORCE_RELOCATION): New macro. Force vtable
4607 relocs.
4608 * config/tc-m68k.c (md_apply_fix_2): Do nothing for vtable relocs.
4609
4610Tue Sep 15 08:51:07 1998 Catherine Moore <clm@cygnus.com>
3e87a760 4611
66778679
RH
4612 * config/obj-elf.c (obj_elf_vtable_inherit): Handle arm
4613 assembler syntax.
4614 (obj_elf_vtable_entry): Likewise.
4615 * config/tc-arm.h: Define TC_FORCE_RELOCATION for OBJ_ELF.
4616 * config/tc-arm.c (md_apply_fix3): Handle VTABLE relocations.
4617 (tc_gen_reloc): Likewise.
4618 (arm_fix_adjustable): Likewise.
4619 (elf32_arm_force_relocation): New.
4620 (armelf_frob_symbol): Remove coff-style symbol support.
252b5132
RH
4621
4622Wed Sep 9 11:27:16 1998 Richard Henderson <rth@cygnus.com>
4623
4624 * config/tc-i386.c (i386_operand): Fix typo in last patch.
4625
4626Tue Sep 8 18:10:01 1998 Catherine Moore <clm@cygnus.com>
3e87a760 4627
66778679
RH
4628 * config/tc-arm.c (arm_adjust_symtab): Move #ifdef
4629 OBJ_COFF so that routine is defined for a.out format.
252b5132
RH
4630
4631Tue Sep 8 15:56:19 1998 Richard Henderson <rth@cygnus.com>
4632
4633 * config/tc-i386.c (i386_operand): Detect non-segment registers
4634 used as segment prefixes.
4635
4636Sat Sep 5 19:00:38 1998 Ian Lance Taylor <ian@cygnus.com>
4637
4638 * ehopt.c (check_eh_frame): Check the size of the FDE, and don't
4639 optimize across FDE boundaries.
4640
4641 * config/obj-coff.c (obj_coff_section): Preserve any link once
4642 flags when setting the section flags.
4643
4644Fri Sep 4 17:07:14 1998 Nick Clifton <nickc@cygnus.com>
4645
4646 * config/tc-arm.h (obj_adjust_symtab): Fixed typo.
4647 * config/tc-arm.c (armelf_adjust_symtab): Reformatted.
4648
4649Fri Sep 4 13:57:43 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
4650
4651 * config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
4652 to the host width.
4653
4654Wed Sep 2 11:31:14 1998 Richard Henderson <rth@cygnus.com>
4655
4656 * frags.c (frag_grow): Include the size of the frag struct in the
4657 obstack chunk size.
4658
4659 * subsegs.c (subseg_set_rest): Adjust the seginfo frchain start
4660 if the new subseg comes before the old.
4661
4662Tue Sep 1 15:01:33 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
4663
4664 * config/tc-sparc.c (sparc_ip): Allow all digits in an instruction
4665 to handle edge8 and edge16.
4666
4667Mon Aug 31 09:51:14 1998 Richard Henderson <rth@cygnus.com>
4668
4669 * config/obj-elf.c (obj_elf_vtable_inherit): Print error message
4670 before we clobber the symbol involved.
4671
4672Mon Aug 31 10:58:06 1998 Catherine Moore <clm@cygnus.com>
4673
3e87a760 4674 * config/tc-arm.c: Remove OBJ_ELF definitions for
66778679
RH
4675 S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS. Only
4676 use arm_adjust_symtab for OBJ_COFF.
4677 (armelf_adjust_symtab): New Routine.
4678 * config/tc-arm.h: Define obj_adjust_symtab to
4679 armelf_adjust_symtab for OBJ_ELF.
3e87a760 4680
252b5132
RH
4681Sat Aug 29 22:18:51 1998 Richard Henderson <rth@cygnus.com>
4682
4683 * configure.in: Make all i386-elf targets use bfd_gas.
4684 * config/tc-i386.c (tc_i386_force_relocation): New.
4685 (tc_i386_fix_adjustable): Don't fix vtable relocs.
4686 (md_apply_fix3): Likewise.
4687 (tc_gen_reloc): Handle them.
4688 * config/tc-i386.h (TC_FORCE_RELOCATION): Always define, calling
4689 tc_i386_force_relocation.
4690
4691Mon Aug 24 13:40:21 1998 Nick Clifton <nickc@cygnus.com>
4692
4693 * config/tc-arm.c (md_show_usage): Improve formatting of --help output.
4694
4695Fri Aug 21 18:43:48 1998 Nick Clifton <nickc@cygnus.com>
4696
4697 * config/tc-d30v.c (md_assemble): Copy previous opcode over
4698 current opcode after writing the first insturction of a reverse
3e87a760
AM
4699 sequential pair.
4700
252b5132
RH
4701Fri Aug 21 07:30:35 1998 Doug Evans <devans@canuck.cygnus.com>
4702
4703 * read.h (generate_lineno_debug): Add prototype.
4704 * read.c (generate_lineno_debug): Make non-static.
4705
4706Thu Aug 20 23:17:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4707
4708 * config/tc-i386.c (md_assemble): Only warn for address/data size
4709 prefixes.
4710
4711Thu Aug 20 14:45:08 1998 Nick Clifton <nickc@cygnus.com>
4712
4713 * config/tc-arm.c (arm_fix_adjustable): Do not adjust relocations
4714 against Thumb function names, as the linker needs this information.
4715
47161998-08-20 Vladimir N. Makarov <vmakarov@cygnus.com>
4717
4718 * expr.c (operand): Check also that there is no advance in operand
4719 after atof_generic in order to decide "is it label 0f or floating
4720 point number?".
4721
4722Wed Aug 19 09:30:16 1998 Nick Clifton <nickc@cygnus.com>
4723
4724 * config/tc-m32r.c: Replace double dash prefix to M32R specific
4725 command line options with a single dash.
4726 * doc/c-m32r.texi: Replace double dash prefix with a single dash.
4727
4728Tue Aug 18 11:59:43 1998 Catherine Moore <clm@cygnus.com>
4729
3e87a760
AM
4730 * tc-arm.h: Define obj_fix_adjustable for OBJ_ELF.
4731 * tc-arm.c (arm_fix_adjustable): New routine.
252b5132
RH
4732
47331998-08-13 Vladimir N. Makarov <vmakarov@cygnus.com>
4734
4735 * read.c (s_align, s_comm, s_mri_common, s_fail, s_globl, s_space,
4736 s_float_space, s_struct, cons_worker): Move ignore_rest_of_line or
4737 demand_empty_rest_of_line before mri_comment_end.
4738 (equals): Check garbage after expression before
4739 mri_comment_end in MRI mode.
4740
4741Thu Aug 13 15:08:42 1998 Ian Lance Taylor <ian@cygnus.com>
4742
4743 * config/tc-mips.c (macro): Correct M_SGE_I/M_SGEUI_I case for a
4744 small immediate constant to use the constant itself rather than
4745 always using 1.
4746
4747Wed Aug 12 18:47:38 1998 Ian Lance Taylor <ian@cygnus.com>
4748
4749 * config/tc-hppa.c (pa_enter): Call as_bad rather than abort.
4750 (pa_leave): Likewise.
4751
4752Wed Aug 12 13:25:03 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4753
4754 * config/tc-i386.c (md_assemble): Emit a warning for stand-alone
4755 prefixes.
4756 (i386_operand): Fix an error message.
4757
4758Tue Aug 11 14:44:32 1998 Nick Clifton <nickc@cygnus.com>
4759
4760 * doc/c-arm.texi (ARM Directives): Document .req directive.
4761
4762 * config/tc-arm.c (reg_required_here): Display erroneous string if
4763 the register name could not be decoded.
4764 Do not set inst.instruction if the sift is -1.
4765
4766Mon Aug 10 15:39:56 1998 Richard Henderson <rth@cygnus.com>
4767
4768 * config/tc-alpha.c (tc_gen_reloc): Bias WEAK symbols just as
4769 we do for EXTERN.
4770
4771Mon Aug 10 15:06:18 1998 Nick Clifton <nickc@cygnus.com>
4772
4773 * config/tc-d30v.c (d30v_align): Always perform alignment request,
4774 even if it is belived to be unnecessary.
4775
4776Mon Aug 10 17:48:09 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4777
4778 config/tc-i386.c (i386_operand): Size immediate constants by
4779 suffix (erroneously removed as part of July 7 change).
4780
4781Sun Aug 9 20:45:32 1998 Catherine Moore <clm@cygnus.com>
4782
66778679
RH
4783 * config/obj-elf.h: Check for redefinition of obj_frob_symbol.
4784 * config/tc-arm.c: Define S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.
4785 (armelf_frob_symbol): New Routine.
4786 * config/tc-arm.h: Define obj_frob_symbol if OBJ_ELF.
252b5132
RH
4787
4788Sat Aug 8 15:21:28 1998 Richard Henderson <rth@cygnus.com>
4789
4790 * config/tc-alpha.c (alpha_fix_adjustable): Don't adjust weak syms.
4791
4792Wed Aug 5 15:54:14 1998 Nick Clifton <nickc@cygnus.com>
4793
4794 * config/tc-arm.c (md_begin): Set BFD private flags depending upon
4795 command line switches passed to assembler.
4796
4797Mon Aug 3 14:02:52 1998 Doug Evans <devans@seba.cygnus.com>
4798
4799 * cgen.h (GAS_CGEN_MAX_FIXUPS): GAS_ prepended, all uses updated.
4800 (gas_cgen_opcode_desc): Declare.
4801 (gas_cgen_parse_operand): Declare.
4802 (*): Prepend gas_ to gas specific fns to denote them as such.
4803 All uses updated.
4804 * cgen.c (gas_cgen_opcode_desc): New global
4805 (gas_cgen_init_parse): Renamed from cgen_asm_init_parse.
4806 (queue_fixup): Renamed from cgen_queue_fixup.
4807 (*): Prepend gas_ to gas specific fns to denote them as such.
4808 All uses updated.
4809 (gas_cgen_md_apply_fix3): Update call to insert_operand.
4810 (gas_cgen_finish_insn): Renamed from cgen_asm_finish_insn.
4811 * config/tc-m32r.c (md_begin): Remove use of CGEN_SYM.
4812 Open opcode table and initialize it.
4813 (make_parallel): Use gas_cgen_opcode_desc.
4814 (assemble_parallel_insn): Ditto. Remove use of CGEN_SYM.
4815 (md_assemble): Ditto.
4816
4817Sat Aug 1 19:27:30 1998 Richard Henderson <rth@cygnus.com>
4818
4819 * as.h (debug_info_type): Add entries for unspecified and dwarf*.
4820 * ecoff.c (ecoff_generate_asm_lineno): Take no arguments; call
4821 as_where ourselves. Provide a stub for !ECOFF_DEBUGGING.
4822 * ecoff.h: Move ECOFF_DEBUGGING protection inside GAS_ECOFF_H.
4823 Move ecoff_generate_asm_lineno outside ECOFF_DEBUGGING protection.
4824 * read.c (generate_lineno_debug): Tidy ECOFF bits. Use
4825 DEBUG_UNSPECIFIED rather than DEBUG_NONE for initial test.
4826 * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Define to a variable.
4827 (SEPARATE_STAB_SECTIONS): Conditionalize on value of ECOFF_DEBUGGING.
4828 (INIT_STAB_SECTION): Likewise.
4829 (OBJ_PROCESS_STAB): Likewise.
3e87a760 4830
252b5132
RH
4831 * config/tc-alpha.c (md_longopts): New options -mdebug/-no-mdebug.
4832 (md_parse_option): Watch for them.
4833 (alpha_cur_ent_sym, alpha_flag_mdebug): New variables.
4834 (md_begin): Kill neverdef code.
4835 (s_alpha_ent, s_alpha_end, s_alpha_mask, s_alpha_frame): New.
4836 (s_alpha_prologue): Watch alpha_cur_ent_sym.
4837 (s_alpha_coff_wrapper): New.
4838 (md_pseudo_table): Trap all ECOFF pseudos.
3e87a760 4839
252b5132
RH
4840Fri Jul 31 16:45:54 1998 Ron Unrau <runrau@cygnus.com>
4841
4842 Start of changes to remove mdebug section from mips*-elf
4843 Based on MIPS_STAB_ELF definition
4844 * acconfig.h: undef if not configured
4845 * config.in: undef if not configured
4846 * config/mips-elf.h: only set ECOFF debugging if not stabs-in-elf
4847 * config/tc-mips.c (s_ent): set BSF_FUNCTION
4848 * stabs.c (s_stab_generic): flush frag
4849
4850Fri Jul 31 16:14:45 1998 Catherine Moore <clm@cygnus.com>
4851
66778679
RH
4852 * configure.in: (arm-*-elf): Handle.
4853 (thumb-*-elf): Handle.
4854 * configure: Regenerate.
4855 * read.c (stringer): Fix typo in comment.
4856 * write.c (fixup_segment): Don't add symbol value to addend if
4857 TC_ARM and OBJ_ELF.
4858 * config/tc-arm.c (md_section_align): Don't align dwarf debug
4859 sections.
4860 (tc_gen_reloc): Always set the reloc addend to fixp->fx_offset
4861 for OBJ_ELF.
252b5132
RH
4862
4863Thu Jul 30 21:38:43 1998 Frank Ch. Eigler <fche@cygnus.com>
4864
4865 * config/tc-d30v.c ({cur,prev}_left_kills_right_p): New variables.
4866 (write_2_short): Emit warning if new flag is set.
4867 (do_assemble): Set flags if left instruction is one of special
4868 "right-instruction-killer" type.
4869
4870Tue Jun 28 18:12:28 1998 Stan Cox <scox@cygnus.com>
3e87a760 4871
252b5132
RH
4872 * config/tc-sparc.c (md_number_to_chars, cons_fix_new_sparc):
4873 Always output words in debug_info section as big endian.
4874 (sparc_target_format): Choose correct bfd target.
4875 (md_apply_fix3): Rename BFD_RELOC_SPARC_32LE to BFD_RELOC_SPARC_REV32.
3e87a760 4876
252b5132
RH
4877Tue Jul 28 11:01:21 1998 Jeffrey A Law (law@cygnus.com)
4878
4879 * config/tc-mn10300.c (md_assemble): Fix "errmsg" initialization
4880 to work with internationalization code. Issue an error when two
4881 operands match that are not allowed to match.
4882
4883Mon Jul 27 16:25:58 1998 Doug Evans <devans@canuck.cygnus.com>
4884
4885 * configure.in (install_tooldir): Allow target to specify whether
4886 it wants to be installed in $(tooldir)/bin.
4887 * configure: Regenerate.
4888 * Makefile.am (install-exec-local): Set install-exec-tooldir
4889 dependency via configure.
4890 * Makefile.in: Regenerate.
4891
4892Fri Jul 24 19:58:59 1998 Doug Evans <devans@canuck.cygnus.com>
4893
4894 * Makefile.am (install-exec-local): Split into two ...
4895 (install-exec-bindir,install-exec-tooldir): New rules.
4896 * Makefile.in: Regenerate.
4897
4898Fri Jul 24 16:31:49 1998 Ian Lance Taylor <ian@cygnus.com>
4899
4900 * Makefile.am (install-exec-local): Don't remove the file before
4901 checking whether $(bindir) == $(tooldir)/bin. From Maciej
4902 W. Rozycki <macro@ds2.pg.gda.pl>.
4903 * Makefile.in: Rebuild.
4904
4905Fri Jul 24 09:13:46 1998 Doug Evans <devans@canuck.cygnus.com>
4906
4907 * cgen.c: Include libiberty.h.
4908 (cgen_md_apply_fix3): Update call to md_cgen_lookup_reloc.
4909 (cgen_tc_gen_reloc): Use xmalloc, not bfd_alloc.
4910 * cgen.h (cgen_md_apply_fix3,cgen_tc_gen_reloc): Declare.
4911 (md_cgen_lookup_reloc)): Declare.
4912 (md_cgen_record_fixup_exp): Declare.
4913 * config/tc-m32r.h (md_pcrel_from_section): Declare.
4914 (m32r_relax_frag): Declare.
4915 (cgen_md_apply_fix3): Decls moved to cgen.h.
4916 (cgen_record_fixup_exp,cgen_tc_gen_reloc): Ditto.
4917 (m32r_cgen_record_fixup_exp): Delete decl.
4918 * config/tc-m32r.c (m32r_cpu_desc): #if 0 out.
4919 (assemble_nop): Delete.
4920 (expand_debug_syms): Delete unused `exp'.
4921 (md_cgen_lookup_reloc): Renamed from CGEN_SYM (lookup_reloc).
4922 Add default case for -Wall.
4923 (m32r_cgen_record_fixup_exp): Add default case for -Wall.
4924 (md_atof): Delete unused wordP.
4925
4926Thu Jul 23 13:19:50 1998 Jeffrey A Law (law@cygnus.com)
4927
4928 * config/tc-mn10300.c (md_assemble): Make sure "errmsg" has a non-NULL
4929 value.
4930
4931Wed Jul 22 14:36:56 1998 Ian Lance Taylor <ian@cygnus.com>
4932
4933 * doc/as.texinfo: Add documentation for .end, .exitm, .fail,
4934 .ifc, .ifeqs, .ifge, .ifgt, .ifle, .iflt, .ifnc, .ifne, .ifnes,
4935 .print, .purgem, and .struct. Remove documentation for
4936 .app-file.
4937
4938Tue Jul 21 16:50:52 1998 Doug Evans <devans@seba.cygnus.com>
4939
4940 * cgen.c (cgen_md_apply_fix3): set_operand renamed to set_vma_operand.
4941 Update call to insert_operand.
4942
4943Fri Jul 17 11:42:20 1998 Nick Clifton <nickc@cygnus.com>
4944
4945 * config/tc-m32r.c (ms_show_usage): Formatting changes.
4946
4947Wed Jul 15 15:38:28 1998 Ian Lance Taylor <ian@cygnus.com>
4948
4949 * config/tc-i386.c (md_assemble): Don't get confused by trailing
4950 whitespace after a prefix operator.
4951
4952Tue Jul 14 15:32:56 1998 Richard Henderson <rth@cygnus.com>
4953
4954 * configure.in (i386-*-beos{pe,elf,}*): Recognize.
4955
4956Tue Jul 14 12:33:44 1998 Chris Torek <torek@bsdi.com>
4957
4958 * config/tc-sparc.c (log2): New static function.
4959 (s_reserve): Use log2 to convert alignment before calling
4960 record_alignment.
4961 (s_common): Use log2 to convert alignment before calling
4962 record_alignment and frag_align.
4963 (sparc_cons_align): Use log2.
4964
4965Tue Jul 14 11:58:40 1998 Ian Lance Taylor <ian@cygnus.com>
4966
4967 * config/tc-sparc.c (s_reserve): Set symbol size if OBJ_ELF.
4968 (s_common): Likewise.
4969
4970 * config/tc-sparc.c (sparc_handle_align): Reindent a bit. Correct
4971 initialization of waddr.
4972 (sparc_elf_final_processing): Add default case to switch.
4973
4974Tue Jul 14 11:00:16 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4975
4976 * doc/c-i386.texi: Fix a typo. Use the term 80-bit real rather
4977 than temporary real.
4978
4979Mon Jul 13 13:55:42 1998 Ian Lance Taylor <ian@cygnus.com>
4980
4981 * write.c (subsegs_finish): Don't align the segments if there were
4982 any errors.
4983
4984 * config/obj-coff.c (c_symbol_merge): Correct number of bytes when
4985 copying aux information.
4986
4987 * expr.c (make_expr_symbol): Catch attempts to turn an O_big
4988 expression into a symbol.
4989
4990Mon Jul 13 13:29:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4991
4992 * config/tc-i386.c (mode_from_disp_size): Change arg and return
4993 type to unsigned int.
4994 (md_assemble): Change type used to store offsets from unsigned
4995 long to long.
4996 (i386_operand): Switch error check to only call RESTORE_END_STRING
4997 once after parse_register.
4998
4999Fri Jul 10 16:00:04 1998 Nick Clifton <nickc@cygnus.com>
5000
5001 * config/tc-v850.c (md_show_usage): Changed format to match that
5002 of gcc, ld, etc.
5003
5004 * as.c (show_usage): Changed format to match that of gcc, ld, etc.
5005
5006Thu Jul 9 12:09:57 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5007
5008 * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't adjust vtable
5009 relocs.
5010 (md_apply_fix_2): Force the symbol of the vtable reloc to be
5011 weak.
5012
5013Thu Jul 9 11:31:54 1998 Ian Lance Taylor <ian@cygnus.com>
5014
5015 * doc/Makefile.am (MAINTAINERCLEANFILES): Define.
5016 * doc/Makefile.in: Rebuild.
5017
5018Wed Jul 8 12:18:56 1998 Jeffrey A Law (law@cygnus.com)
5019
66778679
RH
5020 * config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
5021 for %lo expressions.
5022 (mips_ip, case 'u'): Move range check after code to mask
5023 off bits in %hi/%lo expressions. Mask off high bits for
5024 %lo expressions.
252b5132
RH
5025
5026Tue Jul 7 17:57:38 1998 Ian Lance Taylor <ian@cygnus.com>
5027
5028 * doc/Makefile.am (gasver.texi): New target.
5029 (as.info, as.dvi): Depends upon gasver.texi.
5030 * doc/as.texinfo: Include gasver.texi. Mention version number on
5031 title page and in top node.
5032 * doc/Makefile.in: Rebuild.
5033
5034Tue Jul 7 11:42:16 1998 Richard Henderson <rth@cygnus.com>
5035
5036 * listing.c (listing_listing): For EDICT_LIST, skip all lines up to
5037 but not including the line containing the edict.
5038 * listing.h (LISTING_EOF): New.
5039 * input-scrub.c (input_scrub_next_buffer): Call it.
5040
5041Tue Jul 7 13:00:37 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5042
5043 * config/tc-i386.c (i386_operand): Don't set the size of an
3e87a760 5044 immediate address based solely on the suffix and the mode.
252b5132
RH
5045
5046 * config/tc-i386.c (md_assemble): Add assertion to make sure
5047 overlap2 does not set Imm.
5048
5049 * config/tc-i386.c (space_chars): Remove. The scrubber converts
5050 sequences of whitespace to a single space.
5051 (is_space_chars): Just compare with space.
5052 (md_begin): Don't initialize space_chars.
5053 (md_assemble): Just skip a single whitespace character.
5054 (i386_operand): Rewrite base-index parsing to use new
5055 parse_register, and to skip white space. Skip white space in a
5056 number of other places too. Don't give error message if
5057 parse_register fails.
5058 (parse_register): Change reg_string parameter to be non-const.
5059 Add end_op parameter. Skip white space after the `%', and return
5060 end of register string. Give error message here rather than
5061 caller.
5062
5063Fri Jul 3 15:34:34 1998 Ian Lance Taylor <ian@cygnus.com>
5064
5065 Based on patch from Matt Semersky <matts@scd.hp.com>:
5066 * expr.c (op_encoding): Make const.
5067 (expr_set_precedence): New function.
5068 (expr_begin): Don't set operator rankings, just call
5069 expr_set_precedence.
5070 * expr.h (expr_set_precedence): Declare.
5071 * read.c (s_mri): Call expr_set_precedence.
5072
5073Thu Jul 2 16:24:58 1998 Ian Lance Taylor <ian@cygnus.com>
5074
5075 * doc/as.texinfo (Statements): Remove paragraph discussing
5076 continuing lines with a backslash. This hasn't worked for years,
5077 if it ever did.
5078
5079Thu Jul 2 14:06:22 1998 Klaus Kaempf <kkaempf@rmi.de>
5080
66778679 5081 * obj-vms.c: Add C++ support with ctors/dtors sections. Add weak
252b5132
RH
5082 symbol definitions.
5083 (Ctors_Symbols, Dtors_Symbols): New symbol chains.
5084 (ps_CTORS, ps_DTORS): New section types.
5085 (vms_fixup_xtors_section): New function
5086 (Ctors_Psect, Dtors_Psect): Define.
5087 (IS_GXX_XTOR): Define
5088 (global_symbol_directory): Change check of gxx_bug_fixed to 0.
5089 Filter static constructors/destructors and add to
5090 Ctors_Symbols/Dtors_Symbols chain.
5091 (vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
5092 appropriate section.
5093
66778679 5094 * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
252b5132
RH
5095 * makefile.vms: Merge vax/vms support.
5096
5097Wed Jul 1 20:06:20 1998 Richard Henderson <rth@cygnus.com>
5098
5099 * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
5100 (elf_pseudo_table): Add them.
5101 * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
5102 (md_apply_fix): Accept them.
5103 (mips_fix_adjustable): Don't adjust them.
5104 (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
5105 * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
5106 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
5107 (tc_fix_adjustable): Don't adjust them.
5108
5109Wed Jul 1 16:35:32 1998 Doug Evans <devans@seba.cygnus.com>
5110
5111 * Makefile.am (CGEN_CPU_PREFIX): New variable.
5112 (cgen.o): Use it.
5113 * Makefile.in: Regenerate.
5114 * configure.in: AC_SUBST cgen_cpu_prefix.
5115 * configure: Regenerate.
5116
5117Wed Jul 1 21:38:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5118
5119 * config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
5120 Changed all users of COND12_DELAY.
5121
5122Fri Jun 26 11:21:11 1998 Jeffrey A Law (law@cygnus.com)
5123
5124 * config/tc-mn10300.c (set_arch_mach): New function.
5125 (md_pseudo_table): Add pseudo-ops to set the current machine type.
5126 (md_begin): Default to mn10300 mode.
5127 (md_assemble): Only accept instructions for the core mn10300
5128 chip and the active machine type.
5129
5130Wed Jun 24 19:06:04 1998 Ian Lance Taylor <ian@cygnus.com>
5131
5132 * subsegs.h (segment_info_type): Give the struct a name.
5133 * config/tc-h8300.h (tc_reloc_mangle): Add prototype.
5134 * config/tc-h8500.h (tc_reloc_mangle): Declare.
5135 * config/tc-sh.h (sh_coff_reloc_mangle): Add prototype.
5136 * config/tc-w65.h (tc_reloc_mangle): Declare.
5137 * config/tc-z8k.h (tc_reloc_mangle): Declare.
5138
5139Wed Jun 24 13:45:00 1998 Catherine Moore <clm@cygnus.com>
5140
66778679
RH
5141 * config/tc-v850.c (v850_comm): Restore old section
5142 after common processing.
252b5132
RH
5143
5144Wed Jun 24 11:50:54 1998 Klaus Kaempf <kkaempf@progis.de>
5145
5146 * config/obj-vms.c (Create_VMS_Object_File): Force binary file.
5147
5148Tue Jun 23 17:47:31 1998 Jim Wilson <wilson@cygnus.com>
5149
5150 * config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
5151 char with code that explicitly sign-extends.
5152
5153Tue Jun 23 13:54:57 1998 Nick Clifton <nickc@cygnus.com>
3e87a760 5154
252b5132
RH
5155 * config/tc-v850.c (md_begin): Restore text section as the current
5156 section after creating call table sections.
5157 * config/obj-coff.h (SYM_AUXINFO): New macro to conceal ugly
3e87a760 5158 code.
252b5132
RH
5159
5160 * config/obj-coff.c (c_symbol_merge): Replace complex expresion
5161 with call to macro SYM_AUXINFO.
5162
5163Tue Jun 23 15:09:27 1998 Mike Stump <mrs@wrs.com>
5164
5165 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
5166 with the program transform name.
5167 * Makefile.in: Rebuild.
5168
5169Mon Jun 22 19:52:42 1998 Ian Lance Taylor <ian@cygnus.com>
5170
5171 * config/obj-coff.c (c_symbol_merge): Fix copying of auxiliary
5172 information.
5173
5174Mon Jun 22 15:18:58 1998 Ian Lance Taylor <ian@cygnus.com>
5175
5176 * config/tc-i386.c (i386_operand): Be prepared for a space between
5177 the open parenthesis and the start of the register operand,
5178 because of the June 16 change.
5179
5180Sun Jun 21 21:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
5181
5182 * config/tc-sh.c (md_apply_fix): Handle weak symbols correctly if
5183 BFD_ASSEMBLER.
5184
5185Sun Jun 21 12:26:36 1998 Nick Clifton <nickc@cygnus.com>
5186
5187 * config/tc-d30v.c (d30v_align): Always perform alignment request,
5188 even if it is belived to be unnecessary.
5189
5190Fri Jun 19 13:57:06 1998 Ian Lance Taylor <ian@cygnus.com>
5191
5192 * write.c (adjust_reloc_syms): Never adjust relocs against weak
5193 symbols.
5194 * config/tc-mips.c (md_apply_fix): Adjust accordingly.
5195
5196Fri Jun 19 09:50:17 1998 Jeffrey A Law (law@cygnus.com)
5197
5198 * config/tc-mn10300.c (mn10300_insert_operand): Do not hardcode the
5199 shift amount for a repeated operand. The shift amount for the
5200 repeated copy comes from the size of the operand.
5201
5202Fri Jun 19 00:44:19 1998 Jeffrey A Law (law@cygnus.com)
5203
5204 * config/tc-h8300.c (get_operand): Fix typos in ldm/stm support.
5205
5206Wed Jun 17 13:07:05 1998 Ian Lance Taylor <ian@cygnus.com>
5207
5208 * config/tc-mips.c (md_show_usage): Fix -mipsN usage.
5209
5210Tue Jun 16 13:06:21 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5211
5212 * app.c (do_scrub_begin): If tc_symbol_chars is defined, treat all
5213 characters in it as LEX_IS_SYMBOL_COMPONENT.
5214 * config/tc-i386.h (tc_symbol_chars): Define.
5215 (extra_symbol_chars): Declare.
5216 * config/tc-i386.c (extra_symbol_chars): Define.
5217 (comment_chars): Don't use '/' as comment start if TE_LINUX.
5218 (line_comment_chars): Set to '/' if TE_LINUX.
5219 * doc/c-i386.texi (i386-prefixes): Update.
5220 * doc/internals.texi (CPU backend): Document tc_symbol_chars.
5221
5222Fri Jun 12 13:36:54 1998 Tom Tromey <tromey@cygnus.com>
5223
5224 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
5225 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
5226
52271998-06-12 Vladimir N. Makarov <vmakarov@cygnus.com>
5228
5229 * config/tc-d10v.c (md_apply_fix3): Checking displacement
5230 constraint in instructions REP & REPI.
5231
5232Thu Jun 11 08:56:46 1998 Nick Clifton <nickc@cygnus.com>
5233
5234 * config/tc-d30v.c (md_apply_fix3): Catch BFD_RELOC_8,
3e87a760 5235 BFD_RELOC_16, BFD_RELOC_64 and issue appropriate error messages.
252b5132
RH
5236
5237 (check_range): If the operand is shifted, then shift the number
5238 before checking its range.
5239
3e87a760 5240 * write.c (adjust_reloc_syms): Add more checks for NULL pointers.
252b5132
RH
5241
5242 * config/tc-v850.c (v850_comm): Set SEC_COMMON bit on special
5243 common sections.
5244
5245Wed Jun 10 17:26:35 1998 Nick Clifton <nickc@cygnus.com>
5246
5247 * config/tc-v850.c (v850_comm): Create special sections as needed.
5248
52491998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
5250
5251 * config/tc-d10v.c (write_2_short): Addition of swapping
5252 instructions for sequential and reverse sequential order when
5253 given order is not possible.
5254
5255Tue Jun 9 13:52:53 1998 Ian Lance Taylor <ian@cygnus.com>
5256
5257 * Makefile.am: Rebuild dependencies.
3e87a760 5258 (DEP_INCLUDES): Fix reference to intl build directory.
252b5132
RH
5259 * Makefile.in: Rebuild.
5260
5261Tue Jun 9 12:20:05 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5262
5263 * doc/c-i386.texi: Update 16 bit documentation.
5264
5265 * config/tc-i386.h: Change Data16 to Size16, Data32 to Size32,
5266 IgnoreDataSize to IgnoreSize as they are used for address size as
5267 well as data size.
5268 * config/tc-i386.c: Likewise. Add code to reject addr32/data32 in
5269 32-bit mode, similarly addr16/data16 and variants.
5270
5271Mon Jun 8 18:32:01 1998 Nick Clifton <nickc@cygnus.com>
5272
5273 * config/tc-d30v.c (md_assemble): Fix handling of reverse
5274 sequential word multiply instructions.
3e87a760 5275
252b5132
RH
5276 (do_assemble): Add extra command line argument, to allow mul32
5277 attribute to be preserved across parallel insns.
5278 (md_assemble): Insert NOPs between explicitly parallel insns which
5279 contain an 32 bit multiply and a 16 multiply.
5280
5281Mon Jun 8 12:20:30 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5282
5283 * config/tc-i386.c: REPNE renamed to REPNE_PREFIX_OPCODE, and
5284 likewise for REPE.
5285
5286 * config/tc-i386.c (reloc): Add braces.
5287
5288 * config/tc-i386.c (struct _i386_insn): Rename bi to sib to be
5289 consistent with Intel naming.
5290 * config/tc-i386.h (base_index_byte): Rename to sib_byte. Don't
5291 use bitfields in sib_byte.
5292 (modrm_byte): Don't use bitfields here either.
5293
5294 * config/tc-i386.c (current_templates): Add const.
5295 (parse_register): Add const to return, param, and char *s.
5296 (i386_operand): Add const to reg_entry *r.
5297 * config/tc-i386.h (templates): Add const to start, end.
5298
5299 Inspired by code for 16 bit gas support from Martynas Kunigelis
5300 <martynas@nm3.ktu.lt>:
5301 * config/tc-i386.c (md_assemble): Add full support for 16 bit
5302 modrm, and Jump, JumpByte, JumpDword, JumpInterSegment insns.
5303 (uses_mem_addrmode): Remove.
5304 (md_estimate_size_before_relax): Add support here too.
5305 (md_relax_table): Rewrite interface to md_relax for 16 bit
5306 support.
5307 (BYTE, WORD, DWORD, UNKNOWN_SIZE): Remove.
5308 (opcode_suffix_to_type): Remove.
5309 (CODE16, SMALL, SMALL16, BIG, BIG16): Define.
5310 (SIZE_FROM_RELAX_STATE): Modify to suit above.
5311 (md_convert_frag): Likewise.
5312 (i386_operand): Add support for 16 bit base/index regs,
5313 immediates, and displacements. Remove some unnecessary casts, and
5314 localise end_of_operand_string, displacement_string_start,
5315 displacement_string_end variables. Add GCC_ASM_O_HACK.
5316 * config/tc-i386.h (NO_BASE_REGISTER_16): Define.
5317
5318 * config/tc-i386.c (prefix_hash): Remove.
5319 (md_begin): Rewrite without obstacks. Remove prefix hash table
5320 handling. Rewrite lexical table handling.
5321 (i386_print_statistics): Don't print prefix statistics.
5322 (md_assemble): Rewrite instruction parser so that line is not
5323 converted to lower case. Don't do a hash_find for prefixes,
5324 instead recognise them via opcode modifier.
5325 (expecting_operand, paren_not_balanced): Localise variables.
5326 * config/tc-i386.h (IsPrefix): Define.
5327 (prefix_entry): Remove.
5328
5329 * config/tc-i386.h (PREFIX_SEPERATOR): Don't define.
5330 * config/tc-i386.c (PREFIX_SEPARATOR): Define here instead, using
5331 '\\' in case where comment_chars contains '/'.
5332
5333 * config/tc-i386.c (MATCH): Ensure given operand and template
5334 match for JumpAbsolute. Makes e.g. `ljmp table(%ebx)' invalid;
5335 you must write `ljmp *table(%ebx)'.
5336
5337 From H.J. Lu <hjl@gnu.org>:
5338 * config/tc-i386.c (BFD_RELOC_16, BFD_RELOC_16_PCREL): Define
5339 as 0 ifndef BFD_ASSEMBLER.
5340 (md_assemble): Allow immediate operands without suffix or
5341 other reg operand to default in size to the current code size.
5342
5343Mon Jun 8 09:45:00 1998 Catherine Moore <clm@cygnus.com>
3e87a760 5344
66778679
RH
5345 * config/tc-v850.c (md_begin): Restore creation of
5346 .call_table_text and .call_table_data sections.
252b5132
RH
5347
5348Sat Jun 6 00:02:41 1998 Nick Clifton <nickc@cygnus.com>
5349
5350 * config/tc-d30v.c (md_assemble): Set execution type to unknown
5351 after emitting a word of noops.
5352
5353Fri Jun 5 23:27:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5354
5355 * config/tc-i386.c (mode_from_disp_size): Disp16 is mode 2.
5356 (i386_operand): Simplify checks for valid base/index combinations.
5357 Disallow `in 4(%dx),%al'.
5358
5359 * config/tc-i386.c (struct _i386_insn): Make regs, base_reg, and
5360 index_reg const.
5361 (add_prefix): Change parameter from char to int.
5362
5363 * config/tc-i386.h (Ugh): Define opcode modifier.
5364 * config/tc-i386.c (md_assemble): Print warnings for Ugh insns.
5365
5366 * config/tc-i386.c (md_assemble): Rewrite MATCH and
5367 CONSISTENT_REGISTER_MATCH macros to check register types more
5368 thoroughly. Check for illegal suffix/operand combinations
5369 when matching insns with operands. Handle new `s' suffix, and
5370 associated FloatMF opcode modifier for float insns with memory
5371 operands.
5372 * config/tc-i386.h (FloatMF): Define new opcode modifier.
5373 (No_sSuf, No_bSuf, No_wSuf, No_lSuf): Likewise.
5374 (SHORT_OPCODE_SUFFIX, LONG_OPCODE_SUFFIX): Define.
5375 * config/tc-i386.c: Rename WORD_PREFIX_OPCODE to
5376 DATA_PREFIX_OPCODE throughout.
5377
5378 * config/tc-i386.c (REGISTER_WARNINGS): Define.
5379 (md_assemble): Rewrite suffix/register operand checking code to be
5380 more thorough. Remove Abs8,16,32. Change occurrences of Mem to
5381 AnyMem, the better to grep.
5382 (pi): Remove Abs.
5383 (i386_operand): Don't set Mem bits in i.types[this_operand] when
5384 given a memory operand. Don't set Abs bits either.
5385 (type_names): Remove Mem*, Abs*.
5386 * config/tc-i386.h (Mem8, Mem16, Mem32, Abs8, Abs16, Abs32): Don't
5387 define opcode_modifiers as these cases are handled by Disp8,
5388 Disp16, Disp32 and suffix checks.
5389 (COMES_IN_BOTH_DIRECTIONS): Remove.
5390 (FloatR): Define. It's OK to share the bit with ReverseRegRegmem.
5391
5392 * config/tc-i386.c (md_assemble): Don't emit operand size prefix
5393 if IgnoreDataSize modifier given. Remove ShortformW modifier
5394 test. Add test for ShortForm in W base_opcode modification.
5395 Merge Seg2ShortForm and Seg3ShortForm code.
5396 * config/tc-i386.h (ShortFormW): Remove.
5397 (IgnoreDataSize): Define.
5398
5399Fri Jun 5 10:50:53 1998 Nick Clifton <nickc@cygnus.com>
5400
5401 * config/tc-d30v.c (md_assemble): Store previous segment state
5402 with previous instruction.
5403
5404Wed Jun 3 18:21:56 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5405
5406 * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
5407 (ebp, esp): Remove static variables.
5408 (MATCH): Remove test for InOutPortReg.
5409 (i386_operand): Properly handle InOutPortReg here instead.
5410 Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
5411 (md_assemble): Simplify and correct modrm and sib generation.
5412 (i386_operand): Add warning for scale without index.
5413 Rewrite checks for valid base/index combinations.
5414
5415 * config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
5416 macros and enclose in do while(0).
5417 (RESTORE_END_STRING): Likewise.
5418 (md_assemble): Add one to printed operand number so we start
5419 from 1 not 0. Add some more gettext invocations.
5420 (i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
5421 number here too.
5422
5423 * config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
5424 DATA_PREFIX, SEG_PREFIX): Define.
5425 * config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
5426 (check_prefix): Remove function.
5427 (add_prefix): New function. Add prefix to i.prefix as well as
5428 doing checks.
5429 (md_assemble): Changes for add_prefix. Remove hack for wait
5430 prefix, instead always output prefixes in fixed order. Test
5431 for jcxz/loop when selecting between word & dword operations,
5432 and add address size prefix rather than operand size prefix.
5433 Remove operand -> address size hack when emitting jcxz/loop.
5434 (i386_operand): Remove O_Absent check as it's done in expr.
5435
5436Wed Jun 3 15:09:10 1998 Ian Lance Taylor <ian@cygnus.com>
5437
5438 * configure.in: Recognize m5200 as a cpu_type of m68k.
5439 * aclocal.m4: Rebuild with current libtool.
5440 * configure: Rebuild.
5441
5442Wed Jun 3 14:11:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5443
5444 * config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
5445 to relaxable_symbol to prevent references to external symbol from
5446 being relaxed.
5447
5448Wed Jun 3 14:10:36 1998 Ian Lance Taylor <ian@cygnus.com>
5449
5450 * config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
5451 symbols are relaxable.
5452
5453Wed Jun 3 09:16:00 1998 Catherine Moore <clm@cygnus.com>
3e87a760 5454
66778679
RH
5455 * config/tc-v850.c (md_begin): Don't create special
5456 sections by default.
3e87a760 5457
252b5132
RH
5458Tue Jun 2 14:52:56 1998 Jeffrey A Law (law@cygnus.com)
5459
5460 * config/tc-mips.c (macro): For div and udiv, close the
5461 reorder block as soon as possible.
5462
5463Tue Jun 2 15:36:13 1998 Ian Lance Taylor <ian@cygnus.com>
5464
5465 From Matt Semersky <matts@scd.hp.com>:
5466 * macro.c (macro_mri_mode): New function.
5467 * macro.h (macro_mri_mode): Declare.
5468 * read.c (s_mri): Call macro_mri_mode when switching in and out of
5469 MRI mode.
5470
5471Tue Jun 2 13:32:22 1998 Klaus Kaempf <kkaempf@progis.de>
5472
5473 * config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
5474 OBJ_EVAX case.
5475
5476 * config/tc-alpha.c (s_alpha_comm): Defer restoring character
5477 until after xstrdup in OBJ_EVAX case.
5478
5479Tue Jun 2 13:11:13 1998 Pat Rankin <rankin@eql.caltech.edu>
5480
5481 * config/tc-vax.c (md_create_short_jump): Fix off by two bug in
5482 offset calculation. Also, use VAX_BRW from vax-inst.h instead
5483 of hardcoded magic number.
5484 (md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
5485
5486Tue Jun 2 09:25:34 1998 Doug Evans <devans@canuck.cygnus.com>
5487
5488 * read.c (do_s_func): New function.
5489 (s_func): Call it.
5490 * read.h (do_s_func): Add prototype.
5491
5492Mon Jun 1 12:47:30 1998 Doug Evans <devans@canuck.cygnus.com>
5493
5494 * config/tc-m32r.c (m32r_do_align): Only fill code sections with
5495 nops if fill pattern not specified.
5496
5497Mon Jun 1 14:08:35 1998 Ian Lance Taylor <ian@cygnus.com>
5498
5499 From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
5500 * config/te-go32.h (TE_GO32): Define.
5501 * config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
5502
5503Sun May 31 15:43:06 1998 Doug Evans <devans@canuck.cygnus.com>
5504
5505 Implement .func/.endfunc pseudo-ops.
5506 * read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
5507 (s_func): Declare.
5508 * read.c (potable): Add .func,.endfunc.
5509 (s_func): New function.
5510 * stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
5511 functions.
5512 (in_doc_func_p,current_function_label): New static globals.
5513 (stabs_generate_asm_lineno): Emit function relative stabs if in .func.
5514
5515Fri May 29 18:13:12 1998 Ian Lance Taylor <ian@cygnus.com>
5516
5517 * config/tc-a29k.h (WORKING_DOT_WORD): Define.
5518 * config/tc-alpha.h (WORKING_DOT_WORD): Define.
5519 * config/tc-arm.h (WORKING_DOT_WORD): Define.
5520 * config/tc-h8300.h (WORKING_DOT_WORD): Define.
5521 * config/tc-h8500.h (WORKING_DOT_WORD): Define.
5522 * config/tc-hppa.h (WORKING_DOT_WORD): Define.
5523 * config/tc-i860.h (WORKING_DOT_WORD): Define.
5524 * config/tc-i960.h (WORKING_DOT_WORD): Define.
5525 * config/tc-tic30.h (WORKING_DOT_WORD): Define.
5526 * config/tc-w65.h (WORKING_DOT_WORD): Define.
5527 * config/tc-z8k.h (WORKING_DOT_WORD): Define.
5528 * config/tc-a29k.c: Don't define md_short_jump_size,
3e87a760 5529 md_long_jump_size, md_create_short_jump or md_create_long_jump.
252b5132
RH
5530 * config/tc-alpha.c: Likewise.
5531 * config/tc-alpha.h: Likewise.
5532 * config/tc-arm.c: Likewise.
5533 * config/tc-h8300.c: Likewise.
5534 * config/tc-h8500.c: Likewise.
5535 * config/tc-hppa.c: Likewise.
5536 * config/tc-i860.c: Likewise.
5537 * config/tc-i960.c: Likewise.
5538 * config/tc-ppc.c: Likewise.
5539 * config/tc-sh.c: Likewise.
5540 * config/tc-sparc.h: Likewise.
5541 * config/tc-tic30.c: Likewise.
5542 * config/tc-w65.c: Likewise.
5543 * config/tc-z8k.c: Likewise.
5544
5545Fri May 29 16:03:26 1998 Pat Rankin <rankin@eql.caltech.edu>
5546
5547 * config/tc-vax.c (_): Delete this macro used for placeholder
5548 values in vax_operand_width_size; it conflicts with the _() macro
5549 used for internationalization.
5550
5551Fri May 29 13:46:07 1998 Ian Lance Taylor <ian@cygnus.com>
5552
5553 * symbols.c (symbol_find_base): Fix case insensitive symbol name
5554 code. From Chris Moller <moller@bops.com>.
5555
5556 Based on patch from Klaus Kaempf <kkaempf@progis.de>:
5557 * struc-symbol.h (struct broken_word): Add seg and subseg fields.
5558 * read.c (emit_expr): Initialize seg and subseg fields of a new
5559 broken word.
5560 * write.c (write_object_file): Switch to the appropriate segment
5561 and subsegment when processing a broken word.
5562
5563 * config/tc-m68k.c (mri_assemble): New static function.
5564 (build_mri_control_operand): Call mri_assemble rather than
5565 md_assemble.
5566 (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
5567 (s_mri_endf, s_mri_endw): Likewise.
5568
5569Wed May 27 11:16:25 1998 Ian Lance Taylor <ian@cygnus.com>
5570
5571 * read.c (s_org): Call md_flush_pending_output if it is defined.
5572
5573 * config/tc-sparc.c (md_show_usage): Add \n\ to new string.
5574
5575Tue May 26 19:27:52 1998 Stan Cox <scox@equinox.cygnus.com>
5576
5577 * config/tc-sparc.c (OPTION_LITTLE_ENDIAN_DATA): New.
5578 (md_parse_option): Add for same.
5579 (sparc_md_end): Set bfd_mach_sparc_sparclite_le.
5580 (md_apply_fix3, tc_gen_reloc): Allow BFD_RELOC_SPARC_32LE.
5581 (cons_fix_new_sparc): Added to create BFD_RELOC_SPARC_32LE.
5582
5583 * config/tc-sparc.h (cons_fix_new_sparc): Added.
3e87a760 5584
252b5132
RH
5585Thu May 21 15:02:41 1998 Nick Clifton <nickc@cygnus.com>
5586
5587 * config/tc-arm.c (find_real_start): Relax definition of local
5588 labels.
5589
5590Tue May 19 16:59:44 1998 Nick Clifton <nickc@cygnus.com>
5591
5592 * config/tc-d30v.c (d30v_align): Apply address adjustment to all
5593 symbols at the given address, not just the last one specified.
5594
5595Tue May 19 08:25:19 1998 Catherine Moore <clm@cygnus.com>
5596
66778679
RH
5597 * config/tc-sparc.c (sparc_handle_align): Use number_to_chars_bigendian
5598 or number_to_chars_littleendian to write data.
252b5132
RH
5599
5600Mon May 18 17:09:30 1998 Nick Clifton <nickc@cygnus.com>
5601
5602 * config/tc-v850.c (md_assemble): Remove artificially created
5603 register name symbols.
5604
5605Mon May 18 13:47:06 1998 Doug Evans <devans@canuck.cygnus.com>
5606
5607 * write.c (fixup_segment): Change "segment" to "section" in
5608 error message.
5609
5610Mon May 18 16:55:40 1998 Michael Meissner <meissner@cygnus.com>
5611
5612 * write.c (fixup_segment): Change sym1-sym2 message again.
5613
5614Mon May 18 09:31:43 1998 Michael Meissner <meissner@cygnus.com>
5615
5616 * write.c (fixup_segment): Improve error message for sym1-sym2
5617 errors when sym1 is in a different segment from sym2.
5618
5619Wed May 13 10:16:37 1998 Doug Evans <devans@canuck.cygnus.com>
5620
5621 * config/tc-m32r.c (warn_unmatched_high): New static local.
5622 (OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
5623 (OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
5624 (md_longopts): Recognize --{no-,}warn-unmatched-high.
5625 (md_parse_option): Likewise.
5626 (md_show_usage): Likewise.
5627 (m32r_frob_file): Likewise.
5628
5629 * read.c (generate_file_debug,generate_lineno_debug): New functions.
5630 (read_a_source_file): Call them.
5631 * read.h (stabs_generate_asm_file): Declare.
5632 * stabs.c (stabs_generate_asm_file): New function.
5633 (generate_asm_file): New function.
5634 (stabs_generate_asm_lineno): Move file name handling into
5635 generate_asm_file.
5636
5637Tue May 12 12:03:44 1998 Richard Henderson <rth@cygnus.com>
5638
5639 * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
66778679
RH
5640 (d30v_current_align, d30v_current_align_seg): New variables.
5641 (d30v_last_label): New variable.
5642 (d30v_align, s_d30v_align, s_d30v_text): New functions.
5643 (s_d30v_data, s_d30v_section): Likewise.
5644 (md_pseudo_table): Call them.
5645 (md_begin): Initialize d30v_current_align_seg.
5646 (md_assemble): Call d30v_align when needed by known current alignment.
5647 (d30v_frob_label, d30v_cons_align): New functions.
5648 * config/tc-d30v.h (md_do_align): Remove.
5649 (tc_frob_label): Call d30v_frob_label.
5650 (md_cons_align): New.
252b5132 5651
3e87a760 5652 * config/tc-d30v.c (find_format): Convert complex expressions to
252b5132
RH
5653 expression symbols before processing. Clean up code formatting.
5654
5655Sun May 10 22:35:02 1998 Jeffrey A Law (law@cygnus.com)
5656
5657 * po/Make-in (install-info): New target.
5658
5659Thu May 7 15:49:07 1998 Jeffrey A Law (law@cygnus.com)
5660
5661 * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
5662 instructions.
5663 * config/tc-mn10300.c (md_assemble): Likewise.
5664
5665Thu May 7 11:47:22 1998 Doug Evans <devans@canuck.cygnus.com>
5666
5667 * Makefile.am: Update with `make dep-am'.
5668 (HFILES): Add cgen.h.
5669 (cgen.o): Depend on cgen.h.
5670 * Makefile.in: Regenerate.
5671
5672 * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where.
5673
5674Thu May 7 13:20:56 1998 Anders Blomdell <anders.blomdell@control.lth.se>
5675
5676 * gasp.c (grab_label): Permit a label to be a preprocessor
5677 variable by permitting a label to start with a backslash.
5678
5679Thu May 7 12:50:33 1998 Frank Ch. Eigler <fche@cygnus.com>
5680
5681 * config/tc-mips.c (validate_mips_insn): Removed hack
5682 for previously inaccessible bitfields in some INSN_TRAP
5683 instructions.
5684
5685Thu May 7 11:13:00 1998 Frank Ch. Eigler <fche@cygnus.com>
5686
5687 * config/tc-d30v.c (do_assemble): Abort with error message
5688 if opcode operands do not match.
3e87a760 5689
252b5132
RH
5690Thu May 7 09:36:06 1998 Frank Ch. Eigler <fche@cygnus.com>
5691
5692 * config/tc-mips.c (macro_build, validate_mips_insn): Implement
5693 'q' operand format for 20-bit "break"/"sdbbp" instructions.
5694 (mips_ip): Truncate overflowed "break" 'c' operand. Implement
5695 similar new 'q' operand.
5696
5697Thu May 7 07:47:14 1998 Michael Meissner <meissner@cygnus.com>
5698
5699 * cgen.c (cgen_asm_finish_insn): Fix typo.
5700
5701Thu May 7 02:19:14 1998 Doug Evans <devans@charmed.cygnus.com>
5702
5703 * cgen.h: New file.
5704 * cgen.c: Include it.
5705 (MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
5706 (cgen_asm_finish_insn): Result is now void. New arg `result'.
5707 All callers updated.
5708 * config/tc-m32r.c: Include cgen.h.
5709 (m23r_insn): New members num_fixups,fixups.
5710
5711Wed May 6 16:29:19 1998 Jeffrey A Law (law@cygnus.com)
5712
5713 * config/tc-hppa.c (md_apply_fix): Slightly rework some code
5714 to avoid compiler warning.
5715
5716Wed May 6 15:26:34 1998 Klaus Kaempf <kkaempf@progis.de>
5717
5718 * makefile.vms: Run dec c with /nodebug. Pass CC value when
5719 calling make.
5720
66778679 5721 * makefile.vms (OBJS): Add ehopt.obj
252b5132
RH
5722
5723Wed May 6 15:11:12 1998 Klaus Kaempf <kkaempf@progis.de>
5724
5725 * doc/c-vax.texi: Correct and extend vax/vms documentation.
5726
5727Wed May 6 11:51:51 1998 Richard Henderson <rth@cygnus.com>
5728
5729 * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
5730 a short format insn.
5731 (md_assemble): Set it for explicitly packed insns.
3e87a760 5732
252b5132
RH
5733Tue May 5 13:23:13 1998 Nick Clifton <nickc@cygnus.com>
5734
5735 * config/obj-coff.c (c_symbol_merge): Do not take address of
5736 native fields when performing the memcpy.
5737
5738Tue May 5 13:10:41 1998 Gavin Koch <gavin@cygnus.com>
5739
3e87a760 5740 * config/tc-mips.c (macro,macro2): Implement
252b5132
RH
5741 M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
5742
5743Mon May 4 17:49:14 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5744
5745 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
5746 relocations against globally visible symbols.
5747 * config/tc-m68k.c (relaxable_symbol): New macro.
5748 (m68k_ip, md_estimate_size_before_relax): Use it.
5749 (tc_m68k_fix_adjustable): Also handle weak symbols.
5750
5751Mon May 4 16:12:23 1998 Ian Lance Taylor <ian@cygnus.com>
5752
5753 * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
5754 references to externally visible symbols.
5755 * config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
3e87a760
AM
5756 values in twice for a PC relative reloc if the symbol is
5757 externally defined.
252b5132
RH
5758
5759 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
5760 don't adjust a PC relative reloc against an externally visible
5761 symbol.
5762 * config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
5763 for a PC relative fixup against an externally visible defined
5764 symbol, arrange to store object file and addend values as though
5765 the symbol were not defined.
5766 (tc_gen_reloc): Likewise.
5767
5768Thu Apr 30 13:09:39 1998 Fred Fish <fnf@ninemoons.com>
5769
5770 * read.c (sizeof_leb128): Referenced externally by write.c so
5771 don't inline.
5772
5773Wed Apr 29 15:45:57 1998 Michael Meissner <meissner@cygnus.com>
5774
5775 * config/tc-m32r.c ({,expand_}debug_sym): New functions to record
5776 and expand a 'debug' symbol associated with the next instruction
5777 that does not cause a short instruction to be filled with a NOP.
5778 (md_pseudo_table): Add support for .debugsym.
5779 (assemble_parallel_insn): Add calls to expand_debug_sym as
5780 appropriate.
5781 (md_assemble): Ditto.
5782
5783Tue Apr 28 19:16:26 1998 Tom Tromey <tromey@cygnus.com>
5784
5785 * as.c (main): Conditionally call setlocale.
5786 * gasp.c (main): Likewise.
5787 * asintl.h: Include <locale.h> if HAVE_LOCALE_H.
5788 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
5789
5790Tue Apr 28 18:33:23 1998 Frank Ch. Eigler <fche@cygnus.com>
5791
5792 * config/tc-d30v.c (md_show_usage): Correct gettext typo.
3e87a760 5793
252b5132
RH
5794Tue Apr 28 12:16:30 1998 Ian Lance Taylor <ian@cygnus.com>
5795
5796 * config/tc-hppa.c: Change all calls to bzero to use memset.
5797 (pa_ip): Add cast to avoid warning.
5798 (tc_gen_reloc, md_apply_fix): Likewise.
5799 (pa_find_space_by_number): Likewise.
5800 (hppa_force_relocation): Likewise.
5801 (pa_block): Change i to unsigned int.
5802 * config/obj-som.h (obj_som_copyright): Declare.
5803
5804Tue Apr 28 11:35:56 1998 Frank Ch. Eigler <fche@cygnus.com>
5805
5806 * ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
5807 for line numbers for assembly source.
5808
5809Mon Apr 27 15:58:46 1998 Ian Lance Taylor <ian@cygnus.com>
5810
5811 * configure.in: Change version number to 2.9.4
5812 * configure: Rebuild.
5813
5814Mon Apr 27 12:07:33 1998 Doug Evans <devans@seba.cygnus.com>
5815
5816 * cgen.c (cgen_asm_finish_insn): New arg relax_p. All callers updated.
5817
5818Mon Apr 27 15:16:12 1998 Ian Lance Taylor <ian@cygnus.com>
5819
5820 * ecoff.h: Change symbolS in function declaration to struct
5821 symbol.
5822
5823Sun Apr 26 13:44:22 1998 Ian Lance Taylor <ian@cygnus.com>
5824
5825 * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
5826 (md_convert_frag): Fix i18n typo.
5827
5828Sat Apr 25 20:12:02 1998 Richard Henderson <rth@cygnus.com>
5829
5830 * ecoff.c (ecoff_get_cur_proc_sym): New function.
5831 * ecoff.h: Protoype it.
5832 * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
5833 [EVAX] (s_alpha_prologue): Delete.
5834 (md_pseudo_table): Update.
5835
5836Sat Apr 25 14:00:52 1998 Ian Lance Taylor <ian@cygnus.com>
5837
5838 * config/tc-i960.c (md_assemble): Change bp_error_msg from static
5839 array to local pointer.
5840 (get_args, parse_expr): Add casts to avoid warnings.
5841
5842Fri Apr 24 12:47:42 1998 Philippe De Muyter <phdm@macqel.be>
5843
5844 * read.c (s_set): Cast xmalloc return value to fragS *.
5845 * config/tc-m68k.c (m68k_ip): Function made static to match
5846 previous forward declaration.
5847 (insert_reg, init_regtable, md_convert_frag_1): Likewise.
5848
5849Fri Apr 24 09:26:46 1998 Nick Clifton <nickc@cygnus.com>
5850
5851 * config/tc-v850.c: Add internationalisation macros to error
3e87a760 5852 strings.
252b5132
RH
5853
5854 * config/tc-m32r.c (can_make_parallel): Add internationalisation
5855 macros to error strings.
5856
5857Thu Apr 23 19:23:23 1998 Ian Lance Taylor <ian@cygnus.com>
5858
5859 * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
5860 reloc is in the TOC csect.
5861 (md_apply_fix3): Correct gettext typo.
5862
5863Thu Apr 23 14:58:31 1998 Nick Clifton <nickc@cygnus.com>
5864
5865 * config/tc-arm.c (find_real_start): Ignore symbols starting with
5866 .L - they are local labels and the branches are not really
5867 function calls but rather far jumps.
5868
5869Wed Apr 22 15:57:21 1998 Tom Tromey <tromey@cygnus.com>
5870
5871 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
5872
5873Wed Apr 22 14:52:36 1998 Ian Lance Taylor <ian@cygnus.com>
5874
5875 * config/tc-i386.c (md_assemble): Print operand number rather than
5876 using ordinal_names.
5877 (i386_operand): Likewise.
5878
5879Tue Apr 21 22:34:25 1998 Tom Tromey <tromey@scribbles.cygnus.com>
5880
5881 * Makefile.am (INTLLIBS): Define to work around apparent automake
5882 bug.
5883 All Makefiles: Regenerated.
5884
5885 * Many files: Added gettext invocations around user-visible
5886 strings.
5887 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
5888 HAVE_LC_MESSAGES): Define.
5889 * dep-in.sed: Added asintl.h.
5890 * po/Make-in: New file.
5891 * gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
5892 Include "asintl.h".
5893 * read.c (Z_): Renamed from `_'.
5894 * Makefile.am (SUBDIRS): Added po.
5895 (POTFILES): new macro.
5896 (po/POTFILES.in): New target.
5897 ($(OBJS)): Added asintl.h.
5898 (HFILES): Likewise.
5899 (INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
5900 (as_new_LDADD): Added $(INTLLIBS).
5901 (as_new_DEPENDENCIES): Added $(INTLDEPS).
5902 (gasp_new_LDADD): Added $(INTLLIBS).
5903 (gasp_new_DEPENDENCIES): New macro.
5904 * configure, aclocal.m4: Rebuilt.
5905 * configure.in: Call CY_GNU_GETTEXT. Generate po/Makefile.in and
5906 po/Makefile.
5907 (ALL_LINGUAS): Define.
5908 * macro.c: Include "asintl.h".
5909 * as.c (main): Call setlocale, bindtextdomain, and textdomain.
5910 * as.h: Include "asintl.h".
5911 * config/tc-i386.c (ordinal_names): Removed.
5912 (md_assemble): Changed error text to avoid ordinal_names.
5913 (i386_operand): Likewise.
5914 (reloc): Added as_bad to avoid i18n problems.
5915 (tc_gen_reloc): Likewise.
5916 * config/tc-arm.c (bad_args): Now a #define.
5917 (bad_pc): Likewise.
5918 * config/obj-vms.c (VMS_stab_parse): Changed type of
5919 `long_const_msg'.
5920 (global_symbol_directory): Unified strings to avoid i18n
5921 problems.
5922 * config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
5923 avoid i18n problems.
5924 * config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
5925 * config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
5926 i18n problems.
5927 * config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
5928 problems.
5929 * config/tc-v850.c (md_assemble): Changed C++ comment into C
5930 comment.
5931 * config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
5932 problems.
5933 * as.c (print_version_id): Added an fprintf to avoid i18n
5934 problems.
5935 * cond.c (cond_finish_check): Added as_bad call to avoid i18n
5936 problems.
5937 * expr.c (expr): Added as_warn call to avoid i18n problems.
5938 * messages.c (as_assert): Changed code to avoid i18n problems.
5939 (as_abort): Likewise.
5940 * read.c (pseudo_set): Added as_bad call to avoid i18n problems.
5941 (s_space): Likewise.
5942 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
5943
5944Tue Apr 21 17:01:22 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
5945
5946 * config/tc-i386.c (check_prefix): New static function, split out
5947 from md_assemble.
5948 (struct _i386_insn): Add wait_prefix field.
5949 (md_assemble): Remove wait_prefix local variable. Use
5950 check_prefix when adding a prefix.
5951
5952 * config/tc-i386.c (current_templates): New static variable.
5953 (md_assemble): Remove current_templates local variable.
5954 (md_assemble, i386_operand): Improve error and warning messages in
5955 many places. Add RESTORE_END_STRING in many places before error
5956 return. Clarify some comments.
5957
5958 * config/tc-i386.c (struct _i386_insn): Change seg field to a two
5959 element array.
5960 (md_assemble): Parse string instruction operands, looking for
5961 segment override prefixes. Check for invalid segment prefixes on
5962 string instruction.
5963 (i386_operand): i.seg[] and max mem_operand changes for string
5964 insns.
5965 * config/tc-i386.h (EsSeg): Define.
5966
5967 * config/tc-i386.h (regKludge): Define.
5968 (iclrKludge, imulKludge): Don't define.
5969 * config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
5970 code. Move ReverseRegRegmem fudges into Modrm case. Reorder
5971 opcode_modifier checks to look for more common cases first. Add
5972 default_seg for IsString case.
5973
5974Tue Apr 21 16:18:12 1998 Ian Lance Taylor <ian@cygnus.com>
5975
5976 * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
5977 AC_DECL_YYTEXT.
5978 * configure: Rebuild with new automake and libtool.
5979 * aclocal.m4, Makefile.in: Likewise.
5980
5981 * doc/Makefile.am (as.dvi): New target.
5982 * doc/Makefile.in: Rebuild.
5983
5984Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
5985
5986 * configure.in: Added sparc86x support.
3e87a760 5987
252b5132 5988 * configure: Rebuild.
3e87a760 5989
252b5132
RH
5990 * config/tc-sparc.c (lookup_arch): Added arch_type to struct
5991 sparc_arch.
5992 (md_parse_option): Warn if -EL is not supported for this architecture.
5993
5994 * config/tc-sparc.h (SPARC_BIENDIAN) Always define.
3e87a760 5995
252b5132
RH
5996Sat Apr 18 01:19:01 1998 Jeffrey A Law (law@cygnus.com)
5997
66778679
RH
5998 * config/tc-mips.c (mips_ip): Note when we use get match on
5999 the full instruction name.
252b5132
RH
6000
6001Wed Apr 15 15:17:27 1998 Richard Henderson <rth@cygnus.com>
6002
6003 * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
6004 back into the expression to handle add/sub simplification correctly.
6005
6006Wed Apr 15 07:06:04 1998 Catherine Moore <clm@cygnus.com>
6007
66778679 6008 * config/tc-mips.c (hilo_interlocks): Remove 4300.
252b5132
RH
6009
6010Mon Apr 13 16:51:04 1998 Nick Clifton <nickc@cygnus.com>
6011
6012 * config/tc-arm.c (do_msr): Support undocumented 'msr cpsr_flg,
6013 #<n>' instruction.
6014
6015Thu Apr 9 10:29:42 1998 Doug Evans <devans@canuck.cygnus.com>
6016
6017 * symbols.c (max_indent_level): New global.
6018 (print_symbol_value_1): Use it.
6019 * expr.h (expr_build_dot): Declare.
6020 * expr.c (expr_build_dot): New function.
6021
6022Wed Apr 8 16:16:11 1998 Doug Evans <devans@canuck.cygnus.com>
6023
6024 * symbols.c (print_binary): New function.
6025 (print_expr_1): Call it.
6026
6027Mon Apr 6 12:06:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6028
6029 * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
6030 operand in the opcode.
6031
6032Fri Apr 3 11:58:19 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6033
6034 * config/tc-i386.h: Reorder operand flags and opcode modifier
6035 flags for clarity. Remove unused definitions: Unknown,
6036 ImmUnknown, DispUnknown, NoModrm.
6037 * config/tc-i386.c (type_names): Add missing Debug type.
6038 (md_assemble): Better duplicate prefix checking. Quicker string
6039 instruction check via new opcode_modifier flag.
6040
6041Fri Apr 3 11:44:34 1998 Ian Lance Taylor <ian@cygnus.com>
6042
6043 * doc/as.texinfo (Invoking): Clarify -Wa example.
6044
6045Fri Apr 3 09:12:23 1998 Gavin Koch <gavin@cetus.cygnus.com>
6046
3e87a760 6047 * config/tc-mips.c (mips_pseudo_table): Add weakext entry.
252b5132
RH
6048 (s_mips_weakext): Define.
6049 * ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
3e87a760
AM
6050 * config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if
6051 defined(TC_MIPS).
6052
252b5132
RH
6053Thu Apr 2 22:42:02 1998 Jeffrey A Law (law@cygnus.com)
6054
6055 * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
6056 is an error if the value can not be computed at assembly time.
6057 * config/tc-mn10300.c (tc_gen-reloc): Likewise.
6058
6059Thu Apr 2 16:36:47 1998 Ian Lance Taylor <ian@cygnus.com>
6060
6061 * gasp.c (main): Set next field of new include_path structure to
6062 NULL. From Avery Pennarun <averyp@gdc.ca>.
6063
6064 * read.c (s_mri_sect): Call as_bad rather than abort for an
6065 unsupported MRI target.
6066
6067Wed Apr 1 11:08:27 1998 Nick Clifton <nickc@cygnus.com>
6068
6069 * config/tc-arm.c (arm_validate_fix): New function. Determine if
6070 the destination of a branch instruction should be altered.
6071 (find_real_start): New function: Locate the real, Thumb coded
6072 start of a Thumb function.
6073 (do_t_branch23): Alter the destination of branches to Thumb
3e87a760 6074 functions.
252b5132
RH
6075
6076 * config/tc-arm.h: Define TC_VALIDATE_FIX.
6077
6078Tue Mar 31 13:27:33 1998 Dean M. Deaver <deaver@amt.tay1.dec.com>
6079
6080 * config/tc-arm.c (decode_shift): Handle addressing mode 2 w/rrx
6081 also.
6082
6083Wed Apr 1 13:13:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6084
6085 * doc/as.texinfo: Use @itemx for a secondary item in a table.
6086 * doc/c-hppa.texi: Likewise.
6087
6088Tue Mar 31 17:52:40 1998 Ian Lance Taylor <ian@cygnus.com>
6089
6090 * Makefile.am: Rebuild dependencies.
6091 * Makefile.in: Rebuild.
6092
6093 * Makefile.am (DEP_INCLUDES): New variable.
6094 (.dep1): Change to work when srcdir is not an absolute path.
6095 (.tcdep, .objdep, .dep2, dep.sed): Likewise.
6096 * Makefile.in: Rebuild.
6097
6098Mon Mar 30 12:46:48 1998 Ian Lance Taylor <ian@cygnus.com>
6099
6100 * config/tc-i386.h, config/tc-i386.c: Revert March 24
6101 LinearAddress patch.
6102
6103 * configure.in: Set version to 2.9.1.
6104 * configure: Rebuild.
6105
6106 * Branched binutils 2.9.
6107
6108Mon Mar 30 11:22:08 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6109
6110 * config/tc-i386.h (FWait): Define.
6111 * config/tc-i386.c (md_assemble): Emit fwait prefix before any
6112 other prefixes. Check FWait flag in opcode table to see which
6113 instructions require an fwait prefix.
6114
6115Mon Mar 30 10:12:00 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6116
6117 * stabs.c (get_stab_string_offset): Always create a stab string
6118 section.
6119
6120Sat Mar 28 22:28:02 1998 Ian Lance Taylor <ian@cygnus.com>
6121
6122 Fix some gcc -Wall warnings:
6123 * atof-generic.c (atof_generic): Add casts to avoid warnings.
6124 * ehopt.c (eh_frame_code_alignment): Likewise.
6125 * expr.c (integer_constant, operand): Likewise.
6126 * frags.c (frag_align): Likewise.
6127 * gasp.c (level_0, change_base, doinstr): Likewise.
6128 * hash.c (hash_ask): Likewise.
6129 * listing.c (listing_page, calc_hex, print_lines): Likewise.
6130 (debugging_pseudo): Likewise.
6131 * macro.c (define_macro, check_macro): Likewise.
6132 * read.c (read_a_source_file, s_align, s_float_space): Likewise.
6133 (ignore_rest_of_line, float_cons): Likewise.
6134 * symbols.c (decode_local_label_name): Likewise.
6135 * write.c (record_alignment, cvs_frag_to_fill): Likewise.
6136 (fixup_segment, number_to_chars_bigendian): Likewise.
6137 (number_to_chars_littleendian): Likewise.
6138 * config/atof-ieee.c (gen_to_words): Likewise.
6139 * config/tc-sparc.c (md_begin, md_assemble): Likewise.
6140 (sparc_ip, parse_keyword_arg, s_common): Likewise.
6141 * read.c (output_big_sleb128): Initialize locals to avoid
6142 warnings.
6143 (output_big_uleb128, equals): Likewise.
6144 * atof-generic.c (atof_generic): Change number_of_digits_* locals
6145 to unsigned int. Change zeros to unsigned int.
6146 * cond.c (s_if): Add return to default case.
6147 * frags.c (frag_now_fix): Change return type to addressT.
6148 * frags.h (frag_now_fix): Update declaration.
6149 * listing.c (file_info_struct): Change linenum to unsigned int.
6150 (struct list_info_struct): Change hll_line to unsigned int.
6151 (print_source): Update format string.
6152 * read.c (emit_expr): Change scan to unsigned int, and don't
6153 bother to initialize it.
6154 * symbols.c (dollar_label_count): Change to unsigned long.
6155 * write.c (adjust_reloc_syms): Remove unused label reduce_fixup.
6156 * config/tc-sparc.c (sparc_memory_model): Only define if OBJ_ELF.
6157 * config/tc-sparc.c (tc_gen_reloc): Add return to default case.
6158
6159Fri Mar 27 12:46:47 1998 Ian Lance Taylor <ian@cygnus.com>
6160
6161 * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
3e87a760 6162 mcf5200 just as we do for m68000.
252b5132
RH
6163 (m68k_init_after_args): Likewise.
6164 (md_estimate_size_before_relax): Likewise.
6165
6166Fri Mar 27 10:30:01 1998 Catherine Moore <clm@cygnus.com>
6167
6168 * config/tc-v850.c (md_assemble): Store relocation addend in
6169 fixup instead of instruction.
6170
6171Thu Mar 26 23:07:18 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6172
6173 * config/tc-i386.c (md_assemble): Swap template arguments to
6174 CONSISTENT_REGISTER_MATCH macro in reverse direction test.
6175 This macro is currently symmetric, so passing them the wrong
6176 way didn't cause any problem, but may if the macro is changed
6177 in the future.
6178 After copying template to i.tm, use i.tm. rather than t-> to
6179 access fields, and make t a const*
6180 Move i.tm.operand_types[] swap to immediately after the copy.
6181
6182Wed Mar 25 13:44:18 1998 Doug Evans <devans@canuck.cygnus.com>
6183
6184 * expr.h (expr_build_uconstant): Add prototype.
6185 (expr_build_unary,expr_build_binary): Add prototypes.
6186 * expr.c (expr_build_uconstant): New function.
6187 (expr_build_unary,expr_build_binary): New functions.
6188
6189Wed Mar 25 13:10:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6190
66778679
RH
6191 * gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
6192 * macro.c (macro_expand_body): Increase buffer size.
6193 * messages.c (as_warn): Likewise.
252b5132
RH
6194 (as_warn_where, as_bad, as_bad_where): Likewise.
6195
6196Wed Mar 25 12:59:07 1998 Ian Lance Taylor <ian@cygnus.com>
6197
6198 Based on patch from H.J. Lu <hjl@gnu.org>:
6199 * Makefile.am (DISTSTUFF): New variable.
6200 (diststuff): New target.
6201 * Makefile.in: Rebuild.
6202
6203Tue Mar 24 16:51:29 1998 Nick Clifton <nickc@cygnus.com>
6204
6205 * config/tc-m32r.h (md_cleanup, md_elf_section_change_hook): Call
6206 m32r_elf_section_change_hook.
6207
6208 * config/tc-m32r.c (m32r_elf_section_change_hook): New function to
6209 emit a nop if a section ends with a 16 bit instruction.
6210
6211Tue Mar 24 19:48:09 1998 Ian Lance Taylor <ian@cygnus.com>
6212
6213 * config/obj-coff.c (obj_coff_bss): Compile unconditionally. Call
6214 s_lcomm rather than obj_coff_lcomm.
6215 (obj_pseudo_table): Compile .bss pseudo-op unconditionally.
6216
6217Tue Mar 24 18:30:58 1998 H.J. Lu <hjl@gnu.org>
6218
6219 * config/tc-i386.h (LinearAddress): Define.
6220 * config/tc-i386.c (md_assemble): If LinearAddress is set for the
6221 instruction, don't use a default segment.
6222
6223Mon Mar 23 18:53:40 1998 Joel Sherrill <joel@OARcorp.com>
6224
6225 * configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
6226 * configure: Rebuild.
6227
6228Fri Mar 20 19:15:44 1998 Ian Lance Taylor <ian@cygnus.com>
6229
6230 * aclocal.m4, configure: Rebuild with libtool 1.2.
6231
6232Thu Mar 19 16:03:12 1998 Nick Clifton <nickc@cygnus.com>
6233
6234 * config/tc-arm.c (md_apply_fix3): fix code to test the range of
3e87a760
AM
6235 PC relative branches. Patch courtesy of Jonathan Walton.
6236
252b5132 6237
252b5132
RH
6238Wed Mar 18 09:29:51 1998 Nick Clifton <nickc@cygnus.com>
6239
6240 * configure.in (emulations): Add thumb-pe target.
6241
6242 * configure (emulations): Add thumb-pe target.
6243
62441998-03-17 Ken Raeburn <raeburn@cygnus.com>
6245
6246 * itbl-lex.l (yywrap): Don't define if already defined as a
6247 macro.
6248
6249Fri Mar 13 16:31:38 1998 Tom Tromey <tromey@cygnus.com>
6250
6251 * depend.c (quote_string_for_make): New function.
6252 (wrap_output): Use it.
6253
6254Thu Mar 12 18:28:22 1998 Nick Clifton <nickc@cygnus.com>
6255
6256 * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
6257 structure if type is SHT_NOBITS. [Bug fix courtesy of rth]
6258
6259Sat Feb 28 17:28:55 1998 Richard Henderson <rth@cygnus.com>
6260
6261 * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
6262 Recognize -GN and -relax.
6263 (md_begin): Initialize gp size from -G switch.
6264 (alpha_force_relocation): Always force if -relax.
3e87a760 6265 (alpha_align): Take a new argument that will specify when to
252b5132
RH
6266 emit an R_ALPHA_ALIGN relocation (though we don't do that now).
6267 Change all callers. Emit nop alignment padding as nop+unop pair.
6268
6269Sat Feb 28 17:06:22 1998 Richard Henderson <rth@cygnus.com>
6270
6271 * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
6272 * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
6273
6274Thu Feb 26 15:49:04 1998 Michael Meissner <meissner@cygnus.com>
6275
6276 * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
6277 require padding to the next long word boundary.
6278
6279Mon Feb 23 11:29:06 1998 Doug Evans <devans@seba.cygnus.com>
6280
6281 * cgen.c: #include symcat.h.
6282 * config/tc-m32r.c: Likewise.
6283
6284Mon Feb 23 10:27:40 1998 Jeffrey A Law (law@cygnus.com)
6285
6286 * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
6287 absolute expressions instead of '$' prefixed register names.
6288
6289Sat Feb 21 22:36:52 1998 Richard Henderson <rth@cygnus.com>
6290
6291 * read.c (s_set): Record file and line info for symbols when -as.
6292 (pseudo_set): Don't overwrite that dummy fragment.
6293
6294Fri Feb 20 15:03:13 1998 Ian Lance Taylor <ian@cygnus.com>
6295
6296 * config/tc-ppc.c (md_pseudo_table): Add "section".
6297 (ppc_named_section): New static function.
6298
6299Thu Feb 19 22:25:42 1998 Richard Henderson <rth@cygnus.com>
6300
6301 * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
6302 so we don't have to scan the entire list.
6303
6304Tue Feb 17 17:02:15 1998 Fred Fish <fnf@cygnus.com>
6305
6306 * config/tc-d30v.c (parallel_ok): For the explicitly parallel
3e87a760
AM
6307 case, allow the parallel instructions to modify the same flag
6308 bits.
252b5132
RH
6309
6310Thu Feb 19 16:08:15 1998 Richard Henderson <rth@cygnus.com>
6311
6312 * listing.c (list_symbol_table): Categorize symbols by
6313 undefined_section rather than sy_frag->line == NULL.
6314
6315Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
6316
6317 * Makefile.am (install-exec-local): Install properly when ln
6318 fails or tooldir == prefix.
6319
6320Tue Feb 17 18:58:51 1998 Doug Evans <devans@seba.cygnus.com>
6321
6322 * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
6323 Test result of insert_operand for error.
6324
6325Fri Feb 13 16:41:42 1998 Ian Lance Taylor <ian@cygnus.com>
6326
6327 * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
6328 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
6329 * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
6330 * doc/Makefile.in: Rebuild.
6331
6332Fri Feb 13 00:47:44 1998 Ian Lance Taylor <ian@cygnus.com>
6333
6334 * config/tc-mips.c (macro_build): Handle operand type 'C'.
6335 (macro): Fix handling of M_COP[0-3].
6336
6337Thu Feb 12 14:06:59 1998 Ian Lance Taylor <ian@cygnus.com>
6338
6339 Based on patches from Ross Harvey <ross@teraflop.com>:
6340 * macro.c (ISSEP): Only treat '<' and '>' as separator characters
6341 if macro_alternate or macro_mri.
6342 (getstring): Remove support for byte constants between < and >.
6343 (get_any_string): '<' only starts a string if macro_alternate or
6344 macro_mri.
6345 (macro_expand_body): Permit keyword parameters following
6346 positional parameters.
6347
6348 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
6349 * configure.in (alpha*-*-netbsd*): New target.
6350 * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
6351 * configure: Rebuild.
6352
6353 * as.h (flag_warn_suppress_instructionswap): Move from here...
6354 * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
6355 here, and make static.
6356
6357 * ehopt.c (eh_frame_code_alignment): Only use seg_info if
6358 BFD_ASSEMBLER or MANY_SEGMENTS.
6359
6360 * as.c (show_usage): Update bug-gnu-utils address.
6361 * gasp.c (show_usage): Likewise.
6362 * doc/as.texinfo (Bug Reporting): Likewise.
6363
6364Wed Feb 11 23:26:28 1998 Jeffrey A Law (law@cygnus.com)
6365
66778679 6366 * config/tc-mips.c (load_address): Don't use mips III or mips IV
252b5132
RH
6367 insns regardless of the size of a pointer if we're in mips I or
6368 MIPS II mode.
66778679 6369 (macro, macro2, s_cprestore, s_cpadd): Likewise.
252b5132
RH
6370
6371Thu Feb 12 03:41:00 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6372
3e87a760 6373 Fix rac to accept only a0:
252b5132
RH
6374 * tc-d10v.c (parallel_ok, find_opcode):
6375 Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
6376 Introduce OPERAND_GPR.
6377
6378Wed Feb 11 16:28:13 1998 Richard Henderson <rth@cygnus.com>
6379
6380 * read.c (s_fill): Handle non-constant repeat counts by creating
6381 an rs_space fragment.
6382
6383Tue Feb 10 18:31:31 1998 Ian Lance Taylor <ian@cygnus.com>
6384
6385 * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
6386 from as_bad to as_warn.
6387
6388Tue Feb 10 18:04:00 1998 Jim Lemke <jlemke@cygnus.com>
6389
6390 * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
6391 * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
6392 * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
6393
6394Tue Feb 10 17:58:18 1998 Ian Lance Taylor <ian@cygnus.com>
6395
6396 * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
6397 seg_fix_rotP rather than fix_root from seg_info.
6398
6399Tue Feb 10 15:32:22 1998 Ian Carmichael <iancarm@cygnus.com>
6400
6401 * expr.c: Add support for 0x1_2_3_4 bignums.
6402
6403Tue Feb 10 14:43:40 1998 Ian Lance Taylor <ian@cygnus.com>
6404
6405 * configure.in: Change -linux* to -linux-gnu*.
6406 * configure: Rebuild.
6407
6408 * app.c (do_scrub_begin): Treat \r as whitespace.
6409
6410Mon Feb 9 14:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
6411
6412 * Makefile.am: Update dependencies.
6413 * Makefile.in: Rebuild.
6414
6415Sat Feb 7 15:33:51 1998 Ian Lance Taylor <ian@cygnus.com>
6416
6417 * configure, aclocal.m4: Rebuild with new libtool.
6418
6419Fri Feb 6 16:08:30 1998 Jeffrey A Law (law@cygnus.com)
6420
66778679
RH
6421 * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
6422 the argument to bfd_set_arch_mach.
6423 (load_address): Use bfd_arch_bits_per_address to determine the
6424 bit size of an address instead of looking at the isa level.
6425 (macro, macro2, s_cprestore, s_cpadd): Likewise.
252b5132
RH
6426
6427Fri Feb 6 14:44:34 1998 Nick Clifton <nickc@cygnus.com>
6428
6429 * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
6430
6431Thu Feb 5 12:39:08 1998 Ian Lance Taylor <ian@cygnus.com>
6432
6433 * ehopt.c: New file.
6434 * as.h (enum _relax_state): Add rs_cfa.
6435 (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
6436 (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
6437 * read.c (emit_expr): Call check_eh_frame.
6438 * write.c (cvt_frag_to_fill): Handle rs_cfa.
6439 (relax_segment): Likewise.
6440 * Makefile.am: Rebuild dependencies.
3e87a760 6441 (GAS_CFILES): Add ehopt.c.
252b5132
RH
6442 (GENERIC_OBJS): Add ehopt.o.
6443 * doc/internals.texi (Frags): Document rs_cfa.
6444
6445 * as.c (show_usage): Mention --traditional-format.
6446 (parse_args): Accept --traditional-format.
6447 * as.h (flag_traditional_format): Declare.
6448 * output-file.c (output_file_create): If flag_traditional_format,
6449 set BFD_TRADITIONAL_FORMAT on stdoutput.
6450 * doc/as.texinfo, doc/as.1: Document --traditional-format.
6451
6452 * config/tc-mips.c (append_insn): Make sure that if we have a
6453 fixup for an unmatched %hi reloc, it does not associated with a
6454 variant frag.
6455
6456 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
6457 * doc/Makefile.in: Likewise.
6458
6459Wed Feb 4 15:41:54 1998 Nick Clifton <nickc@cygnus.com>
6460
6461 * config/tc-m32r.c (check_for_side_effects): New function.
6462 (can_make_parallel): Add checks for instruction side effects
6463 clashing with the other instruction.
6464 (assemble_parallel_insn): Improve warning messages. Return error
6465 message from non-swapped instruction order.
6466
6467Wed Feb 4 20:00:26 1998 James G. Smith <jsmith@teknema.demon.co.uk>
6468
6469 * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
6470
6471 * config/tc-arm.h: Replace md_after_pass_hook definition with a
3e87a760
AM
6472 md_cleanup definition. This moves the forced literal output to
6473 the end of the source pass, and avoids macro's inserting literals
6474 into the code immediately after the macro expansion.
252b5132
RH
6475
6476Wed Feb 4 13:17:19 1998 Ian Lance Taylor <ian@cygnus.com>
6477
6478 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
6479 a gas internal symbol is adjustable.
6480 * config/tc-ppc.h (tc_fix_adjustable): Likewise.
6481
6482 * as.h: If gcc version greater than 2.6, use `__format__' and
6483 `__printf__' in function attributes, rather than `format' and
6484 `printf'.
6485
6486Mon Feb 2 18:38:18 1998 Ian Lance Taylor <ian@cygnus.com>
6487
6488 * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
6489
6490Mon Feb 2 18:30:34 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
6491
6492 Add tms320c30 support:
6493 * config/tc-tic30.h: New file.
6494 * config/tc-tic30.c: New file.
6495 * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
6496 TARGET_FORMAT as "coff-tic30".
6497 * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
6498 * Makefile.am: Rebuild dependencies.
6499 (CPU_TYPES): Add tic30.
6500 (CPU_OBJ_VALID): tic30-aout is valid.
6501 (TARGET_CPU_CFILES): Add config/tc-tic30.c.
6502 (TARGET_CPU_HFILES): Add config/tc-tic30.h.
6503 * configure, Makefile.in: Rebuild.
6504
6505Mon Feb 2 10:20:37 1998 Nick Clifton <nickc@cygnus.com>
6506
6507 * config/tc-v850.c (md_assemble): Improvements to error messages.
6508
6509Mon Feb 2 12:39:05 1998 Geoff Keating <geoffk@ozemail.com.au>
6510
6511 * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
3e87a760 6512 BFD_RELOC_HI16_S to store the high bits of any value.
252b5132
RH
6513
6514 * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
6515 (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
6516 assembler calculate relocations to any external symbol at all.
6517 * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
6518 involving generation of pc-relative relocs.
6519 (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
6520 has been moved to md_apply_fix3.
6521
6522 * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
6523 (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
6524 which actually means (the address of identifier's GOT entry) +
6525 constant, which is not particularly useful.
6526
6527Fri Jan 30 11:02:35 1998 Doug Evans <devans@canuck.cygnus.com>
6528
6529 * read.h (include_dirs): Declare.
6530 (include_dir_count,include_dir_maxlen): Declare.
6531
6532Fri Jan 30 11:47:02 1998 Ian Lance Taylor <ian@cygnus.com>
6533
6534 * configure.in: Correct check for shared opcodes library.
6535 * configure: Rebuild.
6536
6537 * listing.c (buffer_line): If we can't open the file, set at_end.
6538 (listing_print): Remove unused local variable fi.
6539
6540 * config/m68k-parse.y (reglistpair): Handle register list in
6541 either order.
6542
6543 * config/vms-conf.h: Don't undef VERSION.
6544
6545Thu Jan 29 14:42:44 1998 Pat Rankin <rankin@eql.caltech.edu>
6546
6547 * Makefile.am (CONFIG_OBJS): New variable, containing part of old
6548 OBJS variable.
6549 (GENERIC_OBJS): New variable, with the rest of the old OBJS
6550 variable.
6551 (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
6552 ($(srcdir)/make-gas.com): Rename from make-gas.com.
6553 (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
6554 (EXTRA_DIST): Define.
6555 * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
6556 explicitly rather than via the list of object files.
6557 (gcc-as.opt): New file created when make-gas.com is run.
6558 * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
6559 itbl-cpu.h} to #include appropriate file rather than copying that
6560 file.
6561 * config/vms-conf.h: Synchronize with current config.in.
6562 * Makefile.in: Rebuild.
6563
6564Thu Jan 29 18:48:19 1998 Bill Moyer <billm@cygnus.com>
6565
6566 * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
6567 (parallel_ok): Relaxed parallel subinstruction dependency check.
6568
6569Wed Jan 28 14:35:00 1998 Bill Moyer <billm@cygnus.com>
6570
6571 * as.h (flag_warn_suppress_instructionswap): added new flag.
3e87a760 6572 * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap"
252b5132
RH
6573 command line argument.
6574 * tc-d10v.c (write_2_short): emit "Swapping instructions"
6575 warning only if flag_warn_suppress_instructionswap is false.
6576
6577Wed Jan 28 16:41:19 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
6578
6579 * configure.in (i386-*-mingw32*): New target.
6580 * configure: Rebuild.
6581
6582Wed Jan 28 14:51:18 1998 Ian Lance Taylor <ian@cygnus.com>
6583
6584 * symbols.c (resolve_symbol_value): Don't set the segment if it
6585 hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
6586
6587 * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
6588 S_GET_SEGMENT.
6589
6590Wed Jan 28 13:54:50 1998 Pat Rankin <rankin@eql.caltech.edu>
6591
6592 as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
6593 depends upon HAVE_{UNLINK,REMOVE} values rather than host
6594 compiler.
6595
6596Wed Jan 28 13:48:08 1998 Ian Lance Taylor <ian@cygnus.com>
6597
6598 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
6599
6600Wed Jan 28 09:52:00 1998 Nick Clifton <nickc@cygnus.com>
6601
6602 * config/tc-v850.c (v850_insert_operand): Display instruction when
6603 an error is encountered.
6604
6605Tue Jan 27 13:32:01 1998 Robert Lipe <robertl@dgii.com>
6606
6607 * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
6608 (i386-*-sco3.2v5*coff): New target.
6609 (i386-*-sco3.2*): New target.
6610 * configure: Rebuild.
6611
6612Tue Jan 27 11:06:52 1998 Nick Clifton <nickc@cygnus.com>
6613
6614 * config/tc-v850.c: Tidy error message production.
6615
6616Tue Jan 27 12:24:32 1998 Ian Lance Taylor <ian@cygnus.com>
6617
6618 * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
6619 validate_immediate return value in the right type for comparisons
6620 to FAIL.
6621
6622Tue Jan 27 06:51:59 1998 Richard Henderson <rth@cygnus.com>
6623
6624 * listing.c (MAX_BYTES): Use listing variables not constants.
6625 (data_buffer): No longer an array, but a pointer.
6626 (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
6627 (listing_listing): Allocate data_buffer.
6628
6629Tue Jan 27 06:38:35 1998 Richard Henderson <rth@cygnus.com>
6630
6631 * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
6632 --listing-rhs-width, --listing-cont-lines.
6633 (show_usage): Update.
6634 * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
6635 (listing_lhs_cont_lines, listing_rhs_width): New vars.
6636 (print_lines): Use the variables instead of the constants.
3e87a760 6637 (listing_listing): Likewise.
252b5132 6638 * listing.h: Declare the new vars.
3e87a760 6639
252b5132
RH
6640Tue Jan 27 05:32:05 1998 Richard Henderson <rth@cygnus.com>
6641
6642 * as.c (parse_args): Add --keep-locals alias for -L.
6643 Add --strip-local-absolute.
6644 (show_usage): Update.
6645 * as.h (flag_strip_local_absolute): New flag.
6646 * symbols.c (S_IS_LOCAL): Use it.
6647 * config/obj-aout.h (S_IS_LOCAL): Likewise.
6648 * config/obj-bout.h (S_IS_LOCAL): Likewise.
6649 * config/obj-coff.h (S_IS_LOCAL): Likewise.
6650
6651Mon Jan 26 13:07:41 1998 Nick Clifton <nickc@cygnus.com>
6652
6653 * config/tc-m32r.c: Detect if explicitly parallel instructions
3e87a760 6654 might have an io conflict and issue a warning message.
252b5132
RH
6655
6656Thu Jan 22 17:51:44 1998 Nick Clifton <nickc@cygnus.com>
6657
6658 * cgen.c (cgen_save_fixups, cgen_restore_fixups,
6659 cgen_swap_fixups): Functions to save, restore and swap the fixup
6660 chain with a backup copy.
6661 (cgen_asm_finish_insn): Returns address of constructed insn.
6662
6663Wed Jan 21 16:49:10 1998 Richard Henderson <rth@cygnus.com>
6664
6665 * listing.c (file_info_struct): Remove FILE, add POS.
6666 (last_open_file_info, last_open_file): New; a one entry FILE* cache.
6667 (file_info): Don't open the file.
6668 (buffer_line): Check for the file in the last_open cache, updating
6669 as necessary.
6670 (print_source): Don't reference file_info->file.
6671 (listing_listing): Likewise.
6672 (listing_print): Close the file in the cache, if any.
6673
6674Fri Jan 16 14:51:48 1998 Ian Lance Taylor <ian@cygnus.com>
6675
6676 * read.c (dwarf_file_string): New file static variable.
6677 (emit_expr): Look for constant sequence that leads up to a file
6678 name in DWARF debugging output.
6679 (stringer): Use dwarf_file_string to decide whether to accept a
6680 string as a file name.
6681
6682Fri Jan 16 11:30:37 1998 Richard Henderson <rth@cygnus.com>
6683
6684 * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
6685 (crack_operand): Add reg->reglst MRI hack.
6686 (r_seg): Put reglst symbols in reg_section.
6687 (m68k_frob_symbol): Frob reglst symbols into absolute_section.
6688
6689Thu Jan 15 14:19:01 1998 Richard Henderson <rth@cygnus.com>
6690
6691 * tc-sh.c (get_specific): Handle SGR & DBR.
6692
6693Thu Jan 15 13:46:48 1998 Richard Henderson <rth@cygnus.com>
6694
6695 * tc-h8300.c (parse_reg): Take the length of the symbol into
6696 account when attempting to match a register name.
6697 * tc-h8500.c (parse_reg): Likewise.
6698
6699Wed Jan 14 17:52:33 1998 Nick Clifton <nickc@cygnus.com>
6700
6701 * cgen.c: Formatting changes to improve readability.
6702
6703Wed Jan 14 15:41:41 1998 Jeffrey A Law (law@cygnus.com)
6704
6705 * config/tc-mips.c (macro): Rework division code to avoid unfilled
6706 delay slot.
6707
6708Wed Jan 14 18:04:20 1998 Michael Meissner <meissner@cygnus.com>
6709
6710 Based on a patch from Jim Wilson
6711 * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
6712 (tc_gen_reloc): Handle cross section PC relative relocs
6713 correctly.
6714
6715Wed Jan 14 15:02:19 1998 Doug Evans <devans@seba.cygnus.com>
6716
6717 * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
6718
6719Mon Jan 12 13:04:57 1998 Doug Evans <devans@seba.cygnus.com>
6720
6721 * cgen.c: #include setjmp.h. Clean up pass over `struct foo' usage.
6722 (expr_jmp_buf): New static local.
6723 (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
6724 (cgen_md_operand): New function.
6725 * tc-m32r.c: Clean up pass over `struct foo' usage.
6726 (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
6727
6728Tue Jan 6 15:36:02 1998 Richard Henderson <rth@cygnus.com>
6729
6730 * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
6731 (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
6732
6733Fri Jan 2 16:08:54 1998 Ian Lance Taylor <ian@cygnus.com>
6734
6735 * config/tc-i386.c (i386_operand): Give an error if there are
6736 unrecognized characters after an expression.
6737
6738For older changes see ChangeLog-9697
This page took 0.344867 seconds and 4 git commands to generate.