Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
[platform/upstream/binutils.git] / gas / ChangeLog
1 Thu Oct 14 11:33:25 1993  Michael Meissner  (meissner@osf.org)
2
3         * config/tc-i386.c: (md_begin): Do not zero static arrays.  Don't
4         call strchr for each character to see if it is a special char,
5         instead add a second loop over special_chars.  Set alignment
6         of text, data and bss sections to 4.
7         (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
8         used again.
9         (reloc): Don't return 8 and 16 bit non-PC relative relocations on
10         ELF, since the ELF object format does not have these type of
11         relocations.  Change the abort into as as_bad and return
12         BFD_RELOC_NONE to silence compiler warnings.
13         (md_assemble): Keep track of the instruction size.  Allow white
14         space between the $ and the constant for compatibility with older
15         gases and other assemblers.
16         (i386_operand): Skip spaces between $ and expression.
17         (tc_gen_reloc): Don't allow anything but 32 bit relocations on
18         ELF.  Convert abort into an as_bad and assert into as_fatal.
19
20 Wed Oct 13 16:50:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
21
22         * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
23         sub_symbolP is in the current segment, convert to a PC-relative
24         fixup and discard the symbol.
25
26 Wed Oct 13 14:00:02 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
27
28         * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
29         for st_StaticProc just like st_Proc.
30
31         * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
32         so that OBJ_BOUT doesn't forget to adjust all the fragments in the
33         .bss section.
34
35 Tue Oct 12 17:26:15 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
36
37         * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
38         (mips_regmask_frag): New static variable, if OBJ_ELF.
39         (md_begin): If OBJ_ELF, create .reginfo section and set
40         mips_regmask_frag to a frag.
41         (mips_elf_final_processing): New function, if OBJ_ELF.  Set
42         mips_regmask_frag to register mask information.
43         * config/tc-mips.h (elf_tc_final_processing): New macro, defined
44         if OBJ_ELF.
45
46 Tue Oct 12 03:33:26 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
47
48         * messages.c (as_fatal): Use myname when printing messages.
49
50         * config/tc-i960.c (md_begin): Use null pointer, not empty string,
51         as initial "return" value in case hashing isn't needed.
52
53         * config/tc-a29k.c (md_atof): Return null, not empty string, on
54         success.
55         * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
56         config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
57         config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
58         config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
59
60 Mon Oct 11 16:46:31 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
61
62         fix for pr 3571
63         * config/tc-h8300.c (get_specific): Special action if 8 bit
64         address seen. (check_operand): Don't complain if truncating top
65         bits of an 8 bit address.  (build_bytes): Allow an immediate and
66         an absolute in the same insn.
67
68 Mon Oct 11 17:18:51 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
69
70         * write.c (write_contents): Don't crash if seginfo is NULL.
71
72         * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
73         by modifying .reginfo section, not by directly modifying BFD
74         backend data.
75
76 Mon Oct 11 14:11:32 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
77
78         * config/ho-sunos.h: remove extern time declaration
79
80 Mon Oct 11 16:14:43 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
81
82         * messages.c (as_fatal): Do mention that it's the assembler that
83         got the fatal error.
84
85 Fri Oct  8 14:09:35 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
86
87         * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
88         hold register masks.
89         (md_begin): Initialize them to zero.
90         (append_insn): Update mips_gprmask and mips_cprmask.  Also add
91         register variables pinfo and prev_pinfo.
92         * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
93         * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
94         and cprmask from mips_gprmask and mips_cprmask.
95
96         * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
97         * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
98         (various): Change all references to GP references to apply if
99         GPOPT, not if OBJ_ECOFF.
100         (s_change_sec): Rearrange somewhat.  If OBJ_ELF, use .rodata
101         instead of .rdata.  If OBJ_ELF, set section flags for .rodata and
102         .sdata sections.
103         (s_frame, s_loc, s_mask): Comment out entire functions, rather
104         than just body.  They're not used anyhow.
105         * configure.in: Set cpu_type to mips for mips*.  Accept
106         mips-*-elfl* and mips-*-elf*.
107
108 Thu Oct  7 18:36:29 1993  Michael Meissner  (meissner@osf.org)
109
110         * config/obj-elf.c (obj_elf_common): Allow the alignment field to
111         not be specified.
112
113 Wed Oct  6 13:01:34 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
114
115         * config/tc-mips.c (cons_fix_new_mips): New function.  Turn
116         BFD_RELOC_64 into BFD_RELOC_32.
117         * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
118         (cons_fix_new_mips): Declare.
119
120         Changes to let cons handle bignums like general expressions.
121         * expr.h (expressionS): New field X_unsigned.
122         * expr.c (operand): Initialize X_unsigned to 1.  Set it to 0 for
123         unary minus case.
124         (expr) Fix typo resultP to right if missing operand.  Set
125         X_unsigned to 1 when building new expression.
126         * read.c (potable): Make "octa" and "quad" call cons, not
127         big_cons.
128         (cons): Handle bignums.  If given an O_constant (small integer) to
129         fill a big space, turn it into a bignum.
130         (parse_bitfield_cons): Set X_unsigned field.
131         (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
132         Removed.
133         * read.h (big_cons): Remove prototype.
134         * symbols.c (resolve_symbol_value): Don't give a warning if a
135         symbol in expr_section can not be resolved.
136         (S_SET_VALUE): Clear X_unsigned.
137         * write.c (write_object_file): If resolve_symbol_value failed on a
138         symbol we are writing out, give a warning.
139         * config/tc-h8500.c (parse_reglist): Set X_unsigned.
140         * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
141         call pa_cons, not pa_big_cons.
142         (pa_big_cons): Remove.
143         * config/tc-hppa.h (pa_big_cons): Remove declaration.
144         * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
145         not big_cons.
146
147 Tue Oct  5 10:53:36 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
148
149         * doc/as.texinfo (Copying): new node, to handle the recent changes
150         in the texinfo/gpl.texinfo file
151
152 Mon Oct  4 17:10:15 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
153
154         * read.c (big_cons): Handle "0" correctly.
155
156         * config/tc-mips.c (md_begin): Set target_big_endian correctly.
157
158 Mon Oct  4 15:37:57 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
159
160         * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
161         have pc-relative fixup.
162         (md_parse_option): Move "-k" case down near "-pic" case.
163
164         * configure.in: Alphabetize list of cpu type alternatives.  Enable
165         OS values of "linux*elf*" and "linux*coff*" to select those
166         formats, with linux emulation.  Don't bother checking for upper-
167         or mixed-case versions of "ose".
168
169 Thu Sep 30 11:05:35 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
170
171         * config/z8k.c (md_pseudo_table): add "unseg".
172
173 Wed Sep 29 16:15:11 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
174
175         * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
176           found while extending the dissassembler.
177
178 Tue Sep 28 12:02:04 1993  Stan Shebs  (shebs@rtl.cygnus.com)
179
180         * configure.in: Split i386 LynxOS out from other coff targets,
181         add a specific Lynx emulation.
182         Add m68k LynxOS target.
183         * config/tc-i386.c: Define specific Lynx target format.
184         * config/tc-m68k.c: Define specific Lynx target format.
185         * config/te-lynx.h: New file.
186
187         * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
188         "coff-{i386,m68k}" if TARGET_FORMAT already defined.
189         (INIT_STAB_SECTION): Define.
190         * config/obj-coffbfd.c: Include <time.h>.
191         (write_object_file): Look for .stab sections and call
192         adjust_stab_section.
193         (adjust_stab_section): New function, fills in the first symbol
194         of a stab section with number of symbols and string table size.
195         (obj_coff_init_stab_section): New function, creates the initial
196         symbol for a stab section.
197
198 Mon Sep 27 15:21:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
199
200         * config/atof-vax.c (md_atof): Return null on success instead of
201         empty string.
202         * config/atof-tahoe.c (md_atof): Ditto.
203         * read.c (float_cons): Expect a null pointer for success, not an
204         empty string.
205
206         * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
207         on success, instead of empty string.  All callers changed.
208
209         * config/tc-vax.c: Use PARAMS in declarations.
210         (vip_op): Use NULL instead of empty string for success in error
211         and warning fields.
212
213 Sun Sep 26 23:45:29 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
214
215         * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
216         in different defined segments.
217
218         * write.c (relax_segment): Localize "aim" variable.  If
219         DIFF_EXPR_OK, don't impose checks on symbol segment types.
220         (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
221         segment, convert to a PC-relative fixup and discard the symbol.
222
223         * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
224         (md_parse_option) [TE_SUN3]: Set it for "-k".
225         (m68k_ip): Generate proper fixup for mode 7.3.
226         * config/tc-m68k.h (DIFF_EXPR_OK): Define.
227
228 Sat Sep 25 05:08:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
229
230         * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
231         earlier in the file.
232         (insop, add_exp): Now defined as functions, for readability.
233         (insop): Now takes two arguments; callers changed.
234
235 Fri Sep 24 12:37:59 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
236
237         * config/tc-m88k.c (get_o6): new function.
238           (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
239           get_vec9, getval, get_pcr, calcop, match_name): make static and
240           prototype.
241           (s_file): remove extraneous forward decl.
242           (md_begin): add const to retval decl.
243           (calcop): cope with instructions without arguments.  Handle 'o'
244           type argument, the o6 field of the prot insn.
245           (md_estimate_size_before_relax): return a dummy value.
246
247         * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
248           in bits 10 through 7.  flt.[dxs]s requires an r register in the
249           second argument.  New instruction lda.x.  New instruction muls
250           (alias for mul).
251
252 Fri Sep 24 13:43:30 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
253
254         * Makefile.in (distclean): Recurse like clean.
255         * doc/Makefile.in (distclean): New target.
256
257         * config/tc-mips.c (md_begin): Set BFD architecture and machine
258         based on MIPS ISA level.
259
260 Thu Sep 23 17:58:58 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
261
262         * as.c (main): "exhausted", not "exhuasted".
263
264         * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
265         * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
266         (write_object_file): Never strip symbols with sy_used_in_reloc
267         set.
268
269         * config/obj-elf.c (obj_elf_section): Rewrote to handle both
270         Solaris and SVR4 style .section pseudo-ops.
271         (obj_elf_ident): Set SEC_READONLY for .comment section.
272         * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
273         generating a reloc, don't apply a fix.
274
275 Thu Sep 23 13:16:58 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
276
277         * config/obj-coffbfd.c (relax_align): Now static.
278
279 Mon Sep 20 19:23:35 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
280
281         * read.c (get_stab_string_offset): Make non-static.  Make
282         arguments const.  Don't align strings to 4 byte boundaries.
283         * read.h: Declare get_stab_string_offset.
284         * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
285         SEC_LOAD for progbits section.
286         (obj_elf_init_stab_section): New function.
287         (adjust_stab_sections): Add casts to avoid warnings.
288         * config/obj-elf.h (INIT_STAB_SECTION): Call
289         obj_elf_init_stab_section.
290         (OBJ_PROCESS_STAB): Removed definition.
291
292 Fri Sep 17 18:12:34 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
293
294         * config/obj-elf.h (S_GET_SIZE): Define.
295         (obj_frob_forward_symbol): Define.
296         * config/tc-i386.c (line_comment_chars): Initialize in all cases.
297
298 Thu Sep 16 14:23:08 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
299
300         * tc.h: Declare tc_gen_reloc differently depending upon
301         RELOC_EXPANSION_POSSIBLE.
302         * config/obj-elf.c (obj_elf_section): Only set flags when first
303         creating the section.
304
305 Wed Sep 15 12:15:53 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
306
307         * config/tc-mips.c (append_insn): Don't swap a trap instruction
308         with a branch.
309
310 Tue Sep 14 13:31:04 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
311
312         * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
313         set previous_section and previous_subsection and then call s_data
314         and s_text, respectively.
315         (obj_pseudo_table): Add data and text.
316         (obj_elf_section): Add SEC_LOAD to default initialization of
317         flags.  Treat .rodata1 like .rodata.  Set SEC_LOAD as well as
318         SEC_ALLOC for "alloc" string.  Don't bother trying to find the
319         section; just use subseg_new.
320
321         * read.c (change_to_section): Removed.  This is now done by
322         subseg_new.
323         (get_stab_string_offset): Rearranged somewhat.  Create the section
324         using subseg_new.  Store the string index in seg_info, rather than
325         in a static variable.  Force the first string to be empty.  Use
326         frag_more rather than FRAG_APPEND_1_CHAR.
327         (s_stab_generic): Rewrote.
328         * subsegs.h (segment_info_type): Added stabu union.
329         * subsegs.c (subseg_new): Initialize stab_string_size to 0.
330         * config/obj-aout.c: Don't include aout/stab_gnu.h.
331         (obj_aout_stab, obj_aout_desc): Removed.
332         (obj_pseudo_table): Removed desc and stabX entries.
333         * config/obj-bout.c: Same changes as config/obj-aout.c.
334         * config/obj-bout.h (S_SET_TYPE): Define.
335         (tc_bout_fix_to_chars): Declare.
336         * config/obj-coff.c (obj_coff_stab): Removed.
337         (obj_pseudo_table): Removed desc and stabX entries.
338         * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
339         * config/obj-coffbfd.c (current_stab_symbol): Removed.
340         * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
341         n_other, n_desc and n_value fields.
342         (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
343         (MAKE_STAB_SYMBOL): Removed.
344         * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
345         Changed arguments and removed parsing code.
346         (obj_pseudo_table): Removed stabX entries.
347         * config/obj-ecoff.h (ecoff_stab): Declare.
348         (OBJ_PROCESS_STAB): Define.
349         * config/obj-elf.c: Don't include aout/stab_gnu.h.
350         (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
351         elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
352         Removed.
353         (obj_pseudo_table): Removed desc, stabX and xstabs entries.
354         (obj_elf_version): Use subseg_new, not bfd_make_section.  Don't
355         set SEC_LOAD for .note section.
356         (adjust_stab_sections): Get frag pointer from seg_info, rather
357         than looking through frags.
358         * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
359         (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
360         Define.
361         * config/obj-vms.c (obj_aout_stab): Removed.
362         (obj_pseudo_table): Removed stabX entries.
363         * config/obj-vms.h (S_SET_TYPE): Define.
364
365         * as.h: Declare listing.
366         * read.c: Don't declare listing.
367         (emit_expr): Cast fix_new_exp argument.
368         (parse_bitfield_cons): Correct printf format.
369         * symbols.c (symbol_new): Add cast to avoid warning.
370         * write.h: Declare text_last_frag and data_last_frag.
371         * config/obj-bout.c (obj_bout_line): Added dummy argument.
372         * config/obj-coffbfd.c: Add some casts to avoid warnings.
373         * config/tc-a29k.c: Likewise.
374         * config/tc-i960.c: Likewise.  Also fully bracket structure
375         initializations, fix printf formats, and remove unused variables.
376
377 Mon Sep 13 16:48:38 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
378
379         * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
380         * struc-symbol.h: Declare verify_symbol_chain and
381         verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
382         * symbols.c (verify_symbol_chain): Removed useless expression.
383         * write.c (headers, the_object_file): Only use if not
384         BFD_ASSEMBLER and not BFD.
385         (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
386         not BFD.
387         (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
388         not OBJ_AOUT).
389         * write.h: Declare relax_segment.
390         * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
391         static.
392         (stack_top): Commented out, since it's not used.
393         Fixed up pseudo-op functions to take an ignored int argument.
394         (size_section): Added default BAD_CASE to switch.
395         Changed bzero calls to memset.
396         * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
397         (s), not on s itself.
398         * config/tc-a29k.c (s_use): Take ignored int argument.  Only
399         define if OBJ_COFF is not defined.
400         * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
401         argument signed again.
402         * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
403         argument.
404         (m68k_ip): Fully bracket initialization of archs.
405         Correct several formats for __LINE__ to be %d rather than %s.
406         (init_table): Fully bracket initialization.
407         Cast values larger than 0x7f assigned to fr_opcode to char.
408
409         * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
410         Wrote non-BFD_ASSEMBLER subseg_new.  Now subseg_new always takes a
411         section name, and subseg_set always takes a segT.  Changed all
412         callers as appropriate.
413         * config/obj-coffbfd.c  (change_to_section): Renamed to
414         obj_coff_add_segment.  Corrected.  Made callers use subseg_new.
415         * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
416         Define.
417
418 Mon Sep 13 13:15:03 1993  Doug Evans  (dje@canuck.cygnus.com)
419
420         * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
421
422 Fri Sep 10 11:22:08 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
423
424         * config/obj-elf.h (S_SET_SIZE): Actually set the size.
425
426         Gcc lint.
427         * Added a number of casts to function calls.
428         * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
429         operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
430         read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
431         ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
432         read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
433         (obj_elf_section), config/tc-i386.c (parse_register),
434         config/tc-sparc.c (isoctal, s_proc): Cast char
435         array indices to unsigned char.
436         * app.c (process_escape): Make static.  Add prototype.  Change
437         argument from char to int.
438         * as.c: Include output-file.h for prototypes.  Comment out unused
439         function got_sig.
440         * Makefile.in (as.o): Depend on output-file.h.
441         * as.h (BAD_CASE): Cast val argument to long, and use %ld.
442         (pseudo_typeS): Add prototype to poc_handler field.
443         (print_version_id): Add prototype.
444         (xmalloc, xrealloc): Change size arguments to unsigned long.
445         (do_scrub_next_char): Add prototypes for function arguments.
446         (had_errors, had_warnings, scrub_from_file): Remove duplicate
447         declarations.
448         * atof-generic.c (atof_generic): Make size variables unsigned.
449         * cond.c (ignore_input): Removed unused local variable ptr.
450         * expr.c (floating_constant, integer_constant): Make static.  Add
451         prototypes.
452         * flonum-copy.c (flonum_copy): Make size variables unsigned.
453         * frags.h: Add prototype for frag_init.
454         * hash.h, hash.c: Change hash values from char * to PTR, make hash
455         strings const, make returned error strings const char *.  Added
456         prototypes for functions.
457         * input-file.h, input-file.c (input_file_buffer_size): Return
458         unsigned int.
459         * input-scrub.c (buffer_length): Make unsigned.
460         (input_scrub_push, input_scrub_pop): Make static.
461         * listing.c (list_symbol_table): Cast sprintf argument to unsigned
462         long and use %lx.  Print name of segment rather than address of
463         structure.
464         (listing_list, listing_title): Change argument to int.
465         (listing_eject, listing_flags, listing_psize): Add int argument.
466         * listing.h: Corresponding declaration changes.
467         * obj.h (obj_emit_symbols): Rename prototype argument to avoid
468         shadowing.
469         * read.h: Change get_absolute_expression prototype to return
470         offsetT.  Add prototype for next_char_of_string.  Various
471         prototype changes.
472         * read.c: Remove prototype for next_char_of_string.
473         (pobegin): Make errtxt const.  Make new_length, tmp_len and num
474         unsigned.
475         (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
476         s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
477         Change all callers.
478         (s_comm): Change temp from valueT to offsetT.  Cast to long when
479         printing and use %ld (only for error messages anyhow).
480         (s_long, s_int): Remove unused functions.
481         (cons): Change argument to int.
482         (emit_expr): Use %lx when printing longs.
483         (get_absolute_expression): Return offsetT, not long.
484         (get_stab_string_offset): Comment out unless
485         SEPARATE_STAB_SECTIONS.
486         (s_stab_generic): Remove unused offset.  Define seg_is_new only
487         if SEPARATE_STAB_SECTIONS.  Use toP only in local block.
488         * struc-symbol.h (verify_symbol_chain_2): Add prototype.
489         * symbols.c: Remove nested comment.
490         (symbol_new): Rename value to valu.
491         (colon): Use %ld and cast to long in error message.
492         * symbols.h: Remove duplicate verify_symbol_chain declaration.
493         * tc.h: Remove unused md_emit_relocations declaration.
494         (tc_gen_reloc): Add declaration.
495         * write.c (cvt_frag_to_fill): Change first argument name depending
496         on BFD_ASSEMBLER.
497         (write_relocs): Remove unused offset, frags.  Remove tc_gen_reloc
498         declarations.  Make n unsigned.
499         (write_contents): Remove unused i, n, relocs, fixp.  Rename frags
500         to f to avoid shadowing.
501         (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
502         WORKING_DOT_WORD.  Remove unused keep.  Only declare punt and
503         punt_it if they will be used.  Make i and n unsigned.
504         (fixup_segment): Cast to long and use %ld in error message.
505         * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
506         * config/obj-aout.h: Remove nested comment.  Add prototype for
507         obj_aout_frob_symbol.
508         (obj_aout_line, obj_aout_desc): Add int argument.
509         * config/obj-ecoff.c: Changed build routines to use an unsigned
510         offset.
511         (add_string): Make len unsigned long.
512         (obj_ecoff_stab): Use %lu in error message.
513         * config/obj-elf.c (obj_elf_common): Comment out unused label
514         allocate_bss.
515         (obj_elf_frob_symbol): Return 0 (currently broken).
516         (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
517         obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
518         obj_elf_line, obj_elf_previous): Add int argument.
519         (obj_elf_write_symbol_p): Make static.
520         * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
521         * config/tc-hppa.h: Remove declarations of functions declared in
522         read.h.
523         * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
524         (s_bss): Add int argument.
525         (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
526         (dummy): Remove unused function.
527         (md_assemble): Rename local o to op to avoid shadowing.
528         (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
529         * config/tc-m68k.c (s_data1, s_data2): Add int argument.
530         * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
531         %ld in error messages.
532         * config/tc-sparc.c: Remove duplicate declarations.
533         (getExpression): Rewrite condition to avoid empty conditional
534         body.
535         (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
536         argument.
537
538 Thu Sep  9 17:10:00 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
539
540         Changes from Jeff Law:
541
542         * config/tc-hppa.c (md_assemble): Fix typo.
543         (pa_ip): Delete unused variables and labels.  Do not check for
544         unsigned values being < 0, it can't happen.
545         (is_same_frag): Return a value in recursive call case.
546         (pa_callinfo): Delete unused variables and labels.
547         (pa_comm): Likewise.
548         (pa_copyright): Likewise.
549         (pa_export): Likewise.
550         (pa_import): Likewise.
551         (pa_param): Likewise.
552         (pa_space): Likewise.
553         (pa_subspace): Likewise.
554
555 Thu Sep  9 15:05:34 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
556
557         * read.c (get_stab_string_offset, s_stab_generic): If
558         BFD_ASSEMBLER, call subseg_set rather than subseg_new.
559
560 Wed Sep  8 15:09:17 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
561
562         * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
563         default flag values.
564
565 Tue Sep  7 10:22:52 1993  Stan Shebs  (shebs@rtl.cygnus.com)
566
567         * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
568
569         * read.c: (s_stab, s_xstab, s_desc): New functions to parse
570         various stab-related directives.
571         * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
572         * write.c: (merge_data_into_text): Fix ifdef tangle.
573         * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
574         for stab reader to use.
575         * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
576         stab reader, macros to access.
577
578 Fri Sep  3 16:44:03 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
579
580         * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
581
582         * config/tc-hppa.h (struct default_subspace_dict, struct
583         default_space_dict): Field "sort" is now unsigned char.
584
585         * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
586         columns for easier reading.
587         (bcmp, index): Deleted USG-specific definitions.  Should be dealt
588         with in ho-*.h, or in libiberty.  Changed mention of index to
589         strchr.
590         (label_symbolP, label_symbol_defined, callinfo_found,
591         within_entry_exit, exit_processing_complete, within_procedure,
592         pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
593         label_symbols_rootP, pa_get_label, pa_label_is_defined,
594         pa_undefine_label): Now static.
595         (movers): Now const, in addition to pointing to const data.
596         * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
597         pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
598         Delete declarations.
599
600         Merged more changes from Jeff Law and Pete Hoogenboom:
601
602         * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
603         entries for .stab and .stabstr.
604
605         * config/obj-elf.c: (elf_stab_symbol_string):  Set the
606         SEC_LOAD attribute for the .stabstr section.
607         (obj_elf_stab_generic):  Set the SEC_LOAD attribute for the
608         .stab section.
609         (obj_elf_stab_generic):  Change '#if 1' to '#if 0'.
610         (obj_elf_stab_generic):  Incorrect byte count on call to
611         md_number_to_chars function.
612
613         * config/tc-hppa.c (hppa_tc_symbol): Static functions need
614         argument relocation bits too.
615
616         * config/tc-hppa.c (pa_stringer): Correctly handle escaping
617         characters which should appear unaltered in the output string (for
618         example an escaped double-quote).
619
620         * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
621         initialize name.
622         (pa_parse_neg_cmpsub_cmpltr): Likewise.
623         (pa_parse_nonneg_add_cmpltr): Likewise.
624         (pa_parse_neg_add_cmpltr): Likewise.
625
626         * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
627         for now.
628         (cons_fix_new_hppa): Likewise.
629         * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
630         prototype.
631
632         * config/tc-hppa.c: Include libhppa.h.
633
634         * config/tc-hppa.h: Delete extern declarations of functions
635         found in libhppa.h.
636
637         * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
638         OBJ_ELF conditionals.
639         * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
640         on the PA.
641
642 Thu Sep  2 10:43:57 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
643
644         * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
645         (macro): Use "z,s,t" for div instructions to match corresponding
646         change in opcode table.
647         (mips_ip): Added 'z'--must be zero register.
648
649 Wed Sep  1 15:56:42 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
650
651         * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
652         tc_gen_reloc correctly.
653
654         * configure.in: Use "case" instead of "if" when possible.  Rewrote
655         Makefile editing to reduce work done.  Treat "hppa*" as "hppa".
656
657 Wed Sep  1 12:19:07 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
658
659         * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
660           section type of data.  'd' seems to be used for m88k.
661
662 Wed Aug 25 22:33:22 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
663
664         * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
665         s_mips_space): Set insn_label to NULL to avoid changing it at the
666         next .align statement.
667         (append_insn): Don't swap jal with instruction that sets the
668         register that jal sets.
669
670 Wed Aug 25 16:15:57 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
671
672         * configure.in: recognize m88110.
673
674 Wed Aug 25 13:37:46 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
675
676         Merged changes from Pete Hoogenboom and Jeff Law at Utah:
677         * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
678         not be on for .hppa_unwind.
679         (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
680         (pa_param): New function to handle .PARAM directives.
681         (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
682         functions.  Handle '|' for movb; allow movb,n.
683         (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
684         version.  Handle cases where no completer exists for
685         comb,n or addb,n.
686         (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
687         completer exists for comb,n or addb,n.  Make logic
688         mirror that of pa_parse_nonneg_cmpsub_cmpltr.
689         (pa_parse_nonneg_add_cmpltr): Likewise.
690         (pa_parse_neg_add_cmpltr): Likewise.
691         * tc-hppa.h (pa_param): Declare.
692
693 Tue Aug 24 15:41:35 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
694
695         * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
696         Added forward declaration.
697
698         Merged changes from Pete Hoogenboom and Jeff Law at Utah:
699
700         * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
701         call to elf_tc_make_sections.
702         (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
703         attribute.
704
705         * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
706         handle symbol extension sections.
707
708         * config/tc-hppa.c (pa_build_symextn_section): New function to
709         create a symbol extension section.
710         (pa_export_args): Make call to pa_build_symextn_section.
711         (hppa_tc_symbol, hppa_tc_make_sections,
712         hppa_tc_make_symextn_section): New functions.
713         * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
714         macros.
715
716         * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
717         BFD_ASSEMBLER branch as well.
718
719         * config/tc-hppa.h: If ELF is the target object format, define
720         some ELF- and hppa-specific types and constants.
721
722         * config/tc-hppa.c (getExpression): Fix a typo.
723
724         * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
725         if a `=' is part of an instruction.
726         (read_a_source_file): Handle case where end-of-line markers are
727         also used within instructions.
728         * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
729
730         * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
731         out-of-range branches/'calls using "bl" or calls which may need
732         argument relocation stubs.  Do not need/keep relocations for
733         conditional branches.
734         (elf_hppa_final_processing): Fix calculation of function size.
735
736         * config/obj-elf.c (obj_elf_version): Mark .note section as
737         READONLY.
738
739         * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
740         address of exp, to expression.
741         (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
742         (md_apply_fix_1): Delete unwanted comments.
743         (process_exit): Symbols marking the end of a function are always
744         BSF_LOCAL.
745
746         * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
747         (pa_space): Declare and initialize gdb_section.
748
749         * config/obj-elf.c (elf_frob_file): Change
750         elf_tc_final_processing_hook to elf_tc_final_processing.
751
752         * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
753         argument type declarations.
754         (getExpression): Fix typo.
755         (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
756         (elf_hppa_final_processing): Likewise.  Name changed from
757         elf_hppa_final_processing_hook.
758         (start_symbol_root, start_symbol_last): Deleted.
759
760         * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
761
762         * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
763         avoid changing include ordering.
764
765         * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
766
767 Mon Aug 23 12:47:58 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
768
769         * config/tc-mips.c (set_at): Added unsignedp argument.  Use
770         load_register.
771         (set_at_unsigned): Removed; changed callers to use set_at.
772         (load_register): Removed unused ip argument.  Changed callers.
773         (append_insn): Don't swap branch and branch likely.
774         (macro_build): Handle 'u'.
775         (load_register): Handle 64 bit constants.
776         (macro): Added M_DABS, removed M_ABSU.  Numerous changes to
777         support 64 bit constants.
778         (mips_ip): Use hex constants in range checks for clarity.
779         (md_number_to_chars): Support 8 byte values.
780
781 Fri Aug 20 16:50:59 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
782
783         * config/tc-m88k.h: updated copyrights.
784           (TC_CONS_RELOC): declare to be RELOC_32.
785
786 Fri Aug 20 11:16:44 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
787
788         * config/tc-mips.c (mips_isa): New static variable.
789         (md_begin): Initialize mips_isa based on TARGET_CPU.  Don't sanity
790         check macros.  Set text alignment and GP size here.
791         (md_assemble): Don't set text alignment and GP size here.
792         (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
793         Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S.  Add
794         a NOP after a branch likely.
795         (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
796         >= 2.
797         (macro): Support r6000 and r4000 macros.
798         (mips_ip): Check insn ISA level against mips_isa before using it.
799         Added 'x' case for ignored register.
800         (md_parse_option): Handle -mipsN and -mcpu=XX.
801
802 Fri Aug 20 01:26:52 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
803
804         * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
805
806 Thu Aug 19 12:15:18 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
807
808         * config/tc-sparc.c (s_local): Function moved and renamed...
809         * config/obj-elf.c (obj_elf_local): ...to here.
810         * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
811         (obj_pseudo_table): Move handling of ".local".
812
813         * tc.h (md_parse_option): Don't declare if defined as a macro.
814
815         * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
816         BFD_RELOC_NONE.
817         (md_parse_option): New macro, converted from function.
818         * config/tc-i386.c (md_parse_option): Function deleted.
819         (comment_chars) [OBJ_ELF]: Include "/".
820         (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
821         (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
822         warning.
823         (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
824         Call reloc for fix_new type, or use correct enumerator, instead of
825         always using NO_RELOC.
826         (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
827         tests for valid section.
828         (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
829         address.
830         (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
831         symbol, compensate for location of reloc.
832         (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
833         to return zero.
834
835 Wed Aug 18 16:51:29 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
836
837         * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
838         (obj_elf_weak): New function.
839         (obj_pseudo_table): Handle ".weak".
840         (obj_elf_section): If section directive includes a string, ignore
841         it for now.  Accept "progbits" flag.
842         (obj_elf_type): Accept `@' before flag name.
843
844         * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
845         condition.
846         (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
847         than checking for bfd_com_section directly.
848         (fixup_segment): Simplify range check.
849         (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
850         test.
851
852         * symbols.h (S_SET_WEAK): Declare.
853         * symbols.c (S_SET_WEAK): New function.
854         (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
855         it's not a separate flag any more.  Clear BSF_WEAK.
856
857         * read.c (potable): Treat "string" like "asciz".
858
859 Wed Aug 18 15:30:29 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
860
861         * config/tc-mips.c (append_insn): Don't swap branch instructions
862         if .set nobopt or .set volatile.
863         (gp_reference): .lit8 and .lit4 are accessed via the GP register.
864         (macro): Added cases M_LI_S, M_LI_SS.  Fixed M_LI_D and M_LI_DD.
865         (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
866         * config/obj-ecoff.c: Renamed some variables to avoid shadow
867         warnings.
868
869 Mon Aug 16 14:16:02 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
870
871         * config/obj-coff.h (S_IS_COMMON): add missing backslash
872
873         * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
874
875 Thu Aug 12 11:47:58 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
876
877         * config/tc-mips.c (mips_ip): Suggested by
878         davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
879         names for 'E' and 'G' argument types (coprocessor registers) and
880         don't warn if $1 is used on the coprocessor.
881         (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
882
883 Mon Aug  9 12:09:14 1993  Doug Evans  (dje@canuck.cygnus.com)
884
885         * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
886         * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
887         BFD_RELOC_16.
888         * config/tc-sparc.h (WORKING_DOT_WORD): Define.
889
890 Mon Aug  9 13:36:22 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
891
892         * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
893         defined or BFD is not.
894         (relax_and_size_all_segments): Declare local variable fragP.
895
896 Fri Aug  6 15:22:53 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
897
898         * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
899         bytes with real values, not zeros.
900
901 Fri Aug  6 10:57:59 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
902
903         * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
904         targets, using ecoff and mips-big.
905
906         * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
907         Johnson): Added case for 'C' for coprocessor instruction codes.
908
909 Thu Aug  5 13:08:56 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
910
911         * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
912
913         * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
914
915         * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
916         for verifying symbol chain.
917         (merge_data_into_text, relax_and_size_all_segments): New
918         functions, split out from write_object_file.
919
920 Tue Aug  3 15:43:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
921
922         * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
923         debug section is new, allocate an extra 12 bytes at its start.  If
924         ".stabs" type is N_SO, fill in filename symbol field of that first
925         entry.  Return early if "goof", to simplify later code slightly.
926         (adjust_stab_sections): New function.
927         (elf_frob_file): Apply adjust_stab_sections to each section.
928
929         * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
930         static.
931         * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
932         * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
933         and "popsection", and call cons for "uaword" and "uahalf".
934
935         * config/obj-elf.c (obj_elf_version): Use English in error
936         messages.
937
938 Tue Aug  3 11:29:06 1993  Ian Lance Taylor  (ian@cygnus.com)
939
940         * config/obj-ecoff.c: Updated for BFD ECOFF changes.  Now gets the
941         swapping routines and external structure sizes via the
942         ecoff_backend information.  No longer includes coff/mips.h.
943
944 Mon Aug  2 17:35:48 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
945
946         * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
947         and in hash_ptr->string.
948
949         * app.c (do_scrub_next_char): Reset state to 0 after .appline if
950         file name is not seen.
951
952 Thu Jul 29 22:21:28 1993  Ian Lance Taylor  (ian@cygnus.com)
953
954         * write.c: Don't use short int in a prototype.
955
956         * expr.c (operand): Make return value simply depend on contents of
957         returned expression.
958
959 Thu Jul 29 18:38:37 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
960
961         * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
962
963 Thu Jul 29 18:38:37 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
964
965         * config/ho-sunos.h: remove some old function decls that conflict
966         w/ ANSI, and which weren't needed anyway
967
968 Wed Jul 28 16:34:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
969
970         * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
971         and disabled since it breaks Ian's new symbol-value code.
972
973         * expr.c (integer_constant): Accept more digits if BFD64.
974
975 Wed Jul 28 11:30:05 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
976
977         * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
978         expect a bignum, turn it into a bignum.  Output extra zeroes
979         before a short bignum, rather than after.
980
981 Tue Jul 27 15:54:27 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
982
983         * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
984         on DEBUG_SYMS, not DEBUG.
985         (symbol_remove): Likewise.
986         (symbol_insert): Likewise.
987
988 Tue Jul 27 08:45:05 1993  Ian Lance Taylor  (ian@cygnus.com)
989
990         * config/tc-mips.c (mips_optimize): New static variable.
991         (append_insn): If mips_optimize == 0, always insert NOP
992         instructions.  If mips_optimize < 2, don't swap branches.
993         (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
994
995 Mon Jul 26 18:02:43 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
996
997         * Makefile.in (clean): if testsuite does not exist, then skip it.
998
999 Fri Jul 23 14:13:25 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1000
1001         * config/tc-mips.c (prev_insn_unreordered,
1002         prev_prev_insn_unreordered): New static variables.
1003         (append_insn): Don't swap branch instruction if
1004         prev_prev_insn_unreordered (see comment).
1005         (mips_no_prev_insn): Clear the unreordered variables.
1006         (s_mipsset): When turning on reordering, set the unreordered
1007         variables.
1008
1009 Fri Jul 23 13:09:44 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1010
1011         * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
1012         are also magic, and have special default flag settings.
1013         (obj_elf_frob_symbol): Since the return value from this function
1014         isn't used, don't bother calling obj_elf_write_symbol_p, since it
1015         doesn't accomplish anything else.
1016
1017         * config/tc-sparc.c (md_section_align): Round up section size only
1018         for a.out format.
1019
1020         * symbols.c: Don't define DEBUG by default.
1021
1022 Thu Jul 22 12:09:41 1993  Ian Lance Taylor  (ian@cygnus.com)
1023
1024         * write.c (fix_new_exp): Handle a O_uminus expression.
1025
1026         * expr.c (expr): Don't let absolute_section override
1027         undefined_section for the return value.
1028
1029         * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
1030         pseudo-op with a poc_handler field of NULL, ignore it and treat it
1031         as an instruction instead.
1032         * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
1033         poc_handler field.
1034
1035         * config/tc-h8500.c (md_begin): Use a local variable when
1036         initializing md_relax_table to avoid warnings about modifying a
1037         supposedly const data structure.
1038
1039 Thu Jul 22 10:58:51 1993  Brendan Kehoe  (brendan@lisa.cygnus.com)
1040
1041         * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
1042         is defined.
1043
1044 Wed Jul 21 17:32:02 1993  Fred Fish  (fnf@deneb.cygnus.com)
1045
1046         * configure.in (case ${host}):  Map *-*-sysv4* to gas_host=sysv.
1047         * configure.in (case ${generic_target}):  Add i[34]86-*-sysv4*
1048         case to set obj_format=elf.  Must go before i386-*-sysv* case that
1049         sets obj_format=coffbsd.  Add *-*-sysv4* to *-*-elf and
1050         *-*-solaris case, and move to before *-sysv* case that wants to
1051         set obj_format to coff.
1052         * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
1053         'exp->X_op'.
1054         * config/tc-i386.c (md_apply_fix):  Fix valp to be 'valueT *' for
1055         BFD_ASSEMBLER case.
1056
1057 Wed Jul 21 12:47:51 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1058
1059         * config/obj-aout.c: Include aout/aout64.h.
1060         (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
1061         symbol, so that BFD doesn't tamper with the type.
1062
1063         * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
1064         up opcodes as pseudo-ops even if they don't start with '.'.
1065         * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
1066         * config/tc-m88k.c (md_assemble): Removed special pseudo-op
1067         handling.
1068         (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
1069         Output the low 16 bits for RELOC_HI16, not the high 16 bits.
1070         * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
1071         r_offset field of the reloc to the fixup offset.
1072         (fixup_segments): If TC_M88K, don't warn about fixup overflows.
1073         * doc/as.texinfo: Minor updates.
1074
1075 Tue Jul 20 19:28:56 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1076
1077         * Extensive changes to permit symbols to contain any expression
1078         type and to delay the computation of the expression until the
1079         value is actually needed.  This permits setting symbols to values
1080         calculated based on object code size.  Expressions were changed to
1081         no longer be in a section, to stop the overloading of segment and
1082         expression type that previously occurred.
1083
1084         * as.c (big_section, pass1_section, diff_section, absent_section):
1085         Removed.
1086         (expr_section): Added (used for dummy symbols which hold
1087         intermediate expression values).
1088         (perform_an_assembly_pass): Create expr_section, do not create the
1089         sections now removed.
1090         * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
1091         SEG_DIFFERENCE.  Added SEG_EXPR.
1092         (SEG_NORMAL): Corresponding changes.
1093         * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
1094         * write.c (write_object_file): Ditto.
1095         * config/obj-aout.c (seg_N_TYPE): Ditto.
1096         * config/obj-bout.c (seg_N_TYPE): Ditto.
1097         * config/obj-coff.c (seg_N_TYPE): Ditto.
1098         * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
1099         * config/obj-vms.c (seg_N_TYPE): Ditto.
1100
1101         * expr.h (operatorT): Moved in from expr.c, added some values.
1102         (expressionS): Added X_op field, removed X_seg field; renamed
1103         X_subtract_symbol to X_op_symbol.
1104         * expr.c: Extensive changes to assign expression types rather than
1105         sections and to simplify the parsing.
1106         * write.c (fix_new_internal): New static function.
1107         (fix_new): Removed sub_symbol argument.
1108         (fix_new_exp): New function, takes expression argument.
1109         * write.h: Prototype changes for fix_new and fix_new_exp.
1110         * cond.c (s_if): Changed accordingly.
1111         * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
1112         parse_repeat_cons, get_segmented_expression,
1113         get_known_segmented_expression, get_absolute_expression): Ditto.
1114         * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
1115         Ditto.
1116         * write.c (write_object_file): Ditto.
1117         * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
1118         * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
1119         obj_coff_endef, yank_symbols): Ditto.
1120         * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
1121         * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
1122         print_insn, md_operand): Ditto.
1123         * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
1124         do_a_fix_imm, build_bytes): Ditto.
1125         * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
1126         get_specific, check, insert, md_convert_frag): Ditto.
1127         * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
1128         md_assemble, pa_ip, getExpression, getAbsoluteExpression,
1129         evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
1130         process_exit): Ditto.
1131         * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
1132         is_complex): Ditto.
1133         * config/tc-i386.c (pe, md_assemble, i386_operand,
1134         md_estimate_size_before_relax, md_create_long_jump): Ditto.
1135         * config/tc-i860.c (md_assemble, getExpression, print_insn):
1136         Ditto.
1137         * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
1138         get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
1139         i960_handle_align): Ditto.
1140         * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
1141         subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
1142         md_estimate_size_before_relax, md_create_long_jump, get_num):
1143         Ditto.
1144         * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
1145         md_create_short_jump, md_create_long_jump): Ditto.
1146         * config/tc-mips.c (md_assemble, append_insn, gp_reference,
1147         macro_build, macro, my_getExpression): Ditto.  Also removed
1148         get_optional_absolute_expression; just use get_absolute_expression
1149         instead.
1150         * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
1151         fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
1152         * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
1153         * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
1154         Ditto.
1155         * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
1156         print_insn): Ditto.
1157         * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
1158         tip_op, md_assemble): Ditto.
1159         * config/tc-vax.c (seg_of_operand, md_assemble,
1160         md_estimate_size_before_relax, md_create_long_jump): Ditto.
1161         * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
1162
1163 Tue Jul 20 12:17:16 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
1164
1165         * configure.in: i386-lynx is the same as i386-coff
1166
1167 Mon Jul 19 15:21:20 1993  Ken Raeburn  (raeburn@rtl.cygnus.com)
1168
1169         * config/obj-elf.c (obj_elf_previous): New function.
1170         (previous_section, previous_subsection): New vars.
1171         (obj_elf_section): Save current place in case DWARF code wants us
1172         to pop back to it.  Handle unquoted section name as well as quoted
1173         section name.  Don't crash on invalid strings.
1174         (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
1175         "4byte".
1176
1177         * config/obj-elf.h: Don't include struc-symbol.h.
1178         (obj_elf_frob_symbol): Declare arg as struct symbol *.
1179
1180         * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
1181         "L" or "_.L_".
1182
1183         * write.c (write_relocs): New function, split off from
1184         write_contents.  Use memset instead of bzero.
1185         (write_object_file): Apply write_relocs to each section before
1186         applying write_contents.
1187
1188         * read.c (read_begin): Call obstack_begin with values closer to 1K
1189         multiples.
1190         (read_a_source_file, big_cons, float_cons): Use memcpy instead of
1191         bcopy.
1192
1193 Mon Jul 19 14:30:00 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1194
1195         * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
1196         calculating opP->isiz; this permits the expression size to be
1197         determined as well, later on.
1198
1199         * expr.c (clean_up_expression): Don't cancel the subtraction of
1200         undefined symbols.
1201
1202         * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
1203         switch to text section rather than data section.
1204
1205 Mon Jul 19 12:35:39 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1206
1207         * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
1208         expression (to take the pc-rel instruction itself into account)
1209         before using the expression, instead of after.
1210
1211 Fri Jul 16 08:56:04 1993  Ian Lance Taylor  (ian@cygnus.com)
1212
1213         * read.c (float_cons): Simplified parsing logic.  If
1214         REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
1215
1216         * symbols.c (colon): Rather than a special case for TC_HPPA,
1217         use new macro tc_frob_label.
1218         * config/tc-hppa.h (tc_frob_label): Define.
1219
1220         * config/tc-mips.c: Many changes to support simple assembler
1221         optimization.
1222         (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
1223         prev_insn_valid, prev_insn_frag, prev_insn_where,
1224         prev_insn_fixp, prev_insn_is_delay_slot): New static
1225         variables.
1226         (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
1227         mips_align, s_stringer, s_mips_space): New static functions.
1228         (mips_define_label): New global function.
1229         (md_pseudo_table): For "ascii", "asciz", "asciiz", call
1230         s_stringer.  Changed argument to float_cons from 0 or 1 to 'f'
1231         or 'd'.  For "space" call s_mips_space.
1232         (md_begin): Call mips_no_prev_insn.
1233         (append_insn): Only insert necessary NOP instructions.
1234         (macro): Call mips_emit_delays before setting mips_noreorder.
1235         Increment and decrement mips_noreorder rather than using
1236         save_reorder_condition.  Don't bother to use noreorder in
1237         M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
1238         (md_atof): Handle floating point numbers correctly for both
1239         big and little endian targets.
1240         (s_align, s_cons): Call mips_align rather than frag_align.
1241         (s_change_seg, s_cons): Call mips_emit_delays.
1242         (s_float_cons): Let float_cons do the work.
1243         (s_mipsset): Call mips_emit_delays when setting noreorder.
1244         * config/tc-mips.h (tc_frob_label): Define to be
1245         mips_define_label.
1246
1247         * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
1248         ecoff_frob_files): Consistently use S_GET_VALUE rather than
1249         bfd_asymbol_value.  Warn if taking difference of symbols in
1250         different segments.
1251
1252 Thu Jul 15 11:51:03 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1253
1254         * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
1255         with a warning.
1256
1257         * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
1258         by md_pcrel_from if we are relocating against a symbol (we still
1259         need md_pcrel_from for a PC relative relocation within the same
1260         file).
1261         * config/tc-m88k.c (md_pcrel_from): Corrected return value.
1262         (omagic): Removed unused variable.
1263
1264         * Preliminary support for m88k-coff.
1265         * configure.in (m88k-*-coff*): New target.  Use coffbfd and
1266         m88kcoff.
1267         * config/m88kcoff.mt: New file.
1268         * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
1269         (pseudo_set): Handle difference of symbols in different fragments
1270         by saving the entire expression as the value of the symbol.
1271         * symbols.c (resolve_symbol_value): Resolve difference
1272         expressions.
1273         * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
1274         "sdef" as a synonym for "def".
1275         * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
1276         TARGET_FORMAT.
1277         (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
1278         * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
1279         m88k port up to date, and to add COFF support.
1280
1281 Wed Jul 14 15:09:32 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1282
1283         * Removed sy_forward and replaced it with an undefined expression
1284         as the value of a symbol.
1285         * struc-symbol.h (struct symbol): Removed sy_forward field.  Added
1286         sy_resolved and sy_resolving single bit fields.
1287         * symbols.c (symbol_new): Don't initialize sy_forward field.
1288         (resolve_symbol_value): New function to adjust symbol value by
1289         fragment address, using recursion to resolve forward symbols.
1290         * symbols.h: Added prototype for new function.
1291         * read.c (pseudo_set): Set symbolP->sy_value to an undefined
1292         expression rather than setting symbolP->sy_forward.
1293         * write.c (write_object_file): Use resolve_symbol_value on
1294         symbols, keeping the common case (the old behaviour) inline.
1295         * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
1296         handling (subsumed by write.c change).
1297         * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
1298         sy_value rather than sy_forward.
1299         * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
1300         expression segment rather than sy_forward.
1301         (yank_symbols): Use resolve_symbol_value.
1302         (crawl_symbols): Removed extra pass over symbols.
1303         * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
1304         config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
1305         symbols which handled sy_forward; use resolve_symbol_value
1306         instead.
1307         * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
1308         Define.
1309         * config/obj-elf.c (obj_elf_stab_generic): Check expression
1310         segment rather than sy_forward.
1311         * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
1312         sy_forward; do initialize sy_resolved and sy_resolving.
1313         * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
1314
1315         * Changes to keep a full expression as the value of a symbol, not
1316         just a longword:
1317         * struc-symbol.h: New field sy_value.
1318         * as.h: Include expr.h before struc-symbol.h.
1319         * expr.h: Use struct symbol rather than symbolS.
1320         * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
1321         of sy_value field; compile unconditionally, not just if
1322         BFD_ASSEMBLER.
1323         * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
1324         * write.c (write_object_file): Set BFD symbol value to gas symbol
1325         value.
1326         * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
1327         config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
1328         (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
1329         * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
1330         * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
1331         S_GET_VALUE rather than ost_entry.n_value.
1332         * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
1333         (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
1334         config/obj-coffbfd.c (symbol_to_chars): Get value to write out
1335         using S_GET_VALUE--don't assume it is already set.
1336         * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
1337         symbol value.
1338         * config/obj-vms.c (various): Don't assign directly to
1339         S_GET_VALUE; use S_SET_VALUE instead.
1340
1341 Wed Jul 14 09:35:23 1993  Doug Evans  (dje@canuck.cygnus.com)
1342
1343         * configure.in: Recognize h8300h.
1344
1345 Tue Jul 13 12:09:44 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1346
1347         * config/tc-h8500.c (line_comment_chars): Add hash.
1348         (parse_exp, skip_colonthing, build_bytes): Add support for
1349         R_H8500_HIGH16 relocation type.
1350
1351 Mon Jul 12 11:15:34 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
1352
1353         * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
1354         attribute name.  Handle `execinstr' attribute.
1355
1356 Mon Jul 12 07:22:28 1993  Ian Lance Taylor  (ian@cygnus.com)
1357
1358         * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
1359         there is another alternative for the instruction.
1360
1361 Fri Jul  9 17:31:34 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
1362
1363         * doc/as.texinfo: updates for H8/300H
1364
1365 Thu Jul  8 14:41:43 1993  Mark Eichin  (eichin@cygnus.com)
1366
1367         * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
1368         md_number_to_chars, md_section_align): Adjusted to use valueT,
1369         addressT, to match tc.h.
1370
1371 Thu Jul  8 14:15:05 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1372
1373         * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
1374         independent of format.
1375
1376 Thu Jul  8 07:25:25 1993  Doug Evans  (dje@canuck.cygnus.com)
1377
1378         * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
1379
1380 Wed Jul  7 18:11:07 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
1381
1382         * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
1383         build; also recognize h8300-*-coff
1384
1385 Wed Jul  7 10:21:24 1993  Ian Lance Taylor  (ian@cygnus.com)
1386
1387         * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
1388         core just because somebody uses a label before it is defined.
1389
1390         * config/mips-opcode.h: Moved to opcode/mips.h.
1391         * config/tc-mips.c: Include opcode/mips.h rather than
1392         mips-opcode.h.
1393         (append_insn): An extra NOP is only needed after instructions
1394         which set HI or LO, not after instructions which read it.
1395         (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
1396         (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
1397         * config/tc-mips.h (struct mips_opcode): Don't define.
1398         * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
1399         Set to $(srcdir)/../include/opcode/mips.h.
1400
1401         Get the MIPS assembler up to speed with other gas changes:
1402
1403         * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
1404         Removed; don't change the symbol value.
1405         (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
1406         bfd_asymbol_value rather than S_GET_VALUE to include section
1407         vma in symbol value.
1408         (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
1409         doesn't output them.  Set the vma of sections.
1410         * config/obj-ecoff.h: Don't define obj_frob_symbol.
1411         * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
1412         longer necessary.
1413         (various): use valueT rather than long.
1414
1415 Wed Jul  7 08:33:30 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1416
1417         * as.h (valueT): Typedef moved here.
1418         * struc-symbol.h (valueT): ...from here.
1419         * write.c (write_object_file): Locals from_addr, to_addr,
1420         table_addr are now addressT.  Supply prototype for bfd_alloc for
1421         now.
1422         (fixup_segment): Local add_number is now valueT.  Correct some
1423         range-checking bugs.
1424         (relax_align): Type `int' should be sufficient for the exponent.
1425         (fix_new): Argument offset is type offsetT.  Locals size and
1426         newsize are type valueT.
1427         * write.h (struct fix): Fields fx_offset and fx_addnumber are now
1428         type valueT.
1429         (fix_new): Fix prototype.
1430         * symbols.c (symbol_new): Symbol value is type valueT.
1431         (S_SET_VALUE, S_GET_VALUE): Likewise.
1432         (S_IS_*): Specify int return type explicitly.
1433         * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
1434         prototypes.
1435         * read.c (s_comm): Values read are type valueT.
1436         * expr.h (expressionS): Field X_add_number is an offsetT.
1437         * tc.h (md_create_long_jump, md_create_short_jump,
1438         md_section_align): Addresses are now type addressT.
1439         (md_number_to_chars, md_apply_fix): Pass value as valueT.
1440         * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
1441         md_number_to_chars, md_section_align): Adjusted.
1442         * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
1443         gcc shut up.
1444         (md_create_short_jump, md_create_long_jump, md_number_to_chars,
1445         md_section_align): Adjusted.
1446
1447         * config/tc-sparc.c (s_reserve): Permit use for other than a.out
1448         format.
1449         (s_common): Handle Solaris-2 version.
1450
1451         * config/ho-generic.h (free): Returns void if __STDC__.
1452
1453         * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
1454         elf_file_symbol): Declare.
1455
1456         * expr.c (floating_constant, integer_constant): Now return void.
1457
1458 Thu Jul  1 12:13:43 1993  Ian Lance Taylor  (ian@cygnus.com)
1459
1460         * configure.in: Match on sparc*-fujitsu-none rather than
1461         sparclite*-fujitsu-none.
1462
1463 Wed Jun 30 11:12:02 1993  Ian Lance Taylor  (ian@cygnus.com)
1464
1465         * read.c (cons): Conditionalize parsing of expression.  Move
1466         putting value into object file into separate function.  Separate
1467         out MRI and WANT_BITFIELDS cases into separate functions.
1468         (emit_expr): New function to write data into object file.
1469         Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
1470         processor types.
1471         (parse_bitfield_cons): New function to parse bitfield expressions
1472         as used by i960 assemblers.  Only compiled if
1473         BITFIELD_CONS_EXPRESSIONS is defined.
1474         (parse_mri_cons): New function to parse MRI style strings.  Only
1475         compiled if MRI is defined.
1476         (parse_repeat_cons): New function to parse repeat counts.  Only
1477         compiled if REPEAT_CONS_EXPRESSIONS is defined.
1478         * read.h (emit_expr): Added declaration of new function.
1479         * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
1480         * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
1481         * config/tc-hppa.c (parse_cons_expression_hppa): New function to
1482         parse a HPPA expression, rather than special case in cons
1483         function.
1484         (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
1485         than special case in emit_expr function.
1486         * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
1487         Define to use new functions from tc-hppa.c.
1488         * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
1489         (WANT_BITFIELDS): Removed; now obsolete.
1490         * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
1491         * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
1492         NS32K fixup, rather than special case in emit_expr function.
1493         * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
1494         cons_fix_new_ns32k.  Also use PARAMS rather than checking
1495         __STDC__.
1496         * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
1497
1498         * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
1499         Don't core dump if gas has no information about a section.
1500
1501 Wed Jun 30 06:21:27 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1502
1503         * write.c (relax_and_size_seg): Always fully process a section.
1504         Section size is last frag's (vm)address plus its size.  If no
1505         relocations are present, force SEC_RELOC flag clear.
1506         (dump_section_relocs): New debugging routine.
1507         (adjust_reloc_syms): New routine, broken out from write_contents.
1508         Don't adjust relocs that are already relative to section symbol.
1509         Look for obj_fix_adjustable macro to know what else to skip,
1510         instead of obj_write_symbol.  Look for section symbol stored in
1511         section information.
1512         (write_object_file): Map adjust_reloc_syms over all sections.
1513         (write_contents): Clear SEC_RELOC flag if no relocations are
1514         found.
1515
1516         * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
1517         keep it quiet.
1518
1519         * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
1520
1521 Fri Jun 25 14:42:53 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
1522
1523         * Makefile.in (all, dvi, info, install-info, clean-info): do not
1524           echo recursion lines.
1525           (install-info, clean-info): collapse into the dvi and info rule.
1526
1527 Fri Jun 25 03:43:06 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
1528
1529         * as.h (strstr): Disable declaration for now.
1530         (fprint_value, sprint_value): Declare.
1531
1532         * subsegs.c (subseg_new_rest): Use memset to clear new frag.
1533         (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
1534
1535         * expr.c (expr_part): Made sanity checks a.out-specific.
1536         (expr): Disabled sanity checks.
1537
1538         * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
1539         section symbol.
1540         * subsegs.c (subseg_change): Initialize section symbol pointer
1541         when setting up a new section.
1542
1543         * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
1544         field back at gas symbol structure.
1545
1546         * symbols.c (colon): Cast obstack_next_free value to char* before
1547         doing arithmetic on it.
1548         * subsegs.c (subseg_new_rest): Likewise.
1549         * as.h (frag_now_fix): Likewise.
1550
1551         * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
1552         calling bfd_make_section_old_way directly, and call subseg_set
1553         instead of subseg_change.  Now returns void.
1554         (obj_elf_write_symbol): Only check local symbols for now.
1555         (elf_stab_symbol): Now static and void, and disabled until it
1556         works completely.
1557         (obj_elf_size): For expression values, fail silently for now.
1558         (obj_symbol_new_hook): Do nothing.
1559
1560         * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
1561         relocation.
1562         (s_local) [OBJ_ELF]: New function.
1563         (md_pseudo_table) [OBJ_ELF]: Call it for "local".
1564         (s_common): Rearrange to handle Solaris .common pseudo, which may
1565         sometimes use bss space instead of common.
1566         * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
1567
1568 Thu Jun 24 16:33:53 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1569
1570         * configure.in: set host config to hpux for hppa*-hp-hpux
1571
1572 Thu Jun 24 13:35:06 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
1573
1574         * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
1575
1576 Tue Jun 22 01:04:23 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
1577
1578         * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
1579         * config/obj-aout.c (s_sect): Do it here.
1580
1581         * as.h (BAD_CASE): Don't make some lame compilers think we want
1582         substitution inside strings.
1583
1584         * as.c (print_version_id): New function, split off from main.
1585         (main): Call it.
1586         * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
1587         for -V.  Ignore -Q and -s options for now.
1588
1589 Mon Jun 21 17:37:59 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1590
1591         * Makefile.in: make installation & builds work again for crosses
1592
1593 Sun Jun 20 18:18:26 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
1594
1595         * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
1596         symbol values correctly.
1597
1598         * write.c (write_object_file): Deleted unused variables.
1599         (fixup_segment): Use sprint_value.
1600
1601         * messages.c (sprint_value, fprint_value): New routines.
1602
1603         * config/obj-elf.c (elf_stab_symbol): Now returns void.
1604         (obj_elf_stab_generic): Fix typo in logic.
1605
1606         * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
1607
1608         * as.h (addressT, offsetT): New types, using BFD types if
1609         available.
1610         (relax_addressT, struct frag): Use them.
1611         * struc-symbol.h (valueT, struct broken_word): Likewise.
1612
1613         * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
1614         * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
1615
1616 Thu Jun 17 16:53:56 1993  david d `zoo' zuhn (zoo@cygnus.com)
1617
1618         * Makefile.in: canonicalize install.sh; for use within
1619         this directory (and subdirs)
1620
1621 Sun Jun 20 02:34:04 1993  Ashley Saulsbury (ans@sics.se)
1622
1623         * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
1624         specified, should have both S1 and S2 fields identical
1625         If only finding the problem was as fast as fixing the bug !!!!
1626
1627 Tue Jun 15 16:01:57 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1628
1629         * write.c (write_contents): Do write out non-loadable sections.
1630         Debug sections can fall in this category.
1631
1632         * read.c (s_app_file): Call elf_file_symbol for ELF files.
1633         * config/obj-elf.c (elf_file_symbol): New function.
1634
1635         * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
1636         added argument to specify section base name.
1637         (obj_elf_stab_generic): Renamed from ..._stab.  New argument
1638         specifies section base name.
1639         (obj_elf_stab): New function, calls obj_elf_stab_generic with
1640         ".stab" as section base name.
1641         (obj_elf_xstab): New function, calls obj_elf_stab_generic.
1642         (obj_elf_type): Handle "object".  Use bitwise-or to merge in
1643         symbol flags rather than simply replacing, so global/local flags
1644         are preserved.
1645         (obj_elf_ident): Rewrite.
1646
1647 Tue Jun 15 17:03:25 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1648
1649         * Makefile.in: remove parentdir support; use INSTALL_XFORM
1650
1651 Wed Jun  9 11:26:07 1993  Ian Lance Taylor  (ian@cygnus.com)
1652
1653         * config/tc-i386.c (md_pseudo_table): .align uses a power of two
1654         for any a.out target, not just Linux and 386BSD.
1655         * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
1656         target.
1657
1658 Mon Jun  7 13:33:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1659
1660         * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h.  They
1661         don't exist or duplicate other inclusions.
1662
1663         * config/tc-vax.h (NO_RELOC): Define.
1664
1665 Sat Jun  5 19:32:52 1993  Torbjorn Granlund  (tege@nada.kth.se)
1666
1667         * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
1668         * gas/config/tc-m88k.c (get_reg): New arg reg_prefix.  Compare first
1669         char to reg_prefix instead of to 'r'.
1670         (calcop): Change calls to get_reg.
1671         (calcop): Handle new case 'x' to set reg_prefix.
1672         (calcop): Set reg_prefix to 'r' after each call to get_reg.
1673         (cmpslot): Add 88110 conditions.
1674
1675         * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
1676
1677         * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
1678         before returning.
1679
1680         * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
1681         adjacent; mov.s and mov.d swapped.
1682         (m88k_opcodes): Fix typo `r2' -> `2'.
1683
1684 Fri Jun  4 15:59:31 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1685
1686         * config/h8300.c: Support for H8/300-H opcodes.
1687
1688         * config/obj-coffbfd.c (w_strings): String table length is 4
1689         bytes, no matter what the host int size is.
1690
1691         * configure.in (alpha-*-osf*): New.
1692
1693 Fri Jun  4 07:51:18 1993  Ian Lance Taylor  (ian@cygnus.com)
1694
1695         * configure.in (mips-*-ecoffl*): New target; use ecoff and
1696         mips-lit.
1697         (mips-*-ecoff*): Added trailing '*'.
1698
1699         * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
1700         first FDR in a file to be zero.
1701
1702 Thu Jun  3 14:09:59 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1703
1704         * Makefile.in (VERSION): Jump to 2.1.4.
1705
1706         * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
1707
1708         * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
1709         ECOFF format.
1710
1711 Tue Jun  1 15:21:57 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1712
1713         * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
1714         separate '851 mmu.
1715
1716         * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
1717         and routine names.  Assuming 32 bits for now.
1718
1719         * config/obj-elf.c (elf_frob_file): Look for macro
1720         elf_tc_final_processing_hook, instead of assuming a function
1721         always exists.
1722         * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
1723         tc_final_processing_hook.
1724         * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
1725
1726         * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
1727         moved here from obj-elf.h.
1728         * config/obj-elf.h: Don't include CPU-specific header files.
1729
1730 Sun May 30 16:49:37 1993  Peter Hoogenboom  (hoogen@fast.cs.utah.edu)
1731
1732         * configure.in: configurations should match on 'hppa*' not 'hppa'.
1733
1734         * read.c: Add support for HPPA assembly language syntax (denoted
1735         with '#ifdef TC_HPPA').
1736
1737         * symbols.c: Add support for HPPA assembly language syntax (denoted
1738         with '#ifdef TC_HPPA').
1739
1740         * write.c (write_contents):  Add support for HPPA-style
1741         relocations.
1742
1743         * config/obj-elf.c: Stab symbols weren't written properly.
1744         (obj_elf_version):
1745         (obj_elf_desc):
1746         (obj_elf_write_symbol):
1747         (obj_elf_write_symbol_p):
1748         (obj_elf_frob_symbol):
1749         (elf_stab_symbol):
1750         (elf_frob_file):
1751
1752         * config/tc-hppa.c: Support for HPPA symbol extension sections.
1753         Remove some unused code.  Support for HPPA assembly language
1754         syntax.
1755
1756         * app.c:
1757
1758         * symbols.c:
1759
1760         * config/obj-elf.h:
1761         (obj_write_symbol):
1762         (obj_frob_file):
1763         (elf_tc_symbol):
1764         (elf_tc_make_sections):
1765
1766         * config/tc-hppa.h:
1767
1768 Sun May 30 21:44:45 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
1769
1770         * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
1771         hash_new will have succeeded if it returns.
1772         * config/tc-a29k.c (md_begin): Likewise.
1773
1774         * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
1775         const.
1776         (mode_from_disp_size, opcode_suffic_to_type): Now inline under
1777         gcc.
1778         (fits_in_{signed,unsigned}_{byte,word}): Likewise.
1779
1780         * expr.c: Delete register declarations; gcc ignores them anyways.
1781
1782 Fri May 28 19:03:32 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1783
1784         * hash.c (hash_new): Use xmalloc, since many callers don't check
1785         for failure.
1786
1787 Thu May 27 13:02:15 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1788
1789         * frags.c (zero_address_frag, bss_address_frag): These are
1790         external.
1791
1792         * tc.h (md_reloc_size): This is const.
1793         * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
1794         (md_reloc_size): Now const.
1795
1796         * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
1797         trailing commas.
1798         * as.h (enum _segT): Ditto.
1799
1800         * struc-symbol.h (N_TYPE_seg): This should be const.
1801
1802 Thu May 27 11:43:59 1993  Michael Meissner  (meissner@osf.org)
1803
1804         * config/obj-ecoff.c (add_file): Cast file_name to char * in
1805         listing_source_file call.
1806
1807         * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
1808         of subseg_new call to eliminate const attribute.
1809         (obj_elf_stab): Ditto.
1810         (obj_symbol_new_hook): Cast first argument of bzero call to char *.
1811
1812         * read.c (s_align_bytes): Properly record alignment.
1813
1814         * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
1815         for the prototype/no prototype macro.
1816
1817         * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
1818         void.
1819
1820         * as.h (relax_stateT enum): Delete trailing comma.
1821
1822 Thu May 27 11:07:50 1993  Ian Lance Taylor  (ian@cygnus.com)
1823
1824         * app.c (do_scrub_begin): Let line_comment_chars override
1825         comment_chars.
1826         (do_scrub_next_char): If a line comment character is not at the
1827         start of a line, treat it as a comment character if it is one.
1828         For a CPP line comment use pseudo-op .appline rather than .line.
1829         * input-scrub.c (logical_input_line): Make int rather than
1830         unsigned.
1831         (input_scrub_push, input_scrub_begin): Initialize
1832         logical_input_line to -1 rather than 0.
1833         (bump_line_counters): Increment logical_input_line.
1834         (new_logical_line): If line_number is -2, decrement
1835         logical_input_line.
1836         (as_where): Use logical_input_line even if it is 0.
1837         * read.h (s_app_file prototype): Now takes an int argument.
1838         * read.c (potable): Make .appfile call s_app_file with 1.  New
1839         .appline pseudo-op calls s_app_line.
1840         (s_app_file): If .appfile, call new_logical_line with -2 to
1841         account for newline inserted by do_scrub_next_char.  If listing,
1842         call listing_source_file.
1843         (s_app_line): New function to handle fake pseudo-op .appline.
1844         * config/obj-coff.c (obj_pseudo_table): Make .appline call
1845         obj_coff_ln.
1846         (obj_coff_ln): Added argument to indicate whether .appline.
1847         * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
1848         obj_coff_ln.
1849         (obj_coff_ln): Added argument to indicate whether .appline.
1850         * config/tc-mips.c (s_file): Pass argument to s_app_file.
1851
1852 Tue May 25 11:59:07 1993  Ian Lance Taylor  (ian@cygnus.com)
1853
1854         * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
1855
1856 Thu May 20 19:14:24 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1857
1858         * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
1859         invalid values.
1860
1861 Wed May 19 07:33:17 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1862
1863         * config/tc-h5000.c (build_bytes): Understand @rd mode and build
1864         relocations correctly.
1865
1866 Mon May 17 15:06:26 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
1867
1868         * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
1869         it's wrong.
1870
1871         * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
1872         if value is out of range.
1873
1874         Patch from Minh Tran-Le:
1875         * config/tc-i386.c (i386_operand): For in/out port register used
1876         as base reg, include InOutPortReg in operand type.
1877         (MATCH): Accept overlap value of InOutPortReg.
1878
1879 Mon May 17 09:29:34 1993  Ian Lance Taylor  (ian@cygnus.com)
1880
1881         * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
1882         Add calls to listing routines to produce combined source/assembler
1883         listings.
1884         (obj_ecoff_stab): Create a file pointer if none used yet.
1885         (ecoff_frob_file): Set symcount to correct value.
1886
1887 Fri May 14 06:53:33 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
1888
1889         * Makefile.in (VERSION): Bump to version 2.1, in preparation for
1890         release.
1891
1892         * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
1893         Define in terms of constants, not C structure sizes.
1894
1895         * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
1896
1897 Thu May 13 17:01:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1898
1899         * config/obj-aout.c (obj_header_append): Don't define if it's
1900         defined as a macro.
1901         * config/obj-hp300.h (obj_header_append): Define it as a macro.
1902         * config/obj-hp300.c (hp300_header_append): New function.
1903
1904         * Makefile.in (distclean): Don't bother cleaning up doc files;
1905         they aren't going to be in this directory.
1906
1907 Thu May 13 07:51:35 1993  Ian Lance Taylor  (ian@cygnus.com)
1908
1909         * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
1910         symbols.
1911
1912         * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
1913         * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
1914
1915 Mon May 10 06:01:12 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
1916
1917         * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
1918         initialization.
1919
1920         * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
1921
1922 Wed May  5 14:00:49 1993  Ian Lance Taylor  (ian@cygnus.com)
1923
1924         * config/tc-mips.c (macro): Correct floating point double word
1925         loads and stores for big endian target.
1926
1927 Wed May  5 08:39:21 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
1928
1929         * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
1930         calls.  Deleted some unused code.
1931         * config/obj-coff.c: Likewise.
1932
1933         ELF support, mostly contributed by Utah:
1934         * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
1935         obj_elf_type): Rewrite.
1936         (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
1937         obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
1938         New functions.
1939         (obj_elf_ident): Dummy.
1940         * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
1941         TARGET_SYMBOL_FIELDS): New macros.
1942         (gdb_section): New variable decl.
1943
1944         * config/tc-i386.c (md_atof): Return zero, not empty string, on
1945         success.
1946
1947         BFD_ASSEMBLER conditional changes:
1948         * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
1949         Don't define these.
1950         (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
1951         (fetch_coff_debug_section): Ditto.
1952         (obj_coff_endef): Call fetch_coff_debug_section.
1953         (struct line_no): New type.
1954         (c_symbol_merge): New way for copying aux fields.
1955         (c_dot_file_symbol): Put symbol in absolute section, and set flag
1956         BSF_DEBUGGING.
1957         (function_lineoff): New symbol.
1958         (function_lineoff, text_lineno_number, our_lineno_number,
1959         lineno_lastP): Don't define.
1960         (c_line_new): Don't define.
1961         (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
1962         placeholders, until
1963         line-number recording gets implemented.
1964         (obj_new_symbol_hook): New code for handling aux fields.
1965         (add_lineno, add_linesym): New functions.
1966         (obj_coff_ln): Call add_lineno, not c_line_new.
1967         (obj_coff_endef): New code for handling symbol names.  New lineno
1968         code.  Look for section name "*DEBUG*" for debugging section.
1969         (align, coff_check_file_symbols, obj_coff_section,
1970         coff_frob_file): New functions.
1971         * config/obj-coff.h: Reordered some includes.
1972         (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
1973         DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
1974         define these.
1975         (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
1976         (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
1977         aux entries.  Most SA_* macros now use it unconditionally.
1978         (S_*): Use `bsym' field, and access BFD private data.
1979         (SF_*): Use `sy_flags' symbol field for most of these.
1980         (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
1981         define.
1982         (*_section_header): Don't define.
1983         * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
1984         interface.
1985         (tc_gen_reloc) [I386COFF]: New function.
1986         (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
1987         * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
1988         macros.
1989
1990         * config/obj-coff.c (stack_init): Don't do assignments inside
1991         conditions.
1992         (obj_coff_def): Simplified handling of symbol name a bit.
1993         (tag_insert): Name argument is now pointer to CONST.
1994         (obj_crawl_symbol_chain): Commented out.
1995
1996         * config/obj-coff.h: Use PARAMS macro in prototypes.
1997
1998         * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
1999         through frchainP pointer if it is null.
2000
2001         * configure.in: Warn if BFD mode is explicitly turned off but is
2002         required by specified target.
2003         (mips ecoff targets): Don't need to set bfd_gas here; it gets
2004         taken care of later.
2005
2006         * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
2007         field.
2008         (yank_symbols): Merge symbols only if sy_forward is null.
2009
2010         * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
2011         defined.
2012
2013         * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
2014         pointer.
2015         * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
2016
2017         * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
2018         with "." is a local label.
2019
2020         * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
2021         files.
2022
2023         * config/te-linux.h, config/te-386bsd.h: New config files.
2024         * configure.in (i386-*-linux, i386-*-bsd): Use them.
2025         * config/tc-i386.h (TARGET_FORMAT): Select format based on target
2026         environment.
2027         (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
2028
2029 Wed May  5 13:14:01 1993  Ian Lance Taylor  (ian@cygnus.com)
2030
2031         * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
2032         to want it that way.
2033         (ecoff_build_symbols): Turn local st_Proc symbols into
2034         st_StaticProc symbols.  Set index field of external st_Proc and
2035         st_staticProc symbols correctly.
2036         * config/tc-mips.h (NO_LISTING): Don't define.  People might want
2037         listings.
2038
2039 Tue May  4 21:22:54 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2040
2041         * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
2042         files.
2043         * configure.in (m68k-*-hpux): Use them.
2044
2045         * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
2046         defined, otherwise zero.
2047
2048         * config/aout_gnu.h (OMAGIC): Don't define if already defined.
2049
2050 Mon May  3 15:59:32 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
2051
2052         * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
2053         address space number.
2054
2055 Wed Apr 28 19:11:22 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
2056
2057         * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
2058
2059         * config/tc-a29k.c: Include ctype.h.
2060         (define_some_regs): Added special-purpose registers for 29050.
2061
2062         * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
2063
2064         * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
2065         (change_to_section): Set it here instead.
2066
2067 Wed Apr 28 13:40:29 1993  Ian Lance Taylor  (ian@rtl.cygnus.com)
2068
2069         * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
2070         hasn't been seen yet.
2071         (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
2072
2073 Mon Apr 26 18:29:05 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
2074
2075         * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
2076         SH.
2077
2078 Mon Apr 26 12:28:27 1993  Ian Lance Taylor  (ian@cygnus.com)
2079
2080         * expr.c (operand): Fix unary plus operator (previously was the
2081         same as '~' operator!).
2082
2083 Wed Apr 21 00:20:11 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2084
2085         * write.c (cvt_frag_to_fill): Define even if BFD is defined.
2086         (write_object_file): Do define if BFD_ASSEMBLER.  Invoke
2087         obj_check_file_symbols if defined.  Call verify_symbol_chain_2
2088         instead of open-coding it.  Fix some bugs in patching up symbol
2089         chain.
2090         (relax_segment): Make some code we "ought to be able to" use for
2091         all targets no longer conditionalized on ns32k target; instead, do
2092         it always, and if the appropriate conditions fail, abort.
2093
2094         * symbols.c (DEBUG): Enabled.
2095         (symbol_new): Make sure bfd_make_empty_symbol works.
2096         (verify_symbol_chain_2): New funcion; takes one symbol as
2097         argument, anywhere in the chain.
2098         (dollar_label*): Use default initializers.
2099
2100         * as.c (perform_an_assembly_pass): Call md_begin here...
2101         (main): ...and not here.
2102
2103         * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
2104         (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
2105
2106         * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
2107         (add_fix, add_frag): Now functions instead of macros.
2108         (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
2109         s_data1, s_data2, s_bss): Use new *_section names, for
2110         compatibility with BFD_ASSEMBLER mode; rewrite switch statements
2111         to handle non-integral segT.
2112         (tc_coff_fix2rtype, tc_aout_fix_to_chars,
2113         tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
2114         (tc_gen_reloc): New routine for BFD_ASSEMBLER.
2115         (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
2116         md_apply_fix_2; new md_apply_fix definition varies interface
2117         depending on BFD_ASSEMBLER.
2118         (md_convert_frag, md_convert_frag_1): Likewise.  Use new *_section
2119         names.
2120
2121         * config/obj-vms.c: Include config.h.
2122         (version_string): Delete declaration.
2123         (Write_VMS_MHD_Records): Use GAS_VERSION instead.
2124         (vms_resolve_symbol_redef): New function, taken from VMS code in
2125         symbols.c.
2126         (_doprnt): Deleted.
2127         (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
2128         VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
2129         VMS_Psect_Spec): Fixed to compiler under traditional C.
2130         * config/obj-vms.h: Use PARAMS macro.
2131         (vms_resolve_symbol_redef): Declare.
2132         (RESOLVE_SYMBOL_REDEFINITION): New macro.
2133         * symbols.c (colon): Remove some VMS-specific code, look for
2134         RESOLVE_SYMBOL_REDEFINITION macro instead.
2135
2136         * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
2137         instructions.
2138
2139         * config/tc-i386.c: Reordered some functions so inlining might
2140         work.  Use PARAMS in function declarations.
2141         (reloc): New routine.
2142         (md_assemble): Rearrange switch statements to work with
2143         non-integral segT.
2144
2145         * struc-symbol.h [BFD_ASSEMBLER]: Undefine
2146         SYMBOLS_NEED_BACKPOINTERS before defining it.
2147
2148         * subsegs.c (subseg_new_rest): Now static.
2149
2150         * read.c (pseudo_set): Better error message for difference of
2151         symbols in different frags.
2152
2153         * Makefile.in (check): Pass down some new variables, indicating
2154         pathname or program name for cc, nm, objdump.
2155
2156         * as.h (OUTPUT_FLAVOR): New macro.
2157         * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
2158
2159         * configure.in: Initialize bfd_gas properly.  Warn that ELF
2160         support is incomplete.
2161
2162 Thu Apr 15 22:39:05 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2163
2164         * read.c (float_cons): Accept null pointer return from md_atof.
2165         * config/tc-m68k.c (md_atof): Return null for success.
2166         * config/tc-sparc.c (md_atof): Ditto.
2167
2168 Thu Apr 15 16:04:39 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
2169
2170         * doc/as.texinfo: formatting and comment cleanups; show SPARC
2171         alternative options in same style as other machines; simplify some
2172         conditional use; include GPL as separate file (from texinfo dir)
2173
2174         * doc/Makefile.in: (as.info) include directory containing GPL in
2175         makeinfo search path
2176
2177         * doc/h8.texi: new file; conditional settings for GAS manual
2178         on Hitachi chips
2179
2180 Tue Apr 13 15:31:40 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
2181
2182         * doc/as.texinfo: mention SPARC architecture options.
2183
2184 Fri Apr  9 17:43:11 1993  Ken Raeburn  (raeburn@cygnus.com)
2185
2186         * configure.in: Rearranged whitespace in per-host/per-target
2187         sections.  Added hooks for dropping in HPPA support (not included
2188         yet).  Separate out overrides of variables based on target format
2189         and bfd-gas selection from actual target-specific commands.  Add
2190         error message for recognized but unsupported format name.
2191
2192 Fri Apr  9 09:05:47 1993  Ian Lance Taylor  (ian@cygnus.com)
2193
2194         * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
2195         symbolic header match cline in FDR; the native linker seems to
2196         want that.
2197
2198 Thu Apr  8 15:51:28 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2199
2200         * doc/Makefile.in: as.texinfo is in $(srcdir).  Use
2201         $(srcdir)/as.texinfo explicitly in several places
2202
2203 Thu Apr  8 15:15:02 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
2204
2205         * doc/Makefile.in: update dvi, clean targets for new source
2206                            file structure
2207
2208 Thu Apr  8 12:52:46 1993  Ian Lance Taylor  (ian@cygnus.com)
2209
2210         * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
2211         rather than undefining know.
2212         * configure.in: Match ultrix*, not just ultrix.
2213
2214 Wed Apr  7 20:18:10 1993  Roland H. Pesch  (pesch@fowanton.cygnus.com)
2215
2216         * doc/as.texinfo: converted conditional markup to use new
2217         Texinfo facilities, avoiding m4.
2218
2219         * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
2220
2221         * doc/Makefile.in: recast doc configuration to use a link to an
2222         included texinfo file.
2223
2224         * doc/all.texi: settings for generic form of documentation.
2225
2226 Tue Apr  6 11:56:21 1993  Ian Lance Taylor  (ian@cygnus.com)
2227
2228         * read.c (cons): Zero out frag when creating reloc.
2229
2230 Mon Apr  5 09:41:58 1993  Ian Lance Taylor  (ian@cygnus.com)
2231
2232         * config/tc-mips.c (gp_reference): Certain magic symbols can never
2233         be referenced off the GP register.
2234
2235         * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
2236         when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
2237         LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
2238
2239         * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
2240         definition from other MIPS targets.
2241         * configure.in (mips-*-irix): Use emulation irix.
2242
2243 Sun Apr  4 15:21:09 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
2244
2245         * config/tc-h8500.c: Get relax size of branch instructions right,
2246         (get_operand): Parse @sp+ correctly.
2247
2248 Fri Apr  2 15:59:49 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2249
2250         * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
2251         COFF section header field.
2252
2253         * configure.in: Print error message if host or target is not
2254         supported.
2255
2256         * configure.in: If with-bfd-assembler, use obj-coff instead of
2257         obj-coffbfd.
2258
2259         * config/ho-generic.h: Include string.h.
2260
2261 Fri Apr  2 08:54:57 1993  Ian Lance Taylor  (ian@cygnus.com)
2262
2263         * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
2264         '$' as local, for any object file format.
2265
2266         * config/tc-mips.c (macro): Optimizations to branching code and a
2267         couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
2268         Campbell).
2269
2270         * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
2271         * configure.in (mips-sgi-irix*): Set gas_host to irix.
2272
2273 Wed Mar 31 17:53:54 1993  Ian Lance Taylor  (ian@cygnus.com)
2274
2275         * subsegs.c (subseg_new): Set output_section of new section.
2276         * as.c (perform_an_assemly_pass): Don't set output_section here.
2277         * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
2278         since it has additional sections.
2279         * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
2280         not bss_section.
2281         * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
2282         ecoff_undefined field.
2283         * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
2284         ecoff_undefined field.
2285         (add_file): If using stabs, just output a stabs symbol rather than
2286         creating a new fdr.
2287         (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
2288         it with get_absolute_expression, rather than skipping it by hand.
2289         (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
2290         than ECOFF line number information.
2291         (obj_ecoff_stab): Accept non-zero values for stabs line number.
2292         (ecoff_build_symbols): Set ifilesym correctly.  Set storage class
2293         to small, undefined and/or readonly sections if appropriate.
2294         Don't output symbol names containing \001 characters.
2295         (ecoff_frob_file): Make sure at least one fdr is output.
2296         * config/tc-mips.h: Define TC_MIPS.
2297         * config/tc-mips.c (g_switch_value): New static variable.
2298         (md_assemble): Set gp size of output BFD.
2299         (gp_reference): New function; returns 1 if expression can be
2300         accesssed via gp.  Always returns 0 if not using ECOFF.
2301         (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
2302         possible.
2303         (macro): Generate sequences using gp if possible.
2304         (md_parse_option): Ignore -EL and -EB.  Parse -G.
2305         (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
2306         (s_change_sec): Handle .rdata and .sdata for ECOFF.
2307         (s_extern): Mark symbol as external.  Set ecoff_undefined field.
2308
2309 Tue Mar 30 10:11:41 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2310
2311         * output-file.c (output_file_create): Don't call as_perror for
2312         filename rejected by application.
2313
2314         * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
2315         the output file.
2316
2317         * doc/as.texinfo: Don't use @value in node names for the moment;
2318         references don't appear to work right.
2319
2320         * as.h (const, volatile): Put these definitions back, and use
2321         them.
2322
2323         * doc/as.texinfo: First pass at using new texinfo features --
2324         variables, conditional tests.  Far from complete.
2325
2326 Mon Mar 29 16:05:40 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2327
2328         * read.c: Temporary hack to handle some 64-bit constants.  This
2329         should be redone later.
2330         (target_big_endian): Declare.
2331         (big_cons): If it's set, reverse order of bytes being copied.
2332         * config/tc-sparc.c (md_begin): Set target_big_endian.
2333
2334         * read.c (s_ignore): Delete declaration of is_end_of_line.
2335
2336         * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
2337         forward pointers properly.
2338
2339 Mon Mar 29 13:47:33 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
2340
2341         * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
2342         wasn't being stored into scnhdr.
2343         * config/obj-coffbfd.h: Add prototype of s_get_segment.
2344         * read.c (TC_START_LABEL): Default definition.
2345         (read_a_source_file): Use TC_START_LABEL macro to work out
2346         if a label has been seen.
2347
2348 Mon Mar 29 12:56:56 1993  Ian Lance Taylor  (ian@cygnus.com)
2349
2350         * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
2351         the bottom (make expands variables in dependencies when the
2352         dependencies are read, not when they are used).
2353
2354         * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
2355         a29k .bss section; the mondfe program doesn't like it.
2356
2357 Sun Mar 28 08:12:53 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2358
2359         * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
2360         const.
2361         (current_architecture): Don't need initializer.
2362
2363 Fri Mar 26 08:12:48 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2364
2365         * doc/none.m4: Define Z8000.
2366         * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir).  Remove the
2367         texinfo file before recreating it.
2368         (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
2369         this directory.
2370         (srcdir): Delete second, bogus definition.
2371         (as.info): Look for as-*.texinfo in current directory rather than
2372         in $(srcdir).
2373         (as.dvi): Ditto.
2374         (dvi): New rule.
2375         * doc/configure.in: Create links to all as-*.texinfo files in the
2376         source directory, if that's not the current directory.
2377
2378         * configure.in (per-host):  Accept MIPS host with BSD version
2379         number.
2380         (per-target): Classify i486 as i386.  Use generic cpu_type instead
2381         of target_cpu in selecting format etc.
2382
2383         * app.c (do_scrub_next_char): Use .appfile, not .app-file.
2384         * read.c (potable): Change .app-file to .appfile.
2385
2386         * config/ho-decstatn.h: Renamed from ho-decstation.h.
2387         * configure.in: Adjusted.
2388
2389         * config/obj-bfd-sunos.*: Unused; deleted.
2390
2391         * Makefile.in (version.c, vers-stamp): Deleted.
2392         (config.h): Define GAS_VERSION.
2393         * as.c (version_string): Deleted declaration.
2394         (main): Look for GAS_VERSION instead.
2395
2396         * doc/as.texinfo: Updated description of -a* (listing) options,
2397         and describe how to pass them through from gcc.
2398
2399         * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
2400         process relocs if there aren't any relocs to process.  Avoids
2401         malloc/free bug on SCO too.
2402
2403         * as.h: Move local include files below system include files, to
2404         avoid some redefinition complaints on some systems.
2405         (const, volatile): Don't need these conditionally defined if we
2406         use CONST and VOLATILE from ansidecl.h.
2407         (seg_name): Use CONST, not const.
2408
2409 Fri Mar 26 10:22:04 1993  Ian Lance Taylor  (ian@cygnus.com)
2410
2411         * config/tc-mips.c: Reindented to GNU standards.
2412
2413 Thu Mar 25 08:59:14 1993  Ian Lance Taylor  (ian@cygnus.com)
2414
2415         * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
2416         (fixup_segment): Add a29k special case; the linker is not prepared
2417         to see a segment offset here.
2418
2419         * app.c (do_scrub_next_char): Added new state, 10, modifying state
2420         9 to only keep a space in between identifier characters.
2421
2422 Wed Mar 24 02:16:22 1993  david d `zoo' zuhn  (zoo at poseidon.cygnus.com)
2423
2424         * Makefile.in: add dvi target; as-$(config).texinfo might live in
2425         srcdir, might be in objdir.
2426
2427         * doc/Makefile.in: dvi depends on as.dvi
2428
2429 Mon Mar 22 23:59:13 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2430
2431         * Makefile.in: add installcheck target
2432
2433 Mon Mar 22 10:19:00 1993  Ian Lance Taylor  (ian@cygnus.com)
2434
2435         * config/tc-mips.c (macro): Use $AT for any floating point load.
2436
2437 Sat Mar 20 12:50:51 1993  Ken Raeburn  (raeburn@urth.cygnus.com)
2438
2439         * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
2440         bignums, but don't emit error message.
2441
2442 Fri Mar 19 21:02:19 1993  Jim Wilson  (wilson@sphagnum.cygnus.com)
2443
2444         * Makefile.in (targ-cpu.o): Depend on config.h.
2445
2446 Wed Mar 17 16:44:06 1993  Ian Lance Taylor  (ian@cygnus.com)
2447
2448         * app.c (do_scrub_next_char): Added new state, 9, to avoid
2449         dropping a space immediately following an identifier.
2450         * expr.c, write.c: Rewrote assert expressions to not use multiple
2451         lines; I don't think that can be done portably.
2452         * config/tc-mips.c (macro): Use $AT if target register is zero in
2453         load instruction, which it can be for a floating point load.
2454
2455 Mon Mar 15 12:17:28 1993  Ian Lance Taylor  (ian@cygnus.com)
2456
2457         * write.c (write_contents): Compute the relocs before writing out
2458         the section contents.
2459         * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
2460         symbol table and values right.
2461         * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
2462         with $L is local.
2463         * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
2464         by the section vma.
2465
2466         * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
2467         z8k-opc.h, not z8k.h.
2468
2469         * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
2470         symbol.
2471
2472 Fri Mar 12 18:33:36 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2473
2474         * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
2475
2476 Fri Mar 12 12:00:07 1993  Ian Lance Taylor  (ian@cygnus.com)
2477
2478         * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
2479         to be on a single line.
2480
2481 Thu Mar 11 17:56:22 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2482
2483         * Makefile.in (config.h): Create file, writing out definitions of
2484         target cpu, alias, and canonical name.
2485         (ALL_CFLAGS): No longer define TARGET_CPU.
2486
2487         * Makefile.in (check): Print a message, instead of quitting
2488         silently.
2489
2490         * as.c (main): Don't catch any signals, for now.
2491
2492         * version.c: Deleted.
2493         * Makefile.in: Generate it, putting in only the version number
2494         itself.
2495         (VERSION): New variable.
2496         * as.c: Include config.h.
2497         (main): Reformatted version string.  Include target alias.  Don't
2498         print if not requested (i.e., unknown -v argument).
2499
2500         * as.c (stralloc): Deleted.
2501         (main): Call strdup instead.
2502
2503         * configure.in: Handle all 68300 series chips.
2504         * config/tc-m68k.c: Include config.h.
2505         (md_assemble): Assume TARGET_CPU is defined.  Accept some 68300
2506         series cpus as defaults.
2507         (md_parse_option): Accept some m68300 series CPUs as defaults.
2508
2509 Wed Mar 10 17:41:16 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2510
2511         * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
2512         not already defined.
2513         (main, got_sig): Use them.
2514         * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
2515         values.
2516
2517 Tue Mar  9 07:40:06 1993  Ian Lance Taylor  (ian@cygnus.com)
2518
2519         * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
2520         support.
2521
2522         * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
2523         OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
2524         (struct loc, struct proc, struct file): Moved to tc-mips.c within
2525         #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
2526         * config/tc-mips.c: Rearranged for ECOFF support.  Added
2527         prototypes for all static functions.  Moved existing minimal
2528         debugging format support info #ifndef OBJ_ECOFF blocks.
2529         (macro_build_lui): Eliminated sign_extend argument, because ECOFF
2530         does not support a non sign extended high 16 bits reloc.  Adjusted
2531         all callers accordingly.
2532         (tc_get_register): Renamed from get_register, and made non-static.
2533
2534         * config/mips-big.mt, config/mips-lit.mt: New files.  Define
2535         TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
2536         respectively.
2537         * configure.in (mips-*-bsd*): Use gas_target mips-lit.
2538         (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
2539         obj_format ecoff and gas_target mips-lit or mips-big.
2540
2541 Tue Mar  9 07:43:01 1993  Ken Raeburn  (raeburn@cygnus.com)
2542
2543         * version.c: Bump to version 2.0.1.
2544
2545 Tue Mar  9 07:40:06 1993  Ian Lance Taylor  (ian@cygnus.com)
2546
2547         * write.c (chain_frchains_together): Check that seg_info (section)
2548         is not NULL.
2549         (write_object_file): Call obj_frob_file after setting the symbols,
2550         not before.
2551
2552 Tue Mar  9 00:00:00 1993  Ken Raeburn  (raeburn@cygnus.com)
2553
2554         * Version 2.0 released.
2555
2556 Mon Mar  8 14:57:10 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2557
2558         * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
2559
2560 Fri Mar  5 09:05:55 1993  Ian Lance Taylor  (ian@cygnus.com)
2561
2562         * read.h: Define stringer here.
2563         read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
2564         places.
2565
2566 Thu Mar  4 11:52:23 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
2567
2568         * read.c (s_space): Multiply repeat count by mult, not fill.
2569
2570 Thu Mar  4 05:20:42 1993  Ken Raeburn  (raeburn@cygnus.com)
2571
2572         * read.c: Include ctype.h.
2573
2574 Wed Mar  3 10:41:46 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2575
2576         Patches from Eric Youngdale:
2577         * make-gas.com: Find obstack.obj if it's not in the current
2578         directory.
2579         * read.c (s_ignore): Don't declare is_end_of_line.  It's
2580         redundant, and triggers a VMS gcc compiler bug.
2581
2582         * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
2583         current segment as an argument.  (Ignored in all cases but VMS.)
2584         All callers and definitions changed.
2585
2586 Tue Mar  2 11:56:19 1993  Ian Lance Taylor  (ian@cygnus.com)
2587
2588         * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
2589         case compile again.
2590
2591 Tue Mar  2 08:53:34 1993  Ken Raeburn  (raeburn@cygnus.com)
2592
2593         * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
2594         so "~0x80" won't be rejected.
2595
2596         * config/obj-elf.c: No longer include elf/reloc.h.
2597         (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
2598         (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
2599         routines.
2600         (obj_elf_xstab): New routine.
2601         (obj_elf_set_size): Call as_warn, not fprintf.  Pass desired
2602         argument to s_ignore.  Put "#if 0" around unused code.
2603         (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
2604         Call elf_xstabs for .stabs and .xstabs operators.
2605
2606         * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
2607
2608         * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
2609         present.
2610
2611         * configure.in: mips-bsd configuration was missing format spec.
2612         Should use aout.
2613
2614         * Makefile.in (Makefile): Depends on configure.in.
2615
2616         * config/tc-mips.c (append_insn): Don't check for alignment of
2617         frag in memory; alignment of instructions in section is a separate
2618         matter.
2619
2620         * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
2621         C availability.
2622
2623         * listing.h: Always provide function declarations, not macros, so
2624         pcc won't lose.
2625
2626 Tue Mar  2 00:50:43 1993  John Gilmore  (gnu@cygnus.com)
2627
2628         * CONTRIBUTORS:  Update Gilmore entry.
2629
2630 Wed Feb 24 14:58:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2631
2632         * frags.c (frag_init): New function.
2633         (zero_address_frag, bss_address_frag): Now initialized at run
2634         time.
2635         * as.c (main): Call frag_init.
2636
2637 Wed Feb 24 10:32:42 1993  Ian Lance Taylor  (ian@cygnus.com)
2638
2639         * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
2640         Don't unget ch2 if we didn't get it.
2641
2642 Wed Feb 24 04:14:07 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2643
2644         * doc/Makefile.in (TEXIDIR): Updated for new layout.
2645
2646         * config/tc-sparc.c (s_common): Add support for ELF version.
2647         (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
2648         * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
2649         New macros.
2650         (md_convert_frag): New macro.
2651
2652         * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
2653         symbol, fix the offset so "+2" isn't required.
2654
2655         * config/tc-i960.c (line_comment_chars, line_separator_chars):
2656         Define as common/bss.
2657         (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
2658         initializers are sufficient.
2659
2660         * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
2661         (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
2662         (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
2663         (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
2664         * config/obj-aout.c: Use PARAMS macro for declarations.  Remove
2665         "IGNORE_DEBUG" conditional, since both branches are identical.
2666         Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
2667         referencing symbol structure members.
2668         (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
2669
2670         * as.h (struct frag): Reordered a couple of fields for better
2671         packing.
2672
2673         * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
2674         section info.
2675         (write_contents) [BFD_ASSEMBLER]: New function.
2676         (write_object_file) [BFD_ASSEMBLER]: Always handle -R here.  Call
2677         fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC.  Call
2678         obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
2679         (fixup_segment): Make sure common-section symbols get treated the
2680         same as undefined symbols.
2681         (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
2682         bfd_reloc_code_real_type.  Use seg_fix_{root,tail}P derived from
2683         section info.
2684         * write.h (fix_new): Update prototype.
2685
2686         * tc.h (md_operand, md_convert_frag, tc_headers_hook,
2687         md_section_align, md_undefined_symbol): Don't provide prototypes
2688         if these are defined as macros.
2689         (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
2690         section passed.
2691
2692         * symbols.c (symbol_new): Argument NAME is now pointer to const.
2693         Simplified STRIP_UNDERSCORE code.  Remove assumptions about null
2694         pointers in freshly allocated storage.  [BFD_ASSEMBLER]: Get new
2695         BFD symbol.
2696         (colon): Display other/desc fields of redefined symbol only if
2697         S_GET_OTHER and S_GET_DESC are defined.
2698         (symbol_make): Argument NAME is now pointer to const.
2699         (symbol_find, symbol_find_base): Likewise.
2700         (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
2701         * symbols.h: Fix prototypes for new const arguments.  Add
2702         prototypes for BFD_ASSEMBLER S_* functions.
2703
2704         * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
2705         for changing to an existing section.
2706         (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
2707         called by subseg_new and subseg_set.
2708         (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
2709         given section name and subseg number.
2710         (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
2711         new section/subsection.
2712
2713         * read.c: Don't include ctype.h.
2714         (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
2715         for now; should be machine-dependent.
2716
2717         * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
2718         targets, forcing BFD use.
2719
2720 Wed Feb 17 18:59:03 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2721
2722         * config/tc-sparc.c: Use PARAMS macro for static function
2723         declarations.  Use BFD_RELOC_ macros everywhere, with
2724         compatibility macros declared for non-BFD mode.
2725         (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
2726         instead of enum reloc_type.
2727         (emit_sparc_reloc): Commented-out function deleted.
2728         (md_convert_frag): Deleted.
2729         (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
2730         (md_apply_fix): Changed calling sequence (conditionally) for BFD
2731         version.
2732         * config/tc-sparc.h (md_convert_frag): New macro.
2733
2734         * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
2735         not SEG_UNKNOWN.  Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
2736         of referencing fields directly.
2737
2738         * write.c (cvt_frag_to_fill): New function; extracted from
2739         write_object_file.
2740         (write_object_file) [! BFD_ASSEMBLER]: Call it.
2741         (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
2742         and set its size and flags.
2743
2744         * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
2745         fields with BFD equivalents.  Turn on back-pointers, and add
2746         target-specific fields at end.
2747
2748 Thu Feb 11 09:20:37 1993  Ian Lance Taylor  (ian@cygnus.com)
2749
2750         * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
2751         (write_object_file): Set it here instead, so that fixup_segment
2752         can see the correct value.
2753
2754 Mon Feb  8 13:56:17 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2755
2756         * write.c (write_object_file): Check for errors and warnings and
2757         bail out before processing contents.
2758         (chain_frchains_together_1): New function, does most of the work
2759         of remove_subsegs.
2760         (chain_frchains_together) [BFD_ASSEMBLER]: New function.
2761         (remove_subsegs) [! BFD]: Call it.
2762         (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
2763         structures and routines.
2764
2765         * config/obj-elf.*: New files.
2766
2767         * config/mips.mt, config/rs6000.mt: Deleted.
2768
2769         * config/h8300.mt: Don't specify compiler here.
2770
2771         * config/z8k.mt: The z8k code depends on the z8k opcode table,
2772         not the h8300 one.
2773         * config/tc-z8k.h: Comment fix.
2774
2775         * write.c: Reordered some functions for better inlining.
2776         (fixup_segment): Linkrelax code is no longer conditional on
2777         TC_I960.
2778
2779 Thu Feb  4 12:45:16 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
2780
2781         * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
2782         obj-coffbfd.h}: support for the H8/500
2783
2784 Wed Feb  3 19:28:18 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2785
2786         * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
2787         * write.c (write_object_file): Not here.
2788         (fix_new): Initialize fx_addnumber.
2789
2790         * listing.c: Don't include target-cpu.h explicitly, since as.h
2791         includes it.
2792
2793 Thu Jan 28 00:35:40 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2794
2795         * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
2796         *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
2797         (struct fix): Reordered fields for compactness and efficiency.
2798         Converted some logical fields to 1-bit fields.
2799
2800         * config/obj-aout.h: Use PARAMS.
2801         [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
2802         N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
2803
2804         * read.c: Don't include listing.h; as.h includes it.  Removed
2805         DONTDEF code.
2806         [BFD_ASSEMBLER]: Include subsegs.h.
2807         (old_buffer, new_broken_words): Default initialization is
2808         sufficient.
2809
2810         * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
2811         to 0, define stdoutput.
2812         (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
2813         Call bfd_set_arch_mach.
2814         (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
2815         bfd_close_all_done.  Call bfd_perror on failure.
2816         (output_file_append) [BFD_ASSEMBLER]: Don't define.
2817
2818         * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
2819
2820         * subsegs.h (segment_info_type): Always define.  Omit field scnhdr
2821         if not MANY_SEGMENTS.  Define new field bfd_section if
2822         BFD_ASSEMBLER.
2823         (seg_info): New macro.
2824
2825         * expr.c, input-scrub.c: Use PARAMS macro.  Deleted unused
2826         variables, and some irrelevant comments.
2827
2828         * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
2829         (LIBS): Include $(BFDLIB).  Don't bother with $(CLIB).
2830         * configure.in:  Permit --with-bfd-assembler now, with a warning.
2831         Variable need_bfd is now a boolean, as is new variable bfd_gas.
2832         Set BFDDEF and BFDLIB in Makefile when appropriate.
2833
2834         * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
2835         (main): Refer to flag_always_generate_output instead of
2836         flagseen['Z'].
2837
2838         * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
2839         (*_section) [BFD_ASSEMBLER]: Define them.
2840         (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
2841         set section flags when appropriate.
2842         * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
2843         section is not absolute, undefined, or an assembler internal one.
2844         (absolute_section, undefined_section): Always define.
2845         * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
2846         switch statements into if-else trees.
2847         * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
2848         SEG_BSS and SEG_DATA.
2849
2850         * as.h (frag_now_fix): New macro.
2851         * symbols.c (colon): Use it.
2852
2853 Wed Jan 27 21:43:53 PST 1993  Ralph Campbell  (ralphc@pyramid.com)
2854
2855         * config/tc-mips.c:  Added mips support for mips-dec-bsd.
2856         * config/tc-mips.h:  Added mips support for mips-dec-bsd.
2857         * config/ho-mipsbsd.h:  Added mips support for mips-dec-bsd.
2858         * config/mips-opcode.h:  Added mips support for mips-dec-bsd.
2859         * configure.in:  Added mips support for mips-dec-bsd.
2860         * atof-generic.c:  Define TRUE and FALSE if not defined.
2861
2862 Thu Jan 21 12:48:19 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2863
2864         * version.c: Bumped version number to 1.93.05.
2865
2866 Wed Jan 20 17:11:53 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2867
2868         * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
2869         (obj_emit_lineno): Don't need return at end of void function.
2870         (obj_symbol_new_hook): Ditto.
2871
2872         * config/tc-m68k.c: Removed some unused code.
2873         (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
2874
2875         * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
2876         offset field is set.
2877
2878 Fri Jan  8 05:44:49 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2879
2880         * config/tc-sparc.c (architecture_requested, warn_on_bump,
2881         md_relax_table): Use default zero initialization.
2882         (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
2883         latter, instead of selecting with preprocessor conditionals.
2884
2885 Thu Jan  7 08:58:21 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2886
2887         * configure.in: recognise all sparclite variants
2888
2889 Thu Jan  7 05:25:25 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2890
2891         * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
2892         accidentally changed to use subseg_change where it should have
2893         been subseg_new.
2894
2895 Tue Jan  5 08:42:16 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2896
2897         * expr.c (operand): If character other than comma or newline is a
2898         logical end-of-line character, use the newline case.
2899         From Eric Youngdale:
2900         (operand): Set X_add_number field for floating-point numbers.
2901         (operand): Treat zero byte as end-of-operand.
2902
2903         * configure.in (per-target): Look for with_bfd_assembler option.
2904         For now, only accept "no", until the merge is done.
2905
2906         Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
2907         * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
2908           config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
2909         * read.c: Finish conversion to S_* macros in the VMS only
2910           parts of the program. Add "const" modifier to hex_value.
2911         * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
2912           "ifdef OBJ_VMS".
2913         * expr.c: Add "const" modifier to hex_value.
2914         * symbols.c: Finish conversion to S_* macros in the VMS only
2915           parts of the program.  Add "const" modifier to
2916           md_[long,short]_jump_size. Remove declaration of const_flag
2917           (which will be declared in obj-vms.h).
2918         * write.c: Add "const" modifier to md_[long,short]_jump_size.
2919           Fix arguments to VMS_write_object_file.
2920         * config-gas.com: New file.  Script for VMS systems to set up the
2921           configuration to build gas for VMS, and create config.status.
2922         * make-gas.com: Redone to work with new scheme.
2923         * obj-vms.c: Patch to fix bug where we were not correctly parsing the
2924           stabs directives.
2925         * obj-vms.c:  Define macros COPY_LONG and COPY_SHORT which
2926           will swap bytes if needed on a big endian system.  Use throughout
2927           as needed.
2928         * obj-vms.c (obj_aout_stab):  Add code to generate listing file.
2929         * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
2930           types of malformed stabs.  Change parsing algorithm so that we are
2931           more certain of having all of the information that we need on hand.
2932         * obj-vms.c (final_forward_reference):  New function, used to help
2933           resolve the data types of as many struct elements as possible
2934           when some part of the struct is not fully defined by the compiler.
2935         * obj-vms.c (VMS_LSYM_Parse):  Correctly handle case of continuation
2936           stabs directives.
2937         * obj-vms.c (VMS_write_object_file): Define all vtable psects
2938           as symbols as well in the object file.  Look for external functions
2939           that start with "__vt.", and turn them into variables, since the
2940           g++ compiler is incapable of doing this.
2941         * tc-vax.c: Add '1' option for backward compatibility with older GCC
2942           versions.
2943         * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
2944         * input-scrub.c (as_where): Fix bug where as would crash if we did not
2945           have the name of the source file yet.
2946         * config/ho-vms.h: define HO_VMS, not HO_VAX.
2947
2948 Mon Jan  4 05:17:26 1993  Ken Raeburn  (raeburn@cygnus.com)
2949
2950         * read.c (s_data): Always use "data_section", since it'll map to
2951         SEG_DATA or SEG_E1 if needed.
2952         (s_lcomm): Likewise with bss_section.
2953         (s_fill): Use memset, not bzero.
2954
2955 Thu Dec 31 04:29:27 1992  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2956
2957         * read.c: Deleted some code under "#ifdef DONTDEF" that was for
2958         handling GDB symbol table data.
2959
2960         * config/obj-aout.h (segment_name): Delete definition.
2961         (seg_name): Delete declaration.
2962         * config/obj-bout.h (segment_name, seg_name): Ditto.
2963         * config/obj-vms.h (segment_name, seg_name): Ditto.
2964         * config/obj-coff.h (segment_name): Ditto.
2965         * config/obj-coffbfd.h (segment_name): Ditto.
2966
2967         * Changes for BFD_ASSEMBLER:
2968         * obj.h (obj_crawl_symbol_chain): Declare only if not
2969         BFD_ASSEMBLER.
2970         (obj_header_append, obj_pre_write_hook): Ditto.
2971         * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
2972         (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
2973         (segment_name) If BFD_ASSEMBLER, look up BFD section name;
2974         otherwise, use seg_name array.
2975         (seg_name): Declare only if not BFD_ASSEMBLER.
2976         (section_alignment): Declare only if not BFD_ASSEMBLER.
2977         (big_section, reg_section, pass1_section, diff_section,
2978         absent_section, text_section, data_section, bss_section): If
2979         BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
2980         mapping to segT enum values.
2981         (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
2982         if these are used or defined, if BFD_ASSEMBLER.
2983         (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
2984         subseg_new split into two functions.
2985         (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
2986
2987         * as.h (volatile): Don't define if already defined.
2988         (had_errors, had_warnings): Provide prototypes for ANSI C even if
2989         NO_STDARG.
2990         (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
2991         declare with format attribute for -Wformat checking.
2992
2993 Wed Dec 30 10:18:57 1992  Ian Lance Taylor  (ian@cygnus.com)
2994
2995         * app.c, config/tc-*.c: Don't include read.h, since it is already
2996         included by as.h.
2997
2998         * These are based on patches from Minh Tran-le
2999         <mtranle@paris.intellicorp.com>.
3000         * configure.in (i[34]86-ibm-aix*): Accept i486 for host.  Use
3001         obj_format coffbfd and gas_target i386coff for target.
3002         (i[34]86-*-isc*): New host (uses sysv).
3003         * config/i386aix.mt: Removed (no longer used).
3004         * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
3005         (MINUS_G): Removed.
3006         (LDFLAGS): Added, defined as -shlib.
3007         * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
3008         * config/te-sco386.h (LOCAL_LABEL): Don't define.
3009         (DOT_LABEL_PREFIX): Define.
3010         * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
3011         name rather than L0\001.
3012         * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
3013         local_bss_counter.
3014         * symbols.c, symbols.h (local_bss_counter): Removed.
3015         * write.c (write_object_file): bss no longer uses
3016         local_bss_counter.  Pass correct data and bss size to
3017         VMS_write_object_file.
3018         * config/obj-vms.c (VMS_write_object_file): Accept bss size as
3019         argument, rather than using local_bss_counter.
3020         * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
3021         * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
3022         * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
3023         (size_section): Restored sanity check.
3024         (do_relocs_for): Base section address on s_paddr rather than
3025         computing it.  Adjust a29k R_IHIHALF special case to account for
3026         section paddr (used to require paddr to be zero).  If there are no
3027         reclos, set s_relptr to 0.  Set relocation size in object_headers.
3028         (fill_section): Always set s_vaddr here, removing
3029         ZERO_BASED_SEGMENTS case.  Force s_scnptr for bss to 0.  Don't set
3030         NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
3031         Set STYP_INFO for .comment.
3032         (coff_header_append): Use object headers and H_{SET,GET}_* macros.
3033         Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
3034         (crawl_symbols): Handle 8 character section name correctly.  Use
3035         H_{SET,GET}_* macros.
3036         (do_linenos_for): Set lineno size in object_headers.
3037         (write_object_file): Use H_{SET,GET}_* macros.  Don't bother to
3038         set s_vaddr here.  If string_byte_count remains 4, set it back to
3039         0, and only write strings out if there are some.  Call
3040         fill_section before do_relocs_for and do_linenos_for.
3041         (obj_coff_section): Handle optional quoted second argument giving
3042         section characteristics.
3043         (obj_coff_bss): Added to handle .bss.
3044         (obj_coff_ident): Added to handle .ident (puts string in .comment
3045         section).
3046         (obj_coff_lcomm): Put common symbols in .bss, not .data.
3047         (fixup_mdeps): Change to segment.  Call frag_wane after
3048         md_convert_frag.
3049         (fixup_segment): Explicitly check S_IS_COMMON before making 386
3050         adjustment (already happened only for common symbols, but this is
3051         clearer).
3052         * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
3053         * config/tc-i386.c (s_bss): Don't use if I386COFF.
3054         (md_pseudo_table): Ignore .optim and .noopt.
3055         (tc_coff_sizemachdep): New function.
3056         * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
3057         compatibility.
3058         (LOCAL_LABEL): Removed definition.
3059         (DOT_LABEL_PREFIX): Defined.
3060
3061 Mon Dec 28 10:32:05 1992  Ken Raeburn  (raeburn@cygnus.com)
3062
3063         * app.c (app_push): Use memcpy, not bcopy.
3064         (do_scrub_next_char): For \", return " not '.
3065         (symbol_chars): Now const.
3066
3067         * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
3068         and "0b".  If LOCAL_LABELS_DOLLAR, check for "0$".
3069
3070         * config/obj-coff.h: Don't use #elif.
3071
3072         * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
3073         have it.  (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
3074
3075 Wed Dec 16 12:12:33 1992  Ian Lance Taylor  (ian@cygnus.com)
3076
3077         * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
3078         already defined.
3079
3080 Tue Dec 15 12:40:11 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3081
3082         * app.c (do_scrub_begin): allow single quote strings if so
3083         configured.
3084
3085         * config/*z8k*: checkpoint
3086
3087 Sun Dec 13 00:04:38 1992  Ian Lance Taylor  (ian@cygnus.com)
3088
3089         * read.c (read_a_source_file): avoid calling xmalloc (0).
3090
3091 Sat Dec 12 15:26:34 1992  Ian Lance Taylor  (ian@cygnus.com)
3092
3093         * listing.c: Call xmalloc, not malloc; don't declare malloc.
3094
3095         * Changes to support SCO 3.2v4:
3096         * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
3097         SEG_BSS, fill with NOP_OPCODE.
3098         * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
3099         * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
3100         using ZERO_BASED_SEGMENTS.
3101         (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
3102         never set segment address for SEG_E2 (.bss) and don't write out
3103         SEG_E2 contents.  Set .init and .fini sections to STYP_TEXT.
3104         (obj_coff_endef): Don't merge labels or symbols awaiting forward
3105         definitions, and don't merge tags with non-tags.  Check for .bf
3106         rather than just checking whether the second character is b and
3107         the third character is f.
3108         (obj_coff_val): gcc can generate values which we don't handle
3109         correctly; discard information for now, since it only affects the
3110         debugging information.
3111         (tag_find_or_name): Don't insert tags in the symbol table.
3112         (yank_symbols): Don't merge labels.
3113         (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
3114         already defined.  Fill subsegments with NOP_OPCODE, not 0.  Don't
3115         set segment address if ZERO_BASED_SEGMENTS.
3116         (obj_coff_section): Accept and ignore a trailing quoted string, as
3117         used in AT&T i386 syntax.
3118         (fixup_segment): Take segment as argument.  On the i386, adjust PC
3119         relative addends by the segment vaddr.
3120         * tc-i386.h: Define SUB_SEGMENT_ALIGN.
3121         * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
3122         * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
3123
3124 Tue Dec  8 00:06:48 1992  Ken Raeburn  (raeburn@rtl.cygnus.com)
3125
3126         * config/obj-coffbfd.c: Include libcoff.h.
3127
3128         * version.c: Now version 1.93.
3129
3130 Mon Dec  7 00:39:09 1992  Ken Raeburn  (raeburn@cygnus.com)
3131
3132         * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
3133         power-of-two alignment for .align.
3134
3135         * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
3136         and leave everything else alone.
3137
3138 Fri Dec  4 16:58:42 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3139
3140         * Makefile.in (as.new): Don't bother saving as.old.
3141
3142         * write.c: Conditionalize on OBJ_VMS, not VMS.
3143         (magic_number_for_object_file): Don't define if OBJ_VMS.
3144
3145         * config/obj-vms.c: Changes for traditional C.
3146
3147 Thu Dec  3 01:24:07 1992  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
3148
3149         * config/ho-generic.h (malloc, realloc): Declare.
3150
3151         * Lots of comment/whitespace changes.
3152
3153         * write.h (struct fix): Some fields reordered, narrowed.
3154
3155         * read.c (MASK_CHAR): Define using C types, not magic number.
3156
3157         * as.c, input-file.c: Deleted some unused code.
3158
3159         * app.c, as.h: Doc fix.
3160
3161         * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
3162
3163         * as.h (xmalloc): Argument is long.
3164
3165         * xmalloc.c (error): Remove declaration; as.h takes care of it.
3166
3167         * doc/as.texinfo: Regrouped documentation of some command-line
3168         options.  Updated options documentation for m68k.  Some minor
3169         wording/punctuation changes.
3170
3171 Mon Nov 30 11:42:11 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3172
3173         * configure.in: Accept target OS "vms".
3174
3175         * symbols.c:  Merged ANSI and non-ANSI function decls, using
3176         PARAMS macro.
3177
3178         * xmalloc.c: Just include as.h, don't bother trying to figure out
3179         other header files.
3180
3181         * strstr.c, strerror.c: Deleted.
3182         * Makefile.in: Deleted references.
3183
3184         * config/tc-ns32k.c: Don't include header file for string
3185         declarations; leave that to ho-*.h.
3186
3187 Fri Nov 27 04:11:36 1992  Ken Raeburn  (raeburn at cambridge-laptop.cygnus.com)
3188
3189         * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
3190         imported from FSF sources.
3191
3192         * messages.c (strerror): Declare unconditionally.
3193
3194         * as.h: Delete alloca and register definitions.
3195
3196         * config/atof-ieee.c (mask): Now const.
3197
3198         * obstack.c, obstack.h: Deleted.
3199
3200         * as.h (flag_readonly_data_in_text): New flag.
3201         * as.c (main): Set it for -R.
3202
3203         * as.h (flag_suppress_warnings): New flag.
3204         * as.c (main): Set it for -W.
3205         * messages.c (as_warn): Check it instead of flagseen['W'].
3206
3207         * as.h (flag_always_generate_output): New flag.
3208         * as.c (main): Set it for -Z.
3209
3210         * config/tc-sparc.h: Define NEED_FX_R_TYPE.
3211         * config/tc-a29k.h: Ditto.
3212         * write.h (struct fix): Don't conditionalize fx_r_type field on TC
3213         macros.
3214
3215         * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
3216         macro.
3217         * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
3218         obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
3219         write.h: Likewise.
3220         * read.c: Likewise.
3221
3222         * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG.  Fold in
3223         xrealloc from xrealloc.c.
3224         * xrealloc.c: Deleted.
3225         * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
3226
3227         * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
3228         or vms ho- files.
3229
3230         * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
3231
3232         * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
3233         don't initialize it with NULL.
3234
3235         * config/ho-vax.h (M_VAX): Deleted; was unused.
3236
3237         * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
3238         New files imported from FSF version, contributed by Eric Youngdale.
3239         * README-vms-dbg, config/vms: Deleted.
3240
3241         * ChangeLog, config/ChangeLog: Merged.
3242
3243         * config/*tahoe*, configure.in: Tahoe support brought in from FSF
3244         version.
3245
3246         * input-file.c (input_file_open): Eliminate call to setvbuf.
3247         [USG] (setbuffer): Deleted macro.
3248
3249 Mon Nov 23 11:00:16 1992  Ken Raeburn  (raeburn@cygnus.com)
3250
3251         * all files: Whitespace changes for GNU indentation style, done by
3252         GNU `indent'.  Some cleanup still needed, especially of comments.
3253
3254         * configure.in: No te-386bsd.h file exists; don't try to use it.
3255
3256         * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
3257
3258         * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
3259         could be doing emulation.
3260
3261 Thu Nov 19 11:47:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3262
3263         z8000 documentation
3264         * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
3265         all modified.
3266
3267 Tue Nov 10 09:49:24 1992  Ian Lance Taylor  (ian@cygnus.com)
3268
3269         * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
3270
3271         * subsegs.h: add extern to segment_info declaration.
3272
3273         * read.h: added extern declarations for comment_chars,
3274         line_comment_chars, and line_separator_chars.
3275         read.c, app.c: removed definitions of comment_chars,
3276         line_comment_chars, and line_separator_chars.
3277
3278         * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
3279         still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
3280         the register name.
3281         (insert_reg): put REGISTER_PREFIX before register names before
3282         putting them in the symbol table.
3283         * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
3284         M68KCOFF.
3285
3286         * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
3287         section.
3288
3289         * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
3290         comment_chars, line_comment_chars and line_seperator_chars
3291         consistently const, and always initialized them.  Included read.h.
3292
3293 Thu Nov  5 17:55:41 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
3294
3295         * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
3296         constant will not fit in an immediate field.
3297         (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
3298
3299 Wed Nov  4 07:50:46 1992  Ken Raeburn  (raeburn@cygnus.com)
3300
3301         * obj-coff.c (callj_table): Delete global variable.
3302         (obj_emit_relocations): Define it locally here, and only if
3303         TC_I960 is defined.
3304
3305         * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
3306         (m68k_ip): Don't warn about bignum used as float bit-pattern.
3307
3308         * obj-coff.c: Replaced ANSI and non-ANSI function declarations
3309         with a single set using PARAMS macro.
3310
3311         * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
3312         of 2.
3313
3314         * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
3315
3316         * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
3317         so widening works consistently.
3318
3319 Wed Oct 28 08:52:34 1992  Ken Raeburn  (raeburn@cygnus.com)
3320
3321         * version.c: Put conditional "const" before version_string, not
3322         before dummy function for VMS.  Now version 1.91.03.
3323
3324         * app.c (do_scrub_next_char): Need double-\ before `000' to show
3325         printed rep of null character.
3326
3327 Fri Oct 23 14:40:38 1992  Ian Lance Taylor  (ian@cygnus.com)
3328
3329         * obj-coffbfd.c (write_object_file): check return value of
3330         bfd_close_all_done.
3331
3332 Tue Oct 20 12:18:08 1992  Ian Lance Taylor  (ian@cygnus.com)
3333
3334         * Support for i386-sysv.
3335         obj-coffbfd.c (do_relocs_for, write_object_file): set segment
3336         addresses to reasonable sizes.  New define ZERO_BASED_SEGMENTS can
3337         be used to set them all to zero as was done before.
3338         (fill_section): segment addresses now set in write_object_file.
3339         (fill_section): Don't set STYP_NOLOAD for .bss section.
3340         (fixup_segment): 386 uses strange common symbol format.
3341         tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
3342         compatibility with SVR3.2 linker.
3343         * configure.in: i386-sysv and i386-sco use coffbfd.
3344
3345         * app.c (do_scrub_next_char): discard whitespace after a label.
3346
3347 Sat Oct 10 12:33:45 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3348
3349         * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
3350         hosts, use the sysv configuration for solaris2
3351
3352 Mon Oct  5 09:28:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3353
3354          fix i960+non-bfd coff bit rot.
3355         * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
3356         support for C source listings. (obj_coff_endef): look in the right
3357         part of the symbol for the symbol name
3358
3359         * tc-m68k.c (get_num): make it work for all segments, not just the
3360         first three.
3361
3362 Mon Oct  5 03:30:36 1992  Mark Eichin  (eichin at tweedledumber.cygnus.com)
3363
3364         * configure.in: recognize i386-*-bsd emulation.
3365
3366 Thu Oct  1 23:05:12 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3367
3368         * configure.in: use the cpu-vendor-os triple for host and target
3369
3370 Tue Sep 29 12:22:52 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3371
3372         * obj-coffbfd.c (write_object_file): don't fixup for the z8k
3373         * tc-z8k.c: lots of bug fixes
3374
3375 Tue Sep 29 10:51:55 1992  Ian Lance Taylor  (ian@cygnus.com)
3376
3377         * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
3378         #elif, since it is not supported by old compilers.
3379         ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
3380         couple of expressions in tc-m68k.c.
3381
3382 Mon Sep 28 21:18:24 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3383
3384         * read.c (cons): If NO_RELOC is defined, use it.
3385
3386         * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
3387
3388 Fri Sep 25 18:18:52 1992  Ian Lance Taylor  (ian@cygnus.com)
3389
3390         * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
3391         local labels to start with a .) and set REGISTER_PREFIX to %.
3392         tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
3393
3394 Fri Sep 25 17:53:43 1992  John Gilmore  (gnu@cygnus.com)
3395
3396         * messages.c:  Comment changes.
3397
3398 Fri Sep 25 14:12:58 1992  Ken Raeburn  (raeburn@kyriath.cygnus.com)
3399
3400         * as.h: Test if __STDC__ is defined only, don't test its value.
3401         * messages.c: If __STDC__ is not defined, define NO_STDARG.
3402
3403 Thu Sep 24 12:42:32 1992  Brendan Kehoe  (brendan@rtl.cygnus.com)
3404
3405         * listing.c (debugging_pseudo): Add stabs and stabn as things to
3406         ignore.
3407
3408 Tue Sep 22 13:02:07 1992  Sean Eric Fagan  (sef@cygnus.com)
3409
3410         * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
3411         sections starting from zero, rather than making them consecutive.
3412         This makes subsequent reloc calculations easier, esp if the object
3413         format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
3414         allocate lcomm in .data rather than in .bss.  It seems that some
3415         tools can't cope with a non-zero sized bss before linkage.
3416
3417 Tue Sep 22 15:10:51 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3418
3419         * tc-m68k.c: Replace "enum m68k_architecture" with "int"
3420         throughout.  That enum no longer means what we thought it meant.
3421
3422         * tc-m68k.c (md_assemble, md_parse_option): Handle new
3423         "-mno-688[58]1" options.
3424
3425         * tc-m68k.c: Added CPU32 support.
3426
3427 Fri Sep 18 08:02:18 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3428
3429         * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
3430
3431 Tue Sep 15 17:25:05 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
3432
3433         * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
3434         Change LIBDEPS dependence to LIBS.
3435
3436 Tue Sep 15 15:32:02 1992  Ian Lance Taylor  (ian@cygnus.com)
3437
3438         * Makefile.in (install): if $(tooldir) exists, install as in
3439         $(tooldir)/bin.
3440
3441 Sun Sep 13 20:30:10 1992  Ian Lance Taylor  (ian@cygnus.com)
3442
3443         * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
3444         .word is < -32768 or > 32767.  The -J flag causes the error to be
3445         ignored.  This is to catch over-sized switches generated by gcc on
3446         systems which don't support the broken .word hack.
3447         as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
3448         write.c (fixup_segment): check for signed .word overflow if
3449         WARN_SIGNED_OVERFLOW_WORD.
3450
3451         * write.c (fixup_segment): fixed missing parens in expression
3452         checking for byte or word overflow.
3453
3454         * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
3455         obj-coffbfd.c (fixup_segment): check for signed .word overflow if
3456         WARN_SIGNED_OVERFLOW_WORD.
3457
3458         * obj-coffbfd.c (fixup_segment): fixed missing parens in
3459         expression checking for byte or word overflow.
3460
3461 Fri Sep 11 10:21:04 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3462
3463         Support for i386 coff
3464         * obj-coffbfd.h : added stuff
3465         * tc-i386.c (tc_coff_fix2rtype): new function
3466         * tc-i386.h : new coff defines
3467
3468 Thu Sep 10 09:23:15 1992  Ian Lance Taylor  (ian@cygnus.com)
3469
3470         * input-scrub.c (input_scrub_push): call input_file_begin, not
3471         input_scrub_begin.
3472         messages.c (as_perror): print ": " between the passed in error and
3473         the strerror, like perror does.
3474
3475 Wed Sep  9 11:06:25 1992  Ian Lance Taylor  (ian@cygnus.com)
3476
3477         * Makefile.in: use gas_target instead of modifying target_cpu.
3478         From Steve Chamberlain:
3479         Makefile.in: Handle m68*-*-coff*.
3480         read.c, read.h: add mult argument to s_space
3481
3482         * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
3483          Motorola and MIT syntax; gas can now assemble either type of
3484          file.
3485         tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
3486         From Steve Chamberlain:
3487         m68kcoff.mt: for m68k COFF.
3488         obj-coffbfd.c: (fixup_mdeps) added
3489          (size_section) removed bad sanity check
3490          (fill_section) added rs_machine_dependent case
3491          (write_object_file) call fixup_mdeps
3492          (fixup_segment) set fx_subsy to 0.
3493         obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
3494          handle m68k.
3495         tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
3496          pseudo ops.
3497
3498 Tue Sep  8 17:10:58 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3499
3500         * Makefile.in (LIBS): Include opcode library.
3501
3502 Fri Sep  4 18:20:56 1992  Ken Raeburn  (raeburn@cygnus.com)
3503
3504         * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
3505         including zero are accepted, pass +0.0.
3506
3507 Sun Aug 30 21:24:46 1992  Ian Lance Taylor  (ian@cygnus.com)
3508
3509         * Makefile.in: map "as" through program_transform_name when
3510         installing.
3511
3512         * doc/Makefile.in: map "as" through program_transform_name when
3513         installing.
3514
3515 Sat Aug 29 12:11:12 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
3516
3517         * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
3518
3519 Fri Aug 28 16:25:22 1992  Ian Lance Taylor  (ian@cygnus.com)
3520
3521         * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
3522         tc-i960.c (md_ri_to_chars): Always output bout object file in
3523         little endian byte order (used to use endianness of host).
3524
3525 Tue Aug 25 15:50:48 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3526
3527         * config/tc-m68k.c (init_table): Now const.  Always include 68851
3528         data, so that "bc" is available to 68040 cache instructions.
3529         Added "tt0", "tt1", and 68ec030 variants.
3530         (md_assemble): Complain if 68000 (only) and 68881 are specified.
3531         (enum _register): Added TT0, TT1.
3532         (m68k_ip, cases '3' and 't'): Handle new operand type codes.  Pass
3533         line number correctly in "internal error" messages.  Don't print
3534         architecture-mismatch message for operand errors.
3535
3536         From Colin Smith (colin@wrs.com):
3537         * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
3538         than install_operand.
3539
3540 Tue Aug 25 15:13:48 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3541
3542         * listing.c (buffer_line): rewind to the start of include
3543         files, they might be included twice.
3544
3545         * z8k.c, z8k.h, z8k.mt: z8000 support stuff
3546
3547 Mon Aug 24 12:45:43 1992  Ian Lance Taylor  (ian@cygnus.com)
3548
3549         * Makefile.in: defined TARGET_CPU for C code so that it can choose
3550         one element of a family.
3551
3552         * tc-m68k.c: use TARGET_CPU to choose default cpu type.
3553
3554         * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
3555         so that we can assemble hand-written libgcc code.
3556
3557 Fri Aug 21 14:38:44 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3558
3559         * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
3560         has already been formatted (but may still contain %-characters).
3561         (as_bad): Likewise.
3562
3563 Wed Aug 19 11:20:59 1992  Ian Lance Taylor  (ian@cygnus.com)
3564
3565         * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
3566         written with indirection on the last two operands, which can be
3567         either data or address registers.  Added a new operand type 'r'
3568         which accepts either register type.  Added '(' to notend stuff in
3569         tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
3570
3571 Wed Aug 19 09:25:09 1992  Ken Raeburn  (raeburn@cygnus.com)
3572
3573         * as.h (enum _relax_state): Start off at one, not zero, to better
3574         catch uninitialized-variable errors.
3575         (linkrelax): Declare new variable.
3576
3577         * messages.c (warning_count, error_count): Default initializer is
3578         sufficient.
3579
3580         * write.c: Merged some declarations, using PARMS macro.
3581         (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
3582         data_last_frag): No longer static.
3583         (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
3584         defined, call it.  Change segments before calling fixup_segment.
3585         (relax_align): If linkrelax, provide extra padding.
3586
3587         * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
3588         their not having symbols associated.
3589
3590         * tc-i960.c (norelax, instrument_branches): Default initializer is
3591         sufficient.
3592         (linkrelax): Delete variable definition.
3593         (mem_fmt): Call fix_new with NO_RELOC.
3594         (tc_bout_fix_to_chars): Handle alignment relocs.
3595         (i960_handle_align): New function.
3596         * tc-i960.h (linkrelax): Delete declaration.
3597         (HANDLE_ALIGN): New macro; calls i960_handle_align.
3598         (NEED_FX_R_TYPE, NO_RELOC): New macros.
3599
3600 Tue Aug 18 14:59:21 1992  Ken Raeburn  (raeburn@cygnus.com)
3601
3602         * config/sparc.mt: New file.  Grab sparc opcode table from bfd
3603         library.
3604
3605 Tue Aug 18 14:16:38 1992  Ian Lance Taylor  (ian@cygnus.com)
3606
3607         * Makefile.in: always create installation directories.  Removed
3608         MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
3609         FLAGS_TO_PASS to recursive makes.
3610
3611         * doc/Makefile.in: always create installation directories.
3612
3613 Mon Aug 17 15:09:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3614
3615         * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
3616         being used with args swapped, causing occasional lossage when
3617         refilling buffers after an include file.
3618
3619 Mon Aug 17 13:18:51 1992  Ken Raeburn  (raeburn@cygnus.com)
3620
3621         * messages.c (as_tsktsk): Use correct ANSI form for stdarg
3622         version.  Discard bogus DONTDEF version.
3623         (as_warn, as_bad, as_fatal): Likewise.
3624
3625 Fri Aug 14 18:31:14 1992  Ken Raeburn  (raeburn@cygnus.com)
3626
3627         * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
3628         selected architecture, print a message saying so and listing what
3629         processors support it, rather than saying "operands mismatch".
3630
3631 Thu Aug 13 13:53:19 1992  Ken Raeburn  (raeburn@cygnus.com)
3632
3633         * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
3634
3635         * config/ho-rs6000.h (M_RS6000): Don't define it.
3636         (free): Declare it.
3637         (BROKEN_ASSERT): Define it if not __STDC__.
3638
3639 Tue Aug 11 12:58:14 1992  Ken Raeburn  (raeburn@cygnus.com)
3640
3641         * sparc.mt: New file.
3642
3643 Mon Aug 10 14:37:08 1992  Per Bothner  (bothner@cygnus.com)
3644
3645         * tc-m68k.c: ".align N" means align to N-byte boundary *only*
3646         if TN_SUN3; otherwise align to 2**N-byte bounary.
3647
3648 Thu Aug  6 12:10:39 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3649
3650         * read.c (s_fill): make the .fill size clamped error a warn and
3651         fix bug where 0's were always placed.
3652
3653         * config/tc-h8300.c: if a :8 is seen after an operand, fill top
3654         two bytes of any constant with 0xff:
3655
3656 Wed Aug  5 12:02:40 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3657
3658         * config/tc-m68k.c (md_pseudo_table): fix the .align thing
3659         the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
3660
3661 Wed Aug  5 01:54:34 1992  John Gilmore  (gnu at cygnus.com)
3662
3663         * tc-m68k.c (try_index):  Error if index scaling specified and
3664         assembling for an older CPU than a 68020.
3665
3666 Sat Aug  1 19:10:13 1992  Ken Raeburn  (raeburn@cygnus.com)
3667
3668         * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
3669         fx_offset into account.
3670
3671 Fri Jul 31 21:53:28 1992  Ken Raeburn  (raeburn@cygnus.com)
3672
3673         * configure.in (mips host): Accept "ultrix" with version number.
3674
3675         * expr.c (floating_constant): Separate "=-" to avoid confusing
3676         ancient or broken compilers.
3677
3678         * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
3679         processor/opcode mismatch, so reword the error message.
3680         (md_assemble): If no CPU has been set (even if FPU/PMMU
3681         characteristics have been), default to 68020.  Don't need extra
3682         quotes around error string.
3683
3684 Fri Jul 31 12:26:34 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
3685
3686         * read.c (potable): Revert sac's incorrect change made Jul 13.
3687         Align really is supposed to be ptwo not nbytes.
3688
3689 Mon Jul 20 02:51:59 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
3690
3691         * Makefile.in: _Do_ include libiberty.  (from sef)
3692
3693 Fri Jul 17 15:15:28 1992  Ken Raeburn  (raeburn@cygnus.com)
3694
3695         * expr.c (integer_constant): Handle "0f" and "0b" label references
3696         properly.
3697
3698 Thu Jul 16 08:20:17 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3699
3700         * write.c (fixup_segment): if relaxing, don't do anything.
3701         * config/obj-bout.[ch] : maintain the a_relaxable file header info
3702         * config/tc-i960.c: new option -linkrelax
3703
3704 Mon Jul 13 14:11:36 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3705
3706         * expr.c (expr): allow SEG_BSS in expressions
3707         * read.c (potable): align should be nbytes, not ptwo!
3708         * write.c (write_object_file): extra glue for new bss attributes
3709         (relax_segment): SEG_BSS is ok now
3710         * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
3711
3712 Mon Jul  6 17:09:32 1992  Steve Chamberlain  (sac@cygnus.com)
3713
3714         * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
3715
3716 Mon Jun  1 16:20:22 1992  Michael Tiemann  (tiemann@cygnus.com)
3717
3718         * configure.in: recognize m680x0 as having sun3 emulation mode for
3719         vxworks environment.
3720
3721
3722 Tue Jun 30 20:25:54 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
3723
3724         * Makefile.in: Add program_suffix (parallel to program_prefix)
3725
3726 Wed Jun 24 10:57:54 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3727
3728         * app.c (process_escape): new function to handle escapes the right
3729         way, (do_scrub_next_char): use new function
3730         * cond.c (s_ifdef): do ifdef/ifndef right
3731         * read.c (s_fill): make the , expressions optional like the doc
3732         says
3733         * config/tc-h8300.[ch]: better warnings
3734
3735 Tue Jun  9 07:54:54 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3736
3737         * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
3738         as data0_frchainP
3739
3740         * write.c (write_object_file): various changes to handle data in
3741         the BSS segment in much the same was as stuff in the DATA segment.
3742
3743         * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
3744         pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
3745         68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
3746         the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
3747         it into SEG_BSS
3748
3749 Thu Jun  4 11:59:13 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3750
3751         * expr.c(expr): allow SEG_REGISTER in expressions.
3752         * read.c(pseudo_set): register expressions can be the source of a
3753         set.
3754         * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
3755         goto SEG_TEXT (if a.out)
3756         * write.c (write_object_file): If a.out don't use the old way for
3757         -R.
3758         * config/obj-a.out (s_sect): complain if the user tries to use a
3759         subsegment with a value which might interfere with out -R hackery.
3760         * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
3761         rather than use ugly if tree. (init_regtable): insert register
3762         names into symbol table.
3763
3764 Tue Jun  2 16:47:09 1992  Steve Chamberlain (sac@cygnus.com)
3765
3766         * write.c (write_object_file): keep the fix_tail clean, which
3767         fixes a bug in -R where relocations were being lost.
3768
3769 Mon Jun  1 16:20:22 1992  Michael Tiemann  (tiemann@cygnus.com)
3770
3771         * configure.in: recognize m680x0 as having sun3 emulation mode for
3772         vxworks environment.
3773
3774 Sun May 31 05:33:00 1992  david d `zoo' zuhn (zoo@cygnus.com)
3775
3776         * configure.in: recognize m680x0 as an m68k
3777
3778 Thu May 28 11:22:02 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
3779
3780         * configure.in: Recognize sparclite as a sparc variant.
3781
3782         * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro.  Mention new
3783         -Asparclite flag.
3784
3785 Tue May 26 16:47:56 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3786
3787         * config/tc-a29k.c: lint
3788         * listing.c, expr.c: patches from Andrew Smith
3789
3790 Thu May 14 17:22:48 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
3791
3792         * doc/Makefile.in: use m4 rather than gm4.
3793
3794 Mon May  4 18:56:19 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3795
3796         * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
3797         calc the base of relocs correctly.
3798         * tc-a29k.c (parse_operand): allow expressions to be in any section.
3799
3800 Mon Apr 27 13:13:31 1992  K. Richard Pixley  (rich@cygnus.com)
3801
3802         * as.c, write.c: use -K rather than -k for the broken word warning
3803           option.
3804
3805 Tue Apr 21 13:35:30 1992  K. Richard Pixley  (rich@cygnus.com)
3806
3807         * Makefile.in: do not print recursion lines.
3808
3809 Wed Apr 15 21:19:31 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
3810
3811         * Makefile.in: the tooldir copy of gas goes directly in tooldir.
3812
3813 Tue Apr 14 14:50:22 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
3814
3815         * write.c (write_object_file): For b.out format, round up section
3816         start addresses to match required alignment.
3817
3818 Thu Apr  9 05:45:29 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
3819
3820         * Makefile.in (install): Install into $(tooldir)/bin, since that's
3821         where gcc looks for it.
3822
3823 Tue Apr  7 15:12:15 1992  Sean Eric Fagan  (sef@cygnus.com)
3824
3825         * Makefile.in:  Changed some lines to be less confusing for some
3826         makes.
3827
3828         * input-file.c:  Conditionalize on _IOFBF, not VMS.
3829
3830         * read.c, write.c:  Change a series of ifdef/elif to
3831         ifdef/else/ifdef etc.
3832
3833 Fri Mar 27 12:21:16 1992  K. Richard Pixley  (rich@cygnus.com)
3834
3835         * symbols.c (fb_label_init): fix sizeof to memset.
3836
3837 Fri Mar 13 15:45:44 1992  K. Richard Pixley  (rich@cygnus.com)
3838
3839         * Makefile.in: install the man page.
3840
3841         * Makefile.in: pass down MAKEINFO explicitly on info.
3842
3843         * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
3844
3845 Fri Mar 13 08:03:03 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3846
3847         * flonum-const.c: renamed flonum-konst.c to stop dos name
3848         conflict.
3849
3850 Thu Mar 12 04:42:38 1992  K. Richard Pixley  (rich@cygnus.com)
3851
3852         * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
3853           tc-m68k.h to te-sun3.h.
3854
3855 Wed Mar 11 23:32:42 1992  K. Richard Pixley  (rich@cygnus.com)
3856
3857         * configure.in: vxworks68 gets te-sun3.h.
3858
3859         * expr.c: remove limitation that local_labels_dollar or
3860           local_labels_fb must be < 10.
3861
3862         * symbols.c: remove local_labels_dollar, replace with a function
3863           interface for a sparse array.  All users adjusted.
3864
3865         * te-sun3.h: add LOCAL_LABELS_DOLLAR.
3866
3867 Sat Mar  7 00:06:25 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
3868
3869         * doc/Makefile.in: commented out line for building as-all.texinfo.
3870           This is temporary.
3871
3872         * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
3873
3874 Fri Mar  6 21:57:18 1992  K. Richard Pixley  (rich@cygnus.com)
3875
3876         * Makefile.in: added check target.
3877
3878 Tue Mar  3 15:45:56 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
3879
3880         * Makefile.in: added tooldir and program_prefix.
3881
3882 Sun Mar  1 04:43:19 1992  Michael Tiemann  (tiemann@cygnus.com)
3883
3884         * write.{c,h} (fix_new): Make these declarations consistent.
3885
3886 Sat Feb 29 13:59:10 1992  Michael Tiemann  (tiemann@cygnus.com)
3887
3888         * Makefile.in (strerror.o): Add rule so that broken Sun make can
3889         work in subdirs.
3890
3891 Wed Feb 26 19:26:28 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
3892
3893         * read.c, obj-coffbfd.c : fix h8300 specific bit rot
3894
3895         * expr.c (operand): if can't work out what sort of operand it is,
3896         then look through FLT_CHARS for a hint.
3897
3898 Wed Feb 26 18:04:40 1992  K. Richard Pixley  (rich@cygnus.com)
3899
3900         * Makefile.in, configure.in: removed traces of namesubdir,
3901           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
3902           copyrights to '92, changed some from Cygnus to FSF.
3903
3904         * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
3905           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
3906           copyrights to '92, changed some from Cygnus to FSF.
3907
3908 Tue Feb 25 14:17:15 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
3909
3910         * expr.c: If an expression is single comma, then return with
3911         SEG_ABSENT rather than an error - since the sparc front end does
3912         really strange things with things like fbge,a
3913
3914         * as.h: include bfd.h if using many sections
3915         * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
3916         local labels didn't work.
3917         * listing.c (list_symbol_table): don't core dump when there's no
3918         symbol there.
3919         * write.c, write.h: call fix_new with the right number of args on
3920         the H8.
3921         * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
3922         errors nices
3923
3924 Sat Feb 22 12:26:28 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
3925
3926         * app.c: MRI compatibility - allow single quote to start a string.
3927         * as.c: fix typo recently introduced.
3928         * as.h : Don't include aout/reloc.h - it's not right for COFF!
3929         * expr.c: Much rewriting, to accomodate MRI syntax for
3930         expressions. Also easier to read now.
3931         * listing.c: Put back defuns
3932         * read.c: modified to accept MRI syntax, put back listing pseudo
3933         ops so that an assembler built with NO_LISTING ignores list ops
3934         rather than pukes.
3935         * write.c, write.h: fixs - only keep a reloc type in a fix if the target
3936         machine is a SPARC or a 29K.
3937         * config/obj-aout.c: added s_sect pseudo op
3938         * config/obj-coffbfd.c: lints, set the filehdr flags right and
3939         fill in the timestamp.
3940         * config/obj-coffbfd.h: Since we don't include aout/reloc.h
3941         anymore, define all the relocs which the tc-<x> bit will use so we
3942         can translate from them to the coff types.
3943         * config/tc-a29k.c: reloc_type isn't ane enum any more
3944         * config/tc-m68k.c: Added NO_RELOC definition.
3945
3946 Fri Feb 21 06:21:07 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
3947
3948         * Makefile.in: put header files before C source for TAGS; remove
3949           references to non-existent syscalls.h.
3950
3951         * read.c, write.c subsegs.c: back out the .bss changes.
3952
3953         * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
3954
3955         * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
3956
3957         * a.out.h: removed.
3958
3959 Fri Feb 21 01:08:48 1992  Minh Tran-Le (TRANLE@INTELLICORP.COM)
3960
3961         * symbols.c (local_label_name): symbols now start with ^A.
3962
3963         * read.c, subsegs.c, write.c obj-coff.c: added handling of
3964           `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
3965           generate these sections.  .align: will use NOP_OPCODE or 0
3966           for padding. This is just for being nice to the
3967           disassembler.
3968
3969         * expr.c (operand): changed to generate local label "\001L0"
3970           starting with a ^A so that it is recognized as a local label.
3971
3972         * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
3973
3974         * tc-i386.c: tc-i386.c: added handling of the following opcodes:
3975           i/o opcodes - inb, inw, outb and outw.  string manipulation with
3976           att syntax - scmp, slod, smov, ssca, ssto.
3977
3978         * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
3979           to just after .file .
3980
3981           In obj_crawl_symbol_chain() where it tries to put the external
3982           symbols apart, with the condition:
3983             (!S_IS_DEFINED(symbolP) &&
3984              !S_IS_DEBUG(symbolP) &&
3985              !SF_GET_STATICS(symbolP))
3986           it was moving too many symbols out. So I switch it back to the
3987           condition:
3988             (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
3989
3990           In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
3991           so that we don't use the F_RELFLG which make the linker complain
3992           that somebody has stripped the relocation info.
3993
3994           Also, the AIX ld program require that the relocation table
3995           is sorted by r_vaddr like the standard ATT assembler does.
3996
3997           [he also changed the sizeof(struct ...)'s into the coff
3998           style FOOSZ macros.  I'm not sure this is right, but I can't
3999           remember why.  xoxorich.]
4000
4001 Fri Feb 21 01:08:48 1992  K. Richard Pixley  (rich@cygnus.com)
4002
4003         * Makefile.in, configure.in, doc: use the doc.  Build it, install
4004           it, clean it, etc.
4005
4006 Tue Feb 18 02:21:25 1992  K. Richard Pixley  (rich at cygnus.com)
4007
4008         * read.c: white space and comments only.
4009
4010         * configure.in: use the new atof-ns32.c for ns32k.
4011
4012         * write.c: comment change only.
4013
4014         * tc-m88k.[hc]: pulled in from hack's unfinished work.  These
4015           aren't yet integrated.
4016
4017         * tc-i860.[hc]: blew off the dust.  Something must still be done
4018           about conflicting relocation types.
4019
4020         * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
4021           real thing.
4022
4023         * tc-i960.c, tc-sparc.c: white space and comments only.
4024
4025         * tc-a29k.h: delete duplicate macro definition.
4026
4027         * new file atof-ns32k.c copied from hack's last unreleased gas.
4028
4029 Mon Feb 17 07:51:06 1992  K. Richard Pixley  (rich at cygnus.com)
4030
4031         * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
4032           rather than abort.
4033
4034         * nearly everything.  flush ChangeLog, package as gas-1.92.1.
4035           ChangeLog's prior to this are sketchy at best.  I have logs.
4036           They just aren't ChangeLogs.