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