Added support for Thumb architecture from armT-970328-branch.
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 Tue Jun 3 16:15:13 1997 Nick Clifton <nickc@cygnus.com>
2
3 * configure.in (emulations): Added Thumb architecture support from
4 armT-9703-28-branch.
5
6 Mon Jun 2 16:25:07 1997 Nick Clifton <nickc@cygnus.com>
7
8 * doc/all.texi: Add enabling of ARM documentation.
9
10 * doc/as.texinfo: Add ARM documentation from armT-970328-branch.
11
12 Mon Jun 2 11:55:12 1997 Gavin Koch <gavin@cygnus.com>
13
14 * config/tc-mips.c: Added r3900 support.
15
16 Thu May 29 12:58:26 1997 Ben Pfaff <pfaffben@pilot.msu.edu>
17
18 * as.c: (parse_args) `-t' option requires an argument.
19
20 Wed May 28 15:45:07 1997 Nick Clifton <nickc@cygnus.com>
21
22 * config/tc-arm.c (md_begin): Change call to
23 coff_arm_bfd_set_private_flags() to a call to
24 bfd_set_private_flags().
25
26 Wed May 28 16:17:34 1997 Ian Lance Taylor <ian@cygnus.com>
27
28 * Makefile.in: Rebuild dependencies.
29
30 * config/tc-i386.c (tc_gen_reloc): Don't try to convert the type
31 of a BFD_RELOC_RVA reloc.
32
33 Wed May 28 10:48:14 1997 Jeffrey A Law (law@cygnus.com)
34
35 * config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
36 (hppa_force_relocation): Force a relocation for an absolute
37 call/jump.
38
39 Mon May 26 13:24:25 1997 Ian Lance Taylor <ian@cygnus.com>
40
41 * doc/as.texinfo: Don't use @value in section names or index
42 entries; it confuses texinfo.tex.
43
44 Fri May 23 00:09:35 1997 Tom Tromey <tromey@cygnus.com>
45
46 * doc/as.texinfo: Updated for -MD option.
47 * Makefile.in (CFILES): Added depend.c.
48 (OBJS): Added depend.o.
49 * as.h (start_dependencies, register_dependency,
50 print_dependencies): New declarations.
51 * depend.c: New file.
52 * as.c (parse_args): Added -MD option.
53 (main): Call print_dependencies.
54 (show_usage): Added help for -MD.
55 * read.c (s_app_file): Call register_dependency.
56 (s_include): Call register_dependency when file is found.
57 (read_a_source_file): Call register_dependency.
58
59 Wed May 21 17:39:28 1997 Ian Lance Taylor <ian@cygnus.com>
60
61 * config/obj-coff.c (symbol_to_chars): If TE_PE, don't add the
62 section address to the symbol value.
63
64 Tue May 20 11:23:31 1997 Gavin Koch <gavin@cygnus.com>
65
66 * config/tc-mips.c (macro_build,mips_ip): Move the INSN_ISA field
67 into the new membership field.
68
69 Thu May 15 10:00:53 1997 Nick Clifton <nickc@cygnus.com>
70
71 * config/tc-arm.c (md_begin): If no cpu type is specified on the
72 command line then the ARM7 is now chosen by default when setting
73 the BFD machine and architecture.
74
75 Wed May 14 09:54:53 1997 Nick Clifton <nickc@cygnus.com>
76
77 * config/tc-arm.c (global variables): Added 'uses_apcs_26' flag to
78 hold APCS selection.
79 (md_begin): Added code to generate flags to be set into the COFF
80 header and the calls to the BFD functions to do this.
81 (md_parse_option, md_show_usage): Added new command line
82 options -mapcs-32, -mapcs-26, -marmv2, -marmv2a, -marmv3,
83 -marmv3m, -marmv4, -marmv4t.
84
85 * tc-arm.h (LOCAL_LABEL): Removed the definition of this macro
86 as it is never used.
87
88 Tue May 13 22:26:14 1997 Jeffrey A Law (law@cygnus.com)
89
90 * config/tc-mn10200.c (md_convert_frag): Prefix temporary
91 label name with ".".
92 * config/tc-mn10300.c (md_convert_frag): Likewise.
93
94 Tue May 13 14:44:39 1997 Ian Lance Taylor <ian@cygnus.com>
95
96 * config/tc-mips.c (set_at): Check for bignum.
97 (check_absolute_expr, macro, mips16_macro): Likewise.
98
99 start-sanitize-tic80
100 Tue May 13 10:45:56 1997 Fred Fish <fnf@cygnus.com>
101
102 * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
103 for overflow/underflow, only insert lower 15 bits into instruction.
104
105 end-sanitize-tic80
106 Mon May 12 13:33:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
107
108 * config/tc-i386.c (pi): Check for RegMMX.
109
110 Thu May 8 11:10:15 1997 Ian Lance Taylor <ian@cygnus.com>
111
112 * expr.c (expr): When subtracting values in the same frag,
113 subtract X_add_number rather than adding it.
114
115 Wed May 7 15:39:48 1997 Ian Lance Taylor <ian@cygnus.com>
116
117 * config/obj-coff.c (write_object_file): Just pass NULL to
118 md_do_align, not the address of a char holding NOP_OPCODE.
119
120 * config/tc-mips.c (macro): Handle constants for M_LI_D and
121 M_LI_DD.
122 (mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
123 than an address if the floating point value looks sufficiently
124 simple.
125
126 Tue May 6 12:18:09 1997 Ian Lance Taylor <ian@cygnus.com>
127
128 * config/tc-i386.c (md_section_align): If a.out and BFD, force
129 section size to be aligned.
130
131 Mon May 5 17:16:55 1997 Ian Lance Taylor <ian@cygnus.com>
132
133 * cond.c: Include "macro.h".
134 (struct conditional_frame): Add macro_nest field.
135 (initialize_cframe): Initialize macro_nest.
136 (cond_finish_check): Add nest parameter. Change all callers.
137 (cond_exit_macro): New function.
138 * as.h (cond_finish_check): Update declaration.
139 (cond_exit_macro): Declare.
140 * input-scrub.c (macro_nest): Make globally visible.
141 (input_scrub_next_buffer): Call cond_finish_check.
142 * macro.h (macro_nest): Declare.
143 * read.c (s_mexit): Call cond_exit_macro.
144
145 * config/tc-i386.h (RegMMX): Define.
146 * config/tc-i386.c (pi): Check for all register types.
147 (type_names): Add RegMMX.
148 (md_assemble): Handle RegMMX.
149
150 Wed Apr 30 12:47:00 1997 Manfred Hollstein <manfred@s-direktnet.de>
151
152 * config/obj-coff.c (c_section_symbol): Clear the LOCAL bit #ifdef
153 TE_DELTA.
154
155 Tue Apr 29 20:23:10 1997 Jim Wilson <wilson@cygnus.com>
156
157 * config/tc-mips.c (nopic_need_relax): Add new parameter
158 before_relaxing. Use it when testing ecoff_extern_size.
159 (load_address, macro, md_estimate_size_before_relax): Fix all
160 callers.
161
162 Tue Apr 29 19:54:36 1997 Richard Henderson <rth@tamu.edu>
163
164 * config/obj-elf.c (elf_pseudo_table): Add "subsection".
165 (obj_elf_subsection): New static function.
166
167 Tue Apr 29 19:52:47 1997 Ian Lance Taylor <ian@cygnus.com>
168
169 * config/obj-coff.c (coff_header_append): Don't reset string_size
170 each time through the loop.
171
172 Fri Apr 25 14:17:46 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
173
174 * Makefile.in (DISTSTUFF): Add itbl-parse.h.
175
176 Fri Apr 25 12:03:15 1997 Ian Lance Taylor <ian@cygnus.com>
177
178 * doc/internals.texi (Porting GAS): Correct documentation for
179 current configure handling of targ-cpu.h, et. al.
180 (CPU backend): Document listing macros.
181
182 * listing.c (data_buffer): Set size based on other listing macros,
183 rather than always using 100.
184 (data_buffer_size): Remove static variable.
185 (calc_hex): Make data_buffer_size a local variable. Don't leave
186 any slop when filling data_buffer.
187
188 Mon Apr 21 15:33:19 1997 Ian Lance Taylor <ian@cygnus.com>
189
190 * doc/c-mips.texi: Document .set autoextend.
191
192 Sat Apr 19 23:09:25 1997 Niklas Hallqvist <niklas@petra.appli.se>
193
194 * configure.in (i386-*-openbsd*, m68k-*-openbsd*,
195 mips-dec-openbsd*, ppc-*-*bsd*, ns32k-pc532-openbsd*,
196 sparc-*-openbsd*): New targets.
197 * configure: Rebuild.
198
199 Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
200
201 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
202 for all undefined symbols.
203
204 Fri Apr 18 13:37:35 1997 Ian Lance Taylor <ian@cygnus.com>
205
206 * config/tc-ppc.c (ppc_fix_adjustable): Handle zero length csects
207 correctly.
208
209 Fri Apr 18 11:51:35 1997 Niklas Hallqvist <niklas@appli.se>
210
211 * configure.in (alpha*-*-openbsd*): New target.
212 * configure: Rebuild.
213
214 Thu Apr 17 13:59:47 1997 Per Fogelstrom <pefo@openbsd.org>
215
216 * configure.in (mips-*-openbsd*): New target.
217 * configure: Rebuild.
218
219 start-sanitize-d30v
220 Wed Apr 16 12:31:24 1997 Martin Hunt <hunt@cygnus.com>
221
222 * config/tc-d30v.c (parallel_ok): Fix parallel checking
223 for instructions using conditional execution.
224
225 end-sanitize-d30v
226 Tue Apr 15 18:11:44 1997 Gavin Koch <gavin@cygnus.com>
227
228 * config/tc-mips.c (insn_uses_reg): Correct test for fpr pairs.
229
230 Tue Apr 15 13:04:47 1997 Ian Lance Taylor <ian@cygnus.com>
231
232 * Makefile.in (srcroot): Remove.
233 (INSTALL): Set to @INSTALL@.
234 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
235 (all, dvi): Don't set srcroot.
236 (install): Depend upon as.new, gasp.new, and installdirs. Use
237 $(program_transform_name) directly, rather than using
238 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
239 (installdirs): New target.
240 * doc/Makefile.in (INSTALL_XFORM1): Remove.
241 (install): Depend upon installdirs. Use $(program_transform_name)
242 directly, rather than using $(INSTALL_XFORM) and
243 $(INSTALL_XFORM1).
244 (installdirs): New target.
245 (install-info-as): Run mkinstalldirs.
246 (install-info-gasp): Likewise.
247
248 Mon Apr 14 11:59:08 1997 Ian Lance Taylor <ian@cygnus.com>
249
250 * Makefile.in (INSTALL): Change install.sh to install-sh.
251
252 * symbols.c (resolve_symbol_value): Check for division by zero.
253
254 From Thomas Graichen <graichen@rzpd.de>:
255 * Makefile.in: Always use $(SHELL) when running move-if-change.
256 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
257 * configure: Rebuild.
258
259 Thu Apr 10 14:40:00 1997 Doug Evans <dje@canuck.cygnus.com>
260
261 * cgen.c (cgen_parse_operand): Renamed from cgen_asm_parse_operand.
262 New argument `want'. Update enum cgen_parse_operand_result values.
263 Initialize if CGEN_PARSE_OPERAND_INIT.
264 * config/tc-m32r.c (md_begin): Set cgen_parse_operand_fn.
265 (md_assemble): Call cgen_asm_init_parse.
266 Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
267
268 Wed Apr 9 11:49:41 1997 Ian Lance Taylor <ian@cygnus.com>
269
270 * config/tc-m68k.c (m68k_ip): Handle #j.
271
272 Tue Apr 8 16:37:57 1997 Jeffrey A Law (law@cygnus.com)
273
274 * config/tc-mn10300.c (md_convert_frag): Create fixup at the
275 right address for call label:32,regs,imm.
276
277 Mon Apr 7 14:58:22 1997 Jeffrey A Law (law@cygnus.com)
278
279 * config/tc-hppa.c (pa_subspace_start): If OBJ_ELF, then always return
280 zero.
281 * config/tc-hppa.h (tc_frob_symbol): Don't reset the value of the
282 symbol for OBJ_ELF anymore.
283
284 Mon Apr 7 10:54:59 1997 Doug Evans <dje@canuck.cygnus.com>
285
286 * Makefile.in: Regenerate dependencies.
287 (TARG_CPU): New variable.
288 (cgen.o): Depend on cgen.h, $(TARG_CPU)-opc.h.
289 (.dep1): Delete creating of cgen-opc.h.
290 (.tcdep): Put proper contents in cgen-opc.h.
291 * configure.in (m32r): Delete setting of extra_files, extra_links.
292 (AC_OUTPUT): Create cgen-opc.h.
293 * configure: Regenerated.
294
295 Sat Apr 5 13:19:12 1997 Klaus Kaempf <kkaempf@progis.de>
296
297 * makefile.vms: Update to build gasp.exe.
298
299 Fri Apr 4 16:10:02 1997 Doug Evans <dje@canuck.cygnus.com>
300
301 * write.c (relax_frag): Make non-static.
302 * write.h (relax_frag): Add prototype for.
303 * config/tc-m32r.h (md_do_align): New arg `max'.
304 * config/tc-m32r.c (m32r_do_align): Likewise.
305 Update calls to frag_align, frag_align_pattern.
306 (fill_insn): Update call to m32r_do_align.
307 (m32r_scomm): Update call to frag_align.
308
309 * config/tc-m32r.[ch]: New files.
310 * cgen.c: New file.
311 * Makefile.in (CPU_TYPES): Add m32r.
312 (TARGET_CPU_CFILES): Add tc-m32r.c.
313 (TARGET_CPU_HFILES): Add tc-m32r.h.
314 (DISTCLEAN_HERE): Add cgen-opc.h.
315 (.dep1,.tcdep): Create empty cgen-opc.h.
316 (cgen.o): Add dependencies.
317 (dependencies): Regenerate.
318 * as.h (struct frag): New member fr_targ.
319 (fr_pcrel_adjust,fr_bsr): Move into union fr_targ.ns32k.
320 * conf.in (USING_CGEN): New macro.
321 * configure.in (m32r-*-*): Add entry for.
322 Add cgen.o to extra_objects.
323 * configure: Regenerate.
324 * frags.c (frag_var): fr_pcrel_adjust renamed to
325 fr_targ.ns32k.pcrel_adjust. fr_bsr renamed to fr_targ.ns32k.bsr.
326 (frag_variant): Likewise.
327 * write.c (relax_frag): Likewise.
328 * config/tc-ns32k.c (*): Likewise.
329
330 Fri Apr 4 13:26:10 1997 Ian Lance Taylor <ian@cygnus.com>
331
332 * config/tc-hppa.h (TC_EOL_IN_INSN): Check explicitly for '!',
333 rather than for any end of line character.
334
335 * config/tc-hppa.c (tc_gen_reloc): If hppa_ren_reloc_type fails,
336 call abort (i.e., as_abort) rather than crashing.
337
338 * config/tc-mips.c: Protect uses of STO_MIPS16 with an ifdef of
339 OBJ_ELF, rather than of S_GET_OTHER.
340
341 * Makefile.in (DISTCLEAN_HERE): Add site.exp and site.bak.
342
343 Thu Apr 3 13:16:18 1997 Ian Lance Taylor <ian@cygnus.com>
344
345 * Makefile.in (VERSION): Set to 2.8.1.
346
347 * Branched binutils 2.8.
348
349 Wed Apr 2 12:24:10 1997 Ian Lance Taylor <ian@cygnus.com>
350
351 * COPYING: Update FSF address.
352
353 * config/tc-mips.c (mips16_macro): Handle M_DMUL and M_MUL.
354
355 Tue Apr 1 18:29:47 1997 Jim Wilson <wilson@cygnus.com>
356
357 * config/tc-mips.c (md_begin): Don't set interlocks for 4100.
358
359 Tue Apr 1 16:24:28 1997 Klaus Kaempf <kkaempf@progis.de>
360
361 * config-gas.com: Update to handle both vax and alpha.
362 * makefile.vms: Update to use config-gas.
363 * conf-a-gas.com: Remove file.
364
365 Tue Apr 1 16:08:21 1997 Ian Lance Taylor <ian@cygnus.com>
366
367 * Makefile.in: Remove unnecessary itbl-parse.h, ibtl-parse.c, and
368 itbl-lex.c dependencies. Remove rules for itbl-lex.o,
369 itbl-parse.o, and itbl-ops.o; just use the normal .c.o rule.
370
371 start-sanitize-tic80
372 Tue Apr 1 11:25:56 1997 Michael Meissner <meissner@cygnus.com>
373
374 * config/tc-tic80.c (line_comment_char): Make '#' start comments
375 at the beginning of a line for compatibility with .S files where
376 cpp leaves the filename transitions beginning with '#'.
377
378 end-sanitize-tic80
379 Tue Apr 1 00:07:30 1997 Ian Lance Taylor <ian@cygnus.com>
380
381 * config/tc-m68k.c: Only compile tc_coff_symbol_emit_hook and
382 tc_coff_sizemachdep if OBJ_COFF.
383
384 Mon Mar 31 23:53:44 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
385
386 * config/tc-ppc.c (register_name): Declare.
387
388 Mon Mar 31 16:31:04 1997 Joel Sherrill <joel@oarcorp.com>
389
390 * configure.in (hppa*-*-rtems*): New target, like hppa-*-*elf*.
391 * configure: Rebuild.
392
393 Mon Mar 31 14:15:19 1997 Ian Lance Taylor <ian@cygnus.com>
394
395 * config/tc-mips.c (mips_pseudo_table): Add "stabn".
396 (mips16_mark_labels): New static function.
397 (append_insn): Call mips16_mark_labels.
398 (mips_emit_delays): Likewise.
399 (s_insn): Likewise. Don't call mips_clear_insn_labels.
400 (s_mips_stab): New static function.
401
402 * configure.in: Use ELF for mips-*-gnu*.
403 * configure: Rebuild.
404
405 Mon Mar 31 14:01:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
406
407 * config/tc-m68k.h (TARGET_FORMAT): Set to "coff-m68k-sysv" if
408 TE_DELTA.
409
410 Fri Mar 28 18:03:19 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
411
412 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
413 set OPCODES_LIB to empty.
414 * configure: Rebuild.
415
416 Fri Mar 28 15:25:24 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
417
418 * configure.in (sparc-*-linux*aout*, sparc-*-linux*): New
419 targets.
420 * configure: Rebuild.
421
422 Fri Mar 28 13:08:33 1997 Ian Lance Taylor <ian@cygnus.com>
423
424 * itbl-parse.y (yyerror): Make static. Declare.
425
426 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
427 * configure.in: Set emulations for mips-*-linux*-*.
428 * configure: Rebuild.
429
430 * config/tc-mips.c (struct mips_set_options): Define.
431 (mips_opts): New static variable.
432 (mips_isa): Remove. Now a field in mips_opts. Change all
433 references.
434 (mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
435 (mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
436 (struct mips_option_stack): Define.
437 (mips_opts_stack): New static variable.
438 (s_mipsset): Add support for .set push and .set pop.
439 * doc/c-mips.texi: Document .set push and .set pop.
440
441 * config/obj-elf.c (obj_elf_section_change_hook): New function.
442 * config/obj-elf.h (obj_elf_section_change_hook): Declare it.
443 * config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
444
445 Thu Mar 27 12:23:56 1997 Ian Lance Taylor <ian@cygnus.com>
446
447 * as.c (parse_args): Update copyright date in version message.
448
449 * Makefile.in (clean-here): Remove dependency files.
450
451 * read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
452 (s_mri_common): Check S_IS_COMMON unconditionally.
453 * symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
454 * config/tc-alpha.c (s_alpha_comm): Likewise.
455 * config/tc-mips.c (nopic_need_relax): Likewise.
456 * config/tc-ppc.c (ppc_elf_lcomm): Likewise.
457 (ppc_pe_comm): Likewise.
458 * config/obj-elf.c (obj_elf_common): Likewise. Set segment of
459 common symbol to bfd_com_section_ptr.
460 * config/tc-sparc.c (s_common): Likewise.
461 (tc_gen_reloc): Likewise.
462
463 start-sanitize-d30v
464 Thu Mar 27 00:29:46 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
465
466 * config/tc-d30v.c (md_apply_fix3): Get the relocs right.
467
468 end-sanitize-d30v
469 Wed Mar 26 13:35:15 1997 H.J. Lu <hjl@lucon.org>
470
471 * config/tc-i386.c (tc_i386_fix_adjustable): Only define if
472 BFD_ASSEMBLER.
473
474 Wed Mar 26 11:32:51 1997 Ian Lance Taylor <ian@cygnus.com>
475
476 * input-scrub.c (input_scrub_next_buffer): Handle very long input
477 lines correctly.
478
479 * listing.c (print_lines): Add lineno parameter. Change all
480 callers.
481 (listing_listing): Only call calc_hex for the right line.
482 (listing_list): Set the new edict based on the current edict, in
483 order to handle listing commands in macros correctly.
484
485 * config/tc-mips.c (insn_uses_reg): Map register numbers in mips16
486 instructions.
487
488 * cond.c (cond_finish_check): New function.
489 * as.h (cond_finish_check): Declare.
490 * as.c (main): Call cond_finish_check.
491
492 start-sanitize-d30v
493 Tue Mar 25 14:45:54 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
494
495 * config/tc-d30v.c (md_assemble): If two instructions
496 are supposed to be assembled in parallel and the first one is
497 long, print an error and stop.
498 (md_apply_fix3): Don't calculate absolute relocs. Just write
499 them out.
500
501 end-sanitize-d30v
502 Mon Mar 24 12:11:18 1997 Ian Lance Taylor <ian@cygnus.com>
503
504 * config/tc-i386.h (iclrKludge): Define.
505 * config/tc-i386.c (md_assemble): Handle iclrKludge.
506
507 * config/tc-alpha.h (tc_frob_file_before_adjust): Define if
508 OBJ_ECOFF.
509 (alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
510 * config/tc-alpha.c (alpha_debug): New static variable.
511 (md_parse_option): Set alpha_debug if -g is seen.
512 (alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
513
514 start-sanitize-d30v
515 Sun Mar 23 18:03:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
516
517 * config/tc-d30v.c (build_insn): Enable range-checking code.
518 (postfix): Stop at space or comma. Fixes PR 11862.
519 (md_assemble): Change error message.
520
521 end-sanitize-d30v
522 Sat Mar 22 13:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
523
524 * Makefile.in: Added automatic dependency building.
525 * dep-in.sed: New file.
526
527 Fri Mar 21 15:42:37 1997 Ian Lance Taylor <ian@cygnus.com>
528
529 * config/obj-ieee.c (segment_name): Don't define function if this
530 is a macro.
531
532 * config/obj-coff.h (DO_STRIP): Don't define.
533 * config/tc-h8300.h (DO_STRIP): Don't define.
534 * config/tc-h8500.h (DO_STRIP): Don't define.
535 * config/tc-w65.h (DO_STRIP): Don't define.
536 * config/tc-z8k.h (DO_STRIP): Don't define.
537
538 * symbols.c (colon): Call obj_frob_label if it is defined.
539 * config/obj-vms.h (obj_frob_label): Rename from tc_frob_label.
540
541 * configure.in: Don't set files and links. Don't call
542 AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
543 obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
544 * configure: Rebuild.
545 * Makefile.in (TARG_CPU_C): New variable.
546 (TARG_CPU_O, TARG_CPU_H): New variables.
547 (OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
548 (TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
549 (SOURCES): Rename from REAL_SOURCES. Delete old definition.
550 (LINKED_SOURCES): Remove.
551 (HEADERS): Rename from REAL_HEADERS. Delete old definition.
552 (LINKED_HEADERS): Remove.
553 (OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
554 ($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
555 targ-cpu.h, etc.
556 ($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
557 (targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
558 (itbl-cpu.h): Remove target.
559 (DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
560 atof-targ.h.
561
562 Thu Mar 20 19:18:58 1997 Ian Lance Taylor <ian@cygnus.com>
563
564 * doc/as.texinfo (Symbol Names): Don't use obsolete @ctrl macro.
565
566 Thu Mar 20 16:49:14 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
567
568 * config/tc-m68k.c (mri_chip): Replace calls to get_symbol_end by
569 open coded loop that does not require the name to start with a
570 name beginner.
571
572 Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
573
574 * frags.c (frag_var): Change offset parameter to offsetT.
575 (frag_variant): Likewise.
576 * frags.h (frag_variant, frag_var): Update declarations.
577 * config/tc-m68k.c (struct m68k_it): Change foff field to
578 offsetT.
579 (add_frag): Change off parameter to offsetT.
580 * Several files: Add casts to calls to frag_var.
581
582 * Makefile.in (m68k-parse.c): Depend upon itbl-parse.c, to
583 serialize a parallel make.
584 (itbl-parse.h): Split target out from itbl-parse.c.
585
586 Thu Mar 20 12:48:45 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
587
588 * config/m68k-parse.y (motorola_operand): Allow (zdireg,EXPR).
589
590 * config/te-delta.h (COFF_COMMON_ADDEND): Define.
591 * config/obj-coff.c (fixup_segment): Check COFF_COMMON_ADDEND when
592 storing the value of a common symbol.
593
594 Wed Mar 19 11:37:57 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
595
596 * config/obj-coff.c (glue_symbols): Unused variable symbolP
597 removed.
598 (crawl_symbols): Do not modify symbol_rootP and symbol_lastP here;
599 that is done by symbol_remove and symbol_insert.
600
601 * config/obj-coff.h (S_IS_LOCAL): Return 0 for a debugging
602 symbol.
603
604 Wed Mar 19 11:06:29 1997 Ian Lance Taylor <ian@cygnus.com>
605
606 * config/tc-mips.c (load_register): In 32 bit mode, when not
607 dealing with a 64 bit number, permit the upper 32 bits to be set
608 even if bit 31 is not set.
609
610 Tue Mar 18 23:30:14 1997 Ian Lance Taylor <ian@cygnus.com>
611
612 * read.c (potable): Add "equiv".
613 (s_set): Handle .equiv based on argument.
614 * doc/as.texinfo (Equiv): New node to document .equiv.
615 (Err): New node to document .err.
616
617 Tue Mar 18 15:50:13 1997 H.J. Lu <hjl@lucon.org>
618
619 * Many files: Add function prototypes.
620 * as.c (show_usage, parse_args): Make static.
621 * frags.h (frag_alloc): Declare.
622 * subsegs.c (subseg_set_rest): Don't declare frag_alloc.
623 * symbols.c (dollar_label_instance): Change return type to long.
624 * symbols.h (print_symbol_value): Declare.
625 (print_expr, print_expr_1, print_symbol_value_1): Declare.
626 * write.c (fix_new_exp): Don't declare make_expr_symbol.
627 (remove_subsegs, relax_frag): Make static.
628 * config/atof-vax.c (atof_vax_sizeof): Change letter to int.
629 (what_kind_of_float): Likewise.
630 (atof_vax): Make static. Change what_kind to int.
631 (md_atof): Change what_statement_type to int.
632 * config/obj-ecoff.h (obj_ecoff_set_ext): Declare.
633 * config/tc-alpha.c (vax_md_atof): Declare.
634 (md_atof): Don't declare atof_ieee and vax_md_atof.
635 * config/tc-i386.c (set_16bit_code_flag): Make static.
636 * config/tc-i386.h (tc_i386_fix_adjustable): Declare.
637 * config/tc-m68k.c (add_fix): Change width to int.
638 (insert_reg): Change regname to const.
639 (md_atof): Don't declare atof_ieee.
640 (demand_empty_rest_of_line): Don't declare.
641 * config/tc-m88k.c (md_atof): Don't declare atof_ieee.
642 * config/tc-sparc.c (cmp_reg_entry): Change args to const PTR.
643 (parse_keyword_arg): Change lookup_fn to take const arg.
644 (md_atof): Don't declare atof_ieee.
645 * config/tc-sparc.h: Add ifdef for multiple inclusion.
646 (tc_aout_pre_write_hook): Don't declare.
647
648 Mon Mar 17 11:21:09 1997 Ian Lance Taylor <ian@cygnus.com>
649
650 * as.h (bfd_alloc_by_size_t): Don't declare.
651 * Many files: Use xmalloc rather than bfd_alloc_by_size_t.
652
653 Sun Mar 16 13:49:21 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
654
655 * symbols.c (symbol_new): Don't call debug_verify_symchain.
656 (symbol_append): Set sy_next and sy_previous when adding a single
657 symbol to an empty list. Call debug_verify_symchain.
658 (verify_symbol_chain): Use assert, not know.
659
660 Sat Mar 15 20:27:12 1997 Fred Fish <fnf@cygnus.com>
661
662 * NEWS: Note BeOS support.
663 * configure.in: (ppc-*-beos): New target, use coff as object format.
664 * configure: Regenerate with autoconf.
665
666 Sat Mar 15 19:14:02 1997 Ian Lance Taylor <ian@cygnus.com>
667
668 * config/tc-mips.c (md_apply_fix): Improve error message for out
669 of range branch.
670
671 * Makefile.in: Add dependencies on obstack.h where needed.
672
673 Fri Mar 14 15:33:38 1997 Ian Lance Taylor <ian@cygnus.com>
674
675 * config/tc-mips.c (md_estimate_size_before_relax): Handle the
676 case of a symbol equated to another symbol when using SVR4_PIC.
677
678 * Makefile.in (TARG_CPU_DEP_sparc): Add opcode/sparc.h.
679
680 Thu Mar 13 11:20:51 1997 Ian Lance Taylor <ian@cygnus.com>
681
682 * read.c (read_a_source_file): Call LISTING_NEWLINE before
683 HANDLE_CONDITIONAL_ASSEMBLY when handling an MRI line label.
684
685 * config/obj-elf.c (obj_elf_data): Call md_flush_pending_output
686 and md_elf_section_change_hook if they are defined.
687 (obj_elf_text, obj_elf_previous): Likewise.
688
689 Wed Mar 12 11:40:20 1997 Ian Lance Taylor <ian@cygnus.com>
690
691 * config/obj-multi.h (struct elf_obj_sy): Define if
692 OBJ_MAYBE_ELF.
693 (OBJ_SYMFIELD_TYPE): Define as struct elf_obj_sy if
694 OBJ_MAYBE_ELF.
695 * config/obj-elf.h (struct elf_obj_sy): Don't define if
696 OBJ_SYMFIELD_TYPE is defined.
697
698 * doc/as.texinfo (bss): Improve description of .bss section. In
699 ELF or COFF, you are permitted to switch into the section.
700 (Comm): Rewrite description of common symbols.
701 (Lcomm): Mention that some targets permit a third argument.
702
703 Tue Mar 11 01:13:31 1997 Ian Lance Taylor <ian@cygnus.com>
704
705 * config/tc-ppc.c (ppc_elf_lcomm): Don't call S_CLEAR_EXTERNAL.
706
707 * symbols.c (colon): Change type of local to int. From Alan Modra
708 <alan@spri.levels.unisa.edu.au>.
709
710 * config/tc-m88k.c (m88k_do_align): Don't use a special nop
711 alignment if a zero fill pattern was explicitly specified.
712 * config/tc-sh.c (sh_do_align): Likewise.
713
714 * read.c (equals): Always permit register names to be redefined.
715
716 * config/tc-mips.c (mips_fix_adjustable): Permit a reloc against a
717 mips16 symbol to be adjusted if a symbol is being subtracted from
718 it.
719
720 From Eric Youngdale <eric@andante.jic.com>:
721 * config/obj-elf.c (obj_elf_symver): Check for duplicate or
722 illegal symbol version names.
723 (elf_frob_symbol): Check for external default versions.
724
725 Sun Mar 9 23:49:12 1997 Ian Lance Taylor <ian@cygnus.com>
726
727 From Eric Youngdale <eric@andante.jic.com>:
728 * config/obj-elf.h (struct elf_obj_sy): Define.
729 (OBJ_SYMFIELD_TYPE): Define to elf_obj_sy struct. Change all
730 users.
731 * config/obj-elf.c (obj_elf_symver): Just record the name.
732 (obj_symbol_new_hook): Initialized versioned_name field.
733 (elf_frob_symbol): If there is a versioned_name, either rename the
734 symbol, or add an alias with that name.
735
736 Thu Mar 6 13:55:32 1997 Jeffrey A Law (law@cygnus.com)
737
738 * config/tc-mn10300.c (md_relax_table): Define.
739 (md_convert_frag): Implement.
740 (md_assemble): Handle relaxable operands/instructions correctly.
741 (md_estimate_size_before_relax): Implement.
742 * config/tc-mn10300.h (TC_GENERIC_RELAX_TABLE): Define.
743
744 * config/tc-mn10200.c (md_relax_table): Fix typos.
745
746 * config/tc-mn10300.c (md_assemble): Don't use any MN10300 specific
747 relocs anymore. Tweak fx_offset for pc-relative relocs.
748
749 Wed Mar 5 15:46:16 1997 Ian Lance Taylor <ian@cygnus.com>
750
751 * cond.c (s_ifc): Call mri_comment_field and mri_comment_end when
752 in MRI mode.
753
754 start-sanitize-tic80
755 Tue Mar 4 19:34:21 1997 Fred Fish <fnf@cygnus.com>
756
757 * config/tc-tic80.c (md_pseudo_table): Add "sect" and "section"
758 pseudo-ops.
759 * config/tc-tic80.c (md_begin): Declare external variable
760 coff_flags and insert an F_AR32WR bit into it.
761
762 end-sanitize-tic80
763 Tue Mar 4 10:01:04 1997 Ian Lance Taylor <ian@cygnus.com>
764
765 * read.c (equals): Add reassign parameter. Change all callers.
766 * read.h (equals): Update declaration.
767
768 Sat Mar 1 01:04:04 1997 Ian Lance Taylor <ian@cygnus.com>
769
770 * config/tc-mips.c (mips16_extended_frag): Don't assume that we
771 can rely on the frag address to determine whether a frag is
772 earlier or later.
773
774 Fri Feb 28 14:40:00 1997 Ian Lance Taylor <ian@cygnus.com>
775
776 * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
777 (S_LOCAL_NAME): Likewise.
778 (FAKE_LABEL_NAME): Define unconditionally.
779 * symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
780 BFD_ASSEMBLER.
781 (S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
782 * config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
783 Don't define FAKE_LABEL_NAME.
784 * config/te-ic960.h: Likewise.
785 * config/tc-mips.h (tc_frob_file_before_adjust): Define.
786 (mips_frob_file_before_adjust): Declare.
787 * config/tc-mips.c (mips_frob_file_before_adjust): New function.
788 (mips_local_label): Remove.
789
790 * config/te-sco386.h: Remove; not used.
791
792 start-sanitize-tic80
793 Thu Feb 27 15:39:16 1997 Fred Fish <fnf@cygnus.com>
794
795 * config/tc-tic80 (md_pseudo_table): Add align pseudo op to do
796 byte alignment rather than power-of-two alignment that is the
797 GAS default.
798
799 end-sanitize-tic80
800 Thu Feb 27 13:29:04 1997 Ian Lance Taylor <ian@cygnus.com>
801
802 * config/tc-m68k.c (md_assemble): Handle a reloc width of 'W'.
803
804 * gasp.c (hash_add_to_string_table): Correct misspelling in error
805 message, and add newline.
806 (process_file): Don't process assignments in the label if this is
807 a equ or assign pseudo-op.
808 (process_pseudo_op): Swap first argument to do_assign for K_ASSIGN
809 and K_EQU, to match documentation.
810
811 Thu Feb 27 12:00:03 1997 Michael Meissner <meissner@cygnus.com>
812
813 * config/obj-coff.c (obj_coff_section): Add 'r' section attribute
814 to denote read-only data sections.
815
816 Thu Feb 27 00:26:33 1997 Ian Lance Taylor <ian@cygnus.com>
817
818 * config/obj-elf.c (obj_elf_common): Set BSF_OBJECT in flags.
819 * config/tc-sparc.c (s_common): Likewise, if BFD_ASSEMBLER.
820
821 * expr.c (operand): Simplify 0b handling. Don't treat 0b as a
822 binary number if the next character is '+' or '-'.
823
824 start-sanitize-tic80
825 Wed Feb 26 20:47:12 1997 Fred Fish <fnf@cygnus.com>
826
827 * config/tc-tic80.c (FLT_CHARS): Change from "dD" to "fF".
828 (find_opcode): Match operands that can be floats.
829 (build_insn): Handle O_big (float) expressions and build
830 correct opcode.
831
832 end-sanitize-tic80
833 Wed Feb 26 18:19:00 1997 Stan Shebs <shebs@andros.cygnus.com>
834
835 * configure.in (mips*-*-lnews*): New target, also make empty
836 emulation list for this target.
837 * configure: Update.
838 * tc-mips.c (ECOFF_LITTLE_FORMAT): Define.
839 (mips_target_format): Use.
840 * te-lnews.h: New file.
841
842 start-sanitize-tic80
843 Wed Feb 26 15:33:46 1997 Fred Fish <fnf@cygnus.com>
844
845 * config/tc-tic80.c (find_opcode, build_insn): Changes to match
846 operands with :m or :s modifiers and generate the right opcodes
847 for them.
848
849 end-sanitize-tic80
850 Wed Feb 26 11:56:11 1997 Ian Lance Taylor <ian@cygnus.com>
851
852 * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
853 $(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
854
855 Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
856
857 * config/tc-m68k.c (instring): Useless local declaration of
858 crack_operand removed.
859 * expr.h (expressionS): Changed type of X_op field to operatorT if
860 __GNUC__.
861
862 Tue Feb 25 13:17:27 1997 Ian Lance Taylor <ian@cygnus.com>
863
864 Based on patches from Robert Lipe <robertl@dgii.com>:
865 * configure.in: Add i386coff and i386elf to emulation list.
866 * configure: Rebuild.
867 * as.c (i386coff, i386elf): Declare.
868 * obj.h (coff_format_ops): Declare.
869 * config/obj-coff.c (OBJ_HEADER): Define.
870 (coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
871 (coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
872 (obj_pseudo_table): Add "version".
873 (coff_pop_insert): New static function.
874 (coff_sec_sym_ok_for_reloc): New static function.
875 (no_func): New static function.
876 (coff_format_ops): New variable.
877 * config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
878 (obj_symbol_new_hook): Define.
879 (coff_obj_read_begin_hook): Declare.
880 (obj_read_begin_hook): Define.
881 * config/tc-i386.h (i386_target_format): Declare.
882 * config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
883 OUTPUT_FLAVOR when appropriate.
884 (i386_target_format): New function.
885 * Makefile.in (obj-coff.o): New target.
886 (e-i386coff.o, e-i386elf.o): New targets.
887
888 From Stephen Williams <steve@icarus.icarus.com>:
889 * config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
890 (_tc_get_bal_of_call): Don't declare.
891 (tc_get_bal_of_call): Declare as function, don't define as macro.
892 * config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
893 in sy_tc field, not x_balntry field.
894 (tc_get_bal_of_call): Rename from _tc_get_bal_of_call. Change
895 return type to symbolS *. If OBJ_COFF, retrieve value from sy_tc
896 field, not x_balntry field.
897
898 * config/obj-elf.c (obj_elf_section): Permit a .note section to
899 have the SHF_ALLOC attribute.
900
901 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
902 (TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
903 (itbl-lex.o): Depend upon itbl-parse.h.
904
905 * itbl-parse.y (yyerror): Change return type to int. Change to
906 use old style function declaration.
907
908 * Makefile.in (itbl-lex.o): Remove -Wall.
909 (itbl-parse.o): Likewise.
910
911 * cond.c (s_ifdef): If we should omit conditionals from listings,
912 call listing_list.
913 (s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
914 * listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
915 (listing_listing): Handle EDICT_NOLIST_NEXT.
916 (listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
917 * listing.h (LISTING_NOCOND): Define.
918 (LISTING_SKIP_COND): Define.
919 * as.c (show_usage): Mention c as a suboption of -a.
920 (parse_args): Handle c as a suboption of -a.
921 * doc/as.texinfo: Document -alc.
922
923 start-sanitize-tic80
924 Mon Feb 24 23:34:14 1997 Fred Fish <fnf@cygnus.com>
925
926 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
927
928 end-sanitize-tic80
929 Mon Feb 24 18:27:43 1997 Eric Youngdale <eric@andante.jic.com>
930
931 * doc/as.texinfo: Document .symver.
932
933 Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
934
935 * config/tc-d10v.c: Change pre_defined_registers to
936 d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
937
938 Mon Feb 24 10:40:45 1997 Fred Fish <fnf@cygnus.com>
939
940 * config/obj-coff.c: Fix typo in comment section.
941 start-sanitize-tic80
942 * config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
943 an additional alignment argument.
944 (find_opcode): Allow O_symbol relocs for any 32 bit field, not just
945 base relative ones.
946 (build_insn): Handle O_symbol relocs for any 32 bit field, not just
947 base relative ones.
948 end-sanitize-tic80
949
950 Mon Feb 24 02:23:00 1997 Dawn Perchik <dawn@cygnus.com>
951
952 * Makefile.in: Remove dependancies on itbl-cpu.h.
953 * as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
954 is not defined.
955
956 Mon Feb 24 02:03:00 1997 Dawn Perchik <dawn@cygnus.com>
957
958 * itbl-ops.h: Include as.h.
959
960 Mon Feb 24 01:04:00 1997 Dawn Perchik <dawn@cygnus.com>
961
962 * as.c: Remove -t option.
963 * configure, configure.in: Move itbl-cpu.h to mips specific configure.
964 * itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
965 * config/tc-mips.h: Define HAVE_ITBL_CPU.
966
967 Sun Feb 23 18:01:00 1997 Dawn Perchik <dawn@cygnus.com>
968
969 * itbl-ops.c: Don't define DEBUG.
970
971 Sun Feb 23 17:49:00 1997 Dawn Perchik <dawn@cygnus.com>
972
973 * Makefile.in: Update itbl-test.c to reflect its new location.
974
975 Sun Feb 23 15:50:00 1997 Dawn Perchik <dawn@cygnus.com>
976
977 * itbl-ops.c: Add test for itbl_have_entries.
978 * config/tc-mips.c: Remove test for itbl_have_entries.
979 * config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
980
981 Sun Feb 23 18:13:19 1997 Ian Lance Taylor <ian@cygnus.com>
982
983 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
984 itbl-ops.c. Add itbl-parse.c and itbl-lex.c.
985 (LEX, LEXFLAGS): Define.
986 * itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
987
988 Sat Feb 22 21:25:00 1997 Dawn Perchik <dawn@cygnus.com>
989
990 * itbl-parse.y: Fix indentation mistakes from indent program.
991 * itbl-lex.l: Fix indentation mistakes from indent program.
992 * itbl-ops.h: Add include for ansidecl.h.
993 Add PARAMS around function arguments.
994 Add declaration for itbl_have_entries.
995 * itbl-ops.c: Add PARAMS around function arguments.
996 * Makefile.in: Add itbl build rules.
997 Add dependancies for itbl files to mips target.
998 * as.c: Add itbl support.
999 Add new option "--insttbl" for dynamically extending instruction set.
1000 * as.h: Declare insttbl_file_name;
1001 the name of file defining extensions to the basic instruction set
1002 * configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
1003 itbl-ops.o to extra_objects for mips configuration.
1004 Add include file link from itbl-cpu.h to
1005 config/itbl-${target_cpu_type}.h.
1006 * config/tc-mips.c: Allow copz instructions.
1007 Add notes for future additions to the itbl support.
1008 Add debug macros.
1009 (macro): Call itbl_assemble to assemble itbl instructions.
1010 See if an unknown register is specified in an itbl entry.
1011
1012 Sat Feb 22 20:53:01 1997 Fred Fish <fnf@cygnus.com>
1013 * doc/internals.texi (CPU backend): Fix typo in md_section_align
1014 description.
1015 start-sanitize-tic80
1016 * config/tc-tic80.h (NEED_FX_R_TYPE): Define.
1017 * config/tc-tic80.c (find_opcode): Add code to support O_symbol
1018 operands.
1019 (build_insn): Grab a frag early so we can use the address in
1020 fixups. Take one's complement of BITNUM values before insertion
1021 in opcode. Add code to support O_symbol operands.
1022 (md_apply_fix): Replace unimplemented warning with implementation.
1023 (md_pcrel_from): Ditto.
1024 (tc_coff_fix2rtype): Ditto.
1025 end-sanitize-tic80
1026
1027 Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1028 start-sanitize-d30v
1029 * config/tc-d30v.c (parallel_ok): New function.
1030 * config/tc-d30v.h: Define TARGET_BYTES_BIG_ENDIAN.
1031 end-sanitize-d30v
1032 * config/tc-d10v.c (md_pcrel_from_section): Return 0 if
1033 relocation is in different section. Fixes PR11574.
1034
1035 Fri Feb 21 10:08:25 1997 Jim Wilson <wilson@cygnus.com>
1036
1037 * tc-mips.c (mips_ip): If configured for an embedded ELF system,
1038 don't set the section alignment to 2**4.
1039
1040 Fri Feb 21 11:55:03 1997 Ian Lance Taylor <ian@cygnus.com>
1041
1042 * config/tc-m68k.c (line_comment_chars): Add '*'.
1043
1044 * app.c (LEX_IS_TWOCHAR_COMMENT_2ND): Don't define.
1045 (do_scrub_begin): Don't set lex['*'].
1046 (do_scrub_chars): When handling LEX_IS_TWOCHAR_COMMENT_1ST, don't
1047 check for LEX_IS_TWOCHAR_COMMENT_2ND. Instead, just check for
1048 a literal '*'.
1049
1050 * configure.in: Set em=svr4 for m68k-*-sysv4*.
1051 * configure: Rebuild.
1052 * config/te-svr4.h: New file.
1053 * config/tc-m68k.c (m68k_comment_chars): Only include `#' if
1054 TE_SVR4 or TE_DELTA.
1055
1056 Thu Feb 20 22:24:39 1997 Jeffrey A Law (law@cygnus.com)
1057
1058 * config/tc-mn10200.c (md_convert_frag): Create a fixup for the
1059 short conditional branch around a long unconditional branch.
1060
1061 Thu Feb 20 13:56:00 1997 Ian Lance Taylor <ian@cygnus.com>
1062
1063 * config/obj-coff.c (obj_coff_ln [both versions]): Call
1064 new_logical_line.
1065
1066 * config/tc-arm.c (fix_new_arm): Use make_expr_symbol to handle a
1067 complex expression.
1068
1069 * symbols.c (resolve_symbol_value): If both left and right
1070 operands are undefined, warn about both of them.
1071
1072 Wed Feb 19 00:53:28 1997 Ian Lance Taylor <ian@cygnus.com>
1073
1074 Based on patches from Eric Youngdale <eric@andante.jic.com>:
1075 * config/obj-elf.c (elf_pseudo_table): Add "symver".
1076 (obj_elf_symver): New static function.
1077 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy the st_other
1078 field.
1079
1080 * write.c (relax_segment): Make type and printf format agree.
1081
1082 * read.c (get_line_sb): Don't end the line on a semicolon inside a
1083 string.
1084
1085 start-sanitize-d30v
1086 Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1087
1088 * config/tc-d30v.c, config/tc-d30v.h: New files.
1089
1090 * configure: Rebuilt.
1091
1092 * configure.in: Add case for d30v.
1093
1094 end-sanitize-d30v
1095 Sun Feb 16 17:47:29 1997 Fred Fish <fnf@toadfish.ninemoons.com>
1096
1097 * config/tc-alpha.h (md_operand): Define with a null expansion,
1098 like all the other targets.
1099 * doc/internals.texi (CPU backend): Add missing word in
1100 md_flush_pending_output description. Fix typo in md_convert_frag
1101 description.
1102 start-sanitize-tic80
1103 * config/tc-tic80: Minor comment additions/changes.
1104 end-sanitize-tic80
1105
1106 Fri Feb 14 18:09:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1107
1108 * config/tc-m68k.c (LOCAL_LABEL): Macro redefined if TE_DELTA.
1109 (tc_canonicalize_symbol_name): Macro defined if TE_DELTA.
1110 * config/obj-coff.c (obj_coff_def): Use
1111 tc_canonicalize_symbol_name if defined.
1112 (obj_coff_tag, obj_coff_val): Likewise.
1113 * expr.c (operand): Reject '~' as operator if is_name_beginner.
1114
1115 Fri Feb 14 17:24:48 1997 Ian Lance Taylor <ian@cygnus.com>
1116
1117 Based on notes from Peter Eriksson <peter@ifm.liu.se>. The target
1118 does not actually work, though:
1119 * configure.in (i386-sequent-bsd*): New target.
1120 * configure: Rebuild.
1121 * config/tc-dynix.h: New file.
1122 * config/tc-i386.h: Define TARGET_FORMAT if TE_DYNIX.
1123
1124 * read.c (do_align): Add max parameter. Change all callers.
1125 Remove useless static variables.
1126 (s_align): New static function. Do common portion of
1127 s_align_bytes and s_align_ptwo.
1128 (s_align_bytes, s_align_ptwo): Just call s_align.
1129 * frags.c (frag_align): Add max parameter. Change all callers.
1130 (frag_align_pattern): Likewise.
1131 * frags.h (frag_align, frag_align_pattern): Update declarations.
1132 * write.c (relax_segment): Limit alignment change to fr_subtype.
1133 Fix some types to be addressT.
1134 * config/obj-coff.c (size_section): Likewise.
1135 * config/obj-ieee.c (size_section): Likewise.
1136 * config/tc-d10v.h (md_do_align): Add max parameter.
1137 * config/tc-i386.h (md_do_align): Likewise.
1138 * config/tc-m88k.h (md_do_align): Likewise.
1139 * config/tc-m88k.c (m88k_do_align): Likewise.
1140 * config/tc-sh.h (md_do_align): Likewise.
1141 * config/tc-sh.c (sh_do_align): Likewise.
1142 * as.h: Improve comments on rs_align and rs_align_code.
1143 * doc/as.texinfo: Document new alignment arguments.
1144 * doc/internals.texi (Frags): Document use of fr_subtype field for
1145 rs_align and rs_align_code.
1146
1147 Fri Feb 14 15:56:06 1997 Gavin Koch <gavin@cygnus.com>
1148
1149 * config/tc-mips.c: Changed opcode parsing.
1150
1151 Thu Feb 13 20:02:16 1997 Fred Fish <fnf@cygnus.com>
1152
1153 * config/{tc-alpha.h, tc-arc.h, tc-d10v.h, tc-generic.h, tc-i960.h,
1154 tc-mn10200.h, tc-mn10300.h, tc-sh.h, tc-vax.h, tc-w65.h}:
1155 Add default definition of zero for TARGET_BYTES_BIG_ENDIAN.
1156 * config/{tc-arm.h, tc-hppa.h, tc-i386.h, tc-mips.h, tc-ns32k.h,
1157 tc-ppc.h, tc-sparc.h}: Move definition of TARGET_BYTES_BIG_ENDIAN
1158 to a location consistent with the rest of the target include files.
1159 * config/tc-i386.c: Remove misleading comment.
1160 * doc/internals.texi (CPU backend): Add description of function
1161 md_undefined_symbol.
1162 start-sanitize-tic80
1163 * config/tc-tic80.c: Add code to insert predefined symbols into the
1164 symbol table so they can be parsed by the standard expression parser.
1165 Remove custom code that use to parse them.
1166 * config/tc-tic80.h: Move definition of TARGET_BYTES_BIG_ENDIAN
1167 to a location consistent with the rest of the target include files.
1168 end-sanitize-tic80
1169
1170 Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
1171
1172 * as.h: GNU c provides unlink() function.
1173
1174 Unify section handling on openVMS/Alpha:
1175 * config/tc-alpha.c(s_alpha_link): Remove.
1176 (s_alpha_section): New function.
1177 Remove case-hacking of symbols
1178 Add .code_address pseudo-op.
1179 (BFD_RELOC_ALPHA_CODEADDR): New relocation.
1180 (s_alpha_code_address): New function.
1181 (alpha_ctors_section, alpha_dtors_section): New sections for C++
1182 static constructors/destructors.
1183 Add debug code for crash debugs, to be removed when traceback code
1184 is added to object code.
1185 (s_alpha_name): New function for .name pseudo-op.
1186 (alpha_print_token): New function to print token expressions with
1187 alpha specific extensions.
1188
1189 * makefile.vms: Allow compilation with current gcc snapshot.
1190
1191 Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
1192
1193 * doc/Makefile.in (TEXI2DVI): Set to just name of program.
1194 (DVIPS): Set to dvips.
1195 (ps, as.ps, gasp.ps): New targets.
1196 (internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
1197 and MAKEINFO env variables.
1198 (internals.ps): Use DVIPS macro.
1199 (clean): Remove core and backup files.
1200 (distclean): Remove temporary files from building internals.
1201 (clean-dvi): Ditto.
1202 * doc/internals.texi (Frags): Fix typo.
1203 (GAS processing): Ditto.
1204 (CPU backend): Ditto.
1205 * ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
1206 * mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
1207 * read.c: Remove ugly hack that dealt with config files not
1208 correctly defining TARGET_BYTES_BIG_ENDIAN.
1209 (target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
1210 * config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1211 * config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
1212 * config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1213 * config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
1214 * config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1215 * config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
1216 with TARGET_BYTES_BIG_ENDIAN defined to 0.
1217 * config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
1218 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
1219 whether it is defined or not.
1220 * config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
1221 * config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
1222 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
1223 whether it is defined or not.
1224 start-sanitize-tic80
1225 * config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
1226 (TARGET_BYTES_BIG_ENDIAN): Define to 0.
1227 end-sanitize-tic80
1228
1229 Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
1230
1231 * write.c (write_relocs): Correct text in as_fatal error message,
1232 bfd_perform_relocation -> bfd_install_relocation.
1233
1234 Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1235
1236 * config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
1237 * read.c (LEX_TILDE): Define if not defined.
1238 (lex_type): Use LEX_TILDE.
1239 * expr.c (get_symbol_end): Check first char with is_name_beginner,
1240 not is_part_of_name.
1241
1242 Thu Feb 13 11:40:58 1997 Ian Lance Taylor <ian@cygnus.com>
1243
1244 * config/tc-sparc.c (md_show_usage): Add missing backslash at end
1245 of continued line.
1246
1247 * config/tc-mips.c (mips16_extended_frag): Correct base address
1248 for an extended PC relative instruction.
1249 (md_convert_frag): Likewise.
1250
1251 * config/tc-mips.c (prev_nop_frag): New static variable.
1252 (prev_nop_frag_holds): New static variable.
1253 (prev_nop_frag_required): New static variable.
1254 (prev_nop_frag_since): New static variable.
1255 (append_insn): If we aren't reordering, and prev_nop_frag is not
1256 NULL, and we don't need any nops, then decrease the size of
1257 prev_nop_frag. Don't insert nops because of instructions in
1258 noreorder sections. Remember whether the previous instructions
1259 where in noreorder sections even when not reordering.
1260 (mips_no_prev_insn): Add preserver parameter. Change all
1261 callers. Refer prev_nop_frag variables when appropriate.
1262 (mips_emit_delays): Set up prev_nop_frag.
1263 (s_mipsset): Clear prev_nop_frag if reordering.
1264
1265 Wed Feb 12 14:36:29 1997 Ian Lance Taylor <ian@cygnus.com>
1266
1267 * config/tc-mips.c (append_insn): Remove useless code which
1268 handled swapping a mips16 jump with a mips16 instruction with a
1269 reloc.
1270
1271 * config/tc-mips.c (md_parse_option): When debugging, set
1272 mips_optimize to 1, not 0.
1273
1274 * config/tc-mips.c (mips16_ip): Handle an extend operand.
1275
1276 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
1277 like the expression was based on `.', adjust the value of the
1278 symbol.
1279
1280 * config/tc-mips.c (append_insn): Warn about an attempt to put an
1281 extended instruction in a delay slot when not reordering.
1282 (md_convert_frag): Warn if an extended instruction appears in a
1283 delay slot.
1284
1285 * config/tc-mips.c (mips_pseudo_table): Add "insn".
1286 (s_insn): New static function.
1287 * doc/c-mips.texi: Document .insn.
1288
1289 * config/tc-mips.c (md_begin): Add the general registers to the
1290 symbol table.
1291 (mips16_ip): First parse the expression, and then see whether it
1292 came up with a register, rather than trying to first see whether
1293 we are looking at a register.
1294
1295 start-sanitize-tic80
1296 Tue Feb 11 15:13:39 1997 Fred Fish <fnf@cygnus.com>
1297
1298 * config/tc-tic80.c: Numerous changes and additions to flesh
1299 out functions that were previously just stubs, and fix some
1300 problems found using the new TIc80 testsuite cases.
1301
1302 end-sanitize-tic80
1303 Tue Feb 11 15:52:22 1997 Ian Lance Taylor <ian@cygnus.com>
1304
1305 * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
1306 (md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.
1307
1308 * config/tc-mips.c (append_insn): Output jump instruction as a
1309 pair of 2 byte instructions, rather than as a single 4 byte
1310 instruction.
1311
1312 start-sanitize-r5900
1313 * config/tc-mips.c (md_begin): Correct test of mips_5900.
1314 (mips_ip): Don't check INSN_ISA for a macro.
1315
1316 end-sanitize-r5900
1317 start-sanitize-r5900
1318 Fri Feb 7 11:11:06 1997 Gavin Koch <gavin@cygnus.com>
1319
1320 * config/tc-mips.c: added r5900.
1321
1322 end-sanitize-r5900
1323 Mon Feb 10 22:06:00 1997 Dawn Perchik (dawn@cygnus.com)
1324
1325 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
1326 config/itbl-mips.h: Add copyright message and fix indentation.
1327
1328 Mon Feb 10 18:09:00 1997 Dawn Perchik (dawn@cygnus.com)
1329
1330 * itbl-ops.c: New file. Add support for dynamically read
1331 instruction registers, opcodes and formats. Build internal table
1332 for new instructions and provide callbacks for assembler and
1333 disassembler.
1334 * itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
1335 spec table.
1336 * itbl-ops.h: New file. Header file for itbl support.
1337 * config/itbl-mips.h: New file. Mips specific definitions for
1338 itbl support.
1339
1340 Fri Feb 7 09:52:34 1997 Jeffrey A Law (law@cygnus.com)
1341
1342 * config/tc-mn10200.c (md_assemble): If a constant operand won't
1343 fit into the constant field of a relaxable operand, then it does
1344 not match.
1345
1346 Thu Feb 6 20:08:12 1997 Jeffrey A Law (law@cygnus.com)
1347
1348 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
1349 a jsr target in a different section just like a jsr to
1350 an undefined target.
1351
1352 Thu Feb 6 16:52:57 1997 Ian Lance Taylor <ian@cygnus.com>
1353
1354 * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
1355 against any mips16 symbols, not just externally visible ones.
1356 (md_apply_fix): Corresponding change.
1357
1358 Wed Feb 5 11:11:06 1997 Ian Lance Taylor <ian@cygnus.com>
1359
1360 * config/tc-mips.c (mips16_ip): Accept floating point registers in
1361 the operand of the exit instruction.
1362
1363 Tue Feb 4 14:12:39 1997 Ian Lance Taylor <ian@cygnus.com>
1364
1365 * symbols.c (resolve_symbol_value): If we leave an equated symbol
1366 as O_symbol, copy over the segment.
1367
1368 Mon Feb 3 12:35:54 1997 Ian Lance Taylor <ian@cygnus.com>
1369
1370 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
1371 fixup to be against the section symbol, adjust the value
1372 accordingly.
1373
1374 * symbols.c (resolve_symbol_value): Don't change X_add_number for
1375 an equated symbol.
1376 * write.c (write_relocs): Avoid looping on equated symbols.
1377 Adjust fx_offset by X_add_number for each symbol.
1378 * config/obj-coff.c (do_relocs_for): Avoid looping on equated
1379 symbols.
1380 (fixup_segment): Add a loop to track down equated symbols and
1381 adjust fx_offset appropriately.
1382
1383 Fri Jan 31 15:21:02 1997 Jeffrey A Law (law@cygnus.com)
1384
1385 * config/tc-mn10200.c (md_relax_table): Add entries to allow
1386 jmp -> bra relaxing.
1387 (md_convert_frag): Handle jmp->bra relaxing.
1388 (md_assemble): Handle jmp->bra relaxing.
1389 (md_estimate_size_before_relax): Likewise.
1390
1391 Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1392
1393 * config/tc-i386.c (i386_align_code): Add comments explaining the
1394 nop instructions.
1395
1396 Fri Jan 31 10:46:14 1997 Ian Lance Taylor <ian@cygnus.com>
1397
1398 * config/tc-sparc.c (enforce_aligned_data): New static variable.
1399 (sparc_cons_align): Don't do anything unless enforce_aligned_data
1400 is set.
1401 (md_longopts): Add "enforce-aligned-data".
1402 (md_show_usage): Mention --enforce-aligned-data.
1403 * doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
1404 enforce-aligned-data.
1405
1406 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
1407 "word", and "short".
1408 (ppc_xcoff_cons): New static function.
1409
1410 * write.c (relax_segment): Give an error if a .space symbol is
1411 common or undefined.
1412
1413 * read.c (read_a_source_file): Don't handle mri_pending_align if
1414 the handler is s_globl or s_ignore.
1415
1416 Thu Jan 30 11:46:59 1997 Fred Fish <fnf@cygnus.com>
1417
1418 * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
1419 start-sanitize-tic80
1420 * config/tc-tic80.c: Many additions to previous placeholder file.
1421 * config/tc-tic80.h: Ditto.
1422 end-sanitize-tic80
1423
1424 Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1425
1426 * config/tc-i386.c (i386_align_code): Improve the nop patterns.
1427
1428 Thu Jan 30 12:08:40 1997 Ian Lance Taylor <ian@cygnus.com>
1429
1430 * config/tc-mips.c (mips_fix_adjustable): New function.
1431 * config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
1432 (mips_fix_adjustable): Declare.
1433
1434 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
1435 * read.c (read_a_source_file): After doing an mri_pending_align,
1436 adjust the line_label if there is one.
1437 (s_space): Set mri_pending_align if an odd number of bytes were
1438 output.
1439
1440 Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1441
1442 * config/tc-d10v.h (md_do_align): Add this hook to call
1443 d10v_cleanup() when a ".align" is detected. Fixes PR11487.
1444
1445 * config/tc-d10v.c (find_opcode): Correctly calculate
1446 branch displacement when .aligns are present.
1447
1448 Wed Jan 29 09:42:11 1997 Jeffrey A Law (law@cygnus.com)
1449
1450 * config/tc-mn10200.c (md_relax_table): Define.
1451 (md_convert_frag): Implement.
1452 (md_assemble): Handle relaxable operands/instructions correctly.
1453 (md_estimate_size_before_relax): Implement.
1454 * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
1455
1456 Tue Jan 28 15:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
1457
1458 * config/tc-mips.c (append_insn): Give an error for jumps to a
1459 misaligned address.
1460 (md_apply_fix): Make a branch to an odd address an error rather
1461 than a warning.
1462
1463 * config/tc-mips.c (md_convert_frag): If the user explicitly
1464 requested an extended opcode, pass warn as true to mips16_immed.
1465
1466 * config/tc-mips.c (mips16_ip): Handle a missing expression like
1467 an explicit 0, so that explicitly extended instructions work
1468 correctly.
1469
1470 Mon Jan 27 17:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
1471
1472 * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
1473 symbol for a common symbol.
1474
1475 Wed Jan 22 10:39:39 1997 Doug Evans <dje@canuck.cygnus.com>
1476
1477 Patch presumed to have been checked in awhile ago but wasn't.
1478 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
1479 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
1480 (relax_segment, case rs_org): Move code inside braces. Move locals
1481 target,after inside too.
1482 (relax_segment, case rs_machine_dependent): Guts moved to ...
1483 (relax_frag): New function.
1484 Call md_prepare_relax_scan if defined.
1485
1486 Mon Jan 20 10:56:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1487
1488 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
1489 'p' operand specifier.
1490
1491 Mon Jan 20 10:39:36 1997 J.T. Conklin <jtc@cygnus.com>
1492
1493 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
1494 m68k family cpus which support long branch addressing modes.
1495 (m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
1496 md_create_long_jump): Use it.
1497
1498 Mon Jan 20 12:42:06 1997 Ian Lance Taylor <ian@cygnus.com>
1499
1500 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
1501 the .reginfo or .MIPS.options section if configured for an
1502 embedded target.
1503
1504 * config/tc-mips.c (md_begin): Don't set interlocks for
1505 mips_4650.
1506
1507 Wed Jan 15 13:51:50 1997 Ian Lance Taylor <ian@cygnus.com>
1508
1509 * read.c (read_a_source_file): Make sure the symbol ends with
1510 whitespace before checking whether the next character is '='.
1511
1512 Tue Jan 14 15:07:27 1997 Robert Lipe <robertl@dgii.com>
1513
1514 * config/tc-i386.c (sco_id): Moved from here...
1515 * config/obj-elf.c (sco_id): ...to here. Adding the identifier
1516 really is an SCO ELF specific thing, not just a SCO x86 specific
1517 thing.
1518
1519 start-sanitize-tic80
1520 Mon Jan 13 22:43:01 1997 Michael Meissner <meissner@tiktok.cygnus.com>
1521
1522 * configure.in (tic80-*-*): Don't require 'coff'.
1523 * configure: Regenerate.
1524
1525 end-sanitize-tic80
1526 Thu Jan 9 09:08:43 1997 Ian Lance Taylor <ian@cygnus.com>
1527
1528 * read.c (emit_expr): Check for overflow of a negative value
1529 correctly.
1530 * write.c (fixup_segment): Likewise.
1531 * config/obj-coff.c (fixup_segment): Likewise.
1532
1533 * config/tc-m68k.c (struct label_line): Define.
1534 (labels, current_label): New static variables.
1535 (md_assemble): Mark current_label as text, and clear it.
1536 (m68k_frob_label): New function.
1537 (m68k_flush_pending_output): New function.
1538 (m68k_frob_symbol): New function.
1539 * config/tc-m68k.h (tc_frob_label): Define.
1540 (md_flush_pending_output): Define.
1541 (tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
1542 (tc_frob_coff_symbol): Likewise.
1543
1544 * read.c (read_a_source_file): When defining a macro in MRI mode,
1545 don't add the symbol to the symbol table.
1546
1547 Tue Jan 7 11:21:42 1997 Jeffrey A Law (law@cygnus.com)
1548
1549 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
1550 here since fixup_segment doesn't (linkrelax is set).
1551 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
1552
1553 Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
1554
1555 * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
1556 relocs.
1557
1558 Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
1559
1560 * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
1561 to avoid warnings with the native HP compiler.
1562 (fix_new_hppa): Similarly for the r_type argument.
1563 (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
1564 in an #if OBJ_ELF to keep gcc -Wall quiet.
1565 (md_apply_fix): Always initialize "result".
1566
1567 * config/tc-mn10200.c (md_assemble): Generate relocations.
1568
1569 Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1570
1571 * config/tc-m68k.c (s_even): Adjust the alignment of the current
1572 section.
1573
1574 Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
1575
1576 * config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
1577 pass on the new file hook.
1578
1579 * config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
1580 !alpha_force_relocation, as local LITERALs can be adjusted to be
1581 relative to the section.
1582
1583 Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
1584
1585 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
1586 defined, call it.
1587 * config/tc-m68k.h (tc_frob_symbol): Check whether text label is
1588 aligned to odd boundary.
1589 (tc_frob_coff_symbol): Define.
1590
1591 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
1592
1593 * macro.c (macro_expand_body): In MRI mode, just copy a single &.
1594
1595 * config/tc-m68k.c (m68k_ip): Call frag_grow before adding a
1596 PCINDEX frag. From Ronald F. Guilmette <rfg@monkeys.com>.
1597
1598 * config/tc-m68k.c (m68k_ip): Accept 'B' as a size for an
1599 immediate value.
1600 (md_assemble): If the size is 'B', set fx_signed.
1601 (md_apply_fix_2): Use fx_signed when checking for overflow.
1602
1603 * write.h (struct fix): Add fx_signed field.
1604 * write.c (fix_new_internal): Initialize fx_no_overflow and
1605 fx_signed fields.
1606 (fixup_segment): Use fx_signed when checking for overflow.
1607 * config/obj-coff.c (fixup_segment): Check fx_no_overflow and
1608 fx_signed when checking for overflow.
1609
1610 Thu Jan 2 13:37:29 1997 Ian Lance Taylor <ian@cygnus.com>
1611
1612 * NOTES, NOTES.config: Removed. These are rarely, if ever,
1613 updated, and all the useful information is in doc/internals.texi.
1614
1615 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1616 * read.c (read_a_source_file): Check for conditional operators
1617 before doing an MRI pending alignment.
1618 * config/tc-m68k.h (m68k_conditional_pseudoop): Declare.
1619 (tc_conditional_pseudop): Define.
1620 * config/tc-m68k.c (m68k_conditional_pseudop): New function.
1621 * doc/internals.texi (CPU backend): Describe
1622 tc_conditional_pseudoop.
1623
1624 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1625 * config/tc-m68k.c (m68k_rel32_from_cmdline): New static
1626 variable.
1627 (md_begin): Check m68k_rel32_from_cmdline before setting
1628 m68k_rel32.
1629 (m68k_mri_mode_change): Likewise.
1630 (md_longopts): Add --disp-size-default-16 and
1631 --disp-size-default-32.
1632 (md_parse_option): Handle new options.
1633 (md_show_usage): Mention new options.
1634 * doc/c-m68k.texi (M68K-Opts): Document new options.
1635
1636 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1637 * config/tc-m68k.c (m68k_index_width_default): New static
1638 variable.
1639 (m68k_ip): Use m68k_index_width_default to set the size of a base
1640 register whose size was not given.
1641 (md_longopts): Add --base-size-default-16 and
1642 --base-size-default-32.
1643 (md_parse_option): Handle new options.
1644 (md_show_usage): Mention new options.
1645 * doc/c-m68k.texi (M68K-Opts): Document new options.
1646
1647 * doc/c-mips.texi: Mention ISA level 4, and the -mips16 option.
1648
1649 * configure.in: Recognize mips-*-linux* target.
1650 * configure: Rebuild.
1651
1652 * config/tc-mips.c (load_register): Rewrite 64 bit handling to
1653 work if valueT is only 32 bits.
1654
1655 * config/tc-mips.c: Throughout, check target_big_endian rather
1656 than byte_order.
1657 (byte_order): Remove.
1658 (mips_init_after_args): Remove.
1659 * config/tc-mips.h (LITTLE_ENDIAN, BIG_ENDIAN): Don't define.
1660 (mips_init_after_args): Don't declare.
1661 (tc_init_after_args): Don't define.
1662
1663 * config/tc-mips.h (tc_frob_after_relocs): Define if
1664 OBJ_MAYBE_ELF.
1665 (mips_elf_final_processing): Likewise.
1666 (ELF_TC_SPECIAL_SECTIONS): Likewise.
1667
1668 start-sanitize-v850
1669 Tue Dec 31 15:12:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1670
1671 * config/tc-v850.c (md_assemble): If this is sst.{h,w} or
1672 sld.{h,w} and the operand is relocatable, adjust the adend by
1673 shifting it right one bit.
1674
1675 end-sanitize-v850
1676 Tue Dec 31 12:56:41 1996 Ian Lance Taylor <ian@cygnus.com>
1677
1678 * read.c (read_a_source_file): Check mri_pending_align after
1679 checking for a macro. From Ronald F. Guilmette
1680 <rfg@monkeys.com>.
1681
1682 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
1683
1684 * config/tc-sparc.c (md_apply_fix3): Rename from md_apply_fix, and
1685 add segment argument. If OBJ_ELF, treat a relocation against a
1686 symbol in a linkonce section like a relocation against an external
1687 symbol.
1688 * config/tc-sparc.h (MD_APPLY_FIX3): Define.
1689
1690 Mon Dec 30 11:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
1691
1692 * config/tc-mips.c (mips16_macro): Add case for M_ABS.
1693
1694 Fri Dec 27 22:51:51 1996 Fred Fish <fnf@cygnus.com>
1695
1696 * NOTES.config (Implementation): as.h #define's "GAS" not "gas",
1697 includes config.h instead of host.h, tc.h instead of tp.h, and
1698 targ-env.h instead of target-environment.h.
1699 Also, obj-format.h includes targ-cpu.h instead of
1700 target-processor.h.
1701 start-sanitize-tic80
1702 * configure.in (case ${generic_target}): Add tic80-*-coff entry.
1703 * configure: Rebuild with autoconf.
1704 * config/obj-coff.h (coff/tic80.h): Include if TC_TIC80 defined.
1705 (TARGET_FORMAT): Define to "coff-tic80".
1706 * config/tc-tic80.c: New file for TIc80 support.
1707 * config/tc-tic80.h: New file for TIc80 support.
1708 end-sanitize-tic80
1709
1710 Fri Dec 27 11:42:29 1996 Ian Lance Taylor <ian@cygnus.com>
1711
1712 * doc/as.texinfo (M): Mention explicitly that -M changes macro
1713 handling.
1714
1715 Thu Dec 19 12:06:08 1996 Ian Lance Taylor <ian@cygnus.com>
1716
1717 * write.c (adjust_reloc_syms): If the fixup symbol has been
1718 equated to an undefined symbol, convert the fixup to being against
1719 the target symbol. Remove obsolete code handling a special case
1720 for i386 PIC.
1721
1722 Wed Dec 18 22:54:39 1996 Stan Shebs <shebs@andros.cygnus.com>
1723
1724 * mpw-make.sed: Use NewFolderRecursive for installation.
1725
1726 Wed Dec 18 16:00:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1727
1728 * config/tc-d10v.c (do_assemble): Correct previous bug fix.
1729
1730 Wed Dec 18 15:27:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1731
1732 * config/tc-d10v.c (md_assemble): Fix bug which caused
1733 second instruction in a line to be case sensitize. PR11312
1734
1735 Wed Dec 18 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
1736
1737 * config/tc-mn10200.c (mn10200_insert_operand): Don't
1738 range check operands with MN10200_OPERAND_NOCHECK set.
1739 (check_operand): Likewise.
1740
1741 Tue Dec 17 10:59:32 1996 Ian Lance Taylor <ian@cygnus.com>
1742
1743 * config/tc-mips.c: Undo part of last Friday's alignment changes.
1744 (md_begin): Always align the text section to a four byte
1745 boundary.
1746 (append_insn): Remove call to record_align.
1747
1748 * config/tc-mips.c (insn_label): Remove.
1749 (struct insn_label_list): Define.
1750 (insn_labels, free_insn_labels): New static variables.
1751 (mips_clear_insn_labels): New static function.
1752 (append_insn): Mark all mips16 text labels, and make them odd.
1753 Handle all labels after emitting a nop, not just one. Call
1754 mips_clear_insn_labels rather than just clearing insn_label.
1755 (mips_emit_delays): Add insns parameter, and use it to decide
1756 whether to mark mips16 labels. Handle all labels, not just one.
1757 Force mips16 labels to be odd. Change all callers.
1758 (mips16_immed): Don't check for an odd branch target.
1759 (md_apply_fix): Don't check mips16 mode for a branch reloc.
1760 (mips16_extended_frag): Ignore the low bit in a branch target.
1761 (md_convert_frag): Likewise.
1762 (mips_no_prev_insn): Call mips_clear_insn_labels rather than just
1763 clearing insn_label.
1764 (mips_align, mips_flush_pending_output, s_cons): Likewise.
1765 (s_float_cons, s_gpword): Likewise.
1766 (s_align): Use insn_labels rather than insn_label.
1767 (s_cons, s_float_cons, s_gpword): Likewise.
1768 (mips_frob_file_after_relocs): New function.
1769 (mips_define_label): Rewrite to add to insn_labels list.
1770 * config/tc-mips.h (tc_frob_file_after_relocs): Define.
1771 * ecoff.c (ecoff_build_symbols): If the size of a function comes
1772 out odd, increment it.
1773
1774 * config/tc-mips.c (append_insn): Only update prev_insn when not
1775 reordering if place is NULL.
1776
1777 * config/tc-mips.c (mips16_ip): Check for a missing expression
1778 when using the register indirect addressing mode.
1779
1780 Mon Dec 16 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
1781
1782 * config/tc-mn10200.c (mn10200_insert_operand): Don't
1783 check 24bit operands for overflow.
1784 (check_operand): Likewise.
1785
1786 Mon Dec 16 11:50:40 1996 Ian Lance Taylor <ian@cygnus.com>
1787
1788 * doc/as.texinfo (Section): Document how to use the .section
1789 pseudo-op for COFF and ELF.
1790
1791 Sun Dec 15 15:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
1792
1793 * write.c (adjust_reloc_syms): Fix linkonce check for ELF.
1794
1795 Sat Dec 14 22:37:27 1996 Ian Lance Taylor <ian@cygnus.com>
1796
1797 * config/tc-mips.c (prev_insn_reloc_type): New static variable.
1798 (RELAX_MIPS16_ENCODE): Add dslot and jal_dslot arguments, and
1799 store them. Adjust other RELAX_MIPS16 macros.
1800 (RELAX_MIPS16_DSLOT): Define.
1801 (RELAX_MIPS16_JAL_DSLOT): Define.
1802 (append_insn): Pass new arguments to RELAX_MIPS16_ENCODE. Correct
1803 handling of whether previous instruction has a fixup. Set
1804 prev_insn_reloc_type.
1805 (mips_no_prev_insn): Clear prev_insn_reloc_type.
1806 (mips16_extended_frag): Use the right base address for a PC
1807 relative add or load.
1808 (md_convert_frag): Likewise. If a PC relative add or load is
1809 used, record the alignment for the section.
1810
1811 Fri Dec 13 13:00:33 1996 Ian Lance Taylor <ian@cygnus.com>
1812
1813 * write.c (adjust_reloc_syms): Don't reduce a reloc against a
1814 linkonce section into a reloc against the section symbol.
1815
1816 * config/tc-mips.c (mips16_macro): Remove nop instructions after
1817 branch instructions.
1818
1819 * config/tc-mips.c (md_begin): If configured for an embedded ELF
1820 system, don't set the section alignment to 2**4.
1821 (s_change_sec): Likewise.
1822 (append_insn): Call record_alignment for the section.
1823 (md_section_align): Don't align the section size for an embedded
1824 ELF system.
1825
1826 Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com>
1827
1828 * write.c (adjust_reloc_syms): Make sure that symbols are
1829 resolved; expression symbols may have been skipped.
1830 * config/obj-coff.c (fixup_segment): Likewise.
1831
1832 Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1833
1834 * config/tc-ppc.c (ppc_elf_suffix): Move @plt to
1835 BFD_RELOC_24_PLT_PCREL relocation.
1836 (md_apply_fix3): Support BFD_RELOC_24_PLT_PCREL.
1837
1838 Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1839
1840 * config/tc-d10v.c (write_2_short): Remove code that called
1841 parallel_ok() when the programmer specified parallel instructions.
1842
1843 Tue Dec 10 12:23:19 1996 Jeffrey A Law (law@cygnus.com)
1844
1845 * config/tc-mn10300.c (md_assemble): Update to handle endianness
1846 issues correctly.
1847
1848 * config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
1849 * config/tc-mn10300.c (md_assemble): Likewise.
1850
1851 Tue Dec 10 11:37:14 1996 Ian Lance Taylor <ian@cygnus.com>
1852
1853 * config/tc-mips.c (append_insn): Make sure there is enough room
1854 in a frag after a mips16 instruction to switch it with a jump
1855 instruction.
1856
1857 * config/tc-mips.c (mips16_extended_frag): Give an error for an
1858 attempt to use a non absolute symbol in an extending frag.
1859
1860 Mon Dec 9 16:48:20 1996 Jeffrey A Law (law@cygnus.com)
1861
1862 * config/tc-mn10200.c: Flesh out assembler support for MN10200.
1863 * config/tc-mn10200.h: Likewise.
1864
1865 Mon Dec 9 17:09:42 1996 Ian Lance Taylor <ian@cygnus.com>
1866
1867 * app.c (do_scrub_chars): At the end of a C comment, pass space to
1868 UNGET rather than PUT. Set old_state before setting state to -2.
1869
1870 * config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
1871 when extending because the value is exactly maxtiny + 1.
1872
1873 * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
1874 arguments, and store them. Adjust other RELAX_MIPS16 macros.
1875 (RELAX_MIPS16_USER_SMALL): Define.
1876 (RELAX_MIPS16_USER_EXT): Define.
1877 (mips16_small, mips16_ext): New static variables.
1878 (append_insn): Pass mips16_small and mips16_ext to
1879 RELAX_MIPS16_ENCODE.
1880 (mips16_ip): Set mips16_small and mips16_ext.
1881 (mips16_immed): Don't check mips16_autoextend.
1882 (mips16_extended_frag): Check USER_SMALL and USER_EXT.
1883
1884 * write.c (write_relocs): Print an error for an out of range
1885 fixup, rather than calling abort.
1886
1887 * as.c (main): Unlink the output file if there are errors while
1888 generating the fixups.
1889
1890 Fri Dec 6 18:48:13 1996 Ian Lance Taylor <ian@cygnus.com>
1891
1892 * config/tc-mips.c (mips16_extended_frag): Don't call
1893 S_GET_VALUE.
1894 (md_convert_frag): Call resolve_symbol_value before calling
1895 S_GET_VALUE, and don't add in the frag address.
1896
1897 * config/tc-mips.c (mips16_immed): Add file and line parameters,
1898 and use them when reporting errors. Change all callers.
1899
1900 Fri Dec 6 15:36:32 1996 Jeffrey A Law (law@cygnus.com)
1901
1902 * config/tc-mn10300.c: Fix various gcc -Wall warnings.
1903 Remove '$' prefixing for registers.
1904
1905 Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
1906
1907 * config/tc-d10v.c (md_assemble): Check to see if prev_seg
1908 is initialized before using it.
1909 (d10v_cleanup): No longer uses its argument, so make it void.
1910
1911 * config/tc-d10v.h (d10v_cleanup): Change prototype.
1912
1913 Thu Dec 5 11:03:31 1996 Ian Lance Taylor <ian@cygnus.com>
1914
1915 * write.c (fixup_segment): Don't discard the symbol for a PC
1916 relative fixup to an absolute symbol.
1917
1918 Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1919
1920 * config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
1921 with multiple sections.
1922
1923 Wed Dec 4 13:00:07 1996 Ian Lance Taylor <ian@cygnus.com>
1924
1925 * config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
1926 no-mips-16 to no-mips16.
1927 (s_mipsset): Accept .set mips16 and .set nomips16.
1928
1929 Wed Dec 4 10:35:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1930
1931 * config/tc-ppc.c (ppc_elf_suffix): Take expressionS pointer
1932 argument, and check for +/- constant following the suffix, folding
1933 it into the expression.
1934 (ppc_elf_cons): Change ppc_elf_suffix calls.
1935 (md_assemble): Ditto.
1936 (shlib): Replace boolean mrelocatable with enumeration shlib.
1937 (md_parse_option): Discriminate between PIC style shared libraries
1938 and -mrelocatable.
1939 (ppc_elf_validate_fix): Don't report warnings for PIC style shared
1940 libraries.
1941
1942 Tue Dec 3 23:18:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1943
1944 * config/tc-ppc.h ({tc,ppc}_comment_chars): Define, so that we can
1945 change the comment characters.
1946
1947 * config/tc-ppc.c (comment_chars): Delete in favor of
1948 tc_comment_chars.
1949 (ppc_{eabi,solaris}_comment_chars): Eabi and Solaris versions of
1950 comment chars.
1951 (ppc_comment_chars): Select appropriate comment chars by default.
1952 (msolaris): New flag for -m{,no-}solaris.
1953 (md_parse_option): Recognize -K pic. Add support for
1954 -m{,no-}solaris.
1955 (md_show_usage): Update.
1956 (md_begin): Do not set ELF flags if Solaris.
1957 (ppc_elf_suffix): @local sets R_PPC_LOCAL24PC relocation.
1958 (md_apply_fix3): Add support for R_PPC_LOCAL24PC.
1959
1960 Mon Dec 2 13:48:57 1996 Ian Lance Taylor <ian@cygnus.com>
1961
1962 * as.c (main): Correct handling of flag_always_generate_output.
1963
1964 Sun Dec 1 21:46:05 1996 Jeffrey A Law (law@cygnus.com)
1965
1966 * config/tc-mn10300.c (tc_gen_reloc): Get the addend from
1967 fx_offset, not fx_addnumber.
1968
1969 * config/tc-mn10300.h (tc_fix_adjustable): Don't do any
1970 reloc adjustments.
1971
1972 Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
1973
1974 * config/tc-i386.c: Correct misspelling: balenced to balanced.
1975
1976 Wed Nov 27 13:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
1977
1978 * config/tc-mips.c (md_section_align): Check for an alignment of
1979 4, not an alignment of 16. Corrects August 7 patch.
1980
1981 Tue Nov 26 10:33:16 1996 Ian Lance Taylor <ian@cygnus.com>
1982
1983 * configure, conf.in: Rebuild with autoconf 2.12.
1984
1985 * config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
1986 alignment is specified.
1987
1988 Add support for mips16 (16 bit MIPS implementation):
1989 * config/tc-mips.c: Extensive additions for mips16 support, not
1990 listed here.
1991 (RELAX_OLD, RELAX_NEW): Use only 7 bits each.
1992 (insn_uses_reg): Change last parameter to an enum.
1993 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
1994 (md_relax_frag): Define as mips_relax_frag.
1995 (mips_relax_frag): Declare.
1996 (struct mips_cl_insn): Add use_extend and extend fields.
1997 (tc_fix_adjustable): Define.
1998 * config/obj-elf.h (S_GET_OTHER): Define.
1999 (S_SET_OTHER): Define.
2000
2001 Mon Nov 25 18:02:29 1996 J.T. Conklin <jtc@beauty.cygnus.com>
2002
2003 * config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
2004 o and p operand specifiers.
2005
2006 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
2007
2008 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
2009 (relax_segment, case rs_org): Move code inside braces. Move locals
2010 target,after inside too.
2011 (relax_segment, case rs_machine_dependent): Guts moved to ...
2012 (relax_frag): New function.
2013 Call md_prepare_relax_scan if defined.
2014 * config/tc-m68k.h (md_prepare_relax_scan): Renamed from
2015 M68K_AIM_KLUDGE.
2016
2017 Mon Nov 25 08:49:36 1996 Jeffrey A Law (law@cygnus.com)
2018
2019 * config/tc-mn10300.c (address_registers): Use '$' as register
2020 prefix instead of '%'.
2021 (data_registers, other_registers, md_assemble): Likewise.
2022
2023 * config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
2024 (data_registers, other_registers, md_assemble): Likewise.
2025
2026 * config/tc-mn10300.c (md_assemble): Correctly determine the
2027 correct location and type for each relocation.
2028 (md_pcrel_from): Simplify.
2029
2030 Fri Nov 22 15:42:26 1996 Ian Lance Taylor <ian@cygnus.com>
2031
2032 * config/tc-sh.c (md_convert_frag): Improve warning when branch is
2033 converted into branch around branch.
2034
2035 Thu Nov 21 11:56:11 1996 Jeffrey A Law (law@cygnus.com)
2036
2037 * config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
2038 (tc_fix_adjustable): Don't adjust relocs against weak symbols or
2039 pc-relative relocs.
2040 * config/tc-mn10300.c (md_begin): Set linkrelax.
2041 (md_assemble): Create fixups as needed.
2042 (md_apply_fix3): Gut. It shouldn't ever get called anymore.
2043
2044 Tue Nov 19 17:48:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2045
2046 * config/tc-d10v.c (parallel_ok): When automatically converting
2047 serial ops to parallel, do not consider a branch as the first
2048 instruction.
2049
2050 Tue Nov 19 13:35:22 1996 Jeffrey A Law (law@cygnus.com)
2051
2052 * config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
2053
2054 Mon Nov 18 15:26:55 1996 Jeffrey A Law (law@cygnus.com)
2055
2056 * config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
2057 via PARAMS.
2058 (check_operand): Likewise.
2059
2060 Mon Nov 18 15:22:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2061
2062 * config/tc-d10v.c (parallel_ok): Branch and link instructions
2063 modify r13.
2064 (write_2_short): Call parallel_ok to check whether two short
2065 instructions the user requested execute in parallel, can be
2066 executed that way.
2067
2068 Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2069
2070 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't
2071 allow a branch and link in parallel with an exe instruction.
2072
2073 Fri Nov 8 13:55:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2074
2075 * doc/c-d10v.texi: Add info on @word modifier.
2076
2077 Wed Nov 6 13:46:07 1996 Jeffrey A Law (law@cygnus.com)
2078
2079 * config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
2080 operands are assumed to be 32bits. Use "bits" field to hold the
2081 number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
2082 (mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
2083 to be 32bits.
2084
2085 * config/tc-mn10300.c (mn10300_insert_operand): Shift low part
2086 of a MN10300_OPERAND_SPLIT operand by operand->shift.
2087
2088 * config/tc-mn10300.c (mn10300_insert_operand): Handle
2089 MN10300_OPERAND_SPLIT.
2090
2091 Tue Nov 5 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
2092
2093 * config/tc-mn10300.c (md_assemble): Insert operands into
2094 the extension part of the instruction if necessary.
2095 (mn10300_insert_operand): Accept pointer to extension word
2096 argument. Make insn a pointer argument too. Return type
2097 is now void. All callers changed.
2098
2099 Mon Nov 4 12:53:40 1996 Jeffrey A Law (law@cygnus.com)
2100
2101 * config/tc-mn10300.c (mn10300_insert_operand): Handle
2102 repeated register operands.
2103
2104 Fri Nov 1 10:42:49 1996 Ian Lance Taylor <ian@cygnus.com>
2105
2106 * doc/as.texinfo: Added section on reporting bugs.
2107
2108 * config/tc-alpha.c: Change uses of void * to PTR. Change the
2109 alpha_macro emit field to expect a const argument, and change the
2110 arg field to be const. Fix some spacing to follow the GNU
2111 standard.
2112
2113 Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
2114
2115 * config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
2116 (pca56) and 21264 (ev6) cpus.
2117 (md_apply_fix): Private relocation types are now negative.
2118 (alpha_force_relocation): Likewise.
2119 (tc_gen_reloc): Likewise.
2120 (emit_insn): Likewise.
2121 (emit_ldXu): Do the right thing when the hardware can do byte insns.
2122 (emit_stX): Likewise.
2123 (emit_sextX): Likewise.
2124
2125 Thu Oct 31 16:33:21 1996 Ian Lance Taylor <ian@cygnus.com>
2126
2127 * config/obj-coff.c (do_relocs_for): Call resolve_symbol_value on
2128 a symbol found in a reloc.
2129
2130 * symbols.c (resolve_symbol_value): Improve the error message if
2131 an undefined symbol is used in an expression.
2132
2133 Wed Oct 30 20:15:35 1996 Ian Lance Taylor <ian@cygnus.com>
2134
2135 * doc/internals.texi: Rewrite, and add a lot of documentation.
2136 * doc/Makefile.in (internals.info): New target.
2137
2138 start-sanitize-v850
2139 Wed Oct 30 14:55:57 1996 Jeffrey A Law (law@cygnus.com)
2140
2141 * config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
2142 against weak symbols.
2143
2144 Tue Oct 29 12:28:16 1996 Jeffrey A Law (law@cygnus.com)
2145
2146 * config/tc-v850.c (md_assemble): Don't lose for relaxable
2147 addresses like .+6.
2148
2149 * config/tc-v850.c (md_convert_frag): Make sure we insert the
2150 fixup at the right address within the frag.
2151
2152 * config/tc-v850.c (md_convert_frag): Don't set fragP->fr_fix
2153 to an absolute value, instead increment it as needed.
2154
2155 * config/tc-v850.h (TC_GENERIC_RELAX_TABLE): Define.
2156 * config/tc-v850.c: Fix some indention problems.
2157 (md_relax_table): Define for D9->D99 branch displacement
2158 relaxing.
2159 (md_convert_frag): Do something useful instead of aborting.
2160 (md_estimate_size_before_relax): Likewise.
2161 (md_assemble): Note if the matching instruction has a relaxable
2162 operand. If it does, allocate frag with frag_var and don't
2163 do any fixups.
2164
2165 end-sanitize-v850
2166 Mon Oct 28 10:48:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2167
2168 * config/tc-d10v.h (md_cleanup): New function. This is needed to
2169 write out any buffered instructions when a ".end" is found.
2170
2171 Mon Oct 28 10:43:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2172
2173 * read.c (read_a_source_file): New hook md_cleanup().
2174
2175 Fri Oct 25 00:01:00 1996 Ian Lance Taylor <ian@cygnus.com>
2176
2177 * write.c (fix_new_exp): Use make_expr_symbol to build an
2178 expression symbol for a complex fixup.
2179
2180 start-sanitize-v850
2181 Thu Oct 24 14:31:04 1996 Jeffrey A Law (law@cygnus.com)
2182
2183 * config/tc-v850.c (v850_reloc_prefix): Several disgusting
2184 hacks to improve parsing of complex hi, lo, zda, etc
2185 expressions.
2186 (md_assemble): Don't demand and eat a trailing ')' after finding
2187 a v850 relocation prefix. Sign extend the constant in a
2188 BFD_RELOC_LO16 expression. Do eat a trailing ')' after a complete
2189 operand.
2190 (parse_cons_expression_v850): Don't eat a trailing ')' after
2191 finding a v850 relocation prefix.
2192
2193 * config/tc-v850.h (TC_PARSE_CONS_EXPRESSION): Define.
2194 (TC_CONS_FIX_NEW): Likewise.
2195 * config/tc-v850.c (parse_cons_expression_v850): New function.
2196 (cons_fix_new_v850): Likewise.
2197
2198 * config/tc-v850.h (tc_fix_adjustable): Don't adjust TDA relocs.
2199
2200 end-sanitize-v850
2201 Wed Oct 23 18:20:29 1996 Ian Lance Taylor <ian@cygnus.com>
2202
2203 * config/tc-ppc.c (md_apply_fix3): Give a better warning message
2204 for an unknown relocation type.
2205
2206 start-sanitize-v850
2207 Wed Oct 23 16:21:28 1996 Jeffrey A Law (law@cygnus.com)
2208
2209 * config/tc-v850.c (md_pseudo_table): Add .word; allocates
2210 4 bytes of space.
2211
2212 Tue Oct 22 22:01:25 1996 Jeffrey A Law (law@cygnus.com)
2213
2214 * config/tc-v850.c (md_assemble): Handle TDAOFF relocs
2215 differently for movea & sst/sld insns.
2216
2217 end-sanitize-v850
2218 Tue Oct 22 17:09:32 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2219
2220 * config/tc-d10v.c (parallel_ok): Don't allow illegal combinations
2221 of instructions.
2222
2223 Tue Oct 22 11:28:39 1996 Ian Lance Taylor <ian@cygnus.com>
2224
2225 * obj.h (struct format_ops): Add frob_file_after_relocs field.
2226 * config/obj-multi.h (obj_frob_file_after_relocs): Define.
2227 * config/obj-ecoff.c (ecoff_format_ops): Initialize new
2228 frob_file_after_relocs field.
2229 * config/obj-elf.c (elf_format_ops): Likewise.
2230 * config/tc-mips.c: Undefine obj_frob_file_after_relocs before
2231 including obj-elf.h.
2232
2233 Mon Oct 21 11:38:30 1996 Ian Lance Taylor <ian@cygnus.com>
2234
2235 * config/tc-mips.c (cons_fix_new_mips): Only treat 8 byte reloc
2236 specially if not ELF.
2237 (md_apply_fix): Handle BFD_RELOC_64.
2238 (tc_gen_reloc): Handle BFD_RELOC_64.
2239
2240 * config/tc-i386.c (md_apply_fix3): Don't increment value for a PC
2241 relative reloc when BFD_ASSEMBLER and OBJ_AOUT (more ugly gas
2242 reloc hacking).
2243
2244 * config/obj-aout.h (S_IS_DEFINE): non BFD_ASSEMBLER version:
2245 Don't check S_GET_OTHER.
2246
2247 Fri Oct 18 14:06:26 1996 Ian Lance Taylor <ian@cygnus.com>
2248
2249 * config/tc-mips.c (mips_ip): Accept an odd floating point
2250 register with l.s or s.s.
2251
2252 * config/obj-aout.c (obj_pseudo_table): Use obj_aout_type for
2253 .type pseudo-op.
2254 (obj_aout_type): New static function.
2255
2256 Thu Oct 17 17:55:17 1996 Ian Lance Taylor <ian@cygnus.com>
2257
2258 * Makefile.in ($(OBJS)): Depend upon libiberty.h.
2259
2260 start-sanitize-v850
2261 Wed Oct 16 11:28:31 1996 Jeffrey A Law (law@cygnus.com)
2262
2263 * config/tc-v850.c (v850_reloc_prefix): Recognize zdaoff, tdaoff
2264 and sdaoff expressions.
2265
2266 * write.c (fixup_segment): Don't add symbol value to addend if
2267 TC_V850 and OBJ_ELF.
2268 * config/tc-v850.h (tc_fix_adjustable): Don't adjust any
2269 pc-relative fixups.
2270
2271 * config/tc-v850.c (md_pcrel_from): Undo yesterday's changes.
2272 (md_pcrel_from_section): Likewise.
2273 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Likewise.
2274
2275 Tue Oct 15 23:19:00 1996 Jeffrey A Law (law@cygnus.com)
2276
2277 * config/tc-v850.c (md_pcrel_from): Delete unused function.
2278 (md_pcrel_from_section): New function.
2279 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
2280
2281 end-sanitize-v850
2282 Mon Oct 14 13:59:12 1996 Ian Lance Taylor <ian@cygnus.com>
2283
2284 * config/tc-mips.c (load_register): Add cast to offsetT when using
2285 a constant with &~.
2286
2287 Mon Oct 14 11:24:28 1996 Richard Henderson <rth@tamu.edu>
2288
2289 * config/obj-elf.c (elf_frob_file): Move ECOFF debug processing to ...
2290 (elf_frob_file_after_relocs): ... here. New function.
2291 * config/obj-elf.h (obj_from_file_after_relocs): New macro.
2292 * write.c (write_object_file): Call *frob_after_relocs after the
2293 call to write_relocs.
2294
2295 * config/tc-alpha.c: Use new BFD_RELOC_ALPHA_ELF_LITERAL reloc.
2296
2297 * config/tc-alpha.c (load_expression): Don't SET_VALUE on the section
2298 symbol, as this messes up linking. Instead, expand the recursive call
2299 inline and change up the appropriate bits to get the 0x8000 offset
2300 in the reloc addend.
2301
2302 Thu Oct 10 17:30:31 1996 Ian Lance Taylor <ian@cygnus.com>
2303
2304 * config/tc-sparc.h (tc_fix_adjustable): Permit the difference of
2305 two symbols in the same segment to be adjusted.
2306
2307 * configure.in: Don't get confused by CPU-VENDOR-linux-gnu.
2308 * configure: Rebuild.
2309
2310 Thu Oct 10 17:22:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2311
2312 * config/tc-ppc.c (ppc_insert_operand): Change most warnings into
2313 errors.
2314 (ppc_elf_validate_fix): Ditto.
2315 (md_assemble): Ditto.
2316 (ppc_tc): Ditto.
2317 (ppc_pe_section): Ditto.
2318 (ppc_frob_symbol): Ditto.
2319
2320 Thu Oct 10 12:05:45 1996 Jeffrey A Law (law@cygnus.com)
2321
2322 * config/mn10300.c (md_assemble): Pass an extra shift count
2323 to mn10300_insert_operand based on the opcode format.
2324 (mn10300_insert_operand): Accept and use extra shift count
2325 parameter.
2326
2327 * config/tc-mn10300.c (md_assemble): Use FMT_* macros for
2328 formats rather than hard-coded constants.
2329
2330 * config/tc-mn10300.c (md_assemble): Format D5 instructions
2331 are 7 bytes long. Write out instructions in big-endian format.
2332
2333 Tue Oct 8 14:56:15 1996 Jeffrey A Law (law@cygnus.com)
2334
2335 * config/tc-mn10300.c (md_assemble): Tweak further so
2336 that all instructions are parsed correctly.
2337
2338 Tue Oct 8 13:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
2339
2340 * as.h: Include libiberty.h.
2341 (xmalloc, xrealloc): Don't declare.
2342 * as.c: Don't include libiberty.h.
2343 * expr.c, read.c, stabs.c, config/obj-coff.c: Likewise.
2344 * config/tc-mips.c: Likewise.
2345 * messages.c: Likewise.
2346 (xstrerror): Don't declare.
2347 * xmalloc.c: Remove.
2348
2349 Mon Oct 7 16:53:23 1996 Jeffrey A Law (law@cygnus.com)
2350
2351 * config/tc-mn10300.h (pre_defined_registers) Remove.
2352 (system_registers, cc_names): Likewise.
2353 (address_registers, data_registers, other_registers): New register
2354 arrays.
2355 (register_name, system_register_name, cc_name): Remove.
2356 (mn10300_reloc_prefix): Likewise.
2357 (data_register_name): New function.
2358 (address_register_name, other_register_name): Likewise.
2359 (md_assemble): Rough cut at parsing operands. Remove lots of
2360 unwanted code.
2361 (md_apply_fix3): Disable for now.
2362
2363 Mon Oct 7 11:38:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2364
2365 * config/tc-m68k.c (select_control_regs): New function, extracted
2366 out of m68k_init_after_args.
2367 (m68k_init_after_args): Use it.
2368 (mri_chip): Use it here as well to update set of allowed control
2369 regs for movec.
2370
2371 Mon Oct 7 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
2372
2373 * config/obj-elf.c (elf_begin): New function.
2374 (obj_elf_section): Add the section symbol to the symbol table.
2375 * config/obj-elf.h (obj_begin): Define.
2376 (elf_begin): Declare.
2377 * as.c (perform_an_assembly_pass): Call obj_begin if it is
2378 defined.
2379
2380 Fri Oct 4 18:37:32 1996 Ian Lance Taylor <ian@cygnus.com>
2381
2382 * config/obj-coff.c (fixup_segment): Subtract the section address
2383 from a PC relative reloc if TC_M68K.
2384
2385 Thu Oct 3 15:15:30 1996 Ian Lance Taylor <ian@cygnus.com>
2386
2387 * config/tc-sparc.c (md_pseudo_table): Make .uahalf, .uaword, and
2388 .uaxword available even if not OBJ_ELF.
2389 (md_atof): Remove unused local variable wordP.
2390
2391 Thu Oct 3 00:16:50 1996 Jeffrey A Law (law@cygnus.com)
2392
2393 * config/tc-mn10x00.c, config/tc-mn10x00.h: New files
2394 for Matsushita MN10x00 support.
2395 * configure.in: Recognize mn10x00-*-*
2396 * configure: Rebuilt.
2397
2398 Wed Oct 2 15:54:03 1996 Klaus Kaempf <kkaempf@progis.de>
2399
2400 * obj-evax.h: move openvms definitions from here to tc-alpha.c.
2401 * tc-alpha.c: add support for vms_case_hack like in vax/vms.
2402 (load_expression): track clobbering of base reg before jmp/jsr.
2403 (s_alpha_file): pass case_hack flags and source filename via
2404 symbol table to bfd.
2405 * tc-alpha.h (TC_CONS_FIX_NEW): define
2406
2407 Tue Oct 1 16:16:01 1996 Joel Sherrill <joel@oarcorp.com>
2408
2409 * configure.in (mips-*-rtems*): New target, like mips-*-elf*.
2410 * configure: Rebuild.
2411
2412 Tue Oct 1 12:37:48 1996 Ian Lance Taylor <ian@cygnus.com>
2413
2414 * read.c (s_macro): Warn if a macro has the same name as a
2415 pseudo-op.
2416 (s_space): In m68k MRI mode, align to a word boundary.
2417 * macro.c (define_macro): Add namep parameter. Change all
2418 callers.
2419 * macro.h (define_macro): Update declaration.
2420
2421 * as.c (show_usage): Print bug report address.
2422 (parse_args): Change version printing to match current GNU
2423 standards.
2424 * gasp.c (show_usage): Print bug report address.
2425 (main): Change version printing to match current GNU standards.
2426
2427 * config/tc-m68k.c (init_table): Correct access control unit
2428 register numbers. From Ken Rose <rose@netcom.com>.
2429
2430 * config/tc-alpha.c: Add some static function prototypes.
2431 (alpha_macros): Move to top of file. Make static.
2432 (alpha_num_macros): Move to top of file.
2433
2434 start-sanitize-v850
2435 Tue Oct 1 09:36:19 1996 Stu Grossman (grossman@critters.cygnus.com)
2436
2437 * tc-v850.h: Define LOCAL_LABEL to recognise _.L_* symbols
2438 generated by DWARF.
2439
2440 end-sanitize-v850
2441 Sat Sep 28 03:38:08 1996 Ian Lance Taylor <ian@cygnus.com>
2442
2443 * listing.c (list_symbol_table): Remove bogus code in BFD64 case,
2444 and just call sprintf_vma.
2445
2446 Thu Sep 26 16:04:11 1996 Ian Lance Taylor <ian@cygnus.com>
2447
2448 * expr.c (expr): Change >>= to >> (fix typo). (From meissner).
2449
2450 Tue Sep 24 19:05:08 1996 Ian Lance Taylor <ian@cygnus.com>
2451
2452 * read.c (float_cons): Call md_flush_pending_output if it is
2453 defined.
2454
2455 Tue Sep 24 12:22:18 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2456
2457 * config/tc-d10v.c (md_operand): Created. Allows operands to
2458 start with '#'.
2459 * config/tc-d10v.h (md_operand): Undefined.
2460
2461 Mon Sep 23 12:13:18 1996 Ian Lance Taylor <ian@cygnus.com>
2462
2463 * config/tc-m68k.c (add_fix): Treat a width of '3' like 'B'.
2464 (md_assemble): A fixup width of '3' means a 1 byte reloc.
2465
2466 Thu Sep 19 12:21:24 1996 Ian Lance Taylor <ian@cygnus.com>
2467
2468 * config/obj-coff.c (fixup_segment): Don't adjust PC relative
2469 reloc for the i960 for a reloc in the same section. This undoes
2470 one of the two changes made Aug 19.
2471
2472 Wed Sep 18 12:11:58 1996 Ian Lance Taylor <ian@cygnus.com>
2473
2474 * config/obj-coff.c (obj_coff_endef): Both versions: Move C_STAT
2475 symbols to the position of the debugging information.
2476
2477 Mon Sep 16 11:41:40 1996 Ian Lance Taylor <ian@cygnus.com>
2478
2479 * expr.c (expr): Always use unsigned right shifts for >>.
2480
2481 Thu Sep 12 10:25:45 1996 James G. Smith <jsmith@cygnus.co.uk>
2482
2483 * config/tc-arm.c (md_apply_fix3): Update two thumb instruction
2484 slots when processing BL fixups.
2485
2486 * config/tc-arm.c (output_inst): Ensure Thumb BL fixup is marked
2487 on the first half of the instruction.
2488
2489 Wed Sep 11 00:09:35 1996 Ian Lance Taylor <ian@cygnus.com>
2490
2491 * ecoff.c (ecoff_stab): Create an expression symbol for a complex
2492 stabs expression, rather than giving an error.
2493
2494 * ecoff.c (ecoff_new_file): Don't do anything if we are still in
2495 the same file.
2496
2497 Tue Sep 10 11:45:37 1996 Ian Lance Taylor <ian@cygnus.com>
2498
2499 * config/tc-mips.c (append_insn): Fill in the value for a constant
2500 jump, rather than creating a reloc.
2501
2502 Mon Sep 9 10:57:42 1996 Ian Lance Taylor <ian@cygnus.com>
2503
2504 * config/tc-mips.c (append_insn): Don't swap an instruction which
2505 sets a condition code with an instruction which uses a condition
2506 code.
2507 (mips_ip): In cases 'N' and 'M', look for $fccN rather than an
2508 immediate value.
2509
2510 * config/tc-mips.c (md_begin): Recognize r5000 for cpu.
2511 (mips_ip): Give a better error message if the ISA level is wrong.
2512 (md_parse_option): Recognize -mcpu=[v][r]5000.
2513
2514 Sat Sep 7 13:25:55 1996 James G. Smith <jsmith@cygnus.co.uk>
2515
2516 * config/tc-mips.c (COUNT_TOP_ZEROES): Added macro to count
2517 leading zeroes.
2518 (load_register): Ensure hi32 bits are not lost during lo32bit
2519 processing. Fix shift offset that was overflowing into the next
2520 instruction field. Add code to generate shorter sequences for
2521 constants with a single contiguous seqeuence of ones.
2522
2523 Fri Sep 6 17:07:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2524
2525 * config/tc-d10v.c (d10v_dot_word): New function to support
2526 "@word" with the word pseudo-op.
2527 (md_apply_fix3): Cleanup and changes to support correct sizes
2528 for 16 and 18-bit relocs.
2529
2530 Fri Sep 6 16:00:29 1996 Doug Evans <dje@canuck.cygnus.com>
2531
2532 * configure.in (sparc-*-aout): Set `em'.
2533 * configure: Regenerated.
2534 * config/te-sparcaout.h: New file.
2535 * config/tc-sparc.h (TARGET_BYTES_BIG_ENDIAN): Define.
2536 Ifdef TE_SPARCOUT define TARGET_FORMAT and SPARC_BIENDIAN.
2537 * config/tc-sparc.c (INSN_BIG_ENDIAN): New macro.
2538 (SPECIAL_CASE_{SETSW,SETX}): Define.
2539 ({NOP,OR,FMOVS,SETHI,SLLX,SRA}_INSN): Define.
2540 (md_begin): Delete setting of `target_big_endian'.
2541 (output_insn): New function.
2542 (md_assemble): Rewrite. Add `setx' support.
2543 (sparc_ip): Handle `0' operand char. Recognize setuw, setsw, setx
2544 special cases.
2545 (md_atof): Add little endian support.
2546 (md_number_to_chars): Likewise.
2547 (md_apply_fix): Likewise.
2548 (md_longopts): Recognize -EL,-EB ifdef SPARC_BIENDIAN.
2549 (md_parse_option): Likewise.
2550 (md_show_usage): Print -EL, -EB ifdef SPARC_BIENDIAN.
2551
2552 Thu Sep 5 13:40:29 1996 Ian Lance Taylor <ian@cygnus.com>
2553
2554 * ecoff.c (ecoff_new_file): New function.
2555 * ecoff.h (ecoff_new_file): Declare.
2556 * config/obj-ecoff.h (obj_app_file): Define.
2557
2558 Thu Sep 5 13:39:25 1996 Richard Henderson <rth@tamu.edu>
2559
2560 * config/tc-alpha.c (load_expression): Bias the .lit8 section
2561 symbol by 32k so that our 16-bit signed offset can address the
2562 entire chunk. Reported by <matt@lkg.dec.com>.
2563
2564 Wed Sep 4 10:23:20 1996 Ian Lance Taylor <ian@cygnus.com>
2565
2566 * config/tc-mips.c (load_register): Remove unused variable tmp.
2567
2568 Wed Sep 4 11:24:29 1996 James G. Smith <jsmith@cygnus.co.uk>
2569
2570 * config/tc-mips.c (load_register): Remove unnecessary code that
2571 was causing the high 32bits of 64bit constants to be lost.
2572
2573 Tue Sep 3 13:52:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2574
2575 * config/tc-d10v.c: Added changes to support function
2576 pointers and "@word" syntax.
2577
2578 start-sanitize-v850
2579 Tue Sep 3 11:57:18 1996 Jeffrey A Law (law@cygnus.com)
2580
2581 * config/tc-v850.c: Remove commented out and #if 0'd code.
2582 (v850_reloc_prefix): Provide prototype.
2583 (postfix, get_reloc, build_insn): Remove prototypes for nonexistant
2584 functions.
2585 (md_begin, md_assemble, md_apply_fix3): Remove unused variables.
2586 (md_assemble): Add default to case statement.
2587
2588 Sat Aug 31 16:03:00 1996 Jeffrey A Law (law@cygnus.com)
2589
2590 * config/tc-v850.c (md_assemble): Compute size of the instrction
2591 from the opcode.
2592
2593 * config/tc-v850.c (md_apply_fix3): Do simple byte, short and
2594 word fixups too.
2595
2596 Fri Aug 30 23:50:08 1996 Jeffrey A Law (law@cygnus.com)
2597
2598 * config/tc-v850.c (md_apply_fix3): Use little endian get/put
2599 routines to fetch/store the updated instruction from/to memory.
2600 (v850_insert_operand): If the operand has a specialized insert
2601 routine, call it.
2602
2603 Fri Aug 30 18:35:26 1996 J.T. Conklin <jtc@hippo.cygnus.com>
2604
2605 * config/tc-v850.c (reg_name_search): Align calling convention to
2606 be like identical function found in tc-ppc.c.
2607 (get_reloc): Removed.
2608 (v850_reloc_prefix): New function, parse lo(), hi() and hi0().
2609 (md_assemble): emit fixups.
2610 (md_pcrel_from): renamed from md_pcrel_from_section, emit proper
2611 displacement.
2612 (md_apply_fix3): handle fixups/relocs.
2613 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Removed definition.
2614
2615 end-sanitize-v850
2616 Fri Aug 30 18:12:00 1996 Ian Lance Taylor <ian@cygnus.com>
2617
2618 Add SH ELF support.
2619 * configure.in (sh-*-elf*): New target.
2620 * config/tc-sh.h (TARGET_ARCH): Define.
2621 (WORKING_DOT_WORD): Define.
2622 (TC_COFF_FIX2RTYPE): Only define if OBJ_COFF.
2623 (BFD_ARCH, COFF_MAGIC, TC_COUNT_RELOC): Likewise.
2624 (TC_RELOC_MANGLE, tc_coff_symbol_emit_hook): Likewise.
2625 (DO_NOT_STRIP, NEED_FX_R_TYPE, TC_KEEP_FX_OFFSET): Likewise.
2626 (TC_COFF_SIZEMACHDEP, tc_frob_file): Likewise.
2627 (SUB_SEGMENT_ALIGN): Likewise.
2628 (RELOC_32): Don't define.
2629 (tc_frob_file_before_adjust): Define if BFD_ASSEMBLER.
2630 (target_big_endian): Declare if OBJ_ELF.
2631 (TARGET_FORMAT): Define if OBJ_ELF.
2632 * config/tc-sh.c: Use BFD reloc codes instead of SH COFF reloc
2633 numbers throughout.
2634 (tc_crawl_symbol_chain): Only define if OBJ_COFF.
2635 (tc_headers_hook, tc_coff_sizemachdep): Likewise.
2636 (struct sh_count_relocs): Define.
2637 (sh_count_relocs): New static function, broken out of
2638 sh_frob_file. Add BFD_ASSEMBLER code.
2639 (sh_frob_section): Likewise.
2640 (sh_frob_file): Call sh_frob_section.
2641 (md_convert_frag): If BFD_ASSEMBLER, change type of headers, and
2642 call section_symbol rather than seg_info (seg)->dot.
2643 (md_section_align): Add OBJ_ELF version.
2644 (SWITCH_TABLE_CONS): Define.
2645 (SWITCH_TABLE): Use SWITCH_TABLE_CONS.
2646 (md_apply_fix): Change parameter types if BFD_ASSEMBLER. Only
2647 handle fx_r_type == 0 if not BFD_ASSEMBLER. Return 0 if
2648 BFD_ASSEMBLER.
2649 (struct reloc_map): Define if not BFD_ASSEMBLER.
2650 (coff_reloc_map): Likewise.
2651 (sh_coff_reloc_mangle): Use coff_reloc_map to convert fx_r_type.
2652 (tc_gen_reloc): New function if BFD_ASSEMBLER.
2653 * write.c (write_relocs): Ifdef out fx_where test which triggers
2654 inappropriately for SH ELF.
2655 (write_object_file): Call tc_frob_file_before_adjust and
2656 obj_frob_file_before_adjust if they are defined.
2657
2658 * write.c (write_object_file): Use BFD_RELOC_16, not
2659 BFD_RELOC_NONE, when calling fix_new_exp for a broken word.
2660
2661 * read.c (emit_expr): Fix conversion of byte count to BFD reloc
2662 code.
2663
2664 Fri Aug 30 14:47:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2665
2666 * config/tc-d10v.c (find_opcode): Fix problem with calculating
2667 branch sizes in across sections.
2668
2669 start-sanitize-v850
2670 Fri Aug 30 00:44:13 1996 Jeffrey A Law (law@cygnus.com)
2671
2672 * config/tc-850.c (md_assemble): Handle hi() correctly. Handle
2673 hi0() too.
2674
2675 Wed Aug 28 23:11:08 1996 Jeffrey A Law (law@cygnus.com)
2676
2677 * config/tc-v850.c (md_begin): Deal with end of opcode
2678 table marker.
2679
2680 end-sanitize-v850
2681 Wed Aug 28 19:20:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2682
2683 * config/tc-d10v.c (find_opcode): Fix a bug which could generate
2684 the wrong opcode for cases like st2w where there are many forms
2685 of the same instruction.
2686
2687 Tue Aug 27 13:53:22 1996 Ian Lance Taylor <ian@cygnus.com>
2688
2689 * expr.c (operand): If md_parse_name is defined, call it before
2690 calling symbol_find_or_make.
2691 * config/tc-ppc.h (md_parse_name): Define.
2692 (ppc_parse_name): Declare.
2693 * config/tc-ppc.c (reg_name_search): Add regs and regcount
2694 parameters.
2695 (register_name): Update call to reg_name_search.
2696 (cr_operand): New static variable.
2697 (cr_names): New static const array.
2698 (ppc_parse_name): New function.
2699 (md_assemble): If PPC_OPERAND_CR is set in the operand flags, set
2700 cr_operand before calling expression.
2701
2702 Tue Aug 27 09:05:50 1996 Jeffrey A Law (law@cygnus.com)
2703
2704 * config/tc-hppa.c (tc_gen_reloc): Add new argument to
2705 hppa_gen_reloc_type call.
2706
2707 Mon Aug 26 18:24:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2708
2709 * config/tc-d10v.c: Fixed ".word". Fixed problem with range checking
2710 on addresses. Improved error messages.
2711 * doc/c-d10v.texi: Added docs for register pairs.
2712
2713 Mon Aug 26 13:39:27 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2714
2715 * config/tc-d10v.c (parallel_ok): Fix bug in parallel
2716 checking code.
2717
2718 Mon Aug 26 14:38:22 1996 Ian Lance Taylor <ian@cygnus.com>
2719
2720 * ecoff.c (init_file): Initialize fMerge to 1.
2721 (add_file): Restore old file merging code, but only merge files if
2722 fMerge is set.
2723 (ecoff_directive_loc): Clear fMerge field of current file.
2724 (ecoff_generate_asm_lineno): Likewise.
2725
2726 Fri Aug 23 11:40:47 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2727
2728 * doc/c-d10v.texi: Fix typo.
2729
2730 start-sanitize-v850
2731 Fri Aug 23 10:41:32 1996 Jeffrey A Law (law@cygnus.com)
2732
2733 * config/tc-v850.c (md_assemble): Correct bit masking for
2734 hi and lo expressions.
2735
2736 * config/tc-v850.c (md_assemble): Rough cut at demanding
2737 "ep" or "r30" in sst and sld instructions.
2738 (md_apply_fix3): Don't abort. Just warn that we don't
2739 have relocs yet.
2740
2741 * config/tc-v850.c (CC_NAME_CNT): Define.
2742 (cc_name): New function.
2743 (md_assemble): Handle V850_OPERAND_CC correctly.
2744
2745 * config/tc-v850.c (md_assemble): Don't forget to initialize
2746 "insn"!
2747
2748 * config/tc-v850.c (reg_name_search): Generalize to search
2749 any given register table.
2750 (register_name): Pass appropriate table and size to reg_name_search.
2751 (system_register_name): New function.
2752 (SYSREG_NAME_CNT): Define.
2753 (md_assemble): Handle operands which are system registers.
2754
2755 * config/tc-v850.c (md_assemble): If we find a register, but the
2756 opcode doesn't want a register, then we don't have a match.
2757 (md_assemble): Get size of the instruction from the opcode table.
2758
2759 end-sanitize-v850
2760 Thu Aug 22 10:20:30 1996 Ian Lance Taylor <ian@cygnus.com>
2761
2762 * configure.in: Set and substitute HLDENV.
2763 * configure: Rebuild.
2764 * Makefile.in (HLDENV): New variable.
2765 (as.new): Use $(HLDENV).
2766
2767 * ecoff.c (ecoff_directive_endef): Avoid a division by zero error
2768 if an array dimension is not known.
2769
2770 Thu Aug 22 10:50:00 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2771
2772 * config/tc-d10v.c: Fix a reloc bug caused by my last change.
2773 * doc/c-d10v.texi: Cleanup.
2774
2775 start-sanitize-v850
2776 Tue Aug 20 15:15:16 1996 J.T. Conklin <jtc@hippo.cygnus.com>
2777
2778 * config/tc-v850.c: New file.
2779 * config/tc-v850.h: New file.
2780 * configure (v850-*-elf): New target.
2781 * configure.in (v850-*-elf): New target.
2782
2783 end-sanitize-v850
2784 Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2785
2786 * doc/c-d10v.texi: New file.
2787 * doc/all.texi: Added D10V stuff.
2788 * doc/as.texinfo: Added D10V stuff.
2789
2790 Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2791
2792 * config/tc-d10v.c: All references to defined symbols should
2793 now use the optimal instruction. .float and .double now work.
2794
2795 Mon Aug 19 14:41:36 1996 Ian Lance Taylor <ian@cygnus.com>
2796
2797 * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
2798 section address for the i960 as is done for the i386.
2799
2800 Thu Aug 15 16:37:59 1996 Stan Shebs <shebs@andros.cygnus.com>
2801
2802 * mpw-config.in: Add wildcards for config matching, add mips-*-*
2803 case, forward-include bfd/elf-bfd.h.
2804
2805 Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2806
2807 * config/tc-d10v.c: Add additional information to the opcode
2808 table to help determinine which instructions can be done
2809 in parallel.
2810
2811 Thu Aug 15 17:01:31 1996 James G. Smith <jsmith@cygnus.co.uk>
2812
2813 * config/tc-arm.c: Major changes to add Thumb support, with lots
2814 of change input from <rearnsha@armltd.co.uk>.
2815 Reverted to INSN_SIZE macro, rather than insn_size variable.
2816 (insns): Added ARM "bx" instruction support.
2817 (tinsns): Added Thumb instruction definition structure.
2818 (arm_tops_hsh): Added hash structure for Thumb opcodes.
2819 (md_pseudo_table): Added ".arm", ".thumb" and ".code" pseudo-ops.
2820 (opcode_select,s_arm,s_thumb,s_code): Added.
2821 (decode_shift): Allow upper-case RRX.
2822 (do_ldst): Simpler halfword support.
2823 (do_ldmstm): Improved.
2824 (reg_list, do_bx, thumb_reg, thumb_add_sub, thumb_shift,
2825 thumb_mov_compare, thumb_load_store, do_t_arit, do_t_add,
2826 do_t_asr, do_t_branch, do_t_bx, do_t_compare, do_t_ldmstm,
2827 do_t_ldrb, do_t_ldrh, do_t_lds, do_t_lsl, do_t_lsr, do_t_mov,
2828 do_t_push_pop, do_t_str, do_t_strb, do_t_strh, do_t_sub, do_t_swi,
2829 do_t_adr): Added.
2830 (md_apply_fix3): Add support for BFD_RELOC_ARM_THUMB_* relocations.
2831 (md_parse_option): Add support for -mthumb.
2832 (md_show_usage): Updated to reflect new command line option.
2833 (arm_data_in_code, arm_canonicalize_symbol_name): Added.
2834 * config/tc-arm.h: Provide TC_FIX_TYPE to allow private ARM
2835 fragment information to be held.
2836
2837 Thu Aug 15 16:12:00 1996 Richard Earnshaw (rearnsha@armltd.co.uk)
2838
2839 * tc-arm.c (md_apply_fix3): Also set fixP->fx_done if fx_addsy is
2840 non-null, but is a constant.
2841 (fix_new_arm): Call make_expr_symbol to make the expression symbol
2842 so that error reporting will work correctly.
2843
2844 Wed Aug 14 10:37:21 1996 Ian Lance Taylor <ian@cygnus.com>
2845
2846 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
2847 against weak symbols.
2848
2849 Tue Aug 13 17:39:24 1996 Ian Lance Taylor <ian@cygnus.com>
2850
2851 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
2852 (ppc_force_relocation): Declare if OBJ_XCOFF.
2853 * config/tc-ppc.c (ppc_force_relocation): New function if
2854 OBJ_XCOFF.
2855
2856 Mon Aug 12 16:49:43 1996 Ian Lance Taylor <ian@cygnus.com>
2857
2858 * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used.
2859
2860 Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2861
2862 * config/tc-d10v.c: Fix problem with relocs.
2863
2864 Fri Aug 9 14:16:14 1996 Ian Lance Taylor <ian@cygnus.com>
2865
2866 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
2867 with nops if not in data_section or bss_section.
2868
2869 Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
2870
2871 Add support for openVMS/Alpha.
2872 * as.h (PRINTF_LIKE): Don't define if VMS, for now.
2873 * config/obj-evax.c: New file.
2874 * config/obj-evax.h: New file.
2875 * config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
2876 defined.
2877 * config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
2878 defined. Add case for bfd_target_evax_flavour.
2879 * config/vms-a-conf.h: New file.
2880 * conf-a-gas.com: New file.
2881 * configure.in: Add target alpha-*-*vms*.
2882 * configure: Rebuild.
2883 * makefile.vms: New file.
2884 * read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
2885 Don't call ffs on openVMS/Alpha.
2886
2887 Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
2888
2889 * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
2890 <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
2891 and sbrk.
2892 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
2893 (NEED_DECLARATION_SBRK): New macro.
2894 * configure, conf.in: Rebuild.
2895 * as.h: Only include <strings.h> if HAVE_STRINGS_H.
2896 (strstr): Declare if NEED_DECLARATION_STRSTR.
2897 * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
2898
2899 Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com>
2900
2901 * symbols.c (resolve_symbol_value): Handle addition or subtraction
2902 by a constant before entering the main switch. Reject attempts to
2903 apply an arithmetic function to non-absolute symbols, except for
2904 the special case of subtraction of two symbols in the same
2905 section.
2906
2907 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
2908 not to more than a 16 byte boundary.
2909
2910 * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
2911 #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>.
2912 (tc_gen_reloc): If out of memory call as_fatal rather than
2913 assert. If no howto found, call as_bad_where rather than
2914 as_fatal. Change the error message slightly. Set howto to a
2915 non-NULL value in order to keep going.
2916
2917 Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2918
2919 * config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
2920
2921 Tue Aug 6 11:15:26 1996 Jeffrey A Law (law@cygnus.com)
2922
2923 * config/tc-h8300.c (get_specific): New operand "size" derived
2924 from ".b", ".w" and ".l" extensions. All callers changed. If
2925 the base instruction has no operands, then use the size to
2926 determine which specific instruction to use.
2927
2928 Mon Aug 5 14:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
2929
2930 * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
2931
2932 Fri Aug 2 11:23:31 1996 Ian Lance Taylor <ian@cygnus.com>
2933
2934 * config/tc-mips.c (md_section_align): Don't change addr if
2935 OBJ_ELF.
2936
2937 Thu Aug 1 23:51:52 1996 Jeffrey A Law (law@cygnus.com)
2938
2939 * config/tc-hppa.c: Revert yesterday's changes.
2940
2941 Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2942
2943 * config/tc-d10v.c: Disable range checking on 16-bit values.
2944
2945 Wed Jul 31 16:27:19 1996 Ian Lance Taylor <ian@cygnus.com>
2946
2947 * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
2948 not just the ones that don't match.
2949
2950 Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2951
2952 * config/tc-d10v.c: Fixed bugs in short relocs and range checking.
2953
2954 Wed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
2955
2956 * config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
2957 pre-cursor to adding Thumb support. Also added cpu_variant flag
2958 information to each of the asm_flg structures.
2959 (md_parse_option): Updated ARM7 parsing to allow 't' for
2960 thumb/halfword support, aswell as 'm' for long multiply.
2961 (md_show_usage): Updated help message.
2962 (md_assemble): Check that instruction flags are applicated to the
2963 current cpu variant.
2964 (md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
2965 BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
2966 signextension instructions.
2967 (do_ldst): Generate halfword and signextension variants if
2968 mnemonic flags match.
2969 (ldst_extend): Do not allow shifts in the offset field of halfword
2970 or signextension instructions.
2971 (validate_offset_imm): Provide check on halfword and signextension
2972 immediate range.
2973 (add_to_lit_pool): Merge identical literal pool values.
2974
2975 Tue Jul 30 14:28:23 1996 Jeffrey A Law (law@cygnus.com)
2976
2977 * config/tc-hppa.c (selector_table): Add 'E' selector.
2978 (cons_fix_new_hppa): Don't coke on e_esel.
2979 (tc_gen_reloc, SOM version): Handle R_COMP2 when used
2980 to help generate exception handling tables.
2981 (md_apply_fix): Don't try to apply fixups with an e_esel
2982 selector.
2983 (hppa_fix_adjustable): Fixups with e_esel selectors
2984 are not adjustable.
2985
2986 Tue Jul 30 15:51:41 1996 Ian Lance Taylor <ian@cygnus.com>
2987
2988 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
2989 pseudo-ops.
2990
2991 Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2992
2993 * config/tc-d10v.c: Added lots of error checking. Added hacks
2994 to support accumulator shifts.
2995
2996 Fri Jul 26 11:56:08 1996 Ian Lance Taylor <ian@cygnus.com>
2997
2998 * symbols.c (S_SET_EXTERNAL): Let .weak override.
2999 (S_CLEAR_EXTERNAL): Likewise.
3000 (S_SET_WEAK): Remove error; just let .weak override.
3001
3002 Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3003
3004 * config/tc-d10v.c (md_assemble): Now handles multiline
3005 instructions.
3006
3007 Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3008
3009 * config/tc-d10v.c: Fix packaging bug. Added range checking.
3010 Added kludge for divs instruction. Fixed minor problem with
3011 multiple text sections.
3012 * config/tc-d10v.h (d10v_cleanup): Change prototype.
3013
3014 Tue Jul 23 10:49:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3015
3016 * config/tc-d10v.c (md_apply_fix3): Fix all instruction
3017 addresses to be right-shifted by 2.
3018
3019 Mon Jul 22 11:32:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3020
3021 * config/tc-d10v.c: Many changes to get relocs working.
3022 (register_name): No longer creates a symbol for register names.
3023 (pre_defined_registers): moved to opcodes/d10v-opc.c.
3024 (d10v_insert_operand): Now works correctly for either container.
3025 * config/tc-d10v.h (d10v_cleanup): Declare.
3026
3027 Mon Jul 22 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
3028
3029 * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
3030 BFD_RELOC_PCREL_LO16 are expected to be PC relative.
3031
3032 Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
3033
3034 * tc-alpha.c: Patches to track current minimum alignment to reduce
3035 the number of fragments created with frag_align.
3036 (alpha_current_align): New static variable.
3037 (s_alpha_text): Reset alignment to 0.
3038 (s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
3039 (s_alpha_stringer, s_alpha_space): New functions.
3040 (s_alpha_cons, alpha_flush_pending_output): Remove functions.
3041 (alpha_cons_align): New function to replace both of them.
3042 (emit_insn): Only align if alpha_current_align is less than 2;
3043 reset alpha_current_align to 2.
3044 (s_alpha_gprel32): Likewise.
3045 (s_alpha_section): New function. Basically duplicate the other
3046 alpha section change hooks. Only define for ELF.
3047 (s_alpha_float_cons): Simplify alignment handling.
3048 (md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
3049 If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
3050 Don't define the s_alpha_cons pseudo-ops. Do define
3051 s_alpha_stringer and s_alpha_space pseudo-ops.
3052 (alpha_align): Skip if less than current default alignment. Set
3053 default alignment.
3054 * tc-alpha.h (md_flush_pending_output): Remove.
3055 (md_cons_align): Add.
3056
3057 * tc-alpha.c: Add oodles of function description comments.
3058 (md_bignum_to_chars): Remove; there are no callers.
3059 (md_show_usage): Mention some more variants.
3060
3061 Thu Jul 18 15:54:54 1996 Ian Lance Taylor <ian@cygnus.com>
3062
3063 From Andrew Gierth <ANDREWG@microlise.co.uk>:
3064 * configure.in (sparc-*-sysv4*): New target.
3065 * configure: Rebuild.
3066
3067 * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
3068 uaxword to use s_uacons.
3069 (sparc_no_align_cons): New static variable.
3070 (s_uacons): New static function.
3071 (sparc_cons_align): If sparc_no_align_cons is set, just clear it
3072 and return.
3073
3074 * config/tc-sparc.c (s_common): Remove unused label allocate_bss.
3075
3076 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
3077 5 with regard to shared libraries.
3078 * configure: Rebuild.
3079
3080 * config/tc-m68k.c (m68k_ip): Use the correct length when
3081 allocating space for the unsupported architecture error message.
3082
3083 Thu Jul 18 12:57:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3084
3085 * configure.in (d10v-*-*): Allow d10v-*-*, don't require d10v-*-elf*.
3086
3087 Wed Jul 17 14:25:13 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3088
3089 * config/tc-d10v.c: New file.
3090 * config/tc-d10v.h: New file.
3091 * configure (d10v-*-elf): New target.
3092 * configure.in (d10v-*-elf): New target.
3093
3094 Fri Jul 12 20:54:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3095
3096 * config/tc-ppc.c (md_parse_option): Recognize -K PIC.
3097
3098 Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
3099
3100 * config/tc-alpha.c (alpha_align): Change fill parameter
3101 to a pointer. Take NULL as 0 or nop depending on section. Change
3102 all callers.
3103 (s_alpha_align): Rename local variables.
3104
3105 * doc/as.texinfo (.align): Document action of omitted
3106 fill parameter.
3107
3108 Wed Jul 10 00:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
3109
3110 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
3111 when an unsupported PC relative reloc is seen, rather than calling
3112 abort.
3113
3114 * app.c (do_scrub_chars): Remove not_cpp_line local variable.
3115 Instead, check state when '#' comment is seen.
3116
3117 Mon Jul 8 14:11:49 1996 Ian Lance Taylor <ian@cygnus.com>
3118
3119 * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
3120 OBJ_MAYBE_ELF.
3121 (tc_gen_reloc): If fixup was changed to be PC relative, change
3122 reloc type accordingly. Use name of reloc in error message.
3123
3124 * as.h: Don't define const or volatile.
3125 * flonum.h: Don't define const.
3126
3127 * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
3128 if fx_pcrel is set. Correct setting the addend case in the
3129 OBJ_ELF case (from Andreas Schwab
3130 <schwab@issan.informatik.uni-dortmund.de>).
3131 (md_show_usage): Correct -mfc5200 to -m5200.
3132
3133 Fri Jul 5 10:32:58 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3134
3135 * doc/c-m68k.texi: Document -m5200 flag.
3136 * doc/as.texinfo: Likewise.
3137
3138 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
3139 scale factor.
3140
3141 Fri Jul 5 11:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
3142
3143 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
3144 (S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
3145
3146 Thu Jul 4 11:59:46 1996 Ian Lance Taylor <ian@cygnus.com>
3147
3148 * Makefile.in (VERSION): Set to cygnus-2.7.1.
3149
3150 * Released binutils 2.7.
3151
3152 Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
3153
3154 * config/tc-mips.c (mips_ip): Only perform range check when
3155 dealing with O_constant expressions.
3156
3157 Wed Jul 3 15:02:21 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3158
3159 * m68k-parse.h (m68k_register): Add new coldfile control
3160 registers.
3161
3162 * config/tc-m68k.c (mcf5200_control_regs): New variable,
3163 array of control registers for the coldfire.
3164 (cpu_of_arch): Added mcf5200.
3165 (archs): Added mcf5200.
3166 (init_table): Add new control registers.
3167 (m68k_ip): Added support for new control registers.
3168 (m68k_init_after_args): Likewise.
3169
3170 * config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
3171
3172 Wed Jul 3 16:05:50 1996 Ian Lance Taylor <ian@cygnus.com>
3173
3174 * read.h (is_it_end_of_statement): Declare.
3175 * read.c (is_it_end_of_statement): Remove declaration.
3176
3177 * config/tc-ppc.c (ppc_elf_suffix): Correct parenthesization of ||
3178 within &&.
3179 (md_assemble): Fix handling of @l with an unsigned constant. Add
3180 default case to reloc switch.
3181
3182 * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD.
3183
3184 Based on patches from Tom Quiggle <quiggle@sgi.com>:
3185 * ecoff.c (last_lineno): New static variable.
3186 (add_procedure): Set last_lineno.
3187 (ecoff_directive_loc): Likewise.
3188 (ecoff_generate_asm_lineno): Likewise.
3189 (ecoff_fix_loc): New function.
3190 * ecoff.h (ecoff_fix_loc): Declare.
3191 * config/tc-mips.c (append_insn): When inserting nops, and using
3192 ECOFF debugging, call ecoff_fix_loc.
3193
3194 Tue Jul 2 23:02:12 1996 Jeffrey A Law (law@cygnus.com)
3195
3196 * config/tc-h8300.c (build_bytes): If an operand type is
3197 marked as SRC_IN_DST retrieve it from the "destination" op.
3198
3199 Sat Jun 29 13:38:31 1996 Ian Lance Taylor <ian@cygnus.com>
3200
3201 * configure.in (arm-*-riscix*): Set emulation to riscix.
3202 * configure: Rebuild.
3203 * config/te-riscix.h: New file to define TE_RISCIX.
3204
3205 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define.
3206
3207 Fri Jun 28 15:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
3208
3209 * Makefile.in (config.status): Just run config.status as other
3210 tools do.
3211
3212 Fri Jun 28 11:09:38 1996 Stan Shebs <shebs@andros.cygnus.com>
3213
3214 * mpw-config.in (TARGET_OS): Add definition to conf.
3215
3216 Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
3217
3218 * config/tc-mips.c (append_insn): Parenthesize
3219 cop_interlocks expressions.
3220
3221 Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
3222
3223 * listing.c (listing_print): Close the listing file if it is not
3224 stdout. Close the other files opened for the listing.
3225
3226 * config/tc-sparc.h (md_cons_align): Define.
3227 (sparc_cons_align): Declare.
3228 (HANDLE_ALIGN): Define.
3229 (sparc_handle_align): Declare.
3230 * config/tc-sparc.c (sparc_cons_align): New function.
3231 (sparc_handle_align): New function.
3232 * read.c (cons_worker): Call md_cons_align if it is defined.
3233
3234 * as.h (struct frag): Add fr_file and fr_line fields.
3235 * frags.c (frag_new): Set fr_file and fr_line.
3236 (frag_var): Likewise.
3237 (frag_variant): Likewise.
3238
3239 * as.h (struct frag): Remove unused align_mask and align_offset
3240 fields.
3241
3242 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
3243 From <uddeborg@carmen.se>.
3244
3245 Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
3246
3247 * configure.in (mips-*-osf*): New target.
3248 * configure: Rebuild.
3249
3250 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
3251
3252 Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
3253
3254 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
3255 between co-processor comparisons and branches for the VR4300.
3256
3257 Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
3258
3259 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3260 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
3261 (docdir): Removed.
3262 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
3263 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
3264 includedir): Use autoconf set values.
3265 (docdir): Removed.
3266
3267 Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
3268
3269 * listing.c (listing_eject): Don't do anything if listing is 0.
3270 (listing_list): Likewise.
3271 (listing_source_line): Likewise.
3272 (listing_title): Don't save title if listing is 0.
3273 (listing_source_file): Check listing rather than listing_tail.
3274
3275 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
3276 using shared libraries.
3277 * configure: Rebuild.
3278
3279 Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
3280
3281 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
3282 absolute expression if a relocation type was specified.
3283
3284 Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
3285
3286 * configure.in: Add support for *-*-rtems* configurations.
3287 * configure: Rebuild.
3288
3289 Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
3290
3291 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
3292 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
3293 opcodes library for alpha.
3294 * configure: Rebuild with autoconf 2.10.
3295 * config/tc-alpha.c: Substantial rewrite to add ELF support and
3296 use new opcode table.
3297 * config/tc-alpha.h (md_undefined_symbol): Don't define.
3298 (LOCAL_LABEL): Define differently if OBJ_ELF.
3299 (FAKE_LABEL_NAME): Define if OBJ_ELF.
3300 * config/alpha-opcode.h: Remove.
3301 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
3302 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
3303 include/opcode/alpha.h rather than config/alpha-opcode.h.
3304
3305 Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
3306
3307 * config/obj-aout.c (obj_emit_relocations): Give an error if the
3308 relocation symbol was not resolved.
3309 * config/obj-coff.c (do_relocs_for): Likewise.
3310
3311 * write.c (adjust_reloc_syms): Refetch the symbol section after
3312 calling S_GET_VALUE, since it may have changed.
3313
3314 * expr.c (struct expr_symbol_line): Define.
3315 (expr_symbol_lines): New static variable.
3316 (make_expr_symbol): Add entry to expr_symbol_lines.
3317 (expr_symbol_where): New function.
3318 * expr.h: Use extern on function declarations.
3319 (expr_symbol_where): Declare.
3320 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
3321 rather than printing the meaningless name of an expression
3322 symbol.
3323
3324 Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
3325
3326 * config/tc-i386.c (md_number_to_chars): Deleted.
3327 * config/tc-i386.h (md_number_to_chars): New macro.
3328
3329 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
3330 the file.
3331 (load_symbol_address, load_expression): Use build_mem.
3332 (build_operate): New function.
3333 (emit_addq_r): Use it.
3334
3335 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
3336
3337 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
3338
3339 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
3340
3341 * config/tc-vax.h (NOP_OPCODE): Define.
3342
3343 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
3344
3345 * config/obj-vms.h (S_IS_COMMON): Define.
3346 (S_IS_LOCAL): Check for \002 as well as \001.
3347 (LONGWORD_ALIGNMENT): New macro.
3348 (SUB_SEGMENT_ALIGN): Use it.
3349
3350 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
3351
3352 * config/vms-conf.h: Reconcile with conf.in.
3353
3354 Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
3355
3356 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
3357 defined.
3358
3359 * doc/as.texinfo: Document that any number of hex digits can
3360 follow \x.
3361
3362 * as.c (struct defsym_list): Define.
3363 (defsyms): New static variable.
3364 (parse_args): Just put --defsym arguments on defsyms list, rather
3365 than defining them.
3366 (main): Define defsyms after output file is created.
3367
3368 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
3369 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
3370
3371 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
3372 insn_error rather than calling check_absolute_expr.
3373
3374 * as.c (emulation_name): Remove unused static variable.
3375 (default_emul_bfd_name): Add return NULL to avoid warning.
3376 * ecoff.c (ecoff_stab): Remove unused variables name and
3377 name_end.
3378 * frags.c (frag_new): Remove unused variable tmp.
3379 * hash.c (hash_grow): Parenthesize + within <<.
3380 (hash_print_statistics): Use %lu, not %d, to print unsigned
3381 long variables.
3382 * messages.c: Include "libiberty.h".
3383 (fprint_value): Add cast to avoid printf warning.
3384 (sprint_value): Likewise.
3385 * read.c: Include "ecoff.h".
3386 (emit_expr): Add casts to avoid printf warnings.
3387 * read.h: Use extern for function declarations.
3388 (pop_insert): Declare.
3389 * stabs.c: Include "ecoff.h".
3390 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
3391 former_last_fragP, and new_fragP.
3392 * subsegs.h (subsegs_print_statistics): Declare.
3393 * symbols.c (debug_verify_symchain): Change macro to discard
3394 arguments.
3395 * write.c (dump_section_relocs): Likewise.
3396 * write.h: Use extern for function declarations.
3397 (write_print_statistics): Declare.
3398 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
3399 warning.
3400 * config/e-mipself.c (mipself_bfd_name): Likewise.
3401 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
3402
3403 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
3404 emit relocations against external symbols.
3405
3406 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
3407 message if bfd_reloc_type_lookup fails, rather than calling
3408 assert.
3409
3410 * config/tc-alpha.c (alpha_force_relocation): Add
3411 BFD_RELOC_12_PCREL to switch.
3412
3413 Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
3414
3415 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
3416 TE_PE (Lfoo, not .Lfoo).
3417
3418 Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
3419
3420 * read.c (s_fill): Don't warn about a zero repeat count.
3421
3422 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
3423 coprocessor register.
3424
3425 * config/tc-i386.c (md_assemble): When checking the size of a
3426 register to set the size of an instruction, do a bitwise and with
3427 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
3428 or Reg16.
3429
3430 Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3431
3432 * config/tc-h8300.c (parse_reg): Tweak error messages.
3433 (build_bytes): Likewise.
3434 (skip_colonthing): Handle :32 suffix.
3435 (get_specific): Promote L_24 to L_32 if it makes a match.
3436 Don't always promote L_8 to L_16.
3437 (do_a_fix_imm): Clean up L_32 and L_24 handling.
3438
3439 * config/tc-h8300.c (Smode): New variable.
3440 (h8300hmode): Turn off Hmode.
3441 (h8300smode): New function. Turn on Smode and Hmode.
3442 (md_pseudo_table): New ".h8300s" pseudo-op.
3443 (parse_reg): Handle "exr" register.
3444 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
3445 Handle "mach" and "machl" operands for ldmac.
3446 (get_specific): Handle "stm.l" and "ldm.l".
3447 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
3448 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
3449 (Smode): Declare.
3450
3451 Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3452
3453 * doc/as.texinfo: Reorder chapter of machine dependent options so
3454 that it is sorted by chip name.
3455
3456 * doc/as.texinfo: Use consistant spelling of Vax.
3457 * doc/c-vax.texi: Likewise.
3458
3459 Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3460
3461 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
3462 pseudo ops.
3463 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
3464 (md_apply_fix): Likewise.
3465 (pa_try): New function.
3466 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
3467
3468 Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3469
3470 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
3471 (pa_level): New function.
3472
3473 Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
3474
3475 * listing.c (listing_newline): Don't do anything if listing is 0.
3476
3477 Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
3478
3479 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
3480 symbol_create, not symbol_new.
3481
3482 Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
3483
3484 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
3485 absolute symbol unless TC_FORCE_RELOCATION returns true.
3486
3487 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
3488 version.
3489 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
3490 the symbol to a pointer. Don't set previous_file_symbol.
3491 Simplify symbol list rearrangement.
3492 (coff_frob_symbol): Don't do anything with C_FILE symbols.
3493 (coff_adjust_symtab): Don't check previous_file_symbol.
3494
3495 Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3496
3497 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
3498 directive.
3499 (md_pseudo_table): Add ppc_elf_lcomm.
3500
3501 Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
3502
3503 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
3504 d0{24:1},d0' works without an immediate prefix on the bit numbers.
3505 (md_begin): Add digits to alt_notend_table.
3506 (md_parse_option): Make s a const pointer.
3507
3508 * config/tc-sparc.c (md_pseudo_table): Add "empty".
3509 (s_empty): New static function.
3510
3511 * config/obj-coff.c (struct filename_list): Only define if not
3512 BFD_ASSEMBLER.
3513 (filename_list_head, filename_list_tail): Likewise.
3514 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
3515 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
3516 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
3517 have a section of N_ABS rather than N_DEBUG. If we do a merge,
3518 remove the new symbol from the list.
3519 (obj_coff_endef, both versions): Call tag_insert even if there is
3520 an old symbol with the same name, if the old symbol does not
3521 happen to be a tag.
3522 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
3523 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
3524 symbol that will be moved to the end of the symbol list.
3525 (coff_adjust_section_syms): Always call section_symbol for .text,
3526 .data, and .bss.
3527 (coff_frob_section): Likewise. Also, remove unused variable
3528 strname.
3529
3530 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
3531 manipulating frags directly.
3532 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
3533 defined.
3534
3535 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
3536 whether the next character is '*' before checking whether we are
3537 at the start of a line. Permit LINE_COMMENT_START to start a
3538 comment in state 1 (seen some whitespace) as well, to match the
3539 documentation.
3540
3541 * gasp.c (do_align): Permit a fill value for .align.
3542
3543 Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
3544
3545 * read.c (next_char_of_string): Warn if a newline is seen in the
3546 middle of a string. Call bump_line_counters when appropriate.
3547
3548 Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
3549
3550 * symbols.c (colon): Use LOCAL_LABEL.
3551
3552 Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
3553
3554 * Makefile.in (install): Don't check to see if tooldir exists.
3555 Make $(tooldir) and $(tooldir)/bin.
3556
3557 Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3558
3559 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
3560 default.
3561
3562 Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
3563
3564 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
3565 insn_error. Don't put the string "ERROR" in insn_error. Set
3566 insn_error rather than calling as_warn for an unsupported opcode.
3567
3568 Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
3569
3570 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
3571 before permitting -64.
3572 * output-file.c (output_file_create): Remove duplicate
3573 bfd_perror.
3574
3575 Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
3576
3577 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
3578 section rather than a .reginfo section.
3579 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
3580 information.
3581
3582 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
3583 bit value with the high bit set.
3584
3585 Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
3586
3587 * read.c (s_lcomm): Set section flags for .sbss section.
3588
3589 * config/tc-mips.c (mips_64): New static variable.
3590 (mips_target_format): If mips_64, return elf64 targets rather than
3591 elf32 ones.
3592 (md_longopts): Add "32" and "64".
3593 (md_parse_option): Handle -32 and -64.
3594 (md_show_usage): Mention -32 and -64.
3595 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
3596 a 4 byte one.
3597
3598 Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3599
3600 * config/tc-ppc.c (comment_chars): Make '!' a comment character
3601 for Solaris compatibility.
3602
3603 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
3604 .stabd with 4 arguments into a .stabn.
3605
3606 Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
3607
3608 * config/tc-mips.c (macro): When passing X_add_number to
3609 macro_build, cast it to int first.
3610
3611 Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
3612
3613 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
3614 created by emit_expr.
3615
3616 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
3617 as_perror rather than assert.
3618
3619 Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
3620
3621 * config/tc-mips.c (mips_ip): Mark sections created to hold
3622 floating point information as read only.
3623
3624 Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
3625
3626 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
3627
3628 Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3629
3630 * read.c (potable): Add .skip as a synonym for .space.
3631
3632 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
3633 4 arguments, providing the 4th argument is 0, to allow
3634 compatibility with the Solaris assembler.
3635
3636 Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
3637
3638 * config/tc-sh.h (struct sh_segment_info_type): Define.
3639 (TC_SEGMENT_INFO_TYPE): Define.
3640 (sh_frob_label): Declare.
3641 (tc_frob_label): Define.
3642 (sh_flush_pending_output): Declare.
3643 (md_flush_pending_output): Define.
3644 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
3645 reloc before the instruction if necessary.
3646 (sh_frob_label): New function.
3647 (sh_flush_pending_output): New function.
3648 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
3649 when looking for the reloc for the target of .uses.
3650 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
3651 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
3652 emitted.
3653 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
3654 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
3655 the absolute symbol.
3656
3657 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
3658 TC_SEGMENT_INFO_TYPE is defined.
3659
3660 Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
3661
3662 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
3663 matches the register size.
3664
3665 Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
3666
3667 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
3668 fx_done set.
3669 (do_relocs_for): Likewise.
3670 (fixup_segment): Don't just quit if linkrelax is set. Try to
3671 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
3672 nonzero.
3673
3674 Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3675
3676 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
3677 relative relocations with -mrelocatable. Also allow unfixed
3678 relocs in .ex_shared.
3679
3680 Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
3681
3682 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
3683 non-zero before assuming this is a long file name.
3684 (w_strings): Likewise.
3685 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
3686
3687 * config/obj-coff.c (w_strings): Move declaration of i inside
3688 #ifdef block which uses it.
3689
3690 Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
3691
3692 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
3693 "relaxmode". Output relocs which identify various relaxing
3694 possibilities for mov.[bwl] instructions.
3695 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
3696
3697 Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
3698
3699 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
3700 (MD_APPLY_FIX3): Define.
3701 * config/tc-arm.c (my_get_expression): Only watch for bad segments
3702 if OBJ_AOUT.
3703 (md_apply_fix3): Renamed from md_apply_fix.
3704 If pcrel reloc and symbol is in different section, undo effects
3705 of md_pcrel_from.
3706
3707 Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
3708
3709 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
3710 any reloc with an LR% or RR% field selector for SOM.
3711
3712 Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
3713
3714 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
3715 variables.
3716
3717 Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
3718
3719 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
3720 SF_GET_STATICS set.
3721 (yank_symbols): Likewise.
3722
3723 Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
3724
3725 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
3726 BFD_ASSEMBLER, add name field.
3727 * config/obj-coff.c: Include "libiberty.h".
3728 (coff_header_append): Handle long section names.
3729 (crawl_symbols): Just use the name field for the symbol name,
3730 without worrying about null byte termination.
3731 (w_strings): Handle long section names.
3732 (write_object_file): Likewise. Also, use the name field, rather
3733 than scnhdr.s_name.
3734 (obj_coff_add_segment): Permit long section names.
3735 (obj_coff_init_stab_section): Use the name field, rather than
3736 scnhdr.s_name.
3737 (adjust_stab_section): Likewise.
3738 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
3739
3740 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
3741 (mem_fmt): Likewise.
3742 (md_apply_fix): Don't check fx_im_disp field.
3743
3744 Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
3745
3746 * configure.in: Add * after sparc*-*-vxworks.
3747 * configure: Rebuild.
3748
3749 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
3750 define it to comment_chars. Use tc_comment_chars rather than
3751 comment_chars.
3752 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
3753 * config/tc-m68k.h (tc_comment_chars): Define.
3754 (m68k_comment_chars): Declare.
3755 * config/tc-m68k.c (m68k_comment_chars): Rename from
3756 comment_chars. Change into a pointer rather than an array.
3757 (md_longopts): Add "bitwise-or".
3758 (md_parse_option): Handle OPTION_BITWISE_OR.
3759 (md_show_usage): Mention --bitwise-or.
3760 * doc/c-m68k.texi: Document --bitwise-or.
3761
3762 Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
3763
3764 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
3765 in 68000 mode.
3766
3767 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
3768 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
3769 correct handling of input line pointer, and call
3770 demand_empty_rest_of_line.
3771
3772 Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
3773
3774 * config/tc-sparc.c (in_bitfield_range): New static function.
3775 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
3776 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
3777 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
3778 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
3779 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
3780
3781 Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
3782
3783 * config/obj-coff.c: BFD_ASSEMBLER:
3784 (coff_last_bf): New static variable.
3785 (coff_frob_symbol): Set endndx of a .bf symbol.
3786 Non BFD_ASSEMBLER:
3787 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
3788 (last_bfP): New static variable.
3789 (yank_symbols): Set endndx of a .bf symbol.
3790
3791 Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3792
3793 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
3794 and -s options. Add -be for good measure.
3795
3796 Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
3797
3798 * read.c (s_space): Support non-constant fill value. Handle fill
3799 value correctly for a size other than 1.
3800
3801 Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
3802
3803 * config/tc-arm.c (my_get_float_expression): Update call to
3804 gen_to_words, X_PRECISION changed from 6 to 5.
3805
3806 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3807
3808 * config/tc-ppc.c (register_name,reg_name_search): Move register
3809 name lookup from PE specific code to all targets. Add support for
3810 -mregnames/-mno-regnames to control whether register names are
3811 expanded or not.
3812 (md_assemble): Call register_name for all platforms.
3813 (md_parse_option): Add support for -mregnames/-mno-regnames.
3814
3815 * configure.in (powerpcle*-*-solaris): Add support.
3816 (powerpc*-*-linux): Ditto.
3817 * configure: Regenerate.
3818
3819 * config/ppc-sol.mt: New config file for PowerPC Solaris.
3820
3821 Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
3822
3823 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
3824 be associated with a single %lo reloc.
3825
3826 * config/tc-mips.c (load_address): Cast X_add_number to valueT
3827 before comparing against MAX_GPREL_OFFSET, so that negative
3828 numbers are handled correctly.
3829 (macro): Likewise.
3830
3831 Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
3832
3833 * config/tc-sparc.c (last_insn): New static variable.
3834 (md_assemble): Warn about putting floating point branches in a
3835 delay slot. If architecture is less than v9, insert NOP
3836 instructions between floating point instructions and floating
3837 point branches. (The SunOS assembler does both these operations.)
3838 Save the last instruction opcode.
3839 (sparc_ip): Add pinsn parameter. Change caller.
3840
3841 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
3842 for byte jump to next instruction to skip empty frags.
3843
3844 Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
3845
3846 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
3847 for addq with a 16 bit signed value, just emit a lda instruction
3848 instead.
3849
3850 Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
3851
3852 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
3853 of a 32bit operand.
3854
3855 Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
3856
3857 * configure.in: Permit --enable-shared to specify a list of
3858 directories.
3859 * configure: Rebuild.
3860
3861 Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
3862
3863 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
3864 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
3865
3866 Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3867
3868 * config/atof-ieee.c: Fix handling of denormalized extended
3869 precision numbers and overflow/underflow detection.
3870 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
3871 not include the 16 bit gap in the m68k extended precision format.
3872
3873 Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
3874
3875 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
3876 <jdp@polstra.com>.
3877 * configure: Rebuild.
3878
3879 Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
3880
3881 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
3882 be accessed using the $gp register.
3883 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
3884
3885 Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
3886
3887 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
3888 bfd_mach_sparc_sparclet if current_architecture is sparclet.
3889
3890 Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
3891
3892 * read.c (get_line_sb): Bump line counters based on
3893 input_line_pointer[-1], not *input_line_pointer. Don't bother to
3894 call LISTING_NEWLINE.
3895 (s_macro): Don't call demand_empty_rest_of_line.
3896 * app.c (do_scrub_chars): When handling C style comments, unget
3897 ch2 rather than ch.
3898
3899 Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
3900
3901 * read.h (enum linkonce_type): Define.
3902 (s_linkonce): Declare.
3903 * read.c (potable): Add "linkonce".
3904 (s_linkonce): New function.
3905 * subsegs.h (segment_info_type): Add linkonce field to
3906 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
3907 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
3908 (obj_coff_pe_handle_link_once): Declare if TE_PE.
3909 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
3910 "coff/pe.h".
3911 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
3912 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
3913 entry based on the linkonce field in segment_info.
3914 * doc/as.texinfo: Document .linkonce.
3915
3916 Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
3917
3918 * doc/as.1: Changed to be recognized by catman -w on Solaris.
3919
3920 Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
3921
3922 * stabs.c (s_stab_generic): Call the listing functions before
3923 doing the rest of the processing, which may involve freeing the
3924 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
3925 SEPARATE_STAB_SECTIONS case.
3926
3927 * config/tc-hppa.c: Remove nested comment.
3928 (tc_gen_reloc): Move label done inside the ifdef in which it is
3929 used.
3930 (md_apply_fix): Pass pointers to correct types to libhppa.h
3931 functions. Always return a value.
3932
3933 * config/tc-mips.h (tc_frob_file): Define.
3934 (mips_frob_file): Declare.
3935 * config/tc-mips.c (struct mips_hi_fixup): Define.
3936 (mips_hi_fixup_list): New static variable.
3937 (imm_unmatched_hi): New static variable.
3938 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
3939 offset_reloc. Pass imm_unmatched_hi to append_insn.
3940 (append_insn): Add unmatched_hi parameter. If it is set, add the
3941 new fixup to mips_hi_fixup_list. Change all callers.
3942 (mips_ip): Set imm_unmatched_hi when appropriate.
3943 (mips_frob_file): New function.
3944
3945 Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
3946
3947 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
3948 * configure: Regenerated.
3949
3950 Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
3951
3952 * as.c (main): Call bfd_set_error_program_name.
3953
3954 Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
3955
3956 * as.h (strdup): Don't declare.
3957 * stabs.c: Include libiberty.h
3958 (get_stab_string_offset): Use xstrdup rather than strdup.
3959 (s_stab_generic): Likewise.
3960 * as.c (parse_args): Likewise.
3961 * read.c (s_mri_sect): Likewise.
3962
3963 * gasp.c (change_base): Recognize \(...) construct documented to
3964 pass through enclosed characters literally through to the output.
3965 (process_assigns): Likewise. Also, be more careful to avoid
3966 looking past the end of the buffer.
3967
3968 Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
3969
3970 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
3971 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
3972
3973 Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3974
3975 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
3976
3977 Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
3978
3979 * config/alpha-opcode.h: Added cvtst instruction.
3980
3981 Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
3982
3983 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
3984 string. Extract the addend from the result of expression.
3985
3986 Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
3987
3988 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
3989 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
3990 mode, change the state to 3 rather than 1.
3991
3992 Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
3993
3994 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
3995 correspond to 11 March change.
3996
3997 Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
3998
3999 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
4000 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
4001
4002 Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
4003
4004 * configure: Rebuild with autoconf 2.8.
4005
4006 Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
4007
4008 * config/atof-ieee.c (gen_to_words): Improve handling of
4009 X_PRECISION numbers. Based on patches from Andreas Schwab
4010 <schwab@issan.informatik.uni-dortmund.de>.
4011
4012 Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
4013
4014 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
4015 (SEG_LAST): New.
4016 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
4017 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
4018 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
4019 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
4020 SEG_E9.
4021
4022 Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
4023
4024 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
4025
4026 Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
4027
4028 * config/tc-hppa.c (SUBSEG_MILLI): Define.
4029 (pa_def_subspaces): Add $MILLICODE$.
4030 (pa_spaces_begin): Set section flags for $MILLICODE$.
4031
4032 Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
4033
4034 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
4035 not SHT_NOBITS. Don't tamper with flags based on type if a
4036 special section was found (revert Feb 29 change).
4037
4038 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
4039 if aligning to a longword boundary or greater.
4040
4041 Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
4042
4043 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
4044
4045 Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
4046
4047 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
4048 * configure: Regenerated.
4049
4050 Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
4051
4052 * config/tc-hppa.c: Add default definitions for R_N0SEL and
4053 R_N1SEL since they're not defined for old versions of hpux.
4054
4055 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
4056 Set "sym_ptr_ptr" and "addend" fields to dummy values for
4057 R_N0SEL and R_N1SEL.
4058
4059 Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4060
4061 * flonum-konst.c: Add two more constants for 1e+-2048 and
4062 1e+-4096, and correct the other constants.
4063
4064 * symbols.c (resolve_symbol_value): Handle O_logical_not.
4065
4066 Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4067
4068 * config/obj-elf.c (obj_elf_section): Allow predefined section
4069 types to set the nobits type. Avoid a shadowed declaration.
4070
4071 Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
4072
4073 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
4074 reduce relocs using e_nlrsel field selectors.
4075
4076 * write.c (fix_new_exp): Don't use #elif. Some compilers
4077 don't handle it.
4078
4079 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
4080 the selector table.
4081 (pa_chk_field_selector): Handle new field selectors for SOM.
4082
4083 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4084
4085 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
4086 * configure: Rebuild.
4087 * config/te-linux.h (LOCAL_LABELS_FB): Define.
4088 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
4089 "a.out-m68k-linux".
4090 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
4091 is defined.
4092
4093 Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
4094
4095 * mpw-make.sed: Update to handle shared library support.
4096
4097 Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
4098
4099 * config/tc-sparc.c (sparc_ip): Print all architectures that support
4100 the insn on mismatch.
4101
4102 Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
4103
4104 * configure.in: Add support for a29-coff.
4105 * configure: Rebuild.
4106
4107 Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
4108
4109 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
4110 of the section when looking for the R_SH_USES fixup, because the
4111 frag addresses have not yet been adjusted.
4112
4113 * gdbinit.in: Set a breakpoint on as_warn_where.
4114
4115 * config/tc-mips.c (macro): Add missing arguments to macro_build
4116 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
4117
4118 Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
4119
4120 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
4121 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
4122
4123 Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
4124
4125 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
4126
4127 Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
4128
4129 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
4130 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
4131 Recognize [uU] format args as sparclet cpregs.
4132
4133 Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
4134
4135 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
4136 in bss_section.
4137
4138 Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
4139
4140 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
4141 well as S_IS_EXTERNAL.
4142 (tc_fix_adjustable): Likewise.
4143 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
4144 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
4145 early.
4146 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
4147 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
4148
4149 Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
4150
4151 * config/tc-sparc.c (max_architecture): Change to sparclite for
4152 32 bit arch.
4153 (default_compatible): Delete.
4154 (sparc_ffs): New function.
4155 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
4156 (sparc_ip): Rewrite architecture match and bump logic.
4157
4158 Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
4159
4160 * configure.in: Check for 'do not mix' from native linker before
4161 trying to use -rpath.
4162 * configure: Rebuild.
4163
4164 Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
4165
4166 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4167 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4168 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4169 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
4170 is set.
4171 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
4172 to the symbol lnnoptr field, to get the correct file offset.
4173
4174 Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4175
4176 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
4177 symbols that are not function, file, or section symbols to be
4178 object types.
4179
4180 Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
4181
4182 * configure: Set and substitute RPATH_ENVVAR.
4183 * configure: Rebuild.
4184 * Makefile.in (RPATH_ENVVAR): New variable.
4185 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
4186
4187 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
4188 doesn't need opcodes. If configuring shared, opcodes needs bfd.
4189 * configure: Rebuild.
4190
4191 Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
4192
4193 * read.c (s_mri_sect): Don't return '\0' in type. Set all
4194 appropriate flags in BFD section.
4195
4196 * configure.in (m68k-*-psos*): New target.
4197 * configure: Rebuild.
4198 * config/te-psos.h: New file.
4199 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
4200 is defined.
4201
4202 Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
4203
4204 From Alan Modra <alan@spri.levels.unisa.edu.au>:
4205 * configure.in: Remove duplicate setting of cpu_type. Check
4206 whether opcodes library is required for on all targets, not just
4207 primary one.
4208 * configure: Rebuild.
4209
4210 * config/tc-mips.c (mips_big_got): New static variable.
4211 (s_extern): Don't declare.
4212 (reg_needs_delay): New static function.
4213 (macro_build): Permit GOT/CALL_HI/LO relocs.
4214 (macro_build_lui): If place is not NULL, use the number in the
4215 expression.
4216 (load_address): Handle mips_big_got case.
4217 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
4218 store macros.
4219 (OPTION_XGOT): Define.
4220 (md_longopts): Add "xgot" if OBJ_ELF.
4221 (md_parse_option): Handle -xgot.
4222 (md_show_usage): Mention -xgot.
4223 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
4224 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
4225
4226 Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4227
4228 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
4229 the byte relocation, point it to the low byte of the word.
4230
4231 Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
4232
4233 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
4234 * configure: Rebuild.
4235
4236 Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
4237
4238 * configure.in: Recognize any sparc* cpu.
4239 * configure: Regenerated.
4240
4241 Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
4242
4243 * read.c (potable): Add "mri" and ".mri".
4244 (s_mri): New function.
4245 * read.h (s_mri): Declare.
4246 * app.c (scrub_m68k_mri): New static variable.
4247 (mri_pseudo): New static variable.
4248 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
4249 flag_m68k_mri. Initialize scrub_m68k_mri.
4250 (mri_state, mri_last_ch): New static variables.
4251 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
4252 fields.
4253 (app_push): Save new fields.
4254 (app_pop): Restore new fields.
4255 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
4256 If TC_M68K, use a trivial state machine to look for occurrences of
4257 the .mri pseudo-op, and change the mode appropriately.
4258 * as.h (do_scrub_begin): Update prototype.
4259 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
4260 do_scrub_begin.
4261 * config/tc-m68k.c (reg_prefix_optional_seen): New static
4262 variable.
4263 (m68k_mri_mode_change): New function.
4264 (md_parse_option): Set reg_prefix_optional_seen.
4265 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
4266 (MRI_MODE_CHANGE): Define.
4267 * doc/as.texinfo: Document .mri pseudo-op.
4268
4269 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
4270 comment character.
4271
4272 Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4273
4274 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
4275 * config/m68k-parse.h (enum pic_relocation): Define.
4276 (struct m68k_exp): Add pic_reloc field.
4277 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
4278 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
4279 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
4280 otherwise.
4281 * config/tc-m68k.c: Delete definition of NO_RELOC.
4282 (struct m68k_it): Add pic_reloc field.
4283 (add_fix): Copy over pic_reloc field.
4284 (md_pseudo_table): Interpret .align parameter as byte count.
4285 (mote_pseudo_table): Likewise.
4286 (tc_m68k_fix_adjustable): New function.
4287 (get_reloc_code): New function.
4288 (md_assemble): Use it as last argument to fix_new_exp.
4289 (md_apply_fix_2): For a relocation against a symbol don't put the
4290 addend into the data.
4291 (tc_gen_reloc): Different addend computation for OBJ_ELF.
4292 (m68k_ip): Don't relax an operand that requires pic relocation.
4293 (md_begin): Align .text, .data and .bss on 4 byte boundary by
4294 default.
4295 * write.c (fixup_segment): Don't add symbol value to addend if
4296 TC_M68K and OBJ_ELF.
4297 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
4298 (motorola_operand): Add rule for `(zapc, EXPR)'.
4299
4300 Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
4301
4302 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
4303 *really* is permissible before the comma.
4304
4305 Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
4306
4307 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
4308 inserting nop instructions.
4309
4310 Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
4311
4312 * config/te-aux.h: Change include of aux.h to aux-coff.h.
4313
4314 Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
4315
4316 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
4317 class setting for a CALLNAME symbol in COFF.
4318
4319 * read.c (potable): Pass negative numbers for new .balign[wl] and
4320 .p2align[wl] pseudo-ops.
4321 (s_align_bytes): Treat a negative argument as specifying the fill
4322 length.
4323 (s_align_ptwo): Likewise.
4324
4325 Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
4326
4327 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
4328 (do_align): Take new len parameter. Change all callers. Pass it
4329 to md_do_align.
4330 (s_align_bytes): Arg now indicates the length of the fill pattern.
4331 (s_align_ptwo): Likewise.
4332 * config/obj-coff.c (write_object_file): Pass length to
4333 md_do_align.
4334 * config/tc-i386.h (md_do_align): Take new len parameter.
4335 * config/tc-m88k.h (md_do_align): Likewise.
4336 * config/tc-m88k.c (m88k_do_align): Likewise.
4337 * config/tc-sh.h (md_do_align): Likewise.
4338 * config/tc-sh.c (sh_do_align): Likewise.
4339 * doc/as.texinfo: Document new pseudo-ops.
4340
4341 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
4342 done in cvt_frag_to_fill.
4343
4344 * config/tc-sh.h (sh_do_align): Declare.
4345 (md_do_align): Define.
4346 * config/tc-sh.c (sh_do_align): New function.
4347
4348 * ecoff.c (ecoff_build_lineno): Don't try to store the address
4349 difference if the next address is before the current one.
4350
4351 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
4352 (archs): Initialize new field.
4353 (m68k_ip): Don't list alias names when listing CPUs which support
4354 an instruction.
4355
4356 * as.c (main): Call parse_args before read_begin.
4357 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
4358 front of generated pseudo-ops.
4359 * read.c (potable): Ignore "name".
4360 (s_app_file): Permit a single quote after the string, since one
4361 may appear in m68k MRI mode.
4362
4363 * configure.in: Check for --enable-shared. If linking against
4364 shared BFD and opcodes, fix library name on SunOS, and try to set
4365 -rpath reasonably.
4366 * configure: Rebuild.
4367
4368 Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
4369
4370 * as.h (flag_m68k_mri): Declare.
4371 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
4372 * Many files: For MRI syntax that is specific to the m68k MRI
4373 assembler, check flag_m68k_mri rather than flag_mri or
4374 MRI_MODE_NEEDS_PSEUDO_DOT.
4375
4376 Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
4377
4378 * config/tc-i960.c (ARCH_HX): Define.
4379 (arch_tab): Add HX.
4380 (targ_has_sfr): Handle ARCH_HX.
4381 (targ_has_iclass): Handle ARCH_HX.
4382 (tc_coff_fix2rtype): Add return 0 to avoid warning.
4383 (tc_headers_hook): If the architecture was specified explicitly,
4384 use it when setting the flags. Set the extern variable coff_flags
4385 rather than headers->filehdr.f_flags, since the latter is set
4386 unconditionally in obj-coff.c.
4387 (i960_handle_align): Remove unused variable fixp.
4388
4389 Support for building bfd and opcodes as shared libraries, based on
4390 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
4391 * configure.in: Set OPCODES and BFD to search directories.
4392 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
4393 * configure: Rebuild.
4394 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
4395 (LIBDEPS): New variable.
4396 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
4397 $(HLDFLAGS) in link.
4398 (check): Set LD_LIBRARY_PATH in the environment.
4399
4400 Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4401
4402 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
4403 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
4404 read-only, not read/write.
4405
4406 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
4407
4408 * Makefile.in (INSTALL_XFORM): Remove -e.
4409
4410 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
4411
4412 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
4413 than comparing S_GET_SEGMENT to undefined_section.
4414 (write_object_file): Skip symbols which were equated to an
4415 undefined or common symbol.
4416 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
4417 S_IS_COMMON rather than comparing S_GET_SEGMENT to
4418 undefined_section.
4419 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
4420 or S_IS_COMMON call S_GET_VALUE.
4421 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
4422 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
4423 to an undefined or common symbol, convert the reloc to be against
4424 the target symbol.
4425 (obj_crawl_symbol_chain): Skip symbols which were equated to an
4426 undefined or common symbol.
4427 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
4428 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
4429 to an undefined or common symbol, convert the reloc to be against
4430 the target symbol.
4431 (obj_crawl_symbol_chain): Skip symbols which were equated to an
4432 undefined or common symbol.
4433 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
4434 S_IS_COMMON rather than comparing S_GET_SEGMENT to
4435 undefined_section.
4436 (yank_symbols): Skip symbols which were equated to an undefined or
4437 common symbol.
4438
4439 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
4440
4441 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
4442 * config/obj-bout.h (S_IS_LOCAL): Likewise.
4443
4444 * configure.in: Make sure we only add m68k-parse.o to
4445 ${extra_objects} once, no matter how many m68k targets have been
4446 enabled.
4447 * configure: Rebuild.
4448
4449 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
4450
4451 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
4452 * configure: Rebuild.
4453
4454 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
4455
4456 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
4457 * doc/c-m68k.texi: Document .extend and .ldouble.
4458
4459 * configure.in (m68*-apple-aux*): New target.
4460 * config/te-aux.h: New file.
4461 * config/obj-coff.c (compare_external_relocs): New static function
4462 if TE_AUX.
4463 (do_relocs_for): Sort relocs if TE_AUX.
4464 (fixup_segment): If TE_AUX, store common symbol value in segment.
4465 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
4466
4467 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
4468
4469 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
4470
4471 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
4472 BSF_FUNCTION.
4473 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
4474 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
4475 symbol.
4476 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
4477 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
4478 an undefined symbol and the size of a function symbol.
4479 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
4480 for all common symbols.
4481
4482 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
4483
4484 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
4485 scaling of index.
4486
4487 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
4488 m68k.
4489
4490 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
4491
4492 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
4493 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
4494
4495 * ecoff.c (localsym_t): Add addend field.
4496 (add_ecoff_symbol): Add addend argument. Change all callers.
4497 (coff_sym_value): Make static.
4498 (coff_sym_addend): New static variable.
4499 (ecoff_directive_def): Initialize coff_sym_addend.
4500 (ecoff_directive_val): Accept symbol + constant.
4501 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
4502 (ecoff_build_symbols): Include the addend in the symbol value.
4503
4504 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
4505
4506 * config/tc-ppc.c (md_assemble): Ignore overflow on
4507 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
4508
4509 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4510
4511 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
4512 bytes in size, so offset appropriately in big endian mode when
4513 writing the bottom 2 bytes.
4514
4515 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
4516
4517 * config/tc-sparc.c (default_compatible): New static local.
4518 (md_begin): Initialize it. Rewrite warn_on_bump handling.
4519 (sparc_ip): If no architecture or -bump specified, don't mark as
4520 mismatched those in default_compatible.
4521
4522 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
4523
4524 SCO ELF support from Robert Lipe <robertl@arnet.com>:
4525 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
4526 * configure: Rebuild.
4527 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
4528 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
4529 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
4530 (sco_id): Declare if SCO_ELF.
4531
4532 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
4533
4534 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
4535 ({max,warn_after}_architecture): New static locals.
4536 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
4537 If both architecture and -bump requested, set max_architecture to max.
4538 (sparc_md_end): Simplify.
4539 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
4540 Rewrite code to bump architecture and check for conflicts.
4541 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
4542 with Solaris assembler.
4543 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
4544 (md_show_usage): Update.
4545
4546 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
4547
4548 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
4549
4550 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
4551
4552 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
4553 #ifdef sparcv9 when choosing value.
4554 (ENV64): Delete.
4555 (md_end): Define.
4556 (sparc_md_end): Declare.
4557 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
4558 (initial_architecture): New static local.
4559 (can_bump_v9_p): Likewise.
4560 (NO_V9): Delete all occurrences.
4561 (sparc_md_end): New function.
4562 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
4563 Don't bump architecture to v9 unless can_bump_v9_p set.
4564 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
4565 * configure.in (sparc64 target cpu): Don't set obj_format here.
4566 (SPARC_V9): Renamed from sparcv9.
4567 (sparc64-*-elf*): Define SPARC_ARCH64.
4568 * configure: Regenerated.
4569 * acconfig.h (SPARC_V9): Renamed from sparcv9.
4570 (SPARC_ARCH64): Add.
4571 * conf.in: Regenerated.
4572 * config/vmsconf.h: Update.
4573
4574 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
4575
4576 * config/tc-mips.c (load_register): Optimise "dli" loads.
4577 (md_show_usage): add "-mcpu=vr4100" to help text.
4578
4579 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
4580
4581 * symbols.c (resolve_symbol_value): If a symbol is equated to an
4582 undefined symbol, preserve the X_op of O_symbol.
4583 (S_GET_VALUE): Fix check to permit this case.
4584 * write.c (write_relocs): If a reloc is against an undefined
4585 symbol equated to another symbol, change the reloc to be against
4586 the latter symbol.
4587 * config/obj-coff.c (do_relocs_for): Likewise.
4588
4589 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
4590 XMC_PR.
4591
4592 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4593
4594 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
4595 computer is PowerPC.
4596
4597 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
4598
4599 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
4600 mentioned in the eabi.
4601
4602 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
4603
4604 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
4605 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
4606
4607 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4608
4609 * config/tc-ppc.c (mapping): Add more relocation suffixes.
4610
4611 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4612
4613 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
4614 as a section it is ok to have unadorned -mrelocatable pointers in.
4615
4616 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4617
4618 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
4619 #ifdef OBJ_ELF.
4620
4621 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4622
4623 * config/obj-elf.c (obj_elf_section): Add hooks so machine
4624 dependent section attributes can be handled.
4625
4626 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
4627 macros to add support for exclude section flag and ordered section
4628 type.
4629
4630 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
4631 functions to add support for exclude section flag and ordered
4632 section type.
4633
4634 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
4635
4636 * subsegs.c (section_symbol): Don't try to look up the section
4637 symbol in the hash table. It should be possible to have a symbol
4638 with the same name as a section, but no connection to it.
4639
4640 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
4641 From James Carlson <carlson@xylogics.com>.
4642
4643 * expr.c (operand): Skip whitespace after a close parenthesis.
4644 From James Carlson <carlson@xylogics.com>.
4645
4646 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
4647
4648 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
4649 as_warn_where for relocation overflow.
4650 (parse_reg): Accept register name only if next character is
4651 not alphanumeric.
4652
4653 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
4654
4655 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
4656 addresses for static variables.
4657
4658 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4659
4660 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
4661 and xgot give the old toc16 relocation.
4662 (md_apply_fix3): Support all GOT relocations.
4663
4664 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
4665
4666 * config/tc-mips.c (load_address): Correctly handle a constant in
4667 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
4668
4669 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
4670
4671 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
4672 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
4673 (build_Mbytes): Handle REG_B.
4674
4675 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
4676
4677 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
4678
4679 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
4680
4681 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
4682
4683 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
4684
4685 * config/obj-coff.c (write_object_file): Set the s_align field to
4686 the number of bytes, rather than to the power of 2.
4687
4688 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
4689
4690 * Makefile.in (DISTCLEAN_HERE): New variable.
4691 (distclean): Use it.
4692 (maintainer-clean): Depend upon clean-here rather than clean,
4693 distclean, and clean-info. Run make maintainer-clean in doc.
4694 Remove files listed in DISTCLEAN_HERE.
4695 * doc/Makefile.in (maintainer-clean realclean): Split out from
4696 distclean. Depend upon clean-info and distclean.
4697
4698 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
4699
4700 * mac-as.r: Fix copyright and version strings.
4701 (cfrg): Use PROG_NAME instead of literal name.
4702
4703 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
4704
4705 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
4706 call it.
4707 * config/tc-a29k.h (tc_unrecognized_line): Define.
4708 * config/tc-a29k.c (a29k_unrecognized_line): New function.
4709 (md_operand): Handle a29k style local dollar labels.
4710
4711 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
4712
4713 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
4714
4715 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
4716
4717 * read.c (s_fill): If md_flush_pending_output is defined, call
4718 it.
4719
4720 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
4721
4722 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
4723 Treat rs_align_code like rs_align.
4724
4725 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
4726
4727 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
4728 converting an absolute address into a PC-relative one.
4729
4730 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
4731
4732 * mpw-config.in: Don't always use te-generic.h for emulation.
4733 (powerpc-apple-macos): Use emulation te-macos.h.
4734 start-sanitize-gm
4735 (mips-gm-magic): New configuration.
4736 end-sanitize-gm
4737 * mpw-make.sed (install, install-only): Edit in Mac-specific
4738 install procedure.
4739
4740 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
4741
4742 * configure.in: Improve message about unsupported ELF targets.
4743 * configure: Rebuild.
4744
4745 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
4746 pattern is zero. From Manfred Hollstein.
4747
4748 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
4749
4750 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
4751 the various idata sections, we check the name on the .section pseudo.
4752
4753 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4754
4755 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
4756 add section's paddr to add_number; compatibility to native as and
4757 ld forbids.
4758
4759 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
4760
4761 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
4762
4763 * hash.c (struct hash_entry): Moved here...
4764 * hash.h (struct hash_entry): ...from here.
4765
4766 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
4767 if it's already known to be null.
4768
4769 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4770
4771 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
4772 bit relocs converted to PC relative relocs. This turned out to
4773 add the offset from the beginning of .text twice.
4774
4775 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
4776
4777 * stabs.c (s_stab_generic): In 's' case, free string from
4778 obstack.
4779
4780 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
4781 sy_name_offset.
4782 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
4783 Ditto.
4784
4785 * subsegs.h (segment_info_type): Make bitfields unsigned.
4786
4787 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
4788 and move them together. On most systems this will reduce the
4789 structure size by one word.
4790 (operatorT): Define O_max.
4791 * expr.c (expr_begin): Verify that X_op is wide enough to hold
4792 O_max.
4793
4794 * read.c (pop_insert): Print error returned by hash table
4795 insertion code.
4796
4797 * as.c (dump_statistics): Split out from main; dump some hash
4798 table stats and target-specific stats.
4799 (start_time): No longer automatic to main.
4800 (main): Set file-level start_time and call dump_statistics at
4801 exit. Exit by calling xexit.
4802 (show_usage): Make --statistics description less specific.
4803 * subsegs.c (subsegs_print_statistics): New function.
4804 * write.c (write_print_statistics): New function.
4805 (n_fixups): New static variable.
4806 (fix_new_internal): Increment it.
4807 * read.c (read_print_statistics): New function.
4808 * read.h (read_print_statistics): Declare.
4809 * symbol.c (symbol_print_statistics): New function.
4810 * symbol.h (symbol_print_statistics): Declare.
4811 * hash.c (hash_print_statistics): New function.
4812 * hash.h (hash_print_statistics): Declare.
4813 * config/tc-i386.c (i386_print_statistics): New function.
4814 * config/tc-i386.h (i386_print_statistics): Declare.
4815 (tc_print_statistics): New macro.
4816 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
4817 exit.
4818
4819 * hash.c (DELETED): Rewrite to use a valid but unique address.
4820 (START_POWER): Reduce to 10.
4821 (enum stat_enum): New enumerator, replacing STAT_* index macros.
4822 Add new values for counting strcmp calls.
4823 (GROW_FACTOR): New macro.
4824 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
4825 of nesting blocks.
4826 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
4827 (hash_new): Use FULL_VALUE.
4828 (struct hash_control): Definition moved here.
4829 (hash_code): Don't mask to low bits.
4830 (hash_ask): Mask returned hash code here. Check hash value before
4831 calling strcmp; count strcmp calls.
4832 * hash.h (struct hash_control): Declare, don't define, here.
4833 (HASH_STATLENGTH): Deleted.
4834 (struct hash_entry): Add field for hash code.
4835 (hash_say, hash_apply): Don't declare.
4836
4837 * hash.c (destroy): Return void.
4838 (applicatee): Ditto.
4839 (main): Fix declarations.
4840 (hash_apply): Return void. Argument `function' returns void. Put
4841 inside "#ifdef TEST".
4842 (hash_say): Define only if TEST is defined.
4843 * hash.h (hash_apply, hash_say): Declarations deleted.
4844
4845 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
4846
4847 * configure: Rebuild with autoconf 2.7.
4848
4849 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
4850
4851 * aclocal.m4 (AC_PROG_CC): Remove local definition.
4852 * configure: Rebuild with autoconf 2.6.
4853
4854 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
4855
4856 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
4857 (ppc_stabx): Don't increment ppc_debug_name_section_size.
4858 (ppc_bc): Likewise.
4859 (ppc_frob_file): Remove.
4860 * config/tc-ppc.h (tc_frob_file): Don't define.
4861 (ppc_frob_file): Don't declare.
4862
4863 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
4864
4865 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
4866 * config/alpha-opcode.h: Include one-operand variants of jmp and
4867 jsr.
4868
4869 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
4870 with te-delta.h in 8.3 file systems.
4871 * configure.in: Adjusted.
4872
4873 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
4874
4875 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
4876
4877 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
4878 number.
4879 * expr.c (operand): Handle MRI suffixes after unadorned 0.
4880
4881 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
4882
4883 Version 2.6 released.
4884 * Makefile.in (VERSION): Updated to 2.6.
4885
4886 * config/obj-coff.c (write_object_file): Change use of md_do_align
4887 to pass a pointer rather than a fill value, to match other uses.
4888
4889 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
4890
4891 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
4892
4893 * as.c (main): Move md_end call to just after call to
4894 perform_an_assembly_pass. Delete cpu-specific code here.
4895 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
4896 * config/tc-arm.c (md_end): Unused function deleted.
4897 * config/tc-ns32k.c (md_end): Ditto.
4898
4899 * config/tc-i386.c (i386_align_code): New function, moved here
4900 from HANDLE_ALIGN macro.
4901 * config/tc-i386.h (HANDLE_ALIGN): Call it.
4902
4903 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
4904
4905 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
4906 before comparing
4907
4908 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
4909
4910 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
4911 multi-byte nops to avoid changing gcc. The necessary gcc change
4912 might break old assemblers.
4913
4914 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
4915
4916 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
4917 generate optimal multi-byte nop instructions for ".align n"
4918 ".align n,0x90", and aligns requiring more than 15 bytes of
4919 padding still generate multiple 0x90's as before.
4920
4921 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
4922
4923 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
4924
4925 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
4926
4927 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
4928 * configure: Update.
4929 * mpw-make.sed: Reorder commands to make sed happier.
4930 * config/te-macos.h: New file.
4931 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
4932
4933 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
4934
4935 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
4936 conditional branches.
4937 (md_apply_fix): Likewise.
4938
4939 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
4940
4941 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
4942 generate a reloc which the linker will not handle correctly. Fix
4943 overflow checking--R_IREL is 18 bits, not 17.
4944
4945 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
4946
4947 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
4948 from a PC relative reloc if TC_A29K.
4949
4950 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
4951 code depends upon it.
4952
4953 * config/tc-a29k.c (md_operand): Handle $float, $double, and
4954 $extend. Based on code from Eric Freudenthal
4955 <freudenthal@nyu.edu>.
4956 * config/tc-a29k.h (LEX_DOLLAR): Define.
4957 * read.c (LEX_DOLLAR): Define if not defined.
4958 (lex_type): Use LEX_DOLLAR.
4959
4960 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
4961
4962 * configure.in (a29k-nyu-sym1): New target, just like other a29k
4963 targets.
4964
4965 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
4966
4967 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
4968
4969 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
4970
4971 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
4972 used only by "dlltool.c".
4973
4974 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
4975
4976 * config/tc-alpha.c: Undefine inline if not __GNUC__.
4977 (md_pseudo_table): Don't define "extern".
4978
4979 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
4980
4981 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
4982
4983 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
4984
4985 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
4986
4987 * macro.c (macro_expand_body): Don't warn about == with a
4988 nonexistent parameter, in case it is in a comment field.
4989
4990 * as.c (main): On TC_A29K, call macro_init with macro_alternate
4991 set to 1.
4992 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
4993 set, even if macro_alternate is set.
4994 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
4995 (sub_actual): If macro_strip_at, and kind is '@', don't look up
4996 the token unless it ended in '@'.
4997 * config/tc-a29k.c (line_separator_chars): Remove '@'.
4998 * doc/c-a29k.texi: Document macro usage on A29K.
4999
5000 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
5001
5002 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
5003 signed word.
5004 (install_operand): Likewise.
5005
5006 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
5007
5008 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
5009
5010 * configure.in (m88k-motorola-sysv*): New target.
5011 * configure: Rebuild.
5012 * config/te-delta88.h: New file.
5013 * config/obj-coff.c (write_object_file): Use md_do_align if it is
5014 defined.
5015 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
5016 (md_do_align): Define.
5017 * config/tc-m88k.c: Include "subsegs.h".
5018 (m88k_do_align): New function.
5019
5020 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
5021 (COFF_NOLOAD_PROBLEM): Define.
5022 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
5023
5024 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
5025
5026 * config/tc-i386.c (md_assemble): For a jump instruction with
5027 non-constant target, require 7 available bytes in the current
5028 frag, not 6.
5029
5030 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
5031
5032 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
5033 bfd/libelf.h.
5034
5035 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
5036
5037 * configure.in (alpha-*-linux*): Use ecoff.
5038 * configure: Rebuild.
5039 * ecoff.c (ecoff_directive_extern): New function.
5040 (ecoff_directive_weakext): New function.
5041 (ecoff_build_symbols): Handle weak symbols.
5042 (ecoff_setup_ext): Likewise.
5043 (ecoff_frob_symbol): Warn about weak common symbols.
5044 * ecoff.h (ecoff_directive_extern): Declare.
5045 (ecoff_directive_weakext): Declare.
5046 * symbols.c (S_IS_WEAK): New function.
5047 * symbols.h (S_IS_WEAK): Declare.
5048 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
5049 "weakext".
5050 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
5051 (s_extern): Remove.
5052
5053 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
5054
5055 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
5056
5057 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
5058 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
5059 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
5060 * config/obj-coff.c (coff_frob_symbol): Don't call
5061 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
5062 one. If OBJ_XCOFF, try to figure out whether the symbol is going
5063 to be dropped.
5064
5065 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
5066 (ppc_stab_symbol): New static variable.
5067 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
5068 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
5069 sy_tc.real_name to the stab string.
5070 (ppc_bc, ppc_ec): New static functions.
5071 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
5072 do anything.
5073 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
5074 suffix.
5075 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
5076 entries.
5077
5078 * input-scrub.c (input_scrub_push): Reset sb_index.
5079
5080 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
5081
5082 * listing.c (listing_newline): Don't create a frag in the absolute
5083 section.
5084
5085 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
5086
5087 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
5088 (ppc_csect): Move most of the code to ppc_change_csect, and call
5089 it.
5090 (ppc_change_csect): New static function, taken from ppc_csect.
5091 (ppc_section): New static function.
5092 (ppc_saw_abs): New static varable.
5093 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
5094 a symbol has no csect.
5095 (ppc_adjust_symtab): New function.
5096 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
5097 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
5098
5099 * write.c (write_object_file): If tc_adjust_symtab is defined,
5100 call it just before the call to obj_adjust_symtab.
5101
5102 * symbols.c (symbol_find_or_make): Change name to be const.
5103 * symbols.h (symbol_find_or_make): Update declaration.
5104
5105 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
5106
5107 * doc/as.texinfo (Align): Mention SH.
5108 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
5109 .align value.
5110 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
5111 (Z8000 Directives, even): Don't give numeric align value, instead
5112 explain behavior.
5113
5114 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
5115
5116 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
5117 instruction.
5118
5119 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
5120
5121 * Makefile.in (diststuff): Also make info.
5122 (maintainer-clean realclean): Also make clean-info.
5123
5124 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
5125
5126 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
5127 (pa_subspace): For ".nsubspa", always create a new subspace
5128 with the given attributes, even if one already exists with the
5129 same name.
5130
5131 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5132
5133 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
5134 TC_FORCE_RELOCATION, taking an additional section argument. If
5135 the section of the target symbol is not the same as the current
5136 section, always force the relocation to be used.
5137 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
5138
5139 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
5140 md_pcrel_from function, taking an additional section argument.
5141 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
5142
5143 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
5144 older TC_FORCE_RELOCATION if not defined.
5145 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
5146 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
5147 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
5148 TC_FORCE_RELOCATION.
5149
5150 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
5151
5152 * input-scrub.c (as_where): Set name to null pointer if we don't
5153 have a file name.
5154 * messages.c (identify): Only print filename if non-null.
5155 (as_show_where): Ditto, for line number too.
5156 (as_warn_internal, as_bad_internal): Ditto.
5157
5158 * input-file.c (input_file_open): If the input file can't be
5159 opened, consider it an error.
5160
5161 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
5162
5163 * config/tc-mips.c: Added mips_4100 control, and support for
5164 accepting the 4100 as a MIPS architecture variant (md_begin,
5165 macro_build, mips_ip, md_parse_option). Adding suitable
5166 command-line OPTIONs, and updating the help text (md_show_usage).
5167
5168 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
5169
5170 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
5171 BFD_ASSEMBLER is defined.
5172
5173 * Use one active frag and one obstack per frag chain:
5174 * frags.c (frags): Variable deleted.
5175 (frag_alloc): New function.
5176 (frag_grow, frag_more, frag_variant, frag_now_fix,
5177 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
5178 frags variable.
5179 (frag_new): Ditto. Verify that frch_last and frag_now match on
5180 entry and exit, and that old frag_now has non-zero type. Replace
5181 "know" uses with "assert". Use frag_alloc instead of mucking with
5182 obstack alignment.
5183 * frags.h (frags): Declaration deleted.
5184 * subsegs.h (struct frchain): Add new field frch_frag_now.
5185 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
5186 variables.
5187 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
5188 give it any stricter alignment than frchainS structures need. Do
5189 not initialize frags obstack. Set frag_now to point to
5190 dummy_obstack. Initialize absolute_frchain.
5191 (subseg_set_rest): Save and restore frag_now in frch_frag_now
5192 field of frchainS. Don't create new frags on section switch, and
5193 use frag_alloc when creating a new frag chain. For absolute
5194 section, set frchain_now to absolute_frchain. Verify that
5195 frch_last and frag_now match on entry and exit. Initialize
5196 per-chain obstack, and under gcc, set required alignment to that
5197 needed by fragS structure.
5198
5199 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
5200
5201 * stabs.c (get_stab_string_offset): Only copy input string if a
5202 fresh copy is needed, not if the section already exists.
5203 (s_stab_generic): Cache stab section name to bypass lookups, since
5204 usually it will match. Could be made faster still by changing the
5205 memory allocation rules.
5206 (s_xstab): Cache section name to bypass repeated string
5207 allocation.
5208
5209 * frags.c (frag_new): Deleted register declarations.
5210
5211 * listing.c (frag_now): Don't declare.
5212
5213 * as.c (chunksize): New variable.
5214 (debug_memory): New variable.
5215 (main): If debug_memory is set, reduce chunksize and
5216 _bfd_chunksize.
5217 * as.h (chunksize): Declare it.
5218 * read.c (read_begin): Use it.
5219
5220 * config/tc-alpha.c (md_shortopts): Include 'g'.
5221 (md_parse_option): Ignore it.
5222
5223 * Makefile.in (distclean): Remove Makefile and config.status from
5224 testsuite directory.
5225 (clean-here): Don't delete testsuite. Instead, delete only the
5226 files within it that would be generated by running tests.
5227
5228 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
5229 frag_now_fix instead of accessing obstack info directly.
5230 * config/tc-arm.c (s_ltorg): Ditto.
5231 (md_assemble): Ditto.
5232
5233 * config/tc-i386.c (md_assemble): Call frag_grow instead of
5234 obstack_room.
5235
5236 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
5237
5238 * stabs.c (aout_process_stab): Insert debug symbol into symbol
5239 chain after parsing value expression, if any, to avoid separating
5240 continued .stabs lines.
5241
5242 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
5243
5244 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
5245 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
5246
5247 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
5248
5249 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
5250 -mcom support and PPC_OPCODE_ANY for -many.
5251 (md_parse_option): Ditto.
5252 (ppc_arch): Ditto.
5253 (md_begin): For duplicate instructions, print all duplicates
5254 before aborting.
5255
5256 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
5257
5258 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
5259 common mode operation.
5260 (md_show_usage): Add -mcom to usage message.
5261
5262 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
5263
5264 * expr.c (op_rank): Add O_symbol_rva.
5265 * expr.h (operatorT): Add O_symbol_rva.
5266 * read.c (cons_worker): Set O_symbol_rva when necessary.
5267 * write.c (fix_new_exp): Understand O_symbol_rva.
5268
5269 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
5270
5271 * config/tc-mips.c: Correct s_cons arguments. From Michael
5272 Joosten <joost@ori.cadlab.de>.
5273
5274 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
5275
5276 * config/tc-ppc.c (ppc_macro): Make count unsigned.
5277 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
5278 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
5279 the fix_line field.
5280 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
5281 make non-static. Change all users.
5282 * config/obj-coff.h (coff_n_line_nos): Declare.
5283
5284 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
5285
5286 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5287
5288 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
5289
5290 * config/obj-elf.c (obj_elf_common): Convert specified byte
5291 alignment to power of two. Set size of local bss symbol.
5292
5293 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
5294
5295 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
5296
5297 * sb.c, macro.c: Decide whether to include <string.h> or
5298 <strings.h> just as as.h does.
5299
5300 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
5301
5302 * Makefile.in (site.exp): Fix setting of $srcdir.
5303
5304 * config/tc-arm.c (md_atof): Fix little-endian output.
5305 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
5306 all coff targets.
5307
5308 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
5309
5310 * doc/as.texinfo: Split out the NS32k family documentation,
5311 despite its being commented out for now.
5312 * doc/c-ns32k.texi: New file.
5313
5314 * sb.c, macro.c: Include string.h.
5315
5316 * Makefile.in (comparison): Only check *.o; we don't care if
5317 timestamps inserted by the native linker differ.
5318
5319 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
5320 if alignment stricter than 4 bytes is requested; in that case,
5321 align to a 4-byte boundary first.
5322
5323 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
5324
5325 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
5326 uninitialized" warning for `Max_Source_Offset'.
5327
5328 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
5329
5330 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
5331 qualifiers and detect errors if present.
5332 (md_assemble): Add call to parse_toc_entry. Also added some support
5333 for the [tocv] qualifier.
5334 (ppc_pe_tocd): New function to support data in the toc section.
5335
5336 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
5337
5338 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
5339 an absolute symbol.
5340
5341 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
5342
5343 * config/tc-m68k.c (isword): Accept all values from -65536 to
5344 +65535, so ~VAL will not be rejected.
5345
5346 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
5347 skip characters after the pseudo-op.
5348 (s_else): Likewise.
5349 * read.c (get_line_sb): Don't look past buffer_limit.
5350 (s_include): In MRI mode, skip characters after the file name.
5351
5352 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
5353
5354 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
5355 periods in register names.
5356
5357 For older changes see ChangeLog.1.
This page took 0.136892 seconds and 5 git commands to generate.