92529def30aa63df343508f5a36a9322dd3cf1e8
[platform/upstream/binutils.git] / gas / ChangeLog
1 Sat May  4 11:26:19 1996  Ian Lance Taylor  <ian@cygnus.com>
2
3         * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
4         variables.
5
6 Fri May  3 17:58:31 1996  Ian Lance Taylor  <ian@cygnus.com>
7
8         * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
9         SF_GET_STATICS set.
10         (yank_symbols): Likewise.
11
12 Wed May  1 13:38:17 1996  Ian Lance Taylor  <ian@cygnus.com>
13
14         * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
15         BFD_ASSEMBLER, add name field.
16         * config/obj-coff.c: Include "libiberty.h".
17         (coff_header_append): Handle long section names.
18         (crawl_symbols): Just use the name field for the symbol name,
19         without worrying about null byte termination.
20         (w_strings): Handle long section names.
21         (write_object_file): Likewise.  Also, use the name field, rather
22         than scnhdr.s_name.
23         (obj_coff_add_segment): Permit long section names.
24         (obj_coff_init_stab_section): Use the name field, rather than
25         scnhdr.s_name.
26         (adjust_stab_section): Likewise.
27         * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
28
29         * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
30         (mem_fmt): Likewise.
31         (md_apply_fix): Don't check fx_im_disp field.
32
33 Thu Apr 25 11:39:51 1996  Ian Lance Taylor  <ian@cygnus.com>
34
35         * configure.in: Add * after sparc*-*-vxworks.
36         * configure: Rebuild.
37
38         * app.c (do_scrub_begin): If tc_comment_chars is not defined,
39         define it to comment_chars.  Use tc_comment_chars rather than
40         comment_chars.
41         (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
42         * config/tc-m68k.h (tc_comment_chars): Define.
43         (m68k_comment_chars): Declare.
44         * config/tc-m68k.c (m68k_comment_chars): Rename from
45         comment_chars.  Change into a pointer rather than an array.
46         (md_longopts): Add "bitwise-or".
47         (md_parse_option): Handle OPTION_BITWISE_OR.
48         (md_show_usage): Mention --bitwise-or.
49         * doc/c-m68k.texi: Document --bitwise-or.
50
51 Wed Apr 24 11:28:38 1996  Ian Lance Taylor  <ian@cygnus.com>
52
53         * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
54         in 68000 mode.
55
56         * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
57         call demand_empty_rest_of_line.  Non BFD_ASSEMBLER version:
58         correct handling of input line pointer, and call
59         demand_empty_rest_of_line.
60
61 Mon Apr 22 18:02:37 1996  Doug Evans  <dje@blues.cygnus.com>
62
63         * config/tc-sparc.c (in_bitfield_range): New static function.
64         (sparc_ip): New cases X,Y.  Use SPARC_OPCODE_ARCH_V9_P.
65         (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
66         BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
67         (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
68         (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
69
70 Thu Apr 18 18:58:33 1996  Ian Lance Taylor  <ian@cygnus.com>
71
72         * config/obj-coff.c: BFD_ASSEMBLER:
73         (coff_last_bf): New static variable.
74         (coff_frob_symbol): Set endndx of a .bf symbol.
75         Non BFD_ASSEMBLER:
76         (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
77         (last_bfP): New static variable.
78         (yank_symbols): Set endndx of a .bf symbol.
79
80 Thu Apr 18 11:53:58 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
81
82         * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
83         and -s options.  Add -be for good measure.
84
85 Wed Apr 17 12:31:01 1996  Ian Lance Taylor  <ian@cygnus.com>
86
87         * read.c (s_space): Support non-constant fill value.  Handle fill
88         value correctly for a size other than 1.
89
90 Tue Apr 16 15:17:40 1996  Doug Evans  <dje@canuck.cygnus.com>
91
92         * config/tc-arm.c (my_get_float_expression): Update call to
93         gen_to_words, X_PRECISION changed from 6 to 5.
94
95 Tue Apr 16 10:25:42 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
96
97         * config/tc-ppc.c (register_name,reg_name_search): Move register
98         name lookup from PE specific code to all targets.  Add support for
99         -mregnames/-mno-regnames to control whether register names are
100         expanded or not.
101         (md_assemble): Call register_name for all platforms.
102         (md_parse_option): Add support for -mregnames/-mno-regnames.
103
104         * configure.in (powerpcle*-*-solaris): Add support.
105         (powerpc*-*-linux): Ditto.
106         * configure: Regenerate.
107
108         * config/ppc-sol.mt: New config file for PowerPC Solaris.
109
110 Mon Apr 15 12:26:33 1996  Ian Lance Taylor  <ian@cygnus.com>
111
112         * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
113         be associated with a single %lo reloc.
114
115         * config/tc-mips.c (load_address): Cast X_add_number to valueT
116         before comparing against MAX_GPREL_OFFSET, so that negative
117         numbers are handled correctly.
118         (macro): Likewise.
119
120 Thu Apr 11 12:39:02 1996  Ian Lance Taylor  <ian@cygnus.com>
121
122         * config/tc-sparc.c (last_insn): New static variable.
123         (md_assemble): Warn about putting floating point branches in a
124         delay slot.  If architecture is less than v9, insert NOP
125         instructions between floating point instructions and floating
126         point branches.  (The SunOS assembler does both these operations.)
127         Save the last instruction opcode.
128         (sparc_ip): Add pinsn parameter.  Change caller.
129
130         * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
131         for byte jump to next instruction to skip empty frags.
132
133 Wed Apr 10 16:48:12 1996  Ian Lance Taylor  <ian@cygnus.com>
134
135         * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
136         for addq with a 16 bit signed value, just emit a lda instruction
137         instead.
138
139 Wed Apr 10 14:34:49 1996  Jeffrey A Law  (law@cygnus.com)
140
141         * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
142         of a 32bit operand.
143
144 Mon Apr  8 14:42:53 1996  Ian Lance Taylor  <ian@cygnus.com>
145
146         * configure.in: Permit --enable-shared to specify a list of
147         directories.
148         * configure: Rebuild.
149
150 Fri Apr  5 17:01:35 1996  Jeffrey A Law  (law@cygnus.com)
151
152         * config/tc-h8300.c (get_specific): Remove some #if 0 code.
153         (build_bytes): Remove all ABSMOV related code; it's unnecessary.
154
155 Fri Apr  5 15:13:10 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
156
157         * config/atof-ieee.c: Fix handling of denormalized extended
158         precision numbers and overflow/underflow detection.
159         (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
160         not include the 16 bit gap in the m68k extended precision format.
161
162 Fri Apr  5 14:29:23 1996  Ian Lance Taylor  <ian@cygnus.com>
163
164         * configure.in: Add i386-*-freebsdelf* target; from John Polstra
165         <jdp@polstra.com>.
166         * configure: Rebuild.
167
168 Fri Apr  5 18:39:28 1996  James G. Smith  <jsmith@cygnus.co.uk>
169
170         * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
171         be accessed using the $gp register.
172         * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
173
174 Wed Apr  3 10:56:14 1996  Doug Evans  <dje@canuck.cygnus.com>
175
176         * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
177         bfd_mach_sparc_sparclet if current_architecture is sparclet.
178
179 Mon Apr  1 16:55:44 1996  Ian Lance Taylor  <ian@cygnus.com>
180
181         * read.c (get_line_sb): Bump line counters based on
182         input_line_pointer[-1], not *input_line_pointer.  Don't bother to
183         call LISTING_NEWLINE.
184         (s_macro): Don't call demand_empty_rest_of_line.
185         * app.c (do_scrub_chars): When handling C style comments, unget
186         ch2 rather than ch.
187
188 Fri Mar 29 16:15:06 1996  Ian Lance Taylor  <ian@cygnus.com>
189
190         * read.h (enum linkonce_type): Define.
191         (s_linkonce): Declare.
192         * read.c (potable): Add "linkonce".
193         (s_linkonce): New function.
194         * subsegs.h (segment_info_type): Add linkonce field to
195         MANY_SEGMENTS && ! BFD_ASSEMBLER section.
196         * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
197         (obj_coff_pe_handle_link_once): Declare if TE_PE.
198         * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
199         "coff/pe.h".
200         (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
201         (c_section_symbol): If TE_PE, set the x_comdat field in the aux
202         entry based on the linkonce field in segment_info.
203         * doc/as.texinfo: Document .linkonce.
204
205 Fri Mar 29 11:31:27 1996  J.T. Conklin  (jtc@lisa.cygnus.com)
206
207         * doc/as.1: Changed to be recognized by catman -w on Solaris.
208
209 Thu Mar 28 15:27:47 1996  Ian Lance Taylor  <ian@cygnus.com>
210
211         * stabs.c (s_stab_generic): Call the listing functions before
212         doing the rest of the processing, which may involve freeing the
213         string.  Pass string, not string + stroff, to OBJ_PROCESS_STAB in
214         SEPARATE_STAB_SECTIONS case.
215
216         * config/tc-hppa.c: Remove nested comment.
217         (tc_gen_reloc): Move label done inside the ifdef in which it is
218         used.
219         (md_apply_fix): Pass pointers to correct types to libhppa.h
220         functions.  Always return a value.
221
222         * config/tc-mips.h (tc_frob_file): Define.
223         (mips_frob_file): Declare.
224         * config/tc-mips.c (struct mips_hi_fixup): Define.
225         (mips_hi_fixup_list): New static variable.
226         (imm_unmatched_hi): New static variable.
227         (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
228         offset_reloc.  Pass imm_unmatched_hi to append_insn.
229         (append_insn): Add unmatched_hi parameter.  If it is set, add the
230         new fixup to mips_hi_fixup_list.  Change all callers.
231         (mips_ip): Set imm_unmatched_hi when appropriate.
232         (mips_frob_file): New function.
233
234 Thu Mar 28 11:47:59 1996  Doug Evans  <dje@canuck.cygnus.com>
235
236         * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
237         * configure: Regenerated.
238
239 Tue Mar 26 18:19:12 1996  Ian Lance Taylor  <ian@cygnus.com>
240
241         * as.c (main): Call bfd_set_error_program_name.
242
243 Fri Mar 22 11:13:00 1996  Ian Lance Taylor  <ian@cygnus.com>
244
245         * as.h (strdup): Don't declare.
246         * stabs.c: Include libiberty.h
247         (get_stab_string_offset): Use xstrdup rather than strdup.
248         (s_stab_generic): Likewise.
249         * as.c (parse_args): Likewise.
250         * read.c (s_mri_sect): Likewise.
251
252         * gasp.c (change_base): Recognize \(...) construct documented to
253         pass through enclosed characters literally through to the output.
254         (process_assigns): Likewise.  Also, be more careful to avoid
255         looking past the end of the buffer.
256
257 Thu Mar 21 13:18:43 1996  Ian Lance Taylor  <ian@cygnus.com>
258
259         * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
260         FreeBSD compatibility.  From John Polstra <jdp@polstra.com>.
261
262 Wed Mar 20 18:13:32 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
263
264         * doc/as.texinfo, doc/c-i960.texi: Fix typos.
265
266 Wed Mar 20 17:05:16 1996  David Mosberger-Tang  <davidm@azstarnet.com>
267
268         * config/alpha-opcode.h: Added cvtst instruction.
269
270 Mon Mar 18 13:12:46 1996  Ian Lance Taylor  <ian@cygnus.com>
271
272         * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
273         string.  Extract the addend from the result of expression.
274
275 Fri Mar 15 17:10:43 1996  Ian Lance Taylor  <ian@cygnus.com>
276
277         * app.c (do_scrub_chars): If whitespace is seen in state 11, and
278         LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
279         mode, change the state to 3 rather than 1.
280
281 Thu Mar 14 18:18:25 1996  Ian Lance Taylor  <ian@cygnus.com>
282
283         * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
284         correspond to 11 March change.
285
286 Thu Mar 14 15:27:10 1996  Jeffrey A Law  (law@cygnus.com)
287
288         * config/tc-h8300.c (build_bytes, MEMIND case): Generate
289         an R_MEM_INDIRECT reloc rather than R_RELBYTE.
290
291 Tue Mar 12 12:21:10 1996  Ian Lance Taylor  <ian@cygnus.com>
292
293         * configure: Rebuild with autoconf 2.8.
294
295 Mon Mar 11 18:57:12 1996  Ian Lance Taylor  <ian@cygnus.com>
296
297         * config/atof-ieee.c (gen_to_words): Improve handling of
298         X_PRECISION numbers.  Based on patches from Andreas Schwab
299         <schwab@issan.informatik.uni-dortmund.de>.
300
301 Mon Mar 11 09:59:53 1996  Steve Chamberlain  <sac@slash.cygnus.com>
302
303         * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
304         (SEG_LAST): New.
305         * subsegs.c (MANY_SEGMENTS): Increase segment limit.
306         * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
307         (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
308         crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
309         SEG_E9.
310         
311 Thu Mar  7 15:17:39 1996  Doug Evans  <dje@charmed.cygnus.com>
312
313         * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
314
315 Thu Mar  7 09:19:15 1996  Jeffrey A Law  (law@cygnus.com)
316
317         * config/tc-hppa.c (SUBSEG_MILLI): Define.
318         (pa_def_subspaces): Add $MILLICODE$.
319         (pa_spaces_begin): Set section flags for $MILLICODE$.
320
321 Wed Mar  6 14:11:30 1996  Ian Lance Taylor  <ian@cygnus.com>
322
323         * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
324         not SHT_NOBITS.  Don't tamper with flags based on type if a
325         special section was found (revert Feb 29 change).
326
327         * config/tc-sh.c (sh_do_align): Only align using the nop pattern
328         if aligning to a longword boundary or greater.
329
330 Tue Mar  5 15:10:43 1996  Jim Wilson  <wilson@chestnut.cygnus.com>
331
332         * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
333
334 Mon Mar  4 20:50:57 1996  Steve Chamberlain  <sac@slash.cygnus.com>
335
336         * configure.in (i386-*-cygwin32): Don't use bfd_gas.
337         * configure: Regenerated.
338
339 Mon Mar  4 10:13:06 1996  Jeffrey A Law  (law@cygnus.com)
340
341         * config/tc-hppa.c: Add default definitions for R_N0SEL and
342         R_N1SEL since they're not defined for old versions of hpux.
343
344         * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
345         Set "sym_ptr_ptr" and "addend" fields to dummy values for
346         R_N0SEL and R_N1SEL.
347
348 Fri Mar  1 10:20:52 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
349
350         * flonum-konst.c: Add two more constants for 1e+-2048 and
351         1e+-4096, and correct the other constants.
352
353         * symbols.c (resolve_symbol_value): Handle O_logical_not.
354
355 Thu Feb 29 13:58:35 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
356
357         * config/obj-elf.c (obj_elf_section): Allow predefined section
358         types to set the nobits type.  Avoid a shadowed declaration.
359
360 Wed Feb 28 15:38:56 1996  Jeffrey A Law  (law@cygnus.com)
361
362         * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
363         reduce relocs using e_nlrsel field selectors.
364
365         * write.c (fix_new_exp): Don't use #elif.  Some compilers
366         don't handle it.
367
368         * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
369         the selector table.
370         (pa_chk_field_selector): Handle new field selectors for SOM.
371
372 Tue Feb 27 14:42:27 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
373
374         * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
375         * configure: Rebuild.
376         * config/te-linux.h (LOCAL_LABELS_FB): Define.
377         * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
378         "a.out-m68k-linux".
379         * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
380         is defined.
381
382 Mon Feb 26 18:58:58 1996  Stan Shebs  <shebs@andros.cygnus.com>
383
384         * mpw-make.sed: Update to handle shared library support.
385
386 Mon Feb 26 10:34:10 1996  Doug Evans  <dje@charmed.cygnus.com>
387
388         * config/tc-sparc.c (sparc_ip): Print all architectures that support
389         the insn on mismatch.
390
391 Fri Feb 23 21:44:39 1996  Rob Savoye  <rob@chinadoll.cygnus.com>
392
393         * configure.in: Add support for a29-coff.
394         * configure: Rebuild.
395
396 Thu Feb 22 16:39:43 1996  Ian Lance Taylor  <ian@cygnus.com>
397
398         * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
399         of the section when looking for the R_SH_USES fixup, because the
400         frag addresses have not yet been adjusted.
401
402         * gdbinit.in: Set a breakpoint on as_warn_where.
403
404         * config/tc-mips.c (macro): Add missing arguments to macro_build
405         omitted in last change.  From Jim Wilson <wilson@cygnus.com>.
406
407 Wed Feb 21 17:00:32 1996  Ian Lance Taylor  <ian@cygnus.com>
408
409         * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
410         if it is TC_CONS_RELOC.  Set a size of 4 to R_RELLONG.
411
412 Wed Feb 21 09:25:39 1996  Doug Evans  <dje@charmed.cygnus.com>
413
414         * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
415
416 Tue Feb 20 21:48:03 1996  Doug Evans  <dje@charmed.cygnus.com>
417
418         * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
419         (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
420         Recognize [uU] format args as sparclet cpregs.
421
422 Tue Feb 20 22:25:55 1996  Ian Lance Taylor  <ian@cygnus.com>
423
424         * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
425         in bss_section.
426
427 Mon Feb 19 14:16:24 1996  Ian Lance Taylor  <ian@cygnus.com>
428
429         * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
430         well as S_IS_EXTERNAL.
431         (tc_fix_adjustable): Likewise.
432         * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
433         S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
434         early.
435         (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
436         deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
437
438 Mon Feb 19 02:15:57 1996  Doug Evans  <dje@charmed.cygnus.com>
439
440         * config/tc-sparc.c (max_architecture): Change to sparclite for
441         32 bit arch.
442         (default_compatible): Delete.
443         (sparc_ffs): New function.
444         (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
445         (sparc_ip): Rewrite architecture match and bump logic.
446
447 Sun Feb 18 15:03:50 1996  Ian Lance Taylor  <ian@cygnus.com>
448
449         * configure.in: Check for 'do not mix' from native linker before
450         trying to use -rpath.
451         * configure: Rebuild.
452
453 Fri Feb 16 16:53:31 1996  Ian Lance Taylor  <ian@cygnus.com>
454
455         * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
456         (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
457         (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
458         * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
459         is set.
460         (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
461         to the symbol lnnoptr field, to get the correct file offset.
462
463 Thu Feb 15 14:48:38 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
464
465         * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
466         symbols that are not function, file, or section symbols to be
467         object types.
468
469 Thu Feb 15 11:20:18 1996  Ian Lance Taylor  <ian@cygnus.com>
470
471         * configure: Set and substitute RPATH_ENVVAR.
472         * configure: Rebuild.
473         * Makefile.in (RPATH_ENVVAR): New variable.
474         (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
475
476         * configure.in: Accept i686.  From H.J. Lu <hjl@zoom.com>: i386
477         doesn't need opcodes.  If configuring shared, opcodes needs bfd.
478         * configure: Rebuild.
479
480 Wed Feb 14 16:33:12 1996  Martin Anantharaman  <martin@mail.imech.uni-duisburg.de>
481
482         * read.c (s_mri_sect): Don't return '\0' in type.  Set all
483         appropriate flags in BFD section.
484
485         * configure.in (m68k-*-psos*): New target.
486         * configure: Rebuild.
487         * config/te-psos.h: New file.
488         * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
489         is defined.
490
491 Wed Feb 14 13:43:24 1996  Ian Lance Taylor  <ian@cygnus.com>
492
493         From Alan Modra <alan@spri.levels.unisa.edu.au>:
494         * configure.in: Remove duplicate setting of cpu_type.  Check
495         whether opcodes library is required for on all targets, not just
496         primary one.
497         * configure: Rebuild.
498
499         * config/tc-mips.c (mips_big_got): New static variable.
500         (s_extern): Don't declare.
501         (reg_needs_delay): New static function.
502         (macro_build): Permit GOT/CALL_HI/LO relocs.
503         (macro_build_lui): If place is not NULL, use the number in the
504         expression.
505         (load_address): Handle mips_big_got case.
506         (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
507         store macros.
508         (OPTION_XGOT): Define.
509         (md_longopts): Add "xgot" if OBJ_ELF.
510         (md_parse_option): Handle -xgot.
511         (md_show_usage): Mention -xgot.
512         (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
513         (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
514
515 Wed Feb 14 11:22:27 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
516
517         * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
518         the byte relocation, point it to the low byte of the word.
519
520 Tue Feb 13 15:31:18 1996  Ian Lance Taylor  <ian@cygnus.com>
521
522         * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
523         * configure: Rebuild.
524
525 Mon Feb 12 15:53:46 1996  Doug Evans  <dje@charmed.cygnus.com>
526
527         * configure.in: Recognize any sparc* cpu.
528         * configure: Regenerated.
529
530 Mon Feb 12 15:41:21 1996  Ian Lance Taylor  <ian@cygnus.com>
531
532         * read.c (potable): Add "mri" and ".mri".
533         (s_mri): New function.
534         * read.h (s_mri): Declare.
535         * app.c (scrub_m68k_mri): New static variable.
536         (mri_pseudo): New static variable.
537         (do_scrub_begin): Add m68k_mri parameter.  Use it rather than
538         flag_m68k_mri.  Initialize scrub_m68k_mri.
539         (mri_state, mri_last_ch): New static variables.
540         (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
541         fields.
542         (app_push): Save new fields.
543         (app_pop): Restore new fields.
544         (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
545         If TC_M68K, use a trivial state machine to look for occurrences of
546         the .mri pseudo-op, and change the mode appropriately.
547         * as.h (do_scrub_begin): Update prototype.
548         * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
549         do_scrub_begin.
550         * config/tc-m68k.c (reg_prefix_optional_seen): New static
551         variable.
552         (m68k_mri_mode_change): New function.
553         (md_parse_option): Set reg_prefix_optional_seen.
554         * config/tc-m68k.h (m68k_mri_mode_change): Declare.
555         (MRI_MODE_CHANGE): Define.
556         * doc/as.texinfo: Document .mri pseudo-op.
557
558         * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
559         comment character.
560
561 Mon Feb 12 15:16:29 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
562
563         Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
564         * config/m68k-parse.h (enum pic_relocation): Define.
565         (struct m68k_exp): Add pic_reloc field.
566         * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
567         (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
568         (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
569         otherwise.
570         * config/tc-m68k.c: Delete definition of NO_RELOC.
571         (struct m68k_it): Add pic_reloc field.
572         (add_fix): Copy over pic_reloc field.
573         (md_pseudo_table): Interpret .align parameter as byte count.
574         (mote_pseudo_table): Likewise.
575         (tc_m68k_fix_adjustable): New function.
576         (get_reloc_code): New function.
577         (md_assemble): Use it as last argument to fix_new_exp.
578         (md_apply_fix_2): For a relocation against a symbol don't put the
579         addend into the data.
580         (tc_gen_reloc): Different addend computation for OBJ_ELF.
581         (m68k_ip): Don't relax an operand that requires pic relocation.
582         (md_begin): Align .text, .data and .bss on 4 byte boundary by
583         default.
584         * write.c (fixup_segment): Don't add symbol value to addend if
585         TC_M68K and OBJ_ELF.
586         * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
587         (motorola_operand): Add rule for `(zapc, EXPR)'.
588
589 Mon Feb 12 10:07:33 1996  David Mosberger-Tang  <davidm@azstarnet.com>
590
591         * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
592         *really* is permissible before the comma.
593
594 Mon Feb 12 00:12:13 1996  Ian Lance Taylor  <ian@cygnus.com>
595
596         * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
597         inserting nop instructions.
598
599 Fri Feb  9 10:54:19 1996  Ian Lance Taylor  <ian@cygnus.com>
600
601         * config/te-aux.h: Change include of aux.h to aux-coff.h.
602
603 Thu Feb  8 20:02:58 1996  Ian Lance Taylor  <ian@cygnus.com>
604
605         * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
606         class setting for a CALLNAME symbol in COFF.
607
608         * read.c (potable): Pass negative numbers for new .balign[wl] and
609         .p2align[wl] pseudo-ops.
610         (s_align_bytes): Treat a negative argument as specifying the fill
611         length.
612         (s_align_ptwo): Likewise.
613
614 Wed Feb  7 14:12:03 1996  Ian Lance Taylor  <ian@cygnus.com>
615
616         * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
617         (do_align): Take new len parameter.  Change all callers.  Pass it
618         to md_do_align.
619         (s_align_bytes): Arg now indicates the length of the fill pattern.
620         (s_align_ptwo): Likewise.
621         * config/obj-coff.c (write_object_file): Pass length to
622         md_do_align.
623         * config/tc-i386.h (md_do_align): Take new len parameter.
624         * config/tc-m88k.h (md_do_align): Likewise.
625         * config/tc-m88k.c (m88k_do_align): Likewise.
626         * config/tc-sh.h (md_do_align): Likewise.
627         * config/tc-sh.c (sh_do_align): Likewise.
628         * doc/as.texinfo: Document new pseudo-ops.
629
630         * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
631         done in cvt_frag_to_fill.
632
633         * config/tc-sh.h (sh_do_align): Declare.
634         (md_do_align): Define.
635         * config/tc-sh.c (sh_do_align): New function.
636
637         * ecoff.c (ecoff_build_lineno): Don't try to store the address
638         difference if the next address is before the current one.
639
640         * config/tc-m68k.c (struct m68k_cpu): Add alias field.
641         (archs): Initialize new field.
642         (m68k_ip): Don't list alias names when listing CPUs which support
643         an instruction.
644
645         * as.c (main): Call parse_args before read_begin.
646         * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
647         front of generated pseudo-ops.
648         * read.c (potable): Ignore "name".
649         (s_app_file): Permit a single quote after the string, since one
650         may appear in m68k MRI mode.
651
652         * configure.in: Check for --enable-shared.  If linking against
653         shared BFD and opcodes, fix library name on SunOS, and try to set
654         -rpath reasonably.
655         * configure: Rebuild.
656
657 Tue Feb  6 15:16:17 1996  Ian Lance Taylor  <ian@cygnus.com>
658
659         * as.h (flag_m68k_mri): Declare.
660         * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
661         * Many files: For MRI syntax that is specific to the m68k MRI
662         assembler, check flag_m68k_mri rather than flag_mri or
663         MRI_MODE_NEEDS_PSEUDO_DOT.
664
665 Mon Feb  5 16:29:11 1996  Ian Lance Taylor  <ian@cygnus.com>
666
667         * config/tc-i960.c (ARCH_HX): Define.
668         (arch_tab): Add HX.
669         (targ_has_sfr): Handle ARCH_HX.
670         (targ_has_iclass): Handle ARCH_HX.
671         (tc_coff_fix2rtype): Add return 0 to avoid warning.
672         (tc_headers_hook): If the architecture was specified explicitly,
673         use it when setting the flags.  Set the extern variable coff_flags
674         rather than headers->filehdr.f_flags, since the latter is set
675         unconditionally in obj-coff.c.
676         (i960_handle_align): Remove unused variable fixp.
677
678         Support for building bfd and opcodes as shared libraries, based on
679         patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
680         * configure.in: Set OPCODES and BFD to search directories.
681         Substitute OPCODES_DEP and BFDDEP.  On SunOS, set HLDFLAGS.
682         * configure: Rebuild.
683         * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
684         (LIBDEPS): New variable.
685         (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS).  Use
686         $(HLDFLAGS) in link.
687         (check): Set LD_LIBRARY_PATH in the environment.
688
689 Fri Feb  2 17:41:53 1996  Michael Meissner  <meissner@wogglebug.tiac.net>
690
691         * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
692         .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
693         read-only, not read/write.
694
695 Fri Feb  2 14:09:25 1996  Alan Modra  <alan@spri.levels.unisa.edu.au>
696
697         * Makefile.in (INSTALL_XFORM): Remove -e.
698
699 Fri Feb  2 12:32:15 1996  Ian Lance Taylor  <ian@cygnus.com>
700
701         * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
702         than comparing S_GET_SEGMENT to undefined_section.
703         (write_object_file): Skip symbols which were equated to an
704         undefined or common symbol.
705         * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
706         S_IS_COMMON rather than comparing S_GET_SEGMENT to
707         undefined_section.
708         (S_GET_VALUE): Likewise.  Avoid recursion problems if S_IS_DEFINED
709         or S_IS_COMMON call S_GET_VALUE.
710         * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
711         * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
712         to an undefined or common symbol, convert the reloc to be against
713         the target symbol.
714         (obj_crawl_symbol_chain): Skip symbols which were equated to an
715         undefined or common symbol.
716         * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
717         * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
718         to an undefined or common symbol, convert the reloc to be against
719         the target symbol.
720         (obj_crawl_symbol_chain): Skip symbols which were equated to an
721         undefined or common symbol.
722         * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
723         S_IS_COMMON rather than comparing S_GET_SEGMENT to
724         undefined_section.
725         (yank_symbols): Skip symbols which were equated to an undefined or
726         common symbol.
727
728 Thu Feb  1 15:34:32 1996  Ian Lance Taylor  <ian@cygnus.com>
729
730         * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
731         * config/obj-bout.h (S_IS_LOCAL): Likewise.
732
733         * configure.in: Make sure we only add m68k-parse.o to
734         ${extra_objects} once, no matter how many m68k targets have been
735         enabled.
736         * configure: Rebuild.
737
738 Wed Jan 31 18:31:46 1996  Steve Chamberlain  <sac@slash.cygnus.com>
739
740         * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
741         * configure: Rebuild.
742
743 Wed Jan 31 14:03:17 1996  Richard Henderson  <rth@tamu.edu>
744
745         * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
746         * doc/c-m68k.texi: Document .extend and .ldouble.
747
748         * configure.in (m68*-apple-aux*): New target.
749         * config/te-aux.h: New file.
750         * config/obj-coff.c (compare_external_relocs): New static function
751         if TE_AUX.
752         (do_relocs_for): Sort relocs if TE_AUX.
753         (fixup_segment): If TE_AUX, store common symbol value in segment.
754         * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
755
756 Wed Jan 31 12:24:58 1996  Ian Lance Taylor  <ian@cygnus.com>
757
758         * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
759
760         * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
761         BSF_FUNCTION.
762         (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
763         * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
764         symbol.
765         * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
766         (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
767         an undefined symbol and the size of a function symbol.
768         * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
769         for all common symbols.
770
771 Tue Jan 30 12:35:24 1996  Ken Raeburn  <raeburn@cygnus.com>
772
773         * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
774         scaling of index.
775
776         * expr.c (operand): Accept 0x hex constants in MRI mode if not on
777         m68k.
778
779 Mon Jan 29 12:21:30 1996  Ian Lance Taylor  <ian@cygnus.com>
780
781         * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
782         of object.  From Ronald F. Guilmette <rfg@monkeys.com>.
783
784         * ecoff.c (localsym_t): Add addend field.
785         (add_ecoff_symbol): Add addend argument.  Change all callers.
786         (coff_sym_value): Make static.
787         (coff_sym_addend): New static variable.
788         (ecoff_directive_def): Initialize coff_sym_addend.
789         (ecoff_directive_val): Accept symbol + constant.
790         (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
791         (ecoff_build_symbols): Include the addend in the symbol value.
792
793 Fri Jan 26 19:28:52 1996  Kim Knuttila  <krk@cygnus.com>
794
795         * config/tc-ppc.c (md_assemble): Ignore overflow on 
796         BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
797
798 Fri Jan 26 16:14:17 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
799
800         * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
801         bytes in size, so offset appropriately in big endian mode when
802         writing the bottom 2 bytes.
803
804 Thu Jan 25 20:26:23 1996  Doug Evans  <dje@charmed.cygnus.com>
805
806         * config/tc-sparc.c (default_compatible): New static local.
807         (md_begin): Initialize it.  Rewrite warn_on_bump handling.
808         (sparc_ip): If no architecture or -bump specified, don't mark as
809         mismatched those in default_compatible.
810
811 Thu Jan 25 12:21:53 1996  Ian Lance Taylor  <ian@cygnus.com>
812
813         SCO ELF support from Robert Lipe <robertl@arnet.com>:
814         * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
815         * configure: Rebuild.
816         * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
817         * config/tc-i386.c (sco_id): New function, if SCO_ELF.
818         * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
819         (sco_id): Declare if SCO_ELF.
820
821 Thu Jan 25 03:10:53 1996  Doug Evans  <dje@charmed.cygnus.com>
822
823         * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
824         ({max,warn_after}_architecture): New static locals.
825         (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
826         If both architecture and -bump requested, set max_architecture to max.
827         (sparc_md_end): Simplify.
828         (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
829         Rewrite code to bump architecture and check for conflicts.
830         (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
831         with Solaris assembler.
832         (md_parse_option): Likewise.  Call sparc_opcode_lookup_arch.
833         (md_show_usage): Update.
834
835 Wed Jan 24 22:11:03 1996  Doug Evans  <dje@charmed.cygnus.com>
836
837         * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
838
839 Mon Jan 22 09:21:36 1996  Doug Evans  <dje@charmed.cygnus.com>
840
841         * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
842         #ifdef sparcv9 when choosing value.
843         (ENV64): Delete.
844         (md_end): Define.
845         (sparc_md_end): Declare.
846         * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
847         (initial_architecture): New static local.
848         (can_bump_v9_p): Likewise.
849         (NO_V9): Delete all occurrences.
850         (sparc_md_end): New function.
851         (sparc_ip): New local v9_arg_p.  Rework fp reg number test.
852         Don't bump architecture to v9 unless can_bump_v9_p set.
853         (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
854         * configure.in (sparc64 target cpu): Don't set obj_format here.
855         (SPARC_V9): Renamed from sparcv9.
856         (sparc64-*-elf*): Define SPARC_ARCH64.
857         * configure: Regenerated.
858         * acconfig.h (SPARC_V9): Renamed from sparcv9.
859         (SPARC_ARCH64): Add.
860         * conf.in: Regenerated.
861         * config/vmsconf.h: Update.
862
863 Mon Jan 22 17:24:47 1996  James G. Smith  <jsmith@cygnus.co.uk>
864
865         * config/tc-mips.c (load_register): Optimise "dli" loads.
866         (md_show_usage): add "-mcpu=vr4100" to help text.
867
868 Mon Jan 22 11:53:00 1996  Ian Lance Taylor  <ian@cygnus.com>
869
870         * symbols.c (resolve_symbol_value): If a symbol is equated to an
871         undefined symbol, preserve the X_op of O_symbol.
872         (S_GET_VALUE): Fix check to permit this case.
873         * write.c (write_relocs): If a reloc is against an undefined
874         symbol equated to another symbol, change the reloc to be against
875         the latter symbol.
876         * config/obj-coff.c (do_relocs_for): Likewise.
877
878         * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
879         XMC_PR.
880
881 Mon Jan 22 10:59:48 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
882
883         * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
884         computer is PowerPC.
885
886         * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
887
888         * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
889         mentioned in the eabi.
890
891 Thu Jan 18 17:58:19 1996  Kim Knuttila  <krk@cygnus.com>
892
893         * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
894         * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
895
896 Mon Jan 15 17:43:42 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
897
898         * config/tc-ppc.c (mapping): Add more relocation suffixes.
899
900 Sun Jan 14 21:29:36 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
901
902         * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
903         as a section it is ok to have unadorned -mrelocatable pointers in.
904
905 Sat Jan 13 11:09:08 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
906
907         * config/tc-ppc.c (ppc_section*): Wrap these functions inside
908         #ifdef OBJ_ELF.
909
910 Fri Jan 12 15:32:07 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
911
912         * config/obj-elf.c (obj_elf_section): Add hooks so machine
913         dependent section attributes can be handled.
914
915         * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
916         macros to add support for exclude section flag and ordered section
917         type.
918
919         * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
920         functions to add support for exclude section flag and ordered
921         section type.
922
923 Fri Jan 12 12:04:00 1996  Ian Lance Taylor  <ian@cygnus.com>
924
925         * subsegs.c (section_symbol): Don't try to look up the section
926         symbol in the hash table.  It should be possible to have a symbol
927         with the same name as a section, but no connection to it.
928
929         * read.c (cons_worker): Only call mri_comment_end from flag_mri.
930         From James Carlson <carlson@xylogics.com>.
931
932         * expr.c (operand): Skip whitespace after a close parenthesis.
933         From James Carlson <carlson@xylogics.com>.
934
935 Tue Jan  2 12:43:23 1996  Jim Wilson  <wilson@chestnut.cygnus.com>
936
937         * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
938         as_warn_where for relocation overflow.
939         (parse_reg): Accept register name only if next character is
940         not alphanumeric.
941
942 Sat Dec 30 23:42:51 1995  Jeffrey A Law  (law@cygnus.com)
943
944         * ecoff.c (ecoff_stab): Simplify.  Correctly handle sym + offset
945         addresses for static variables.
946
947 Thu Dec 21 12:54:32 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
948
949         * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
950         and xgot give the old toc16 relocation.
951         (md_apply_fix3): Support all GOT relocations.
952
953 Wed Dec 20 14:57:17 1995  Ian Lance Taylor  <ian@cygnus.com>
954
955         * config/tc-mips.c (load_address): Correctly handle a constant in
956         SVR4_PIC case.  From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
957
958 Fri Dec 15 14:25:07 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
959
960         * config/tc-sh.c (parse_reg): Recognize SH3 registers.
961         (get_specific): Handle A_SSR, A_SPC and A_REG_B.
962         (build_Mbytes): Handle REG_B.
963
964 Fri Dec 15 16:07:25 1995  Ian Lance Taylor  <ian@cygnus.com>
965
966         * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
967
968 Fri Dec 15 12:11:48 1995  Raymond Jou  <rjou@mexican.cygnus.com>
969
970         * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
971
972 Thu Dec 14 15:09:52 1995  Ian Lance Taylor  <ian@cygnus.com>
973
974         * config/obj-coff.c (write_object_file): Set the s_align field to
975         the number of bytes, rather than to the power of 2.
976
977 Tue Dec 12 12:19:37 1995  Ian Lance Taylor  <ian@cygnus.com>
978
979         * Makefile.in (DISTCLEAN_HERE): New variable.
980         (distclean): Use it.
981         (maintainer-clean): Depend upon clean-here rather than clean,
982         distclean, and clean-info.  Run make maintainer-clean in doc.
983         Remove files listed in DISTCLEAN_HERE.
984         * doc/Makefile.in (maintainer-clean realclean): Split out from
985         distclean.  Depend upon clean-info and distclean.
986
987 Mon Dec 11 16:23:51 1995  Stan Shebs  <shebs@andros.cygnus.com>
988
989         * mac-as.r: Fix copyright and version strings.
990         (cfrg): Use PROG_NAME instead of literal name.
991
992
993 Mon Dec 11 14:14:08 1995  Ian Lance Taylor  <ian@cygnus.com>
994
995         * read.c (read_a_source_file): If tc_unrecognized_line is defined,
996         call it.
997         * config/tc-a29k.h (tc_unrecognized_line): Define.
998         * config/tc-a29k.c (a29k_unrecognized_line): New function.
999         (md_operand): Handle a29k style local dollar labels.
1000
1001 Wed Dec  6 17:52:52 1995  Ian Lance Taylor  <ian@cygnus.com>
1002
1003         * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
1004
1005 Tue Dec  5 13:26:34 1995  Ken Raeburn  <raeburn@cygnus.com>
1006
1007         * read.c (s_fill): If md_flush_pending_output is defined, call
1008         it.
1009
1010 Mon Dec  4 15:10:53 1995  Ken Raeburn  <raeburn@cygnus.com>
1011
1012         * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
1013         Treat rs_align_code like rs_align.
1014
1015 Sun Dec  3 16:46:54 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
1016
1017         * config/tc-arm.c (cp_address_required_here): Set pre_inc when
1018         converting an absolute address into a PC-relative one.
1019
1020 Fri Dec  1 11:57:56 1995  Stan Shebs  <shebs@andros.cygnus.com>
1021
1022         * mpw-config.in: Don't always use te-generic.h for emulation.
1023         (powerpc-apple-macos): Use emulation te-macos.h.
1024 start-sanitize-gm
1025         (mips-gm-magic): New configuration.
1026 end-sanitize-gm
1027         * mpw-make.sed (install, install-only): Edit in Mac-specific
1028         install procedure.
1029
1030 Fri Dec  1 10:59:25 1995  Ian Lance Taylor  <ian@cygnus.com>
1031
1032         * configure.in: Improve message about unsupported ELF targets.
1033         * configure: Rebuild.
1034
1035         * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
1036         pattern is zero.  From Manfred Hollstein.
1037
1038 Thu Nov 30 13:25:49 1995  Kim Knuttila  <krk@cygnus.com>
1039
1040         * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
1041         the various idata sections, we check the name on the .section pseudo.
1042
1043 Thu Nov 30 11:23:42 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>
1044
1045         * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
1046         add section's paddr to add_number; compatibility to native as and
1047         ld forbids.
1048
1049 Wed Nov 29 23:14:27 1995  Ken Raeburn  <raeburn@cygnus.com>
1050
1051         * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
1052
1053         * hash.c (struct hash_entry): Moved here...
1054         * hash.h (struct hash_entry): ...from here.
1055
1056         * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
1057         if it's already known to be null.
1058
1059 Wed Nov 29 13:00:20 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
1060
1061         * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
1062         bit relocs converted to PC relative relocs.  This turned out to
1063         add the offset from the beginning of .text twice.
1064
1065 Tue Nov 28 10:42:36 1995  Ken Raeburn  <raeburn@cygnus.com>
1066
1067         * stabs.c (s_stab_generic): In 's' case, free string from
1068         obstack.
1069
1070         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
1071         sy_name_offset.
1072         * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
1073         Ditto.
1074
1075         * subsegs.h (segment_info_type): Make bitfields unsigned.
1076
1077         * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
1078         and move them together.  On most systems this will reduce the
1079         structure size by one word.
1080         (operatorT): Define O_max.
1081         * expr.c (expr_begin): Verify that X_op is wide enough to hold
1082         O_max.
1083
1084         * read.c (pop_insert): Print error returned by hash table
1085         insertion code.
1086
1087         * as.c (dump_statistics): Split out from main; dump some hash
1088         table stats and target-specific stats.
1089         (start_time): No longer automatic to main.
1090         (main): Set file-level start_time and call dump_statistics at
1091         exit.  Exit by calling xexit.
1092         (show_usage): Make --statistics description less specific.
1093         * subsegs.c (subsegs_print_statistics): New function.
1094         * write.c (write_print_statistics): New function.
1095         (n_fixups): New static variable.
1096         (fix_new_internal): Increment it.
1097         * read.c (read_print_statistics): New function.
1098         * read.h (read_print_statistics): Declare.
1099         * symbol.c (symbol_print_statistics): New function.
1100         * symbol.h (symbol_print_statistics): Declare.
1101         * hash.c (hash_print_statistics): New function.
1102         * hash.h (hash_print_statistics): Declare.
1103         * config/tc-i386.c (i386_print_statistics): New function.
1104         * config/tc-i386.h (i386_print_statistics): Declare.
1105         (tc_print_statistics): New macro.
1106         * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
1107         exit.
1108
1109         * hash.c (DELETED): Rewrite to use a valid but unique address.
1110         (START_POWER): Reduce to 10.
1111         (enum stat_enum): New enumerator, replacing STAT_* index macros.
1112         Add new values for counting strcmp calls.
1113         (GROW_FACTOR): New macro.
1114         (hash_grow): Use GROW_FACTOR.  Rewrite for quick returns instead
1115         of nesting blocks.
1116         (FULL_VALUE): New macro.  Use 1/4 of table size instead of 1/2.
1117         (hash_new): Use FULL_VALUE.
1118         (struct hash_control): Definition moved here.
1119         (hash_code): Don't mask to low bits.
1120         (hash_ask): Mask returned hash code here.  Check hash value before
1121         calling strcmp; count strcmp calls.
1122         * hash.h (struct hash_control): Declare, don't define, here.
1123         (HASH_STATLENGTH): Deleted.
1124         (struct hash_entry): Add field for hash code.
1125         (hash_say, hash_apply): Don't declare.
1126
1127         * hash.c (destroy): Return void.
1128         (applicatee): Ditto.
1129         (main): Fix declarations.
1130         (hash_apply): Return void.  Argument `function' returns void.  Put
1131         inside "#ifdef TEST".
1132         (hash_say): Define only if TEST is defined.
1133         * hash.h (hash_apply, hash_say): Declarations deleted.
1134
1135 Mon Nov 27 13:18:25 1995  Ian Lance Taylor  <ian@cygnus.com>
1136
1137         * configure: Rebuild with autoconf 2.7.
1138
1139 Tue Nov 21 18:39:01 1995  Ian Lance Taylor  <ian@cygnus.com>
1140
1141         * aclocal.m4 (AC_PROG_CC): Remove local definition.
1142         * configure: Rebuild with autoconf 2.6.
1143
1144 Mon Nov 20 17:26:00 1995  Ian Lance Taylor  <ian@cygnus.com>
1145
1146         * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
1147         (ppc_stabx): Don't increment ppc_debug_name_section_size.
1148         (ppc_bc): Likewise.
1149         (ppc_frob_file): Remove.
1150         * config/tc-ppc.h (tc_frob_file): Don't define.
1151         (ppc_frob_file): Don't declare.
1152
1153 Mon Nov 20 13:37:05 1995  Ken Raeburn  <raeburn@cygnus.com>
1154
1155         * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
1156         * config/alpha-opcode.h: Include one-operand variants of jmp and
1157         jsr.
1158
1159         * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
1160         with te-delta.h in 8.3 file systems.
1161         * configure.in: Adjusted.
1162
1163 Thu Nov 16 12:49:38 1995  Ian Lance Taylor  <ian@cygnus.com>
1164
1165         * config/tc-mips.c (s_err): Remove; just use the one in read.c.
1166
1167         * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
1168         number.
1169         * expr.c (operand): Handle MRI suffixes after unadorned 0.
1170
1171 Thu Nov 16 00:21:44 1995  Ken Raeburn  <raeburn@cygnus.com>
1172
1173         Version 2.6 released.
1174         * Makefile.in (VERSION): Updated to 2.6.
1175
1176         * config/obj-coff.c (write_object_file): Change use of md_do_align
1177         to pass a pointer rather than a fill value, to match other uses.
1178
1179 Wed Nov 15 03:52:00 1995  Ken Raeburn  <raeburn@cygnus.com>
1180
1181         * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
1182
1183         * as.c (main): Move md_end call to just after call to
1184         perform_an_assembly_pass.  Delete cpu-specific code here.
1185         * config/tc-i960.h (md_end): New macro, calls brtab_emit.
1186 start-sanitize-rce
1187         * config/tc-rce.c (md_end): Deleted.
1188         * config/tc-rce.h (md_end): New macro, calls dump_literals.
1189 end-sanitize-rce
1190         * config/tc-arm.c (md_end): Unused function deleted.
1191         * config/tc-ns32k.c (md_end): Ditto.
1192
1193         * config/tc-i386.c (i386_align_code): New function, moved here
1194         from HANDLE_ALIGN macro.
1195         * config/tc-i386.h (HANDLE_ALIGN): Call it.
1196
1197         Mon Jul 31 14:53:19 1995  Alan Modra  <alan@spri.levels.unisa.edu.au>
1198
1199         * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
1200         before comparing
1201
1202         Mon May  1 10:91:49 1995  Alan Modra  <alan@spri.levels.unisa.edu.au>
1203
1204         * config/tc-i386.h (md_do_align):  Make ".align n,0x90" generate
1205         multi-byte nops to avoid changing gcc.  The necessary gcc change
1206         might break old assemblers.
1207
1208         Sat Apr 22 20:53:05 1995  Alan Modra  <alan@spri.levels.unisa.edu.au>
1209
1210         * config/tc-i386.h (md_do_align, HANDLE_ALIGN):  Add macros to
1211         generate optimal multi-byte nop instructions for ".align n"
1212         ".align n,0x90", and aligns requiring more than 15 bytes of
1213         padding still generate multiple 0x90's as before.
1214
1215 Mon Nov 13 17:40:21 1995  Ian Lance Taylor  <ian@cygnus.com>
1216
1217         * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
1218
1219 Mon Nov 13 20:39:06 1995  Stan Shebs  <shebs@andros.cygnus.com>
1220
1221         * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
1222         * configure: Update.
1223         * mpw-make.sed: Reorder commands to make sed happier.
1224         * config/te-macos.h: New file.
1225         * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
1226
1227 Sun Nov 12 21:14:56 1995  Jeffrey A Law  (law@cygnus.com)
1228
1229         * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
1230         conditional branches.
1231         (md_apply_fix): Likewise.
1232
1233 Thu Nov  9 16:14:01 1995  Ian Lance Taylor  <ian@cygnus.com>
1234
1235         * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
1236         generate a reloc which the linker will not handle correctly.  Fix
1237         overflow checking--R_IREL is 18 bits, not 17.
1238
1239 Wed Nov  8 19:59:36 1995  Ian Lance Taylor  <ian@cygnus.com>
1240
1241         * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
1242         from a PC relative reloc if TC_A29K.
1243
1244         * config/tc-a29k.c (line_separator_chars): Restore '@'.  Existing
1245         code depends upon it.
1246
1247         * config/tc-a29k.c (md_operand): Handle $float, $double, and
1248         $extend.  Based on code from Eric Freudenthal
1249         <freudenthal@nyu.edu>.
1250         * config/tc-a29k.h (LEX_DOLLAR): Define.
1251         * read.c (LEX_DOLLAR): Define if not defined.
1252         (lex_type): Use LEX_DOLLAR.
1253
1254 Wed Nov  8 16:38:14 1995  Eric Freudenthal <freudenthal@nyu.edu>
1255
1256         * configure.in (a29k-nyu-sym1): New target, just like other a29k
1257         targets.
1258
1259 Wed Nov  8 11:38:48 1995  Ian Lance Taylor  <ian@cygnus.com>
1260
1261         * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
1262
1263 Tue Nov  7 09:14:35 1995  Kim Knuttila  <krk@cygnus.com>
1264
1265         * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
1266         used only by "dlltool.c".
1267
1268 Mon Nov  6 18:51:26 1995  Ian Lance Taylor  <ian@cygnus.com>
1269
1270         * config/tc-alpha.c: Undefine inline if not __GNUC__.
1271         (md_pseudo_table): Don't define "extern".
1272
1273 Sat Nov  4 00:51:21 1995  Ian Lance Taylor  <ian@cygnus.com>
1274
1275         * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
1276
1277         * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
1278
1279 Fri Nov  3 13:02:59 1995  Ian Lance Taylor  <ian@cygnus.com>
1280
1281         * macro.c (macro_expand_body): Don't warn about == with a
1282         nonexistent parameter, in case it is in a comment field.
1283
1284         * as.c (main): On TC_A29K, call macro_init with macro_alternate
1285         set to 1.
1286         * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
1287         set, even if macro_alternate is set.
1288         (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
1289         (sub_actual): If macro_strip_at, and kind is '@', don't look up
1290         the token unless it ended in '@'.
1291         * config/tc-a29k.c (line_separator_chars): Remove '@'.
1292         * doc/c-a29k.texi: Document macro usage on A29K.
1293
1294 Thu Nov  2 23:07:57 1995  Ian Lance Taylor  <ian@cygnus.com>
1295
1296         * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
1297         signed word.
1298         (install_operand): Likewise.
1299
1300         * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
1301
1302 Wed Nov  1 15:17:02 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>
1303
1304         * configure.in (m88k-motorola-sysv*): New target.
1305         * configure: Rebuild.
1306         * config/te-delta88.h: New file.
1307         * config/obj-coff.c (write_object_file): Use md_do_align if it is
1308         defined.
1309         * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
1310         (md_do_align): Define.
1311         * config/tc-m88k.c: Include "subsegs.h".
1312         (m88k_do_align): New function.
1313
1314         * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
1315         (COFF_NOLOAD_PROBLEM): Define.
1316         (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
1317
1318 Wed Nov  1 16:07:43 1995  Ken Raeburn  <raeburn@cygnus.com>
1319
1320         * config/tc-i386.c (md_assemble): For a jump instruction with
1321         non-constant target, require 7 available bytes in the current
1322         frag, not 6.
1323
1324 Tue Oct 31 15:37:16 1995  Fred Fish  <fnf@rtl.cygnus.com>
1325
1326         * config/obj-elf.h: Include bfd/elf-bfd.h rather than
1327         bfd/libelf.h.
1328
1329 Tue Oct 31 16:34:28 1995  David Mosberger-Tang  <davidm@azstarnet.com>
1330
1331         * configure.in (alpha-*-linux*): Use ecoff.
1332         * configure: Rebuild.
1333         * ecoff.c (ecoff_directive_extern): New function.
1334         (ecoff_directive_weakext): New function.
1335         (ecoff_build_symbols): Handle weak symbols.
1336         (ecoff_setup_ext): Likewise.
1337         (ecoff_frob_symbol): Warn about weak common symbols.
1338         * ecoff.h (ecoff_directive_extern): Declare.
1339         (ecoff_directive_weakext): Declare.
1340         * symbols.c (S_IS_WEAK): New function.
1341         * symbols.h (S_IS_WEAK): Declare.
1342         * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
1343         "weakext".
1344         * config/tc-mips.c (mips_pseudo_table): Remove "extern".
1345         (s_extern): Remove.
1346
1347 Tue Oct 31 13:29:08 1995  Ian Lance Taylor  <ian@cygnus.com>
1348
1349         * config/tc-ppc.c (ppc_lglobl): Do the right thing.
1350
1351         * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
1352         (ppc_eb): Likewise.  Set the storage class to C_BLOCK, not C_FCN.
1353         (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
1354         * config/obj-coff.c (coff_frob_symbol): Don't call
1355         SA_SET_SYM_ENDNDX with the current symbol; call it with the next
1356         one.  If OBJ_XCOFF, try to figure out whether the symbol is going
1357         to be dropped.
1358
1359         * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
1360         (ppc_stab_symbol): New static variable.
1361         (ppc_change_csect): Check that ppc_toc_csect is not NULL.
1362         (ppc_stabx): Set ppc_stab_symbol around call to symbol_make.  Set
1363         sy_tc.real_name to the stab string.
1364         (ppc_bc, ppc_ec): New static functions.
1365         (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
1366         do anything.
1367         (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
1368         suffix.
1369         (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
1370         entries.
1371
1372         * input-scrub.c (input_scrub_push): Reset sb_index.
1373
1374 Mon Oct 30 17:52:46 1995  Ian Lance Taylor  <ian@cygnus.com>
1375
1376         * listing.c (listing_newline): Don't create a frag in the absolute
1377         section.
1378
1379 Sat Oct 28 01:02:05 1995  Ian Lance Taylor  <ian@cygnus.com>
1380
1381         * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
1382         (ppc_csect): Move most of the code to ppc_change_csect, and call
1383         it.
1384         (ppc_change_csect): New static function, taken from ppc_csect.
1385         (ppc_section): New static function.
1386         (ppc_saw_abs): New static varable.
1387         (ppc_frob_symbol): Create aux entry for absolute symbols.  Warn if
1388         a symbol has no csect.
1389         (ppc_adjust_symtab): New function.
1390         * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
1391         (ppc_adjust_symtab): Declare if OBJ_XCOFF.
1392
1393         * write.c (write_object_file): If tc_adjust_symtab is defined,
1394         call it just before the call to obj_adjust_symtab.
1395
1396         * symbols.c (symbol_find_or_make): Change name to be const.
1397         * symbols.h (symbol_find_or_make): Update declaration.
1398
1399 Thu Oct 26 19:18:27 1995  Ken Raeburn  <raeburn@cygnus.com>
1400
1401         * doc/as.texinfo (Align): Mention SH.
1402         * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
1403         .align value.
1404         * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
1405         (Z8000 Directives, even): Don't give numeric align value, instead
1406         explain behavior.
1407
1408 Thu Oct 26 11:45:03 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
1409
1410         * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
1411         instruction.
1412
1413 Wed Oct 25 11:59:24 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1414
1415         * Makefile.in (diststuff):  Also make info.
1416         (maintainer-clean realclean):  Also make clean-info.
1417
1418 Tue Oct 24 15:21:33 1995  Jeffrey A Law  (law@cygnus.com)
1419
1420         * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
1421         (pa_subspace): For ".nsubspa", always create a new subspace
1422         with the given attributes, even if one already exists with the
1423         same name.
1424
1425 Tue Oct 24 14:50:38 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
1426
1427         * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
1428         TC_FORCE_RELOCATION, taking an additional section argument.  If
1429         the section of the target symbol is not the same as the current
1430         section, always force the relocation to be used.
1431         (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
1432
1433         * config/tc-ppc.c (md_pcrel_from_section): Rename from the
1434         md_pcrel_from function, taking an additional section argument.
1435         Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
1436
1437         * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
1438         older TC_FORCE_RELOCATION if not defined.
1439         (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
1440         (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
1441         md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
1442         TC_FORCE_RELOCATION.
1443         
1444 Mon Oct 23 16:20:04 1995  Ken Raeburn  <raeburn@cygnus.com>
1445
1446         * input-scrub.c (as_where): Set name to null pointer if we don't
1447         have a file name.
1448         * messages.c (identify): Only print filename if non-null.
1449         (as_show_where): Ditto, for line number too.
1450         (as_warn_internal, as_bad_internal): Ditto.
1451
1452         * input-file.c (input_file_open): If the input file can't be
1453         opened, consider it an error.
1454
1455 Mon Oct 23 11:15:44 1995  James G. Smith  <jsmith@pasanda.cygnus.co.uk>
1456
1457         * config/tc-mips.c: Added mips_4100 control, and support for
1458         accepting the 4100 as a MIPS architecture variant (md_begin,
1459         macro_build, mips_ip, md_parse_option). Adding suitable
1460         command-line OPTIONs, and updating the help text (md_show_usage).
1461         
1462 Wed Oct 18 13:20:32 1995  Ken Raeburn  <raeburn@cygnus.com>
1463
1464         * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
1465         BFD_ASSEMBLER is defined.
1466
1467         * Use one active frag and one obstack per frag chain:
1468         * frags.c (frags): Variable deleted.
1469         (frag_alloc): New function.
1470         (frag_grow, frag_more, frag_variant, frag_now_fix,
1471         frag_append_1_char): Refer to frchain_now->frch_obstack instead of
1472         frags variable.
1473         (frag_new): Ditto.  Verify that frch_last and frag_now match on
1474         entry and exit, and that old frag_now has non-zero type.  Replace
1475         "know" uses with "assert".  Use frag_alloc instead of mucking with
1476         obstack alignment.
1477         * frags.h (frags): Declaration deleted.
1478         * subsegs.h (struct frchain): Add new field frch_frag_now.
1479         * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
1480         variables.
1481         (subsegs_begin): Initialize frchains obstack.  Under gcc, don't
1482         give it any stricter alignment than frchainS structures need.  Do
1483         not initialize frags obstack.  Set frag_now to point to
1484         dummy_obstack.  Initialize absolute_frchain.
1485         (subseg_set_rest): Save and restore frag_now in frch_frag_now
1486         field of frchainS.  Don't create new frags on section switch, and
1487         use frag_alloc when creating a new frag chain.  For absolute
1488         section, set frchain_now to absolute_frchain.  Verify that
1489         frch_last and frag_now match on entry and exit.  Initialize
1490         per-chain obstack, and under gcc, set required alignment to that
1491         needed by fragS structure.
1492
1493         * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
1494
1495         * stabs.c (get_stab_string_offset): Only copy input string if a
1496         fresh copy is needed, not if the section already exists.
1497         (s_stab_generic): Cache stab section name to bypass lookups, since
1498         usually it will match.  Could be made faster still by changing the
1499         memory allocation rules.
1500         (s_xstab): Cache section name to bypass repeated string
1501         allocation.
1502
1503         * frags.c (frag_new): Deleted register declarations.
1504
1505         * listing.c (frag_now): Don't declare.
1506
1507         * as.c (chunksize): New variable.
1508         (debug_memory): New variable.
1509         (main): If debug_memory is set, reduce chunksize and
1510         _bfd_chunksize.
1511         * as.h (chunksize): Declare it.
1512         * read.c (read_begin): Use it.
1513
1514         * config/tc-alpha.c (md_shortopts): Include 'g'.
1515         (md_parse_option): Ignore it.
1516
1517         * Makefile.in (distclean): Remove Makefile and config.status from
1518         testsuite directory.
1519         (clean-here): Don't delete testsuite.  Instead, delete only the
1520         files within it that would be generated by running tests.
1521
1522         * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
1523         frag_now_fix instead of accessing obstack info directly.
1524         * config/tc-arm.c (s_ltorg): Ditto.
1525         (md_assemble): Ditto.
1526
1527         * config/tc-i386.c (md_assemble): Call frag_grow instead of
1528         obstack_room.
1529
1530 Wed Oct 18 12:22:59 1995  Ken Raeburn  <raeburn@cygnus.com>
1531
1532         * stabs.c (aout_process_stab): Insert debug symbol into symbol
1533         chain after parsing value expression, if any, to avoid separating
1534         continued .stabs lines.
1535
1536 Mon Oct 16 10:56:41 1995  Ian Lance Taylor  <ian@cygnus.com>
1537
1538         * config/tc-mips.c (mips_elf_pseudo_table): Remove.
1539         (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
1540
1541 Mon Oct 16 07:07:37 1995  Michael Meissner  <meissner@wogglebug.tiac.net>
1542
1543         * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
1544         -mcom support and PPC_OPCODE_ANY for -many.
1545         (md_parse_option): Ditto.
1546         (ppc_arch): Ditto.
1547         (md_begin): For duplicate instructions, print all duplicates
1548         before aborting.
1549
1550 Sun Oct 15 22:06:14 1995  Michael Meissner  <meissner@cygnus.com>
1551
1552         * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
1553         common mode operation.
1554         (md_show_usage): Add -mcom to usage message.
1555
1556 Fri Oct 13 13:32:45 1995  steve chamberlain  <sac@slash.cygnus.com>
1557
1558         * expr.c (op_rank): Add O_symbol_rva.
1559         * expr.h (operatorT): Add O_symbol_rva.
1560         * read.c (cons_worker): Set O_symbol_rva when necessary.
1561         * write.c (fix_new_exp): Understand O_symbol_rva.
1562
1563 Tue Oct 10 11:34:14 1995  Ian Lance Taylor  <ian@cygnus.com>
1564
1565         * config/tc-mips.c: Correct s_cons arguments.  From Michael
1566         Joosten <joost@ori.cadlab.de>.
1567
1568 Mon Oct  9 19:59:53 1995  Ian Lance Taylor  <ian@cygnus.com>
1569
1570         * config/tc-ppc.c (ppc_macro): Make count unsigned.
1571         (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
1572         (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
1573         the fix_line field.
1574         * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
1575         make non-static.  Change all users.
1576         * config/obj-coff.h (coff_n_line_nos): Declare.
1577
1578 Fri Oct  6 16:24:27 1995  Ken Raeburn  <raeburn@cygnus.com>
1579
1580         Mon Sep 25 22:49:32 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1581
1582         * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
1583
1584         * config/obj-elf.c (obj_elf_common): Convert specified byte
1585         alignment to power of two.  Set size of local bss symbol.
1586
1587         * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
1588
1589 Fri Oct  6 15:22:25 1995  Ian Lance Taylor  <ian@cygnus.com>
1590
1591         * sb.c, macro.c: Decide whether to include <string.h> or
1592         <strings.h> just as as.h does.
1593
1594 Fri Oct  6 09:55:33 1995  Doug Evans  <dje@canuck.cygnus.com>
1595
1596         * Makefile.in (site.exp): Fix setting of $srcdir.
1597
1598         * config/tc-arm.c (md_atof): Fix little-endian output.
1599         * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
1600         all coff targets.
1601
1602 Thu Oct  5 20:17:30 1995  Ken Raeburn  <raeburn@cygnus.com>
1603
1604         * doc/as.texinfo: Split out the NS32k family documentation,
1605         despite its being commented out for now.
1606         * doc/c-ns32k.texi: New file.
1607
1608         * sb.c, macro.c: Include string.h.
1609
1610         * Makefile.in (comparison): Only check *.o; we don't care if
1611         timestamps inserted by the native linker differ.
1612
1613         * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
1614         if alignment stricter than 4 bytes is requested; in that case,
1615         align to a 4-byte boundary first.
1616
1617         Thu Sep 28 19:35:27 1995  Pat Rankin  <rankin@eql.caltech.edu>
1618
1619         * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
1620         uninitialized" warning for `Max_Source_Offset'.
1621
1622 Wed Oct  4 16:17:02 1995  Kim Knuttila  <krk@cygnus.com>
1623
1624         * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
1625         qualifiers and detect errors if present.
1626         (md_assemble): Add call to parse_toc_entry. Also added some support
1627         for the [tocv] qualifier.
1628         (ppc_pe_tocd): New function to support data in the toc section.
1629
1630 Wed Oct  4 14:03:39 1995  Ian Lance Taylor  <ian@cygnus.com>
1631
1632         * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
1633         an absolute symbol.
1634
1635 Tue Oct  3 12:18:19 1995  Ian Lance Taylor  <ian@cygnus.com>
1636
1637         * config/tc-m68k.c (isword): Accept all values from -65536 to
1638         +65535, so ~VAL will not be rejected.
1639
1640         * cond.c (s_endif): Call demand_empty_rest_of_line.  In MRI mode,
1641         skip characters after the pseudo-op.
1642         (s_else): Likewise.
1643         * read.c (get_line_sb): Don't look past buffer_limit.
1644         (s_include): In MRI mode, skip characters after the file name.
1645
1646 Mon Oct  2 16:15:27 1995  Ian Lance Taylor  <ian@cygnus.com>
1647
1648         * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
1649         periods in register names.
1650
1651 For older changes see ChangeLog.1.