* listing.c (listing_print): Close the listing file if it is not
[binutils-gdb.git] / gas / ChangeLog
1 Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
2
3 * config/tc-mips.c (append_insn): Parenthesize
4 cop_interlocks expressions.
5
6 Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
7
8 * listing.c (listing_print): Close the listing file if it is not
9 stdout. Close the other files opened for the listing.
10
11 * config/tc-sparc.h (md_cons_align): Define.
12 (sparc_cons_align): Declare.
13 (HANDLE_ALIGN): Define.
14 (sparc_handle_align): Declare.
15 * config/tc-sparc.c (sparc_cons_align): New function.
16 (sparc_handle_align): New function.
17 * read.c (cons_worker): Call md_cons_align if it is defined.
18
19 * as.h (struct frag): Add fr_file and fr_line fields.
20 * frags.c (frag_new): Set fr_file and fr_line.
21 (frag_var): Likewise.
22 (frag_variant): Likewise.
23
24 * as.h (struct frag): Remove unused align_mask and align_offset
25 fields.
26
27 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
28 From <uddeborg@carmen.se>.
29
30 Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
31
32 * configure.in (mips-*-osf*): New target.
33 * configure: Rebuild.
34
35 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
36
37 Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
38
39 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
40 between co-processor comparisons and branches for the VR4300.
41
42 Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
43
44 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
45 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
46 (docdir): Removed.
47 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
48 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
49 includedir): Use autoconf set values.
50 (docdir): Removed.
51
52 Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
53
54 * listing.c (listing_eject): Don't do anything if listing is 0.
55 (listing_list): Likewise.
56 (listing_source_line): Likewise.
57 (listing_title): Don't save title if listing is 0.
58 (listing_source_file): Check listing rather than listing_tail.
59
60 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
61 using shared libraries.
62 * configure: Rebuild.
63
64 Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
65
66 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
67 absolute expression if a relocation type was specified.
68
69 Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
70
71 * configure.in: Add support for *-*-rtems* configurations.
72 * configure: Rebuild.
73
74 Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
75
76 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
77 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
78 opcodes library for alpha.
79 * configure: Rebuild with autoconf 2.10.
80 * config/tc-alpha.c: Substantial rewrite to add ELF support and
81 use new opcode table.
82 * config/tc-alpha.h (md_undefined_symbol): Don't define.
83 (LOCAL_LABEL): Define differently if OBJ_ELF.
84 (FAKE_LABEL_NAME): Define if OBJ_ELF.
85 * config/alpha-opcode.h: Remove.
86 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
87 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
88 include/opcode/alpha.h rather than config/alpha-opcode.h.
89
90 Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
91
92 * config/obj-aout.c (obj_emit_relocations): Give an error if the
93 relocation symbol was not resolved.
94 * config/obj-coff.c (do_relocs_for): Likewise.
95
96 * write.c (adjust_reloc_syms): Refetch the symbol section after
97 calling S_GET_VALUE, since it may have changed.
98
99 * expr.c (struct expr_symbol_line): Define.
100 (expr_symbol_lines): New static variable.
101 (make_expr_symbol): Add entry to expr_symbol_lines.
102 (expr_symbol_where): New function.
103 * expr.h: Use extern on function declarations.
104 (expr_symbol_where): Declare.
105 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
106 rather than printing the meaningless name of an expression
107 symbol.
108
109 Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
110
111 * config/tc-i386.c (md_number_to_chars): Deleted.
112 * config/tc-i386.h (md_number_to_chars): New macro.
113
114 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
115 the file.
116 (load_symbol_address, load_expression): Use build_mem.
117 (build_operate): New function.
118 (emit_addq_r): Use it.
119
120 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
121
122 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
123
124 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
125
126 * config/tc-vax.h (NOP_OPCODE): Define.
127
128 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
129
130 * config/obj-vms.h (S_IS_COMMON): Define.
131 (S_IS_LOCAL): Check for \002 as well as \001.
132 (LONGWORD_ALIGNMENT): New macro.
133 (SUB_SEGMENT_ALIGN): Use it.
134
135 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
136
137 * config/vms-conf.h: Reconcile with conf.in.
138
139 Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
140
141 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
142 defined.
143
144 * doc/as.texinfo: Document that any number of hex digits can
145 follow \x.
146
147 * as.c (struct defsym_list): Define.
148 (defsyms): New static variable.
149 (parse_args): Just put --defsym arguments on defsyms list, rather
150 than defining them.
151 (main): Define defsyms after output file is created.
152
153 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
154 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
155
156 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
157 insn_error rather than calling check_absolute_expr.
158
159 * as.c (emulation_name): Remove unused static variable.
160 (default_emul_bfd_name): Add return NULL to avoid warning.
161 * ecoff.c (ecoff_stab): Remove unused variables name and
162 name_end.
163 * frags.c (frag_new): Remove unused variable tmp.
164 * hash.c (hash_grow): Parenthesize + within <<.
165 (hash_print_statistics): Use %lu, not %d, to print unsigned
166 long variables.
167 * messages.c: Include "libiberty.h".
168 (fprint_value): Add cast to avoid printf warning.
169 (sprint_value): Likewise.
170 * read.c: Include "ecoff.h".
171 (emit_expr): Add casts to avoid printf warnings.
172 * read.h: Use extern for function declarations.
173 (pop_insert): Declare.
174 * stabs.c: Include "ecoff.h".
175 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
176 former_last_fragP, and new_fragP.
177 * subsegs.h (subsegs_print_statistics): Declare.
178 * symbols.c (debug_verify_symchain): Change macro to discard
179 arguments.
180 * write.c (dump_section_relocs): Likewise.
181 * write.h: Use extern for function declarations.
182 (write_print_statistics): Declare.
183 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
184 warning.
185 * config/e-mipself.c (mipself_bfd_name): Likewise.
186 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
187
188 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
189 emit relocations against external symbols.
190
191 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
192 message if bfd_reloc_type_lookup fails, rather than calling
193 assert.
194
195 * config/tc-alpha.c (alpha_force_relocation): Add
196 BFD_RELOC_12_PCREL to switch.
197
198 Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
199
200 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
201 TE_PE (Lfoo, not .Lfoo).
202
203 Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
204
205 * read.c (s_fill): Don't warn about a zero repeat count.
206
207 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
208 coprocessor register.
209
210 * config/tc-i386.c (md_assemble): When checking the size of a
211 register to set the size of an instruction, do a bitwise and with
212 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
213 or Reg16.
214
215 Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
216
217 * config/tc-h8300.c (parse_reg): Tweak error messages.
218 (build_bytes): Likewise.
219 (skip_colonthing): Handle :32 suffix.
220 (get_specific): Promote L_24 to L_32 if it makes a match.
221 Don't always promote L_8 to L_16.
222 (do_a_fix_imm): Clean up L_32 and L_24 handling.
223
224 start-sanitize-h8s
225 * config/tc-h8300.c (Smode): New variable.
226 (h8300hmode): Turn off Hmode.
227 (h8300smode): New function. Turn on Smode and Hmode.
228 (md_pseudo_table): New ".h8300s" pseudo-op.
229 (parse_reg): Handle "exr" register.
230 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
231 Handle "mach" and "machl" operands for ldmac.
232 (get_specific): Handle "stm.l" and "ldm.l".
233 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
234 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
235 (Smode): Declare.
236
237 end-sanitize-h8s
238 Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
239
240 * doc/as.texinfo: Reorder chapter of machine dependent options so
241 that it is sorted by chip name.
242
243 * doc/as.texinfo: Use consistant spelling of Vax.
244 * doc/c-vax.texi: Likewise.
245
246 Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
247
248 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
249 pseudo ops.
250 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
251 (md_apply_fix): Likewise.
252 (pa_try): New function.
253 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
254
255 Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
256
257 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
258 (pa_level): New function.
259
260 Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
261
262 * listing.c (listing_newline): Don't do anything if listing is 0.
263
264 Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
265
266 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
267 symbol_create, not symbol_new.
268
269 Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
270
271 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
272 absolute symbol unless TC_FORCE_RELOCATION returns true.
273
274 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
275 version.
276 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
277 the symbol to a pointer. Don't set previous_file_symbol.
278 Simplify symbol list rearrangement.
279 (coff_frob_symbol): Don't do anything with C_FILE symbols.
280 (coff_adjust_symtab): Don't check previous_file_symbol.
281
282 Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
283
284 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
285 directive.
286 (md_pseudo_table): Add ppc_elf_lcomm.
287
288 Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
289
290 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
291 d0{24:1},d0' works without an immediate prefix on the bit numbers.
292 (md_begin): Add digits to alt_notend_table.
293 (md_parse_option): Make s a const pointer.
294
295 * config/tc-sparc.c (md_pseudo_table): Add "empty".
296 (s_empty): New static function.
297
298 * config/obj-coff.c (struct filename_list): Only define if not
299 BFD_ASSEMBLER.
300 (filename_list_head, filename_list_tail): Likewise.
301 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
302 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
303 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
304 have a section of N_ABS rather than N_DEBUG. If we do a merge,
305 remove the new symbol from the list.
306 (obj_coff_endef, both versions): Call tag_insert even if there is
307 an old symbol with the same name, if the old symbol does not
308 happen to be a tag.
309 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
310 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
311 symbol that will be moved to the end of the symbol list.
312 (coff_adjust_section_syms): Always call section_symbol for .text,
313 .data, and .bss.
314 (coff_frob_section): Likewise. Also, remove unused variable
315 strname.
316
317 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
318 manipulating frags directly.
319 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
320 defined.
321
322 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
323 whether the next character is '*' before checking whether we are
324 at the start of a line. Permit LINE_COMMENT_START to start a
325 comment in state 1 (seen some whitespace) as well, to match the
326 documentation.
327
328 * gasp.c (do_align): Permit a fill value for .align.
329
330 Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
331
332 * read.c (next_char_of_string): Warn if a newline is seen in the
333 middle of a string. Call bump_line_counters when appropriate.
334
335 Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
336
337 * symbols.c (colon): Use LOCAL_LABEL.
338
339 Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
340
341 * Makefile.in (install): Don't check to see if tooldir exists.
342 Make $(tooldir) and $(tooldir)/bin.
343
344 Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
345
346 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
347 default.
348
349 Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
350
351 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
352 insn_error. Don't put the string "ERROR" in insn_error. Set
353 insn_error rather than calling as_warn for an unsupported opcode.
354
355 Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
356
357 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
358 before permitting -64.
359 * output-file.c (output_file_create): Remove duplicate
360 bfd_perror.
361
362 Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
363
364 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
365 section rather than a .reginfo section.
366 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
367 information.
368
369 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
370 bit value with the high bit set.
371
372 Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
373
374 * read.c (s_lcomm): Set section flags for .sbss section.
375
376 * config/tc-mips.c (mips_64): New static variable.
377 (mips_target_format): If mips_64, return elf64 targets rather than
378 elf32 ones.
379 (md_longopts): Add "32" and "64".
380 (md_parse_option): Handle -32 and -64.
381 (md_show_usage): Mention -32 and -64.
382 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
383 a 4 byte one.
384
385 Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
386
387 * config/tc-ppc.c (comment_chars): Make '!' a comment character
388 for Solaris compatibility.
389
390 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
391 .stabd with 4 arguments into a .stabn.
392
393 Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
394
395 * config/tc-mips.c (macro): When passing X_add_number to
396 macro_build, cast it to int first.
397
398 Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
399
400 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
401 created by emit_expr.
402
403 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
404 as_perror rather than assert.
405
406 Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
407
408 * config/tc-mips.c (mips_ip): Mark sections created to hold
409 floating point information as read only.
410
411 Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
412
413 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
414
415 Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
416
417 * read.c (potable): Add .skip as a synonym for .space.
418
419 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
420 4 arguments, providing the 4th argument is 0, to allow
421 compatibility with the Solaris assembler.
422
423 Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
424
425 * config/tc-sh.h (struct sh_segment_info_type): Define.
426 (TC_SEGMENT_INFO_TYPE): Define.
427 (sh_frob_label): Declare.
428 (tc_frob_label): Define.
429 (sh_flush_pending_output): Declare.
430 (md_flush_pending_output): Define.
431 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
432 reloc before the instruction if necessary.
433 (sh_frob_label): New function.
434 (sh_flush_pending_output): New function.
435 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
436 when looking for the reloc for the target of .uses.
437 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
438 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
439 emitted.
440 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
441 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
442 the absolute symbol.
443
444 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
445 TC_SEGMENT_INFO_TYPE is defined.
446
447 Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
448
449 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
450 matches the register size.
451
452 Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
453
454 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
455 fx_done set.
456 (do_relocs_for): Likewise.
457 (fixup_segment): Don't just quit if linkrelax is set. Try to
458 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
459 nonzero.
460
461 Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
462
463 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
464 relative relocations with -mrelocatable. Also allow unfixed
465 relocs in .ex_shared.
466
467 Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
468
469 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
470 non-zero before assuming this is a long file name.
471 (w_strings): Likewise.
472 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
473
474 * config/obj-coff.c (w_strings): Move declaration of i inside
475 #ifdef block which uses it.
476
477 Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
478
479 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
480 "relaxmode". Output relocs which identify various relaxing
481 possibilities for mov.[bwl] instructions.
482 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
483
484 Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
485
486 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
487 (MD_APPLY_FIX3): Define.
488 * config/tc-arm.c (my_get_expression): Only watch for bad segments
489 if OBJ_AOUT.
490 (md_apply_fix3): Renamed from md_apply_fix.
491 If pcrel reloc and symbol is in different section, undo effects
492 of md_pcrel_from.
493
494 Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
495
496 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
497 any reloc with an LR% or RR% field selector for SOM.
498
499 Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
500
501 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
502 variables.
503
504 Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
505
506 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
507 SF_GET_STATICS set.
508 (yank_symbols): Likewise.
509
510 Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
511
512 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
513 BFD_ASSEMBLER, add name field.
514 * config/obj-coff.c: Include "libiberty.h".
515 (coff_header_append): Handle long section names.
516 (crawl_symbols): Just use the name field for the symbol name,
517 without worrying about null byte termination.
518 (w_strings): Handle long section names.
519 (write_object_file): Likewise. Also, use the name field, rather
520 than scnhdr.s_name.
521 (obj_coff_add_segment): Permit long section names.
522 (obj_coff_init_stab_section): Use the name field, rather than
523 scnhdr.s_name.
524 (adjust_stab_section): Likewise.
525 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
526
527 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
528 (mem_fmt): Likewise.
529 (md_apply_fix): Don't check fx_im_disp field.
530
531 Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
532
533 * configure.in: Add * after sparc*-*-vxworks.
534 * configure: Rebuild.
535
536 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
537 define it to comment_chars. Use tc_comment_chars rather than
538 comment_chars.
539 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
540 * config/tc-m68k.h (tc_comment_chars): Define.
541 (m68k_comment_chars): Declare.
542 * config/tc-m68k.c (m68k_comment_chars): Rename from
543 comment_chars. Change into a pointer rather than an array.
544 (md_longopts): Add "bitwise-or".
545 (md_parse_option): Handle OPTION_BITWISE_OR.
546 (md_show_usage): Mention --bitwise-or.
547 * doc/c-m68k.texi: Document --bitwise-or.
548
549 Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
550
551 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
552 in 68000 mode.
553
554 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
555 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
556 correct handling of input line pointer, and call
557 demand_empty_rest_of_line.
558
559 Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
560
561 * config/tc-sparc.c (in_bitfield_range): New static function.
562 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
563 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
564 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
565 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
566 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
567
568 Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
569
570 * config/obj-coff.c: BFD_ASSEMBLER:
571 (coff_last_bf): New static variable.
572 (coff_frob_symbol): Set endndx of a .bf symbol.
573 Non BFD_ASSEMBLER:
574 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
575 (last_bfP): New static variable.
576 (yank_symbols): Set endndx of a .bf symbol.
577
578 Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
579
580 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
581 and -s options. Add -be for good measure.
582
583 Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
584
585 * read.c (s_space): Support non-constant fill value. Handle fill
586 value correctly for a size other than 1.
587
588 Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
589
590 * config/tc-arm.c (my_get_float_expression): Update call to
591 gen_to_words, X_PRECISION changed from 6 to 5.
592
593 Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
594
595 * config/tc-ppc.c (register_name,reg_name_search): Move register
596 name lookup from PE specific code to all targets. Add support for
597 -mregnames/-mno-regnames to control whether register names are
598 expanded or not.
599 (md_assemble): Call register_name for all platforms.
600 (md_parse_option): Add support for -mregnames/-mno-regnames.
601
602 * configure.in (powerpcle*-*-solaris): Add support.
603 (powerpc*-*-linux): Ditto.
604 * configure: Regenerate.
605
606 * config/ppc-sol.mt: New config file for PowerPC Solaris.
607
608 Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
609
610 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
611 be associated with a single %lo reloc.
612
613 * config/tc-mips.c (load_address): Cast X_add_number to valueT
614 before comparing against MAX_GPREL_OFFSET, so that negative
615 numbers are handled correctly.
616 (macro): Likewise.
617
618 Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
619
620 * config/tc-sparc.c (last_insn): New static variable.
621 (md_assemble): Warn about putting floating point branches in a
622 delay slot. If architecture is less than v9, insert NOP
623 instructions between floating point instructions and floating
624 point branches. (The SunOS assembler does both these operations.)
625 Save the last instruction opcode.
626 (sparc_ip): Add pinsn parameter. Change caller.
627
628 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
629 for byte jump to next instruction to skip empty frags.
630
631 Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
632
633 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
634 for addq with a 16 bit signed value, just emit a lda instruction
635 instead.
636
637 Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
638
639 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
640 of a 32bit operand.
641
642 Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
643
644 * configure.in: Permit --enable-shared to specify a list of
645 directories.
646 * configure: Rebuild.
647
648 Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
649
650 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
651 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
652
653 Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
654
655 * config/atof-ieee.c: Fix handling of denormalized extended
656 precision numbers and overflow/underflow detection.
657 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
658 not include the 16 bit gap in the m68k extended precision format.
659
660 Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
661
662 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
663 <jdp@polstra.com>.
664 * configure: Rebuild.
665
666 Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
667
668 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
669 be accessed using the $gp register.
670 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
671
672 Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
673
674 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
675 bfd_mach_sparc_sparclet if current_architecture is sparclet.
676
677 Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
678
679 * read.c (get_line_sb): Bump line counters based on
680 input_line_pointer[-1], not *input_line_pointer. Don't bother to
681 call LISTING_NEWLINE.
682 (s_macro): Don't call demand_empty_rest_of_line.
683 * app.c (do_scrub_chars): When handling C style comments, unget
684 ch2 rather than ch.
685
686 Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
687
688 * read.h (enum linkonce_type): Define.
689 (s_linkonce): Declare.
690 * read.c (potable): Add "linkonce".
691 (s_linkonce): New function.
692 * subsegs.h (segment_info_type): Add linkonce field to
693 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
694 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
695 (obj_coff_pe_handle_link_once): Declare if TE_PE.
696 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
697 "coff/pe.h".
698 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
699 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
700 entry based on the linkonce field in segment_info.
701 * doc/as.texinfo: Document .linkonce.
702
703 Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
704
705 * doc/as.1: Changed to be recognized by catman -w on Solaris.
706
707 Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
708
709 * stabs.c (s_stab_generic): Call the listing functions before
710 doing the rest of the processing, which may involve freeing the
711 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
712 SEPARATE_STAB_SECTIONS case.
713
714 * config/tc-hppa.c: Remove nested comment.
715 (tc_gen_reloc): Move label done inside the ifdef in which it is
716 used.
717 (md_apply_fix): Pass pointers to correct types to libhppa.h
718 functions. Always return a value.
719
720 * config/tc-mips.h (tc_frob_file): Define.
721 (mips_frob_file): Declare.
722 * config/tc-mips.c (struct mips_hi_fixup): Define.
723 (mips_hi_fixup_list): New static variable.
724 (imm_unmatched_hi): New static variable.
725 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
726 offset_reloc. Pass imm_unmatched_hi to append_insn.
727 (append_insn): Add unmatched_hi parameter. If it is set, add the
728 new fixup to mips_hi_fixup_list. Change all callers.
729 (mips_ip): Set imm_unmatched_hi when appropriate.
730 (mips_frob_file): New function.
731
732 Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
733
734 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
735 * configure: Regenerated.
736
737 Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
738
739 * as.c (main): Call bfd_set_error_program_name.
740
741 Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
742
743 * as.h (strdup): Don't declare.
744 * stabs.c: Include libiberty.h
745 (get_stab_string_offset): Use xstrdup rather than strdup.
746 (s_stab_generic): Likewise.
747 * as.c (parse_args): Likewise.
748 * read.c (s_mri_sect): Likewise.
749
750 * gasp.c (change_base): Recognize \(...) construct documented to
751 pass through enclosed characters literally through to the output.
752 (process_assigns): Likewise. Also, be more careful to avoid
753 looking past the end of the buffer.
754
755 Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
756
757 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
758 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
759
760 Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
761
762 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
763
764 Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
765
766 * config/alpha-opcode.h: Added cvtst instruction.
767
768 Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
769
770 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
771 string. Extract the addend from the result of expression.
772
773 Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
774
775 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
776 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
777 mode, change the state to 3 rather than 1.
778
779 Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
780
781 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
782 correspond to 11 March change.
783
784 Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
785
786 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
787 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
788
789 Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
790
791 * configure: Rebuild with autoconf 2.8.
792
793 Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
794
795 * config/atof-ieee.c (gen_to_words): Improve handling of
796 X_PRECISION numbers. Based on patches from Andreas Schwab
797 <schwab@issan.informatik.uni-dortmund.de>.
798
799 Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
800
801 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
802 (SEG_LAST): New.
803 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
804 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
805 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
806 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
807 SEG_E9.
808
809 Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
810
811 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
812
813 Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
814
815 * config/tc-hppa.c (SUBSEG_MILLI): Define.
816 (pa_def_subspaces): Add $MILLICODE$.
817 (pa_spaces_begin): Set section flags for $MILLICODE$.
818
819 Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
820
821 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
822 not SHT_NOBITS. Don't tamper with flags based on type if a
823 special section was found (revert Feb 29 change).
824
825 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
826 if aligning to a longword boundary or greater.
827
828 Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
829
830 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
831
832 Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
833
834 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
835 * configure: Regenerated.
836
837 Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
838
839 * config/tc-hppa.c: Add default definitions for R_N0SEL and
840 R_N1SEL since they're not defined for old versions of hpux.
841
842 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
843 Set "sym_ptr_ptr" and "addend" fields to dummy values for
844 R_N0SEL and R_N1SEL.
845
846 Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
847
848 * flonum-konst.c: Add two more constants for 1e+-2048 and
849 1e+-4096, and correct the other constants.
850
851 * symbols.c (resolve_symbol_value): Handle O_logical_not.
852
853 Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
854
855 * config/obj-elf.c (obj_elf_section): Allow predefined section
856 types to set the nobits type. Avoid a shadowed declaration.
857
858 Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
859
860 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
861 reduce relocs using e_nlrsel field selectors.
862
863 * write.c (fix_new_exp): Don't use #elif. Some compilers
864 don't handle it.
865
866 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
867 the selector table.
868 (pa_chk_field_selector): Handle new field selectors for SOM.
869
870 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
871
872 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
873 * configure: Rebuild.
874 * config/te-linux.h (LOCAL_LABELS_FB): Define.
875 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
876 "a.out-m68k-linux".
877 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
878 is defined.
879
880 Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
881
882 * mpw-make.sed: Update to handle shared library support.
883
884 Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
885
886 * config/tc-sparc.c (sparc_ip): Print all architectures that support
887 the insn on mismatch.
888
889 Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
890
891 * configure.in: Add support for a29-coff.
892 * configure: Rebuild.
893
894 Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
895
896 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
897 of the section when looking for the R_SH_USES fixup, because the
898 frag addresses have not yet been adjusted.
899
900 * gdbinit.in: Set a breakpoint on as_warn_where.
901
902 * config/tc-mips.c (macro): Add missing arguments to macro_build
903 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
904
905 Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
906
907 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
908 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
909
910 Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
911
912 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
913
914 Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
915
916 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
917 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
918 Recognize [uU] format args as sparclet cpregs.
919
920 Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
921
922 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
923 in bss_section.
924
925 Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
926
927 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
928 well as S_IS_EXTERNAL.
929 (tc_fix_adjustable): Likewise.
930 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
931 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
932 early.
933 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
934 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
935
936 Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
937
938 * config/tc-sparc.c (max_architecture): Change to sparclite for
939 32 bit arch.
940 (default_compatible): Delete.
941 (sparc_ffs): New function.
942 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
943 (sparc_ip): Rewrite architecture match and bump logic.
944
945 Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
946
947 * configure.in: Check for 'do not mix' from native linker before
948 trying to use -rpath.
949 * configure: Rebuild.
950
951 Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
952
953 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
954 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
955 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
956 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
957 is set.
958 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
959 to the symbol lnnoptr field, to get the correct file offset.
960
961 Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
962
963 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
964 symbols that are not function, file, or section symbols to be
965 object types.
966
967 Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
968
969 * configure: Set and substitute RPATH_ENVVAR.
970 * configure: Rebuild.
971 * Makefile.in (RPATH_ENVVAR): New variable.
972 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
973
974 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
975 doesn't need opcodes. If configuring shared, opcodes needs bfd.
976 * configure: Rebuild.
977
978 Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
979
980 * read.c (s_mri_sect): Don't return '\0' in type. Set all
981 appropriate flags in BFD section.
982
983 * configure.in (m68k-*-psos*): New target.
984 * configure: Rebuild.
985 * config/te-psos.h: New file.
986 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
987 is defined.
988
989 Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
990
991 From Alan Modra <alan@spri.levels.unisa.edu.au>:
992 * configure.in: Remove duplicate setting of cpu_type. Check
993 whether opcodes library is required for on all targets, not just
994 primary one.
995 * configure: Rebuild.
996
997 * config/tc-mips.c (mips_big_got): New static variable.
998 (s_extern): Don't declare.
999 (reg_needs_delay): New static function.
1000 (macro_build): Permit GOT/CALL_HI/LO relocs.
1001 (macro_build_lui): If place is not NULL, use the number in the
1002 expression.
1003 (load_address): Handle mips_big_got case.
1004 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
1005 store macros.
1006 (OPTION_XGOT): Define.
1007 (md_longopts): Add "xgot" if OBJ_ELF.
1008 (md_parse_option): Handle -xgot.
1009 (md_show_usage): Mention -xgot.
1010 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
1011 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
1012
1013 Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1014
1015 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
1016 the byte relocation, point it to the low byte of the word.
1017
1018 Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
1019
1020 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
1021 * configure: Rebuild.
1022
1023 Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
1024
1025 * configure.in: Recognize any sparc* cpu.
1026 * configure: Regenerated.
1027
1028 Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
1029
1030 * read.c (potable): Add "mri" and ".mri".
1031 (s_mri): New function.
1032 * read.h (s_mri): Declare.
1033 * app.c (scrub_m68k_mri): New static variable.
1034 (mri_pseudo): New static variable.
1035 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
1036 flag_m68k_mri. Initialize scrub_m68k_mri.
1037 (mri_state, mri_last_ch): New static variables.
1038 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
1039 fields.
1040 (app_push): Save new fields.
1041 (app_pop): Restore new fields.
1042 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
1043 If TC_M68K, use a trivial state machine to look for occurrences of
1044 the .mri pseudo-op, and change the mode appropriately.
1045 * as.h (do_scrub_begin): Update prototype.
1046 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
1047 do_scrub_begin.
1048 * config/tc-m68k.c (reg_prefix_optional_seen): New static
1049 variable.
1050 (m68k_mri_mode_change): New function.
1051 (md_parse_option): Set reg_prefix_optional_seen.
1052 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
1053 (MRI_MODE_CHANGE): Define.
1054 * doc/as.texinfo: Document .mri pseudo-op.
1055
1056 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
1057 comment character.
1058
1059 Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1060
1061 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
1062 * config/m68k-parse.h (enum pic_relocation): Define.
1063 (struct m68k_exp): Add pic_reloc field.
1064 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
1065 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
1066 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
1067 otherwise.
1068 * config/tc-m68k.c: Delete definition of NO_RELOC.
1069 (struct m68k_it): Add pic_reloc field.
1070 (add_fix): Copy over pic_reloc field.
1071 (md_pseudo_table): Interpret .align parameter as byte count.
1072 (mote_pseudo_table): Likewise.
1073 (tc_m68k_fix_adjustable): New function.
1074 (get_reloc_code): New function.
1075 (md_assemble): Use it as last argument to fix_new_exp.
1076 (md_apply_fix_2): For a relocation against a symbol don't put the
1077 addend into the data.
1078 (tc_gen_reloc): Different addend computation for OBJ_ELF.
1079 (m68k_ip): Don't relax an operand that requires pic relocation.
1080 (md_begin): Align .text, .data and .bss on 4 byte boundary by
1081 default.
1082 * write.c (fixup_segment): Don't add symbol value to addend if
1083 TC_M68K and OBJ_ELF.
1084 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
1085 (motorola_operand): Add rule for `(zapc, EXPR)'.
1086
1087 Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
1088
1089 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
1090 *really* is permissible before the comma.
1091
1092 Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
1093
1094 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
1095 inserting nop instructions.
1096
1097 Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
1098
1099 * config/te-aux.h: Change include of aux.h to aux-coff.h.
1100
1101 Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
1102
1103 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
1104 class setting for a CALLNAME symbol in COFF.
1105
1106 * read.c (potable): Pass negative numbers for new .balign[wl] and
1107 .p2align[wl] pseudo-ops.
1108 (s_align_bytes): Treat a negative argument as specifying the fill
1109 length.
1110 (s_align_ptwo): Likewise.
1111
1112 Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
1113
1114 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
1115 (do_align): Take new len parameter. Change all callers. Pass it
1116 to md_do_align.
1117 (s_align_bytes): Arg now indicates the length of the fill pattern.
1118 (s_align_ptwo): Likewise.
1119 * config/obj-coff.c (write_object_file): Pass length to
1120 md_do_align.
1121 * config/tc-i386.h (md_do_align): Take new len parameter.
1122 * config/tc-m88k.h (md_do_align): Likewise.
1123 * config/tc-m88k.c (m88k_do_align): Likewise.
1124 * config/tc-sh.h (md_do_align): Likewise.
1125 * config/tc-sh.c (sh_do_align): Likewise.
1126 * doc/as.texinfo: Document new pseudo-ops.
1127
1128 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
1129 done in cvt_frag_to_fill.
1130
1131 * config/tc-sh.h (sh_do_align): Declare.
1132 (md_do_align): Define.
1133 * config/tc-sh.c (sh_do_align): New function.
1134
1135 * ecoff.c (ecoff_build_lineno): Don't try to store the address
1136 difference if the next address is before the current one.
1137
1138 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
1139 (archs): Initialize new field.
1140 (m68k_ip): Don't list alias names when listing CPUs which support
1141 an instruction.
1142
1143 * as.c (main): Call parse_args before read_begin.
1144 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
1145 front of generated pseudo-ops.
1146 * read.c (potable): Ignore "name".
1147 (s_app_file): Permit a single quote after the string, since one
1148 may appear in m68k MRI mode.
1149
1150 * configure.in: Check for --enable-shared. If linking against
1151 shared BFD and opcodes, fix library name on SunOS, and try to set
1152 -rpath reasonably.
1153 * configure: Rebuild.
1154
1155 Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
1156
1157 * as.h (flag_m68k_mri): Declare.
1158 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
1159 * Many files: For MRI syntax that is specific to the m68k MRI
1160 assembler, check flag_m68k_mri rather than flag_mri or
1161 MRI_MODE_NEEDS_PSEUDO_DOT.
1162
1163 Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
1164
1165 * config/tc-i960.c (ARCH_HX): Define.
1166 (arch_tab): Add HX.
1167 (targ_has_sfr): Handle ARCH_HX.
1168 (targ_has_iclass): Handle ARCH_HX.
1169 (tc_coff_fix2rtype): Add return 0 to avoid warning.
1170 (tc_headers_hook): If the architecture was specified explicitly,
1171 use it when setting the flags. Set the extern variable coff_flags
1172 rather than headers->filehdr.f_flags, since the latter is set
1173 unconditionally in obj-coff.c.
1174 (i960_handle_align): Remove unused variable fixp.
1175
1176 Support for building bfd and opcodes as shared libraries, based on
1177 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
1178 * configure.in: Set OPCODES and BFD to search directories.
1179 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
1180 * configure: Rebuild.
1181 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
1182 (LIBDEPS): New variable.
1183 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
1184 $(HLDFLAGS) in link.
1185 (check): Set LD_LIBRARY_PATH in the environment.
1186
1187 Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
1188
1189 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
1190 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
1191 read-only, not read/write.
1192
1193 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
1194
1195 * Makefile.in (INSTALL_XFORM): Remove -e.
1196
1197 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
1198
1199 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
1200 than comparing S_GET_SEGMENT to undefined_section.
1201 (write_object_file): Skip symbols which were equated to an
1202 undefined or common symbol.
1203 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
1204 S_IS_COMMON rather than comparing S_GET_SEGMENT to
1205 undefined_section.
1206 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
1207 or S_IS_COMMON call S_GET_VALUE.
1208 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
1209 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
1210 to an undefined or common symbol, convert the reloc to be against
1211 the target symbol.
1212 (obj_crawl_symbol_chain): Skip symbols which were equated to an
1213 undefined or common symbol.
1214 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
1215 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
1216 to an undefined or common symbol, convert the reloc to be against
1217 the target symbol.
1218 (obj_crawl_symbol_chain): Skip symbols which were equated to an
1219 undefined or common symbol.
1220 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
1221 S_IS_COMMON rather than comparing S_GET_SEGMENT to
1222 undefined_section.
1223 (yank_symbols): Skip symbols which were equated to an undefined or
1224 common symbol.
1225
1226 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
1227
1228 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
1229 * config/obj-bout.h (S_IS_LOCAL): Likewise.
1230
1231 * configure.in: Make sure we only add m68k-parse.o to
1232 ${extra_objects} once, no matter how many m68k targets have been
1233 enabled.
1234 * configure: Rebuild.
1235
1236 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
1237
1238 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
1239 * configure: Rebuild.
1240
1241 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
1242
1243 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
1244 * doc/c-m68k.texi: Document .extend and .ldouble.
1245
1246 * configure.in (m68*-apple-aux*): New target.
1247 * config/te-aux.h: New file.
1248 * config/obj-coff.c (compare_external_relocs): New static function
1249 if TE_AUX.
1250 (do_relocs_for): Sort relocs if TE_AUX.
1251 (fixup_segment): If TE_AUX, store common symbol value in segment.
1252 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
1253
1254 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
1255
1256 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
1257
1258 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
1259 BSF_FUNCTION.
1260 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
1261 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
1262 symbol.
1263 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
1264 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
1265 an undefined symbol and the size of a function symbol.
1266 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
1267 for all common symbols.
1268
1269 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
1270
1271 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
1272 scaling of index.
1273
1274 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
1275 m68k.
1276
1277 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
1278
1279 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
1280 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
1281
1282 * ecoff.c (localsym_t): Add addend field.
1283 (add_ecoff_symbol): Add addend argument. Change all callers.
1284 (coff_sym_value): Make static.
1285 (coff_sym_addend): New static variable.
1286 (ecoff_directive_def): Initialize coff_sym_addend.
1287 (ecoff_directive_val): Accept symbol + constant.
1288 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
1289 (ecoff_build_symbols): Include the addend in the symbol value.
1290
1291 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
1292
1293 * config/tc-ppc.c (md_assemble): Ignore overflow on
1294 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
1295
1296 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1297
1298 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
1299 bytes in size, so offset appropriately in big endian mode when
1300 writing the bottom 2 bytes.
1301
1302 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
1303
1304 * config/tc-sparc.c (default_compatible): New static local.
1305 (md_begin): Initialize it. Rewrite warn_on_bump handling.
1306 (sparc_ip): If no architecture or -bump specified, don't mark as
1307 mismatched those in default_compatible.
1308
1309 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
1310
1311 SCO ELF support from Robert Lipe <robertl@arnet.com>:
1312 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
1313 * configure: Rebuild.
1314 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
1315 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
1316 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
1317 (sco_id): Declare if SCO_ELF.
1318
1319 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
1320
1321 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
1322 ({max,warn_after}_architecture): New static locals.
1323 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
1324 If both architecture and -bump requested, set max_architecture to max.
1325 (sparc_md_end): Simplify.
1326 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
1327 Rewrite code to bump architecture and check for conflicts.
1328 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
1329 with Solaris assembler.
1330 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
1331 (md_show_usage): Update.
1332
1333 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
1334
1335 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
1336
1337 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
1338
1339 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
1340 #ifdef sparcv9 when choosing value.
1341 (ENV64): Delete.
1342 (md_end): Define.
1343 (sparc_md_end): Declare.
1344 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
1345 (initial_architecture): New static local.
1346 (can_bump_v9_p): Likewise.
1347 (NO_V9): Delete all occurrences.
1348 (sparc_md_end): New function.
1349 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
1350 Don't bump architecture to v9 unless can_bump_v9_p set.
1351 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
1352 * configure.in (sparc64 target cpu): Don't set obj_format here.
1353 (SPARC_V9): Renamed from sparcv9.
1354 (sparc64-*-elf*): Define SPARC_ARCH64.
1355 * configure: Regenerated.
1356 * acconfig.h (SPARC_V9): Renamed from sparcv9.
1357 (SPARC_ARCH64): Add.
1358 * conf.in: Regenerated.
1359 * config/vmsconf.h: Update.
1360
1361 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
1362
1363 * config/tc-mips.c (load_register): Optimise "dli" loads.
1364 (md_show_usage): add "-mcpu=vr4100" to help text.
1365
1366 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
1367
1368 * symbols.c (resolve_symbol_value): If a symbol is equated to an
1369 undefined symbol, preserve the X_op of O_symbol.
1370 (S_GET_VALUE): Fix check to permit this case.
1371 * write.c (write_relocs): If a reloc is against an undefined
1372 symbol equated to another symbol, change the reloc to be against
1373 the latter symbol.
1374 * config/obj-coff.c (do_relocs_for): Likewise.
1375
1376 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
1377 XMC_PR.
1378
1379 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1380
1381 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
1382 computer is PowerPC.
1383
1384 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
1385
1386 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
1387 mentioned in the eabi.
1388
1389 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
1390
1391 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
1392 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
1393
1394 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1395
1396 * config/tc-ppc.c (mapping): Add more relocation suffixes.
1397
1398 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1399
1400 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
1401 as a section it is ok to have unadorned -mrelocatable pointers in.
1402
1403 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1404
1405 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
1406 #ifdef OBJ_ELF.
1407
1408 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1409
1410 * config/obj-elf.c (obj_elf_section): Add hooks so machine
1411 dependent section attributes can be handled.
1412
1413 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
1414 macros to add support for exclude section flag and ordered section
1415 type.
1416
1417 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
1418 functions to add support for exclude section flag and ordered
1419 section type.
1420
1421 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
1422
1423 * subsegs.c (section_symbol): Don't try to look up the section
1424 symbol in the hash table. It should be possible to have a symbol
1425 with the same name as a section, but no connection to it.
1426
1427 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
1428 From James Carlson <carlson@xylogics.com>.
1429
1430 * expr.c (operand): Skip whitespace after a close parenthesis.
1431 From James Carlson <carlson@xylogics.com>.
1432
1433 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
1434
1435 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
1436 as_warn_where for relocation overflow.
1437 (parse_reg): Accept register name only if next character is
1438 not alphanumeric.
1439
1440 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
1441
1442 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
1443 addresses for static variables.
1444
1445 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1446
1447 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
1448 and xgot give the old toc16 relocation.
1449 (md_apply_fix3): Support all GOT relocations.
1450
1451 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
1452
1453 * config/tc-mips.c (load_address): Correctly handle a constant in
1454 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
1455
1456 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1457
1458 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
1459 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
1460 (build_Mbytes): Handle REG_B.
1461
1462 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
1463
1464 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
1465
1466 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
1467
1468 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
1469
1470 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
1471
1472 * config/obj-coff.c (write_object_file): Set the s_align field to
1473 the number of bytes, rather than to the power of 2.
1474
1475 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
1476
1477 * Makefile.in (DISTCLEAN_HERE): New variable.
1478 (distclean): Use it.
1479 (maintainer-clean): Depend upon clean-here rather than clean,
1480 distclean, and clean-info. Run make maintainer-clean in doc.
1481 Remove files listed in DISTCLEAN_HERE.
1482 * doc/Makefile.in (maintainer-clean realclean): Split out from
1483 distclean. Depend upon clean-info and distclean.
1484
1485 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
1486
1487 * mac-as.r: Fix copyright and version strings.
1488 (cfrg): Use PROG_NAME instead of literal name.
1489
1490
1491 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
1492
1493 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
1494 call it.
1495 * config/tc-a29k.h (tc_unrecognized_line): Define.
1496 * config/tc-a29k.c (a29k_unrecognized_line): New function.
1497 (md_operand): Handle a29k style local dollar labels.
1498
1499 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
1500
1501 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
1502
1503 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
1504
1505 * read.c (s_fill): If md_flush_pending_output is defined, call
1506 it.
1507
1508 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
1509
1510 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
1511 Treat rs_align_code like rs_align.
1512
1513 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1514
1515 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
1516 converting an absolute address into a PC-relative one.
1517
1518 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
1519
1520 * mpw-config.in: Don't always use te-generic.h for emulation.
1521 (powerpc-apple-macos): Use emulation te-macos.h.
1522 start-sanitize-gm
1523 (mips-gm-magic): New configuration.
1524 end-sanitize-gm
1525 * mpw-make.sed (install, install-only): Edit in Mac-specific
1526 install procedure.
1527
1528 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
1529
1530 * configure.in: Improve message about unsupported ELF targets.
1531 * configure: Rebuild.
1532
1533 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
1534 pattern is zero. From Manfred Hollstein.
1535
1536 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
1537
1538 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
1539 the various idata sections, we check the name on the .section pseudo.
1540
1541 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1542
1543 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
1544 add section's paddr to add_number; compatibility to native as and
1545 ld forbids.
1546
1547 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
1548
1549 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
1550
1551 * hash.c (struct hash_entry): Moved here...
1552 * hash.h (struct hash_entry): ...from here.
1553
1554 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
1555 if it's already known to be null.
1556
1557 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1558
1559 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
1560 bit relocs converted to PC relative relocs. This turned out to
1561 add the offset from the beginning of .text twice.
1562
1563 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
1564
1565 * stabs.c (s_stab_generic): In 's' case, free string from
1566 obstack.
1567
1568 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
1569 sy_name_offset.
1570 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
1571 Ditto.
1572
1573 * subsegs.h (segment_info_type): Make bitfields unsigned.
1574
1575 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
1576 and move them together. On most systems this will reduce the
1577 structure size by one word.
1578 (operatorT): Define O_max.
1579 * expr.c (expr_begin): Verify that X_op is wide enough to hold
1580 O_max.
1581
1582 * read.c (pop_insert): Print error returned by hash table
1583 insertion code.
1584
1585 * as.c (dump_statistics): Split out from main; dump some hash
1586 table stats and target-specific stats.
1587 (start_time): No longer automatic to main.
1588 (main): Set file-level start_time and call dump_statistics at
1589 exit. Exit by calling xexit.
1590 (show_usage): Make --statistics description less specific.
1591 * subsegs.c (subsegs_print_statistics): New function.
1592 * write.c (write_print_statistics): New function.
1593 (n_fixups): New static variable.
1594 (fix_new_internal): Increment it.
1595 * read.c (read_print_statistics): New function.
1596 * read.h (read_print_statistics): Declare.
1597 * symbol.c (symbol_print_statistics): New function.
1598 * symbol.h (symbol_print_statistics): Declare.
1599 * hash.c (hash_print_statistics): New function.
1600 * hash.h (hash_print_statistics): Declare.
1601 * config/tc-i386.c (i386_print_statistics): New function.
1602 * config/tc-i386.h (i386_print_statistics): Declare.
1603 (tc_print_statistics): New macro.
1604 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
1605 exit.
1606
1607 * hash.c (DELETED): Rewrite to use a valid but unique address.
1608 (START_POWER): Reduce to 10.
1609 (enum stat_enum): New enumerator, replacing STAT_* index macros.
1610 Add new values for counting strcmp calls.
1611 (GROW_FACTOR): New macro.
1612 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
1613 of nesting blocks.
1614 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
1615 (hash_new): Use FULL_VALUE.
1616 (struct hash_control): Definition moved here.
1617 (hash_code): Don't mask to low bits.
1618 (hash_ask): Mask returned hash code here. Check hash value before
1619 calling strcmp; count strcmp calls.
1620 * hash.h (struct hash_control): Declare, don't define, here.
1621 (HASH_STATLENGTH): Deleted.
1622 (struct hash_entry): Add field for hash code.
1623 (hash_say, hash_apply): Don't declare.
1624
1625 * hash.c (destroy): Return void.
1626 (applicatee): Ditto.
1627 (main): Fix declarations.
1628 (hash_apply): Return void. Argument `function' returns void. Put
1629 inside "#ifdef TEST".
1630 (hash_say): Define only if TEST is defined.
1631 * hash.h (hash_apply, hash_say): Declarations deleted.
1632
1633 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
1634
1635 * configure: Rebuild with autoconf 2.7.
1636
1637 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
1638
1639 * aclocal.m4 (AC_PROG_CC): Remove local definition.
1640 * configure: Rebuild with autoconf 2.6.
1641
1642 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
1643
1644 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
1645 (ppc_stabx): Don't increment ppc_debug_name_section_size.
1646 (ppc_bc): Likewise.
1647 (ppc_frob_file): Remove.
1648 * config/tc-ppc.h (tc_frob_file): Don't define.
1649 (ppc_frob_file): Don't declare.
1650
1651 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
1652
1653 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
1654 * config/alpha-opcode.h: Include one-operand variants of jmp and
1655 jsr.
1656
1657 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
1658 with te-delta.h in 8.3 file systems.
1659 * configure.in: Adjusted.
1660
1661 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
1662
1663 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
1664
1665 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
1666 number.
1667 * expr.c (operand): Handle MRI suffixes after unadorned 0.
1668
1669 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
1670
1671 Version 2.6 released.
1672 * Makefile.in (VERSION): Updated to 2.6.
1673
1674 * config/obj-coff.c (write_object_file): Change use of md_do_align
1675 to pass a pointer rather than a fill value, to match other uses.
1676
1677 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
1678
1679 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
1680
1681 * as.c (main): Move md_end call to just after call to
1682 perform_an_assembly_pass. Delete cpu-specific code here.
1683 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
1684 * config/tc-arm.c (md_end): Unused function deleted.
1685 * config/tc-ns32k.c (md_end): Ditto.
1686
1687 * config/tc-i386.c (i386_align_code): New function, moved here
1688 from HANDLE_ALIGN macro.
1689 * config/tc-i386.h (HANDLE_ALIGN): Call it.
1690
1691 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
1692
1693 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
1694 before comparing
1695
1696 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
1697
1698 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
1699 multi-byte nops to avoid changing gcc. The necessary gcc change
1700 might break old assemblers.
1701
1702 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
1703
1704 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
1705 generate optimal multi-byte nop instructions for ".align n"
1706 ".align n,0x90", and aligns requiring more than 15 bytes of
1707 padding still generate multiple 0x90's as before.
1708
1709 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
1710
1711 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
1712
1713 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
1714
1715 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
1716 * configure: Update.
1717 * mpw-make.sed: Reorder commands to make sed happier.
1718 * config/te-macos.h: New file.
1719 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
1720
1721 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
1722
1723 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
1724 conditional branches.
1725 (md_apply_fix): Likewise.
1726
1727 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
1728
1729 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
1730 generate a reloc which the linker will not handle correctly. Fix
1731 overflow checking--R_IREL is 18 bits, not 17.
1732
1733 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
1734
1735 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
1736 from a PC relative reloc if TC_A29K.
1737
1738 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
1739 code depends upon it.
1740
1741 * config/tc-a29k.c (md_operand): Handle $float, $double, and
1742 $extend. Based on code from Eric Freudenthal
1743 <freudenthal@nyu.edu>.
1744 * config/tc-a29k.h (LEX_DOLLAR): Define.
1745 * read.c (LEX_DOLLAR): Define if not defined.
1746 (lex_type): Use LEX_DOLLAR.
1747
1748 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
1749
1750 * configure.in (a29k-nyu-sym1): New target, just like other a29k
1751 targets.
1752
1753 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
1754
1755 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
1756
1757 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
1758
1759 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
1760 used only by "dlltool.c".
1761
1762 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
1763
1764 * config/tc-alpha.c: Undefine inline if not __GNUC__.
1765 (md_pseudo_table): Don't define "extern".
1766
1767 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
1768
1769 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
1770
1771 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
1772
1773 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
1774
1775 * macro.c (macro_expand_body): Don't warn about == with a
1776 nonexistent parameter, in case it is in a comment field.
1777
1778 * as.c (main): On TC_A29K, call macro_init with macro_alternate
1779 set to 1.
1780 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
1781 set, even if macro_alternate is set.
1782 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
1783 (sub_actual): If macro_strip_at, and kind is '@', don't look up
1784 the token unless it ended in '@'.
1785 * config/tc-a29k.c (line_separator_chars): Remove '@'.
1786 * doc/c-a29k.texi: Document macro usage on A29K.
1787
1788 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
1789
1790 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
1791 signed word.
1792 (install_operand): Likewise.
1793
1794 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
1795
1796 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1797
1798 * configure.in (m88k-motorola-sysv*): New target.
1799 * configure: Rebuild.
1800 * config/te-delta88.h: New file.
1801 * config/obj-coff.c (write_object_file): Use md_do_align if it is
1802 defined.
1803 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
1804 (md_do_align): Define.
1805 * config/tc-m88k.c: Include "subsegs.h".
1806 (m88k_do_align): New function.
1807
1808 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
1809 (COFF_NOLOAD_PROBLEM): Define.
1810 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
1811
1812 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
1813
1814 * config/tc-i386.c (md_assemble): For a jump instruction with
1815 non-constant target, require 7 available bytes in the current
1816 frag, not 6.
1817
1818 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
1819
1820 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
1821 bfd/libelf.h.
1822
1823 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
1824
1825 * configure.in (alpha-*-linux*): Use ecoff.
1826 * configure: Rebuild.
1827 * ecoff.c (ecoff_directive_extern): New function.
1828 (ecoff_directive_weakext): New function.
1829 (ecoff_build_symbols): Handle weak symbols.
1830 (ecoff_setup_ext): Likewise.
1831 (ecoff_frob_symbol): Warn about weak common symbols.
1832 * ecoff.h (ecoff_directive_extern): Declare.
1833 (ecoff_directive_weakext): Declare.
1834 * symbols.c (S_IS_WEAK): New function.
1835 * symbols.h (S_IS_WEAK): Declare.
1836 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
1837 "weakext".
1838 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
1839 (s_extern): Remove.
1840
1841 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
1842
1843 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
1844
1845 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
1846 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
1847 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
1848 * config/obj-coff.c (coff_frob_symbol): Don't call
1849 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
1850 one. If OBJ_XCOFF, try to figure out whether the symbol is going
1851 to be dropped.
1852
1853 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
1854 (ppc_stab_symbol): New static variable.
1855 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
1856 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
1857 sy_tc.real_name to the stab string.
1858 (ppc_bc, ppc_ec): New static functions.
1859 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
1860 do anything.
1861 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
1862 suffix.
1863 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
1864 entries.
1865
1866 * input-scrub.c (input_scrub_push): Reset sb_index.
1867
1868 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
1869
1870 * listing.c (listing_newline): Don't create a frag in the absolute
1871 section.
1872
1873 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
1874
1875 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
1876 (ppc_csect): Move most of the code to ppc_change_csect, and call
1877 it.
1878 (ppc_change_csect): New static function, taken from ppc_csect.
1879 (ppc_section): New static function.
1880 (ppc_saw_abs): New static varable.
1881 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
1882 a symbol has no csect.
1883 (ppc_adjust_symtab): New function.
1884 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
1885 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
1886
1887 * write.c (write_object_file): If tc_adjust_symtab is defined,
1888 call it just before the call to obj_adjust_symtab.
1889
1890 * symbols.c (symbol_find_or_make): Change name to be const.
1891 * symbols.h (symbol_find_or_make): Update declaration.
1892
1893 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
1894
1895 * doc/as.texinfo (Align): Mention SH.
1896 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
1897 .align value.
1898 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
1899 (Z8000 Directives, even): Don't give numeric align value, instead
1900 explain behavior.
1901
1902 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1903
1904 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
1905 instruction.
1906
1907 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
1908
1909 * Makefile.in (diststuff): Also make info.
1910 (maintainer-clean realclean): Also make clean-info.
1911
1912 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
1913
1914 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
1915 (pa_subspace): For ".nsubspa", always create a new subspace
1916 with the given attributes, even if one already exists with the
1917 same name.
1918
1919 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1920
1921 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
1922 TC_FORCE_RELOCATION, taking an additional section argument. If
1923 the section of the target symbol is not the same as the current
1924 section, always force the relocation to be used.
1925 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
1926
1927 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
1928 md_pcrel_from function, taking an additional section argument.
1929 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
1930
1931 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
1932 older TC_FORCE_RELOCATION if not defined.
1933 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
1934 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
1935 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
1936 TC_FORCE_RELOCATION.
1937
1938 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
1939
1940 * input-scrub.c (as_where): Set name to null pointer if we don't
1941 have a file name.
1942 * messages.c (identify): Only print filename if non-null.
1943 (as_show_where): Ditto, for line number too.
1944 (as_warn_internal, as_bad_internal): Ditto.
1945
1946 * input-file.c (input_file_open): If the input file can't be
1947 opened, consider it an error.
1948
1949 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
1950
1951 * config/tc-mips.c: Added mips_4100 control, and support for
1952 accepting the 4100 as a MIPS architecture variant (md_begin,
1953 macro_build, mips_ip, md_parse_option). Adding suitable
1954 command-line OPTIONs, and updating the help text (md_show_usage).
1955
1956 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
1957
1958 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
1959 BFD_ASSEMBLER is defined.
1960
1961 * Use one active frag and one obstack per frag chain:
1962 * frags.c (frags): Variable deleted.
1963 (frag_alloc): New function.
1964 (frag_grow, frag_more, frag_variant, frag_now_fix,
1965 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
1966 frags variable.
1967 (frag_new): Ditto. Verify that frch_last and frag_now match on
1968 entry and exit, and that old frag_now has non-zero type. Replace
1969 "know" uses with "assert". Use frag_alloc instead of mucking with
1970 obstack alignment.
1971 * frags.h (frags): Declaration deleted.
1972 * subsegs.h (struct frchain): Add new field frch_frag_now.
1973 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
1974 variables.
1975 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
1976 give it any stricter alignment than frchainS structures need. Do
1977 not initialize frags obstack. Set frag_now to point to
1978 dummy_obstack. Initialize absolute_frchain.
1979 (subseg_set_rest): Save and restore frag_now in frch_frag_now
1980 field of frchainS. Don't create new frags on section switch, and
1981 use frag_alloc when creating a new frag chain. For absolute
1982 section, set frchain_now to absolute_frchain. Verify that
1983 frch_last and frag_now match on entry and exit. Initialize
1984 per-chain obstack, and under gcc, set required alignment to that
1985 needed by fragS structure.
1986
1987 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
1988
1989 * stabs.c (get_stab_string_offset): Only copy input string if a
1990 fresh copy is needed, not if the section already exists.
1991 (s_stab_generic): Cache stab section name to bypass lookups, since
1992 usually it will match. Could be made faster still by changing the
1993 memory allocation rules.
1994 (s_xstab): Cache section name to bypass repeated string
1995 allocation.
1996
1997 * frags.c (frag_new): Deleted register declarations.
1998
1999 * listing.c (frag_now): Don't declare.
2000
2001 * as.c (chunksize): New variable.
2002 (debug_memory): New variable.
2003 (main): If debug_memory is set, reduce chunksize and
2004 _bfd_chunksize.
2005 * as.h (chunksize): Declare it.
2006 * read.c (read_begin): Use it.
2007
2008 * config/tc-alpha.c (md_shortopts): Include 'g'.
2009 (md_parse_option): Ignore it.
2010
2011 * Makefile.in (distclean): Remove Makefile and config.status from
2012 testsuite directory.
2013 (clean-here): Don't delete testsuite. Instead, delete only the
2014 files within it that would be generated by running tests.
2015
2016 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
2017 frag_now_fix instead of accessing obstack info directly.
2018 * config/tc-arm.c (s_ltorg): Ditto.
2019 (md_assemble): Ditto.
2020
2021 * config/tc-i386.c (md_assemble): Call frag_grow instead of
2022 obstack_room.
2023
2024 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
2025
2026 * stabs.c (aout_process_stab): Insert debug symbol into symbol
2027 chain after parsing value expression, if any, to avoid separating
2028 continued .stabs lines.
2029
2030 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
2031
2032 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
2033 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
2034
2035 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
2036
2037 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
2038 -mcom support and PPC_OPCODE_ANY for -many.
2039 (md_parse_option): Ditto.
2040 (ppc_arch): Ditto.
2041 (md_begin): For duplicate instructions, print all duplicates
2042 before aborting.
2043
2044 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
2045
2046 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
2047 common mode operation.
2048 (md_show_usage): Add -mcom to usage message.
2049
2050 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
2051
2052 * expr.c (op_rank): Add O_symbol_rva.
2053 * expr.h (operatorT): Add O_symbol_rva.
2054 * read.c (cons_worker): Set O_symbol_rva when necessary.
2055 * write.c (fix_new_exp): Understand O_symbol_rva.
2056
2057 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
2058
2059 * config/tc-mips.c: Correct s_cons arguments. From Michael
2060 Joosten <joost@ori.cadlab.de>.
2061
2062 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
2063
2064 * config/tc-ppc.c (ppc_macro): Make count unsigned.
2065 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
2066 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
2067 the fix_line field.
2068 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
2069 make non-static. Change all users.
2070 * config/obj-coff.h (coff_n_line_nos): Declare.
2071
2072 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
2073
2074 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2075
2076 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
2077
2078 * config/obj-elf.c (obj_elf_common): Convert specified byte
2079 alignment to power of two. Set size of local bss symbol.
2080
2081 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
2082
2083 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
2084
2085 * sb.c, macro.c: Decide whether to include <string.h> or
2086 <strings.h> just as as.h does.
2087
2088 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
2089
2090 * Makefile.in (site.exp): Fix setting of $srcdir.
2091
2092 * config/tc-arm.c (md_atof): Fix little-endian output.
2093 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
2094 all coff targets.
2095
2096 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
2097
2098 * doc/as.texinfo: Split out the NS32k family documentation,
2099 despite its being commented out for now.
2100 * doc/c-ns32k.texi: New file.
2101
2102 * sb.c, macro.c: Include string.h.
2103
2104 * Makefile.in (comparison): Only check *.o; we don't care if
2105 timestamps inserted by the native linker differ.
2106
2107 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
2108 if alignment stricter than 4 bytes is requested; in that case,
2109 align to a 4-byte boundary first.
2110
2111 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
2112
2113 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
2114 uninitialized" warning for `Max_Source_Offset'.
2115
2116 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
2117
2118 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
2119 qualifiers and detect errors if present.
2120 (md_assemble): Add call to parse_toc_entry. Also added some support
2121 for the [tocv] qualifier.
2122 (ppc_pe_tocd): New function to support data in the toc section.
2123
2124 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
2125
2126 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
2127 an absolute symbol.
2128
2129 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
2130
2131 * config/tc-m68k.c (isword): Accept all values from -65536 to
2132 +65535, so ~VAL will not be rejected.
2133
2134 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
2135 skip characters after the pseudo-op.
2136 (s_else): Likewise.
2137 * read.c (get_line_sb): Don't look past buffer_limit.
2138 (s_include): In MRI mode, skip characters after the file name.
2139
2140 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
2141
2142 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
2143 periods in register names.
2144
2145 For older changes see ChangeLog.1.