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