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