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