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