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