Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
[binutils-gdb.git] / gas / ChangeLog
1 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
2
3 * Makefile.in (INSTALL_XFORM): Remove -e.
4
5 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
6
7 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
8 than comparing S_GET_SEGMENT to undefined_section.
9 (write_object_file): Skip symbols which were equated to an
10 undefined or common symbol.
11 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
12 S_IS_COMMON rather than comparing S_GET_SEGMENT to
13 undefined_section.
14 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
15 or S_IS_COMMON call S_GET_VALUE.
16 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
17 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
18 to an undefined or common symbol, convert the reloc to be against
19 the target symbol.
20 (obj_crawl_symbol_chain): Skip symbols which were equated to an
21 undefined or common symbol.
22 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
23 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
24 to an undefined or common symbol, convert the reloc to be against
25 the target symbol.
26 (obj_crawl_symbol_chain): Skip symbols which were equated to an
27 undefined or common symbol.
28 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
29 S_IS_COMMON rather than comparing S_GET_SEGMENT to
30 undefined_section.
31 (yank_symbols): Skip symbols which were equated to an undefined or
32 common symbol.
33
34 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
35
36 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
37 * config/obj-bout.h (S_IS_LOCAL): Likewise.
38
39 * configure.in: Make sure we only add m68k-parse.o to
40 ${extra_objects} once, no matter how many m68k targets have been
41 enabled.
42 * configure: Rebuild.
43
44 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
45
46 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
47 * configure: Rebuild.
48
49 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
50
51 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
52 * doc/c-m68k.texi: Document .extend and .ldouble.
53
54 * configure.in (m68*-apple-aux*): New target.
55 * config/te-aux.h: New file.
56 * config/obj-coff.c (compare_external_relocs): New static function
57 if TE_AUX.
58 (do_relocs_for): Sort relocs if TE_AUX.
59 (fixup_segment): If TE_AUX, store common symbol value in segment.
60 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
61
62 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
63
64 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
65
66 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
67 BSF_FUNCTION.
68 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
69 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
70 symbol.
71 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
72 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
73 an undefined symbol and the size of a function symbol.
74 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
75 for all common symbols.
76
77 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
78
79 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
80 scaling of index.
81
82 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
83 m68k.
84
85 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
86
87 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
88 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
89
90 * ecoff.c (localsym_t): Add addend field.
91 (add_ecoff_symbol): Add addend argument. Change all callers.
92 (coff_sym_value): Make static.
93 (coff_sym_addend): New static variable.
94 (ecoff_directive_def): Initialize coff_sym_addend.
95 (ecoff_directive_val): Accept symbol + constant.
96 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
97 (ecoff_build_symbols): Include the addend in the symbol value.
98
99 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
100
101 * config/tc-ppc.c (md_assemble): Ignore overflow on
102 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
103
104 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
105
106 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
107 bytes in size, so offset appropriately in big endian mode when
108 writing the bottom 2 bytes.
109
110 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
111
112 * config/tc-sparc.c (default_compatible): New static local.
113 (md_begin): Initialize it. Rewrite warn_on_bump handling.
114 (sparc_ip): If no architecture or -bump specified, don't mark as
115 mismatched those in default_compatible.
116
117 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
118
119 SCO ELF support from Robert Lipe <robertl@arnet.com>:
120 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
121 * configure: Rebuild.
122 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
123 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
124 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
125 (sco_id): Declare if SCO_ELF.
126
127 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
128
129 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
130 ({max,warn_after}_architecture): New static locals.
131 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
132 If both architecture and -bump requested, set max_architecture to max.
133 (sparc_md_end): Simplify.
134 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
135 Rewrite code to bump architecture and check for conflicts.
136 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
137 with Solaris assembler.
138 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
139 (md_show_usage): Update.
140
141 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
142
143 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
144
145 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
146
147 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
148 #ifdef sparcv9 when choosing value.
149 (ENV64): Delete.
150 (md_end): Define.
151 (sparc_md_end): Declare.
152 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
153 (initial_architecture): New static local.
154 (can_bump_v9_p): Likewise.
155 (NO_V9): Delete all occurrences.
156 (sparc_md_end): New function.
157 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
158 Don't bump architecture to v9 unless can_bump_v9_p set.
159 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
160 * configure.in (sparc64 target cpu): Don't set obj_format here.
161 (SPARC_V9): Renamed from sparcv9.
162 (sparc64-*-elf*): Define SPARC_ARCH64.
163 * configure: Regenerated.
164 * acconfig.h (SPARC_V9): Renamed from sparcv9.
165 (SPARC_ARCH64): Add.
166 * conf.in: Regenerated.
167 * config/vmsconf.h: Update.
168
169 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
170
171 * config/tc-mips.c (load_register): Optimise "dli" loads.
172 (md_show_usage): add "-mcpu=vr4100" to help text.
173
174 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
175
176 * symbols.c (resolve_symbol_value): If a symbol is equated to an
177 undefined symbol, preserve the X_op of O_symbol.
178 (S_GET_VALUE): Fix check to permit this case.
179 * write.c (write_relocs): If a reloc is against an undefined
180 symbol equated to another symbol, change the reloc to be against
181 the latter symbol.
182 * config/obj-coff.c (do_relocs_for): Likewise.
183
184 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
185 XMC_PR.
186
187 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
188
189 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
190 computer is PowerPC.
191
192 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
193
194 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
195 mentioned in the eabi.
196
197 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
198
199 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
200 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
201
202 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
203
204 * config/tc-ppc.c (mapping): Add more relocation suffixes.
205
206 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
207
208 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
209 as a section it is ok to have unadorned -mrelocatable pointers in.
210
211 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
212
213 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
214 #ifdef OBJ_ELF.
215
216 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
217
218 * config/obj-elf.c (obj_elf_section): Add hooks so machine
219 dependent section attributes can be handled.
220
221 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
222 macros to add support for exclude section flag and ordered section
223 type.
224
225 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
226 functions to add support for exclude section flag and ordered
227 section type.
228
229 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
230
231 * subsegs.c (section_symbol): Don't try to look up the section
232 symbol in the hash table. It should be possible to have a symbol
233 with the same name as a section, but no connection to it.
234
235 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
236 From James Carlson <carlson@xylogics.com>.
237
238 * expr.c (operand): Skip whitespace after a close parenthesis.
239 From James Carlson <carlson@xylogics.com>.
240
241 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
242
243 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
244 as_warn_where for relocation overflow.
245 (parse_reg): Accept register name only if next character is
246 not alphanumeric.
247
248 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
249
250 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
251 addresses for static variables.
252
253 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
254
255 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
256 and xgot give the old toc16 relocation.
257 (md_apply_fix3): Support all GOT relocations.
258
259 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
260
261 * config/tc-mips.c (load_address): Correctly handle a constant in
262 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
263
264 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
265
266 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
267 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
268 (build_Mbytes): Handle REG_B.
269
270 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
271
272 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
273
274 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
275
276 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
277
278 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
279
280 * config/obj-coff.c (write_object_file): Set the s_align field to
281 the number of bytes, rather than to the power of 2.
282
283 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
284
285 * Makefile.in (DISTCLEAN_HERE): New variable.
286 (distclean): Use it.
287 (maintainer-clean): Depend upon clean-here rather than clean,
288 distclean, and clean-info. Run make maintainer-clean in doc.
289 Remove files listed in DISTCLEAN_HERE.
290 * doc/Makefile.in (maintainer-clean realclean): Split out from
291 distclean. Depend upon clean-info and distclean.
292
293 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
294
295 * mac-as.r: Fix copyright and version strings.
296 (cfrg): Use PROG_NAME instead of literal name.
297
298
299 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
300
301 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
302 call it.
303 * config/tc-a29k.h (tc_unrecognized_line): Define.
304 * config/tc-a29k.c (a29k_unrecognized_line): New function.
305 (md_operand): Handle a29k style local dollar labels.
306
307 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
308
309 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
310
311 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
312
313 * read.c (s_fill): If md_flush_pending_output is defined, call
314 it.
315
316 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
317
318 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
319 Treat rs_align_code like rs_align.
320
321 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
322
323 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
324 converting an absolute address into a PC-relative one.
325
326 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
327
328 * mpw-config.in: Don't always use te-generic.h for emulation.
329 (powerpc-apple-macos): Use emulation te-macos.h.
330 start-sanitize-gm
331 (mips-gm-magic): New configuration.
332 end-sanitize-gm
333 * mpw-make.sed (install, install-only): Edit in Mac-specific
334 install procedure.
335
336 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
337
338 * configure.in: Improve message about unsupported ELF targets.
339 * configure: Rebuild.
340
341 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
342 pattern is zero. From Manfred Hollstein.
343
344 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
345
346 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
347 the various idata sections, we check the name on the .section pseudo.
348
349 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
350
351 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
352 add section's paddr to add_number; compatibility to native as and
353 ld forbids.
354
355 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
356
357 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
358
359 * hash.c (struct hash_entry): Moved here...
360 * hash.h (struct hash_entry): ...from here.
361
362 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
363 if it's already known to be null.
364
365 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
366
367 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
368 bit relocs converted to PC relative relocs. This turned out to
369 add the offset from the beginning of .text twice.
370
371 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
372
373 * stabs.c (s_stab_generic): In 's' case, free string from
374 obstack.
375
376 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
377 sy_name_offset.
378 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
379 Ditto.
380
381 * subsegs.h (segment_info_type): Make bitfields unsigned.
382
383 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
384 and move them together. On most systems this will reduce the
385 structure size by one word.
386 (operatorT): Define O_max.
387 * expr.c (expr_begin): Verify that X_op is wide enough to hold
388 O_max.
389
390 * read.c (pop_insert): Print error returned by hash table
391 insertion code.
392
393 * as.c (dump_statistics): Split out from main; dump some hash
394 table stats and target-specific stats.
395 (start_time): No longer automatic to main.
396 (main): Set file-level start_time and call dump_statistics at
397 exit. Exit by calling xexit.
398 (show_usage): Make --statistics description less specific.
399 * subsegs.c (subsegs_print_statistics): New function.
400 * write.c (write_print_statistics): New function.
401 (n_fixups): New static variable.
402 (fix_new_internal): Increment it.
403 * read.c (read_print_statistics): New function.
404 * read.h (read_print_statistics): Declare.
405 * symbol.c (symbol_print_statistics): New function.
406 * symbol.h (symbol_print_statistics): Declare.
407 * hash.c (hash_print_statistics): New function.
408 * hash.h (hash_print_statistics): Declare.
409 * config/tc-i386.c (i386_print_statistics): New function.
410 * config/tc-i386.h (i386_print_statistics): Declare.
411 (tc_print_statistics): New macro.
412 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
413 exit.
414
415 * hash.c (DELETED): Rewrite to use a valid but unique address.
416 (START_POWER): Reduce to 10.
417 (enum stat_enum): New enumerator, replacing STAT_* index macros.
418 Add new values for counting strcmp calls.
419 (GROW_FACTOR): New macro.
420 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
421 of nesting blocks.
422 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
423 (hash_new): Use FULL_VALUE.
424 (struct hash_control): Definition moved here.
425 (hash_code): Don't mask to low bits.
426 (hash_ask): Mask returned hash code here. Check hash value before
427 calling strcmp; count strcmp calls.
428 * hash.h (struct hash_control): Declare, don't define, here.
429 (HASH_STATLENGTH): Deleted.
430 (struct hash_entry): Add field for hash code.
431 (hash_say, hash_apply): Don't declare.
432
433 * hash.c (destroy): Return void.
434 (applicatee): Ditto.
435 (main): Fix declarations.
436 (hash_apply): Return void. Argument `function' returns void. Put
437 inside "#ifdef TEST".
438 (hash_say): Define only if TEST is defined.
439 * hash.h (hash_apply, hash_say): Declarations deleted.
440
441 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
442
443 * configure: Rebuild with autoconf 2.7.
444
445 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
446
447 * aclocal.m4 (AC_PROG_CC): Remove local definition.
448 * configure: Rebuild with autoconf 2.6.
449
450 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
451
452 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
453 (ppc_stabx): Don't increment ppc_debug_name_section_size.
454 (ppc_bc): Likewise.
455 (ppc_frob_file): Remove.
456 * config/tc-ppc.h (tc_frob_file): Don't define.
457 (ppc_frob_file): Don't declare.
458
459 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
460
461 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
462 * config/alpha-opcode.h: Include one-operand variants of jmp and
463 jsr.
464
465 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
466 with te-delta.h in 8.3 file systems.
467 * configure.in: Adjusted.
468
469 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
470
471 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
472
473 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
474 number.
475 * expr.c (operand): Handle MRI suffixes after unadorned 0.
476
477 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
478
479 Version 2.6 released.
480 * Makefile.in (VERSION): Updated to 2.6.
481
482 * config/obj-coff.c (write_object_file): Change use of md_do_align
483 to pass a pointer rather than a fill value, to match other uses.
484
485 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
486
487 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
488
489 * as.c (main): Move md_end call to just after call to
490 perform_an_assembly_pass. Delete cpu-specific code here.
491 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
492 start-sanitize-rce
493 * config/tc-rce.c (md_end): Deleted.
494 * config/tc-rce.h (md_end): New macro, calls dump_literals.
495 end-sanitize-rce
496 * config/tc-arm.c (md_end): Unused function deleted.
497 * config/tc-ns32k.c (md_end): Ditto.
498
499 * config/tc-i386.c (i386_align_code): New function, moved here
500 from HANDLE_ALIGN macro.
501 * config/tc-i386.h (HANDLE_ALIGN): Call it.
502
503 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
504
505 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
506 before comparing
507
508 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
509
510 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
511 multi-byte nops to avoid changing gcc. The necessary gcc change
512 might break old assemblers.
513
514 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
515
516 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
517 generate optimal multi-byte nop instructions for ".align n"
518 ".align n,0x90", and aligns requiring more than 15 bytes of
519 padding still generate multiple 0x90's as before.
520
521 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
522
523 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
524
525 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
526
527 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
528 * configure: Update.
529 * mpw-make.sed: Reorder commands to make sed happier.
530 * config/te-macos.h: New file.
531 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
532
533 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
534
535 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
536 conditional branches.
537 (md_apply_fix): Likewise.
538
539 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
540
541 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
542 generate a reloc which the linker will not handle correctly. Fix
543 overflow checking--R_IREL is 18 bits, not 17.
544
545 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
546
547 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
548 from a PC relative reloc if TC_A29K.
549
550 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
551 code depends upon it.
552
553 * config/tc-a29k.c (md_operand): Handle $float, $double, and
554 $extend. Based on code from Eric Freudenthal
555 <freudenthal@nyu.edu>.
556 * config/tc-a29k.h (LEX_DOLLAR): Define.
557 * read.c (LEX_DOLLAR): Define if not defined.
558 (lex_type): Use LEX_DOLLAR.
559
560 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
561
562 * configure.in (a29k-nyu-sym1): New target, just like other a29k
563 targets.
564
565 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
566
567 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
568
569 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
570
571 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
572 used only by "dlltool.c".
573
574 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
575
576 * config/tc-alpha.c: Undefine inline if not __GNUC__.
577 (md_pseudo_table): Don't define "extern".
578
579 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
580
581 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
582
583 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
584
585 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
586
587 * macro.c (macro_expand_body): Don't warn about == with a
588 nonexistent parameter, in case it is in a comment field.
589
590 * as.c (main): On TC_A29K, call macro_init with macro_alternate
591 set to 1.
592 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
593 set, even if macro_alternate is set.
594 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
595 (sub_actual): If macro_strip_at, and kind is '@', don't look up
596 the token unless it ended in '@'.
597 * config/tc-a29k.c (line_separator_chars): Remove '@'.
598 * doc/c-a29k.texi: Document macro usage on A29K.
599
600 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
601
602 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
603 signed word.
604 (install_operand): Likewise.
605
606 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
607
608 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
609
610 * configure.in (m88k-motorola-sysv*): New target.
611 * configure: Rebuild.
612 * config/te-delta88.h: New file.
613 * config/obj-coff.c (write_object_file): Use md_do_align if it is
614 defined.
615 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
616 (md_do_align): Define.
617 * config/tc-m88k.c: Include "subsegs.h".
618 (m88k_do_align): New function.
619
620 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
621 (COFF_NOLOAD_PROBLEM): Define.
622 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
623
624 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
625
626 * config/tc-i386.c (md_assemble): For a jump instruction with
627 non-constant target, require 7 available bytes in the current
628 frag, not 6.
629
630 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
631
632 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
633 bfd/libelf.h.
634
635 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
636
637 * configure.in (alpha-*-linux*): Use ecoff.
638 * configure: Rebuild.
639 * ecoff.c (ecoff_directive_extern): New function.
640 (ecoff_directive_weakext): New function.
641 (ecoff_build_symbols): Handle weak symbols.
642 (ecoff_setup_ext): Likewise.
643 (ecoff_frob_symbol): Warn about weak common symbols.
644 * ecoff.h (ecoff_directive_extern): Declare.
645 (ecoff_directive_weakext): Declare.
646 * symbols.c (S_IS_WEAK): New function.
647 * symbols.h (S_IS_WEAK): Declare.
648 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
649 "weakext".
650 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
651 (s_extern): Remove.
652
653 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
654
655 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
656
657 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
658 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
659 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
660 * config/obj-coff.c (coff_frob_symbol): Don't call
661 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
662 one. If OBJ_XCOFF, try to figure out whether the symbol is going
663 to be dropped.
664
665 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
666 (ppc_stab_symbol): New static variable.
667 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
668 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
669 sy_tc.real_name to the stab string.
670 (ppc_bc, ppc_ec): New static functions.
671 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
672 do anything.
673 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
674 suffix.
675 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
676 entries.
677
678 * input-scrub.c (input_scrub_push): Reset sb_index.
679
680 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
681
682 * listing.c (listing_newline): Don't create a frag in the absolute
683 section.
684
685 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
686
687 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
688 (ppc_csect): Move most of the code to ppc_change_csect, and call
689 it.
690 (ppc_change_csect): New static function, taken from ppc_csect.
691 (ppc_section): New static function.
692 (ppc_saw_abs): New static varable.
693 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
694 a symbol has no csect.
695 (ppc_adjust_symtab): New function.
696 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
697 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
698
699 * write.c (write_object_file): If tc_adjust_symtab is defined,
700 call it just before the call to obj_adjust_symtab.
701
702 * symbols.c (symbol_find_or_make): Change name to be const.
703 * symbols.h (symbol_find_or_make): Update declaration.
704
705 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
706
707 * doc/as.texinfo (Align): Mention SH.
708 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
709 .align value.
710 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
711 (Z8000 Directives, even): Don't give numeric align value, instead
712 explain behavior.
713
714 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
715
716 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
717 instruction.
718
719 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
720
721 * Makefile.in (diststuff): Also make info.
722 (maintainer-clean realclean): Also make clean-info.
723
724 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
725
726 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
727 (pa_subspace): For ".nsubspa", always create a new subspace
728 with the given attributes, even if one already exists with the
729 same name.
730
731 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
732
733 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
734 TC_FORCE_RELOCATION, taking an additional section argument. If
735 the section of the target symbol is not the same as the current
736 section, always force the relocation to be used.
737 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
738
739 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
740 md_pcrel_from function, taking an additional section argument.
741 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
742
743 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
744 older TC_FORCE_RELOCATION if not defined.
745 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
746 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
747 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
748 TC_FORCE_RELOCATION.
749
750 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
751
752 * input-scrub.c (as_where): Set name to null pointer if we don't
753 have a file name.
754 * messages.c (identify): Only print filename if non-null.
755 (as_show_where): Ditto, for line number too.
756 (as_warn_internal, as_bad_internal): Ditto.
757
758 * input-file.c (input_file_open): If the input file can't be
759 opened, consider it an error.
760
761 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
762
763 * config/tc-mips.c: Added mips_4100 control, and support for
764 accepting the 4100 as a MIPS architecture variant (md_begin,
765 macro_build, mips_ip, md_parse_option). Adding suitable
766 command-line OPTIONs, and updating the help text (md_show_usage).
767
768 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
769
770 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
771 BFD_ASSEMBLER is defined.
772
773 * Use one active frag and one obstack per frag chain:
774 * frags.c (frags): Variable deleted.
775 (frag_alloc): New function.
776 (frag_grow, frag_more, frag_variant, frag_now_fix,
777 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
778 frags variable.
779 (frag_new): Ditto. Verify that frch_last and frag_now match on
780 entry and exit, and that old frag_now has non-zero type. Replace
781 "know" uses with "assert". Use frag_alloc instead of mucking with
782 obstack alignment.
783 * frags.h (frags): Declaration deleted.
784 * subsegs.h (struct frchain): Add new field frch_frag_now.
785 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
786 variables.
787 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
788 give it any stricter alignment than frchainS structures need. Do
789 not initialize frags obstack. Set frag_now to point to
790 dummy_obstack. Initialize absolute_frchain.
791 (subseg_set_rest): Save and restore frag_now in frch_frag_now
792 field of frchainS. Don't create new frags on section switch, and
793 use frag_alloc when creating a new frag chain. For absolute
794 section, set frchain_now to absolute_frchain. Verify that
795 frch_last and frag_now match on entry and exit. Initialize
796 per-chain obstack, and under gcc, set required alignment to that
797 needed by fragS structure.
798
799 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
800
801 * stabs.c (get_stab_string_offset): Only copy input string if a
802 fresh copy is needed, not if the section already exists.
803 (s_stab_generic): Cache stab section name to bypass lookups, since
804 usually it will match. Could be made faster still by changing the
805 memory allocation rules.
806 (s_xstab): Cache section name to bypass repeated string
807 allocation.
808
809 * frags.c (frag_new): Deleted register declarations.
810
811 * listing.c (frag_now): Don't declare.
812
813 * as.c (chunksize): New variable.
814 (debug_memory): New variable.
815 (main): If debug_memory is set, reduce chunksize and
816 _bfd_chunksize.
817 * as.h (chunksize): Declare it.
818 * read.c (read_begin): Use it.
819
820 * config/tc-alpha.c (md_shortopts): Include 'g'.
821 (md_parse_option): Ignore it.
822
823 * Makefile.in (distclean): Remove Makefile and config.status from
824 testsuite directory.
825 (clean-here): Don't delete testsuite. Instead, delete only the
826 files within it that would be generated by running tests.
827
828 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
829 frag_now_fix instead of accessing obstack info directly.
830 * config/tc-arm.c (s_ltorg): Ditto.
831 (md_assemble): Ditto.
832
833 * config/tc-i386.c (md_assemble): Call frag_grow instead of
834 obstack_room.
835
836 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
837
838 * stabs.c (aout_process_stab): Insert debug symbol into symbol
839 chain after parsing value expression, if any, to avoid separating
840 continued .stabs lines.
841
842 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
843
844 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
845 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
846
847 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
848
849 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
850 -mcom support and PPC_OPCODE_ANY for -many.
851 (md_parse_option): Ditto.
852 (ppc_arch): Ditto.
853 (md_begin): For duplicate instructions, print all duplicates
854 before aborting.
855
856 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
857
858 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
859 common mode operation.
860 (md_show_usage): Add -mcom to usage message.
861
862 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
863
864 * expr.c (op_rank): Add O_symbol_rva.
865 * expr.h (operatorT): Add O_symbol_rva.
866 * read.c (cons_worker): Set O_symbol_rva when necessary.
867 * write.c (fix_new_exp): Understand O_symbol_rva.
868
869 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
870
871 * config/tc-mips.c: Correct s_cons arguments. From Michael
872 Joosten <joost@ori.cadlab.de>.
873
874 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
875
876 * config/tc-ppc.c (ppc_macro): Make count unsigned.
877 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
878 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
879 the fix_line field.
880 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
881 make non-static. Change all users.
882 * config/obj-coff.h (coff_n_line_nos): Declare.
883
884 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
885
886 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
887
888 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
889
890 * config/obj-elf.c (obj_elf_common): Convert specified byte
891 alignment to power of two. Set size of local bss symbol.
892
893 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
894
895 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
896
897 * sb.c, macro.c: Decide whether to include <string.h> or
898 <strings.h> just as as.h does.
899
900 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
901
902 * Makefile.in (site.exp): Fix setting of $srcdir.
903
904 * config/tc-arm.c (md_atof): Fix little-endian output.
905 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
906 all coff targets.
907
908 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
909
910 * doc/as.texinfo: Split out the NS32k family documentation,
911 despite its being commented out for now.
912 * doc/c-ns32k.texi: New file.
913
914 * sb.c, macro.c: Include string.h.
915
916 * Makefile.in (comparison): Only check *.o; we don't care if
917 timestamps inserted by the native linker differ.
918
919 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
920 if alignment stricter than 4 bytes is requested; in that case,
921 align to a 4-byte boundary first.
922
923 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
924
925 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
926 uninitialized" warning for `Max_Source_Offset'.
927
928 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
929
930 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
931 qualifiers and detect errors if present.
932 (md_assemble): Add call to parse_toc_entry. Also added some support
933 for the [tocv] qualifier.
934 (ppc_pe_tocd): New function to support data in the toc section.
935
936 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
937
938 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
939 an absolute symbol.
940
941 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
942
943 * config/tc-m68k.c (isword): Accept all values from -65536 to
944 +65535, so ~VAL will not be rejected.
945
946 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
947 skip characters after the pseudo-op.
948 (s_else): Likewise.
949 * read.c (get_line_sb): Don't look past buffer_limit.
950 (s_include): In MRI mode, skip characters after the file name.
951
952 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
953
954 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
955 periods in register names.
956
957 For older changes see ChangeLog.1.