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