* read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
[platform/upstream/binutils.git] / gas / ChangeLog
1 Thu Jul 22 12:09:41 1993  Ian Lance Taylor  (ian@cygnus.com)
2
3         * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
4         pseudo-op with a poc_handler field of NULL, ignore it and treat it
5         as an instruction instead.
6         * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
7         poc_handler field.
8
9         * config/tc-h8500.c (md_begin): Use a local variable when
10         initializing md_relax_table to avoid warnings about modifying a
11         supposedly const data structure.
12
13 Thu Jul 22 10:58:51 1993  Brendan Kehoe  (brendan@lisa.cygnus.com)
14
15         * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
16         is defined.
17
18 Wed Jul 21 17:32:02 1993  Fred Fish  (fnf@deneb.cygnus.com)
19
20         * configure.in (case ${host}):  Map *-*-sysv4* to gas_host=sysv.
21         * configure.in (case ${generic_target}):  Add i[34]86-*-sysv4*
22         case to set obj_format=elf.  Must go before i386-*-sysv* case that
23         sets obj_format=coffbsd.  Add *-*-sysv4* to *-*-elf and
24         *-*-solaris case, and move to before *-sysv* case that wants to
25         set obj_format to coff.
26         * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
27         'exp->X_op'.
28         * config/tc-i386.c (md_apply_fix):  Fix valp to be 'valueT *' for
29         BFD_ASSEMBLER case.
30
31 Wed Jul 21 12:47:51 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
32
33         * config/obj-aout.c: Include aout/aout64.h.
34         (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
35         symbol, so that BFD doesn't tamper with the type.
36
37         * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
38         up opcodes as pseudo-ops even if they don't start with '.'.
39         * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
40         * config/tc-m88k.c (md_assemble): Removed special pseudo-op
41         handling.
42         (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
43         Output the low 16 bits for RELOC_HI16, not the high 16 bits.
44         * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
45         r_offset field of the reloc to the fixup offset.
46         (fixup_segments): If TC_M88K, don't warn about fixup overflows.
47         * doc/as.texinfo: Minor updates.
48
49 Tue Jul 20 19:28:56 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
50
51         * Extensive changes to permit symbols to contain any expression
52         type and to delay the computation of the expression until the
53         value is actually needed.  This permits setting symbols to values
54         calculated based on object code size.  Expressions were changed to
55         no longer be in a section, to stop the overloading of segment and
56         expression type that previously occurred.
57
58         * as.c (big_section, pass1_section, diff_section, absent_section):
59         Removed.
60         (expr_section): Added (used for dummy symbols which hold
61         intermediate expression values).
62         (perform_an_assembly_pass): Create expr_section, do not create the
63         sections now removed.
64         * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
65         SEG_DIFFERENCE.  Added SEG_EXPR.
66         (SEG_NORMAL): Corresponding changes.
67         * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
68         * write.c (write_object_file): Ditto.
69         * config/obj-aout.c (seg_N_TYPE): Ditto.
70         * config/obj-bout.c (seg_N_TYPE): Ditto.
71         * config/obj-coff.c (seg_N_TYPE): Ditto.
72         * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
73         * config/obj-vms.c (seg_N_TYPE): Ditto.
74
75         * expr.h (operatorT): Moved in from expr.c, added some values.
76         (expressionS): Added X_op field, removed X_seg field; renamed
77         X_subtract_symbol to X_op_symbol.
78         * expr.c: Extensive changes to assign expression types rather than
79         sections and to simplify the parsing.
80         * write.c (fix_new_internal): New static function.
81         (fix_new): Removed sub_symbol argument.
82         (fix_new_exp): New function, takes expression argument.
83         * write.h: Prototype changes for fix_new and fix_new_exp.
84         * cond.c (s_if): Changed accordingly.
85         * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
86         parse_repeat_cons, get_segmented_expression,
87         get_known_segmented_expression, get_absolute_expression): Ditto.
88         * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
89         Ditto.
90         * write.c (write_object_file): Ditto.
91         * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
92         * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
93         obj_coff_endef, yank_symbols): Ditto.
94         * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
95         * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
96         print_insn, md_operand): Ditto.
97         * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
98         do_a_fix_imm, build_bytes): Ditto.
99         * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
100         get_specific, check, insert, md_convert_frag): Ditto.
101         * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
102         md_assemble, pa_ip, getExpression, getAbsoluteExpression,
103         evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
104         process_exit): Ditto.
105         * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
106         is_complex): Ditto.
107         * config/tc-i386.c (pe, md_assemble, i386_operand,
108         md_estimate_size_before_relax, md_create_long_jump): Ditto.
109         * config/tc-i860.c (md_assemble, getExpression, print_insn):
110         Ditto.
111         * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
112         get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
113         i960_handle_align): Ditto.
114         * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
115         subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
116         md_estimate_size_before_relax, md_create_long_jump, get_num):
117         Ditto.
118         * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
119         md_create_short_jump, md_create_long_jump): Ditto.
120         * config/tc-mips.c (md_assemble, append_insn, gp_reference,
121         macro_build, macro, my_getExpression): Ditto.  Also removed
122         get_optional_absolute_expression; just use get_absolute_expression
123         instead.
124         * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
125         fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
126         * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
127         * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
128         Ditto.
129         * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
130         print_insn): Ditto.
131         * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
132         tip_op, md_assemble): Ditto.
133         * config/tc-vax.c (seg_of_operand, md_assemble,
134         md_estimate_size_before_relax, md_create_long_jump): Ditto.
135         * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
136
137 Tue Jul 20 12:17:16 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
138
139         * configure.in: i386-lynx is the same as i386-coff
140
141 Mon Jul 19 15:21:20 1993  Ken Raeburn  (raeburn@rtl.cygnus.com)
142
143         * config/obj-elf.c (obj_elf_previous): New function.
144         (previous_section, previous_subsection): New vars.
145         (obj_elf_section): Save current place in case DWARF code wants us
146         to pop back to it.  Handle unquoted section name as well as quoted
147         section name.  Don't crash on invalid strings.
148         (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
149         "4byte".
150
151         * config/obj-elf.h: Don't include struc-symbol.h.
152         (obj_elf_frob_symbol): Declare arg as struct symbol *.
153
154         * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
155         "L" or "_.L_".
156
157         * write.c (write_relocs): New function, split off from
158         write_contents.  Use memset instead of bzero.
159         (write_object_file): Apply write_relocs to each section before
160         applying write_contents.
161
162         * read.c (read_begin): Call obstack_begin with values closer to 1K
163         multiples.
164         (read_a_source_file, big_cons, float_cons): Use memcpy instead of
165         bcopy.
166
167 Mon Jul 19 14:30:00 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
168
169         * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
170         calculating opP->isiz; this permits the expression size to be
171         determined as well, later on.
172
173         * expr.c (clean_up_expression): Don't cancel the subtraction of
174         undefined symbols.
175
176         * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
177         switch to text section rather than data section.
178
179 Mon Jul 19 12:35:39 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
180
181         * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
182         expression (to take the pc-rel instruction itself into account)
183         before using the expression, instead of after.
184
185 Fri Jul 16 08:56:04 1993  Ian Lance Taylor  (ian@cygnus.com)
186
187         * read.c (float_cons): Simplified parsing logic.  If
188         REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
189
190         * symbols.c (colon): Rather than a special case for TC_HPPA,
191         use new macro tc_frob_label.
192         * config/tc-hppa.h (tc_frob_label): Define.
193
194         * config/tc-mips.c: Many changes to support simple assembler
195         optimization.
196         (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
197         prev_insn_valid, prev_insn_frag, prev_insn_where,
198         prev_insn_fixp, prev_insn_is_delay_slot): New static
199         variables.
200         (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
201         mips_align, s_stringer, s_mips_space): New static functions.
202         (mips_define_label): New global function.
203         (md_pseudo_table): For "ascii", "asciz", "asciiz", call
204         s_stringer.  Changed argument to float_cons from 0 or 1 to 'f'
205         or 'd'.  For "space" call s_mips_space.
206         (md_begin): Call mips_no_prev_insn.
207         (append_insn): Only insert necessary NOP instructions.
208         (macro): Call mips_emit_delays before setting mips_noreorder.
209         Increment and decrement mips_noreorder rather than using
210         save_reorder_condition.  Don't bother to use noreorder in
211         M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
212         (md_atof): Handle floating point numbers correctly for both
213         big and little endian targets.
214         (s_align, s_cons): Call mips_align rather than frag_align.
215         (s_change_seg, s_cons): Call mips_emit_delays.
216         (s_float_cons): Let float_cons do the work.
217         (s_mipsset): Call mips_emit_delays when setting noreorder.
218         * config/tc-mips.h (tc_frob_label): Define to be
219         mips_define_label.
220
221         * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
222         ecoff_frob_files): Consistently use S_GET_VALUE rather than
223         bfd_asymbol_value.  Warn if taking difference of symbols in
224         different segments.
225
226 Thu Jul 15 11:51:03 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
227
228         * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
229         with a warning.
230
231         * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
232         by md_pcrel_from if we are relocating against a symbol (we still
233         need md_pcrel_from for a PC relative relocation within the same
234         file).
235         * config/tc-m88k.c (md_pcrel_from): Corrected return value.
236         (omagic): Removed unused variable.
237
238         * Preliminary support for m88k-coff.
239         * configure.in (m88k-*-coff*): New target.  Use coffbfd and
240         m88kcoff.
241         * config/m88kcoff.mt: New file.
242         * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
243         (pseudo_set): Handle difference of symbols in different fragments
244         by saving the entire expression as the value of the symbol.
245         * symbols.c (resolve_symbol_value): Resolve difference
246         expressions.
247         * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
248         "sdef" as a synonym for "def".
249         * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
250         TARGET_FORMAT.
251         (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
252         * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
253         m88k port up to date, and to add COFF support.
254
255 Wed Jul 14 15:09:32 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
256
257         * Removed sy_forward and replaced it with an undefined expression
258         as the value of a symbol.
259         * struc-symbol.h (struct symbol): Removed sy_forward field.  Added
260         sy_resolved and sy_resolving single bit fields.
261         * symbols.c (symbol_new): Don't initialize sy_forward field.
262         (resolve_symbol_value): New function to adjust symbol value by
263         fragment address, using recursion to resolve forward symbols.
264         * symbols.h: Added prototype for new function.
265         * read.c (pseudo_set): Set symbolP->sy_value to an undefined
266         expression rather than setting symbolP->sy_forward.
267         * write.c (write_object_file): Use resolve_symbol_value on
268         symbols, keeping the common case (the old behaviour) inline.
269         * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
270         handling (subsumed by write.c change).
271         * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
272         sy_value rather than sy_forward.
273         * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
274         expression segment rather than sy_forward.
275         (yank_symbols): Use resolve_symbol_value.
276         (crawl_symbols): Removed extra pass over symbols.
277         * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
278         config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
279         symbols which handled sy_forward; use resolve_symbol_value
280         instead.
281         * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
282         Define.
283         * config/obj-elf.c (obj_elf_stab_generic): Check expression
284         segment rather than sy_forward.
285         * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
286         sy_forward; do initialize sy_resolved and sy_resolving.
287         * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
288
289         * Changes to keep a full expression as the value of a symbol, not
290         just a longword:
291         * struc-symbol.h: New field sy_value.
292         * as.h: Include expr.h before struc-symbol.h.
293         * expr.h: Use struct symbol rather than symbolS.
294         * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
295         of sy_value field; compile unconditionally, not just if
296         BFD_ASSEMBLER.
297         * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
298         * write.c (write_object_file): Set BFD symbol value to gas symbol
299         value.
300         * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
301         config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
302         (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
303         * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
304         * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
305         S_GET_VALUE rather than ost_entry.n_value.
306         * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
307         (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
308         config/obj-coffbfd.c (symbol_to_chars): Get value to write out
309         using S_GET_VALUE--don't assume it is already set.
310         * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
311         symbol value.
312         * config/obj-vms.c (various): Don't assign directly to
313         S_GET_VALUE; use S_SET_VALUE instead.
314
315 Wed Jul 14 09:35:23 1993  Doug Evans  (dje@canuck.cygnus.com)
316
317         * configure.in: Recognize h8300h.
318
319 Tue Jul 13 12:09:44 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
320
321         * config/tc-h8500.c (line_comment_chars): Add hash.
322         (parse_exp, skip_colonthing, build_bytes): Add support for
323         R_H8500_HIGH16 relocation type.
324
325 Mon Jul 12 11:15:34 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
326
327         * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
328         attribute name.  Handle `execinstr' attribute.
329
330 Mon Jul 12 07:22:28 1993  Ian Lance Taylor  (ian@cygnus.com)
331
332         * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
333         there is another alternative for the instruction.
334
335 Fri Jul  9 17:31:34 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
336
337         * doc/as.texinfo: updates for H8/300H
338
339 Thu Jul  8 14:41:43 1993  Mark Eichin  (eichin@cygnus.com)
340
341         * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
342         md_number_to_chars, md_section_align): Adjusted to use valueT,
343         addressT, to match tc.h.
344
345 Thu Jul  8 14:15:05 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
346
347         * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
348         independent of format.
349
350 Thu Jul  8 07:25:25 1993  Doug Evans  (dje@canuck.cygnus.com)
351
352         * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
353
354 Wed Jul  7 18:11:07 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
355
356         * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
357         build; also recognize h8300-*-coff
358
359 Wed Jul  7 10:21:24 1993  Ian Lance Taylor  (ian@cygnus.com)
360
361         * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
362         core just because somebody uses a label before it is defined.
363
364         * config/mips-opcode.h: Moved to opcode/mips.h.
365         * config/tc-mips.c: Include opcode/mips.h rather than
366         mips-opcode.h.
367         (append_insn): An extra NOP is only needed after instructions
368         which set HI or LO, not after instructions which read it.
369         (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
370         (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
371         * config/tc-mips.h (struct mips_opcode): Don't define.
372         * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
373         Set to $(srcdir)/../include/opcode/mips.h.
374
375         Get the MIPS assembler up to speed with other gas changes:
376
377         * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
378         Removed; don't change the symbol value.
379         (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
380         bfd_asymbol_value rather than S_GET_VALUE to include section
381         vma in symbol value.
382         (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
383         doesn't output them.  Set the vma of sections.
384         * config/obj-ecoff.h: Don't define obj_frob_symbol.
385         * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
386         longer necessary.
387         (various): use valueT rather than long.
388
389 Wed Jul  7 08:33:30 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
390
391         * as.h (valueT): Typedef moved here.
392         * struc-symbol.h (valueT): ...from here.
393         * write.c (write_object_file): Locals from_addr, to_addr,
394         table_addr are now addressT.  Supply prototype for bfd_alloc for
395         now.
396         (fixup_segment): Local add_number is now valueT.  Correct some
397         range-checking bugs.
398         (relax_align): Type `int' should be sufficient for the exponent.
399         (fix_new): Argument offset is type offsetT.  Locals size and
400         newsize are type valueT.
401         * write.h (struct fix): Fields fx_offset and fx_addnumber are now
402         type valueT.
403         (fix_new): Fix prototype.
404         * symbols.c (symbol_new): Symbol value is type valueT.
405         (S_SET_VALUE, S_GET_VALUE): Likewise.
406         (S_IS_*): Specify int return type explicitly.
407         * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
408         prototypes.
409         * read.c (s_comm): Values read are type valueT.
410         * expr.h (expressionS): Field X_add_number is an offsetT.
411         * tc.h (md_create_long_jump, md_create_short_jump,
412         md_section_align): Addresses are now type addressT.
413         (md_number_to_chars, md_apply_fix): Pass value as valueT.
414         * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
415         md_number_to_chars, md_section_align): Adjusted.
416         * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
417         gcc shut up.
418         (md_create_short_jump, md_create_long_jump, md_number_to_chars,
419         md_section_align): Adjusted.
420
421         * config/tc-sparc.c (s_reserve): Permit use for other than a.out
422         format.
423         (s_common): Handle Solaris-2 version.
424
425         * config/ho-generic.h (free): Returns void if __STDC__.
426
427         * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
428         elf_file_symbol): Declare.
429
430         * expr.c (floating_constant, integer_constant): Now return void.
431
432 Thu Jul  1 12:13:43 1993  Ian Lance Taylor  (ian@cygnus.com)
433
434         * configure.in: Match on sparc*-fujitsu-none rather than
435         sparclite*-fujitsu-none.
436
437 Wed Jun 30 11:12:02 1993  Ian Lance Taylor  (ian@cygnus.com)
438
439         * read.c (cons): Conditionalize parsing of expression.  Move
440         putting value into object file into separate function.  Separate
441         out MRI and WANT_BITFIELDS cases into separate functions.
442         (emit_expr): New function to write data into object file.
443         Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
444         processor types.
445         (parse_bitfield_cons): New function to parse bitfield expressions
446         as used by i960 assemblers.  Only compiled if
447         BITFIELD_CONS_EXPRESSIONS is defined.
448         (parse_mri_cons): New function to parse MRI style strings.  Only
449         compiled if MRI is defined.
450         (parse_repeat_cons): New function to parse repeat counts.  Only
451         compiled if REPEAT_CONS_EXPRESSIONS is defined.
452         * read.h (emit_expr): Added declaration of new function.
453         * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
454         * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
455         * config/tc-hppa.c (parse_cons_expression_hppa): New function to
456         parse a HPPA expression, rather than special case in cons
457         function.
458         (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
459         than special case in emit_expr function.
460         * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
461         Define to use new functions from tc-hppa.c.
462         * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
463         (WANT_BITFIELDS): Removed; now obsolete.
464         * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
465         * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
466         NS32K fixup, rather than special case in emit_expr function.
467         * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
468         cons_fix_new_ns32k.  Also use PARAMS rather than checking
469         __STDC__.
470         * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
471
472         * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
473         Don't core dump if gas has no information about a section.
474
475 Wed Jun 30 06:21:27 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
476
477         * write.c (relax_and_size_seg): Always fully process a section.
478         Section size is last frag's (vm)address plus its size.  If no
479         relocations are present, force SEC_RELOC flag clear.
480         (dump_section_relocs): New debugging routine.
481         (adjust_reloc_syms): New routine, broken out from write_contents.
482         Don't adjust relocs that are already relative to section symbol.
483         Look for obj_fix_adjustable macro to know what else to skip,
484         instead of obj_write_symbol.  Look for section symbol stored in
485         section information.
486         (write_object_file): Map adjust_reloc_syms over all sections.
487         (write_contents): Clear SEC_RELOC flag if no relocations are
488         found.
489
490         * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
491         keep it quiet.
492
493         * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
494
495 Fri Jun 25 14:42:53 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
496
497         * Makefile.in (all, dvi, info, install-info, clean-info): do not
498           echo recursion lines.
499           (install-info, clean-info): collapse into the dvi and info rule.
500
501 Fri Jun 25 03:43:06 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
502
503         * as.h (strstr): Disable declaration for now.
504         (fprint_value, sprint_value): Declare.
505
506         * subsegs.c (subseg_new_rest): Use memset to clear new frag.
507         (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
508
509         * expr.c (expr_part): Made sanity checks a.out-specific.
510         (expr): Disabled sanity checks.
511
512         * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
513         section symbol.
514         * subsegs.c (subseg_change): Initialize section symbol pointer
515         when setting up a new section.
516
517         * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
518         field back at gas symbol structure.
519
520         * symbols.c (colon): Cast obstack_next_free value to char* before
521         doing arithmetic on it.
522         * subsegs.c (subseg_new_rest): Likewise.
523         * as.h (frag_now_fix): Likewise.
524
525         * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
526         calling bfd_make_section_old_way directly, and call subseg_set
527         instead of subseg_change.  Now returns void.
528         (obj_elf_write_symbol): Only check local symbols for now.
529         (elf_stab_symbol): Now static and void, and disabled until it
530         works completely.
531         (obj_elf_size): For expression values, fail silently for now.
532         (obj_symbol_new_hook): Do nothing.
533
534         * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
535         relocation.
536         (s_local) [OBJ_ELF]: New function.
537         (md_pseudo_table) [OBJ_ELF]: Call it for "local".
538         (s_common): Rearrange to handle Solaris .common pseudo, which may
539         sometimes use bss space instead of common.
540         * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
541
542 Thu Jun 24 16:33:53 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
543
544         * configure.in: set host config to hpux for hppa*-hp-hpux
545
546 Thu Jun 24 13:35:06 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
547
548         * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
549
550 Tue Jun 22 01:04:23 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
551
552         * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
553         * config/obj-aout.c (s_sect): Do it here.
554
555         * as.h (BAD_CASE): Don't make some lame compilers think we want
556         substitution inside strings.
557
558         * as.c (print_version_id): New function, split off from main.
559         (main): Call it.
560         * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
561         for -V.  Ignore -Q and -s options for now.
562
563 Mon Jun 21 17:37:59 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
564
565         * Makefile.in: make installation & builds work again for crosses
566
567 Sun Jun 20 18:18:26 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
568
569         * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
570         symbol values correctly.
571
572         * write.c (write_object_file): Deleted unused variables.
573         (fixup_segment): Use sprint_value.
574
575         * messages.c (sprint_value, fprint_value): New routines.
576
577         * config/obj-elf.c (elf_stab_symbol): Now returns void.
578         (obj_elf_stab_generic): Fix typo in logic.
579
580         * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
581
582         * as.h (addressT, offsetT): New types, using BFD types if
583         available.
584         (relax_addressT, struct frag): Use them.
585         * struc-symbol.h (valueT, struct broken_word): Likewise.
586
587         * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
588         * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
589
590 Thu Jun 17 16:53:56 1993  david d `zoo' zuhn (zoo@cygnus.com)
591         
592         * Makefile.in: canonicalize install.sh; for use within
593         this directory (and subdirs)
594
595 Sun Jun 20 02:34:04 1993  Ashley Saulsbury (ans@sics.se)
596
597         * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
598         specified, should have both S1 and S2 fields identical
599         If only finding the problem was as fast as fixing the bug !!!!
600
601 Tue Jun 15 16:01:57 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
602
603         * write.c (write_contents): Do write out non-loadable sections.
604         Debug sections can fall in this category.
605
606         * read.c (s_app_file): Call elf_file_symbol for ELF files.
607         * config/obj-elf.c (elf_file_symbol): New function.
608
609         * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
610         added argument to specify section base name.
611         (obj_elf_stab_generic): Renamed from ..._stab.  New argument
612         specifies section base name.
613         (obj_elf_stab): New function, calls obj_elf_stab_generic with
614         ".stab" as section base name.
615         (obj_elf_xstab): New function, calls obj_elf_stab_generic.
616         (obj_elf_type): Handle "object".  Use bitwise-or to merge in
617         symbol flags rather than simply replacing, so global/local flags
618         are preserved.
619         (obj_elf_ident): Rewrite.
620
621 Tue Jun 15 17:03:25 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
622
623         * Makefile.in: remove parentdir support; use INSTALL_XFORM
624
625 Wed Jun  9 11:26:07 1993  Ian Lance Taylor  (ian@cygnus.com)
626
627         * config/tc-i386.c (md_pseudo_table): .align uses a power of two
628         for any a.out target, not just Linux and 386BSD.
629         * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
630         target.
631
632 Mon Jun  7 13:33:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
633
634         * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h.  They
635         don't exist or duplicate other inclusions.
636
637         * config/tc-vax.h (NO_RELOC): Define.
638
639 Sat Jun  5 19:32:52 1993  Torbjorn Granlund  (tege@nada.kth.se)
640
641         * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
642         * gas/config/tc-m88k.c (get_reg): New arg reg_prefix.  Compare first
643         char to reg_prefix instead of to 'r'.
644         (calcop): Change calls to get_reg.
645         (calcop): Handle new case 'x' to set reg_prefix.
646         (calcop): Set reg_prefix to 'r' after each call to get_reg.
647         (cmpslot): Add 88110 conditions.
648
649         * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
650
651         * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
652         before returning.
653
654         * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
655         adjacent; mov.s and mov.d swapped.
656         (m88k_opcodes): Fix typo `r2' -> `2'.
657
658 Fri Jun  4 15:59:31 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
659
660         * config/h8300.c: Support for H8/300-H opcodes.
661
662         * config/obj-coffbfd.c (w_strings): String table length is 4
663         bytes, no matter what the host int size is.
664
665         * configure.in (alpha-*-osf*): New.
666
667 Fri Jun  4 07:51:18 1993  Ian Lance Taylor  (ian@cygnus.com)
668
669         * configure.in (mips-*-ecoffl*): New target; use ecoff and
670         mips-lit.
671         (mips-*-ecoff*): Added trailing '*'.
672
673         * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
674         first FDR in a file to be zero.
675
676 Thu Jun  3 14:09:59 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
677
678         * Makefile.in (VERSION): Jump to 2.1.4.
679
680         * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
681
682         * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
683         ECOFF format.
684
685 Tue Jun  1 15:21:57 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
686
687         * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
688         separate '851 mmu.
689
690         * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
691         and routine names.  Assuming 32 bits for now.
692
693         * config/obj-elf.c (elf_frob_file): Look for macro
694         elf_tc_final_processing_hook, instead of assuming a function
695         always exists.
696         * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
697         tc_final_processing_hook.
698         * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
699
700         * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
701         moved here from obj-elf.h.
702         * config/obj-elf.h: Don't include CPU-specific header files.
703
704 Sun May 30 16:49:37 1993  Peter Hoogenboom  (hoogen@fast.cs.utah.edu)
705
706         * configure.in: configurations should match on 'hppa*' not 'hppa'.
707
708         * read.c: Add support for HPPA assembly language syntax (denoted
709         with '#ifdef TC_HPPA').
710
711         * symbols.c: Add support for HPPA assembly language syntax (denoted
712         with '#ifdef TC_HPPA').
713
714         * write.c (write_contents):  Add support for HPPA-style
715         relocations.
716
717         * config/obj-elf.c: Stab symbols weren't written properly.
718         (obj_elf_version):
719         (obj_elf_desc):
720         (obj_elf_write_symbol):
721         (obj_elf_write_symbol_p):
722         (obj_elf_frob_symbol):
723         (elf_stab_symbol):
724         (elf_frob_file):
725
726         * config/tc-hppa.c: Support for HPPA symbol extension sections.
727         Remove some unused code.  Support for HPPA assembly language
728         syntax.
729
730         * app.c:
731
732         * symbols.c:
733
734         * config/obj-elf.h:
735         (obj_write_symbol):
736         (obj_frob_file):
737         (elf_tc_symbol):
738         (elf_tc_make_sections):
739
740         * config/tc-hppa.h:
741
742 Sun May 30 21:44:45 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
743
744         * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
745         hash_new will have succeeded if it returns.
746         * config/tc-a29k.c (md_begin): Likewise.
747
748         * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
749         const.
750         (mode_from_disp_size, opcode_suffic_to_type): Now inline under
751         gcc.
752         (fits_in_{signed,unsigned}_{byte,word}): Likewise.
753
754         * expr.c: Delete register declarations; gcc ignores them anyways.
755
756 Fri May 28 19:03:32 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
757
758         * hash.c (hash_new): Use xmalloc, since many callers don't check
759         for failure.
760
761 Thu May 27 13:02:15 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
762
763         * frags.c (zero_address_frag, bss_address_frag): These are
764         external.
765
766         * tc.h (md_reloc_size): This is const.
767         * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
768         (md_reloc_size): Now const.
769
770         * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
771         trailing commas.
772         * as.h (enum _segT): Ditto.
773
774         * struc-symbol.h (N_TYPE_seg): This should be const.
775
776 Thu May 27 11:43:59 1993  Michael Meissner  (meissner@osf.org)
777
778         * config/obj-ecoff.c (add_file): Cast file_name to char * in
779         listing_source_file call.
780
781         * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
782         of subseg_new call to eliminate const attribute.
783         (obj_elf_stab): Ditto.
784         (obj_symbol_new_hook): Cast first argument of bzero call to char *.
785
786         * read.c (s_align_bytes): Properly record alignment.
787
788         * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
789         for the prototype/no prototype macro.
790
791         * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
792         void.
793
794         * as.h (relax_stateT enum): Delete trailing comma.
795
796 Thu May 27 11:07:50 1993  Ian Lance Taylor  (ian@cygnus.com)
797
798         * app.c (do_scrub_begin): Let line_comment_chars override
799         comment_chars.
800         (do_scrub_next_char): If a line comment character is not at the
801         start of a line, treat it as a comment character if it is one.
802         For a CPP line comment use pseudo-op .appline rather than .line.
803         * input-scrub.c (logical_input_line): Make int rather than
804         unsigned.
805         (input_scrub_push, input_scrub_begin): Initialize
806         logical_input_line to -1 rather than 0.
807         (bump_line_counters): Increment logical_input_line.
808         (new_logical_line): If line_number is -2, decrement
809         logical_input_line.
810         (as_where): Use logical_input_line even if it is 0.
811         * read.h (s_app_file prototype): Now takes an int argument.
812         * read.c (potable): Make .appfile call s_app_file with 1.  New
813         .appline pseudo-op calls s_app_line.
814         (s_app_file): If .appfile, call new_logical_line with -2 to
815         account for newline inserted by do_scrub_next_char.  If listing,
816         call listing_source_file.
817         (s_app_line): New function to handle fake pseudo-op .appline.
818         * config/obj-coff.c (obj_pseudo_table): Make .appline call
819         obj_coff_ln.
820         (obj_coff_ln): Added argument to indicate whether .appline.
821         * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
822         obj_coff_ln.
823         (obj_coff_ln): Added argument to indicate whether .appline.
824         * config/tc-mips.c (s_file): Pass argument to s_app_file.
825
826 Tue May 25 11:59:07 1993  Ian Lance Taylor  (ian@cygnus.com)
827
828         * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
829
830 Thu May 20 19:14:24 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
831
832         * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
833         invalid values.
834
835 Wed May 19 07:33:17 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
836
837         * config/tc-h5000.c (build_bytes): Understand @rd mode and build
838         relocations correctly.
839
840 Mon May 17 15:06:26 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
841
842         * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
843         it's wrong.
844
845         * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
846         if value is out of range.
847
848         Patch from Minh Tran-Le:
849         * config/tc-i386.c (i386_operand): For in/out port register used
850         as base reg, include InOutPortReg in operand type.
851         (MATCH): Accept overlap value of InOutPortReg.
852
853 Mon May 17 09:29:34 1993  Ian Lance Taylor  (ian@cygnus.com)
854
855         * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
856         Add calls to listing routines to produce combined source/assembler
857         listings.
858         (obj_ecoff_stab): Create a file pointer if none used yet.
859         (ecoff_frob_file): Set symcount to correct value.
860
861 Fri May 14 06:53:33 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
862
863         * Makefile.in (VERSION): Bump to version 2.1, in preparation for
864         release.
865
866         * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
867         Define in terms of constants, not C structure sizes.
868
869         * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
870
871 Thu May 13 17:01:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
872
873         * config/obj-aout.c (obj_header_append): Don't define if it's
874         defined as a macro.
875         * config/obj-hp300.h (obj_header_append): Define it as a macro.
876         * config/obj-hp300.c (hp300_header_append): New function.
877
878         * Makefile.in (distclean): Don't bother cleaning up doc files;
879         they aren't going to be in this directory.
880
881 Thu May 13 07:51:35 1993  Ian Lance Taylor  (ian@cygnus.com)
882
883         * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
884         symbols.
885
886         * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
887         * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
888
889 Mon May 10 06:01:12 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
890
891         * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
892         initialization.
893
894         * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
895
896 Wed May  5 14:00:49 1993  Ian Lance Taylor  (ian@cygnus.com)
897
898         * config/tc-mips.c (macro): Correct floating point double word
899         loads and stores for big endian target.
900
901 Wed May  5 08:39:21 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
902
903         * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
904         calls.  Deleted some unused code.
905         * config/obj-coff.c: Likewise.
906
907         ELF support, mostly contributed by Utah:
908         * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
909         obj_elf_type): Rewrite.
910         (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
911         obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
912         New functions.
913         (obj_elf_ident): Dummy.
914         * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
915         TARGET_SYMBOL_FIELDS): New macros.
916         (gdb_section): New variable decl.
917
918         * config/tc-i386.c (md_atof): Return zero, not empty string, on
919         success.
920
921         BFD_ASSEMBLER conditional changes:
922         * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
923         Don't define these.
924         (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
925         (fetch_coff_debug_section): Ditto.
926         (obj_coff_endef): Call fetch_coff_debug_section.
927         (struct line_no): New type.
928         (c_symbol_merge): New way for copying aux fields.
929         (c_dot_file_symbol): Put symbol in absolute section, and set flag
930         BSF_DEBUGGING.
931         (function_lineoff): New symbol.
932         (function_lineoff, text_lineno_number, our_lineno_number,
933         lineno_lastP): Don't define.
934         (c_line_new): Don't define.
935         (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
936         placeholders, until
937         line-number recording gets implemented.
938         (obj_new_symbol_hook): New code for handling aux fields.
939         (add_lineno, add_linesym): New functions.
940         (obj_coff_ln): Call add_lineno, not c_line_new.
941         (obj_coff_endef): New code for handling symbol names.  New lineno
942         code.  Look for section name "*DEBUG*" for debugging section.
943         (align, coff_check_file_symbols, obj_coff_section,
944         coff_frob_file): New functions.
945         * config/obj-coff.h: Reordered some includes.
946         (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
947         DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
948         define these.
949         (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
950         (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
951         aux entries.  Most SA_* macros now use it unconditionally.
952         (S_*): Use `bsym' field, and access BFD private data.
953         (SF_*): Use `sy_flags' symbol field for most of these.
954         (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
955         define.
956         (*_section_header): Don't define.
957         * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
958         interface.
959         (tc_gen_reloc) [I386COFF]: New function.
960         (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
961         * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
962         macros.
963
964         * config/obj-coff.c (stack_init): Don't do assignments inside
965         conditions.
966         (obj_coff_def): Simplified handling of symbol name a bit.
967         (tag_insert): Name argument is now pointer to CONST.
968         (obj_crawl_symbol_chain): Commented out.
969
970         * config/obj-coff.h: Use PARAMS macro in prototypes.
971
972         * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
973         through frchainP pointer if it is null.
974
975         * configure.in: Warn if BFD mode is explicitly turned off but is
976         required by specified target.
977         (mips ecoff targets): Don't need to set bfd_gas here; it gets
978         taken care of later.
979
980         * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
981         field.
982         (yank_symbols): Merge symbols only if sy_forward is null.
983
984         * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
985         defined.
986
987         * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
988         pointer.
989         * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
990
991         * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
992         with "." is a local label.
993
994         * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
995         files.
996
997         * config/te-linux.h, config/te-386bsd.h: New config files.
998         * configure.in (i386-*-linux, i386-*-bsd): Use them.
999         * config/tc-i386.h (TARGET_FORMAT): Select format based on target
1000         environment.
1001         (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
1002
1003 Wed May  5 13:14:01 1993  Ian Lance Taylor  (ian@cygnus.com)
1004
1005         * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
1006         to want it that way.
1007         (ecoff_build_symbols): Turn local st_Proc symbols into
1008         st_StaticProc symbols.  Set index field of external st_Proc and
1009         st_staticProc symbols correctly.
1010         * config/tc-mips.h (NO_LISTING): Don't define.  People might want
1011         listings.
1012
1013 Tue May  4 21:22:54 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1014
1015         * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
1016         files.
1017         * configure.in (m68k-*-hpux): Use them.
1018
1019         * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
1020         defined, otherwise zero.
1021
1022         * config/aout_gnu.h (OMAGIC): Don't define if already defined.
1023
1024 Mon May  3 15:59:32 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1025
1026         * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
1027         address space number.
1028
1029 Wed Apr 28 19:11:22 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
1030
1031         * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
1032
1033         * config/tc-a29k.c: Include ctype.h.
1034         (define_some_regs): Added special-purpose registers for 29050.
1035
1036         * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
1037
1038         * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
1039         (change_to_section): Set it here instead.
1040
1041 Wed Apr 28 13:40:29 1993  Ian Lance Taylor  (ian@rtl.cygnus.com)
1042
1043         * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
1044         hasn't been seen yet.
1045         (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
1046
1047 Mon Apr 26 18:29:05 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1048
1049         * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
1050         SH.
1051
1052 Mon Apr 26 12:28:27 1993  Ian Lance Taylor  (ian@cygnus.com)
1053
1054         * expr.c (operand): Fix unary plus operator (previously was the
1055         same as '~' operator!).
1056
1057 Wed Apr 21 00:20:11 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1058
1059         * write.c (cvt_frag_to_fill): Define even if BFD is defined.
1060         (write_object_file): Do define if BFD_ASSEMBLER.  Invoke
1061         obj_check_file_symbols if defined.  Call verify_symbol_chain_2
1062         instead of open-coding it.  Fix some bugs in patching up symbol
1063         chain.
1064         (relax_segment): Make some code we "ought to be able to" use for
1065         all targets no longer conditionalized on ns32k target; instead, do
1066         it always, and if the appropriate conditions fail, abort.
1067
1068         * symbols.c (DEBUG): Enabled.
1069         (symbol_new): Make sure bfd_make_empty_symbol works.
1070         (verify_symbol_chain_2): New funcion; takes one symbol as
1071         argument, anywhere in the chain.
1072         (dollar_label*): Use default initializers.
1073
1074         * as.c (perform_an_assembly_pass): Call md_begin here...
1075         (main): ...and not here.
1076
1077         * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
1078         (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
1079
1080         * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
1081         (add_fix, add_frag): Now functions instead of macros.
1082         (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
1083         s_data1, s_data2, s_bss): Use new *_section names, for
1084         compatibility with BFD_ASSEMBLER mode; rewrite switch statements
1085         to handle non-integral segT.
1086         (tc_coff_fix2rtype, tc_aout_fix_to_chars,
1087         tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
1088         (tc_gen_reloc): New routine for BFD_ASSEMBLER.
1089         (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
1090         md_apply_fix_2; new md_apply_fix definition varies interface
1091         depending on BFD_ASSEMBLER.
1092         (md_convert_frag, md_convert_frag_1): Likewise.  Use new *_section
1093         names.
1094
1095         * config/obj-vms.c: Include config.h.
1096         (version_string): Delete declaration.
1097         (Write_VMS_MHD_Records): Use GAS_VERSION instead.
1098         (vms_resolve_symbol_redef): New function, taken from VMS code in
1099         symbols.c.
1100         (_doprnt): Deleted.
1101         (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
1102         VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
1103         VMS_Psect_Spec): Fixed to compiler under traditional C.
1104         * config/obj-vms.h: Use PARAMS macro.
1105         (vms_resolve_symbol_redef): Declare.
1106         (RESOLVE_SYMBOL_REDEFINITION): New macro.
1107         * symbols.c (colon): Remove some VMS-specific code, look for
1108         RESOLVE_SYMBOL_REDEFINITION macro instead.
1109
1110         * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
1111         instructions.
1112
1113         * config/tc-i386.c: Reordered some functions so inlining might
1114         work.  Use PARAMS in function declarations.
1115         (reloc): New routine.
1116         (md_assemble): Rearrange switch statements to work with
1117         non-integral segT.
1118
1119         * struc-symbol.h [BFD_ASSEMBLER]: Undefine
1120         SYMBOLS_NEED_BACKPOINTERS before defining it.
1121
1122         * subsegs.c (subseg_new_rest): Now static.
1123
1124         * read.c (pseudo_set): Better error message for difference of
1125         symbols in different frags.
1126
1127         * Makefile.in (check): Pass down some new variables, indicating
1128         pathname or program name for cc, nm, objdump.
1129
1130         * as.h (OUTPUT_FLAVOR): New macro.
1131         * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
1132
1133         * configure.in: Initialize bfd_gas properly.  Warn that ELF
1134         support is incomplete.
1135
1136 Thu Apr 15 22:39:05 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1137
1138         * read.c (float_cons): Accept null pointer return from md_atof.
1139         * config/tc-m68k.c (md_atof): Return null for success.
1140         * config/tc-sparc.c (md_atof): Ditto.
1141
1142 Thu Apr 15 16:04:39 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
1143
1144         * doc/as.texinfo: formatting and comment cleanups; show SPARC
1145         alternative options in same style as other machines; simplify some
1146         conditional use; include GPL as separate file (from texinfo dir)
1147
1148         * doc/Makefile.in: (as.info) include directory containing GPL in
1149         makeinfo search path
1150
1151         * doc/h8.texi: new file; conditional settings for GAS manual
1152         on Hitachi chips
1153
1154 Tue Apr 13 15:31:40 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
1155
1156         * doc/as.texinfo: mention SPARC architecture options.
1157
1158 Fri Apr  9 17:43:11 1993  Ken Raeburn  (raeburn@cygnus.com)
1159
1160         * configure.in: Rearranged whitespace in per-host/per-target
1161         sections.  Added hooks for dropping in HPPA support (not included
1162         yet).  Separate out overrides of variables based on target format
1163         and bfd-gas selection from actual target-specific commands.  Add
1164         error message for recognized but unsupported format name.
1165
1166 Fri Apr  9 09:05:47 1993  Ian Lance Taylor  (ian@cygnus.com)
1167
1168         * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
1169         symbolic header match cline in FDR; the native linker seems to
1170         want that.
1171
1172 Thu Apr  8 15:51:28 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1173
1174         * doc/Makefile.in: as.texinfo is in $(srcdir).  Use
1175         $(srcdir)/as.texinfo explicitly in several places
1176
1177 Thu Apr  8 15:15:02 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
1178
1179         * doc/Makefile.in: update dvi, clean targets for new source 
1180                            file structure
1181
1182 Thu Apr  8 12:52:46 1993  Ian Lance Taylor  (ian@cygnus.com)
1183
1184         * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
1185         rather than undefining know.
1186         * configure.in: Match ultrix*, not just ultrix.
1187
1188 Wed Apr  7 20:18:10 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
1189
1190         * doc/as.texinfo: converted conditional markup to use new
1191         Texinfo facilities, avoiding m4.
1192
1193         * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
1194
1195         * doc/Makefile.in: recast doc configuration to use a link to an
1196         included texinfo file.
1197
1198         * doc/all.texi: settings for generic form of documentation.
1199
1200 Tue Apr  6 11:56:21 1993  Ian Lance Taylor  (ian@cygnus.com)
1201
1202         * read.c (cons): Zero out frag when creating reloc.
1203
1204 Mon Apr  5 09:41:58 1993  Ian Lance Taylor  (ian@cygnus.com)
1205
1206         * config/tc-mips.c (gp_reference): Certain magic symbols can never
1207         be referenced off the GP register.
1208
1209         * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
1210         when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
1211         LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
1212
1213         * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
1214         definition from other MIPS targets.
1215         * configure.in (mips-*-irix): Use emulation irix.
1216
1217 Sun Apr  4 15:21:09 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1218
1219         * config/tc-h8500.c: Get relax size of branch instructions right,
1220         (get_operand): Parse @sp+ correctly.
1221
1222 Fri Apr  2 15:59:49 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1223
1224         * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
1225         COFF section header field.
1226
1227         * configure.in: Print error message if host or target is not
1228         supported.
1229
1230         * configure.in: If with-bfd-assembler, use obj-coff instead of
1231         obj-coffbfd.
1232
1233         * config/ho-generic.h: Include string.h.
1234
1235 Fri Apr  2 08:54:57 1993  Ian Lance Taylor  (ian@cygnus.com)
1236
1237         * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
1238         '$' as local, for any object file format.
1239
1240         * config/tc-mips.c (macro): Optimizations to branching code and a
1241         couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
1242         Campbell).
1243
1244         * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
1245         * configure.in (mips-sgi-irix*): Set gas_host to irix.
1246
1247 Wed Mar 31 17:53:54 1993  Ian Lance Taylor  (ian@cygnus.com)
1248
1249         * subsegs.c (subseg_new): Set output_section of new section.
1250         * as.c (perform_an_assemly_pass): Don't set output_section here.
1251         * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
1252         since it has additional sections.
1253         * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
1254         not bss_section.
1255         * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
1256         ecoff_undefined field.
1257         * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
1258         ecoff_undefined field.
1259         (add_file): If using stabs, just output a stabs symbol rather than
1260         creating a new fdr.
1261         (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
1262         it with get_absolute_expression, rather than skipping it by hand.
1263         (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
1264         than ECOFF line number information.
1265         (obj_ecoff_stab): Accept non-zero values for stabs line number.
1266         (ecoff_build_symbols): Set ifilesym correctly.  Set storage class
1267         to small, undefined and/or readonly sections if appropriate.
1268         Don't output symbol names containing \001 characters.
1269         (ecoff_frob_file): Make sure at least one fdr is output.
1270         * config/tc-mips.h: Define TC_MIPS.
1271         * config/tc-mips.c (g_switch_value): New static variable.
1272         (md_assemble): Set gp size of output BFD.
1273         (gp_reference): New function; returns 1 if expression can be
1274         accesssed via gp.  Always returns 0 if not using ECOFF.
1275         (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
1276         possible.
1277         (macro): Generate sequences using gp if possible.
1278         (md_parse_option): Ignore -EL and -EB.  Parse -G.
1279         (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
1280         (s_change_sec): Handle .rdata and .sdata for ECOFF.
1281         (s_extern): Mark symbol as external.  Set ecoff_undefined field.
1282
1283 Tue Mar 30 10:11:41 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1284
1285         * output-file.c (output_file_create): Don't call as_perror for
1286         filename rejected by application.
1287
1288         * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
1289         the output file.
1290
1291         * doc/as.texinfo: Don't use @value in node names for the moment;
1292         references don't appear to work right.
1293
1294         * as.h (const, volatile): Put these definitions back, and use
1295         them.
1296
1297         * doc/as.texinfo: First pass at using new texinfo features --
1298         variables, conditional tests.  Far from complete.
1299
1300 Mon Mar 29 16:05:40 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1301
1302         * read.c: Temporary hack to handle some 64-bit constants.  This
1303         should be redone later.
1304         (target_big_endian): Declare.
1305         (big_cons): If it's set, reverse order of bytes being copied.
1306         * config/tc-sparc.c (md_begin): Set target_big_endian.
1307
1308         * read.c (s_ignore): Delete declaration of is_end_of_line.
1309
1310         * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
1311         forward pointers properly.
1312
1313 Mon Mar 29 13:47:33 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1314
1315         * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
1316         wasn't being stored into scnhdr.
1317         * config/obj-coffbfd.h: Add prototype of s_get_segment.
1318         * read.c (TC_START_LABEL): Default definition.
1319         (read_a_source_file): Use TC_START_LABEL macro to work out
1320         if a label has been seen.
1321
1322 Mon Mar 29 12:56:56 1993  Ian Lance Taylor  (ian@cygnus.com)
1323
1324         * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
1325         the bottom (make expands variables in dependencies when the
1326         dependencies are read, not when they are used).
1327
1328         * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
1329         a29k .bss section; the mondfe program doesn't like it.
1330
1331 Sun Mar 28 08:12:53 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
1332
1333         * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
1334         const.
1335         (current_architecture): Don't need initializer.
1336
1337 Fri Mar 26 08:12:48 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1338
1339         * doc/none.m4: Define Z8000.
1340         * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir).  Remove the
1341         texinfo file before recreating it.
1342         (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
1343         this directory.
1344         (srcdir): Delete second, bogus definition.
1345         (as.info): Look for as-*.texinfo in current directory rather than
1346         in $(srcdir).
1347         (as.dvi): Ditto.
1348         (dvi): New rule.
1349         * doc/configure.in: Create links to all as-*.texinfo files in the
1350         source directory, if that's not the current directory.
1351
1352         * configure.in (per-host):  Accept MIPS host with BSD version
1353         number.
1354         (per-target): Classify i486 as i386.  Use generic cpu_type instead
1355         of target_cpu in selecting format etc.
1356
1357         * app.c (do_scrub_next_char): Use .appfile, not .app-file.
1358         * read.c (potable): Change .app-file to .appfile.
1359
1360         * config/ho-decstatn.h: Renamed from ho-decstation.h.
1361         * configure.in: Adjusted.
1362
1363         * config/obj-bfd-sunos.*: Unused; deleted.
1364
1365         * Makefile.in (version.c, vers-stamp): Deleted.
1366         (config.h): Define GAS_VERSION.
1367         * as.c (version_string): Deleted declaration.
1368         (main): Look for GAS_VERSION instead.
1369
1370         * doc/as.texinfo: Updated description of -a* (listing) options,
1371         and describe how to pass them through from gcc.
1372
1373         * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
1374         process relocs if there aren't any relocs to process.  Avoids
1375         malloc/free bug on SCO too.
1376
1377         * as.h: Move local include files below system include files, to
1378         avoid some redefinition complaints on some systems.
1379         (const, volatile): Don't need these conditionally defined if we
1380         use CONST and VOLATILE from ansidecl.h.
1381         (seg_name): Use CONST, not const.
1382
1383 Fri Mar 26 10:22:04 1993  Ian Lance Taylor  (ian@cygnus.com)
1384
1385         * config/tc-mips.c: Reindented to GNU standards.
1386
1387 Thu Mar 25 08:59:14 1993  Ian Lance Taylor  (ian@cygnus.com)
1388
1389         * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
1390         (fixup_segment): Add a29k special case; the linker is not prepared
1391         to see a segment offset here.
1392
1393         * app.c (do_scrub_next_char): Added new state, 10, modifying state
1394         9 to only keep a space in between identifier characters.
1395
1396 Wed Mar 24 02:16:22 1993  david d `zoo' zuhn  (zoo at poseidon.cygnus.com)
1397
1398         * Makefile.in: add dvi target; as-$(config).texinfo might live in
1399         srcdir, might be in objdir.
1400
1401         * doc/Makefile.in: dvi depends on as.dvi
1402
1403 Mon Mar 22 23:59:13 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1404
1405         * Makefile.in: add installcheck target
1406
1407 Mon Mar 22 10:19:00 1993  Ian Lance Taylor  (ian@cygnus.com)
1408
1409         * config/tc-mips.c (macro): Use $AT for any floating point load.
1410
1411 Sat Mar 20 12:50:51 1993  Ken Raeburn  (raeburn@urth.cygnus.com)
1412
1413         * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
1414         bignums, but don't emit error message.
1415
1416 Fri Mar 19 21:02:19 1993  Jim Wilson  (wilson@sphagnum.cygnus.com)
1417
1418         * Makefile.in (targ-cpu.o): Depend on config.h.
1419
1420 Wed Mar 17 16:44:06 1993  Ian Lance Taylor  (ian@cygnus.com)
1421
1422         * app.c (do_scrub_next_char): Added new state, 9, to avoid
1423         dropping a space immediately following an identifier.
1424         * expr.c, write.c: Rewrote assert expressions to not use multiple
1425         lines; I don't think that can be done portably.
1426         * config/tc-mips.c (macro): Use $AT if target register is zero in
1427         load instruction, which it can be for a floating point load.
1428
1429 Mon Mar 15 12:17:28 1993  Ian Lance Taylor  (ian@cygnus.com)
1430
1431         * write.c (write_contents): Compute the relocs before writing out
1432         the section contents.
1433         * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
1434         symbol table and values right.
1435         * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
1436         with $L is local.
1437         * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
1438         by the section vma.
1439
1440         * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
1441         z8k-opc.h, not z8k.h.
1442
1443         * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
1444         symbol.
1445
1446 Fri Mar 12 18:33:36 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1447
1448         * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
1449
1450 Fri Mar 12 12:00:07 1993  Ian Lance Taylor  (ian@cygnus.com)
1451
1452         * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
1453         to be on a single line.
1454
1455 Thu Mar 11 17:56:22 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1456
1457         * Makefile.in (config.h): Create file, writing out definitions of
1458         target cpu, alias, and canonical name.
1459         (ALL_CFLAGS): No longer define TARGET_CPU.
1460
1461         * Makefile.in (check): Print a message, instead of quitting
1462         silently.
1463
1464         * as.c (main): Don't catch any signals, for now.
1465
1466         * version.c: Deleted.
1467         * Makefile.in: Generate it, putting in only the version number
1468         itself.
1469         (VERSION): New variable.
1470         * as.c: Include config.h.
1471         (main): Reformatted version string.  Include target alias.  Don't
1472         print if not requested (i.e., unknown -v argument).
1473
1474         * as.c (stralloc): Deleted.
1475         (main): Call strdup instead.
1476
1477         * configure.in: Handle all 68300 series chips.
1478         * config/tc-m68k.c: Include config.h.
1479         (md_assemble): Assume TARGET_CPU is defined.  Accept some 68300
1480         series cpus as defaults.
1481         (md_parse_option): Accept some m68300 series CPUs as defaults.
1482
1483 Wed Mar 10 17:41:16 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1484
1485         * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
1486         not already defined.
1487         (main, got_sig): Use them.
1488         * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
1489         values.
1490
1491 Tue Mar  9 07:40:06 1993  Ian Lance Taylor  (ian@cygnus.com)
1492
1493         * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
1494         support.
1495
1496         * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
1497         OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
1498         (struct loc, struct proc, struct file): Moved to tc-mips.c within
1499         #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
1500         * config/tc-mips.c: Rearranged for ECOFF support.  Added
1501         prototypes for all static functions.  Moved existing minimal
1502         debugging format support info #ifndef OBJ_ECOFF blocks.
1503         (macro_build_lui): Eliminated sign_extend argument, because ECOFF
1504         does not support a non sign extended high 16 bits reloc.  Adjusted
1505         all callers accordingly.
1506         (tc_get_register): Renamed from get_register, and made non-static.
1507
1508         * config/mips-big.mt, config/mips-lit.mt: New files.  Define
1509         TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
1510         respectively.
1511         * configure.in (mips-*-bsd*): Use gas_target mips-lit.
1512         (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
1513         obj_format ecoff and gas_target mips-lit or mips-big.
1514
1515 Tue Mar  9 07:43:01 1993  Ken Raeburn  (raeburn@cygnus.com)
1516
1517         * version.c: Bump to version 2.0.1.
1518
1519 Tue Mar  9 07:40:06 1993  Ian Lance Taylor  (ian@cygnus.com)
1520
1521         * write.c (chain_frchains_together): Check that seg_info (section)
1522         is not NULL.
1523         (write_object_file): Call obj_frob_file after setting the symbols,
1524         not before.
1525
1526 Tue Mar  9 00:00:00 1993  Ken Raeburn  (raeburn@cygnus.com)
1527
1528         * Version 2.0 released.
1529
1530 Mon Mar  8 14:57:10 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1531
1532         * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
1533
1534 Fri Mar  5 09:05:55 1993  Ian Lance Taylor  (ian@cygnus.com)
1535
1536         * read.h: Define stringer here.
1537         read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
1538         places.
1539
1540 Thu Mar  4 11:52:23 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1541
1542         * read.c (s_space): Multiply repeat count by mult, not fill.
1543
1544 Thu Mar  4 05:20:42 1993  Ken Raeburn  (raeburn@cygnus.com)
1545
1546         * read.c: Include ctype.h.
1547
1548 Wed Mar  3 10:41:46 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1549
1550         Patches from Eric Youngdale:
1551         * make-gas.com: Find obstack.obj if it's not in the current
1552         directory.
1553         * read.c (s_ignore): Don't declare is_end_of_line.  It's
1554         redundant, and triggers a VMS gcc compiler bug.
1555
1556         * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
1557         current segment as an argument.  (Ignored in all cases but VMS.)
1558         All callers and definitions changed.
1559
1560 Tue Mar  2 11:56:19 1993  Ian Lance Taylor  (ian@cygnus.com)
1561
1562         * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
1563         case compile again.
1564
1565 Tue Mar  2 08:53:34 1993  Ken Raeburn  (raeburn@cygnus.com)
1566
1567         * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
1568         so "~0x80" won't be rejected.
1569
1570         * config/obj-elf.c: No longer include elf/reloc.h.
1571         (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
1572         (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
1573         routines.
1574         (obj_elf_xstab): New routine.
1575         (obj_elf_set_size): Call as_warn, not fprintf.  Pass desired
1576         argument to s_ignore.  Put "#if 0" around unused code.
1577         (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
1578         Call elf_xstabs for .stabs and .xstabs operators.
1579
1580         * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
1581
1582         * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
1583         present.
1584
1585         * configure.in: mips-bsd configuration was missing format spec.
1586         Should use aout.
1587
1588         * Makefile.in (Makefile): Depends on configure.in.
1589
1590         * config/tc-mips.c (append_insn): Don't check for alignment of
1591         frag in memory; alignment of instructions in section is a separate
1592         matter.
1593
1594         * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
1595         C availability.
1596
1597         * listing.h: Always provide function declarations, not macros, so
1598         pcc won't lose.
1599
1600 Tue Mar  2 00:50:43 1993  John Gilmore  (gnu@cygnus.com)
1601
1602         * CONTRIBUTORS:  Update Gilmore entry.
1603
1604 Wed Feb 24 14:58:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1605
1606         * frags.c (frag_init): New function.
1607         (zero_address_frag, bss_address_frag): Now initialized at run
1608         time.
1609         * as.c (main): Call frag_init.
1610
1611 Wed Feb 24 10:32:42 1993  Ian Lance Taylor  (ian@cygnus.com)
1612
1613         * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
1614         Don't unget ch2 if we didn't get it.
1615
1616 Wed Feb 24 04:14:07 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
1617
1618         * doc/Makefile.in (TEXIDIR): Updated for new layout.
1619
1620         * config/tc-sparc.c (s_common): Add support for ELF version.
1621         (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
1622         * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
1623         New macros.
1624         (md_convert_frag): New macro.
1625
1626         * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
1627         symbol, fix the offset so "+2" isn't required.
1628
1629         * config/tc-i960.c (line_comment_chars, line_separator_chars):
1630         Define as common/bss.
1631         (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
1632         initializers are sufficient.
1633
1634         * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
1635         (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
1636         (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
1637         (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
1638         * config/obj-aout.c: Use PARAMS macro for declarations.  Remove
1639         "IGNORE_DEBUG" conditional, since both branches are identical.
1640         Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
1641         referencing symbol structure members.
1642         (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
1643
1644         * as.h (struct frag): Reordered a couple of fields for better
1645         packing.
1646
1647         * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
1648         section info.
1649         (write_contents) [BFD_ASSEMBLER]: New function.
1650         (write_object_file) [BFD_ASSEMBLER]: Always handle -R here.  Call
1651         fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC.  Call
1652         obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
1653         (fixup_segment): Make sure common-section symbols get treated the
1654         same as undefined symbols.
1655         (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
1656         bfd_reloc_code_real_type.  Use seg_fix_{root,tail}P derived from
1657         section info.
1658         * write.h (fix_new): Update prototype.
1659
1660         * tc.h (md_operand, md_convert_frag, tc_headers_hook,
1661         md_section_align, md_undefined_symbol): Don't provide prototypes
1662         if these are defined as macros.
1663         (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
1664         section passed.
1665
1666         * symbols.c (symbol_new): Argument NAME is now pointer to const.
1667         Simplified STRIP_UNDERSCORE code.  Remove assumptions about null
1668         pointers in freshly allocated storage.  [BFD_ASSEMBLER]: Get new
1669         BFD symbol.
1670         (colon): Display other/desc fields of redefined symbol only if
1671         S_GET_OTHER and S_GET_DESC are defined.
1672         (symbol_make): Argument NAME is now pointer to const.
1673         (symbol_find, symbol_find_base): Likewise.
1674         (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
1675         * symbols.h: Fix prototypes for new const arguments.  Add
1676         prototypes for BFD_ASSEMBLER S_* functions.
1677
1678         * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
1679         for changing to an existing section.
1680         (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
1681         called by subseg_new and subseg_set.
1682         (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
1683         given section name and subseg number.
1684         (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
1685         new section/subsection.
1686
1687         * read.c: Don't include ctype.h.
1688         (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
1689         for now; should be machine-dependent.
1690
1691         * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
1692         targets, forcing BFD use.
1693
1694 Wed Feb 17 18:59:03 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1695
1696         * config/tc-sparc.c: Use PARAMS macro for static function
1697         declarations.  Use BFD_RELOC_ macros everywhere, with
1698         compatibility macros declared for non-BFD mode.
1699         (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
1700         instead of enum reloc_type.
1701         (emit_sparc_reloc): Commented-out function deleted.
1702         (md_convert_frag): Deleted.
1703         (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
1704         (md_apply_fix): Changed calling sequence (conditionally) for BFD
1705         version.
1706         * config/tc-sparc.h (md_convert_frag): New macro.
1707
1708         * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
1709         not SEG_UNKNOWN.  Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
1710         of referencing fields directly.
1711
1712         * write.c (cvt_frag_to_fill): New function; extracted from
1713         write_object_file.
1714         (write_object_file) [! BFD_ASSEMBLER]: Call it.
1715         (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
1716         and set its size and flags.
1717
1718         * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
1719         fields with BFD equivalents.  Turn on back-pointers, and add
1720         target-specific fields at end.
1721
1722 Thu Feb 11 09:20:37 1993  Ian Lance Taylor  (ian@cygnus.com)
1723
1724         * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
1725         (write_object_file): Set it here instead, so that fixup_segment
1726         can see the correct value.
1727
1728 Mon Feb  8 13:56:17 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1729
1730         * write.c (write_object_file): Check for errors and warnings and
1731         bail out before processing contents.
1732         (chain_frchains_together_1): New function, does most of the work
1733         of remove_subsegs.
1734         (chain_frchains_together) [BFD_ASSEMBLER]: New function.
1735         (remove_subsegs) [! BFD]: Call it.
1736         (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
1737         structures and routines.
1738
1739         * config/obj-elf.*: New files.
1740
1741         * config/mips.mt, config/rs6000.mt: Deleted.
1742
1743         * config/h8300.mt: Don't specify compiler here.
1744
1745         * config/z8k.mt: The z8k code depends on the z8k opcode table,
1746         not the h8300 one.
1747         * config/tc-z8k.h: Comment fix.
1748
1749         * write.c: Reordered some functions for better inlining.
1750         (fixup_segment): Linkrelax code is no longer conditional on
1751         TC_I960.
1752
1753 Thu Feb  4 12:45:16 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1754
1755         * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
1756         obj-coffbfd.h}: support for the H8/500
1757
1758 Wed Feb  3 19:28:18 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1759
1760         * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
1761         * write.c (write_object_file): Not here.
1762         (fix_new): Initialize fx_addnumber.
1763
1764         * listing.c: Don't include target-cpu.h explicitly, since as.h
1765         includes it.
1766
1767 Thu Jan 28 00:35:40 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
1768
1769         * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
1770         *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
1771         (struct fix): Reordered fields for compactness and efficiency.
1772         Converted some logical fields to 1-bit fields.
1773
1774         * config/obj-aout.h: Use PARAMS.
1775         [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
1776         N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
1777
1778         * read.c: Don't include listing.h; as.h includes it.  Removed
1779         DONTDEF code.
1780         [BFD_ASSEMBLER]: Include subsegs.h.
1781         (old_buffer, new_broken_words): Default initialization is
1782         sufficient.
1783
1784         * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
1785         to 0, define stdoutput.
1786         (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
1787         Call bfd_set_arch_mach.
1788         (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
1789         bfd_close_all_done.  Call bfd_perror on failure.
1790         (output_file_append) [BFD_ASSEMBLER]: Don't define.
1791
1792         * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
1793
1794         * subsegs.h (segment_info_type): Always define.  Omit field scnhdr
1795         if not MANY_SEGMENTS.  Define new field bfd_section if
1796         BFD_ASSEMBLER.
1797         (seg_info): New macro.
1798
1799         * expr.c, input-scrub.c: Use PARAMS macro.  Deleted unused
1800         variables, and some irrelevant comments.
1801
1802         * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
1803         (LIBS): Include $(BFDLIB).  Don't bother with $(CLIB).
1804         * configure.in:  Permit --with-bfd-assembler now, with a warning.
1805         Variable need_bfd is now a boolean, as is new variable bfd_gas.
1806         Set BFDDEF and BFDLIB in Makefile when appropriate.
1807
1808         * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
1809         (main): Refer to flag_always_generate_output instead of
1810         flagseen['Z'].
1811
1812         * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
1813         (*_section) [BFD_ASSEMBLER]: Define them.
1814         (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
1815         set section flags when appropriate.
1816         * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
1817         section is not absolute, undefined, or an assembler internal one.
1818         (absolute_section, undefined_section): Always define.
1819         * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
1820         switch statements into if-else trees.
1821         * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
1822         SEG_BSS and SEG_DATA.
1823
1824         * as.h (frag_now_fix): New macro.
1825         * symbols.c (colon): Use it.
1826
1827 Wed Jan 27 21:43:53 PST 1993  Ralph Campbell  (ralphc@pyramid.com)
1828
1829         * config/tc-mips.c:  Added mips support for mips-dec-bsd.
1830         * config/tc-mips.h:  Added mips support for mips-dec-bsd.
1831         * config/ho-mipsbsd.h:  Added mips support for mips-dec-bsd.
1832         * config/mips-opcode.h:  Added mips support for mips-dec-bsd.
1833         * configure.in:  Added mips support for mips-dec-bsd.
1834         * atof-generic.c:  Define TRUE and FALSE if not defined.
1835
1836 Thu Jan 21 12:48:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1837
1838         * version.c: Bumped version number to 1.93.05.
1839
1840 Wed Jan 20 17:11:53 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1841
1842         * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
1843         (obj_emit_lineno): Don't need return at end of void function.
1844         (obj_symbol_new_hook): Ditto.
1845
1846         * config/tc-m68k.c: Removed some unused code.
1847         (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
1848
1849         * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
1850         offset field is set.
1851
1852 Fri Jan  8 05:44:49 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1853
1854         * config/tc-sparc.c (architecture_requested, warn_on_bump,
1855         md_relax_table): Use default zero initialization.
1856         (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
1857         latter, instead of selecting with preprocessor conditionals.
1858
1859 Thu Jan  7 08:58:21 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1860
1861         * configure.in: recognise all sparclite variants
1862
1863 Thu Jan  7 05:25:25 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1864
1865         * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
1866         accidentally changed to use subseg_change where it should have
1867         been subseg_new.
1868
1869 Tue Jan  5 08:42:16 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1870
1871         * expr.c (operand): If character other than comma or newline is a
1872         logical end-of-line character, use the newline case.
1873         From Eric Youngdale:
1874         (operand): Set X_add_number field for floating-point numbers.
1875         (operand): Treat zero byte as end-of-operand.
1876
1877         * configure.in (per-target): Look for with_bfd_assembler option.
1878         For now, only accept "no", until the merge is done.
1879
1880         Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
1881         * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
1882           config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
1883         * read.c: Finish conversion to S_* macros in the VMS only
1884           parts of the program. Add "const" modifier to hex_value.
1885         * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
1886           "ifdef OBJ_VMS".
1887         * expr.c: Add "const" modifier to hex_value.
1888         * symbols.c: Finish conversion to S_* macros in the VMS only
1889           parts of the program.  Add "const" modifier to
1890           md_[long,short]_jump_size. Remove declaration of const_flag
1891           (which will be declared in obj-vms.h).
1892         * write.c: Add "const" modifier to md_[long,short]_jump_size.
1893           Fix arguments to VMS_write_object_file.
1894         * config-gas.com: New file.  Script for VMS systems to set up the
1895           configuration to build gas for VMS, and create config.status.
1896         * make-gas.com: Redone to work with new scheme.
1897         * obj-vms.c: Patch to fix bug where we were not correctly parsing the
1898           stabs directives.
1899         * obj-vms.c:  Define macros COPY_LONG and COPY_SHORT which
1900           will swap bytes if needed on a big endian system.  Use throughout
1901           as needed.
1902         * obj-vms.c (obj_aout_stab):  Add code to generate listing file.
1903         * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
1904           types of malformed stabs.  Change parsing algorithm so that we are
1905           more certain of having all of the information that we need on hand.
1906         * obj-vms.c (final_forward_reference):  New function, used to help
1907           resolve the data types of as many struct elements as possible
1908           when some part of the struct is not fully defined by the compiler.
1909         * obj-vms.c (VMS_LSYM_Parse):  Correctly handle case of continuation
1910           stabs directives.
1911         * obj-vms.c (VMS_write_object_file): Define all vtable psects
1912           as symbols as well in the object file.  Look for external functions
1913           that start with "__vt.", and turn them into variables, since the
1914           g++ compiler is incapable of doing this.
1915         * tc-vax.c: Add '1' option for backward compatibility with older GCC
1916           versions.
1917         * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
1918         * input-scrub.c (as_where): Fix bug where as would crash if we did not
1919           have the name of the source file yet.
1920         * config/ho-vms.h: define HO_VMS, not HO_VAX.
1921
1922 Mon Jan  4 05:17:26 1993  Ken Raeburn  (raeburn@cygnus.com)
1923
1924         * read.c (s_data): Always use "data_section", since it'll map to
1925         SEG_DATA or SEG_E1 if needed.
1926         (s_lcomm): Likewise with bss_section.
1927         (s_fill): Use memset, not bzero.
1928
1929 Thu Dec 31 04:29:27 1992  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
1930
1931         * read.c: Deleted some code under "#ifdef DONTDEF" that was for
1932         handling GDB symbol table data.
1933
1934         * config/obj-aout.h (segment_name): Delete definition.
1935         (seg_name): Delete declaration.
1936         * config/obj-bout.h (segment_name, seg_name): Ditto.
1937         * config/obj-vms.h (segment_name, seg_name): Ditto.
1938         * config/obj-coff.h (segment_name): Ditto.
1939         * config/obj-coffbfd.h (segment_name): Ditto.
1940
1941         * Changes for BFD_ASSEMBLER:
1942         * obj.h (obj_crawl_symbol_chain): Declare only if not
1943         BFD_ASSEMBLER.
1944         (obj_header_append, obj_pre_write_hook): Ditto.
1945         * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
1946         (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
1947         (segment_name) If BFD_ASSEMBLER, look up BFD section name;
1948         otherwise, use seg_name array.
1949         (seg_name): Declare only if not BFD_ASSEMBLER.
1950         (section_alignment): Declare only if not BFD_ASSEMBLER.
1951         (big_section, reg_section, pass1_section, diff_section,
1952         absent_section, text_section, data_section, bss_section): If
1953         BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
1954         mapping to segT enum values.
1955         (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
1956         if these are used or defined, if BFD_ASSEMBLER.
1957         (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
1958         subseg_new split into two functions.
1959         (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
1960
1961         * as.h (volatile): Don't define if already defined.
1962         (had_errors, had_warnings): Provide prototypes for ANSI C even if
1963         NO_STDARG.
1964         (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
1965         declare with format attribute for -Wformat checking.
1966
1967 Wed Dec 30 10:18:57 1992  Ian Lance Taylor  (ian@cygnus.com)
1968
1969         * app.c, config/tc-*.c: Don't include read.h, since it is already
1970         included by as.h.
1971
1972         * These are based on patches from Minh Tran-le
1973         <mtranle@paris.intellicorp.com>.
1974         * configure.in (i[34]86-ibm-aix*): Accept i486 for host.  Use
1975         obj_format coffbfd and gas_target i386coff for target.
1976         (i[34]86-*-isc*): New host (uses sysv).
1977         * config/i386aix.mt: Removed (no longer used).
1978         * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
1979         (MINUS_G): Removed.
1980         (LDFLAGS): Added, defined as -shlib.
1981         * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
1982         * config/te-sco386.h (LOCAL_LABEL): Don't define.
1983         (DOT_LABEL_PREFIX): Define.
1984         * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
1985         name rather than L0\001.
1986         * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
1987         local_bss_counter.
1988         * symbols.c, symbols.h (local_bss_counter): Removed.
1989         * write.c (write_object_file): bss no longer uses
1990         local_bss_counter.  Pass correct data and bss size to
1991         VMS_write_object_file.
1992         * config/obj-vms.c (VMS_write_object_file): Accept bss size as
1993         argument, rather than using local_bss_counter.
1994         * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
1995         * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
1996         * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
1997         (size_section): Restored sanity check.
1998         (do_relocs_for): Base section address on s_paddr rather than
1999         computing it.  Adjust a29k R_IHIHALF special case to account for
2000         section paddr (used to require paddr to be zero).  If there are no
2001         reclos, set s_relptr to 0.  Set relocation size in object_headers.
2002         (fill_section): Always set s_vaddr here, removing
2003         ZERO_BASED_SEGMENTS case.  Force s_scnptr for bss to 0.  Don't set
2004         NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
2005         Set STYP_INFO for .comment.
2006         (coff_header_append): Use object headers and H_{SET,GET}_* macros.
2007         Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
2008         (crawl_symbols): Handle 8 character section name correctly.  Use
2009         H_{SET,GET}_* macros.
2010         (do_linenos_for): Set lineno size in object_headers.
2011         (write_object_file): Use H_{SET,GET}_* macros.  Don't bother to
2012         set s_vaddr here.  If string_byte_count remains 4, set it back to
2013         0, and only write strings out if there are some.  Call
2014         fill_section before do_relocs_for and do_linenos_for.
2015         (obj_coff_section): Handle optional quoted second argument giving
2016         section characteristics.
2017         (obj_coff_bss): Added to handle .bss.
2018         (obj_coff_ident): Added to handle .ident (puts string in .comment
2019         section).
2020         (obj_coff_lcomm): Put common symbols in .bss, not .data.
2021         (fixup_mdeps): Change to segment.  Call frag_wane after
2022         md_convert_frag.
2023         (fixup_segment): Explicitly check S_IS_COMMON before making 386
2024         adjustment (already happened only for common symbols, but this is
2025         clearer).
2026         * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
2027         * config/tc-i386.c (s_bss): Don't use if I386COFF.
2028         (md_pseudo_table): Ignore .optim and .noopt.
2029         (tc_coff_sizemachdep): New function.
2030         * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
2031         compatibility.
2032         (LOCAL_LABEL): Removed definition.
2033         (DOT_LABEL_PREFIX): Defined.
2034
2035 Mon Dec 28 10:32:05 1992  Ken Raeburn  (raeburn@cygnus.com)
2036
2037         * app.c (app_push): Use memcpy, not bcopy.
2038         (do_scrub_next_char): For \", return " not '.
2039         (symbol_chars): Now const.
2040
2041         * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
2042         and "0b".  If LOCAL_LABELS_DOLLAR, check for "0$".
2043
2044         * config/obj-coff.h: Don't use #elif.
2045
2046         * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
2047         have it.  (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
2048
2049 Wed Dec 16 12:12:33 1992  Ian Lance Taylor  (ian@cygnus.com)
2050
2051         * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
2052         already defined.
2053
2054 Tue Dec 15 12:40:11 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2055
2056         * app.c (do_scrub_begin): allow single quote strings if so
2057         configured.
2058
2059         * config/*z8k*: checkpoint
2060
2061 Sun Dec 13 00:04:38 1992  Ian Lance Taylor  (ian@cygnus.com)
2062
2063         * read.c (read_a_source_file): avoid calling xmalloc (0).
2064
2065 Sat Dec 12 15:26:34 1992  Ian Lance Taylor  (ian@cygnus.com)
2066
2067         * listing.c: Call xmalloc, not malloc; don't declare malloc.
2068
2069         * Changes to support SCO 3.2v4:
2070         * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
2071         SEG_BSS, fill with NOP_OPCODE.
2072         * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
2073         * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
2074         using ZERO_BASED_SEGMENTS.
2075         (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
2076         never set segment address for SEG_E2 (.bss) and don't write out
2077         SEG_E2 contents.  Set .init and .fini sections to STYP_TEXT.
2078         (obj_coff_endef): Don't merge labels or symbols awaiting forward
2079         definitions, and don't merge tags with non-tags.  Check for .bf
2080         rather than just checking whether the second character is b and
2081         the third character is f.
2082         (obj_coff_val): gcc can generate values which we don't handle
2083         correctly; discard information for now, since it only affects the
2084         debugging information.
2085         (tag_find_or_name): Don't insert tags in the symbol table.
2086         (yank_symbols): Don't merge labels.
2087         (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
2088         already defined.  Fill subsegments with NOP_OPCODE, not 0.  Don't
2089         set segment address if ZERO_BASED_SEGMENTS.
2090         (obj_coff_section): Accept and ignore a trailing quoted string, as
2091         used in AT&T i386 syntax.
2092         (fixup_segment): Take segment as argument.  On the i386, adjust PC
2093         relative addends by the segment vaddr.
2094         * tc-i386.h: Define SUB_SEGMENT_ALIGN.
2095         * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
2096         * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
2097
2098 Tue Dec  8 00:06:48 1992  Ken Raeburn  (raeburn@rtl.cygnus.com)
2099
2100         * config/obj-coffbfd.c: Include libcoff.h.
2101
2102         * version.c: Now version 1.93.
2103
2104 Mon Dec  7 00:39:09 1992  Ken Raeburn  (raeburn@cygnus.com)
2105
2106         * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
2107         power-of-two alignment for .align.
2108
2109         * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
2110         and leave everything else alone.
2111
2112 Fri Dec  4 16:58:42 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2113
2114         * Makefile.in (as.new): Don't bother saving as.old.
2115
2116         * write.c: Conditionalize on OBJ_VMS, not VMS.
2117         (magic_number_for_object_file): Don't define if OBJ_VMS.
2118
2119         * config/obj-vms.c: Changes for traditional C.
2120
2121 Thu Dec  3 01:24:07 1992  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2122
2123         * config/ho-generic.h (malloc, realloc): Declare.
2124
2125         * Lots of comment/whitespace changes.
2126
2127         * write.h (struct fix): Some fields reordered, narrowed.
2128
2129         * read.c (MASK_CHAR): Define using C types, not magic number.
2130
2131         * as.c, input-file.c: Deleted some unused code.
2132
2133         * app.c, as.h: Doc fix.
2134
2135         * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
2136
2137         * as.h (xmalloc): Argument is long.
2138
2139         * xmalloc.c (error): Remove declaration; as.h takes care of it.
2140
2141         * doc/as.texinfo: Regrouped documentation of some command-line
2142         options.  Updated options documentation for m68k.  Some minor
2143         wording/punctuation changes.
2144
2145 Mon Nov 30 11:42:11 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2146
2147         * configure.in: Accept target OS "vms".
2148
2149         * symbols.c:  Merged ANSI and non-ANSI function decls, using
2150         PARAMS macro.
2151
2152         * xmalloc.c: Just include as.h, don't bother trying to figure out
2153         other header files.
2154
2155         * strstr.c, strerror.c: Deleted.
2156         * Makefile.in: Deleted references.
2157
2158         * config/tc-ns32k.c: Don't include header file for string
2159         declarations; leave that to ho-*.h.
2160
2161 Fri Nov 27 04:11:36 1992  Ken Raeburn  (raeburn at cambridge-laptop.cygnus.com)
2162
2163         * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
2164         imported from FSF sources.
2165
2166         * messages.c (strerror): Declare unconditionally.
2167
2168         * as.h: Delete alloca and register definitions.
2169
2170         * config/atof-ieee.c (mask): Now const.
2171
2172         * obstack.c, obstack.h: Deleted.
2173
2174         * as.h (flag_readonly_data_in_text): New flag.
2175         * as.c (main): Set it for -R.
2176
2177         * as.h (flag_suppress_warnings): New flag.
2178         * as.c (main): Set it for -W.
2179         * messages.c (as_warn): Check it instead of flagseen['W'].
2180
2181         * as.h (flag_always_generate_output): New flag.
2182         * as.c (main): Set it for -Z.
2183
2184         * config/tc-sparc.h: Define NEED_FX_R_TYPE.
2185         * config/tc-a29k.h: Ditto.
2186         * write.h (struct fix): Don't conditionalize fx_r_type field on TC
2187         macros.
2188
2189         * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
2190         macro.
2191         * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
2192         obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
2193         write.h: Likewise.
2194         * read.c: Likewise.
2195
2196         * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG.  Fold in
2197         xrealloc from xrealloc.c.
2198         * xrealloc.c: Deleted.
2199         * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
2200
2201         * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
2202         or vms ho- files.
2203
2204         * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
2205
2206         * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
2207         don't initialize it with NULL.
2208
2209         * config/ho-vax.h (M_VAX): Deleted; was unused.
2210
2211         * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
2212         New files imported from FSF version, contributed by Eric Youngdale.
2213         * README-vms-dbg, config/vms: Deleted.
2214
2215         * ChangeLog, config/ChangeLog: Merged.
2216
2217         * config/*tahoe*, configure.in: Tahoe support brought in from FSF
2218         version.
2219
2220         * input-file.c (input_file_open): Eliminate call to setvbuf.
2221         [USG] (setbuffer): Deleted macro.
2222
2223 Mon Nov 23 11:00:16 1992  Ken Raeburn  (raeburn@cygnus.com)
2224
2225         * all files: Whitespace changes for GNU indentation style, done by
2226         GNU `indent'.  Some cleanup still needed, especially of comments.
2227
2228         * configure.in: No te-386bsd.h file exists; don't try to use it.
2229
2230         * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
2231
2232         * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
2233         could be doing emulation.
2234
2235 Thu Nov 19 11:47:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2236     
2237         z8000 documentation
2238         * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
2239         all modified.
2240
2241 Tue Nov 10 09:49:24 1992  Ian Lance Taylor  (ian@cygnus.com)
2242
2243         * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
2244
2245         * subsegs.h: add extern to segment_info declaration.
2246
2247         * read.h: added extern declarations for comment_chars,
2248         line_comment_chars, and line_separator_chars.
2249         read.c, app.c: removed definitions of comment_chars,
2250         line_comment_chars, and line_separator_chars.
2251
2252         * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
2253         still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
2254         the register name.
2255         (insert_reg): put REGISTER_PREFIX before register names before
2256         putting them in the symbol table.
2257         * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
2258         M68KCOFF.
2259
2260         * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
2261         section.
2262
2263         * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
2264         comment_chars, line_comment_chars and line_seperator_chars
2265         consistently const, and always initialized them.  Included read.h.
2266
2267 Thu Nov  5 17:55:41 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
2268
2269         * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
2270         constant will not fit in an immediate field.
2271         (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
2272
2273 Wed Nov  4 07:50:46 1992  Ken Raeburn  (raeburn@cygnus.com)
2274
2275         * obj-coff.c (callj_table): Delete global variable.
2276         (obj_emit_relocations): Define it locally here, and only if
2277         TC_I960 is defined.
2278
2279         * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
2280         (m68k_ip): Don't warn about bignum used as float bit-pattern.
2281
2282         * obj-coff.c: Replaced ANSI and non-ANSI function declarations
2283         with a single set using PARAMS macro.
2284
2285         * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
2286         of 2.
2287
2288         * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
2289
2290         * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
2291         so widening works consistently.
2292
2293 Wed Oct 28 08:52:34 1992  Ken Raeburn  (raeburn@cygnus.com)
2294
2295         * version.c: Put conditional "const" before version_string, not
2296         before dummy function for VMS.  Now version 1.91.03.
2297
2298         * app.c (do_scrub_next_char): Need double-\ before `000' to show
2299         printed rep of null character.
2300
2301 Fri Oct 23 14:40:38 1992  Ian Lance Taylor  (ian@cygnus.com)
2302
2303         * obj-coffbfd.c (write_object_file): check return value of
2304         bfd_close_all_done.
2305
2306 Tue Oct 20 12:18:08 1992  Ian Lance Taylor  (ian@cygnus.com)
2307
2308         * Support for i386-sysv.
2309         obj-coffbfd.c (do_relocs_for, write_object_file): set segment
2310         addresses to reasonable sizes.  New define ZERO_BASED_SEGMENTS can
2311         be used to set them all to zero as was done before.
2312         (fill_section): segment addresses now set in write_object_file.
2313         (fill_section): Don't set STYP_NOLOAD for .bss section.
2314         (fixup_segment): 386 uses strange common symbol format.
2315         tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
2316         compatibility with SVR3.2 linker.
2317         * configure.in: i386-sysv and i386-sco use coffbfd.
2318
2319         * app.c (do_scrub_next_char): discard whitespace after a label.
2320
2321 Sat Oct 10 12:33:45 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2322
2323         * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
2324         hosts, use the sysv configuration for solaris2
2325
2326 Mon Oct  5 09:28:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2327
2328          fix i960+non-bfd coff bit rot. 
2329         * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
2330         support for C source listings. (obj_coff_endef): look in the right
2331         part of the symbol for the symbol name
2332
2333         * tc-m68k.c (get_num): make it work for all segments, not just the
2334         first three.
2335
2336 Mon Oct  5 03:30:36 1992  Mark Eichin  (eichin at tweedledumber.cygnus.com)
2337
2338         * configure.in: recognize i386-*-bsd emulation.
2339
2340 Thu Oct  1 23:05:12 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2341
2342         * configure.in: use the cpu-vendor-os triple for host and target
2343
2344 Tue Sep 29 12:22:52 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2345
2346         * obj-coffbfd.c (write_object_file): don't fixup for the z8k
2347         * tc-z8k.c: lots of bug fixes
2348
2349 Tue Sep 29 10:51:55 1992  Ian Lance Taylor  (ian@cygnus.com)
2350
2351         * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
2352         #elif, since it is not supported by old compilers.
2353         ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
2354         couple of expressions in tc-m68k.c.
2355
2356 Mon Sep 28 21:18:24 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2357
2358         * read.c (cons): If NO_RELOC is defined, use it.
2359
2360         * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
2361
2362 Fri Sep 25 18:18:52 1992  Ian Lance Taylor  (ian@cygnus.com)
2363
2364         * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
2365         local labels to start with a .) and set REGISTER_PREFIX to %.
2366         tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
2367
2368 Fri Sep 25 17:53:43 1992  John Gilmore  (gnu@cygnus.com)
2369
2370         * messages.c:  Comment changes.
2371
2372 Fri Sep 25 14:12:58 1992  Ken Raeburn  (raeburn@kyriath.cygnus.com)
2373
2374         * as.h: Test if __STDC__ is defined only, don't test its value.
2375         * messages.c: If __STDC__ is not defined, define NO_STDARG.
2376
2377 Thu Sep 24 12:42:32 1992  Brendan Kehoe  (brendan@rtl.cygnus.com)
2378
2379         * listing.c (debugging_pseudo): Add stabs and stabn as things to
2380         ignore.
2381
2382 Tue Sep 22 13:02:07 1992  Sean Eric Fagan  (sef@cygnus.com)
2383
2384         * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
2385         sections starting from zero, rather than making them consecutive.
2386         This makes subsequent reloc calculations easier, esp if the object
2387         format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
2388         allocate lcomm in .data rather than in .bss.  It seems that some
2389         tools can't cope with a non-zero sized bss before linkage.
2390  
2391 Tue Sep 22 15:10:51 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2392
2393         * tc-m68k.c: Replace "enum m68k_architecture" with "int"
2394         throughout.  That enum no longer means what we thought it meant.
2395
2396         * tc-m68k.c (md_assemble, md_parse_option): Handle new
2397         "-mno-688[58]1" options.
2398
2399         * tc-m68k.c: Added CPU32 support.
2400
2401 Fri Sep 18 08:02:18 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2402
2403         * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
2404
2405 Tue Sep 15 17:25:05 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
2406
2407         * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
2408         Change LIBDEPS dependence to LIBS.
2409
2410 Tue Sep 15 15:32:02 1992  Ian Lance Taylor  (ian@cygnus.com)
2411
2412         * Makefile.in (install): if $(tooldir) exists, install as in
2413         $(tooldir)/bin.
2414
2415 Sun Sep 13 20:30:10 1992  Ian Lance Taylor  (ian@cygnus.com)
2416
2417         * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
2418         .word is < -32768 or > 32767.  The -J flag causes the error to be
2419         ignored.  This is to catch over-sized switches generated by gcc on
2420         systems which don't support the broken .word hack.
2421         as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
2422         write.c (fixup_segment): check for signed .word overflow if
2423         WARN_SIGNED_OVERFLOW_WORD.
2424
2425         * write.c (fixup_segment): fixed missing parens in expression
2426         checking for byte or word overflow.
2427
2428         * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
2429         obj-coffbfd.c (fixup_segment): check for signed .word overflow if
2430         WARN_SIGNED_OVERFLOW_WORD.
2431
2432         * obj-coffbfd.c (fixup_segment): fixed missing parens in
2433         expression checking for byte or word overflow.
2434
2435 Fri Sep 11 10:21:04 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2436
2437         Support for i386 coff
2438         * obj-coffbfd.h : added stuff 
2439         * tc-i386.c (tc_coff_fix2rtype): new function
2440         * tc-i386.h : new coff defines
2441
2442 Thu Sep 10 09:23:15 1992  Ian Lance Taylor  (ian@cygnus.com)
2443
2444         * input-scrub.c (input_scrub_push): call input_file_begin, not
2445         input_scrub_begin.
2446         messages.c (as_perror): print ": " between the passed in error and
2447         the strerror, like perror does.
2448
2449 Wed Sep  9 11:06:25 1992  Ian Lance Taylor  (ian@cygnus.com)
2450
2451         * Makefile.in: use gas_target instead of modifying target_cpu.
2452         From Steve Chamberlain:
2453         Makefile.in: Handle m68*-*-coff*.
2454         read.c, read.h: add mult argument to s_space
2455
2456         * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
2457          Motorola and MIT syntax; gas can now assemble either type of
2458          file.
2459         tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
2460         From Steve Chamberlain:
2461         m68kcoff.mt: for m68k COFF.
2462         obj-coffbfd.c: (fixup_mdeps) added
2463          (size_section) removed bad sanity check
2464          (fill_section) added rs_machine_dependent case
2465          (write_object_file) call fixup_mdeps
2466          (fixup_segment) set fx_subsy to 0.
2467         obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
2468          handle m68k.
2469         tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
2470          pseudo ops.
2471
2472 Tue Sep  8 17:10:58 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2473
2474         * Makefile.in (LIBS): Include opcode library.
2475
2476 Fri Sep  4 18:20:56 1992  Ken Raeburn  (raeburn@cygnus.com)
2477
2478         * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
2479         including zero are accepted, pass +0.0.
2480
2481 Sun Aug 30 21:24:46 1992  Ian Lance Taylor  (ian@cygnus.com)
2482
2483         * Makefile.in: map "as" through program_transform_name when
2484         installing.
2485
2486         * doc/Makefile.in: map "as" through program_transform_name when
2487         installing.
2488
2489 Sat Aug 29 12:11:12 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
2490
2491         * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
2492
2493 Fri Aug 28 16:25:22 1992  Ian Lance Taylor  (ian@cygnus.com)
2494
2495         * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
2496         tc-i960.c (md_ri_to_chars): Always output bout object file in
2497         little endian byte order (used to use endianness of host).
2498
2499 Tue Aug 25 15:50:48 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2500
2501         * config/tc-m68k.c (init_table): Now const.  Always include 68851
2502         data, so that "bc" is available to 68040 cache instructions.
2503         Added "tt0", "tt1", and 68ec030 variants.
2504         (md_assemble): Complain if 68000 (only) and 68881 are specified.
2505         (enum _register): Added TT0, TT1.
2506         (m68k_ip, cases '3' and 't'): Handle new operand type codes.  Pass
2507         line number correctly in "internal error" messages.  Don't print
2508         architecture-mismatch message for operand errors.
2509
2510         From Colin Smith (colin@wrs.com):
2511         * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
2512         than install_operand.
2513
2514 Tue Aug 25 15:13:48 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2515
2516         * listing.c (buffer_line): rewind to the start of include
2517         files, they might be included twice.
2518
2519         * z8k.c, z8k.h, z8k.mt: z8000 support stuff
2520
2521 Mon Aug 24 12:45:43 1992  Ian Lance Taylor  (ian@cygnus.com)
2522
2523         * Makefile.in: defined TARGET_CPU for C code so that it can choose
2524         one element of a family.
2525
2526         * tc-m68k.c: use TARGET_CPU to choose default cpu type.
2527
2528         * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
2529         so that we can assemble hand-written libgcc code.
2530
2531 Fri Aug 21 14:38:44 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2532
2533         * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
2534         has already been formatted (but may still contain %-characters).
2535         (as_bad): Likewise.
2536
2537 Wed Aug 19 11:20:59 1992  Ian Lance Taylor  (ian@cygnus.com)
2538
2539         * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
2540         written with indirection on the last two operands, which can be
2541         either data or address registers.  Added a new operand type 'r'
2542         which accepts either register type.  Added '(' to notend stuff in
2543         tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
2544
2545 Wed Aug 19 09:25:09 1992  Ken Raeburn  (raeburn@cygnus.com)
2546
2547         * as.h (enum _relax_state): Start off at one, not zero, to better
2548         catch uninitialized-variable errors.
2549         (linkrelax): Declare new variable.
2550
2551         * messages.c (warning_count, error_count): Default initializer is
2552         sufficient.
2553
2554         * write.c: Merged some declarations, using PARMS macro.
2555         (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
2556         data_last_frag): No longer static.
2557         (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
2558         defined, call it.  Change segments before calling fixup_segment.
2559         (relax_align): If linkrelax, provide extra padding.
2560
2561         * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
2562         their not having symbols associated.
2563
2564         * tc-i960.c (norelax, instrument_branches): Default initializer is
2565         sufficient.
2566         (linkrelax): Delete variable definition.
2567         (mem_fmt): Call fix_new with NO_RELOC.
2568         (tc_bout_fix_to_chars): Handle alignment relocs.
2569         (i960_handle_align): New function.
2570         * tc-i960.h (linkrelax): Delete declaration.
2571         (HANDLE_ALIGN): New macro; calls i960_handle_align.
2572         (NEED_FX_R_TYPE, NO_RELOC): New macros.
2573
2574 Tue Aug 18 14:59:21 1992  Ken Raeburn  (raeburn@cygnus.com)
2575
2576         * config/sparc.mt: New file.  Grab sparc opcode table from bfd
2577         library.
2578
2579 Tue Aug 18 14:16:38 1992  Ian Lance Taylor  (ian@cygnus.com)
2580
2581         * Makefile.in: always create installation directories.  Removed
2582         MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
2583         FLAGS_TO_PASS to recursive makes.
2584
2585         * doc/Makefile.in: always create installation directories.
2586
2587 Mon Aug 17 15:09:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2588
2589         * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
2590         being used with args swapped, causing occasional lossage when
2591         refilling buffers after an include file.
2592
2593 Mon Aug 17 13:18:51 1992  Ken Raeburn  (raeburn@cygnus.com)
2594
2595         * messages.c (as_tsktsk): Use correct ANSI form for stdarg
2596         version.  Discard bogus DONTDEF version.
2597         (as_warn, as_bad, as_fatal): Likewise.
2598
2599 Fri Aug 14 18:31:14 1992  Ken Raeburn  (raeburn@cygnus.com)
2600
2601         * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
2602         selected architecture, print a message saying so and listing what
2603         processors support it, rather than saying "operands mismatch".
2604
2605 Thu Aug 13 13:53:19 1992  Ken Raeburn  (raeburn@cygnus.com)
2606
2607         * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
2608
2609         * config/ho-rs6000.h (M_RS6000): Don't define it.
2610         (free): Declare it.
2611         (BROKEN_ASSERT): Define it if not __STDC__.
2612
2613 Tue Aug 11 12:58:14 1992  Ken Raeburn  (raeburn@cygnus.com)
2614
2615         * sparc.mt: New file.
2616
2617 Mon Aug 10 14:37:08 1992  Per Bothner  (bothner@cygnus.com)
2618
2619         * tc-m68k.c: ".align N" means align to N-byte boundary *only*
2620         if TN_SUN3; otherwise align to 2**N-byte bounary.
2621
2622 Thu Aug  6 12:10:39 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2623
2624         * read.c (s_fill): make the .fill size clamped error a warn and
2625         fix bug where 0's were always placed.
2626
2627         * config/tc-h8300.c: if a :8 is seen after an operand, fill top
2628         two bytes of any constant with 0xff:
2629
2630 Wed Aug  5 12:02:40 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2631
2632         * config/tc-m68k.c (md_pseudo_table): fix the .align thing
2633         the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
2634
2635 Wed Aug  5 01:54:34 1992  John Gilmore  (gnu at cygnus.com)
2636
2637         * tc-m68k.c (try_index):  Error if index scaling specified and
2638         assembling for an older CPU than a 68020.
2639
2640 Sat Aug  1 19:10:13 1992  Ken Raeburn  (raeburn@cygnus.com)
2641
2642         * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
2643         fx_offset into account.
2644
2645 Fri Jul 31 21:53:28 1992  Ken Raeburn  (raeburn@cygnus.com)
2646
2647         * configure.in (mips host): Accept "ultrix" with version number.
2648
2649         * expr.c (floating_constant): Separate "=-" to avoid confusing
2650         ancient or broken compilers.
2651
2652         * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
2653         processor/opcode mismatch, so reword the error message.
2654         (md_assemble): If no CPU has been set (even if FPU/PMMU
2655         characteristics have been), default to 68020.  Don't need extra
2656         quotes around error string.
2657
2658 Fri Jul 31 12:26:34 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
2659
2660         * read.c (potable): Revert sac's incorrect change made Jul 13.
2661         Align really is supposed to be ptwo not nbytes.
2662
2663 Mon Jul 20 02:51:59 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
2664
2665         * Makefile.in: _Do_ include libiberty.  (from sef)
2666
2667 Fri Jul 17 15:15:28 1992  Ken Raeburn  (raeburn@cygnus.com)
2668
2669         * expr.c (integer_constant): Handle "0f" and "0b" label references
2670         properly.
2671
2672 Thu Jul 16 08:20:17 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2673
2674         * write.c (fixup_segment): if relaxing, don't do anything.
2675         * config/obj-bout.[ch] : maintain the a_relaxable file header info
2676         * config/tc-i960.c: new option -linkrelax
2677
2678 Mon Jul 13 14:11:36 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2679
2680         * expr.c (expr): allow SEG_BSS in expressions
2681         * read.c (potable): align should be nbytes, not ptwo!
2682         * write.c (write_object_file): extra glue for new bss attributes
2683         (relax_segment): SEG_BSS is ok now
2684         * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
2685
2686 Mon Jul  6 17:09:32 1992  Steve Chamberlain  (sac@cygnus.com)
2687
2688         * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
2689
2690 Mon Jun  1 16:20:22 1992  Michael Tiemann  (tiemann@cygnus.com)
2691
2692         * configure.in: recognize m680x0 as having sun3 emulation mode for
2693         vxworks environment.
2694
2695
2696 Tue Jun 30 20:25:54 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
2697
2698         * Makefile.in: Add program_suffix (parallel to program_prefix)
2699
2700 Wed Jun 24 10:57:54 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2701
2702         * app.c (process_escape): new function to handle escapes the right
2703         way, (do_scrub_next_char): use new function
2704         * cond.c (s_ifdef): do ifdef/ifndef right
2705         * read.c (s_fill): make the , expressions optional like the doc
2706         says
2707         * config/tc-h8300.[ch]: better warnings
2708
2709 Tue Jun  9 07:54:54 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2710
2711         * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
2712         as data0_frchainP
2713
2714         * write.c (write_object_file): various changes to handle data in
2715         the BSS segment in much the same was as stuff in the DATA segment. 
2716
2717         * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
2718         pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
2719         68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
2720         the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
2721         it into SEG_BSS
2722
2723 Thu Jun  4 11:59:13 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2724
2725         * expr.c(expr): allow SEG_REGISTER in expressions.
2726         * read.c(pseudo_set): register expressions can be the source of a
2727         set.
2728         * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
2729         goto SEG_TEXT (if a.out)
2730         * write.c (write_object_file): If a.out don't use the old way for
2731         -R.
2732         * config/obj-a.out (s_sect): complain if the user tries to use a
2733         subsegment with a value which might interfere with out -R hackery.
2734         * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
2735         rather than use ugly if tree. (init_regtable): insert register
2736         names into symbol table.
2737
2738 Tue Jun  2 16:47:09 1992  Steve Chamberlain (sac@cygnus.com)
2739
2740         * write.c (write_object_file): keep the fix_tail clean, which
2741         fixes a bug in -R where relocations were being lost.
2742
2743 Mon Jun  1 16:20:22 1992  Michael Tiemann  (tiemann@cygnus.com)
2744
2745         * configure.in: recognize m680x0 as having sun3 emulation mode for
2746         vxworks environment.
2747
2748 Sun May 31 05:33:00 1992  david d `zoo' zuhn (zoo@cygnus.com)
2749
2750         * configure.in: recognize m680x0 as an m68k
2751
2752 Thu May 28 11:22:02 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
2753
2754         * configure.in: Recognize sparclite as a sparc variant.
2755
2756         * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro.  Mention new
2757         -Asparclite flag.
2758
2759 Tue May 26 16:47:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2760
2761         * config/tc-a29k.c: lint
2762         * listing.c, expr.c: patches from Andrew Smith
2763
2764 Thu May 14 17:22:48 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
2765
2766         * doc/Makefile.in: use m4 rather than gm4.
2767
2768 Mon May  4 18:56:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2769
2770         * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
2771         calc the base of relocs correctly.
2772         * tc-a29k.c (parse_operand): allow expressions to be in any section.
2773
2774 Mon Apr 27 13:13:31 1992  K. Richard Pixley  (rich@cygnus.com)
2775
2776         * as.c, write.c: use -K rather than -k for the broken word warning
2777           option.
2778
2779 Tue Apr 21 13:35:30 1992  K. Richard Pixley  (rich@cygnus.com)
2780
2781         * Makefile.in: do not print recursion lines.
2782
2783 Wed Apr 15 21:19:31 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
2784
2785         * Makefile.in: the tooldir copy of gas goes directly in tooldir.
2786
2787 Tue Apr 14 14:50:22 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
2788
2789         * write.c (write_object_file): For b.out format, round up section
2790         start addresses to match required alignment.
2791
2792 Thu Apr  9 05:45:29 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
2793
2794         * Makefile.in (install): Install into $(tooldir)/bin, since that's
2795         where gcc looks for it.
2796
2797 Tue Apr  7 15:12:15 1992  Sean Eric Fagan  (sef@cygnus.com)
2798
2799         * Makefile.in:  Changed some lines to be less confusing for some
2800         makes.
2801
2802         * input-file.c:  Conditionalize on _IOFBF, not VMS.
2803
2804         * read.c, write.c:  Change a series of ifdef/elif to
2805         ifdef/else/ifdef etc.
2806
2807 Fri Mar 27 12:21:16 1992  K. Richard Pixley  (rich@cygnus.com)
2808
2809         * symbols.c (fb_label_init): fix sizeof to memset.
2810
2811 Fri Mar 13 15:45:44 1992  K. Richard Pixley  (rich@cygnus.com)
2812
2813         * Makefile.in: install the man page.
2814
2815         * Makefile.in: pass down MAKEINFO explicitly on info.
2816
2817         * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
2818
2819 Fri Mar 13 08:03:03 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
2820
2821         * flonum-const.c: renamed flonum-konst.c to stop dos name
2822         conflict.
2823
2824 Thu Mar 12 04:42:38 1992  K. Richard Pixley  (rich@cygnus.com)
2825
2826         * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
2827           tc-m68k.h to te-sun3.h. 
2828
2829 Wed Mar 11 23:32:42 1992  K. Richard Pixley  (rich@cygnus.com)
2830
2831         * configure.in: vxworks68 gets te-sun3.h.
2832
2833         * expr.c: remove limitation that local_labels_dollar or
2834           local_labels_fb must be < 10.
2835
2836         * symbols.c: remove local_labels_dollar, replace with a function
2837           interface for a sparse array.  All users adjusted.
2838
2839         * te-sun3.h: add LOCAL_LABELS_DOLLAR.
2840
2841 Sat Mar  7 00:06:25 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
2842
2843         * doc/Makefile.in: commented out line for building as-all.texinfo.
2844           This is temporary.
2845
2846         * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
2847
2848 Fri Mar  6 21:57:18 1992  K. Richard Pixley  (rich@cygnus.com)
2849
2850         * Makefile.in: added check target.
2851
2852 Tue Mar  3 15:45:56 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
2853
2854         * Makefile.in: added tooldir and program_prefix.
2855
2856 Sun Mar  1 04:43:19 1992  Michael Tiemann  (tiemann@cygnus.com)
2857
2858         * write.{c,h} (fix_new): Make these declarations consistent.
2859
2860 Sat Feb 29 13:59:10 1992  Michael Tiemann  (tiemann@cygnus.com)
2861
2862         * Makefile.in (strerror.o): Add rule so that broken Sun make can
2863         work in subdirs.
2864
2865 Wed Feb 26 19:26:28 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
2866
2867         * read.c, obj-coffbfd.c : fix h8300 specific bit rot
2868
2869         * expr.c (operand): if can't work out what sort of operand it is,
2870         then look through FLT_CHARS for a hint.
2871
2872 Wed Feb 26 18:04:40 1992  K. Richard Pixley  (rich@cygnus.com)
2873
2874         * Makefile.in, configure.in: removed traces of namesubdir,
2875           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
2876           copyrights to '92, changed some from Cygnus to FSF.
2877
2878         * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
2879           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
2880           copyrights to '92, changed some from Cygnus to FSF.
2881
2882 Tue Feb 25 14:17:15 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
2883
2884         * expr.c: If an expression is single comma, then return with
2885         SEG_ABSENT rather than an error - since the sparc front end does
2886         really strange things with things like fbge,a 
2887
2888         * as.h: include bfd.h if using many sections
2889         * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
2890         local labels didn't work.
2891         * listing.c (list_symbol_table): don't core dump when there's no
2892         symbol there.
2893         * write.c, write.h: call fix_new with the right number of args on
2894         the H8.
2895         * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
2896         errors nices
2897
2898 Sat Feb 22 12:26:28 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
2899
2900         * app.c: MRI compatibility - allow single quote to start a string.
2901         * as.c: fix typo recently introduced.
2902         * as.h : Don't include aout/reloc.h - it's not right for COFF!
2903         * expr.c: Much rewriting, to accomodate MRI syntax for
2904         expressions. Also easier to read now.
2905         * listing.c: Put back defuns
2906         * read.c: modified to accept MRI syntax, put back listing pseudo
2907         ops so that an assembler built with NO_LISTING ignores list ops
2908         rather than pukes.
2909         * write.c, write.h: fixs - only keep a reloc type in a fix if the target
2910         machine is a SPARC or a 29K.
2911         * config/obj-aout.c: added s_sect pseudo op
2912         * config/obj-coffbfd.c: lints, set the filehdr flags right and
2913         fill in the timestamp.
2914         * config/obj-coffbfd.h: Since we don't include aout/reloc.h
2915         anymore, define all the relocs which the tc-<x> bit will use so we
2916         can translate from them to the coff types.
2917         * config/tc-a29k.c: reloc_type isn't ane enum any more
2918         * config/tc-m68k.c: Added NO_RELOC definition.
2919
2920 Fri Feb 21 06:21:07 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
2921
2922         * Makefile.in: put header files before C source for TAGS; remove
2923           references to non-existent syscalls.h.
2924
2925         * read.c, write.c subsegs.c: back out the .bss changes.
2926
2927         * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
2928
2929         * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
2930
2931         * a.out.h: removed.
2932
2933 Fri Feb 21 01:08:48 1992  Minh Tran-Le (TRANLE@INTELLICORP.COM)
2934
2935         * symbols.c (local_label_name): symbols now start with ^A.
2936
2937         * read.c, subsegs.c, write.c obj-coff.c: added handling of
2938           `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
2939           generate these sections.  .align: will use NOP_OPCODE or 0
2940           for padding. This is just for being nice to the
2941           disassembler.
2942
2943         * expr.c (operand): changed to generate local label "\001L0"
2944           starting with a ^A so that it is recognized as a local label.
2945
2946         * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
2947
2948         * tc-i386.c: tc-i386.c: added handling of the following opcodes:
2949           i/o opcodes - inb, inw, outb and outw.  string manipulation with
2950           att syntax - scmp, slod, smov, ssca, ssto.
2951
2952         * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
2953           to just after .file .
2954
2955           In obj_crawl_symbol_chain() where it tries to put the external
2956           symbols apart, with the condition:
2957             (!S_IS_DEFINED(symbolP) &&
2958              !S_IS_DEBUG(symbolP) &&
2959              !SF_GET_STATICS(symbolP))
2960           it was moving too many symbols out. So I switch it back to the
2961           condition:
2962             (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
2963
2964           In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
2965           so that we don't use the F_RELFLG which make the linker complain
2966           that somebody has stripped the relocation info.
2967
2968           Also, the AIX ld program require that the relocation table
2969           is sorted by r_vaddr like the standard ATT assembler does.
2970
2971           [he also changed the sizeof(struct ...)'s into the coff
2972           style FOOSZ macros.  I'm not sure this is right, but I can't
2973           remember why.  xoxorich.]
2974
2975 Fri Feb 21 01:08:48 1992  K. Richard Pixley  (rich@cygnus.com)
2976
2977         * Makefile.in, configure.in, doc: use the doc.  Build it, install
2978           it, clean it, etc.
2979
2980 Tue Feb 18 02:21:25 1992  K. Richard Pixley  (rich at cygnus.com)
2981
2982         * read.c: white space and comments only.
2983
2984         * configure.in: use the new atof-ns32.c for ns32k.
2985
2986         * write.c: comment change only.
2987
2988         * tc-m88k.[hc]: pulled in from hack's unfinished work.  These
2989           aren't yet integrated.
2990
2991         * tc-i860.[hc]: blew off the dust.  Something must still be done
2992           about conflicting relocation types.
2993
2994         * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
2995           real thing.
2996
2997         * tc-i960.c, tc-sparc.c: white space and comments only.
2998
2999         * tc-a29k.h: delete duplicate macro definition.
3000
3001         * new file atof-ns32k.c copied from hack's last unreleased gas.
3002
3003 Mon Feb 17 07:51:06 1992  K. Richard Pixley  (rich at cygnus.com)
3004
3005         * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
3006           rather than abort.
3007                                        
3008         * nearly everything.  flush ChangeLog, package as gas-1.92.1.
3009           ChangeLog's prior to this are sketchy at best.  I have logs.
3010           They just aren't ChangeLogs.