Make elf section functions ELF specific
[platform/upstream/binutils.git] / gas / ChangeLog
1 Sat Jan 13 11:09:08 1996  Michael Meissner  <meissner@wogglebug.tiac.net>
2
3         * config/tc-ppc.c (ppc_section*): Wrap these functions inside
4         #ifdef OBJ_ELF.
5
6 Fri Jan 12 15:32:07 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
7
8         * config/obj-elf.c (obj_elf_section): Add hooks so machine
9         dependent section attributes can be handled.
10
11         * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
12         macros to add support for exclude section flag and ordered section
13         type.
14
15         * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
16         functions to add support for exclude section flag and ordered
17         section type.
18
19 Fri Jan 12 12:04:00 1996  Ian Lance Taylor  <ian@cygnus.com>
20
21         * subsegs.c (section_symbol): Don't try to look up the section
22         symbol in the hash table.  It should be possible to have a symbol
23         with the same name as a section, but no connection to it.
24
25         * read.c (cons_worker): Only call mri_comment_end from flag_mri.
26         From James Carlson <carlson@xylogics.com>.
27
28         * expr.c (operand): Skip whitespace after a close parenthesis.
29         From James Carlson <carlson@xylogics.com>.
30
31 Tue Jan  2 12:43:23 1996  Jim Wilson  <wilson@chestnut.cygnus.com>
32
33         * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
34         as_warn_where for relocation overflow.
35         (parse_reg): Accept register name only if next character is
36         not alphanumeric.
37
38 Sat Dec 30 23:42:51 1995  Jeffrey A Law  (law@cygnus.com)
39
40         * ecoff.c (ecoff_stab): Simplify.  Correctly handle sym + offset
41         addresses for static variables.
42
43 Thu Dec 21 12:54:32 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
44
45         * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
46         and xgot give the old toc16 relocation.
47         (md_apply_fix3): Support all GOT relocations.
48
49 Wed Dec 20 14:57:17 1995  Ian Lance Taylor  <ian@cygnus.com>
50
51         * config/tc-mips.c (load_address): Correctly handle a constant in
52         SVR4_PIC case.  From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
53
54 Fri Dec 15 14:25:07 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
55
56         * config/tc-sh.c (parse_reg): Recognize SH3 registers.
57         (get_specific): Handle A_SSR, A_SPC and A_REG_B.
58         (build_Mbytes): Handle REG_B.
59
60 Fri Dec 15 16:07:25 1995  Ian Lance Taylor  <ian@cygnus.com>
61
62         * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
63
64 Fri Dec 15 12:11:48 1995  Raymond Jou  <rjou@mexican.cygnus.com>
65
66         * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
67
68 Thu Dec 14 15:09:52 1995  Ian Lance Taylor  <ian@cygnus.com>
69
70         * config/obj-coff.c (write_object_file): Set the s_align field to
71         the number of bytes, rather than to the power of 2.
72
73 Tue Dec 12 12:19:37 1995  Ian Lance Taylor  <ian@cygnus.com>
74
75         * Makefile.in (DISTCLEAN_HERE): New variable.
76         (distclean): Use it.
77         (maintainer-clean): Depend upon clean-here rather than clean,
78         distclean, and clean-info.  Run make maintainer-clean in doc.
79         Remove files listed in DISTCLEAN_HERE.
80         * doc/Makefile.in (maintainer-clean realclean): Split out from
81         distclean.  Depend upon clean-info and distclean.
82
83 Mon Dec 11 16:23:51 1995  Stan Shebs  <shebs@andros.cygnus.com>
84
85         * mac-as.r: Fix copyright and version strings.
86         (cfrg): Use PROG_NAME instead of literal name.
87
88 Mon Dec 11 14:14:08 1995  Ian Lance Taylor  <ian@cygnus.com>
89
90         * read.c (read_a_source_file): If tc_unrecognized_line is defined,
91         call it.
92         * config/tc-a29k.h (tc_unrecognized_line): Define.
93         * config/tc-a29k.c (a29k_unrecognized_line): New function.
94         (md_operand): Handle a29k style local dollar labels.
95
96 Wed Dec  6 17:52:52 1995  Ian Lance Taylor  <ian@cygnus.com>
97
98         * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
99
100 Tue Dec  5 13:26:34 1995  Ken Raeburn  <raeburn@cygnus.com>
101
102         * read.c (s_fill): If md_flush_pending_output is defined, call
103         it.
104
105 Mon Dec  4 15:10:53 1995  Ken Raeburn  <raeburn@cygnus.com>
106
107         * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
108         Treat rs_align_code like rs_align.
109
110 Sun Dec  3 16:46:54 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
111
112         * config/tc-arm.c (cp_address_required_here): Set pre_inc when
113         converting an absolute address into a PC-relative one.
114
115 Fri Dec  1 11:57:56 1995  Stan Shebs  <shebs@andros.cygnus.com>
116
117         * mpw-config.in: Don't always use te-generic.h for emulation.
118         (powerpc-apple-macos): Use emulation te-macos.h.
119 start-sanitize-gm
120         (mips-gm-magic): New configuration.
121 end-sanitize-gm
122         * mpw-make.sed (install, install-only): Edit in Mac-specific
123         install procedure.
124
125 Fri Dec  1 10:59:25 1995  Ian Lance Taylor  <ian@cygnus.com>
126
127         * configure.in: Improve message about unsupported ELF targets.
128         * configure: Rebuild.
129
130         * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
131         pattern is zero.  From Manfred Hollstein.
132
133 Thu Nov 30 13:25:49 1995  Kim Knuttila  <krk@cygnus.com>
134
135         * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
136         the various idata sections, we check the name on the .section pseudo.
137
138 Thu Nov 30 11:23:42 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>
139
140         * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
141         add section's paddr to add_number; compatibility to native as and
142         ld forbids.
143
144 Wed Nov 29 23:14:27 1995  Ken Raeburn  <raeburn@cygnus.com>
145
146         * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
147
148         * hash.c (struct hash_entry): Moved here...
149         * hash.h (struct hash_entry): ...from here.
150
151         * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
152         if it's already known to be null.
153
154 Wed Nov 29 13:00:20 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
155
156         * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
157         bit relocs converted to PC relative relocs.  This turned out to
158         add the offset from the beginning of .text twice.
159
160 Tue Nov 28 10:42:36 1995  Ken Raeburn  <raeburn@cygnus.com>
161
162         * stabs.c (s_stab_generic): In 's' case, free string from
163         obstack.
164
165         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
166         sy_name_offset.
167         * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
168         Ditto.
169
170         * subsegs.h (segment_info_type): Make bitfields unsigned.
171
172         * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
173         and move them together.  On most systems this will reduce the
174         structure size by one word.
175         (operatorT): Define O_max.
176         * expr.c (expr_begin): Verify that X_op is wide enough to hold
177         O_max.
178
179         * read.c (pop_insert): Print error returned by hash table
180         insertion code.
181
182         * as.c (dump_statistics): Split out from main; dump some hash
183         table stats and target-specific stats.
184         (start_time): No longer automatic to main.
185         (main): Set file-level start_time and call dump_statistics at
186         exit.  Exit by calling xexit.
187         (show_usage): Make --statistics description less specific.
188         * subsegs.c (subsegs_print_statistics): New function.
189         * write.c (write_print_statistics): New function.
190         (n_fixups): New static variable.
191         (fix_new_internal): Increment it.
192         * read.c (read_print_statistics): New function.
193         * read.h (read_print_statistics): Declare.
194         * symbol.c (symbol_print_statistics): New function.
195         * symbol.h (symbol_print_statistics): Declare.
196         * hash.c (hash_print_statistics): New function.
197         * hash.h (hash_print_statistics): Declare.
198         * config/tc-i386.c (i386_print_statistics): New function.
199         * config/tc-i386.h (i386_print_statistics): Declare.
200         (tc_print_statistics): New macro.
201         * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
202         exit.
203
204         * hash.c (DELETED): Rewrite to use a valid but unique address.
205         (START_POWER): Reduce to 10.
206         (enum stat_enum): New enumerator, replacing STAT_* index macros.
207         Add new values for counting strcmp calls.
208         (GROW_FACTOR): New macro.
209         (hash_grow): Use GROW_FACTOR.  Rewrite for quick returns instead
210         of nesting blocks.
211         (FULL_VALUE): New macro.  Use 1/4 of table size instead of 1/2.
212         (hash_new): Use FULL_VALUE.
213         (struct hash_control): Definition moved here.
214         (hash_code): Don't mask to low bits.
215         (hash_ask): Mask returned hash code here.  Check hash value before
216         calling strcmp; count strcmp calls.
217         * hash.h (struct hash_control): Declare, don't define, here.
218         (HASH_STATLENGTH): Deleted.
219         (struct hash_entry): Add field for hash code.
220         (hash_say, hash_apply): Don't declare.
221
222         * hash.c (destroy): Return void.
223         (applicatee): Ditto.
224         (main): Fix declarations.
225         (hash_apply): Return void.  Argument `function' returns void.  Put
226         inside "#ifdef TEST".
227         (hash_say): Define only if TEST is defined.
228         * hash.h (hash_apply, hash_say): Declarations deleted.
229
230 Mon Nov 27 13:18:25 1995  Ian Lance Taylor  <ian@cygnus.com>
231
232         * configure: Rebuild with autoconf 2.7.
233
234 Tue Nov 21 18:39:01 1995  Ian Lance Taylor  <ian@cygnus.com>
235
236         * aclocal.m4 (AC_PROG_CC): Remove local definition.
237         * configure: Rebuild with autoconf 2.6.
238
239 Mon Nov 20 17:26:00 1995  Ian Lance Taylor  <ian@cygnus.com>
240
241         * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
242         (ppc_stabx): Don't increment ppc_debug_name_section_size.
243         (ppc_bc): Likewise.
244         (ppc_frob_file): Remove.
245         * config/tc-ppc.h (tc_frob_file): Don't define.
246         (ppc_frob_file): Don't declare.
247
248 Mon Nov 20 13:37:05 1995  Ken Raeburn  <raeburn@cygnus.com>
249
250         * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
251         * config/alpha-opcode.h: Include one-operand variants of jmp and
252         jsr.
253
254         * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
255         with te-delta.h in 8.3 file systems.
256         * configure.in: Adjusted.
257
258 Thu Nov 16 12:49:38 1995  Ian Lance Taylor  <ian@cygnus.com>
259
260         * config/tc-mips.c (s_err): Remove; just use the one in read.c.
261
262         * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
263         number.
264         * expr.c (operand): Handle MRI suffixes after unadorned 0.
265
266 Thu Nov 16 00:21:44 1995  Ken Raeburn  <raeburn@cygnus.com>
267
268         Version 2.6 released.
269         * Makefile.in (VERSION): Updated to 2.6.
270
271         * config/obj-coff.c (write_object_file): Change use of md_do_align
272         to pass a pointer rather than a fill value, to match other uses.
273
274 Wed Nov 15 03:52:00 1995  Ken Raeburn  <raeburn@cygnus.com>
275
276         * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
277
278         * as.c (main): Move md_end call to just after call to
279         perform_an_assembly_pass.  Delete cpu-specific code here.
280         * config/tc-i960.h (md_end): New macro, calls brtab_emit.
281 start-sanitize-rce
282         * config/tc-rce.c (md_end): Deleted.
283         * config/tc-rce.h (md_end): New macro, calls dump_literals.
284 end-sanitize-rce
285         * config/tc-arm.c (md_end): Unused function deleted.
286         * config/tc-ns32k.c (md_end): Ditto.
287
288         * config/tc-i386.c (i386_align_code): New function, moved here
289         from HANDLE_ALIGN macro.
290         * config/tc-i386.h (HANDLE_ALIGN): Call it.
291
292         Mon Jul 31 14:53:19 1995  Alan Modra  <alan@spri.levels.unisa.edu.au>
293
294         * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
295         before comparing
296
297         Mon May  1 10:91:49 1995  Alan Modra  <alan@spri.levels.unisa.edu.au>
298
299         * config/tc-i386.h (md_do_align):  Make ".align n,0x90" generate
300         multi-byte nops to avoid changing gcc.  The necessary gcc change
301         might break old assemblers.
302
303         Sat Apr 22 20:53:05 1995  Alan Modra  <alan@spri.levels.unisa.edu.au>
304
305         * config/tc-i386.h (md_do_align, HANDLE_ALIGN):  Add macros to
306         generate optimal multi-byte nop instructions for ".align n"
307         ".align n,0x90", and aligns requiring more than 15 bytes of
308         padding still generate multiple 0x90's as before.
309
310 Mon Nov 13 17:40:21 1995  Ian Lance Taylor  <ian@cygnus.com>
311
312         * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
313
314 Mon Nov 13 20:39:06 1995  Stan Shebs  <shebs@andros.cygnus.com>
315
316         * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
317         * configure: Update.
318         * mpw-make.sed: Reorder commands to make sed happier.
319         * config/te-macos.h: New file.
320         * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
321
322 Sun Nov 12 21:14:56 1995  Jeffrey A Law  (law@cygnus.com)
323
324         * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
325         conditional branches.
326         (md_apply_fix): Likewise.
327
328 Thu Nov  9 16:14:01 1995  Ian Lance Taylor  <ian@cygnus.com>
329
330         * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
331         generate a reloc which the linker will not handle correctly.  Fix
332         overflow checking--R_IREL is 18 bits, not 17.
333
334 Wed Nov  8 19:59:36 1995  Ian Lance Taylor  <ian@cygnus.com>
335
336         * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
337         from a PC relative reloc if TC_A29K.
338
339         * config/tc-a29k.c (line_separator_chars): Restore '@'.  Existing
340         code depends upon it.
341
342         * config/tc-a29k.c (md_operand): Handle $float, $double, and
343         $extend.  Based on code from Eric Freudenthal
344         <freudenthal@nyu.edu>.
345         * config/tc-a29k.h (LEX_DOLLAR): Define.
346         * read.c (LEX_DOLLAR): Define if not defined.
347         (lex_type): Use LEX_DOLLAR.
348
349 Wed Nov  8 16:38:14 1995  Eric Freudenthal <freudenthal@nyu.edu>
350
351         * configure.in (a29k-nyu-sym1): New target, just like other a29k
352         targets.
353
354 Wed Nov  8 11:38:48 1995  Ian Lance Taylor  <ian@cygnus.com>
355
356         * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
357
358 Tue Nov  7 09:14:35 1995  Kim Knuttila  <krk@cygnus.com>
359
360         * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
361         used only by "dlltool.c".
362
363 Mon Nov  6 18:51:26 1995  Ian Lance Taylor  <ian@cygnus.com>
364
365         * config/tc-alpha.c: Undefine inline if not __GNUC__.
366         (md_pseudo_table): Don't define "extern".
367
368 Sat Nov  4 00:51:21 1995  Ian Lance Taylor  <ian@cygnus.com>
369
370         * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
371
372         * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
373
374 Fri Nov  3 13:02:59 1995  Ian Lance Taylor  <ian@cygnus.com>
375
376         * macro.c (macro_expand_body): Don't warn about == with a
377         nonexistent parameter, in case it is in a comment field.
378
379         * as.c (main): On TC_A29K, call macro_init with macro_alternate
380         set to 1.
381         * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
382         set, even if macro_alternate is set.
383         (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
384         (sub_actual): If macro_strip_at, and kind is '@', don't look up
385         the token unless it ended in '@'.
386         * config/tc-a29k.c (line_separator_chars): Remove '@'.
387         * doc/c-a29k.texi: Document macro usage on A29K.
388
389 Thu Nov  2 23:07:57 1995  Ian Lance Taylor  <ian@cygnus.com>
390
391         * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
392         signed word.
393         (install_operand): Likewise.
394
395         * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
396
397 Wed Nov  1 15:17:02 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>
398
399         * configure.in (m88k-motorola-sysv*): New target.
400         * configure: Rebuild.
401         * config/te-delta88.h: New file.
402         * config/obj-coff.c (write_object_file): Use md_do_align if it is
403         defined.
404         * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
405         (md_do_align): Define.
406         * config/tc-m88k.c: Include "subsegs.h".
407         (m88k_do_align): New function.
408
409         * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
410         (COFF_NOLOAD_PROBLEM): Define.
411         (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
412
413 Wed Nov  1 16:07:43 1995  Ken Raeburn  <raeburn@cygnus.com>
414
415         * config/tc-i386.c (md_assemble): For a jump instruction with
416         non-constant target, require 7 available bytes in the current
417         frag, not 6.
418
419 Tue Oct 31 15:37:16 1995  Fred Fish  <fnf@rtl.cygnus.com>
420
421         * config/obj-elf.h: Include bfd/elf-bfd.h rather than
422         bfd/libelf.h.
423
424 Tue Oct 31 16:34:28 1995  David Mosberger-Tang  <davidm@azstarnet.com>
425
426         * configure.in (alpha-*-linux*): Use ecoff.
427         * configure: Rebuild.
428         * ecoff.c (ecoff_directive_extern): New function.
429         (ecoff_directive_weakext): New function.
430         (ecoff_build_symbols): Handle weak symbols.
431         (ecoff_setup_ext): Likewise.
432         (ecoff_frob_symbol): Warn about weak common symbols.
433         * ecoff.h (ecoff_directive_extern): Declare.
434         (ecoff_directive_weakext): Declare.
435         * symbols.c (S_IS_WEAK): New function.
436         * symbols.h (S_IS_WEAK): Declare.
437         * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
438         "weakext".
439         * config/tc-mips.c (mips_pseudo_table): Remove "extern".
440         (s_extern): Remove.
441
442 Tue Oct 31 13:29:08 1995  Ian Lance Taylor  <ian@cygnus.com>
443
444         * config/tc-ppc.c (ppc_lglobl): Do the right thing.
445
446         * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
447         (ppc_eb): Likewise.  Set the storage class to C_BLOCK, not C_FCN.
448         (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
449         * config/obj-coff.c (coff_frob_symbol): Don't call
450         SA_SET_SYM_ENDNDX with the current symbol; call it with the next
451         one.  If OBJ_XCOFF, try to figure out whether the symbol is going
452         to be dropped.
453
454         * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
455         (ppc_stab_symbol): New static variable.
456         (ppc_change_csect): Check that ppc_toc_csect is not NULL.
457         (ppc_stabx): Set ppc_stab_symbol around call to symbol_make.  Set
458         sy_tc.real_name to the stab string.
459         (ppc_bc, ppc_ec): New static functions.
460         (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
461         do anything.
462         (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
463         suffix.
464         (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
465         entries.
466
467         * input-scrub.c (input_scrub_push): Reset sb_index.
468
469 Mon Oct 30 17:52:46 1995  Ian Lance Taylor  <ian@cygnus.com>
470
471         * listing.c (listing_newline): Don't create a frag in the absolute
472         section.
473
474 Sat Oct 28 01:02:05 1995  Ian Lance Taylor  <ian@cygnus.com>
475
476         * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
477         (ppc_csect): Move most of the code to ppc_change_csect, and call
478         it.
479         (ppc_change_csect): New static function, taken from ppc_csect.
480         (ppc_section): New static function.
481         (ppc_saw_abs): New static varable.
482         (ppc_frob_symbol): Create aux entry for absolute symbols.  Warn if
483         a symbol has no csect.
484         (ppc_adjust_symtab): New function.
485         * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
486         (ppc_adjust_symtab): Declare if OBJ_XCOFF.
487
488         * write.c (write_object_file): If tc_adjust_symtab is defined,
489         call it just before the call to obj_adjust_symtab.
490
491         * symbols.c (symbol_find_or_make): Change name to be const.
492         * symbols.h (symbol_find_or_make): Update declaration.
493
494 Thu Oct 26 19:18:27 1995  Ken Raeburn  <raeburn@cygnus.com>
495
496         * doc/as.texinfo (Align): Mention SH.
497         * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
498         .align value.
499         * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
500         (Z8000 Directives, even): Don't give numeric align value, instead
501         explain behavior.
502
503 Thu Oct 26 11:45:03 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
504
505         * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
506         instruction.
507
508 Wed Oct 25 11:59:24 1995  Per Bothner  <bothner@kalessin.cygnus.com>
509
510         * Makefile.in (diststuff):  Also make info.
511         (maintainer-clean realclean):  Also make clean-info.
512
513 Tue Oct 24 15:21:33 1995  Jeffrey A Law  (law@cygnus.com)
514
515         * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
516         (pa_subspace): For ".nsubspa", always create a new subspace
517         with the given attributes, even if one already exists with the
518         same name.
519
520 Tue Oct 24 14:50:38 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
521
522         * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
523         TC_FORCE_RELOCATION, taking an additional section argument.  If
524         the section of the target symbol is not the same as the current
525         section, always force the relocation to be used.
526         (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
527
528         * config/tc-ppc.c (md_pcrel_from_section): Rename from the
529         md_pcrel_from function, taking an additional section argument.
530         Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
531
532         * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
533         older TC_FORCE_RELOCATION if not defined.
534         (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
535         (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
536         md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
537         TC_FORCE_RELOCATION.
538         
539 Mon Oct 23 16:20:04 1995  Ken Raeburn  <raeburn@cygnus.com>
540
541         * input-scrub.c (as_where): Set name to null pointer if we don't
542         have a file name.
543         * messages.c (identify): Only print filename if non-null.
544         (as_show_where): Ditto, for line number too.
545         (as_warn_internal, as_bad_internal): Ditto.
546
547         * input-file.c (input_file_open): If the input file can't be
548         opened, consider it an error.
549
550 Mon Oct 23 11:15:44 1995  James G. Smith  <jsmith@pasanda.cygnus.co.uk>
551
552         * config/tc-mips.c: Added mips_4100 control, and support for
553         accepting the 4100 as a MIPS architecture variant (md_begin,
554         macro_build, mips_ip, md_parse_option). Adding suitable
555         command-line OPTIONs, and updating the help text (md_show_usage).
556         
557 Wed Oct 18 13:20:32 1995  Ken Raeburn  <raeburn@cygnus.com>
558
559         * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
560         BFD_ASSEMBLER is defined.
561
562         * Use one active frag and one obstack per frag chain:
563         * frags.c (frags): Variable deleted.
564         (frag_alloc): New function.
565         (frag_grow, frag_more, frag_variant, frag_now_fix,
566         frag_append_1_char): Refer to frchain_now->frch_obstack instead of
567         frags variable.
568         (frag_new): Ditto.  Verify that frch_last and frag_now match on
569         entry and exit, and that old frag_now has non-zero type.  Replace
570         "know" uses with "assert".  Use frag_alloc instead of mucking with
571         obstack alignment.
572         * frags.h (frags): Declaration deleted.
573         * subsegs.h (struct frchain): Add new field frch_frag_now.
574         * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
575         variables.
576         (subsegs_begin): Initialize frchains obstack.  Under gcc, don't
577         give it any stricter alignment than frchainS structures need.  Do
578         not initialize frags obstack.  Set frag_now to point to
579         dummy_obstack.  Initialize absolute_frchain.
580         (subseg_set_rest): Save and restore frag_now in frch_frag_now
581         field of frchainS.  Don't create new frags on section switch, and
582         use frag_alloc when creating a new frag chain.  For absolute
583         section, set frchain_now to absolute_frchain.  Verify that
584         frch_last and frag_now match on entry and exit.  Initialize
585         per-chain obstack, and under gcc, set required alignment to that
586         needed by fragS structure.
587
588         * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
589
590         * stabs.c (get_stab_string_offset): Only copy input string if a
591         fresh copy is needed, not if the section already exists.
592         (s_stab_generic): Cache stab section name to bypass lookups, since
593         usually it will match.  Could be made faster still by changing the
594         memory allocation rules.
595         (s_xstab): Cache section name to bypass repeated string
596         allocation.
597
598         * frags.c (frag_new): Deleted register declarations.
599
600         * listing.c (frag_now): Don't declare.
601
602         * as.c (chunksize): New variable.
603         (debug_memory): New variable.
604         (main): If debug_memory is set, reduce chunksize and
605         _bfd_chunksize.
606         * as.h (chunksize): Declare it.
607         * read.c (read_begin): Use it.
608
609         * config/tc-alpha.c (md_shortopts): Include 'g'.
610         (md_parse_option): Ignore it.
611
612         * Makefile.in (distclean): Remove Makefile and config.status from
613         testsuite directory.
614         (clean-here): Don't delete testsuite.  Instead, delete only the
615         files within it that would be generated by running tests.
616
617         * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
618         frag_now_fix instead of accessing obstack info directly.
619         * config/tc-arm.c (s_ltorg): Ditto.
620         (md_assemble): Ditto.
621
622         * config/tc-i386.c (md_assemble): Call frag_grow instead of
623         obstack_room.
624
625 Wed Oct 18 12:22:59 1995  Ken Raeburn  <raeburn@cygnus.com>
626
627         * stabs.c (aout_process_stab): Insert debug symbol into symbol
628         chain after parsing value expression, if any, to avoid separating
629         continued .stabs lines.
630
631 Mon Oct 16 10:56:41 1995  Ian Lance Taylor  <ian@cygnus.com>
632
633         * config/tc-mips.c (mips_elf_pseudo_table): Remove.
634         (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
635
636 Mon Oct 16 07:07:37 1995  Michael Meissner  <meissner@wogglebug.tiac.net>
637
638         * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
639         -mcom support and PPC_OPCODE_ANY for -many.
640         (md_parse_option): Ditto.
641         (ppc_arch): Ditto.
642         (md_begin): For duplicate instructions, print all duplicates
643         before aborting.
644
645 Sun Oct 15 22:06:14 1995  Michael Meissner  <meissner@cygnus.com>
646
647         * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
648         common mode operation.
649         (md_show_usage): Add -mcom to usage message.
650
651 Fri Oct 13 13:32:45 1995  steve chamberlain  <sac@slash.cygnus.com>
652
653         * expr.c (op_rank): Add O_symbol_rva.
654         * expr.h (operatorT): Add O_symbol_rva.
655         * read.c (cons_worker): Set O_symbol_rva when necessary.
656         * write.c (fix_new_exp): Understand O_symbol_rva.
657
658 Tue Oct 10 11:34:14 1995  Ian Lance Taylor  <ian@cygnus.com>
659
660         * config/tc-mips.c: Correct s_cons arguments.  From Michael
661         Joosten <joost@ori.cadlab.de>.
662
663 Mon Oct  9 19:59:53 1995  Ian Lance Taylor  <ian@cygnus.com>
664
665         * config/tc-ppc.c (ppc_macro): Make count unsigned.
666         (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
667         (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
668         the fix_line field.
669         * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
670         make non-static.  Change all users.
671         * config/obj-coff.h (coff_n_line_nos): Declare.
672
673 Fri Oct  6 16:24:27 1995  Ken Raeburn  <raeburn@cygnus.com>
674
675         Mon Sep 25 22:49:32 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
676
677         * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
678
679         * config/obj-elf.c (obj_elf_common): Convert specified byte
680         alignment to power of two.  Set size of local bss symbol.
681
682         * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
683
684 Fri Oct  6 15:22:25 1995  Ian Lance Taylor  <ian@cygnus.com>
685
686         * sb.c, macro.c: Decide whether to include <string.h> or
687         <strings.h> just as as.h does.
688
689 Fri Oct  6 09:55:33 1995  Doug Evans  <dje@canuck.cygnus.com>
690
691         * Makefile.in (site.exp): Fix setting of $srcdir.
692
693         * config/tc-arm.c (md_atof): Fix little-endian output.
694         * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
695         all coff targets.
696
697 Thu Oct  5 20:17:30 1995  Ken Raeburn  <raeburn@cygnus.com>
698
699         * doc/as.texinfo: Split out the NS32k family documentation,
700         despite its being commented out for now.
701         * doc/c-ns32k.texi: New file.
702
703         * sb.c, macro.c: Include string.h.
704
705         * Makefile.in (comparison): Only check *.o; we don't care if
706         timestamps inserted by the native linker differ.
707
708         * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
709         if alignment stricter than 4 bytes is requested; in that case,
710         align to a 4-byte boundary first.
711
712         Thu Sep 28 19:35:27 1995  Pat Rankin  <rankin@eql.caltech.edu>
713
714         * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
715         uninitialized" warning for `Max_Source_Offset'.
716
717 Wed Oct  4 16:17:02 1995  Kim Knuttila  <krk@cygnus.com>
718
719         * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
720         qualifiers and detect errors if present.
721         (md_assemble): Add call to parse_toc_entry. Also added some support
722         for the [tocv] qualifier.
723         (ppc_pe_tocd): New function to support data in the toc section.
724
725 Wed Oct  4 14:03:39 1995  Ian Lance Taylor  <ian@cygnus.com>
726
727         * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
728         an absolute symbol.
729
730 Tue Oct  3 12:18:19 1995  Ian Lance Taylor  <ian@cygnus.com>
731
732         * config/tc-m68k.c (isword): Accept all values from -65536 to
733         +65535, so ~VAL will not be rejected.
734
735         * cond.c (s_endif): Call demand_empty_rest_of_line.  In MRI mode,
736         skip characters after the pseudo-op.
737         (s_else): Likewise.
738         * read.c (get_line_sb): Don't look past buffer_limit.
739         (s_include): In MRI mode, skip characters after the file name.
740
741 Mon Oct  2 16:15:27 1995  Ian Lance Taylor  <ian@cygnus.com>
742
743         * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
744         periods in register names.
745
746 For older changes see ChangeLog.1.