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