version 2.6
[binutils-gdb.git] / gas / ChangeLog
1 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
2
3 Version 2.6 released.
4 * Makefile.in (VERSION): Updated to 2.6.
5
6 * config/obj-coff.c (write_object_file): Change use of md_do_align
7 to pass a pointer rather than a fill value, to match other uses.
8
9 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
10
11 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
12
13 * as.c (main): Move md_end call to just after call to
14 perform_an_assembly_pass. Delete cpu-specific code here.
15 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
16 start-sanitize-rce
17 * config/tc-rce.c (md_end): Deleted.
18 * config/tc-rce.h (md_end): New macro, calls dump_literals.
19 end-sanitize-rce
20 * config/tc-arm.c (md_end): Unused function deleted.
21 * config/tc-ns32k.c (md_end): Ditto.
22
23 * config/tc-i386.c (i386_align_code): New function, moved here
24 from HANDLE_ALIGN macro.
25 * config/tc-i386.h (HANDLE_ALIGN): Call it.
26
27 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
28
29 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
30 before comparing
31
32 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
33
34 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
35 multi-byte nops to avoid changing gcc. The necessary gcc change
36 might break old assemblers.
37
38 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
39
40 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
41 generate optimal multi-byte nop instructions for ".align n"
42 ".align n,0x90", and aligns requiring more than 15 bytes of
43 padding still generate multiple 0x90's as before.
44
45 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
46
47 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
48
49 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
50
51 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
52 * configure: Update.
53 * mpw-make.sed: Reorder commands to make sed happier.
54 * config/te-macos.h: New file.
55 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
56
57 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
58
59 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
60 conditional branches.
61 (md_apply_fix): Likewise.
62
63 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
64
65 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
66 generate a reloc which the linker will not handle correctly. Fix
67 overflow checking--R_IREL is 18 bits, not 17.
68
69 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
70
71 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
72 from a PC relative reloc if TC_A29K.
73
74 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
75 code depends upon it.
76
77 * config/tc-a29k.c (md_operand): Handle $float, $double, and
78 $extend. Based on code from Eric Freudenthal
79 <freudenthal@nyu.edu>.
80 * config/tc-a29k.h (LEX_DOLLAR): Define.
81 * read.c (LEX_DOLLAR): Define if not defined.
82 (lex_type): Use LEX_DOLLAR.
83
84 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
85
86 * configure.in (a29k-nyu-sym1): New target, just like other a29k
87 targets.
88
89 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
90
91 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
92
93 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
94
95 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
96 used only by "dlltool.c".
97
98 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
99
100 * config/tc-alpha.c: Undefine inline if not __GNUC__.
101 (md_pseudo_table): Don't define "extern".
102
103 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
104
105 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
106
107 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
108
109 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
110
111 * macro.c (macro_expand_body): Don't warn about == with a
112 nonexistent parameter, in case it is in a comment field.
113
114 * as.c (main): On TC_A29K, call macro_init with macro_alternate
115 set to 1.
116 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
117 set, even if macro_alternate is set.
118 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
119 (sub_actual): If macro_strip_at, and kind is '@', don't look up
120 the token unless it ended in '@'.
121 * config/tc-a29k.c (line_separator_chars): Remove '@'.
122 * doc/c-a29k.texi: Document macro usage on A29K.
123
124 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
125
126 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
127 signed word.
128 (install_operand): Likewise.
129
130 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
131
132 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
133
134 * configure.in (m88k-motorola-sysv*): New target.
135 * configure: Rebuild.
136 * config/te-delta88.h: New file.
137 * config/obj-coff.c (write_object_file): Use md_do_align if it is
138 defined.
139 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
140 (md_do_align): Define.
141 * config/tc-m88k.c: Include "subsegs.h".
142 (m88k_do_align): New function.
143
144 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
145 (COFF_NOLOAD_PROBLEM): Define.
146 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
147
148 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
149
150 * config/tc-i386.c (md_assemble): For a jump instruction with
151 non-constant target, require 7 available bytes in the current
152 frag, not 6.
153
154 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
155
156 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
157 bfd/libelf.h.
158
159 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
160
161 * configure.in (alpha-*-linux*): Use ecoff.
162 * configure: Rebuild.
163 * ecoff.c (ecoff_directive_extern): New function.
164 (ecoff_directive_weakext): New function.
165 (ecoff_build_symbols): Handle weak symbols.
166 (ecoff_setup_ext): Likewise.
167 (ecoff_frob_symbol): Warn about weak common symbols.
168 * ecoff.h (ecoff_directive_extern): Declare.
169 (ecoff_directive_weakext): Declare.
170 * symbols.c (S_IS_WEAK): New function.
171 * symbols.h (S_IS_WEAK): Declare.
172 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
173 "weakext".
174 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
175 (s_extern): Remove.
176
177 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
178
179 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
180
181 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
182 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
183 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
184 * config/obj-coff.c (coff_frob_symbol): Don't call
185 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
186 one. If OBJ_XCOFF, try to figure out whether the symbol is going
187 to be dropped.
188
189 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
190 (ppc_stab_symbol): New static variable.
191 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
192 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
193 sy_tc.real_name to the stab string.
194 (ppc_bc, ppc_ec): New static functions.
195 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
196 do anything.
197 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
198 suffix.
199 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
200 entries.
201
202 * input-scrub.c (input_scrub_push): Reset sb_index.
203
204 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
205
206 * listing.c (listing_newline): Don't create a frag in the absolute
207 section.
208
209 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
210
211 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
212 (ppc_csect): Move most of the code to ppc_change_csect, and call
213 it.
214 (ppc_change_csect): New static function, taken from ppc_csect.
215 (ppc_section): New static function.
216 (ppc_saw_abs): New static varable.
217 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
218 a symbol has no csect.
219 (ppc_adjust_symtab): New function.
220 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
221 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
222
223 * write.c (write_object_file): If tc_adjust_symtab is defined,
224 call it just before the call to obj_adjust_symtab.
225
226 * symbols.c (symbol_find_or_make): Change name to be const.
227 * symbols.h (symbol_find_or_make): Update declaration.
228
229 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
230
231 * doc/as.texinfo (Align): Mention SH.
232 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
233 .align value.
234 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
235 (Z8000 Directives, even): Don't give numeric align value, instead
236 explain behavior.
237
238 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
239
240 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
241 instruction.
242
243 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
244
245 * Makefile.in (diststuff): Also make info.
246 (maintainer-clean realclean): Also make clean-info.
247
248 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
249
250 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
251 (pa_subspace): For ".nsubspa", always create a new subspace
252 with the given attributes, even if one already exists with the
253 same name.
254
255 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
256
257 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
258 TC_FORCE_RELOCATION, taking an additional section argument. If
259 the section of the target symbol is not the same as the current
260 section, always force the relocation to be used.
261 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
262
263 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
264 md_pcrel_from function, taking an additional section argument.
265 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
266
267 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
268 older TC_FORCE_RELOCATION if not defined.
269 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
270 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
271 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
272 TC_FORCE_RELOCATION.
273
274 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
275
276 * input-scrub.c (as_where): Set name to null pointer if we don't
277 have a file name.
278 * messages.c (identify): Only print filename if non-null.
279 (as_show_where): Ditto, for line number too.
280 (as_warn_internal, as_bad_internal): Ditto.
281
282 * input-file.c (input_file_open): If the input file can't be
283 opened, consider it an error.
284
285 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
286
287 * config/tc-mips.c: Added mips_4100 control, and support for
288 accepting the 4100 as a MIPS architecture variant (md_begin,
289 macro_build, mips_ip, md_parse_option). Adding suitable
290 command-line OPTIONs, and updating the help text (md_show_usage).
291
292 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
293
294 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
295 BFD_ASSEMBLER is defined.
296
297 * Use one active frag and one obstack per frag chain:
298 * frags.c (frags): Variable deleted.
299 (frag_alloc): New function.
300 (frag_grow, frag_more, frag_variant, frag_now_fix,
301 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
302 frags variable.
303 (frag_new): Ditto. Verify that frch_last and frag_now match on
304 entry and exit, and that old frag_now has non-zero type. Replace
305 "know" uses with "assert". Use frag_alloc instead of mucking with
306 obstack alignment.
307 * frags.h (frags): Declaration deleted.
308 * subsegs.h (struct frchain): Add new field frch_frag_now.
309 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
310 variables.
311 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
312 give it any stricter alignment than frchainS structures need. Do
313 not initialize frags obstack. Set frag_now to point to
314 dummy_obstack. Initialize absolute_frchain.
315 (subseg_set_rest): Save and restore frag_now in frch_frag_now
316 field of frchainS. Don't create new frags on section switch, and
317 use frag_alloc when creating a new frag chain. For absolute
318 section, set frchain_now to absolute_frchain. Verify that
319 frch_last and frag_now match on entry and exit. Initialize
320 per-chain obstack, and under gcc, set required alignment to that
321 needed by fragS structure.
322
323 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
324
325 * stabs.c (get_stab_string_offset): Only copy input string if a
326 fresh copy is needed, not if the section already exists.
327 (s_stab_generic): Cache stab section name to bypass lookups, since
328 usually it will match. Could be made faster still by changing the
329 memory allocation rules.
330 (s_xstab): Cache section name to bypass repeated string
331 allocation.
332
333 * frags.c (frag_new): Deleted register declarations.
334
335 * listing.c (frag_now): Don't declare.
336
337 * as.c (chunksize): New variable.
338 (debug_memory): New variable.
339 (main): If debug_memory is set, reduce chunksize and
340 _bfd_chunksize.
341 * as.h (chunksize): Declare it.
342 * read.c (read_begin): Use it.
343
344 * config/tc-alpha.c (md_shortopts): Include 'g'.
345 (md_parse_option): Ignore it.
346
347 * Makefile.in (distclean): Remove Makefile and config.status from
348 testsuite directory.
349 (clean-here): Don't delete testsuite. Instead, delete only the
350 files within it that would be generated by running tests.
351
352 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
353 frag_now_fix instead of accessing obstack info directly.
354 * config/tc-arm.c (s_ltorg): Ditto.
355 (md_assemble): Ditto.
356
357 * config/tc-i386.c (md_assemble): Call frag_grow instead of
358 obstack_room.
359
360 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
361
362 * stabs.c (aout_process_stab): Insert debug symbol into symbol
363 chain after parsing value expression, if any, to avoid separating
364 continued .stabs lines.
365
366 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
367
368 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
369 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
370
371 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
372
373 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
374 -mcom support and PPC_OPCODE_ANY for -many.
375 (md_parse_option): Ditto.
376 (ppc_arch): Ditto.
377 (md_begin): For duplicate instructions, print all duplicates
378 before aborting.
379
380 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
381
382 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
383 common mode operation.
384 (md_show_usage): Add -mcom to usage message.
385
386 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
387
388 * expr.c (op_rank): Add O_symbol_rva.
389 * expr.h (operatorT): Add O_symbol_rva.
390 * read.c (cons_worker): Set O_symbol_rva when necessary.
391 * write.c (fix_new_exp): Understand O_symbol_rva.
392
393 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
394
395 * config/tc-mips.c: Correct s_cons arguments. From Michael
396 Joosten <joost@ori.cadlab.de>.
397
398 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
399
400 * config/tc-ppc.c (ppc_macro): Make count unsigned.
401 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
402 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
403 the fix_line field.
404 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
405 make non-static. Change all users.
406 * config/obj-coff.h (coff_n_line_nos): Declare.
407
408 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
409
410 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
411
412 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
413
414 * config/obj-elf.c (obj_elf_common): Convert specified byte
415 alignment to power of two. Set size of local bss symbol.
416
417 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
418
419 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
420
421 * sb.c, macro.c: Decide whether to include <string.h> or
422 <strings.h> just as as.h does.
423
424 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
425
426 * Makefile.in (site.exp): Fix setting of $srcdir.
427
428 * config/tc-arm.c (md_atof): Fix little-endian output.
429 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
430 all coff targets.
431
432 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
433
434 * doc/as.texinfo: Split out the NS32k family documentation,
435 despite its being commented out for now.
436 * doc/c-ns32k.texi: New file.
437
438 * sb.c, macro.c: Include string.h.
439
440 * Makefile.in (comparison): Only check *.o; we don't care if
441 timestamps inserted by the native linker differ.
442
443 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
444 if alignment stricter than 4 bytes is requested; in that case,
445 align to a 4-byte boundary first.
446
447 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
448
449 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
450 uninitialized" warning for `Max_Source_Offset'.
451
452 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
453
454 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
455 qualifiers and detect errors if present.
456 (md_assemble): Add call to parse_toc_entry. Also added some support
457 for the [tocv] qualifier.
458 (ppc_pe_tocd): New function to support data in the toc section.
459
460 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
461
462 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
463 an absolute symbol.
464
465 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
466
467 * config/tc-m68k.c (isword): Accept all values from -65536 to
468 +65535, so ~VAL will not be rejected.
469
470 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
471 skip characters after the pseudo-op.
472 (s_else): Likewise.
473 * read.c (get_line_sb): Don't look past buffer_limit.
474 (s_include): In MRI mode, skip characters after the file name.
475
476 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
477
478 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
479 periods in register names.
480
481 For older changes see ChangeLog.1.