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