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