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