1 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
4 * Makefile.in (VERSION): Updated to 2.6.
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.
9 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
11 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
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.
17 * config/tc-rce.c (md_end): Deleted.
18 * config/tc-rce.h (md_end): New macro, calls dump_literals.
20 * config/tc-arm.c (md_end): Unused function deleted.
21 * config/tc-ns32k.c (md_end): Ditto.
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.
27 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
29 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
32 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
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.
38 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
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.
45 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
47 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
49 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
51 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
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.
57 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
59 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
61 (md_apply_fix): Likewise.
63 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
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.
69 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
71 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
72 from a PC relative reloc if TC_A29K.
74 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
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.
84 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
86 * configure.in (a29k-nyu-sym1): New target, just like other a29k
89 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
91 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
93 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
95 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
96 used only by "dlltool.c".
98 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
100 * config/tc-alpha.c: Undefine inline if not __GNUC__.
101 (md_pseudo_table): Don't define "extern".
103 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
105 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
107 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
109 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
111 * macro.c (macro_expand_body): Don't warn about == with a
112 nonexistent parameter, in case it is in a comment field.
114 * as.c (main): On TC_A29K, call macro_init with macro_alternate
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.
124 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
126 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
128 (install_operand): Likewise.
130 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
132 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
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
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.
144 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
145 (COFF_NOLOAD_PROBLEM): Define.
146 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
148 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
150 * config/tc-i386.c (md_assemble): For a jump instruction with
151 non-constant target, require 7 available bytes in the current
154 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
156 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
159 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
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
174 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
177 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
179 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
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
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
197 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
199 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
202 * input-scrub.c (input_scrub_push): Reset sb_index.
204 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
206 * listing.c (listing_newline): Don't create a frag in the absolute
209 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
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
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.
223 * write.c (write_object_file): If tc_adjust_symtab is defined,
224 call it just before the call to obj_adjust_symtab.
226 * symbols.c (symbol_find_or_make): Change name to be const.
227 * symbols.h (symbol_find_or_make): Update declaration.
229 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
231 * doc/as.texinfo (Align): Mention SH.
232 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
234 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
235 (Z8000 Directives, even): Don't give numeric align value, instead
238 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
240 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
243 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
245 * Makefile.in (diststuff): Also make info.
246 (maintainer-clean realclean): Also make clean-info.
248 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
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
255 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
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.
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.
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
274 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
276 * input-scrub.c (as_where): Set name to null pointer if we don't
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.
282 * input-file.c (input_file_open): If the input file can't be
283 opened, consider it an error.
285 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
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).
292 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
294 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
295 BFD_ASSEMBLER is defined.
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
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
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
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.
323 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
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
333 * frags.c (frag_new): Deleted register declarations.
335 * listing.c (frag_now): Don't declare.
337 * as.c (chunksize): New variable.
338 (debug_memory): New variable.
339 (main): If debug_memory is set, reduce chunksize and
341 * as.h (chunksize): Declare it.
342 * read.c (read_begin): Use it.
344 * config/tc-alpha.c (md_shortopts): Include 'g'.
345 (md_parse_option): Ignore it.
347 * Makefile.in (distclean): Remove Makefile and config.status from
349 (clean-here): Don't delete testsuite. Instead, delete only the
350 files within it that would be generated by running tests.
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.
357 * config/tc-i386.c (md_assemble): Call frag_grow instead of
360 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
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.
366 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
368 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
369 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
371 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
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.
377 (md_begin): For duplicate instructions, print all duplicates
380 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
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.
386 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
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.
393 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
395 * config/tc-mips.c: Correct s_cons arguments. From Michael
396 Joosten <joost@ori.cadlab.de>.
398 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
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
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.
408 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
410 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
412 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
414 * config/obj-elf.c (obj_elf_common): Convert specified byte
415 alignment to power of two. Set size of local bss symbol.
417 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
419 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
421 * sb.c, macro.c: Decide whether to include <string.h> or
422 <strings.h> just as as.h does.
424 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
426 * Makefile.in (site.exp): Fix setting of $srcdir.
428 * config/tc-arm.c (md_atof): Fix little-endian output.
429 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
432 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
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.
438 * sb.c, macro.c: Include string.h.
440 * Makefile.in (comparison): Only check *.o; we don't care if
441 timestamps inserted by the native linker differ.
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.
447 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
449 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
450 uninitialized" warning for `Max_Source_Offset'.
452 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
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.
460 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
462 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
465 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
467 * config/tc-m68k.c (isword): Accept all values from -65536 to
468 +65535, so ~VAL will not be rejected.
470 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
471 skip characters after the pseudo-op.
473 * read.c (get_line_sb): Don't look past buffer_limit.
474 (s_include): In MRI mode, skip characters after the file name.
476 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
478 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
479 periods in register names.
481 For older changes see ChangeLog.1.