]> Git Repo - binutils.git/blob - gas/ChangeLog
7a93cca19566b128e3b7f7ec58f80b88570893f6
[binutils.git] / gas / ChangeLog
1 Thu Dec  8 17:48:25 1994  Ken Raeburn  <[email protected]>
2
3         * configure.in (ns32k-pc532-mach*): Select correct emulation.
4         (mips-sony-bsd*): Use ecoff.
5         (mips-*-gnu*): New target, using aout format, from Roland McGrath.
6         * configure: Regenerated.
7
8 start-sanitize-arc
9 Tue Nov 29 18:12:22 1994  Doug Evans  <[email protected]>
10
11         * configure.in (arc-*-elf*): Recognize.
12         * configure: "regenerated".
13         * config/tc-arc.c, config/tc-arc.h, config/arc.mt: New files.
14 end-sanitize-arc
15
16 Tue Nov 29 13:58:10 1994  Ken Raeburn  <[email protected]>
17
18         Use libiberty version of xmalloc:
19         * Makefile.in (REAL_SOURCES): Delete xmalloc.c.
20         (OBJS): Delete xmalloc.o.
21         (xmalloc.o): Delete dependencies.
22         * as.c (main): Call xmalloc_set_program_name once program name is
23         known.
24
25         * config/tc-alpha.c (in_range_signed, in_range_unsigned): New
26         routines, split from in_range.
27         (in_range): Deleted.  All calls changed to in_range_*signed.
28         (create_lita_section): Macro deleted.  Single use expanded in
29         place.
30         (alpha_ip): Handle `t' and `8' operand types.
31         (md_apply_fix): Handle BFD_RELOC_12_PCREL.  Print name of
32         unhandled relocation types.
33         * config/alpha-opcode.h: Added HALT and DRAINA.  Disabled MOVI,
34         since it doesn't work, and isn't supported by the native
35         assembler.
36
37         * input-scrub.c: Change wording of a comment to avoid interference
38         with Cygnus source-control tools.
39
40         * as.h (errno) [NEED_DECLARATION_ERRNO]: Declare.
41
42         * config/tc-m68k.c (init_table): List buscr and pcr control
43         registers.
44         (m68k_ip, case 'J'): Handle them.
45
46         Delete signal handler code.  It's been disabled since March 1993
47         without complaints.
48         * as.c: Don't include signal.h.
49         (got_sig): Unused function deleted, declaration deleted.
50         (SIGTY): Macro deleted.
51         (main): Deleted disabled code for establishing signal handler.
52
53 start-sanitize-rce
54         Tiemann should've noted something like this:
55         * config/tc-rce.c, config/tc-rce.h: New files.
56         * as.c (main) [TC_RCE]: Call dump_literals.
57         * configure.in: Handle rce-*-aout.
58         * configure: Regenerated.
59 end-sanitize-rce
60
61 Mon Nov 28 11:37:35 1994  Doug Evans  <[email protected]>
62
63         * app.c (do_scrub_next_char): Insert missing newline at end of file
64         like warning says we do.
65
66 Mon Nov 28 00:11:15 1994  Jeff Law  ([email protected])
67
68         * config/tc-hppa.h (pa_check_eof): Declare new extern function.
69         (tc_frob_file): Define to call pa_check_eof.
70
71         * config/tc-hppa.c (pa_check_current_space_and_subspace): New
72         function to verify the current space and subspace are reasonable.
73         Call for the appropriate pseudo-ops and before instruction parsing.
74         (pa_check_eof): New function to verify enter/exit and proc/procend
75         pairs match at EOF.
76         (pa_code): Simplify.
77
78         * config/obj-som.c: Delete #if 0 code.
79
80 Wed Nov 23 19:36:09 1994  Steve Chamberlain  ([email protected])
81
82         * config/obj-coff.h (TARGET_FORMAT): Select between coff-shl and coff-sh.
83         * config/sh.mh (TARG_CPU_DEPENDENTS): Get it right.
84         * config/tc-sh.c  (little): New function.
85         (md_parse_option): Notice new option.
86         (build_relax, build_Mytes, md_atof, md_convert_frag, md_apply_fix):
87         Cope with little endian data.
88         * config/tc-sh.h (COFF_MAGIC, LISTING_HEADER): Endian dependent.
89
90 Wed Nov 23 10:54:38 1994  Jeff Law  ([email protected])
91
92         * config/tc-hppa.c (tc_gen_reloc, ELF variant): Revert last
93         change.  The real bug was in bfd/elfcode.h and has been fixed.
94
95 Tue Nov 22 23:31:20 1994  Jeff Law  ([email protected])
96
97         * config/tc-hppa.c (tc_gen_reloc, ELF variant): Add section->vma
98         to the relocation's offset.
99
100 Tue Nov 22 14:37:58 1994  Steve Chamberlain  ([email protected])
101
102         * Makefile.in (INSTALL_XFORM): Fix typo.
103
104 Tue Nov 22 10:23:25 1994  J.T. Conklin  <[email protected]>
105
106         * config/tc-alpha.c (s_alpha_set): Ignore the .set (no)move and
107           .set (no)volatile directives.
108
109 Tue Nov 15 21:44:13 1994  Jeff Law  ([email protected])
110
111         * config/tc-hppa.c (pa_subspace): Make sure to always reset
112         current_subspace.
113         (pa_text, pa_data): Likewise.
114
115         * config/tc-hppa.c (pa_align): New function.  Aligns the current
116         offset within the current subspace along with updating the
117         alignment of the subspace itself.
118         (pa_subspace): Default alignment to one byte rathern than zero
119         bytes to avoid setting alignment to log2(0).
120         (md_pseudo_table): Use pa_alignment for .align.
121
122 Tue Nov 15 15:24:45 1994  Ken Raeburn  <[email protected]>
123
124         * messages.c (as_fatal): Always put a space after "fatal error:"
125         when printing message.
126
127 Tue Nov 15 11:10:43 1994  Jeff Law  ([email protected])
128
129         * config/tc-hppa.h (obj_frob_symbol): Delete.
130         (tc_frob_symbol): Make definition conditional on OBJ_SOM or
131         OBJ_ELF.  For ELF subtract out symbol->section->vma for non common
132         symbols.
133
134 Wed Nov  9 14:53:03 1994  Ken Raeburn  <[email protected]>
135
136         * config/te-delta.h: New file, derived from te-sysv32.h.
137
138 Wed Nov  9 11:52:44 1994  Ian Lance Taylor  ([email protected])
139
140         * config/tc-ppc.c (ppc_bf): Always set coff_line_base.
141
142 Mon Nov  7 01:58:49 1994  Ken Raeburn  <[email protected]>
143
144         * Makefile.in (VERSION): Bump to 2.5.3.
145
146         * configure.in: Compare generic cpu name against "sparc", not
147         "sparc*", since sparc variants should be changed to "sparc".
148         * configure: Regenerated with autoconf 2.1.
149
150         * config/tc-a29k.c (octal, toHex): Variables deleted.
151         (isoctal): Macro deleted.
152         (md_begin): Don't initialize them.
153         (machine_ip, case 'P'/'A'): For absolute operand, generate an
154         error message if it's out of range.
155         (md_apply_fix, case RELOC_JUMPTARG): Check range for PC-relative
156         jumps.
157         (md_apply_fix): Delete code inside "#if 0".
158
159 Thu Nov  3 20:20:40 1994  Ken Raeburn  <[email protected]>
160
161         * config/go32.mh: Unused file deleted.
162
163         * read.c (get_absolute_expression): Indicate that the error may
164         merely be that the expression can't currently be reduced.
165
166 Thu Nov  3 16:09:59 1994  J.T. Conklin  ([email protected])
167
168         * config/tc-m68k.h (TARGET_FORMAT): If TE_NetBSD define as
169           "a.out-m68k-netbsd".
170         * config/tc-sparc.h (TARGET_FORMAT): If TE_NetBSD define as
171           "a.out-sparc-netbsd".
172
173         * config/te-nbsd.h: New file, NetBSD target emulation
174         * config/te-netbsd.h: Removed.
175         * configure.in (i[345]86-*-netbsd*,m68*-*-netbsd*,sparc*-*-netbsd*): 
176           Set bfd_gas.  Use nbsd emulation.
177
178 Thu Nov  3 17:44:47 1994  Ken Raeburn  <[email protected]>
179
180         Changes from net 2.5.2 release branch:
181
182         * configure.in: Put AC_DEFINE(sparcv9) on its own line, so that
183         the shell variable settings associated with it are permanent.  For
184         CPUs requiring bfd_gas=yes, select it based on CPU only, not
185         individual target names.  Handle m68k-hp-hpux*, not just -hpux.
186
187         * config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument
188         to match prototype in obj-coff.h.
189
190         * configure.in: Skip tests for defining WANT_FOPEN_BIN and
191         IBM_COMPILER_SUX.
192         * acconfig.h: Deleted them.
193         * configure, conf.in: Rebuild with autoconf 2.0.
194         * config/go32.cfg, config/vms-conf.h: Updated.
195
196         * config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
197         IBM_COMPILER_SUX version of code, with comments indicating why.
198
199         * listing.c (file_info): Use text mode when opening file for read.
200         Use "r" directly, no macro.
201         * input-file.c (input_file_open): Don't use FOPEN_RT, just use
202         "r".
203         * read.c (s_include): Ditto.
204         * output-file.c (output_file_create): Try both "wb" and "w", don't
205         bother with FOPEN_* macros.
206         * as.h: Don't include fopen-*.h.
207
208         * config/alpha-opcode.h: Make "ret" with no operands equivalent to
209         "ret zero,(ra)", to match OSF1 and to be consistent with both
210         one-operand forms.
211
212         Patches from DJ Delorie:
213         * as.h (alloca): undef alloca before defining it just in case
214         * config/go32.cfg: new file for autoconf values
215         * config/te-go32.h: new file
216         * configure.bat: new for autoconf
217
218         * config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had =
219         for ==.
220
221         * configure.in: If target_frag doesn't exist, use /dev/null.
222
223         * as.c (parse_args): For non-VMS systems, re-add `v' to
224         std_shortopts.  Add "verbose" to list of long options.
225
226         * write.c (adjust_reloc_syms): When generating an absolute section
227         symbol as a placeholder, don't mark it as used in a relocation
228         entry, here.
229
230         * Makefile.in (comparison): Compare using makefile code from gcc,
231         stripped down to discard subdir stuff and adapted to give a
232         non-zero exit status if either file differs.
233
234 Thu Nov  3 15:43:02 1994  Ian Lance Taylor  <[email protected]>
235
236         * config/tc-mips.c (load_address): Fix RELAX_ENCODE arguments for
237         NO_PIC case.
238
239 Tue Nov  1 16:10:59 1994  Ian Lance Taylor  <[email protected]>
240
241         * config/tc-mips.c (s_change_sec): If not GPOPT, don't permit
242         switching to the readonly data section.
243
244         * ecoff.c (ecoff_directive_type): Fix warning message.
245
246 Sun Oct 30 00:57:35 1994  Jeff Law  ([email protected])
247
248         * config/tc-hppa.c (pa_proc): Delete disabled code to put each
249         proc in its own subspace, we're not going to use it.
250
251 Tue Oct 25 14:44:33 1994  Ian Lance Taylor  <[email protected]>
252
253         * config/tc-mips.c (macro): Ensure that mips2 case of M_LI_DD in
254         .rdata does not become a variant frag.
255
256         * config/tc-mips.c (mips_cpu): Initialize to -1.
257         (md_begin): Don't mips_cpu if it was already set.
258         (md_parse_option): For -mipsN, don't set mips_cpu if it was
259         already set.  For -mcpu=, just set mips_cpu, not mips_isa.
260
261 Fri Oct 21 20:42:29 1994  Ian Lance Taylor  <[email protected]>
262
263         * config/tc-mips.c (md_pseudo_table): If OBJ_ELF, handle .section.
264         (s_elf_section): New static function.
265         * ecoff.c (ecoff_build_symbols): Don't abort if we don't recognize
266         the section when setting the storage class; default to sc_Data.
267
268 Thu Oct 20 00:43:38 1994  Jeff Law  ([email protected])
269
270         * config/tc-hppa.c (md_apply_fix): Set new_val to 8 for all
271         fixups to branch instructions (not just pc-relative ones) which
272         will generate SOM relocations.
273
274 Wed Oct 19 13:41:56 1994  Ian Lance Taylor  <[email protected]>
275
276         * config/tc-a29k.c: Include ctype.h with angle brackets.
277         (define_some_regs): Add new special register names defined on the
278         29040.
279         (parse_operand): Add argument opt.  If non-zero, don't warn about
280         a missing operand.
281         (machine_ip): If handling argument type 'I', pass opt as non-zero
282         to parse_operand.  Handle new optional operand type 'I'.
283         (md_undefined_symbol): Handle special register names (srNN).
284
285 Tue Oct 18 00:45:24 1994  Ian Lance Taylor  ([email protected])
286
287         * write.c (renumber_sections): New static BFD_ASSEMBLER function.
288         (write_object_file): Call it after removing gas created sections.
289
290 Mon Oct 17 18:06:05 1994  Ian Lance Taylor  <[email protected]>
291
292         * symbols.c (symbol_create): Use udata.p, not just udata.
293         * config/obj-elf.c (obj_ecoff_set_ext): Likewise.
294         (elf_get_extr): Likewise.
295
296         * read.c (read_a_source_file): The second argument to as_where is
297         unsigned int *, not int *.
298
299 Mon Oct 17 02:26:32 1994  Jeff Law  ([email protected])
300
301         * config/tc-hppa.c: Eliminate all uses of fx_addnumber.
302         (tc_gen_reloc): Simplify.  It's no longer necessary to set a
303         reloc's addend field to zero for function symbols.
304         (md_apply_fix): Simplify.  For fixups which will require a SOM
305         reloc, just clear out the necessary bits in the output file.
306
307 Fri Oct 14 19:06:46 1994  Ken Raeburn  <[email protected]>
308
309         * Makefile.in (BISON): Use bison -y, not bison.
310
311 Thu Oct 13 19:22:54 1994  Ken Raeburn  <[email protected]>
312
313         * Makefile.in (VERSION): Updated to 2.5.
314         (clean-here): Delete stamp-mk.com.
315         (distclean): Delete .gdbinit.
316         * Version 2.5 released.
317
318 Wed Oct 12 20:30:51 1994  Ken Raeburn  <[email protected]>
319
320         * config/te-nbsd532.h: Renamed from te-netbsd532.h.
321         * configure.in, configure: Adjusted.
322
323 Wed Oct 12 16:33:38 1994  J.T. Conklin  ([email protected])
324
325         * config/cplus-dem.c: Removed.  It isn't used.  Even if it was,
326           it's better to use the one in libiberty.
327
328 Wed Oct 12 18:48:39 1994  Ken Raeburn  <[email protected]>
329
330         * symbols.c (resolve_symbol_value, case O_symbol): Undo last
331         change; it breaks the rs6000 support, and doesn't seem to be
332         needed.
333
334 Wed Oct 12 11:56:50 1994  J.T. Conklin  ([email protected])
335
336         * config/tc-i386.h,te-netbsd532.h (TARGET_FORMAT): Changed to
337           a.out-<arch>-netbsd to match corresponding changes in BFD.
338
339 Wed Oct 12 11:06:11 1994  Ian Lance Taylor  ([email protected])
340
341         * config/tc-ppc.c (ppc_fix_adjustable): Resolve symbol values
342         rather than explicitly adding the frag address.
343         * config/obj-coff.c (coff_frob_symbol): Add a zero entry to mark
344         the end of the line numbers; this replaces the zero entry which
345         used to be added by coff_add_linesym, removed Oct 7.
346         (coff_adjust_section_syms): Ignore sections with no seginfo.
347
348 Wed Oct 12 01:41:37 1994  Ken Raeburn  <[email protected]>
349
350         * Makefile.in (bootstrap, bootstrap2, bootstrap3): Create a
351         "stage" symlink to the appropriate stage* directory, and use it
352         instead in the -B options.
353         (comparison): Revert yesterday's change.
354
355 Tue Oct 11 16:48:11 1994  Ken Raeburn  <[email protected]>
356
357         * config/tc-sparc.c (tc_gen_reloc): For non-a.out relocations, if
358         pc-relative, use fx_offset only, ignore address of relocation.
359
360 Tue Oct 11 15:24:00 1994  Ian Lance Taylor  <[email protected]>
361
362         * config/tc-mips.c (mips_ip): Don't use S_IS_LOCAL when checking
363         for an embedded PIC switch expression, since the definition of
364         S_IS_LOCAL was changed.
365
366 Tue Oct 11 15:05:11 1994  Ken Raeburn  ([email protected])
367
368         * Makefile.in (comparison): When comparing as.new or gasp.new, try
369         running the binary through sed to avoid differences due to
370         "stage1" or "stage2" having been written into the binary.
371
372 Sat Oct  8 01:48:04 1994  Ken Raeburn  ([email protected])
373
374         ELF symbol size handling, based on code from Eric Youngdale:
375         * config/obj-elf.h (OBJ_SYMFIELD_TYPE): New macro.  Adds an
376         expression pointer to the symbol structure, used for `size'
377         expressions that couldn't be reduced to constants when initially
378         processed.
379         (elf_frob_symbol): Declare.
380         (obj_frob_symbol): Call elf_frob_symbol always, rather than
381         ecoff_frob_symbol only if ECOFF_DEBUGGING defined.
382         * config/obj-elf.c (obj_symbol_new_hook): Deleted unused code.
383         Clear sy_obj field.
384         (obj_elf_size): Deleted unused code.  If size is non-reducible
385         expression, allocate some storage for the sy_obj field and copy
386         the expression.
387         (elf_frob_symbol): New function.  Computes sizes, calls
388         ecoff_frob_symbol if appropriate.
389
390         * write.c (fixup_segment): For i386 elf and coff (for now), don't
391         add in value of symbol from another defined section of the file.
392
393 Fri Oct  7 17:54:02 1994  Ken Raeburn  <[email protected]>
394
395         * config/tc-m88k.h (TC_KEEP_FX_OFFSET): Define.
396         * config/obj-coff.c (do_relocs_for): Test only TC_KEEP_FX_OFFSET,
397         rather than both it and TC_M88K.
398         (coff_adjust_section_syms): New function.
399         (coff_frob_section): For non-empty sections, create aux entry for
400         the section symbol, indicating the size.
401         (n_line_nos): New variable.
402         (add_lineno): Increment it.
403         (coff_add_linesym): Increment n_line_nos, don't call add_lineno.
404         (coff_frob_file): New function; map coff_adjust_section_syms over
405         sections.
406         (obj_coff_line): Only reset line_base for .bf symbols.
407         * config/obj-coff.h (coff_adjust_section_syms, coff_frob_file):
408         Declare.
409         (obj_frob_file): New macro.
410
411         * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Renamed from
412         obj_frob_forward_symbol, and rewritten for new parameter list.
413
414         Mon Oct  3 21:02:38 1994  Pat Rankin  ([email protected])
415
416         * config/obj-vms.h (S_IS_LOCAL): fix obsolete flagseen[] reference.
417
418 Wed Oct  5 11:49:26 1994  Ian Lance Taylor  <[email protected]>
419
420         * config/obj-ecoff.c (obj_pseudo_table): Accept .esize and .etype
421         as synonyms for .size and .type.
422
423 Wed Oct  5 00:08:10 1994  Ian Lance Taylor  ([email protected])
424
425         * config/obj-coff.c (coff_frob_section): Remove assert about
426         section alignment.
427         * config/tc-sparc.c (md_section_align): Use section alignment, not
428         xvec align_power_min field.
429
430 Fri Sep 30 19:05:20 1994  Pat Rankin  ([email protected])
431
432         * vmsconf.sh (make-gas.com): handle DCL verification to enable
433         sensible feedback to the user while gas is being built.
434
435 Fri Sep 30 16:23:31 1994  Ken Raeburn  <[email protected]>
436
437         * Makefile.in (DISTSTUFF): New variable, listing only make-gas.com
438         for now.
439         (diststuff): New target; builds DISTSTUFF.
440         (realclean): Separate target, depend on clean and distclean, then
441         delete DISTSTUFF.
442         * make-gas.com: Deleted.
443
444         * config/tc-i386.c (i386_validate_fix) [BFD_ASSEMBLER]: New
445         function.  Converts reloc for "foo-GOT" to BFD_RELOC_386_GOTOFF
446         reloc for "foo".
447         (i386_operand): Don't look up section symbol for
448         undefined_section.
449         (reloc): Always permit return of 8- and 16-bit relocation types.
450         Add a space after "pc-relative" in the error message.
451         (tc_i386_fix_adjustable) [BFD_ASSEMBLER]: Reject
452         BFD_RELOC_386_GOTOFF relocs.
453         (i386_operand): For any GOTOFF reloc, convert it to a BFD_RELOC_32
454         with a "foo-GOT" value.
455         * config/tc-i386.h (i386_validate_fix): Declare it.
456         (TC_VALIDATE_FIX): New macro -- call it.
457         (NOP_OPCODE): Cast to `char' to avoid compiler warnings.
458
459         * as.h: If __STDC__ is not defined and varargs.h is available, use
460         it rather than stdarg.h.
461
462         * write.h (struct fix): Added new bitfield fx_plt, for fixups
463         referring to PLT entries.
464         * write.c (fix_new_internal): Initialize fx_plt to zero.
465         (adjust_reloc_syms): Re-fetch `sym' after top of reduction loop.
466         Don't adjust fx_offset by frag address, since S_GET_VALUE now
467         includes the frag address.
468         (fixup_segment): Changed local var PCREL to type int, added PLT.
469         If PC-relative fixup refers to a PLT entry for a symbol in the
470         current section, don't reduce it.
471
472         * write.c (adjust_reloc_syms):  Exit loop through a label.  If
473         DEBUG5 is defined, print out each fixup before and after
474         processing.
475         (fixup_segment): If DEBUG5 is defined, print out each fixup before
476         and after processing.
477         (print_fixup): Added prototype.  Show address on first line.  Show
478         fx_offset and fx_subsy.  [!BFD_ASSEMBLER]: Only show fx_r_type if
479         NEED_FX_R_TYPE is defined.
480
481         * symbols.c (print_symbol_value_1): Check S_IS_LOCAL, S_IS_EXTERN,
482         S_IS_DEBUG, S_IS_DEFINED also.
483
484 Thu Sep 29 18:57:06 1994  Ken Raeburn  <[email protected]>
485
486         * Makefile.in (all): Depend on .gdbinit.
487         (.gdbinit): Rebuild from gdbinit.in by running config.status.
488
489         * gdbinit.in: Define new function "pf".  Fix doc on "pe" and "ps".
490
491         * write.c (print_fixup): Print source location on first line.
492         Show fx_r_type and fx_addsy fields.
493
494 Wed Sep 28 14:56:39 1994  Ken Raeburn  <[email protected]>
495
496         * configure.in: Set bfd_gas for all sparc targets in one place,
497         instead of separately for each.  Correctly handle user-supplied
498         "--enable-bfd-gas" option.
499
500         * gdbinit.in: Move "break abort" to end, in case gdb complains.
501
502         * as.h (PRINTF_WHERE_LIKE, PRINT_LIKE) [USE_STDARG, !__GNUC__]:
503         Use PARAMS macro.
504
505         * symbols.c (resolve_symbol_value, case O_symbol): Don't do any
506         processing if add_symbol is undefined or in expr_section.
507         (resolve_symbol_value, case O_add): For symbol plus
508         constant-valued symbol, convert to O_symbol and re-reduce.
509         (S_GET_VALUE): If symbol needs resolving, resolve it.
510         (indent_level): No longer static.
511         (print_symbol_value_1): Don't print frag address if it matches
512         zero_address_frag.  Don't print "resolving" if already resolved.
513         Print segment name.  Don't call print_expr_1 on an undefined
514         symbol.
515         (print_expr_1): Fix whitespace before printing X_add_number.
516
517         * expr.c (make_expr_symbol): No longer static.  Use symbol_create,
518         not symbol_new, for symbols holding expression values.
519         * expr.h (make_expr_symbol): Move declaration here.
520         * write.c (fix_new_exp): Handle O_add by creating an
521         expression-valued symbol, and calling fix_new_exp recursively.
522         (adjust_reloc_syms): If a fixup's symbol value is a sum of an
523         undefined symbol and a constant, fold the constant into the fixup,
524         and refer to the undefined symbol directly.  Then process the
525         fixup again from scratch.
526         (write_object_file): Before calling adjust_reloc_syms, make a pass
527         through the symbol list trying to resolve values.
528
529         * write.c (print_fixup): New routine, for debugging.
530         (write_relocs): Call bfd_install_relocation.  Deleted various
531         hacks for working around problems with bfd_perform_relocation.
532
533         * Makefile.in (VERSION): Update to 2.4.90.
534
535 Wed Sep 28 11:50:40 1994  Ian Lance Taylor  ([email protected])
536
537         * Makefile.in (gasp.o): Depends upon config.h.
538
539         * config/tc-mips.c: Include subsegs.h.
540         (md_apply_fix): If an unconditional b or bal overflows, and we are
541         not assembling PIC code, replace it with a j or jal.
542
543         * config/tc-mips.c (md_apply_fix): Correct branch overflow test.
544         Use as_bad_where and as_warn_where rather than as_bad and as_warn.
545
546 Mon Sep 26 17:15:59 1994  Ian Lance Taylor  ([email protected])
547
548         * write.c (write_relocs): Add file name and line number to
549         as_fatal calls.  Handle bfd_reloc_overflow case specifically when
550         RELOC_EXPANSION_POSSIBLE.
551
552 Fri Sep 23 16:11:28 1994  Ken Raeburn  <[email protected]>
553
554         * as.h (USE_STDARG, USE_VARARGS): Define one or neither of these
555         here.  Use them for deciding which PRINTF*LIKE macro definitions
556         to use.
557         * messages.c: Use them, instead of NO_STDARG, NO_VARARGS.
558         [!USE_STDARG && !USE_VARARGS] (va_alist, va_dcl, ...): Provide
559         default definitions matching what we were doing before.
560         (as_tsktsk): Remove the non-stdarg, non-varargs version, and
561         always use the varargs form if not using stdarg.  It's safe to
562         always use vfprintf, because libiberty will provide it if the
563         native system doesn't.  Also, always make format be const.
564         (as_warn, as_warn_where, as_bad, as_bad_where, as_fatal): Ditto.
565
566 Fri Sep 23 14:42:34 1994  Ian Lance Taylor  ([email protected])
567
568         * config/tc-mips.c (load_register): Always use addiu when adding a
569         constant to $zero--no need to use daddiu.
570         (macro): Hack the -mips3 overflow tests to not fail when offsetT
571         is only 32 bits.
572
573         * symbols.h (copy_symbol_attributes): Declare.
574
575 Thu Sep 22 21:58:24 1994  Ken Raeburn  <[email protected]>
576
577         * listing.c: Bugfixes based in part on patches from Paul
578         Kranenburg.
579         (listing_newline): Check filename as well as line number when
580         deciding whether to record it.
581         (list_symbol_table) [S_IS_REGISTER]: Check that S_IS_REGISTER is
582         false (if defined) as well as checking for reg_section.
583         (listing_listing): Iterate fetching lines while line number is too
584         low, and we haven't run off the end of the input file.
585
586         * config/vms-conf.h: Changed HAVE_DELETE to HAVE_REMOVE.
587
588 Thu Sep 22 13:39:10 1994  Kung Hsu  ([email protected])
589
590         * ecoff.c (ecoff_generate_asm_lineno): check if
591         current_stabs_filename is NULL before strcmp.
592         * read.c (read_a_source_file): fix a bug in generate_asm_lineno
593         checking.
594
595 Wed Sep 21 18:17:35 1994  Ken Raeburn  <[email protected]>
596
597         * config/ho-*.h: Now-unused files deleted.
598
599         * symbols.c (copy_symbol_attributes): New function.  Copies BFD
600         symbol flags and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
601         (resolve_symbol_value, case O_symbol): Call it, if X_add_number is
602         zero.  Don't call obj_frob_forward_symbol.
603         * read.c (pseudo_set): Call copy_symbol_attributes, but only if
604         X_add_number is zero.
605         * config/obj-elf.h (obj_frob_forward_symbol): Deleted.
606
607         * config/tc-i960.c: Lots of whitespace, comment reformatting,
608         using GNU indent.
609         (strchr): Don't declare.
610         [BFD_ASSEMBLER]: Don't compile md_convert_frag,
611         md_estimate_size_before_relax, md_ri_to_chars,
612         md_create_short_jump, md_create_long_jump.
613         (brtab_emit): Use data_section, not SEG_DATA.
614
615         Mon Sep 19 17:14:44 1994  Pat Rankin  ([email protected])
616
617         * config/vms-conf.h: new file, manually derived from conf.in.
618         * config-gas.com: use it, and eliminate obsolete "host.h".
619
620 Wed Sep 21 11:11:30 1994  Ian Lance Taylor  ([email protected])
621
622         * config/tc-ppc.c (ppc_current_block): New static variable.
623         (ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
624         ppc_current_block.  Don't move around any stab symbol, just those
625         for common symbols.
626         (ppc_bs): Set ppc_current_block.
627         (ppc_es): Clear ppc_current_block.
628         (ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
629         from the csect of the enclosing block.
630
631         * config/tc-mips.c (insns_since_cache_access): Remove.
632         (append_insn): Remove setting of insns_since_cache_access, and
633         special 4600 handling; it turns out not to be required.
634
635 Tue Sep 20 16:13:18 1994  Ian Lance Taylor  ([email protected])
636
637         * config/tc-mips.c (md_shortopts): Remove E.
638         (md_longopts): Add EB and EL.
639         (md_parse_option): Handle -EB and -EL as separate options, rather
640         than as a single -E option with an argument.
641
642 Mon Sep 19 12:42:05 1994  Jeff Law  ([email protected])
643
644         * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions
645         involving global symbols too.
646
647 Mon Sep 19 12:12:46 1994  Ken Raeburn  ([email protected])
648
649         * as.h: Test NEED_DECLARATION_*, not NEED_*_DECLARATION.
650
651         * configure.in: Test for remove, not delete.  Fix cross-assembler
652         test.
653         * as.h: Test HAVE_REMOVE, not HAVE_DELETE; define unlink to
654         remove, not delete.
655
656         * read.c (pseudo_set, case O_symbol): If
657         OBJ_COPY_SYMBOL_ATTRIBUTES is defined, invoke it.
658         [BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
659         * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
660
661         Wed Aug 10 19:15:30 1994  Pat Rankin  ([email protected])
662
663         * config/obj-vms.h (DSG_S_C_UBITU, DST_K_VFLAGS_DSC, DST_K_TS_ATOM,
664         many others): new macros; values obtained from "DSTRECRDS.SDL".
665         * config/obj-vms.h (various): use them.
666         (USE_BITSTRING_DESCRIPTOR): new macro, for selecting bitfield
667         representation (only enum bitfields can avoid being bitstrings).
668         (bitfield_suffix, setup_basic_type): new routines.
669         (VMS_typedef_parse): use them.  Now recognize bitfields of all
670         integral types, not just type `int'.  Caveat:  the representation
671         used for bitfields still does not work for objects placed in
672         registers, and gcc's optimizer sometimes puts small structs there.
673
674         Tue Jun 14 17:31:44 1994  Pat Rankin  ([email protected])
675
676         * read.c (s_text) [#if OBJ_VMS]: clear the IN_DEFAULT_SECTION
677         bit from const_flag.
678         * config/obj-vms.h (IN_DEFAULT_SECTION): define this macro.
679         (tc_frob_label): define this to call vms_check_for_special_label,
680         and declare the latter.
681         * config/obj-vms.c (vax_g_doubles): declare this file-scope
682         variable.
683         (const_flag): initialize to IN_DEFAULT_SECTION instead of 0.
684         (vms_check_for_special_label): new routine (tc_frob_label).
685         (VMS_TBT_Routine_End): don't bother checking for `gcc_compiled.'
686         and `gcc2_compiled.' labels; they won't reach here any more.
687         (VMS_typedef_parse) [case 'r']: for types `double' and `complex
688         double', use `vax_g_doubles' flag to select type of double.
689         (VMS_write_object_file) [traceback setup]: don't pass symbols
690         with the IN_DEFAULT_SECTION attribute to the TBT_Routine_Begin
691         and TBT_Routine_End functions.
692
693         Mon Jun  6 20:52:20 1994  Pat Rankin  ([email protected])
694
695         * config/obj-vms.c (VMS_TBT_Routine_End): cache the result of
696         S_GET_VALUE() to avoid many repeated function calls.
697         (VMS_Check_For_Main) [#if HACK_DEC_C_STARTUP]: capitalize
698         _C$MAIN_ARGS in advance, in case -h3 (leave symbol name as-is)
699         gets requested.  [All the HACK_DEC_C_STARTUP code appears to
700         be obsolete; gcc does it automatically for vms target.  It's
701         also misnamed, because it is for the "VAX C" run-time library,
702         not the newer "DEC C" one which has much different startup code.]
703         {various}: use `S_SET_xxx(symbol,new_value)' rather than
704         `S_GET_xxx(symbol) = new_value'.
705
706 Mon Sep 19 12:05:03 1994  Ian Lance Taylor  ([email protected])
707
708         * config/obj-coff.c (c_dot_file_symbol): Use bfd_abs_section_ptr,
709         not &bfd_abs_section.
710
711 Thu Sep 15 18:36:34 1994  Ian Lance Taylor  ([email protected])
712
713         * expr.c (clean_up_expression): Use addressT, not bfd_vma.
714
715 Tue Sep 13 20:05:47 1994  Jeff Law  ([email protected])
716
717         * expr.c (expr): Don't reduce the difference of two symbols in the
718         same frag if the symbols are not in normal sections.
719
720         * config/obj-som.h (S_SET_OTHER, S_SET_TYPE): Delete a.out crud.
721         (S_SET_DESC, S_GET_OTHER, S_GET_TYPE, S_GET_DESC): Likewise.
722         (obj_attach_unwind_info): Do not define.  Not needed anymore.
723         * config/tc-hppa.c: Delete whitespace at EOL.
724         (struct hppa_fix_struct): Delete fx_unwind field and all references.
725         (fix_new_hppa): Last arg is now a pointer to an int.  Do not
726         call obj_attach_unwind_info anymore.  For SOM R_ENTRY and R_EXIT
727         fixups, store 32bits of unwind information in the fx_addnumber
728         field of the fixup.
729         (md_assemble, pa_entry, process_exit, pa_procend): For SOM R_ENTRY
730         and R_EXIT fixups, pass a NULL pointer to fix_new_hppa, and a
731         pointer to 32 bits of unwind info. 
732         (tc_gen_reloc): For SOM R_ENTRY and R_EXIT fixups, set the symbol
733         pointer to the dummy symbol; set the addend field to fx_addnumber.
734         (pa_comm, pa_equ, pa_type_args, pa_import): Use bfd_XXX_section_ptr
735         rather than &bfd_XXX_section.
736
737 Tue Sep 13 21:15:36 1994  Ken Raeburn  ([email protected])
738
739         * config/tc-i386.c (md_apply_fix_1): For GOTPC relocs, decrement
740         value by one; discard adjustments previously being made.  From
741         Eric Youngdale.
742
743         VMS- and Vax-related changes from Pat Rankin:
744         * Makefile.in (VMS_OTHER_OBJS): add concat, getopt, and getopt1.
745         * vmsconf.sh: no longer have make-gas.com echo text about needing
746         to modify the gcc-vms driver when intending to use with gcc 1.x.
747         * as.c (parse_options): suppress 'v' from std_short_options and
748         eliminate VMS-specific conditional initialization;
749         [default case]: check for '-v' if md_parse_options doesn't recognize
750         an option;
751         [default case, #if VMS]: check for filename argument when '-v' seen;
752         [case 'v']: delete.
753         * config/tc-vax.c (md_assemble): don't rely on `this_add_number'
754         for O_big literal operands (double floats and long long ints);
755         [VMS, md_shortopts]: add second colon after 'v';
756         (md_parse_options) [VMS, case 'v']:  check for argument, so
757         caller can handle `-v' w/o arg.
758
759 Tue Sep 13 16:45:08 1994  Steve Chamberlain  ([email protected])
760
761         * config/obj-coff.c (do_relocs_for):  If TC_KEEP_FX_OFFSET
762         is defined, put the tx_offset into the r_offset.
763         * config/tc-sh.c (line_comment_chars): Add #
764         (tc_reloc_mangle): Deleted.
765         * config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
766         (TC_RELOC_MANGLE): Delete.
767
768 Tue Sep 13 16:20:36 1994  Ken Raeburn  ([email protected])
769
770         * flonum-konst.c: Change preprocessor tests of HO_VMS to just VMS.
771         * hex-value.c: Ditto.
772         * config/obj-vms.c: Ditto.
773
774         * config/tc-sparc.c (sparc_ip): Replace as_bad/exit sequence with
775         a call to as_fatal.
776         * config/tc-i860.c (i860_ip): Ditto.
777         * config/tc-hppa.c (pa_ip): Ditto.
778         * config/tc-alpha.c (alpha_ip): Ditto.
779         * as.c (parse_args): Ditto.
780
781         * config/tc-mips.c (mips_ip): Replace as_warn/exit sequence with a
782         call to as_fatal.
783
784         * write.c (write_contents): Use EXIT_FAILURE.
785         * output-file.c (output_file_create, output_file_close,
786         output_file_create, output_file_close): Ditto.
787         * messages.c (as_fatal): Ditto.
788         * config/obj-som.c (obj_som_version, obj_som_copyright): Ditto.
789         * config/obj-ieee.c (write_object_file): Ditto.
790         * config/obj-coff.c (write_object_file): Ditto.
791         * config/tc-vax.c (main): Use EXIT_SUCCESS.
792         * config/tc-m68k.c (main): Ditto.
793
794         * hash.c (main): Pass a value to exit().
795
796         * as.h (EXIT_SUCCESS, EXIT_FAILURE): Moved here.
797         * as.c: ...from here.
798         (parse_args): Use them always.
799         (main): Use exit rather than return.
800
801         * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall):
802         Rewrite handling of program_transform_name.
803
804         * configure.in: Test for functions unlink and delete.
805         * as.h: If unlink isn't available but delete is, define unlink to
806         be delete.
807
808         Update for autoconf 1.118:
809         * gdbinit.in: New file, created from old .gdbinit.
810         * .gdbinit: Deleted.
811         * aclocal.m4 (GAS_GDBINIT): Deleted.
812         * configure.in: Don't use it.  Instead, generate .gdbinit from
813         gdbinit.in.  Don't substitute cpu_type, obj_format, emulation,
814         atof.  Switched order of AC_LINK_FILES arguments.  Use AC_PREREQ
815         to ensure that older versions of autoconf aren't used.
816         * Makefile.in: Added @configure_input@ line.
817         (configure): Deleted rule.
818
819 Tue Sep 13 12:08:20 1994  Ian Lance Taylor  ([email protected])
820
821         * config/obj-coff.c (fixup_segment): After handling the difference
822         of two symbols from the same segment, set fx_subsy to NULL, to
823         satisfy existing TC_COUNT_RELOC macros.
824
825 Tue Sep 13 01:47:08 1994  Ken Raeburn  ([email protected])
826
827         * aclocal.m4 (GAS_GDBINIT): New macro.
828         * configure.in: Use it.
829         * configure: Regenerated.
830
831 Mon Sep 12 20:56:38 1994  Ken Raeburn  ([email protected])
832
833         * .gdbinit (pe, ps): Define new commands.
834         * symbols.c (indent_level): New static variable.
835         (indent, print_expr_1, print_symbol_value_1, print_symbol_value,
836         print_expr): New functions.
837
838         * Makefile.in (config-stamp): Add a "this file generated by make"
839         message to config.h.
840
841         PIC implementation for i386-linux, based on code from Eric
842         Youngdale and Paul Kranenburg, with some work of my own:
843
844         * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup
845         before processing same-section pcrel relocations.
846         (TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
847
848         * expr.c (make_expr_symbol): If operator is O_symbol and
849         X_add_number is zero, just return the symbol.  If operator is
850         O_constant, resolve the symbol's value before returning.
851         (operand): Permit use of "[]" for grouping.
852         (clean_up_expression): For difference of two symbols in the same
853         frag, add the difference of their offsets into X_add_number.
854         (expr): Reduce difference of two symbols in same frag to their
855         difference.
856
857         * config/tc-i386.c (TC_RELOC): New macro.
858         (struct _i386_insn): New field disp_reloc.
859         (GOT_symbol): New variable.
860         (operand_special_chars): Added square-brackets and at-sign.
861         (reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not
862         NO_RELOC, just return it.
863         (reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
864         (BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More
865         dummy macros.
866         (tc_i386_fix_adjustable): New function.  Returns zero if symbol in
867         fixup is not local, to prevent relocations against externals from
868         being dropped.
869         (md_assemble): Initialize disp_reloc field to NO_RELOC.  Pass
870         disp_reloc field to reloc() function, and use TC_RELOC to generate
871         value to pass to fix_new_exp.
872         (md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC
873         reloc.
874         (i386_operand): Initialize disp_reloc field to NO_RELOC.  Handle
875         @GOTOFF, @PLT, @GOT operands.  For GOTOFF relocations with local
876         symbols, force generation of the section symbol.
877         (md_estimate_size_before_relax): If GOT_symbol exists, decide
878         we're generating PIC code, and convert relocations against
879         undefined symbols from PCREL to PLT32.
880         (md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking
881         relocs.
882         (md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set
883         and return GOT_symbol if it matches.
884         (F, MAP): Move macro definitions outside function.
885         (tc_gen_reloc): Only switch on size and pcrel if code wasn't
886         already supplied as PLT32. GOT32, GOTOFF, or GOTPC.  Convert
887         BFD_RELOC_32 using GOT_symbol into GOTPC.
888         * config/tc-i386.h (TC_RELOC, tc_fix_adjustable,
889         TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): New
890         macros.
891         (NEED_FX_R_TYPE): Define.
892         (LOCAL_LABEL): Accept ".X" prefix too.
893         (GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
894
895 Mon Sep 12 17:51:39 1994  Ian Lance Taylor  ([email protected])
896
897         * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
898         reportedly to be used on Irix 6.
899
900         * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
901         (s_mips_globl): New static function; needed for Irix 5 support.
902         * ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
903         external symbol with no type, set the type to st_Proc rather than
904         st_Global.  Don't set the index of an external st_Proc or
905         st_StaticProc symbol unless it is also a local symbol.
906
907         * read.c (read_a_source_file): The second argument to as_where is
908         unsigned int *, not int *.
909
910 Thu Sep  8 17:18:24 1994  Kung Hsu  ([email protected])
911
912         * config/obj-ecoff.h : Change names to  OBJ_GENERATE_ASM_LINENO,
913         and generate_asm_lineno.
914         * config/obj-elf.h : ditto.
915         * read.h : ditto.
916         * read.c (read_a_source_file): if no file when inst is read, set
917         generate_asm_lineno to true.
918         * ecoff.h : change name to generate_asm_lineno and add function
919         ecoff_no_current_file.
920         * ecoff.c : change name to generate_asm_lineno.
921         * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate 
922         ecoff style line for asm file.
923
924 Thu Sep  8 19:43:49 1994  Ian Lance Taylor  ([email protected])
925
926         * config/obj-coff.c (size_section): Do an fprintf to stderr rather
927         than a printf.
928         (fixup_segment): Use as_bad_where rather than as_bad.
929
930 Wed Sep  7 17:21:12 1994  Steve Chamberlain  ([email protected])
931
932         * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing
933         nothing becomes macro doing nothing.
934
935 Wed Sep  7 19:10:09 1994  Ken Raeburn  ([email protected])
936
937         * Makefile.in (Makefile): Depend on config.status.
938         (config.status): Run config.status from . instead of srcdir.
939
940         * config/tc-i386.c (tc_gen_reloc): Use bfd_get_reloc_code_name to
941         display the name of the relocation type that couldn't be handled.
942         * config/tc-sparc.c (tc_gen_reloc): Likewise.
943         * config/tc-alpha.c (tc_gen_reloc): Likewise.  Deleted abort call
944         after call to as_fatal.
945
946         * configure.in (i386-*-linux*): Don't set bfd_gas.
947
948         * Makefile.in (CC_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET,
949         install, uninstall): Don't use "brokensed" hack any more, the new
950         autoconf code should never let program_transform_name be empty.
951
952         Update for autoconf beta 1.112:
953         * aclocal.m4 (GAS_CHECK_DECL_NEEDED, GAS_WORKING_ASSERT): New
954         macros.
955         * configure.in: Use them.  Use AC_ARG_PROGRAM (now provided by
956         autoconf) instead of my hacked-up AC_PROGRAM_TRANSFORM_NAME.  Move
957         test for CROSS_COMPILE just before AC_FUNC_ALLOCA, and emit a
958         message to try to ease confusion about autoconf's
959         "cross-compiling" message.
960         * acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_FREE,
961         NEED_DECLARATION_ERRNO): Renamed from NEED_*_DECLARATION.
962         * configure, conf.in: Regenerated.
963
964 Wed Sep  7 12:49:55 1994  Ian Lance Taylor  ([email protected])
965
966         * configure.in: Check ${host} and ${target} rather than
967         ${host_canon} and ${target_canon}.
968         * configure: Likewise.
969
970 Tue Sep  6 11:42:38 1994  Ian Lance Taylor  ([email protected])
971
972         * config/tc-mips.c (mips_cpu): New static variable.
973         (insns_since_cache_access): New static variable.
974         (md_begin): Set mips_cpu as well as mips_isa.
975         (append_insn): If mips_cpu is 4600, require four nop instructions
976         between an instruction which accesses the cache and certain CACHE
977         instructions.  Keep track of the number of instructions seen since
978         an instruction which accesses the cache.
979         (md_parse_option): Set mips_cpu as well as mips_isa.
980
981 Mon Sep  5 07:09:00 1994  Ken Raeburn  ([email protected])
982
983         * doc/Makefile.in (VPATH): Define using @srcdir@.
984         (prefix, program_transform_name, exec_prefix): Use autoconf style
985         @-substitutions.
986
987 Sun Sep 04 17:58:10 1994  Richard Earnshaw ([email protected])
988
989         * config/ho-riscix.h, config/tc-arm.c, config/tc-arm.h: New files
990         * configure.in: Recognize the arm.
991
992 Fri Sep  2 16:05:50 1994  Ian Lance Taylor  ([email protected])
993
994         * ecoff.c (add_file): Don't try to generate line numbers if the
995         symbol table has been frozen.
996
997 Thu Sep  1 19:48:01 1994  Ken Raeburn  ([email protected])
998
999         * aclocal.m4 (AC_PROG_CC): Use AC_DEFUN, and omit AC_PROVIDE.
1000
1001         * configure.in: Handle user-specified bfd-assembler option with
1002         separate variable from preferred configuration, until the two are
1003         resolved.  Indicate bfd_gas=preferred for linux a.out.  Use
1004         AC_PROGRAM_TRANSFORM_NAME, for which a patch has been sent to djm.
1005         * Makefile.in (target_alias, program_transform_name): Define,
1006         using autoconf @-substitutions.
1007
1008 Wed Aug 31 17:43:06 1994  Ken Raeburn  ([email protected])
1009
1010         * atof-generic.c: Deleted alloca handling here.
1011
1012         * Makefile.in (prefix, exec_prefix): Use @-subtitutions.
1013
1014         * aclocal.m4 (AC_OUTPUT_LINKS): Deleted redefinition, since
1015         autoconf 1.109 has this fixed.
1016         * configure.in: Don't change quote characters around AC_MSG_ERROR
1017         invocation.  Don't use AC_HEADER_STDC, since it requires running a
1018         program.  Cache NEED_*_DECLARATION values.
1019         * configure, conf.in: Regenerated with a modified autoconf 1.109.
1020
1021         * as.h (volatile): Don't test or define here; not needed.
1022         (alloca): Replace alloca-conf.h inclusion with code recommended in
1023         autoconf documentation.  Include config.h first.
1024
1025 Wed Aug 31 11:20:48 1994  Ian Lance Taylor  ([email protected])
1026
1027         * config/obj-coff.h (S_IS_DEFINED): Absolute symbols are defined
1028         also.
1029
1030         * configure.in, configure: Initialize bfd_gas to no.
1031
1032 Tue Aug 30 19:31:14 1994  Ken Raeburn  ([email protected])
1033
1034         * as.h: Include alloca-conf.h from "libiberty", not
1035         "../libiberty".
1036
1037 Mon Aug 29 16:11:30 1994  Ian Lance Taylor  ([email protected])
1038
1039         * config/tc-ppc.c (md_apply_fix): Don't generate a reloc when a
1040         symbol is used as an offset into a CSECT that is not a TOC.  These
1041         types of loads are generated by gcc -mminimal-toc.
1042
1043 Sun Aug 28 13:22:52 1994  Ken Raeburn  ([email protected])
1044
1045         * as.h (flag_*): Added comments describing meanings of some of
1046         these variables.
1047         (struct frag): Add some comments about the ns32k-specific fields
1048         and why they're here.
1049         (SIZEOF_STRUCT_FRAG): Cast addresses to char*, not int.
1050         (flag_print_statistics): Declare.
1051
1052         * as.c (parse_args): Set flag_print_statistics instead of
1053         statistics_flag.  Options array is now const.  Added new option
1054         "dump-config"; if specified, print TARGET_ALIAS, TARGET_CANONICAL,
1055         TARGET_CPU, TARGET_OBJ_FORMAT, and TARGET_FORMAT, if defined.
1056         (main): Change test to check flag_print_statistics.
1057         (statistics_flag): Deleted.
1058
1059         * frags.c (frag_variant): Removed PCREL_ADJUST and BSR arguments.
1060         Always initialize them to zero.
1061         * frags.h (frag_variant): Fixed prototype.
1062         * config/tc-i960.c (get_cdisp): Don't pass the extra zero args.
1063         * config/tc-ns32k.c (convert_iif): Don't pass the arguments; cache
1064         the value of frag_now and fill in the fields later.
1065
1066         * Makefile.in (distclean, realclean): Remove new
1067         configure-generated files.
1068
1069 Sat Aug 27 20:26:12 1994  Ken Raeburn  ([email protected])
1070
1071         Conversion to autoconf:
1072         * acconfig.h, aclocal.m4: New files.
1073         * configure.in: Rewritten (except for some target-specific code)
1074         for autoconf.
1075         * conf.in, configure: New files, generated from the above.
1076         * Makefile.in: Changed magic sequence indicating insertion of
1077         makefile fragments.
1078         (VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions
1079         from configure.
1080         (LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
1081         (config.status, configure): Rewrite rules.
1082         (config-stamp): Depend on conf.  Skip variables that configure is
1083         now substituting itself.
1084         (*.o dependencies): Deleted host.h.
1085         (distclean, realclean): Don't delete host.h.
1086         * as.c: Don't include stdio.h, string.h, sys/types.h.  Include
1087         signal.h after as.h.
1088         * as.h: Include alloca-conf.h first.  Include ctype.h, string.h,
1089         strings.h, stdlib.h, unistd.h, sys/types.h, fopen-bin.h,
1090         fopen-same.h, as suggested by autoconf test results.
1091         [BROKEN_ASSERT]: Don't include assert.h.
1092         (strdup): Declare.
1093         (volatile, const): Define if not __STDC__ and not already defined.
1094         (malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
1095         (free) [NEED_FREE_DECLARATION]: Declare.
1096         * gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H).  Don't
1097         include host.h.
1098         (malloc) [NEED_MALLOC_DECLARATION]: Declare.
1099         * messages.c: Include as.h first.  Include errno.h only if
1100         HAVE_ERRNO_H.  If HAVE_VARARGS_H and not __STDC__, undefine
1101         HAVE_STDARG_H.  Set NO_STDARG and NO_VARARGS as appropriate.
1102         * doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM,
1103         INSTALL_DATA): Use autoconf @-substitutions.
1104
1105         * input-file.c: Don't include assert.h here, 'cause as.h already
1106         includes it.
1107
1108         * config/tc-alpha.c: Added various prototypes for static
1109         functions.
1110         (in_range): New function, tests whether a value can fit in an
1111         N-bit field.
1112         (build_mem, build_operate_n): New functions for constructing
1113         opcode values.
1114         (emit_sll_n, emit_ldah_num, emit_addq_r, emit_lda_n): New
1115         functions for emitting single instructions, no longer requiring a
1116         recursive call to md_assemble.
1117         (emit_add64): New function for expanding a REG:=REG+CONST
1118         operation into one or more instructions, to handle wide constants.
1119         (clear_insn): New variable.
1120         (md_begin): Fill it in with zeros and BFD_RELOC_NONE values.
1121         (alpha_ip): Use it to initialize local variable insns.
1122         (alpha_ip, label "immediate" and cases 'P', 'G'): Use emit_add64
1123         for calculations.
1124
1125 Fri Aug 26 14:46:15 1994  Ken Raeburn  ([email protected])
1126
1127         * subsegs.c (section_symbol): Reverse still-wrong test of
1128         EMIT_SECTION_SYMBOLS.
1129
1130         * write.c (BFD_FAST_SECTION_FILL): Always define.
1131         (write_contents): If fill_size is 1, use memset instead of looping
1132         calling memcpy.
1133
1134 Wed Aug 24 12:46:08 1994  Ian Lance Taylor  ([email protected])
1135
1136         * config/tc-mips.h (LOCAL_LABEL): Define as 0, for compatibility
1137         with native MIPS assembler.
1138         * configure.in (mips-*-irix*): Don't set emulation.
1139         * config/te-irix.h: Remove.
1140
1141         * ecoff.c (ecoff_symbol_new_hook): Don't add a new file if we
1142         haven't seen any input files yet.
1143         * config/tc-alpha.c (md_begin): Just call symbol_create, rather
1144         than calling symbol_new and then removing the symbol from the
1145         list.
1146
1147         * as.c (main): Move a inside the #if 0 block which uses it.
1148         * ecoff.c (current_stabs_filename): Make const.
1149         * frags.h (frag_align_pattern): Declare.
1150         * gasp.c (new_file): Cast isp to long, and use %ld to print it.
1151         * config/tc-alpha.h (md_operand): Add cast to void.
1152         (alpha_do_align): Declare argument types.
1153         (tc_get_register): Declare.
1154         (alpha_frob_ecoff_data): Declare.
1155         * config/tc-alpha.c: Include <ctype.h>.
1156         (s_mask): Don't declare; does not exist.
1157         (line_comment_chars): Remove /* from descriptive comment.
1158         (tc_get_register): Remove unused local reg.
1159         (tc_gen_reloc): Don't bother to compare unsigned to zero.
1160         (s_base): Correct warning to actually print register number.
1161         (md_begin): Remove unused locals retval, lose, and i.
1162         (alpha_fix_adjustable): Move default case inside switch to avoid
1163         warning.
1164         (load_symbol_address): Remove unused locals reloc_addr, p, sym,
1165         and addend.
1166         (emit_byte_manip_r): Declare types for all arguments.
1167         (emit_extract_r, emit_insert_r, emit_mask_r): Likewise.
1168         (emit_sign_extend, emit_bis_r, s_proc): Likewise.
1169         (alpha_ip): Use sprint_value to print offsetT value.  Remove
1170         unused local size.  Remove unused label get_macro.
1171         (alpha_do_align): Make fill const.
1172         (md_apply_fix): Remove unused label check_zov.
1173
1174         * configure.in: Recognize i586 as a synonym for i[34]86.
1175
1176 Tue Aug 23 12:32:14 1994  Ian Lance Taylor  ([email protected])
1177
1178         * config/obj-coff.c (c_line_new): Change line_number argument from
1179         unsigned short to int so that the type in the prototype matches
1180         the promoted type in the definition.
1181         (stack_delete): Comment out; not used.
1182         * config/obj-coff.h (tc_coff_symbol_emit_hook): Declare if not
1183         BFD_ASSEMBLER, not if BFD_ASSEMBLER.  Declare argument type.
1184         * config/tc-m68k.h (tc_coff_sizemachdep): Declare.
1185         * config/tc-m68k.c (tc_coff_symbol_emit_hook): Add ignored
1186         argument.
1187
1188 Tue Aug 16 01:48:20 1994  Jeff Law  ([email protected])
1189
1190         * gas/config/tc-hppa.c (pa_comm): Undo last change.  Set sy_frag for
1191         the common symbol to the zero address frag (the correct fix).
1192
1193 Tue Aug 16 01:48:20 1994  Jeff Law  ([email protected])
1194
1195         * gas/config/tc-hppa.c (pa_comm): Undo last change.  Set sy_frag for
1196         the common symbol to the zero address frag (the correct fix).
1197
1198         * config/tc-hppa.c (pa_comm): Set sy_resolved for the common
1199         symbol.
1200
1201 Fri Aug 12 17:51:48 1994  Ian Lance Taylor  ([email protected])
1202
1203         * config/tc-mips.c (md_begin): Drop "el" from the end of
1204         TARGET_CPU.  Check for mips64orion.
1205
1206 Tue Aug  9 19:43:45 1994  Stu Grossman  ([email protected])
1207
1208         * configure.in:  Recognize ppc-*-netware.
1209         * config/te-ppcnw.h:  New file to support Power-PC/Netware
1210         configurations.  Currently, it just enables the use of backslash
1211         escapes in string directives.
1212
1213 Tue Aug  9 11:12:13 1994  Ian Lance Taylor  ([email protected])
1214
1215         * config/tc-ppc.c (ppc_stabx): Call expression directly, rather
1216         than via pseudo_set.  If expression is a symbol, move stab symbol
1217         to just after symbol from expression.
1218
1219         * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
1220         zero.  Undoes change of June 4, 1993.
1221
1222         * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
1223         orion.
1224
1225 Mon Aug  8 16:28:08 1994  Steve Chamberlain  ([email protected])
1226
1227         * as.h: Remove FOPEN_WB patch of Aug 6.
1228         * configure.in: Configure for ho-go32 correctly.
1229         * config/ho-go32.h: Fix copyright.
1230
1231 Mon Aug  8 11:59:51 1994  Jeff Law  ([email protected])
1232
1233         * gas/config/tc-hppa.c (md_pseudo_table): Delete redundant
1234         upper-case versions of the pseudo-ops.
1235
1236 Mon Aug  8 13:42:16 1994  Ian Lance Taylor  ([email protected])
1237
1238         * config/tc-sparc.c (md_apply_fix): If we are going to generate a
1239         non PC relative reloc, don't put the addend in the object file.
1240
1241 Sat Aug  6 01:15:02 1994  Steve Chamberlain  ([email protected])
1242
1243         * as.h: If FOPEN_WB is not defined, do the right thing in a go32
1244         environment.
1245
1246 Mon Jul 11 11:34:52 1994  Steve Chamberlain  ([email protected])
1247
1248         * config/tc-h8300.c (pint): New function for handling varying
1249         size of int pseudo op.
1250         * doc/as.texinfo: Fix typo describing .h8300h pseduop.
1251
1252 Mon Aug  1 02:40:43 1994  Jeff Law  ([email protected])
1253
1254         * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
1255         field in the space chain.
1256
1257         * config/tc-hppa.c (tc_gen_reloc): Cast return value from
1258         hppa_gen_reloc_type.
1259
1260 Thu Jul 28 15:45:37 1994  Ken Raeburn  ([email protected])
1261
1262         * config/tc-sparc.c (sparc_ip): Check more carefully for
1263         conflicting architectures.
1264         (md_parse_option) [NO_V9]: Complain if v9 was selected.
1265         (md_show_usage): Derive architecture list in usage message from
1266         architecture_pname array.
1267         (cypress): Macro deleted.
1268         (op_hash): Don't initialize.
1269         (s_common): Use bfd_und_section_ptr instead of bfd_und_section.
1270
1271         * config/tc-sparc.c (BSR): New function.
1272         (sparc_ip): Use it for right-shift operations of 32 bits or more.
1273
1274         * config/tc-sparc.c (sparc_ip): Implement new operand type 'x'.
1275
1276 Tue Jul 26 18:21:24 1994  Ken Raeburn  ([email protected])
1277
1278         * config/obj-coff.h: Moved common includes and TARGET_FORMAT
1279         definitions together.
1280         (WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD,
1281         OBJ_COFF_OMIT_OPTIONAL_HEADER, BFD_HEADERS, BFD) [!BFD_ASSEMBLER]:
1282         Moved these definitions to the start of the file, before the
1283         includes.
1284         (SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always
1285         define these.
1286         (S_GET_ZEROES): Deleted.
1287         (S_SET_ZEROES): Moved to obj-coff.c.
1288
1289         * config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted
1290         forward declarations.
1291         (obj_pseudo_table): Moved to one version end of file,
1292         conditionalized internally.
1293         (stack typedef, stack_init, stack_delete, stack_push, stack_pop,
1294         tag_hash, tag_init, tag_insert, tag_find, tag_find_or_make): Moved
1295         to one combined version at top of file, unconditional.  Deleted
1296         forward declarations.
1297         (s_get_name): Moved one copy of declarations to start of file.
1298         (def_symbol_in_progress): Ditto.  Don't initialize.
1299         (S_SET_ZEROES): Moved here from obj-coff.h.
1300         (write_object_file): If TC_COFF_SET_MACHINE is defined, call it on
1301         the file headers.
1302
1303         * config/obj-coff.c (seg_info_off_by_4): Now const and static.
1304         (SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
1305         (previous_file_symbol, def_symbol_in_progress, symbol_externP,
1306         symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't
1307         bother explicitly initializing to zero value.
1308
1309         * config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME
1310         and SF_GET_CALLNAME instead of the TC_S_IS_ versions.
1311
1312         * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro.  Calls
1313         tc_headers_hook.
1314
1315         * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX
1316         was used previously.
1317         (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.
1318
1319         * config/tc-i960.c (po_hash): Declaration deleted.
1320         (next_object_file_charP): Ditto.
1321         (regnames, aregs, coj): Now const.
1322         (parse_memop): Static array def_scale now const.
1323         (md_begin): Cast away const when passing hash routines addresses
1324         of values in regnames or aregs.
1325         (md_longopts): Added "link-relax" and "no-relax" hyphenated forms.
1326         Continue to accept one-word forms.
1327         (struct tabentry, arch_tab): Moved to top level from inside
1328         md_parse_option.  Now const.
1329         (md_show_usage): Use arch_tab to generate usage message.  Print
1330         hyphenated forms of relax options.
1331
1332         * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
1333         TC_S_FORCE_TO_*): Moved from here...
1334         * config/tc-i960.c: ... to here.  Changed DEFINE_I960_AOUT stuff
1335         to test OBJ_AOUT and OBJ_BOUT directly.
1336
1337         * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ,
1338         M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F,
1339         {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*):
1340         Macros deleted.
1341
1342         start-sanitize-i960xl
1343         * config/tc-i960.c (ARCH_XL): Define.
1344         (arch_tab): Include XL.
1345         (targ_has_sfr, targ_has_iclass): Handle XL.
1346         (tc_headers_hook): Set flags to F_I960XL for i960XL.
1347         end-sanitize-i960xl
1348
1349 Fri Jul 15 15:36:51 1994  Ken Raeburn  ([email protected])
1350
1351         * subsegs.c (section_symbol): Had last change backwards.
1352
1353 Thu Jul 14 13:21:06 1994  Ken Raeburn  ([email protected])
1354
1355         * config/atof-ns32k.c: Deleted.
1356
1357         * config/obj-aout.c (obj_aout_frob_symbol): Use
1358         bfd_ind_section_ptr and bfd_und_section_ptr.
1359
1360         * subsegs.c (subseg_set_rest): Compare segT values directly,
1361         without casting to int first.
1362
1363         * config/tc-ns32k.c (md_begin): Return value from hash_insert
1364         should be pointer to const.  Don't call exit explicitly after
1365         calling as_fatal; it won't return.
1366         (convert_iif): Make local variable j be pointer to bit_fixS, since
1367         that's how it's used.
1368         (encode_operand, case 'b'): Ignore sprintf return value.  Don't try
1369         converting freeptr to int and back.
1370
1371         Merged in NS32K support update from Ian Dall ([email protected]):
1372
1373         * config/te-pc532mach.h: New file. pc532-mach target emulation.
1374
1375         * config/te-netbsd532.h: New file. Netbsd532 target emulation.
1376
1377         * config/tc-ns32k.h: Add definition of NOP_OPCODE.
1378
1379         * config/tc-ns32k.h: Add prototype for fix_new_ns32k_exp.
1380
1381         * config/tc-ns32k.h: Add BFD_ASSEMBLER support.
1382
1383         * config/tc-ns32k.c (tc_gen_reloc): New function for BFD_ASSEMBLER.
1384
1385         * config/tc-ns32k.c (fix_new_ns32k_exp): Get reloc type
1386         differently for BFD_ASSEMBLER.
1387
1388         * config/tc-ns32k.c (md_estimate_size_before_relax): Get reloc
1389         type differently for BFD_ASSEMBLER.
1390
1391         * config/tc-ns32k.c (md_create_long_jump): Size of opcode is one
1392         not 2.
1393
1394         * config/tc-ns32k.c (md_convert_frag): Code for the BFD_ASSEMBLER
1395         case. Also use smart md_pcrel_adjust function.
1396
1397         * config/tc-ns32k.c (md_apply_fix): Code for the BFD_ASSEMBLER
1398         case. Also use smart md_fix_pcrel_adjust function.
1399
1400         * config/tc-ns32k.c (md_fix_pcrel_adjust): New function which can
1401         find offset from opcode to operand even if in another frag
1402         and in the presence of relaxing.
1403
1404         * config/tc-ns32k.c (md_pcrel_adjust): New function which can
1405         find offset from opcode to operand even if in another frag
1406         and in the presence of relaxing.
1407
1408         * config/tc-ns32k.c (md_number_to_disp): Check ranges properly.
1409
1410         * config/tc-ns32k.c (md_atof): use atof_ieee instead of special
1411         atof_ns32k.
1412
1413         * config/tc-ns32k.c (reloc): New (static) function for
1414         BFD_ASSEMBLER.
1415
1416         * config/tc-ns32k.c (convert_iif): More correct pc relative code.
1417         md_relax must be able to find opcode address even if in another frag.
1418
1419         * config/tc-ns32k.c: More extensive comments.
1420
1421         * config/tc-ns32k.c (encode_operand): Support new operand classes I
1422         and Z. Drop Q.
1423
1424         * config/tc-ns32k.c (fix_new_ns32k_exp): new function and
1425         corresponding prototype.
1426
1427         * config/tc-ns32k.c: make 32532 default machine instead of 32032.
1428
1429         * config/tc-ns32k.c: include opcode/ns32k.h after as.h
1430
1431         * aout_gnu.h: r_disp needs to be 2 bits for TC_NS32K
1432
1433         * write.h: fx_im_disp needs to be 2 bits big for TC_NS32K
1434
1435         * write.c (relax_segment): Use TC_PCREL_ADJUST macro (if defined)
1436         instead of adding pcrel_adjust.
1437
1438         * write.c (write_object_file): Adjust to_addr for the
1439         BROKEN_DOT_WORD feature for the BFD_ASSEMBLER case.
1440
1441         * write.c (write_object_file): Use TC_CONS_FIX_NEW if it is defined.
1442
1443         * write.c (write_contents): Add code (currently if
1444         BFD_FAST_SECTION_FILL is defined) to make large fills a lot faster.
1445
1446         * configure.in: Remove ns32k from special FP list. All the ns32k
1447         series use ieee float.
1448
1449         * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd targets
1450
1451         * as.h: include expr.h before targ-env.h. Some target dependent file
1452         want to use expr structures.
1453
1454 Wed Jul 13 14:49:05 1994  Ian Lance Taylor  ([email protected])
1455
1456         * config/tc-m68k.c (m68k_ip): Change rp to be a const pointer.
1457         (md_parse_option): Clear cpu field of current_architecture before
1458         setting a new cpu type.  Clear no_68881 for m68881 or m68882.
1459         Clear no_68851 for m68851.
1460
1461 Tue Jul 12 21:27:05 1994  Ken Raeburn  ([email protected])
1462
1463         * config/ho-sysv.h (realloc): Declare.
1464
1465         * symbols.c (symbol_create): New function, most of the guts of the
1466         old symbol_new function.
1467         (symbol_new): Now just checks symbol_table_frozen, calls
1468         symbol_create, and enters the symbol into the symbol table.
1469         * subsegs.c (section_symbol): If EMIT_SECTION_SYMBOLS is not true,
1470         and the symbol table is frozen, call symbol_create instead of
1471         symbol_new.
1472         * symbols.h (symbol_create, symbol_table_frozen): Declare.
1473
1474         * symbols.c (symbol_clear_list_pointers): Always a function now.
1475         * struc-symbol.h (symbol_clear_list_pointers): Deleted macro
1476         version.
1477
1478         * symbols.c (debug_verify_symchain): New macro, defined to be
1479         verify_symbol_chain or a cast to void, depending on DEBUG_SYMS.
1480         (many functions): Invoke debug_verify_symchain unconditionally.
1481
1482 Tue Jul 12 12:06:42 1994  Kung Hsu  ([email protected])
1483
1484         * config/obj-ecoff.h: change calling interface of
1485         OBJ_GENERATE_ASM_LINE_STAB.
1486         * config/obj-elf.h: ditto.
1487         * read.c (read_a_source_file): ditto.
1488         * ecoff.h: change calling interface of
1489         ecoff_generate_asm_line_stab.
1490         * ecoff.c (add_file): record of filename to handle case of include
1491         files, also change default built-in type from int to void for
1492         asm file.
1493         * ecoff.c (ecoff_generate_asm_line_stab): handle case of include
1494         files.
1495
1496 Mon Jul 11 17:20:23 1994  Ian Lance Taylor  ([email protected])
1497
1498         * config/tc-mips.c (macro): In case M_LA_AB, SVR4_PIC, large
1499         constant, and case ldd_std, set mips_optimize to 2 temporarily to
1500         avoid inserting an unexpected nop instruction.
1501
1502 Sat Jul  9 00:05:12 1994  Ian Lance Taylor  ([email protected])
1503
1504         * ecoff.c (ecoff_build_lineno): Handle count correctly for last
1505         line number.
1506
1507 Fri Jul  8 15:22:07 1994  Steve Chamberlain  ([email protected])
1508
1509         * gasp.c (process_pseudo_op): Pass right args to do do_aif.
1510         (get_any_string): New arg 'pretend_quote'.
1511         (get_and_process, do_formals, macro_expand, do_sdata,
1512         process_pseudo_op): Use new arg.
1513
1514 Fri Jul  8 12:23:44 1994  Kung Hsu  ([email protected])
1515
1516         * config/obj-ecoff.h: define macro OBJ_GENERATE_ASM_LINE_STAB.
1517         * config/obj-elf.h: ditto.
1518         * read.c (read_a_source_file): generate line stabs for asm file.
1519         * read.h: add extern generate_asm_line_stab.
1520         * ecoff.h : add prototype for ecoff_generate_asm_line_stab().
1521         * ecoff.c (add_file): if there's no filename provided, set switch
1522         to generate line stabs for .s file.
1523         * ecoff.c (add_procedure): add stabs symbol for .ent directive.
1524         * ecoff.c (generate_ecoff_stab): creates an artificial stabs.
1525         * ecoff.c (generate_asm_line_stab): generate a artifitial label
1526         for each line and generate a stabn for the line.
1527
1528 Thu Jul  7 17:04:03 1994  Steve Chamberlain  ([email protected])
1529
1530         * gasp.c (get_any_string): Cope with getting a string with an
1531         alternate base specifier.
1532         (do_aif, do_aelse): Only enable output if expression is true and previous
1533         level was on.
1534         (chartype_init):  Add BASEBIT chartype.
1535         (process_pseudo_op):  Notice nesteed AIFs.
1536
1537 Thu Jul  7 12:30:22 1994  Steve Chamberlain  ([email protected])
1538
1539         * h8300.c (do_a_fix_imm): Code for 2 bit reloc type using in trapa
1540         insn.  (fix pr 5165, 5174)
1541
1542 Thu Jul  7 11:31:32 1994  Jeff Law  ([email protected])
1543
1544         * config/tc-hppa.c (R_DLT_REL): If it isn't defined, then define
1545         to an appropriate value to avoid losing on old hpux systems.
1546
1547         * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions for
1548         symbols in DLT relative relocs.
1549         (tc_gen_reloc): Zero out the addend field for DLT relative relocs.
1550
1551 Wed Jul  6 01:07:54 1994  Ian Lance Taylor  ([email protected])
1552
1553         * config/tc-ppc.c (ppc_tc): If not OBJ_COFF, force TOC entry to
1554         align to a four byte boundary.
1555
1556 Tue Jul  5 15:42:09 1994  Ken Raeburn  ([email protected])
1557
1558         * config/tc-alpha.c (load_expression): Handle 32-bit addends.
1559         (gpdisp_hi16_howto): Now points to const.
1560         (load_insn_table, alpha_ip): Fix uses of const.
1561
1562         * doc/internals.texi: Updates to COFF description.  Added "@end
1563         defmac" as needed, and some extra heading and "@bye" so it'll
1564         format as a separate document.
1565
1566 Tue Jul  5 13:54:00 1994  Ian Lance Taylor  ([email protected])
1567
1568         * config/obj-elf.h (S_GET_ALIGN, S_SET_ALIGN): Define.
1569         * config/obj-elf.c (obj_elf_common): Set alignment of common
1570         symbol.
1571         * config/tc-sparc.c (s_common): If OBJ_ELF, set alignment of
1572         common symbol.
1573
1574 Mon Jul  4 18:29:43 1994  Jeff Law  ([email protected])
1575
1576         * config/tc-hppa.c (is_complex): New macro.
1577         (cons_fix_new_hppa): "Handle" complex expressions.
1578
1579 Fri Jul  1 00:48:12 1994  Ian Lance Taylor  ([email protected])
1580
1581         * config/obj-coff.c (write_object_file): Set s_align field from
1582         section_alignment array.
1583
1584 Thu Jun 30 15:05:28 1994  Ken Raeburn  ([email protected])
1585
1586         * write.c (write_object_file): Use bfd_com_section_ptr.
1587         * as.h (absolute_section, undefined_section): Use new BFD macros
1588         bfd_abs_section_ptr and bfd_und_section_ptr.
1589
1590 Thu Jun 30 14:36:37 1994  Ian Lance Taylor  ([email protected])
1591
1592         * config/tc-mips.c (macro): For M_LI_SS, decide how to handle it
1593         based on contents of imm_expr and offset_expr, rather than
1594         mips_pic.  For M_LI_DD, decide how to handle it based on segment
1595         name of offset_expr, rather than mips_pic.
1596         (mips_ip): If g_switch_value < 4, use immediate values for 'l'.
1597         If g_switch_value < 8, use .rdata rather than .lit for 'L'.
1598
1599 Wed Jun 29 17:30:46 1994  Stan Shebs  ([email protected])
1600
1601         * as.c (show_usage): Break long string into shorter ones.
1602         (parse_args): Add -v, prints version id and continues.
1603         * config/tc-mips.c (md_show_usage): Break long string.
1604
1605 Mon Jun 27 09:47:16 1994  J.T. Conklin  ([email protected])
1606
1607         *  config/tc-i386.c (md_parse_option): Handle "-V" and "-Q" if
1608         OBJ_ELF is defined.
1609
1610 Sun Jun 26 16:30:48 1994  Stan Shebs  ([email protected])
1611
1612         * as.c (main) [HOST_SPECIAL_INIT]: New hook, for host-specific
1613         initialization.
1614
1615 Wed Jun 22 00:24:55 1994  Jeff Law  ([email protected])
1616
1617         * config/tc-hppa.h (obj_frob_symbol): Define for OBJ_ELF.
1618         More gas/bfd lossage exposed by the new linker code.
1619
1620 Tue Jun 21 11:32:18 1994  Ian Lance Taylor  ([email protected])
1621
1622         * subsegs.c (subseg_change): Clear seginfo after allocating it.
1623         (subseg_get): Pass actual size of seginfo to memset.
1624
1625         * subsegs.c (abs_seg_info, und_seg_info): Define if BFD_ASSEMBLER.
1626         (subseg_change): Store seg_info for bfd_abs_section_ptr in
1627         abs_seg_info, and store seg_info for bfd_und_section_ptr in
1628         und_seg_info.
1629         (subseg_get): Likewise.  Also, don't set output_section if it is
1630         already set.
1631         (seg_info): Define as function.
1632         * subsegs.h (seg_info): Declare as function rather than defining
1633         as macro.
1634         * write.c (relax_and_size_seg): Call seg_info rather than
1635         bfd_get_section_userdata.
1636
1637 Mon Jun 20 16:30:54 1994  Ken Raeburn  ([email protected])
1638
1639         * configure.in (ppc-*-elf*): New target, like -sysv4*.
1640
1641         * expr.c (operand): If "0f" is followed by '\0', don't do eol
1642         checks.
1643
1644 Mon Jun 20 15:17:43 1994  Ian Lance Taylor  ([email protected])
1645
1646         * ecoff.c (ecoff_build_aux): Call swap_tir_out and swap_rndx_out
1647         via backend pointer, not directly.
1648
1649 Fri Jun 17 18:05:06 1994  Ian Lance Taylor  ([email protected])
1650
1651         * Makefile.in (config-stamp): Make sure there is at least one
1652         element in the for loop.
1653
1654 Fri Jun 17 11:01:04 1994  Jeff Law  ([email protected])
1655
1656         * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy.
1657
1658         * config/tc-hppa.h (elf_hppa_final_processing): Declare.
1659
1660 Wed Jun 15 20:44:46 1994  Ken Raeburn  ([email protected])
1661
1662         * as.c (parse_args): Cast xmalloc return value.
1663
1664         * Makefile.in (config-stamp): If $(defs) contains multiple words,
1665         emit a #define line for each.
1666         * configure.in: For sparc64 target, use sparc cpu files and add
1667         sparcv9 to extra_defs.  No longer treat sparc64-*-aout* specially.
1668
1669         * config/tc-sparc.c (membar_masks): Now static and const.
1670         (md_show_usage) [!NO_V9]: Add -Av9 to usage message.
1671         (current_architecture) [sparcv9]: Initialize to v9.
1672         (md_begin) [sparcv9]: Don't bother changing it unconditionally
1673         here.
1674         (s_reserve): Don't pass unexpected argument to as_bad with
1675         bad-segment message.
1676
1677         * as.h (bfd_alloc_by_size_t) [BFD_ASSEMBLER]: Declare.
1678
1679         * config/atof-ieee.c (int_to_gen): Commented out unused routine.
1680
1681         * config/tc-vax.c (md_assemble): Removed check of operand section.
1682
1683         Fri Jun  3 17:25:08 1994  Pat Rankin  ([email protected])
1684
1685         * config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
1686         these new VMS symbol-type macros for `complex float' and
1687         `complex double' support.  Their values come from the existing
1688         DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
1689         (DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
1690         REAL8 and COMPLX8; not used yet, because gcc outputs the same
1691         .stabs for `double' regardless of whether `-mg' is used.
1692         * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
1693         for gcc2's predefined types "complex float", "complex double",
1694         and "complex long double" (identical to complex double).
1695
1696 Wed Jun 15 12:32:55 1994  Ian Lance Taylor  ([email protected])
1697
1698         * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
1699         section symbol, not C_LABEL.
1700
1701         * config/tc-mips.c (mips_ip): Permit a modifier in 'o' case, and
1702         permit non constant expressions in 'u' case.  Lets ``lui
1703         $8,%hi(foo); lw $8,%lo(foo)($8)'' work correctly.
1704
1705 Mon Jun 13 12:08:52 1994  Ian Lance Taylor  ([email protected])
1706
1707         * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
1708         to put a common symbol in a set.
1709
1710 Sat Jun 11 16:41:21 1994  Ian Lance Taylor  ([email protected])
1711
1712         Add weak symbols as an extension to a.out.
1713         * read.c (pseudo_set): Only preserve external bit for OBJ_AOUT and
1714         OBJ_BOUT if not BFD_ASSEMBLER.
1715         * config/aout_gnu.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB):
1716         Define as in ../include/aout/aout64.h.
1717         * config/obj-aout.h (OBJ_SYMFIELD_TYPE): If not BFD_ASSEMBLER,
1718         define as char.
1719         (S_GET_WEAK, S_SET_WEAK): Define if not BFD_ASSEMBLER.
1720         * config/obj-aout.c (obj_pseudo_table): Add "weak".
1721         (obj_emit_symbols): Adjust type of weak symbols.
1722         (obj_aout_weak): New static function.
1723
1724 Fri Jun 10 13:48:49 1994  Ian Lance Taylor  ([email protected])
1725
1726         * config/obj-elf.c (obj_elf_section): Don't set any flags based on
1727         the type of a special section.
1728
1729         * config/ho-sunos.h: Include <stdlib.h>.  Don't declare malloc,
1730         realloc, free, or atol.
1731
1732 Wed Jun  8 06:28:37 1994  Bill Cox  ([email protected])
1733
1734         * Makefile.in (check): Delete as.new dependency, so that
1735         regression test doesn't trigger an assembler build.
1736
1737 Tue Jun  7 13:33:18 1994  Ian Lance Taylor  ([email protected])
1738
1739         * Makefile.in (mostlyclean, realclean): New targets.
1740         * doc/Makefile.in, testsuite/Makefile.in: Likewise.
1741
1742 Mon Jun  6 13:10:54 1994  Ian Lance Taylor  ([email protected])
1743
1744         * config/tc-mips.c (RDATA_SECTION_NAME): Define.
1745         (macro): Correct M_LI_SS SVR4_PIC/EMBEDDED_PIC case.  After M_LI_D
1746         or M_L_DOB or label dob, force a new frag to avoid getting
1747         confused in tc_gen_reloc.
1748         (mips_ip): Use RDATA_SECTION_NAME, not .rdata.
1749         (s_change_sec): Likewise.
1750
1751 Fri Jun  3 23:35:36 1994  Ian Lance Taylor  ([email protected])
1752
1753         * read.c (emit_expr): Use memset to zero out memory, rather than
1754         going through md_number_to_chars.  This permits handling symbolic
1755         arguments when the size is larger than sizeof (valueT), if
1756         TC_CONS_FIX_NEW is prepared to handle the case (as it is on MIPS).
1757
1758 Fri Jun  3 12:50:13 1994  David J. MacKenzie  ([email protected])
1759
1760         * as.c (show_usage), config/tc-alpha.c (md_show_usage),
1761         config/tc-mips.c (md_show_usage): Fix up messages.
1762
1763         * as.h: Replace flagseen with separate variables.
1764         * as.c (parse_args): Set them.  Don't accept -1 option, or -v
1765         explicitly (it's a synonym for --version).
1766         * as.c, input-scrub.c, messages.c, read.c, symbols.c, write.c, 
1767         config/obj-aout.c, config/obj-aout.h, config/obj-bout.c,
1768         config/obj-bout.h, config/obj-coff.c, config/obj-coff.h,
1769         config/obj-vms.c, config/tc-hppa.c, config/tc-i386.c,
1770         config/tc-i960.c, config/tc-m68k.c, config/tc-mips.c,
1771         config/tc-vax.c: Use the new flag variables instead of flagseen.
1772         * config/tc-vax.c [OBJ_VMS]: Recognize -+, -1, -v, and document in
1773         usage. 
1774
1775         * as.c (show_usage): Remove target specific messages;
1776         instead, call md_show_usage.
1777         (parse_args): Use getopt_long_only.  Take pointers to argc and
1778         argv.
1779         (main): Pass parse_args pointers.
1780         * as.h: Remove 3 variables that are redundant with flagseen.
1781         * as.c, messages.c: Change their users to use flagseen.
1782         Define getopt stuff.
1783         * tc.h: Update md_parse_option decl.  Add md_show_usage decl.
1784         * config/tc-*.c: Add md_shortopts, md_longopts,
1785         md_longopts_size, md_show_usage.  Change calling convention for
1786         md_parse_option.  Remove md_parse_long_option.
1787         * config/tc-ns32k.c: Rename `struct option' to `struct ns32k_option'.
1788         * config/tc-i386.h: Don't define md_parse_option.
1789
1790 Thu Jun  2 13:54:46 1994  David J. Mackenzie  ([email protected])
1791
1792         * as.c (show_usage): New function.
1793         (parse_args): Code moved from main.
1794         Recognize --help and --version.
1795         * config/tc-ns32k.h: Define TC_NS32K.
1796         * doc/as.texinfo: Document all of the target-independent command
1797         line options.
1798
1799 Thu Jun  2 12:07:25 1994  Ken Raeburn  ([email protected])
1800
1801         * gasp.c (hash_new_table): Clear newly allocated table.
1802
1803         * config/tc-m68k.c (enum _register): Add 68060 control registers
1804         BUSCR and PCR.
1805         (last_movec_reg): New macro.
1806         (m68000_control_regs, m68010_control_regs, m68020_control_regs,
1807         m68040_control_regs, m68060_control_regs): New arrays.
1808         (control_regs): New pointer.
1809         (m68k_ip): Use control_regs instead of testing CPU every time.
1810         Use last_movec_reg too.  In error messages, handle 68060, and
1811         print 68060 for mfloat, too.
1812         (m68k_init_after_args): Handle "68060".  Use m68040up for making
1813         m68851 choice.  Set control_regs.
1814         (md_parse_option): Handle "68060".
1815         * configure.in: Setting cpu_type, recognize m68060 too.
1816
1817         * config/obj-coff.c (fixup_segment) [!BFD_ASSEMBLER]
1818         [DIFF_EXPR_OK]: Do conversion to pc-relative for difference, even
1819         if pcrel is already set.
1820
1821         * read.c (potable): Add this_gcc_requires_the_gnu_assembler in all
1822         lower-case, in case we're ignoring case of opcodes in the input
1823         file.
1824
1825         * doc/as.texinfo (.section): Document as unavailable for a.out
1826         type formats.
1827
1828         * config/tc-alpha.c (machine): New variable.
1829         (load_insn): New macro.
1830         (load_insn_table): New function.
1831         (md_begin): Call load_insn_table, once for basic instructions and
1832         once for appropriate PAL instruction table.
1833         (md_parse_option): Set `machine' based on -m##### arguments.
1834         * config/alpha-opcode.h (alpha_pal21064_opcodes): Split out from
1835         alpha_opcodes.
1836         (alpha_pal21164_opcodes): New table.
1837         (NUM21064OPCODES, NUM21164OPCODES): New macros.
1838
1839         * configure.in (target i386-*-netbsd0.8): Use 386bsd emulation.
1840
1841         * doc/Makefile.in (install-info-gasp): Use $$dir when installing
1842         file.
1843
1844 Wed Jun  1 10:48:19 1994  Ian Lance Taylor  ([email protected])
1845
1846         * config/tc-mips.c (mips_ip): Force floating point values to be
1847         aligned correctly.
1848
1849 Fri May 27 10:05:53 1994  Ken Raeburn  ([email protected])
1850
1851         Merged in changes from gas-2.3 net release:
1852
1853         * Makefile.in (VERSION): Updated to cygnus-2.3.1.
1854
1855         * config/obj-vms.c: Replaced unchecked uses of malloc with
1856         xmalloc.
1857
1858         * listing.c (list_symbol_table): Only test BFD64, not
1859         BFD_ASSEMBLER too.
1860
1861         * config/obj-coff.c (fixup_segment) [BFD_ASSEMBLER]
1862         [DIFF_EXPR_OK]: Don't check pcrel, just convert it.
1863
1864         * config/obj-vms.c: Removed lots of extra semicolons after
1865         compound statements.
1866         (strchr): Don't declare here.
1867
1868         * config/ho-vax.h (realloc): Declare.
1869
1870         * config/ho-vms.h (strchr, strdup): Declare.
1871
1872         * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Accept and ignore
1873         option `-q'.
1874
1875         Wed May 18 20:50:35 1994  Pat Rankin  ([email protected])
1876
1877         * config/obj-vms.h (DBG_S_C_SQUAD, DBG_S_C_UQUAD): define these
1878         new VMS symbol-type macros; signed and unsigned quadword integers,
1879         for `long long' support.  Their values come from the existing
1880         DSC$K_DTYPE_QU and DSC$K_DTYPE_Q macros in <descrip.h>.  The
1881         VMS debugger now recognizes `long long' variables correctly.
1882         * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
1883         for gcc2's predefined types "long double" (same as double, as
1884         per gcc's current state), "long long int", "long long unsigned
1885         int", and final `otherwise' case (to avoid uninitialized type
1886         and size fields).  [caveat:  predefined types "complex int",
1887         "complex float", "complex double", and "complex long double" are
1888         still missing.]
1889
1890         * config/ho-vms.h (EXIT_FAILURE): define as 0x10000002 instead
1891         of 0, because the latter indicates success rather than failure
1892         when passed to `exit' or return from `main' compiled by gcc2.
1893
1894         * config/obj-vms.c (array_suffix, generate_suffix): replace two
1895         hardcoded `0xa3's with macro DBG_S_C_ADVANCED_TYPE from obj-vms.h.
1896         (VMS_typedef_parse): eliminate redundant if-then-else when
1897         allocating new symbol entry and linking it to VMS_Symbol_type_list.
1898
1899         Tue May 17 20:47:31 1994  Pat Rankin  ([email protected])
1900
1901         * config/obj-vms.c (Write_VMS_MHD_Records): don't try to interpret
1902         the contents of the GAS_VERSION string when falling back to it for
1903         language processor identification.
1904
1905         * make-gas.com, vmsconf.sh (ENVIRON): fix misspelling of
1906         `psect_attr' in linker options.
1907
1908         Wed May 11 22:32:00 1994  DJ Delorie ([email protected])
1909
1910         * configure.bat: update to latest makefile.in
1911         * config/te-go32.h: [new] go32's environment
1912
1913 Fri May 20 17:59:34 1994  Ian Lance Taylor  ([email protected])
1914
1915         * as.h: Don't declare parameters for strstr.
1916
1917 Thu May 19 15:40:13 1994  Ian Lance Taylor  ([email protected])
1918
1919         * config/tc-sparc.c (md_section_align): Don't change the size if
1920         OBJ_ELF.
1921
1922 Wed May 18 13:08:07 1994  Ian Lance Taylor  ([email protected])
1923
1924         * Makefile.in (install): Redirect ln output to /dev/null.  If ln
1925         fails on gasp, install gasp.new, not gasp.
1926
1927 Wed May 18 09:16:36 1994  Jeff Law  ([email protected])
1928
1929         * config/tc-hppa.c (pa_ip): Use R_HPPA_ABS_CALL, not R_HPPA for
1930         absolute calls.
1931
1932 Tue May 17 12:50:46 1994  Jeff Law  ([email protected])
1933
1934         * config/tc-hppa.c (pa_parse_fp_cmp_cond): Report an error
1935         on a partial completer match.
1936
1937 Mon May 16 12:03:49 1994  Jeff Law  ([email protected])
1938
1939         * config/tc-hppa.c: Change .hppa_unwind to .PARISC.unwind
1940         throughout code.
1941         (is_complex): Delete definition and support for complex relocation
1942         types.
1943         (tc_gen_reloc): Delete special unwind crud for ELF.  Simplify and
1944         rewrite ELF code based on 94-02-02 PA ELF draft spec.
1945         (pa_build_unwind_subspace): Use standard PARISC_DIR32 relocs for
1946         the unwind descriptors.
1947
1948 Fri May  6 14:13:15 1994  Steve Chamberlain  ([email protected])
1949
1950         * config/go32.mh: New makefile fragment for go32 crossing.
1951         * configure.in (host==go32): Use new fragment.
1952
1953 Fri May  6 14:35:58 1994  Ian Lance Taylor  ([email protected])
1954
1955         * gasp.c: Include libiberty.h.
1956         (main): Remove unused variable i.
1957
1958         * config/tc-ppc.c (md_begin): When using -many, permit comparison
1959         instructions to appear multiple times in the opcode table.
1960
1961 Thu May  5 19:14:43 1994  Ken Raeburn  ([email protected])
1962
1963         * Makefile.in (VERSION): Update to 2.2.90.
1964
1965         * symbols.c (symbol_new) [BFD_ASSEMBLER]: Don't permit additions
1966         to the symbol table if it's already been set in the output bfd.
1967         (symbol_begin) [! EMIT_SECTION_SYMBOLS] [RELOC_REQUIRES_SYMBOL]:
1968         Don't use bfd_abs_section.symbol for gas absolute symbol.
1969
1970         * doc/Makefile.in (distclean, clean-dvi, clean-info): Delete gasp
1971         files too.
1972
1973 Thu May  5 18:12:51 1994  Ian Lance Taylor  ([email protected])
1974
1975         * config/tc-mips.c (mips_emit_delays): Make call to
1976         mips_no_prev_insn unconditional.
1977
1978 Thu May  5 17:25:38 1994  Ken Raeburn  ([email protected])
1979
1980         * config/obj-coff*.*: Merged coffbfd versions into coff versions,
1981         with a single "#ifdef BFD_ASSEMBLER" controlling most of it for
1982         now.  Deleted obj-coffbfd.* files.
1983         * configure.in: Always use obj-coff.* for COFF targets.
1984
1985 Wed May  4 13:34:11 1994  Ken Raeburn  ([email protected])
1986
1987         * config/te-dpx2.h (TARGET_FORMAT, REGISTER_PREFIX_OPTIONAL):
1988         Define.
1989         * configure.in (m68k-bull-sysv3*): Enable.
1990
1991         * config/coff_gnu.h: Deleted.
1992
1993 Wed May  4 11:29:17 1994  Ian Lance Taylor  ([email protected])
1994
1995         * config/tc-m68k.h (TARGET_FORMAT): If not TE_SUN3, define as
1996         "a.out-zero.big".
1997
1998         * config/obj-coffbfd.c (fixup_segment): Make common symbol and PC
1999         relative adjustments when TE_LYNX is defined as well as when
2000         TC_I386 is defined.
2001
2002 Wed May  4 02:29:21 1994  Ken Raeburn  ([email protected])
2003
2004         * as.h (strstr): Restore declaration.
2005         (subseg_get) [BFD_ASSEMBLER]: Declare.
2006
2007         * write.c (write_object_file): If obj_adjust_symtab is defined,
2008         invoke it.  Then call set_symtab, and finally invoke *_frob_file
2009         hooks.
2010         * config/obj-coff.c (coff_adjust_symtab): Renamed from
2011         coff_frob_file.
2012         * config/obj-coff.h (coff_adjust_symtab): Changed declaration
2013         accordingly.
2014         (obj_adjust_symtab): Macro also changed.
2015
2016         * configure.in (i386-*-gnu*): New target, handled like i386-mach.
2017
2018 Tue May  3 21:04:16 1994  Ken Raeburn  ([email protected])
2019
2020         * config/obj-coff.h (TARGET_FORMAT) [TC_I960]: Select little
2021         endian version.
2022
2023         * config/obj-coffbfd.h (TARGET_FORMAT) [TC_I960]: Ditto.
2024
2025         * config/obj-coff.c (coff_frob_section): Round up the size of
2026         every section to a multiple of the alignment, so that BFD doesn't
2027         surprise us.
2028
2029         Eliminate many simple differences between the two COFF back ends:
2030
2031         * config/obj-coffbfd.c: Removed all uses of DEFUN and DEFUN_VOID.
2032         Made minor stylistic changes, deleted some register declarations.
2033         (stack_top): Deleted.
2034         (symbol_to_chars): Use absolute_section and reg_section instead of
2035         the corresponding SEG_* symbols.
2036         (obj_coff_endef, tag_find_or_make, fixup_segment): Likewise.
2037         (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
2038         Moved to just after pseudo-op table.  All functions now static.
2039         (stack_delete): Removed declaration.
2040         (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
2041         after stack functions.
2042         * config/obj-coffbfd.h: Reordered some declarations and macros.
2043         (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
2044         (stack typedef): Deleted.
2045         (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
2046         (SYM_AUXENT): New macro.
2047         (SA_GET_*, SA_SET_*): Define in terms of SYM_AUXENT when feasible.
2048         (SF_GET_*, SF_SET_*): Define in terms of SF_GET when feasible.
2049         (SA_GET_SYM_TAGNDX, SA_GET_SYM_ENDNDX, SA_SET_SYM_TAGNDX,
2050         SA_SET_SYM_ENDNDX, object_headers typedef, data_section_header,
2051         text_section_header): Delete non-BFD_HEADERS versions, since we
2052         always define that symbol now.
2053
2054         * config/obj-coff.c (stack_top): Deleted.
2055         (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
2056         obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Change
2057         argument name from "ignored" to "ignore".
2058         (obj_coff_val): Use frag_now_fix.
2059         (obj_pseudo_table): Removed IGNORE_DEBUG version, since it doesn't
2060         get used.
2061         (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
2062         Moved to just after pseudo-op table.  All functions now static.
2063         (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
2064         after stack functions.
2065         * config/obj-coff.h: Reordered some declarations and macros.
2066         Protected against multiple inclusions.
2067         (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
2068         (stack typedef): Deleted.
2069         (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
2070         (stdoutput): Deleted declaration.
2071         (TARGET_FORMAT) [TC_I386]: Don't define if already defined.
2072
2073 Mon May  2 17:09:24 1994  Ian Lance Taylor  ([email protected])
2074
2075         * subsegs.h (segment_info_type): Use fix_tail field even if
2076         BFD_ASSEMBLER.
2077         * subsegs.c (subseg_change): Initialize fix_tail field.
2078         (subseg_get): Likewise.
2079         * write.c (frags_chained): New static variable.
2080         (fix_new_internal): If frags_chained is set, use fix_root and
2081         fix_tail from seg_info (now_seg), rather than frchain_now.
2082         (chain_frchains_together_1): Set fix_tail field.
2083         (chain_frchains_together): Set frags_chained.
2084
2085 Thu Apr 28 01:39:15 1994  Ken Raeburn  ([email protected])
2086
2087         * config/tc-mips.c (s_option): Only refer to g_switch_* variables
2088         if GPOPT is defined.
2089         (s_abicalls): Ditto.
2090         (md_apply_fix): Cast char* to unsigned char* to avoid pointer
2091         mismatch.
2092
2093 Wed Apr 27 11:06:32 1994  Steve Chamberlain  ([email protected])
2094
2095         * configure.in (i386-*-go32): Uses coff now.
2096         * gasp.c (main): Now takes -D on command line.  
2097         (show_usage): Describe new options.
2098
2099 Tue Apr 26 17:10:30 1994  Ken Raeburn  ([email protected])
2100
2101         * listing.c (list_symbol_table): Print "NO DEFINED SYMBOLS" and
2102         "NO UNDEFINED SYMBOLS" if there aren't any, instead of displaying
2103         the header with an empty list.
2104
2105         * config/obj-coffbfd.c (fill_section): Check COFF_NOLOAD_PROBLEM
2106         also before setting STYP_NOLOAD for .bss section.
2107
2108         * config/tc-m68k.c (flag_reg_prefix_optional): New variable.
2109         Initialized to value of REGISTER_PREFIX_OPTIONAL, if defined, or
2110         zero.
2111         (m68k_reg_parse): If flag_reg_prefix_optional is set, permit
2112         register prefix to be absent.
2113         (m68k_ip_op): Accept `&' also for immediate constants.
2114         (insert_reg): Don't bother with (two!?) sanity checks of the
2115         symbol table when inserting each register.
2116         (m68k_parse_long_option): New function.  Set
2117         flag_reg_prefix_optional if "register-prefix-optional" is passed.
2118         * config/tc-m68k.h (REGISTER_PREFIX): Always define if not already
2119         defined.
2120         (OPTIONAL_REGISTER_PREFIX): Don't define.
2121         (REGISTER_PREFIX_OPTIONAL): If not already defined, define as zero
2122         or one depending on M68KCOFF.
2123
2124         Some changes to help Apollo support, from [email protected]:
2125         * config/tc-m68k.c (DATA, ADDR, SP, FPREG, COPNUM, BAD, BAC):
2126         Define as macros instead of enumerators, since the Apollo compiler
2127         can't handle "enumVal1, enumVal2 = enumVal1" when defining an enum
2128         type.
2129         (make_pcrel_absolute) [NO_PCREL_RELOCS]: New function.
2130         (tc_coff_fix2rtype) [NO_PCREL_RELOCS]: Generate only R_RELBYTE,
2131         R_DIR16, and R_DIR32 relocs.
2132         * config/tc-m68k.h [TE_APOLLO] (COFF_MAGIC, COFF_AOUTHDR_MAGIC):
2133         Use Apollo versions.
2134         [TE_APOLLO] (OBJ_COFF_OMIT_OPTIONAL_HEADER): Undefine.  That is,
2135         do include the optional header for Apollo target.
2136         (COFF_MAGIC): Don't define as MC68MAGIC if it's already defined.
2137
2138         * config/tc-m68k.h [TE_DELTA] (LEX_PCT): Define as 1, so that `%'
2139         can be used within a label name.
2140
2141         * config/tc-m68k.h (m68k_init_after_args): Declare.
2142         (tc_init_after_args): Define as m68k_init_after_args.
2143         * config/tc-m68k.c (m68k_init_after_args): New function,
2144         containing one-shot code from md_assemble.  Added warning for
2145         combination of 68040 and 68851.
2146         (md_assemble): Startup-time code deleted.
2147
2148 Mon Apr 25 16:19:17 1994  Ian Lance Taylor  ([email protected])
2149
2150         * doc/Makefile.in (clean, distclean): Remove asconfig.texi.
2151
2152 Sun Apr 24 00:13:08 1994  Jeffrey A. Law  ([email protected])
2153
2154         * config/tc-hppa.c (pa_ip): 13 bit immediate constant (for break
2155         instruction) is unsigned.
2156
2157 Fri Apr 22 17:58:22 1994  Ian Lance Taylor  ([email protected])
2158
2159         * config/obj-ecoff.c (ecoff_frob_file): Use bfd_ecoff_set_gp_value
2160         and bfd_ecoff_set_regmasks to set the GP value and the register
2161         masks, rather than using the now obsolete fake .reginfo section.
2162
2163 Fri Apr 22 15:17:06 1994  Ken Raeburn  ([email protected])
2164
2165         * listing.c (list_symbol_table): Don't print register symbols as
2166         undefined.
2167
2168         * config/obj-coff.c (obj_symbol_new_hook): Don't need to strip
2169         underscores, since symbol_new will already have done it.
2170         * config/obj-coffbfd.c (obj_symbol_new_hook): Ditto.
2171
2172         * as.c (main): If tc_init_after_args is defined, invoke it after
2173         all arguments have been processed.
2174
2175         Some changes to help Apollo support, from [email protected]:
2176         * as.c (perform_an_assembly_pass) [TE_APOLLO]: Create .wtext
2177         section instead of .text.  Call create_target_segments.
2178         * read.c (demand_copy_string): No longer static.
2179
2180 Thu Apr 21 15:50:04 1994  Ian Lance Taylor  ([email protected])
2181
2182         * config/tc-mips.c (append_insn): Permit branches to be switched
2183         with the preceding instruction even if .set nobopt has been seen.
2184         .set nobopt actually controls whether to bring up an instruction
2185         from the branch target, which gas does not currently support.
2186
2187 Wed Apr 20 18:46:14 1994  Ken Raeburn  ([email protected])
2188
2189         * config/obj-coff.h, config/obj-coff.c: Deleted all code used only
2190         when BFD_ASSEMBLER is not defined, and all conditionals relating
2191         to such code.  No such targets remain.
2192
2193         Fixes for stabs-in-coff:
2194         * config/obj-coff.c: Include subsegs.h.
2195         (coff_frob_section): New function.
2196         (obj_coff_init_stab_section): New function.
2197         * config/obj-coff.h (obj_coff_init_stab_section,
2198         coff_frob_section): Declare.
2199         (obj_frob_section): New macro; uses coff_frob_section.
2200         (INIT_STAB_SECTION): New macro; uses obj_coff_init_stab_section.
2201
2202         * config/tc-sparc.c (md_section_align): Always round up to
2203         multiple of alignment power specified in bfd target vector.
2204
2205         * gasp.c: Include ctype.h.
2206
2207 Mon Apr 18 21:08:01 1994  Ken Raeburn  ([email protected])
2208
2209         * doc/Makefile.in, doc/as.texinfo: Renamed asdoc-config.texi to
2210         asconfig.texi.
2211
2212         * doc/Makefile.in (install-info-as, install-info-gasp): Get file
2213         names from source directory without pathname.
2214
2215         * config/obj-vms.c (VMS_write_object_file): While looking for
2216         register mask, skip empty fill frags caused by enabling listing
2217         output.
2218
2219         * config/ho-sysv.h: Include string.h.
2220
2221         * doc/internals.texi: New (well, recently added) file.  Just added
2222         info on as_warn and friends.
2223
2224 Mon Apr 18 14:28:22 1994  Jeffrey A. Law  ([email protected])
2225
2226         * config/tc-hppa.c (pa_parse_space_stmt): Use the built-in
2227         defaults for defined, private, and spnum fields for the
2228         $TEXT$ and $PRIVATE$ spaces.  Do not clobber spnum.  Do
2229         not reset the segment if just updating a space.
2230         (pa_spaces_begin): Set BFD section flags for all built-in
2231         subspaces.
2232
2233 Fri Apr 15 10:51:51 1994  Ian Lance Taylor  ([email protected])
2234
2235         * ecoff.c (first_proc_ptr): New static variable.
2236         (add_procedure): Set first_proc_ptr if it hasn't been set.
2237         (ecoff_build_lineno): If the first procedure does not start at
2238         address zero, insert a dummy line to compensate.
2239
2240         * Makefile.in (bootstrap, bootstrap2, bootstrap3): Make gasp.new
2241         as well as as.new.
2242
2243 Thu Apr 14 15:12:36 1994  Ken Raeburn  ([email protected])
2244
2245         * expr.c (operand): Try to parse "0f" and "0b" sequences as
2246         floating point and binary numbers respectively; if it doesn't
2247         work, treat them as local labels.
2248
2249         * Makefile.in: Make $(OBJS) depend on $(ALL_OBJ_DEPS).
2250         * configure.in: Set ALL_OBJ_DEPS in output Makefile.
2251
2252         Based on suggestions from <[email protected]>
2253         (Charles Bailey):
2254         * vmsconf.sh: In generated file, get ".obj" suffix right, build
2255         source files from other directories into objects in the current
2256         directory, and specify PSECT attributes explicitly to linker.
2257         Also added missing label.
2258         * Makefile.in (stamp-mk.com): Reference new variable
2259         VMS_OTHER_OBJS for list of non-local object files, instead of
2260         listing them here.
2261         (VMS_OTHER_OBJS): New variable, added more libiberty files.
2262         * make-gas.com: Regenerated.
2263
2264         * config/ho-vms.h (unlink): Define as delete.
2265
2266         * config-gas.com: Fix quoting on TARGET_CANONICAL definition.
2267         Delete files before creating them.
2268
2269 Thu Apr 14 13:34:24 1994  Ian Lance Taylor  ([email protected])
2270
2271         * Makefile.in (de-stage1, de-stage2, de-stage3): Use rm -f.
2272
2273         * config/tc-mips.h (DIFF_EXPR_OK): Define.
2274         * config/tc-mips.c (macro_build): Permit BFD_RELOC_PCREL_LO16 for
2275         certain cases of 'i', 'j' and 'o'.  Change 'u' to take an
2276         argument, the reloc type.
2277         (load_register): Pass reloc type to macro_build for 'u'.
2278         (macro): Likewise.  For M_LA_AB permit a difference expression
2279         when generating embedded PIC code between an arbitrary symbol and
2280         a symbol in the .text section.
2281         (mips_force_relocation): Force BFD_RELOC_PCREL_HI16_S and
2282         BFD_RELOC_PCREL_LO16 to be emitted.
2283         (md_apply_fix): Check that most relocs are not PC relative.
2284         Handle BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
2285         (tc_gen_reloc): Change #error to as_fatal.  Handle
2286         BFD_RELOC_PCREL_LO16 and BFD_RELOC_PCREL_HI16_S.
2287
2288 Tue Apr 12 18:25:13 1994  Stan Shebs  ([email protected])
2289
2290         * subsegs.c (subsegs_begin): Call memset with args in the correct
2291         order.
2292         (subseg_get): Clear newly allocated seginfo, set its pointer slots
2293         to NULL instead of 0.
2294
2295 Mon Apr 11 09:00:57 1994  Jeffrey A. Law  ([email protected])
2296
2297         * config/tc-hppa.c (pa_procend): Handle case where label was
2298         defined after the .proc directive.
2299
2300         * config/tc-hppa.c (pa_procend): Give an error if we encounter a
2301         procend for a procedure without a name.
2302
2303 Thu Apr  7 14:28:30 1994  Ian Lance Taylor  ([email protected])
2304
2305         * config/tc-mips.c (macro): Pass NULL for expression argument to
2306         macro_build for nori case.
2307         (SWITCH_TABLE): Define.
2308         (mips_force_relocation): Force a relocation for a switch table
2309         entry.
2310         (md_apply_fix): Write switch table entry value into file.
2311         (tc_gen_reloc): Use BFD_RELOC_GPREL32 for a switch table entry,
2312         and set the addend to the difference between the reloc address and
2313         the subtrahend.
2314
2315 Thu Apr  7 10:38:18 1994  Jeffrey A. Law  ([email protected])
2316
2317         * config/tc-hppa.h (elf_tc_symbol): Delete.  No longer used.
2318         (elf_tc_make_sections): Likewise.
2319         (hppa_tc_make_sections, hppa_tc_symbol): Delete extern decls.
2320
2321         * config/tc-hppa.c (hppa_tc_make_sections): Delete function.
2322         (hppa_tc_symbol): Likewise.
2323
2324         * config/obj-elf.c (elf_frob_file): Delete elf_tc_symbol and
2325         elf_tc_make_sections stuff.  It was there to support PA braindamage
2326         which has been fixed, and in the case of elf_tc_make_sections is
2327         redundant with elf_tc_final_processing.
2328
2329 Wed Apr  6 20:48:30 1994  Jeffrey A. Law  ([email protected])
2330
2331         * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
2332         manufacturer.
2333
2334 Tue Apr  5 15:48:03 1994  Ian Lance Taylor  ([email protected])
2335
2336         * config/tc-mips.c (mips_ip): For case 'o', when generating
2337         embedded PIC code, accept the difference between two local symbols
2338         as being constant.
2339         (mips_force_relocation): Only force a reloc to be generated for a
2340         PC relative fixup.
2341         (md_apply_fix): For BFD_RELOC_32 and BFD_RELOC_LO16, put the fixup
2342         value into the file if the fixup will not generate a reloc.
2343
2344 Tue Apr  5 11:14:14 1994  Ken Raeburn  ([email protected])
2345
2346         * config/tc-sparc.c (s_reserve): If section passed isn't bss,
2347         don't spew remainder of input file in error message.
2348         (tc_gen_reloc): If bfd_reloc_type_lookup returns null, print error
2349         message with reloc type and try to process remainder of file.
2350
2351         * doc/Makefile.in (install-info-as, install-info-gasp): New
2352         targets, now explicitly checking $(srcdir) for info files.
2353         (install-info): Depend on both of them; do nothing more.
2354
2355 Mon Apr  4 17:06:04 1994  Jeffrey A. Law  ([email protected])
2356
2357         * config/tc-hppa.c (tc_gen_reloc): Fix thinko in ELF version.
2358
2359 Mon Apr  4 12:39:23 1994  Ian Lance Taylor  ([email protected])
2360
2361         * config/tc-ppc.c (ppc_insert_operand): Check PPC_OPERAND_SIGNED
2362         flag rather than signedp field.  Only permit extended range if
2363         PPC_OPERAND_SIGNOPT flag is set and assembling in 32 bit mode.
2364         Based on patch from David Edelsohn ([email protected]).
2365
2366         * config/tc-ppc.c (ppc_size): New static variable.
2367         (ppc_arch): Check for PPC_OPCODE_PPC before PPC_OPCODE_POWER.
2368         (md_begin): If an instruction has a size specific flag set, only
2369         add it if we are assembling that size.
2370
2371 Thu Mar 31 16:51:16 1994  Ian Lance Taylor  ([email protected])
2372
2373         * config/tc-sparc.c (tc_gen_reloc): Add a gruesome hack to get
2374         cross section PC relative relocs right for COFF and ELF.
2375
2376 Mon Mar 28 14:38:23 1994  Ken Raeburn  ([email protected])
2377
2378         * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Always define.
2379         (OBJ_PROCESS_STAB): Don't define.
2380
2381 Mon Mar 28 12:40:25 1994  Ian Lance Taylor  ([email protected])
2382
2383         * config/obj-aout.c (obj_aout_frob_symbols): Don't let BFD clobber
2384         the type of symbol set symbols which happen to be in the absolute
2385         or undefined section.
2386
2387 Mon Mar 28 12:35:00 1994  David Edelsohn  ([email protected])
2388
2389         * config/tc-ppc.c (md_parse_option): Add -mpwrx (POWER/2 aka
2390         RIOS2), -mpwr (POWER aka RIOS1), -mppc (PowerPC aka MPC603/604),
2391         and -many (all architectures).
2392
2393 Sun Mar 27 14:04:19 1994  Jeffrey A. Law  ([email protected])
2394
2395         * config/tc-hppa.c (tc_gen_reloc): Set addend for relocation
2396         involving a function symbol which is not a plabel to zero.
2397         (md_apply_fix): Never pass a function symbol to field_adjust.
2398
2399 Fri Mar 25 17:35:49 1994  Ian Lance Taylor  ([email protected])
2400
2401         * config/obj-aout.c (obj_aout_frob_symbol): If N_EXT is set for an
2402         N_INDR symbol, set BSF_EXPORT and clear BSF_LOCAL.
2403
2404         * config/tc-mips.c (append_insn): If EMBEDDED_PIC, don't swap a
2405         branch with an instruction that uses $at, in case the branch is
2406         later expanded.
2407         (macro): If EMBEDDED_PIC, case M_JAL_A may use $at.
2408         (md_pcrel_from): If not OBJ_AOUT, return 4 for an undefined symbol
2409         to make it pcrel_offset.
2410         (tc_gen_reloc): If not OBJ_AOUT, set the reloc addend to
2411         reloc->address; another gruesome hack to get gas reloc handling to
2412         do the right thing.
2413
2414 Thu Mar 24 21:29:29 1994  Ken Raeburn  ([email protected])
2415
2416         * config/tc-alpha.c (alpha_ip): Only set GP prolog size if using
2417         PV register.
2418         (T12): New macro.
2419         (emit_insn): New function.
2420         (md_assemble): Call it.
2421         (alpha_force_relocation): Handle BFD_RELOC_26, for call_pal
2422         instructions.
2423         (lituse_pending): New variable.  Set by anything that generates a
2424         LITERAL reloc, cleared by anything that generates a LITUSE reloc,
2425         tested by code that might want to emit a LITUSE reloc.
2426         (emit_unaligned_io): New function.  Currently calls md_assemble,
2427         but it should eventually be converted to generate the insn itself
2428         and call emit_insn directly.
2429         (emit_load_unal, emit_store_unal, emit_byte_manip_r,
2430         emit_extract_r, emit_insert_r, emit_mask_r, emit_sign_extend,
2431         emit_bis_r): Likewise.
2432         (alpha_ip, case 'I'): Handle with BFD_RELOC_23.
2433         (alpha_ip, label get_macro): Don't emit the final instruction if
2434         the opcode is zero.
2435         (alpha_ip, case 'B', subcase 'd'): New case, for subword and
2436         unaligned memory access macros.
2437         (md_apply_fix): Handle BFD_RELOC_26.  Generate an error message if
2438         the value can't be resolved.
2439
2440 Wed Mar 23 16:06:08 1994  Ian Lance Taylor  ([email protected])
2441
2442         * config/tc-mips.c (md_parse_option): For -membedded-pic, force
2443         the -G value to 0x7fffffff.  For SVR4 PIC options, don't call
2444         bfd_set_gp_size here, it's done in md_begin.  Don't permit -G with
2445         -membedded-pic.
2446         (mips_force_relocation): New function.
2447         (md_apply_fix): Set fixP->fx_done appropriately.
2448         (s_change_sec): For EMBEDDED_PIC, change .data and .rdata to
2449         .sdata.
2450         * config/tc-mips.h (TC_FORCE_RELOCATION): Define.
2451         (mips_force_relocation): Declare.
2452         (TC_HANDLE_FX_DONE): Define.
2453
2454 Tue Mar 22 13:58:37 1994  Ian Lance Taylor  ([email protected])
2455
2456         * config/tc-mips.c (enum mips_pic_level): New enum.
2457         (mips_pic): Change from int to enum mips_pic_level.  Change all
2458         uses (0 becomes NO_PIC, 2 becomes SVR4_PIC).
2459         (load_address): Handle EMBEDDED_PIC.
2460         (macro): Handle EMBEDDED_PIC in all PIC cases.
2461         (md_parse_option): Accept -membedded-pic to use EMBEDDED_PIC.  If
2462         OBJ_ELF, accept -KPIC and -call_shared to use SVR4_PIC and accept
2463         -non_shared to use NO_PIC (this is how the Irix 5 assembler
2464         works).  Do not permit -G with SVR4_PIC.
2465         (s_abicalls): Warn if -G was used, and force -G 0.
2466         (tc_gen_reloc): Set reloc->addend to 0 for a PC relative reloc for
2467         anything but a.out, not just for ELF.  For ECOFF, don't generate a
2468         BFD_RELOC_16_PCREL_S2 reloc unless using EMBEDDED_PIC.
2469
2470         * config/obj-ecoff.h (obj_sec_sym_ok_for_reloc): Define to be 1.
2471
2472 Sun Mar 20 16:31:55 1994  Jeffrey A. Law  ([email protected])
2473
2474         * config/tc-hppa.c (create_new_space): Use ints, not chars as
2475         parameters to avoid losing when compiling with HP CC.
2476         (create_new_subspace, update_subspace, fix_new_hppa): Likewise.
2477
2478 Sun Mar 20 14:43:14 1994  Ken Raeburn  ([email protected])
2479
2480         * Makefile.in (config-stamp): If `defs' is defined, emit a
2481         preprocessor directive to create a macro named by this value into
2482         config.new; don't explicitly go for BFD_ASSEMBLER.
2483         * configure.in: Define `defs', not `BFDDEF'.  Set it to
2484         MANY_SEGMENTS for any obj-coffbfd target.
2485         * config/obj-coffbfd.h (BFD_HEADERS, BFD): Define.
2486         * config/i386coff.mt (TDEFINES): Don't define BFD, MANY_SEGMENTS,
2487         or BFD_HEADERS.
2488         (LOCAL_LOADLIBES): Deleted.
2489         * config/m68kcoff.mt (TDEFINES): Don't define those macros.
2490         * config/m88kcoff.mt (TDEFINES): Ditto.
2491         * config/ebmon29k.mt: Deleted.
2492         * config/h8300hds.mt: Deleted.
2493         * config/ic960coff.mt: Deleted.
2494         * config/sparc.mt: Deleted.
2495         * config/h8300.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
2496         * config/h8500.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
2497         * config/sh.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
2498         * config/z8k.mt (LOCAL_LOADLIBES): Deleted.
2499         (TDEFINES): Don't define the coffbfd macros.
2500
2501         * Makefile.in: Insert makefile fragments before OBJS definition.
2502         (OBJS): Add $(TE_OBJS).
2503
2504         * config/obj-coff.c (obj_pseudo_table): Supply "section"
2505         unconditionally.
2506
2507         * write.c (set_symtab): Define only if BFD_ASSEMBLER.
2508
2509 Sun Mar 20 12:06:05 1994  Jeffrey A. Law  ([email protected])
2510
2511         * Makefile.in (STAGESTUFF): Add gasp.new.
2512
2513 Fri Mar 18 20:09:16 1994  Ken Raeburn  ([email protected])
2514
2515         * write.c (symbol_table_frozen): New variable, to be set after
2516         bfd_set_symtab is called.
2517         (dump_section_relocs): Note whether a symbol is a section symbol
2518         or not.
2519         (adjust_reloc_syms): For now, always supply an absolute symbol for
2520         fixups without symbols but not yet `done'.  Use section_symbol to
2521         get the symbol, instead of going directly for abs_symbol.
2522         (write_relocs) [DEBUG4]: Abort if any symbol referred to by a
2523         reloc is not a section symbol and is not in the symbol table.
2524         (set_symtab): New function, broken out from write_object_file.
2525         Counts symbol table instead of relying on an earlier count.
2526         (write_object_file): Call set_symtab, but do it after potentially
2527         invoking the *_frob_file macros.  Don't bother counting symbols.
2528         Call symbol_remove, instead of expanding it in place.  Moved the
2529         conditionalized `object_file_size' declaration down to
2530         conditionalized block where it's used.  When using the absolute
2531         symbol for a fixup without a symbol, set sy_used_in_reloc.
2532         (write_object_file) [BFD_ASSEMBLER]: Call section_symbol to get
2533         the correct symbol for the absolute section.
2534
2535         * subsegs.c (section_symbol): Use symbol_new instead of
2536         symbol_make, since we may want it to go into the symbol table.
2537         Make the new symbol have internal linkage.  If
2538         obj_sec_sym_ok_for_reloc says it's okay, use the BFD section
2539         symbol with the newly created GAS symbol.
2540         (obj_sec_sym_ok_for_reloc): Default to always returning 0.
2541         * config/obj-aout.h (obj_sec_sym_ok_for_reloc) [BFD_ASSEMBLER]:
2542         New macro.
2543         * config/obj-elf.h (obj_sec_sym_ok_for_reloc): New macro.
2544
2545         * config/tc-sparc.c: Include subsegs.h.
2546         (in_signed_range): New function.
2547         (sparc_ip): Use it.
2548         (sparc_ip, case 'i'): Use BFD_RELOC_SPARC13, not _BASE13.
2549         (sparc_ip, label "immediate"): Reject constants for pcrel
2550         instructions only if the relocation type indicates a "call"
2551         instruction and the offset is within range of a "jmpl %g0".  If
2552         it's not in range, use the absolute section symbol plus an offset.
2553         (md_apply_fix): Use in_signed_range.  Combined _SPARC13 and
2554         _BASE13 cases.
2555         (tc_gen_reloc): Permit BFD_RELOC_SPARC13.
2556
2557         * config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
2558         MANY_SEGMENTS).
2559
2560         * configure.in: Eliminated all targets using obj-coff but not
2561         defining BFD_ASSEMBLER; I think all such targets that are
2562         supported will be matched by real CPU-OS combinations earlier in
2563         the case statement.
2564         (targets *-*-coff*, *-sysv*, *-*-sco*, *-*-sysv32): Deleted.  Made
2565         some comments about the dpx2 configuration, but left it disabled,
2566         since it couldn't be reached before.
2567         (target a29k-amd-ebmonold): Deleted.
2568
2569 Thu Mar 17 13:36:09 1994  Jeffrey A. Law  ([email protected])
2570
2571         * config/tc-hppa.c (pa_import): Correctly handle importing of an
2572         already defined symbol.
2573
2574 Wed Mar 16 17:11:37 1994  Ian Lance Taylor  ([email protected])
2575
2576         * config/tc-mips.c (mips_ip): Only accept overly large values for
2577         the 'j' operand if there are no further alternatives for this
2578         instruction.
2579
2580         * config/obj-coffbfd.c (adjust_stab_section): Initialize
2581         stabstrseg to SEG_UNKNOWN, not -1.  After loop, check whether it
2582         is not SEG_UNKNOWN rather than checking whether it is >= 0.
2583
2584         * config/tc-mips.c (mips_align): Take new argument, label, and use
2585         it instead of global insn_label.
2586         (s_align, s_cons, s_float_cons, s_gpword): Save insn_label before
2587         call to mips_emit_delay and pass it to mips_align.
2588
2589 Wed Mar 16 11:54:12 1994  Jeffrey A. Law  ([email protected])
2590
2591         * config/tc-hppa.c (pa_equ): Handle both .reg and .equ correctly.
2592
2593         * config/tc-hppa.c (pa_callinfo): Accept "millicode" as an
2594         argument to a .callinfo directive.  Don't loop forever on errors.
2595
2596         * config/tc-hppa.c (pa_equ): Use pa_parse_number so that we can
2597         use pre-defined registers as arguments.
2598
2599 Mon Mar 14 14:29:45 1994  Ken Raeburn  ([email protected])
2600
2601         * write.c (write_object_file): Check both S_IS_LOCAL and
2602         S_IS_EXTERNAL when deciding whether to discard a symbol.
2603
2604         * config-gas.com: Scan Makefile.in, not version.c, for current
2605         version number.  Delete all versions of temp files when finished
2606         with them.  Create config.h.
2607
2608         * config/obj-vms.c (VMS_Initialized_Data_Size): Cache symbol
2609         values to reduce number of lookups with S_GET_VALUE.  Skip debug
2610         symbols to avoid "a really nasty bug".  (From Holger Teutsch,
2611         [email protected].)
2612         (VMS_write_object_file): For "__vt.*" symbols, set S_GET_OTHER
2613         field.  (Also from Holger Teutsch.)  Watch for a would-be register
2614         mask that spans frags.
2615
2616         * config/obj-coffbfd.c (obj_coff_line): Set symbol lnno field with
2617         this_base, not line_base.  (Patch from Andreas Arens,
2618         [email protected].)
2619
2620         * config/obj-aout.c (obj_crawl_symbol_chain): Retain symbols that
2621         look local if they're exported or undefined.  Used to be done for
2622         i960 only.
2623
2624         * read.c (s_lcomm, s_comm): Print symbol name being redefined.
2625         Get it from the looked-up symbol, instead of using the string from
2626         the input stream, which is no longer null-terminated.
2627         (LEX_PCT): New macro, defaults to 0.
2628         (lex_type): Use it for `%'.
2629
2630         * config/tc-vax.c (md_parse_option): Handle `-h#' option for VMS.
2631         (vip_op): Now static, and returns void.  Callers changed.  Added
2632         forward decl.
2633         (vip): Ditto.  Call as_fatal directly if a program bug is
2634         detected.
2635         (op_hash): Let default initialization suffice.
2636
2637         * Makefile.in (literal.o): Provide dependencies.
2638
2639         * configure.in: Set new makefile variable OPCODES_LIB.
2640         * Makefile.in (LIBS): Use it.
2641
2642         * Makefile.in (make-gas.com, stamp-mk.com): New targets.
2643         * vmsconf.sh: New file.
2644         * make-gas.com: Regenerated from new script.
2645
2646         * configure.in (sparc*-*-lynxos*): Handle any version number
2647         suffix after "lynxos".  Set emulation to lynx.
2648
2649 Mon Mar 14 11:30:49 1994  Ken Raeburn  ([email protected])
2650
2651         * config/obj-coff.c (obj_coff_section): Delete declaration.
2652
2653 Fri Mar 11 22:25:44 1994  Ian Lance Taylor  ([email protected])
2654
2655         * config/tc-ppc.c (md_pcrel_from): Return 0 for undefined ELF
2656         symbols.
2657         (ppc_is_toc_sym): Change .toc to .got.
2658         (md_apply_fix): Change handling of ELF relocs.
2659         (tc_gen_reloc): Likewise.
2660
2661 Fri Mar 11 17:42:20 1994  Ken Raeburn  ([email protected])
2662
2663         * config/obj-vms.c (Close_VMS_Object_File): Add comment pointing
2664         out some code that doesn't belong in this file.
2665
2666         * config/obj-vms.h: Include aout/stab_gnu.h.
2667         (N_GSYM, ..., N_LENG): Deleted.
2668         (NO_RELOC): Undefine before defining as part of enum reloc_type.
2669
2670         * config/tc-alpha.c: Add comment questioning need for all the
2671         characters in FLT_CHARS.
2672
2673         * as.c (main) [OBJ_VMS]: Don't call output_file_close.
2674
2675         * config/obj-ecoff.c (ecoff_frob_file): Set strict order for
2676         sections with recognized names, before computing VMA values.
2677
2678 Fri Mar 11 17:56:23 1994  Ian Lance Taylor  ([email protected])
2679
2680         * config/tc-mips.c (mips_ip): Accept numbers between 0x8000 and
2681         0xffff for 'j' to be compatible with MIPS assembler.  These
2682         numbers are actually treated as negative.
2683
2684 Thu Mar 10 13:36:29 1994  Doug Evans  ([email protected])
2685
2686         * config/tc-sparc.h (LOCAL_LABEL): Local labels are .Lfoo.
2687
2688 Tue Mar  8 21:17:12 1994  Ken Raeburn  ([email protected])
2689
2690         * config/obj-coff.c: Minor formatting/stylistic changes, plus:
2691         (obj_coff_section): Declare.
2692         (obj_pseudo_table): Make it available only if MANY_SECTIONS.
2693         (obj_symbol_to_chars) [CROSS_COMPILE]: Some attemps to make this
2694         work.  It still doesn't.  It now fails to compile, instead of
2695         silently compiling to do nothing.
2696         * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define only if
2697         MANY_SECTIONS.
2698         (OBJ_PROCESS_STAB) [! MANY_SECTIONS]: New macro, just emits
2699         warning.
2700
2701         Handle Alpha load-immediate-FP pseudo-instructions:
2702         * config/alpha-opcode.h (ldif, ldig, ldis, ldit): New patterns.
2703         * config/tc-alpha.c (lit8_sec, lit4_sec, lit8_sym, lit4_sym): New
2704         variables.
2705         (create_literal_section): New function.
2706         (create_lita_section): Now a macro.
2707         (get_lit8_offset, get_lit4_offset): New functions.
2708         (maybe_set_gp): New function.
2709         (select_gp_value): Call it.
2710         (load_expression): Preserve addend if symbol is a section symbol.
2711         (alpha_ip): Handle new operand type `F' for floating-point
2712         constants; store them in .lit{4,8} sections.
2713         (alpha_ip, case 'G'): Emit LITUSE relocations for symbol exprs.
2714
2715         * config/tc-i386.c (smallest_imm_type): Never return Imm1.
2716
2717 Tue Mar  8 14:18:15 1994  Steve Chamberlain  ([email protected])
2718
2719         * config/obj-coffbfd.c (w_strings): Only copy strings out if
2720         their symbols are going to be written.
2721
2722 Tue Mar  8 11:49:27 1994  Ian Lance Taylor  ([email protected])
2723
2724         * messages.c (as_perror): Declare arguments const.
2725         * as.h (as_perror): Change declaration.
2726
2727 Mon Mar  7 16:08:25 1994  Ian Lance Taylor  ([email protected])
2728
2729         * config/tc-mips.c (load_address): When calling frag_grow, allow
2730         for the (up to) two nops which may be inserted by append_insn if
2731         mips_optimize is 0.
2732         (macro): Likewise.
2733
2734 Thu Mar  3 11:37:55 1994  Doug Evans  ([email protected])
2735
2736         * config/atof-ieee.c (make_invalid_floating_point_number):
2737         Add cast to avoid warning from gcc.
2738
2739 Wed Mar  2 10:31:01 1994  Jeffrey A. Law  ([email protected])
2740
2741         * config/tc-hppa.c: Add a few casts to make HP C compiler happy.
2742
2743         * config/obj-som.c (obj_som_version, obj_som_copyright): Be
2744         prepared
2745         to handle an error from bfd_som_attach_aux_hdr.
2746
2747         * config/tc-hppa.h: Wrap ELF specific decls inside an ifdef.
2748
2749 Mon Feb 28 15:03:26 1994  Ken Raeburn  ([email protected])
2750
2751         * config/tc-alpha.c (md_atof): Omit warning about FP values.
2752         (line_comment_chars): Add ! to list.
2753         (md_apply_fix): Do process 32- and 64-bit relocations.
2754
2755         * config/obj-coffbfd.c (obj_coff_lcomm): Put "#if 0" around the
2756         unused parts (most of the function).
2757         (obj_coff_init_stab_section): Cast alloca result.
2758
2759         * configure.in (i960-*-coff, i960-*-vxworks5.*): Use coffbfd, and
2760         gas_target ic960coff.
2761         * config/ic960coff.mt: New file.
2762         * config/obj-coffbfd.h [TC_I960]: Include coff/i960.h.
2763         (TARGET_FORMAT) [TC_I960]: Use coff-Intel-little.
2764         * config/te-ic960.h (CROSS_COMPILE): Don't undef this.  We'll
2765         always build little-endian object files.
2766         * config/tc-i960.c (md_reloc_size): Don't define at all if BFD or
2767         BFD_ASSEMBLER is defined.
2768         (mem_fmt): Since COFF doesn't handle callx relocations yet, treat
2769         them like normal 32-bit relocations.
2770         (md_apply_fix): For callx relocations, store zero.
2771         (tc_bout_fix_to_chars): Store symbol index for all callx
2772         relocations, regardless of link-relax setting.
2773         (tc_coff_fix2rtype, tc_coff_sizemachdep): New functions.
2774         (i960_handle_align) [! OBJ_BOUT]: If link-relax option is
2775         selected, print an error message and clear it.
2776         * config/tc-i960.h (BFD_ARCH, COFF_FLAGS, COFF_MAGIC,
2777         TC_COUNT_RELOC, TC_COFF_FIX2RTYPE, TC_COFF_SIZEMACHDEP,
2778         tc_fix_adjustable): New macros.
2779         (tc_coff_fix2rtype, tc_coff_sizemachdep): Declare.
2780
2781 Fri Feb 25 20:56:57 1994  Jeffrey A. Law  ([email protected])
2782
2783         * config/tc-hppa.c (hppa_tc_symbol): Call PA ELF BFD version.
2784         (hppa_tc_make_sections): Likewise.
2785         (pa_build_symextn_section): Delete unused function.
2786         (hppa_tc_make_symextn_section): Likewise.
2787         (pa_export): Delete call to pa_build_symextn_section.
2788
2789         * config/tc-hppa.h (hppa_tc_symbol): Add extern decl.
2790         (elf_hppa_final_processing): Delete extern decl.
2791         (hppa_tc_symbol): Delete extern decl.
2792
2793 Fri Feb 25 13:15:31 1994  Ian Lance Taylor  ([email protected])
2794
2795         * config/obj-coffbfd.c (fill_section): Correct test for whether to
2796         fill a section (from Minh Tran-Le <[email protected]>).
2797
2798 Thu Feb 24 11:30:26 1994  Ken Raeburn  ([email protected])
2799
2800         * configure.in: Don't require version number for i386-*-mach.
2801
2802         * read.c (potable): Added ".this_GCC_requires_the_GNU_assembler",
2803         which is ignored by gas, but will cause other assemblers to choke.
2804         Intended for use by gcc ports that require gas instead of native
2805         assemblers.
2806
2807 Thu Feb 24 07:10:31 1994  Jeffrey A. Law  ([email protected])
2808
2809         * config/ho-hppaosf.h: Fix braino in test for ANSI-C.
2810
2811 Wed Feb 23 16:51:43 1994  Jeffrey A. Law  ([email protected])
2812
2813         * write.c (write_contents): Give the user a reasonable error
2814         message rather than "assertion failed" if bfd_set_section_contents
2815         fails.
2816
2817 Tue Feb 22 10:07:32 1994  Ken Raeburn  ([email protected])
2818
2819         * config/ho-mach3.h: New file.
2820
2821 Mon Feb 21 11:41:18 1994  Ian Lance Taylor  ([email protected])
2822
2823         * ecoff.c (ecoff_build_debug): Don't set hdr->magic here.  It is
2824         now set in bfd/ecofflink.c:ecoff_write_symhdr.
2825
2826         * config/obj-coffbfd.c (write_object_file): use bfd_get_error (),
2827         not bfd_error.
2828         * config/obj-elf.c (elf_frob_file): Likewise.
2829
2830         * read.c (s_lcomm): Use an alignment power of 3 for 8 byte .lcomm
2831         variables.
2832
2833         * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
2834
2835         * read.c (read_a_source_file): Use correct arguments to memcpy
2836         (broken 19 Jul 1993).  From [email protected] (Kenneth
2837         Duda).
2838
2839 Sun Feb 20 18:01:54 1994  Ian Lance Taylor  ([email protected])
2840
2841         * config/obj-coff.h (obj_coff_section): Declare.
2842         * config/obj-coff.c (obj_pseudo_table): For "section", use
2843         obj_coff_section.
2844         (obj_coff_section): Rewrite.
2845
2846 Fri Feb 18 14:16:32 1994  Ken Raeburn  ([email protected])
2847
2848         * configure.in (i386-*-mach3*): New target; uses BFD.
2849         * config/te-mach.h: New file.
2850         * config/obj-aout.c (obj_aout_frob_file): New function.
2851         * config/obj-aout.h (obj_aout_frob_file): Declare it.
2852         (frob_file): New macro.
2853         * config/tc-i386.c (md_apply_fix_1) [TE_Mach]: Don't adjust
2854         pcrel32 relocations.
2855         * config/tc-i386.h (TARGET_FORMAT) [TE_Mach]: Use a.out-mach3.
2856
2857         * write.c (write_object_file): Removed register declarations.
2858
2859 Thu Feb 17 16:25:18 1994  Ian Lance Taylor  ([email protected])
2860
2861         Some support for PowerPC ELF.
2862         * configure.in: If cpu is powerpc*, use ppc.
2863         (ppc-*-sysv4*): Use object format elf.
2864         * config/tc-ppc.h: Only declare a number of things if OBJ_COFF is
2865         defined.
2866         (TARGET_ARCH): Make it call ppc_arch.
2867         (ppc_arch): Declare.
2868         (TARGET_FORMAT): Set based on OBJ_COFF or OBJ_ELF.
2869         (NO_STRING_ESCAPES): Define.
2870         (LOCAL_LABEL, FAKE_LABEL_NAME): Define for OBJ_ELF.
2871         * config/tc-ppc.c: Only define a number of functions of OBJ_COFF
2872         is defined.
2873         (md_pseudo_table): Most pseudo-ops are OBJ_COFF specific.  Added
2874         OBJ_COFF specific "bi" and "ei".
2875         (md_parse_option): Fix handling of -u.  Make -m601 set
2876         PPC_OPCODE_601.  If OBJ_ELF, accept -V and -Q.
2877         (ppc_set_cpu): New function.
2878         (ppc_arch): New function.
2879         (md_begin): Call ppc_set_cpu.
2880         (ppc_insert_operand): For a signed operand accept an unsigned
2881         value, for IBM compatibility.
2882         (ppc_byte): Don't call stringer for strings; instead, treat two
2883         double quotes as a single double quote.
2884         (ppc_comm): Set sy_tc.output for a .lcomm symbol.
2885         (ppc_biei): New function.
2886         (ppc_tc): If not OBJ_COFF, ignore first argument.
2887         (ppc_fix_adjustable): Call as_bad_where, not as_bad.
2888         (ppc_is_toc_sym): New function.
2889         (md_apply_fix): Use ppc_is_toc_sym.  Handle BFD_RELOC_16 and
2890         BFD_RELOC_8.
2891
2892 Thu Feb 17 09:29:37 1994  David J. Mackenzie  ([email protected])
2893
2894         * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_get_error and
2895         bfd_set_error and new error names. 
2896
2897 Tue Feb 15 20:23:20 1994  Ken Raeburn  ([email protected])
2898
2899         * configure.in: Support i960-vxworks versions > 5.0 as coff.
2900         Default is still bout if no version is specified.
2901
2902         * atof-generic.c (atof_generic): Use switch and strcasecmp instead
2903         of large number of compares when looking for inf/nan values.
2904
2905 Fri Feb 11 13:13:27 1994  Ian Lance Taylor  ([email protected])
2906
2907         * config/tc-mips.c (macro): Do unaligned loads and stores
2908         correctly when big endian, and give errors on overflow rather than
2909         generating incorrect code.
2910
2911 Thu Feb 10 11:24:20 1994  Ian Lance Taylor  ([email protected])
2912
2913         * as.c: Include libiberty.h.
2914
2915         * read.c (do_align): Don't define label just_record_alignment
2916         unless it might be used.
2917
2918         * as.c (main): If md_parse_long_option is defined, call it with a
2919         long option.
2920         * config/tc-mips.h (md_parse_long_option): Define.
2921         * config/tc-mips.c (mips_trap): New static variable.
2922         (md_begin): Report an error if mips_trap is set at ISA level 1.
2923         (macro): If mips_trap, use trap instructions instead of break
2924         instructions for overflow and divide by zero detection.
2925         (mips_parse_long_option): New function.  Support --trap,
2926         --no-break, --break and --no-trap.
2927         * doc/as.texinfo: Document new options.
2928
2929         * read.c (potable): Add "zero".
2930         * config/tc-i386.c (md_pseudo_table): Remove "zero".
2931         * config/tc-m88k.c (md_pseudo_table): Likewise.
2932
2933 Thu Feb 10 01:24:27 1994  Ken Raeburn  ([email protected])
2934
2935         * config/tc-sparc.c (sparc_ip): Reject integer values for
2936         pc-relative operand fields.  This forces "call 0" to become "jmpl
2937         %g0,%o7" with no relocations needed.
2938
2939 Wed Feb  9 13:08:32 1994  Ian Lance Taylor  ([email protected])
2940
2941         * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
2942         * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
2943
2944         * app.c (do_scrub_next_char): If NO_STRING_ESCAPES is defined,
2945         don't treat backslash specially inside strings.
2946         * read.c (next_char_of_string): Likewise.
2947
2948 Wed Feb  9 09:42:45 1994  Stan Shebs  ([email protected])
2949
2950         * config/obj-coffbfd.c (obj_coff_init_stab_section): Use memset
2951         instead of memcpy to zero the initial stab symbol, duh.
2952         * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
2953         * config/obj-som.c (obj_som_init_stab_section): Ditto.
2954
2955 Tue Feb  8 17:25:44 1994  Ian Lance Taylor  ([email protected])
2956
2957         * write.c (fixup_segment): Use as_bad_where, not as_bad.
2958
2959         * subsegs.c (subseg_set_rest): Call memset with the arguments in
2960         the right order.  Explicitly clear fix_root and fix_tail fields.
2961
2962 Tue Feb  8 16:00:25 1994  Ken Raeburn  ([email protected])
2963
2964         * config/obj-coff.c (coff_frob_symbol): For abs_symbol, set *punt
2965         and do nothing else.
2966
2967         * symbols.c (symbol_begin): Initialize value of abs_symbol
2968         properly.
2969
2970         * write.c (adjust_reloc_syms): Use abs_symbol instead of calling
2971         section_symbol.
2972
2973         * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
2974         complaint from "gcc -Wall".
2975
2976         * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
2977
2978         * config/tc-alpha.c (GP_ADJUSTMENT): Move definition to start of
2979         file.
2980         (tc_gen_reloc): Remove uninitialized variable `code', and code
2981         that tried to use it (incorrectly).  For LITERAL reloc, set addend
2982         to negative of GP value.
2983         (load_symbol_address): Don't adjust return value by GP_ADJUSTMENT.
2984
2985         * write.c (write_relocs): Print some sensible error message if
2986         bfd_perform_relocation returns bfd_reloc_overflow.
2987
2988 Mon Feb  7 15:49:24 1994  Jeffrey A. Law  ([email protected])
2989
2990         * configure.in (hppa*-*elf*): New configuration for PA ELF.
2991         (hppa*-*-osf*): Default object format is SOM.
2992
2993 Mon Feb  7 16:07:35 1994  Ken Raeburn  ([email protected])
2994
2995         * config/tc-alpha.c (md_atof): Warn that floating-point values
2996         might not assemble properly.
2997
2998         * configure.in (target alpha-*-osf*): Don't set "dev=yes" any
2999         more.
3000
3001         * config/tc-alpha.c (load_expression): Parenthesize operations in
3002         range checking, to avoid precedence questions.
3003
3004         * config/tc-alpha.c (addr32): New static variable.
3005         (md_parse_option): Set it for "-32addr".
3006         (load_symbol_address): If addr32 is set, use ldl instead of ldq.
3007
3008         * atof-generic.c (atof_generic): Calculate maximum_useful_digits
3009         and more_than_enough_bits_for_digits in integer arithmetic, to
3010         eliminate the only sources of dependence on floating point
3011         support, which doesn't work yet on the Alpha.
3012
3013 Mon Feb  7 03:56:05 1994  Ken Raeburn  ([email protected])
3014
3015         * ecoff.c (ecoff_build_debug) [TC_ALPHA]: Specify version stamp as
3016         0x30b for Alpha for now, until ".verstamp" is handled.
3017
3018         * literal.c (add_to_literal_pool): Use seginfo->frchainP, which
3019         actually refers to the literal pool section, rather than
3020         frchain_now, which refers to whatever section the assembler was
3021         in.
3022
3023         * write.c (fixup_segment): Only do range checking if size of fixup
3024         is smaller than word size.  Otherwise, we always wind up with
3025         zeros.
3026
3027         * config/tc-alpha.c (md_section_align): Change second argument and
3028         return type to valueT, to agree with tc.h.
3029         (alpha_do_align): Local static array nop_pattern is now unsigned
3030         char, to avoid overflow warnings.
3031         * config/tc-alpha.h (md_section_align): Delete declaration.
3032
3033         * config/obj-ecoff.c (ecoff_frob_file): Ensure that ecoff_data for
3034         output bfd is non-null before indirecting through it.
3035
3036         * config/tc-alpha.c (alpha_frob_ecoff_data): Renamed from
3037         alpha_frob_file.
3038         * config/tc-alpha.h (tc_frob_file): Macro deleted.
3039         * config/obj-ecoff.c (ecoff_frob_file) [TC_ALPHA]: Call
3040         alpha_frob_ecoff_data, then fill in optional-header info with gp
3041         value and register masks.
3042
3043 Sun Feb  6 16:13:47 1994  Jeffrey A. Law  ([email protected])
3044
3045         * configure.in (hiux): Fixes from [email protected].
3046
3047         * config/obj-som.c (obj_som_init_stab_section): Same change
3048         as coffbfd and elf below.  Zero the initial stab symbol after
3049         allocating it.
3050
3051 Sat Feb  5 12:30:32 1994  Stan Shebs  ([email protected])
3052
3053         * config/obj-coffbfd.c (obj_coff_init_stab_section): Zero the
3054         initial stab symbol after allocating it.
3055         * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
3056
3057 Sat Feb  5 11:53:31 1994  Jeffrey A. Law  ([email protected])
3058
3059         * config/tc-hppa.c (pa_ip): addb[tf] should only accept
3060         non-negated condition completers.  Add support for addb pseudo-op
3061         which accepts both negated and non-negated completers.
3062
3063 Sat Feb  5 00:15:49 1994  Ian Lance Taylor  ([email protected])
3064
3065         * configure.in (rs6000*): Use cpu_type ppc.
3066         (ppc-*-aix*): New target; use coff and force bfd_gas.
3067         * config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
3068         (RS/6000) support.  At the moment, only XCOFF is supported.
3069
3070         * config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
3071         (S_SET_DATA_TYPE): Likewise.
3072         (coff_last_function): Renamed from local static last_functionP in
3073         coff_frob_symbol and made externally visible.
3074         (coff_frob_symbol): New local static set_end; use it to try to
3075         avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
3076         * config/obj-coff.h (S_SET_DATA_TYPE): Declare.
3077         (SA_SET_SYM_ENDNDX): Declare.
3078         (coff_last_function): Declare.
3079
3080         * expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
3081         equivalent to `.' to mean the current location.
3082
3083         * read.c (LEX_BR): If not defined, define as 0.
3084         (lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
3085
3086         * symbols.c (symbol_new): If tc_canonicalize_symbol_name is
3087         defined, call it with preserved_copy_of_name.  If
3088         tc_symbol_new_hook is defined, call it on the new symbol.
3089         (symbol_find_base): If tc_canonicalize_symbol_name is defined,
3090         call it on a copy of the name argument.
3091
3092         * write.c (write_object_file): Simplified usage of obj_frob_symbol
3093         and tc_frob_symbol.  Always call both if the symbol is going to be
3094         output.
3095
3096         * write.c (relax_segment): Use %ld rather than %d when printing
3097         fragP->fr_var, and cast it to long.
3098
3099         Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
3100         * subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
3101         fix_root and fix_tail.
3102         (segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
3103         field.
3104         * write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
3105         fix_tailP based on frchain_now, not seg_info (now_seg).
3106         (chain_frchains_together_1): Chain the subsegment relocs together.
3107         * subsegs.c (subseg_change): Don't clear fix_tail field.
3108         (subseg_get): Likewise.
3109         * literal.c (add_to_literal_pool): Look through the relocs via
3110         frchain_now, not seginfo.
3111
3112 Thu Feb  3 23:07:30 1994  Ian Lance Taylor  ([email protected])
3113
3114         * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
3115         ecoff_undefined to ecoff_extern_size.
3116         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
3117         * config/tc-mips.c (s_extern): Set ecoff_extern_size to the
3118         external symbol size, rathern than setting the symbol value.
3119         (md_estimate_size_before_relax): Check both ecoff_extern_size and
3120         symbol value to see if GP referencing can be used.
3121         * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
3122         ecoff_undefined.
3123         (ecoff_frob_symbol): Don't check ecoff_undefined.
3124         (ecoff_build_symbols): Get size of an undefined symbol from
3125         sym->ecoff_extern_size, not S_GET_VALUE (sym).
3126
3127 Wed Feb  2 13:55:08 1994  Jeffrey A. Law  ([email protected])
3128
3129         * Makefile.in:  Avoid bug in losing hpux sed.
3130
3131 Wed Feb  2 11:40:11 1994  Ian Lance Taylor  ([email protected])
3132
3133         * config/tc-mips.c (file_mips_isa): New static variable.
3134         (md_begin): Set it.
3135         (s_mipsset): Add support for .set mipN to set the ISA level.
3136
3137         * gasp.c (kinfo): Fully bracket initializer.
3138
3139 Tue Feb  1 19:28:12 1994  Ken Raeburn  ([email protected])
3140
3141         * gasp.c (malloc): Don't declare, since host.h or system header
3142         files may declare it differently.
3143
3144         * config/atof-ieee.c (int_to_gen): Now static.
3145
3146         * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
3147         ho-sysv.h.  Based loosely on a patch from Minh Tran-Le.
3148
3149 Tue Feb  1 10:50:17 1994  Steve Chamberlain  ([email protected])
3150
3151         * gasp.c: Include host.h.
3152
3153 Tue Feb  1 12:13:01 1994  Ian Lance Taylor  ([email protected])
3154
3155         * config/tc-mips.c (mips_ip): Make an unsupported instruction a
3156         warning, not an error.
3157
3158         * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
3159         dot_bss_symbol): Don't define if BFD_ASSEMBLER.
3160         (obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
3161         arguments.
3162         (coff_line_base): Renamed from line_base.  Changed all uses.
3163         (coff_add_linesym): Renamed from add_line_sym.  Made non-static.
3164         Changed all uses.
3165         * config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
3166         (S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
3167         BFD_ASSEMBLER.
3168         (coff_line_base): Declare.
3169         (coff_add_linesym): Declare if BFD_ASSEMBLER.
3170         * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
3171         now takes more arguments.
3172
3173 Mon Jan 31 17:55:14 1994  Stan Shebs  ([email protected])
3174
3175         * as.c (statistics_flag): Renamed from quiet_flag.
3176         (main): Get statistics with --statistics instead of -noquiet.
3177
3178 Mon Jan 31 07:19:30 1994  Steve Chamberlain  ([email protected])
3179
3180         * Makefile.in: Support for Gnu ASsembler Preprocessor.
3181         * gasp.c: New file.
3182         * read.c (s_lcomm): Align lcomm data.
3183         * config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction 
3184         from different sections.
3185
3186 Sun Jan 30 14:58:26 1994  Ken Raeburn  ([email protected])
3187
3188         * write.c (write_object_file): If tc_frob_file is defined, call it
3189         just before calling obj_frob_file.
3190         * config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
3191         (references changed), and made non-static.
3192         (getExpression): Return void.
3193         (select_gp_value): Abort if gp_value is non-zero.  Delete call to
3194         non-existent bfd_set_gp_value.
3195         (alpha_validate_fix): Function deleted.
3196         (alpha_frob_symbol): Function deleted.
3197         (alpha_local_label): Function deleted.
3198         (alpha_frob_file): Renamed from alpha_end.
3199         * config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
3200         alpha_local_label, alpha_end): Declarations deleted.
3201         (alpha_gp_value, alpha_frob_file): Declare.
3202         (tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
3203         (LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
3204         (md_convert_frag): Simplified slightly.
3205         (tc_frob_file): New macro.
3206
3207         * read.c (do_align): New function, most of guts of s_align_*
3208         functions.  Look for md_do_align macro, give it a chance to bypass
3209         all but recording of section alignment.
3210         (s_align_bytes, s_align_ptwo): Call do_align.
3211         (s_lcomm) [TC_ALPHA]: Align object to largest power of two that
3212         divides object size.
3213
3214         * frags.c (frag_align_pattern): New function.
3215         (frag_align): Rewrite for clarity.
3216
3217         * config/tc-vax.c (md_assemble): Handle O_constant expression.
3218         (vip_begin): Returns pointer to const char.  Cast hash_insert arg
3219         to PTR to avoid compiler complaints about const.
3220         (md_begin): Local variable errtxt must point to const.
3221
3222         * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*.  Don't
3223         bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
3224         the last has an existing host support file.  Do handle vax-bsd and
3225         vax-ultrix targets.
3226
3227 Fri Jan 28 11:26:40 1994  Ian Lance Taylor  ([email protected])
3228
3229         * config/obj-coff.c (obj_coff_section_header_append): Do not
3230         declare if BFD_ASSEMBLER.
3231         (stack_pop): Correct test for stack underflow.
3232         (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
3233         obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
3234         type of ignored argument to avoid gcc warning.
3235         (align): Removed unused function.
3236
3237 Thu Jan 27 18:14:19 1994  Ken Raeburn  ([email protected])
3238
3239         * config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
3240         files, based on port of gas-1.38 contributed by CMU, using a.out
3241         variant.  Updated for gas-2.x and ECOFF.  Floating-point constants
3242         are still broken, bootstrap testing incomplete.
3243
3244         * literal.c: Comment changes.
3245
3246         * listing.c (listing_source_file): Check for null listing_tail
3247         before indirecting through it.
3248
3249         * expr.h (struct expressionS): Added struct tag.
3250
3251         * as.h: If __GNUC__ and inline are both undefined, define inline
3252         away.
3253
3254         * write.c (cvt_frag_to_fill): Don't assume that fr_var for
3255         rs_align or rs_org frags will be 1.
3256         (relax_segment): For rs_align, if fr_var is not 1, complain if
3257         required padding is not a multiple of the size of the pad pattern.
3258         (fixup_segment): Leave gp-relative relocations alone.  For pcrel
3259         relocations referring to the same segment, clear fx_pcrel when
3260         clearing fx_addsy.
3261         * as.h: Adjust comments on rs_align.
3262
3263         * atof-generic.c: Some reformatting.
3264         (atof_generic): Be careful when mixing signed/unsigned values of
3265         different sizes.
3266
3267         * write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
3268         Query the fx_done field instead of fx_addsy to see if the fixup
3269         still needs to be applied.  Set fx_done and clear fx_addsy both,
3270         for now.  If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
3271         will only clear fx_addsy, and set fx_done accordingly after
3272         returning.
3273         * config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
3274         * config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
3275         with no fx_addsy.
3276
3277         * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
3278         Deleted.
3279         (symbol_begin): Moved to end of file, so function inlining can
3280         work better.
3281         (fb_label_count, fb_label_max): Default C static initializers are
3282         sufficient.
3283         * symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
3284         Declarations deleted.
3285         * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
3286         dot_bss_symbol): Defined here, static.
3287
3288         * config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
3289         including aout/aout64.h.
3290
3291         * write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
3292         don't write out a section symbol even if it's used in a
3293         relocation; assume relocations will handle section numbers
3294         somehow.  Rename "punt_it" label to "punt_it_if_unused" to reflect
3295         it's true use.
3296         (EMIT_SECTION_SYMBOLS): Default to 1.
3297         (adjust_reloc_syms): Don't create a new symbol for an absolute
3298         reference; just use the absolute section symbol.
3299         (write_relocs): Make printout of reloc values dependent on flag
3300         DEBUG3, not DEBUG2.
3301         * config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
3302         * config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
3303
3304 Thu Jan 27 16:43:51 1994  Ian Lance Taylor  ([email protected])
3305
3306         * read.c (lex_type): No longer make '{' a valid character for
3307         symbol names.
3308
3309         * as.c (main): Print long values using %ld.
3310
3311         * messages.c (as_warn_internal): New static function.
3312         (as_warn, 3 versions): Use as_warn_internal.
3313         (as_warn_where, 3 versions): New function.
3314         * as.h (as_warn_where): Declare.
3315
3316 Tue Jan 25 18:30:34 1994  Stan Shebs  ([email protected])
3317
3318         * as.c (quiet_flag): New flag.
3319         (main): If -noquiet given, display execution time and memory used.
3320
3321 Tue Jan 25 15:53:11 1994  Jeffrey A. Law  ([email protected])
3322
3323         * doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
3324
3325 Mon Jan 24 19:18:23 1994  Ian Lance Taylor  ([email protected])
3326
3327         * ecoff.c (ecoff_frob_symbol): New function.  Put undefined
3328         symbols of known size in the undefined section.  Put small common
3329         symbols in a .scommon section.
3330         * ecoff.h (ecoff_frob_symbol): Declare.
3331         * config/obj-ecoff.h (obj_frob_symbol): Define.
3332         * config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
3333         obj_elf_frob_symbol): Removed unused functions.
3334         * config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
3335         unused macros.
3336         (obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
3337         of unused functions.
3338         (obj_frob_symbol): Define if ECOFF_DEBUGGING.
3339
3340         * tc-mips.c (g_switch_seen): New static variable.
3341         (md_parse_option): Set g_switch_seen for -G option.
3342         (s_option): If creating PIC code, force the GP size to be 0.  Warn
3343         if -G switch used with a non-zero value.
3344
3345         * symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
3346         comparing against bfd_com_section.
3347
3348 Mon Jan 24 14:12:25 1994  Ken Raeburn  ([email protected])
3349
3350         * read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
3351         section.
3352
3353 Thu Jan 20 13:17:58 1994  Ken Raeburn  ([email protected])
3354
3355         * expr.c (operand): For floating point operand with unusual fp
3356         char from FLT_CHARS, preserve the character.  Patch from Lisa
3357         Repka.
3358
3359 Wed Jan 19 23:15:24 1994  Ian Lance Taylor  ([email protected])
3360
3361         * config/tc-mips.c (md_pseudo_table): Add all data allocation
3362         pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
3363
3364 Tue Jan 18 15:51:59 1994  Steve Chamberlain  ([email protected])
3365
3366         * config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
3367         C_FCN assume .val has been set to .
3368
3369 Tue Jan 18 16:19:58 1994  Jeffrey A. Law  ([email protected])
3370
3371         * config/tc-hppa.c: Disable multiple $CODE$ subspace code.  It
3372         confuses GDB for some unknown reason.
3373         * cofnig/obj-som.c: Likewise.
3374
3375 Tue Jan 18 19:05:32 1994  Ken Raeburn  ([email protected])
3376
3377         * literal.c (add_to_literal_pool): Handle duplicates of values
3378         already written to literal pool.
3379
3380 Tue Jan 18 17:23:52 1994  Ian Lance Taylor  ([email protected])
3381
3382         * config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
3383         with explicitly marked stabs through BFD: if a symbol marked
3384         N_UNDF | N_EXT is in the absolute section, move it to the
3385         undefined section; move a symbol marked N_INDR into
3386         bfd_ind_section and set the BSF_INDIRECT flag; set the
3387         BSF_WARNING flag for a symbol makred N_WARNING.
3388
3389 Mon Jan 17 15:40:23 1994  Ian Lance Taylor  ([email protected])
3390
3391         * ecoff.h (ecoff_set_gp_prolog_size): Declare.
3392         * ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
3393
3394 Mon Jan 17 00:18:55 1994  Jeffrey A. Law  ([email protected])
3395
3396         * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
3397         and 'f' template operand.
3398
3399         * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
3400         and '2' in copr and sfu instruction templates.
3401
3402 Sun Jan 16 16:44:23 1994  Jeffrey A. Law  ([email protected])
3403
3404         * as.h (subseg_force_new): Add prototype.
3405
3406 Sat Jan 15 09:20:55 1994  Doug Evans  ([email protected])
3407
3408         * app.c (do_scrub_next_char): Allow lines like " foolab :".
3409
3410         * read.c (emit_expr): Fix computation of mask.
3411         * config/obj-elf.c (obj_elf_section): Fix loop termination test.
3412
3413 Thu Jan 13 16:15:15 1994  Ken Raeburn  ([email protected])
3414
3415         * ecoff.c (ecoff_set_gp_prolog_size): New function.
3416         (current_file_idx): New static variable.
3417         (add_file): Use and increment current_file_idx instead of indx
3418         parameter.
3419
3420         * struc-symbol.h (struct symbol): Make all bitfields unsigned.
3421
3422         * config/tc-i960.c (i960_validate_fix): Added argument
3423         add_symbolPP.  Indirect through it to get "add_symbolP".
3424         * config/tc-i960.h (i960_validate_fix): Supply prototype.
3425         (TC_VALIDATE_FIX): Pass address of add_symbolP.
3426
3427         * configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
3428         (i386-*-netbsd0.8): New target, like 386bsd.
3429
3430         * configure.in: Set BFDDEF in Makefile to "define" or "undef".
3431         * Makefile.in (config.h): Protect against multiple inclusions.
3432         Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
3433         (ALL_CFLAGS): Omit $(BFDDEF).
3434         * as.h: Include config.h.
3435         (struct symbol): Added forward declaration.
3436         (add_to_literal_pool): Fix declaration.
3437         * as.c: Don't include config.h.
3438
3439         * literal.c (add_to_literal_pool): Take symbol and addend as
3440         arguments, instead of expression, for now.  Fix calculation of
3441         offset to return.
3442
3443         * subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
3444         literal_pool_size.
3445
3446 Thu Jan 13 12:14:21 1994  Jeffrey A. Law  ([email protected]
3447
3448         * subsegs.c (subseg_get): Accept new argument "force_new".  If
3449         set then a new segment is always created.  All callers changed.
3450         (subseg_force_new): New function.  Similar to subseg_new, but
3451         always force a new segment to be created.
3452
3453         * config/obj-som.c (som_frob_file): Call adjust_code_sections
3454         for each section.
3455         (adjust_code_sections): New function.  Adjusts the VMA for all the
3456         $CODE$ subspaces.
3457
3458         * config/tc-hppa.c (md_assemble): Also handle creating a fixup
3459         for the unwind descriptors if a function's label follows the
3460         .PROC and .ENTRY directives.
3461         (pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
3462         is done elsewhere.  Don't create a fixup for the unwind
3463         descriptors if the function's label has not been defined yet.
3464         (pa_proc): For SOM, place each procedure within a new $CODE$
3465         subspace.  Adjust the segment and frag for the associated
3466         function label if it exists.
3467
3468 Wed Jan 12 22:05:33 1994  Jeffrey A. Law  ([email protected])
3469
3470         * config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
3471         (hppa_fix_new): Initialize segment field.
3472         (md_apply_fix): Do nothing for pc-relative fixup which involves
3473         crossing a segment boundary.
3474         (pa_procend): Undefine the current label after handling .PROC
3475         and .PROCEND directives.
3476         (dummy_symbol): Make type "symbolS *".  Change references as
3477         appropriate.
3478
3479 Wed Jan 12 13:29:31 1994  Ian Lance Taylor  ([email protected])
3480
3481         * read.c (read_a_source_file): Cast array argument to unsigned
3482         char.
3483         * write.c (adjust_reloc_syms): Remove unused variable symseginfo.
3484         (write_object_file): Don't define punt_it if it won't be used.
3485         (fixup_segment): Don't define skip if it won't be used.
3486
3487         * config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
3488         (mips_target_format): Declare.
3489         * config/tc-mips.c (mips_target_format): Define with appropriate
3490         default definition.
3491         (md_parse_option): If -EL or -EB is used, change byte_order and
3492         mips_target_format as appropriate.
3493
3494 Tue Jan 11 21:52:36 1994  Jeffrey A. Law  ([email protected])
3495
3496         * app.c (do_scrub_next_char): Another attempt to fix bugs
3497         dealing with labels without colons (for HPPA and MRI).
3498
3499 Tue Jan 11 17:01:06 1994  Doug Evans  ([email protected])
3500
3501         * config/tc-sparc.c (sparc_ip): Truncate args to %hi/%lo to 32 bits.
3502
3503         * expr.c (integer_constant): Fix computation of too_many_digits.
3504         Variable digit_2 renamed to start.  Fix check for whether number
3505         will fit in 32 bits.
3506         * read.c (emit_expr): Use valueT instead of long.
3507
3508 Tue Jan 11 13:01:20 1994  Ian Lance Taylor  ([email protected])
3509
3510         * config/obj-elf.c: If TC_MIPS, include elf/mips.h.
3511         (special_sections): Define.
3512         (obj_elf_special_section): Get default types and attributes from
3513         list of special sections.
3514         * config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
3515
3516         * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
3517         sections to be close together.
3518
3519         * config/tc-mips.c (macro): Corrected $at warnings in a couple of
3520         spots.
3521
3522         * listing.c (listing_prev_line): New function.
3523         * listing.c: Include subsegs.h.
3524         (listing_prev_line): New function.
3525         (calc_hex): Reset byte_in_frag to zero for each new frag.
3526         * config/tc-mips.c (append_insn): Call listing_prev_line after
3527         emitting nop instructions.
3528         * Makefile.in (listing.o): Depends upon subsegs.h.
3529
3530 Mon Jan 10 09:52:23 1994  Jeffrey A. Law  ([email protected])
3531
3532         * config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
3533         here.  Handle case where label may be defined after the .PROC.
3534         (pa_proc): It is not an error if the procedure's label isn't
3535         defined before the .PROC directive.
3536
3537 Sun Jan  9 04:43:30 1994  Ken Raeburn  ([email protected])
3538
3539         * config/te-netbsd.h: New file.
3540         * config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
3541         a.out-netbsd-386 for this configuration.
3542
3543 Fri Jan  7 17:38:28 1994  Ian Lance Taylor  ([email protected])
3544
3545         * ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
3546         with the associated stabs information.
3547         (ecoff_build_symbols): Never set the type of stabs symbols to
3548         st_Global.  Don't update the symbol index or ifd if the gas symbol
3549         is not the same as the ECOFF symbol (which is now the case for
3550         stabs symbols).
3551
3552 Fri Jan  7 11:14:07 1994  Stan Shebs  ([email protected])
3553
3554         * config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
3555         splits the function.
3556         (macro2): New function, if LOSING_COMPILER defined.
3557
3558 Fri Jan  7 09:38:25 1994  Steve Chamberlain  ([email protected])
3559
3560         * config/obj-coffbfd.c (fill_section):  Don't ever fill past the
3561         end of a section. (write_object_file): Temporary fix - setup
3562         stdoutput.
3563
3564 Thu Jan  6 18:05:21 1994  Ken Raeburn  ([email protected])
3565
3566         * config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
3567         non-pcrel_offset relocations.
3568
3569 Thu Jan  6 01:06:40 1994  Ian Lance Taylor  ([email protected])
3570
3571         * config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
3572         without .set noat.
3573
3574 Wed Jan  5 14:22:22 1994  Ken Raeburn  ([email protected])
3575
3576         * literal.c: New file.
3577         * Makefile.in (REAL_SOURCES, OBJS): List it.
3578
3579         * as.h (DEBUG): Don't define.
3580         (struct expressionS, struct fix): Declare in case they're used in
3581         prototypes.
3582         (add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
3583
3584         * config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
3585         in bfd.
3586
3587         * subsegs.c (subseg_get): New function.  Creates segment if
3588         needed, returns pointer, but doesn't change current segment.
3589         (subseg_new): Use it.
3590
3591 Tue Jan  4 15:12:43 1994  Stan Shebs  ([email protected])
3592
3593         * Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
3594         * config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
3595         * app.c, flonum.h, hex-value.c (const): Change #if to be more
3596         portable.
3597
3598 Tue Jan  4 22:11:34 1994  Rob Savoye  ([email protected])
3599
3600         * config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
3601         micro-kernel.
3602
3603 Thu Dec 30 15:27:16 1993  Ian Lance Taylor  ([email protected])
3604
3605         * write.c (write_relocs): bfd_perform_relocation now takes an
3606         additional argument, to return an error string (which we ignore).
3607
3608 Wed Dec 29 14:37:26 1993  Ken Raeburn  ([email protected])
3609
3610         * write.h (struct fix): Field tc_fix_data should be type PTR, not
3611         void*, for compatibility with non-ANSI compilers.  Added
3612         single-bit field "fx_done".
3613
3614 Sun Dec 26 14:31:47 1993  Torbjorn Granlund  ([email protected])
3615
3616         * tc-hppa.c (pre_defined_registers): Convert to lower case.
3617         Delete spurious register names "%r4L", etc.
3618         (selector_table): Sort and convert to lower case.
3619         (cons_fix_new_hppa): `reloc_type' => `rel_type'.
3620         (pa_ip): Always use strcmp for non-text and strcasecmp for text.
3621         (reg_name_search): Rewrite to call strcasecmp only once per
3622         iteration.
3623         (pa_chk_field_selector): Rewrite to use binary search.
3624         (pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
3625         (pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
3626         sensitive comparisons.
3627         (pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
3628         (pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$".  Use
3629         case sensitive comparison for all symbolic names.
3630         (pa_subspace): Canonicalize strncasecmp arg to lower case.
3631         (pa_subspace_start): Use case sensitive comparison for symbolic names.
3632
3633 Mon Dec 20 10:37:48 1993  Ken Raeburn  ([email protected])
3634
3635         * write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
3636         symbol is present (i.e., relocation against absolute), create a
3637         phony local symbol, and use it in the reloc.
3638         (fixup_segment): When adjusting a reloc with an absolute symbol,
3639         have TC_FORCE_RELOCATION control clearing add_symbolP too.
3640         * config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
3641
3642         * symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
3643         and BSF_GLOBAL, since they're the same.
3644
3645         * as.c (main): Only invoke md_end if it's defined as a macro.
3646         * tc.h (md_end): Don't declare it.
3647         * config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
3648         anything.
3649         * config/tc-vax.c (vip_end): Deleted null function.
3650         * config/tc-mips.c (md_mips_end): Renamed from md_end.
3651         * config/tc-mips.h (md_mips_end): Declare.
3652         (md_end): New macro, calls md_mips_end.
3653
3654         * write.c (write_object_file): Don't close output file.
3655         * as.c (main): Close output file (if needed) after calling
3656         listing_print, which should be after calling write_object_file,
3657         which sets the frag addresses.
3658
3659         * config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
3660         obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
3661         obj_coff_val): Add unused int argument to satisfy prototypes; goes
3662         with Ian's 10 Sep changes.
3663         (S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
3664         S_SET_STORAGE_CLASS): Now function instead of macros.
3665         (obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
3666         (tag_insert): Local var ERROR_STRING is const.  Use "const" not
3667         "CONST" for argument NAME.  Fixed prototype.
3668         (coff_frob_symbol): Removed explicit "#if 1" directive.  If
3669         S_IS_EXTERNAL, set storage class to C_EXT.
3670         (s_get_name): Use "const" not "CONST".
3671         * config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
3672         S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
3673         (obj_emit_lineno): Declare only for non-BFD_ASSEMBLER.  For
3674         BFD_ASSEMBLER, define as macro that aborts.
3675         (obj_extra_stuff, tc_headers_hook): Declare only for
3676         non-BFD_ASSEMBLER.
3677         (coff_frob_symbol): Fix prototype.
3678
3679 Sun Dec 19 00:37:20 1993  Ken Raeburn  ([email protected])
3680
3681         * config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
3682         reversed.
3683
3684 Thu Dec 16 21:13:11 1993  Jeffrey A. Law  ([email protected])
3685
3686         * config/tc-hppa.c (md_begin): Initialize "dummy_label".
3687         (tc_gen_reloc, SOM version): For relocations which have no symbol,
3688         set sym_ptr_ptr to dummy_label.  Avoids lossage in generic BFD code.
3689
3690 Thu Dec 16 16:07:56 1993  Ken Raeburn  ([email protected])
3691
3692         * read.c (lex_type): No longer make '[' a valid character for
3693         symbol names.
3694
3695         * config/tc-vax.c (tc_aout_fix_to_chars): Local variable
3696         NBYTES_R_LENGTH now const.
3697
3698         * config/obj-*.c, config/tc-*.c: Omit superfluous "return"
3699         statements at ends of functions.  Don't check for null return from
3700         hash_new, since it won't return at all if there's no memory
3701         available.  Also, check for null return from hash_insert, rather
3702         than zero-length string, as success indicator.
3703
3704         * subsegs.c (section_symbol): New function.
3705         * subsegs.h (section_symbol): Declare.
3706         * write.c (adjust_reloc_syms): Use it.
3707
3708 Wed Dec 15 15:39:53 1993  Ken Raeburn  ([email protected])
3709
3710         * Makefile.in (RUNTEST): New variable.
3711         (CHECKFLAGS): Pass it down.
3712
3713         * ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
3714         unused for now, but supplied by Alpha OSF1 compiler.
3715
3716         * as.h: Protect against multiple inclusions.
3717         (int_to_gen): Don't declare.
3718
3719         * config/atof-vax.c (atof_vax): NULL is not a valid character
3720         constant.
3721
3722 Tue Dec 14 21:38:25 1993  Jeffrey A. Law  ([email protected])
3723
3724         * configure.in (hppa*-*-osf*): Do not consider this a developmental
3725         configuration.
3726
3727         * config/tc-hppa.c (md_apply_fix): Handle cases where no
3728         relocation will be emitted for 32bit formats.
3729
3730 Mon Dec 13 23:33:40 1993  Jeffrey A. Law  ([email protected])
3731
3732         * config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
3733         for any of the 'T' field selectors.
3734
3735 Sat Dec 11 11:23:12 1993  Steve Chamberlain  ([email protected])
3736
3737         * config/tc-h8500.c (build_bytes): Get reloc type right for a
3738         %page operation. (md_assemble): Don't modify input_line_pointer.
3739         (mdcoff_sizemachdep): New function.
3740         * config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
3741         * config/tc-z8k.c (get_operand): Delete bogus check.
3742
3743 Wed Dec  8 16:31:51 1993  Ken Raeburn  ([email protected])
3744
3745         * write.c (number_to_chars_*): Delete bogus range check.
3746
3747         * output-file.c (TARGET_ARCH): No default.
3748
3749 Tue Dec  7 16:02:53 1993  Steve Chamberlain  ([email protected])
3750
3751         * config/tc-sh.c (md_convert_frag): Truncate disps before calling
3752         md_number_to_chars.  (md_assemble): Don't modify
3753         input_line_pointer.
3754
3755 Mon Dec  6 11:49:03 1993  Doug Evans  ([email protected])
3756
3757         * config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
3758
3759 Mon Dec  6 11:20:02 1993  Jeffrey A. Law  ([email protected])
3760
3761         * config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
3762         Breaks with the HP compilers.
3763
3764         * config/tc-hppa.c (struct call_info): Remove fields which were
3765         set but never used.  Remove all code which sets those fields.
3766         (struct subspace_dictionary_chain): Likewise.
3767         (struct space_dictionary_chain): Likewise.
3768         (pa_desc): Delete useless function.  Delete all references.
3769         (hppa_tc_make_sections): No need to count the number of symbols for
3770         the symbol extension section. 
3771
3772 Sun Dec  5 17:05:29 1993  Jeffrey A. Law  ([email protected])
3773
3774         * config/obj-som.c (obj_som_version): Pass version string to
3775         SOM BFD backend.
3776         (obj_som_copyright): New function.  Much like obj_som_version.
3777
3778         * config/tc-hppa.c (obj_copyright): Define as appropriate for
3779         SOM and ELF.  
3780         (pa_copyright): Just a stub now.
3781
3782         * config/obj-som.c (obj_read_begin_hook): Delete unused function.
3783         * config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
3784         (TARGET_SYMBOL_FIELDS): Delete.  SOM isn't making use of them.
3785
3786         * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
3787         expansion due to rounding mode selectors.  Handle R_[RDSN]_MODE
3788         relocations for selecting the current rounding mode.
3789
3790         * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
3791         e_rlsel field selectors.
3792
3793 Fri Dec  3 18:33:24 1993  Ian Lance Taylor  ([email protected])
3794
3795         * config/obj-elf.h: If ECOFF_DEBUGGING, undef
3796         SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
3797         OBJ_PROCESS_STAB to call ecoff_stab.
3798         * config/obj-elf.c: Don't compile obj_elf_init_stab_section if
3799         INIT_STAB_SECTION is not defined.
3800
3801 Fri Dec  3 10:56:40 1993  Jeffrey A. Law  ([email protected])
3802
3803         * config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
3804         (md_apply_fix_1): Rename to md_apply_fix.  Fix argument decls.
3805         Fix comments in various places.  Always return a value.
3806         Avoid dereferencing a NULL fx_addsy.
3807         (hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
3808
3809         Fri Dec  3 09:47:30 1993  Pete Hoogenboom  ([email protected])
3810
3811         * tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
3812         be either 0 or 2 (no static link or static link required).  Always
3813         assume no static link.
3814
3815 Thu Dec  2 11:52:21 1993  Ken Raeburn  ([email protected])
3816
3817         * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
3818         dependent on howto fields, not on format flavour.
3819
3820         * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
3821         defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
3822         macros are defined.
3823         * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
3824         (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
3825         (sy_tc, sy_obj): Define so that the fields look like they used to,
3826         until all references get changed.
3827
3828         * write.c (fixup_segment): Lots of variables no longer register.
3829         Reordered some code for easier reading.
3830         * config/obj-coff.c (obj_coff_dim): dim_index no longer register.
3831         Deleted superfluous return statement.
3832         (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
3833         obj_coff_val, tag_init, tag_insert): Deleted superfluous return
3834         statement.
3835         (align, obj_coff_section): Deleted debugging printfs.
3836         * config/tc-i386.c (md_assemble): Discard some register decls.
3837         Use assignment rather than memcpy to copy template.
3838         (op_hash, reg_hash, prefix_hash): Default C initialization of
3839         statics is sufficient.
3840         * config/tc-sparc.c (print_insn): Array Reloc is now const, and
3841         points to const.
3842
3843         * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
3844         TE_LYNX; use coff-sparc otherwise.
3845         [USE_NATIVE_HEADERS]: Delete this code; it isn't used.
3846
3847         * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
3848         before processing a fixup.  Call TC_ADJUST_RELOC_COUNT just before
3849         returning.  Remove some i960-coff-specific code.
3850         (TC_ADJUST_RELOC_COUNT): Default to doing nothing.
3851         * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
3852         (i960_validate_fix): Declare.
3853         (TC_VALIDATE_FIX): Define.
3854         * config/tc-i960.c (i960_validate_fix): New function.
3855
3856         * write.c (number_to_chars_littleendian): New function.  Write out
3857         bytes in little endian order, doing size and range checking.
3858         (number_to_chars_bigendian): New function, similar.
3859         * write.h: Declare them.
3860         * config/tc-*.c (md_number_to_chars): Use them.
3861         * config/tc-vax.c (md_apply_fix): Ditto.
3862         * config/tc-i386.c (md_apply_fix): Ditto.
3863
3864         * config/obj-coff.c: Rearranged code for handling line number
3865         data.
3866         (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
3867         since the usage is different from non-BFD_ASSEMBLER case.
3868         (in_function, clear_function, set_function): New macros, to
3869         combine some of the functionality implemented in differnet ways in
3870         BFD_ASSEMBLER and non-... code.  Used in other functions that used
3871         to check function_lineoff &c.
3872         (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
3873         one for not.  Non-BFD_ASSEMBLER version now has temporary variable
3874         to contain char* pointer pointed to by char** argument.  Always
3875         follow CROSS_COMPILE code; easier to read that way.
3876         (obj_coff_ln): Don't call add_lineno or c_line_new if appline is
3877         set.
3878         (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
3879         ".bf", it's been done elsewhere.
3880         (coff_frob_symbol): If ilne number data is pending, call
3881         add_linesym to flush it.
3882         (coff_frob_file): Don't do that here.
3883         * config/obj-coff.h (coff_frob_file): Declare.
3884         (obj_frob_file): Define, to call it.
3885
3886         * config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
3887         md_estimate_size_before_relax: Define them as macros calling
3888         as_fatal.
3889         * config/tc-sparc.c: Don't define them as functions.
3890
3891         * configure.in: Handle target alpha-*-osf*.  (No cpu files yet.)
3892
3893 Wed Dec  1 23:37:14 1993  Jeffrey A. Law  ([email protected])
3894
3895         * Makefile (clean): Depend on clean-here.
3896
3897 Wed Dec  1 11:35:21 1993  Ken Raeburn  ([email protected])
3898
3899         * config/ho-go32.h: Include fopen-bin.h.
3900         * as.h: If FOPEN_WB isn't defined, include fopen-same.h.
3901         * output-file.c (output_file_create): Use FOPEN_WB instead of "w".
3902         * input-file.c (input_file_open): Use FOPEN_RT instead of "r".
3903         * listing.c (file_info): Use FOPEN_RB instead of "rb".
3904         * read.c (s_include): Use FOPEN_RT instead of "r".
3905
3906         * stabs.c: Include obstack.h.
3907
3908         * tc.h (md_create_long_jump): Don't declare if it's already
3909         defined as a macro.
3910         (md_create_short_jump, md_estimate_size_before_relax): Ditto.
3911
3912         * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
3913         of strerror.  Clear bfd_error.
3914
3915         * config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
3916         defined.
3917
3918 Wed Dec  1 10:41:56 1993  Jeffrey A. Law  ([email protected])
3919
3920         * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
3921         (pa_process_exit, pa_procend): Call it for ELF objects.
3922
3923 Wed Dec  1 12:10:41 1993  Ian Lance Taylor  ([email protected])
3924
3925         * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
3926         case.  See comment.  From [email protected]: for M_L_DAB, set
3927         coproc before doing goto ld.
3928
3929 Tue Nov 30 13:40:30 1993  Jeffrey A. Law  ([email protected])
3930
3931         * write.c (TC_FORCE_RELOCATION): Provide a default definition.
3932         (fixup_segment): Allow the target machine to specify that a 
3933         relocation must be generated for a particular fixup.  Remove
3934         #ifndef TC_HPPA hack.
3935
3936         * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.
3937
3938         * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
3939         be NULL.  Only fixup_segment is supposed to do that.
3940         (hppa_force_relocation): New function.
3941
3942 Tue Nov 30 11:21:41 1993  Ian Lance Taylor  ([email protected])
3943
3944         * Makefile.in (stabs.o): Added dependencies.
3945
3946         * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
3947
3948 Sun Nov 28 12:11:40 1993  Jeffrey A. Law  ([email protected])
3949
3950         * app.c (do_scrub_next_char): Output a TAB before any
3951         .app* directive.
3952
3953         * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
3954         exists before trying to peek at its name.
3955         (pa_space): Do not call pa_align_subseg.  See hppa/unsorted/align3.s
3956         for testcase.
3957         (pa_align_subseg): Delete unused/unwanted function.
3958
3959 Sat Nov 27 22:49:07 1993  Jeffrey A. Law  ([email protected])
3960
3961         * read.c (read_a_source_file): Fix test for when to stick a colon
3962         on the end of a label.  Make code conditional on either MRI or
3963         LABELS_WITHOUT_COLONS.
3964
3965         * app.c (do_scrub_next_char): If a line begins with whitespace, leave
3966         the single whitespace character alone.  Eat all others.
3967
3968         * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
3969
3970 Wed Nov 24 01:22:54 1993  Jeffrey A. Law  ([email protected])
3971
3972         * config/tc-hppa.c (pa_procend): Do not call process_exit.
3973         (exit_processing_complete): Delete unwanted variable and all
3974         references.
3975
3976 Wed Nov 24 02:31:38 1993  Ian Lance Taylor  ([email protected])
3977
3978         * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
3979         Changed to not actually build the external symbol information, as
3980         that is now done by the ECOFF back end.
3981         (ecoff_build_debug): Changed accordingly.
3982         * ecoff.h (obj_ecoff_set_ext): Declare.   obj-format.c function
3983         called by ecoff_setup_ext.
3984         * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
3985         set corresponding pointer to NULL.  Don't set raw_size and
3986         raw_syments.
3987         (obj_ecoff_set_sym_index): Removed.
3988         (obj_ecoff_set_ext): New function.
3989         * config/obj-ecoff.h (obj_set_sym_index): Don't define.
3990         (obj_ecoff_set_sym_index): Don't declare.
3991         * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
3992         elf_set_index): New functions used for ECOFF_DEBUGGING.
3993         (elf_frob_file): Reworked ECOFF debug generation to use
3994         new functions in bfd/ecofflink.c.
3995
3996 Sun Nov 21 23:54:52 1993  Jeffrey A. Law  ([email protected])
3997
3998         * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
3999         subspace for ELF.  In the SOM world, the linker is responsible
4000         for creating the unwind subspaces.
4001
4002 Fri Nov 19 16:25:09 1993  Ian Lance Taylor  ([email protected])
4003
4004         * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
4005         (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
4006         already set.  Fixes .def var; .val external_var; .scl 3; .endef.
4007         (adjust_stab_section): Make static.  Declare return type.  Remove
4008         unused variables.
4009
4010         * config/tc-i386.h: Declare tc_coff_fix2rtype and
4011         tc_coff_sizemachdep.
4012
4013 Fri Nov 19 04:33:59 1993  Ken Raeburn  ([email protected])
4014
4015         * write.c (write_object_file): Disable obj_check_file_symbols
4016         hook; only back end using it wasn't using it correctly.
4017         (write_object_file): Always call obj_frob_symbol and
4018         tc_frob_symbol; always retain symbol if it's used by a relocation,
4019         regardless of what these routines indicate.
4020         * config/obj-coff.c (coff_frob_symbol): Renamed from
4021         coff_check_file_symbols.
4022         * config/obj-coff.h (obj_check_file_symbols): Deleted.
4023         (coff_frob_symbol): Declare.
4024         (obj_frob_symbol): Call it.
4025
4026         * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
4027         obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
4028         (c_section_header): Ditto.  Delete superfluous return at end of
4029         function.
4030
4031         * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
4032         coff-sparc-lynx.
4033         (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
4034         too.
4035         (c_section_header): Rewrite prototype so that it contains no
4036         preprocessing directives.  Don't declare it at all if
4037         BFD_ASSEMBLER.
4038
4039         * configure.in (sparc*-*-lynxos): New target, using coff and
4040         BFD_ASSEMBLER.
4041
4042         * stabs.c: New file.
4043         * Makefile.in (REAL_SOURCES, OBJS): List it.
4044         * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
4045         get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
4046         Moved to new file.
4047
4048         * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
4049         files.
4050
4051 Wed Nov 17 17:23:53 1993  Ian Lance Taylor  ([email protected])
4052
4053         * configure.in (mips-*-irix5*): New target.  Use elf and mips-big.
4054         * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
4055         (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
4056         pseudo-ops.
4057         (obj_read_begin_hook): If ECOFF_DEBUGGING, call
4058         ecoff_read_begin_hook.
4059         (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
4060         ecoff_symbol_new_hook.
4061         (obj_elf_init_stab_section): Cast alloca result.
4062         (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
4063         information and write it out into .mdebug section.
4064         * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
4065         (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
4066         (ECOFF_DEBUGGING): Define if TC_MIPS.
4067         (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
4068         fields required by ECOFF.
4069         * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
4070         OBJ_ECOFF in many cases.
4071         (mips_any_noreorder): New variable.
4072         (mips_cprestore_offset): Initialize to -1.
4073         (mips_frame_reg): New variable.
4074         (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
4075         RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
4076         (md_pseudo_table): Handle "gpword" and "cpadd".
4077         (md_begin): Initialize ok to false.  If OBJ_ELF, set alignment
4078         of text, data and bss sections to 4.  Set alignment of
4079         .reginfo section to 2.  If ECOFF_DEBUGGING, create .mdebug
4080         section.
4081         (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
4082         check.
4083         (append_insn, macro_build, macro_build_lui): Take place
4084         argument.  Changed all callers.
4085         (append_insn): If appending a nop, don't emit one.
4086         (macro_build): Changed assertion for 'i', 'j', 'o' case.
4087         (gp_reference): Removed.
4088         (load_address): New function.
4089         (macro): If mips_noreorder is used, set mips_any_noreorder.
4090         Extensive changes to handle GP and PIC symbols differently.
4091         Build both possible code choices using a variant frag, and
4092         make a final decision at the end of assembly when all
4093         information is known.  Added PIC support for all symbol
4094         references.
4095         (mips_ip): Don't permit anything but a number after $ for a
4096         coprocessor register.  Don't use .lit4 or .lit8 sections when
4097         generating PIC code.  If OBJ_ELF, set alignment of .lit4 or
4098         .lit8 section to 4.
4099         (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
4100         (s_change_sec): Set alignment of ELF .rodata or .sdata section
4101         to 4.
4102         (s_mipsset): If .set noreorder, set mips_any_noreorder.
4103         (s_cpload): Ignore .cpload if not generating PIC code.  Warn
4104         if .cpload is not in noreorder section.
4105         (s_cprestore): Ignore .cprestore if not generating PIC code.
4106         (s_gpword, s_cpadd): New functions.
4107         (tc_get_register): Added frame argument; if true, set
4108         mips_frame_reg to return value.  Changed all callers.
4109         (md_estimate_size_before_relax): Don't error out, but instead
4110         determine how much a frag should grow.
4111         (tc_gen_reloc): Return multiple relocs if appropriate, as
4112         determined by md_estimate_size_before_relax.
4113         (md_convert_frag): New function.
4114         (mips_elf_final_processing): Set ELF header flags based on
4115         mips_any_noreorder and mips_pic.
4116         * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
4117         (MAX_RELOC_EXPANSION): Define to be 3.
4118         (md_relax_frag): Define to be 0.
4119         (md_convert_frag): Don't define.
4120         (tc_get_register): Changed declaration.
4121
4122         * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
4123         support generating ECOFF debugging information for MIPS ELF
4124         targets.  Compiled only if ECOFF_DEBUGGING is defined.  Changed
4125         handling of external symbols: it now always generates exactly
4126         those external symbols that are defined in the global symbol list.
4127         * Makefile.in (REAL_SOURCES): Added ecoff.c.
4128         (REAL_HEADERS): Added ecoff.h.
4129         (OBJS): Added ecoff.o.
4130         (ecoff.o): New target.
4131         * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
4132         Remaining code mostly just calls ecoff.c code.
4133         * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
4134         (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
4135         struct localsym.
4136         (obj_read_begin_hook, obj_symbol_new_hook): Define to call
4137         functions in ecoff.c.
4138         (ecoff_stab): Don't declare (now declared in ecoff.h).
4139         (obj_set_sym_index): Define.
4140         (obj_ecoff_set_sym_index): Declare.
4141
4142         * frags.h (frag_grow): Declare.
4143         * frags.c (frag_grow): Made non-static.
4144
4145         * write.c (is_dnrange): Do not define if md_relax_frag is defined.
4146         (relax_segment): If md_relax_frag is defined, use it to handle a
4147         frag of type rs_machine_dependent rather than looking through
4148         md_relax_table.
4149
4150         * read.c (read_a_source_file): If we find a bad pseudo-op,
4151         do a continue to go on to the next line rather than a break.
4152         Removed duplicate bad pseudo-op code which was never executed.
4153
4154         * read.c (s_lcomm): Do not require a comma after the name.
4155
4156         * subsegs.h (segment_info_type): Changed hadone field to bitfield.
4157         Added bss bitfield.
4158         * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
4159         * read.c (s_lcomm): Set bss flag for .sbss section if used.
4160         * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
4161         bss section.  Set SEC_RELOC if there are any relocations, even for
4162         a zero size section.
4163
4164         * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
4165         data offset on reloc[0]->address rather than reloc[j]->address, so
4166         that multiple relocs can affect different memory locations.
4167
4168         * write.c (chain_frchains_together, relax_and_size_seg,
4169         adjust_reloc_syms, write_relocs): Make third argument PTR, not
4170         char *, to match definition of bfd_map_over_sections.
4171
4172         * app.c (do_scrub_next_char): Don't interpret a comment character
4173         as starting a CPP line directive unless it is a '#' and is the
4174         very first characters on the line (i.e., do not permit leading
4175         whitespace).
4176
4177         * messages.c (identify): Make file argument non-const, to match
4178         callers.
4179
4180 Tue Nov 16 20:38:21 1993  Jeffrey A. Law  ([email protected])
4181
4182         * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
4183
4184 Sat Nov 13 18:22:48 1993  Steve Chamberlain  ([email protected])
4185
4186         * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
4187         * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
4188         relocs.
4189
4190 Fri Nov 12 16:51:47 1993  Jeffrey A. Law  ([email protected])
4191
4192         * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4193         * config/obj-som.c (obj_som_version): Add missing ';'.
4194         (som_frob_file): Delete whitespace at EOL.
4195
4196 Fri Nov 12 15:26:21 1993  Ken Raeburn  ([email protected])
4197
4198         * Makefile.in (VERSION): Updated following 2.2 release.
4199
4200 Fri Nov 12 14:52:17 1993  Jeffrey A. Law  ([email protected])
4201
4202         * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
4203         field selector, rather than an int.  All uses of field selectors
4204         fixed.
4205         (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
4206         (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
4207         field.
4208
4209         Thu Nov 11 15:49:08 1993  Jeffrey A. Law  ([email protected])
4210
4211         * config/tc-hppa.c (pa_type_args): For .import statements,
4212         silently ignore attempt to change the symbol type for a function
4213         from ST_ENTRY to ST_CODE on .import.
4214
4215 Wed Nov 10 16:19:13 1993  Ian Lance Taylor  ([email protected])
4216
4217         * write.h (fixS): Rename fx_callj field to fx_tcbit.
4218         * write.c, config/obj-coff.c, config/obj-coffbfd.c,
4219         config/tc-i960.c: Corresponding changes.
4220
4221 Tue Nov  9 00:49:01 1993  Jeffrey A. Law  ([email protected])
4222
4223         * Makefile.in (distclean): Delete config-stamp and config.h
4224
4225         * config/tc-hppa.c (evaluate_absolute): Avoid relying on
4226         ANSI-C features.
4227
4228         * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
4229         Accept new argument "is_export".  All callers changed.  When
4230         processing a .export directive for a function, do not allow
4231         the user to set the type to "CODE", instead warn and set the
4232         type to "ENTRY".
4233
4234 Mon Nov  8 12:05:07 1993  Ian Lance Taylor  ([email protected])
4235
4236         * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
4237         Lemon <[email protected]>).
4238         (mips_ip): Permit odd numbered floating point registers if -mips3.
4239         (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
4240
4241 Mon Nov  8 07:45:01 1993  Doug Evans  ([email protected])
4242
4243         * configure.in: Remove h8300h, we have multilib now.
4244
4245 Mon Nov  8 06:09:18 1993  D. V. Henkel-Wallace  ([email protected])
4246
4247         * configure.in: Support generic netware as being ELF format.
4248                         Recognise unixware if the user supplies it.
4249
4250 Sun Nov  7 01:02:08 1993  Jeffrey A. Law  ([email protected])
4251
4252         * First cut at cleaning up PA instruction parsing.
4253         * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
4254         insn structure as an argument, and a pointer to a string.  All
4255         callers changed.  Always read any field selector here.  Call
4256         evaluate absolute to get a return value.
4257         (evaluate_absolute): Addept pointer to insn structure as its
4258         argument.  All callers changed.
4259         (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
4260         into an instruction and continuing the main pa_ip loop.
4261         (CHECK_FIELD): New macro for simple range checking of fields.
4262         (pa_ip): Delete unused variables.  Use INSERT_FIELD_AND_CONTINUE
4263         and CHECK_FIELD.  All immediate fields now pass through
4264         pa_get_absolute_expression which will also handle field selectors.
4265         Delete dead code.  Simplify.
4266         (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
4267         applied are in range.  Use bfd_put_32 rather than inserting each
4268         byte of the fixed instrution into the buffer ourselves.
4269
4270         * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
4271         it was PA specific and is no longer needed (it's now handled 
4272         within the PA backend).
4273         * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
4274         * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
4275         a fixup is $global$ change it to NULL as $global$ is really only
4276         needed long enough to determine the base type of relocation to use.
4277
4278         * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
4279
4280         * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
4281         for 'z' operands (target of ble branch).
4282
4283 Sat Nov  6 22:41:57 1993  Jeffrey A. Law  ([email protected])
4284
4285         * config/tc-hppa.c: (update_subspace): Fix type and name of last
4286         parameter.  All callers fixed.
4287         (md_begin, pa_chk_field_selector, pa_entry): Lint.
4288
4289         * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
4290         to default state after it's been used.
4291
4292 Fri Nov  5 12:08:21 1993  Jeffrey A. Law  ([email protected])
4293
4294         * config/obj-som.c (obj_som_init_stab_section): Change
4295         space/subspace sort keys for the stab sections so as to avoid
4296         bugs in the hp linker and pxdb.
4297
4298 Thu Nov  4 17:00:05 1993  Jeffrey A. Law  ([email protected])
4299
4300         * write.c (chain_frchains_together): Update pointer to last
4301         frag for a segment in the seginfo structure.
4302
4303 Thu Nov 04 09:09:35 1993  Jeffrey Wheat  ([email protected])
4304
4305         *  Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
4306
4307 Wed Nov  3 12:16:27 1993  Ken Raeburn  ([email protected])
4308
4309         * write.c (fixup_segment): Handle conversion of subtraction to
4310         pc-relative addressing even if pc-relative flag is already set.
4311
4312         * config/tc-m68k.c (m68k_ip_op): Use strchr, not index.  Don't
4313         declare either.
4314
4315         * doc/Makefile.in (distclean): Delete intermediate files from dvi
4316         build, but not the dvi or info files.
4317         * Makefile.in (clean-here): New target; cleans up current
4318         directory only.
4319         (distclean): Use it instead of clean.
4320
4321         * read.c (s_xstab): Don't use alloca.
4322
4323         * messages.c (identify): New routine; print message identifying
4324         following messages as coming from assembler.
4325         (as_show_where, as_bad_internal, as_bad_where): Call it.
4326         (as_fatal): Don't need to identify program any more.
4327
4328 Tue Nov  2 18:04:11 1993  Ian Lance Taylor  ([email protected])
4329
4330         * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
4331
4332         * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
4333         well as MIPS ECOFF.
4334         (get_stab_string_offset): Remove unused variable aligned.
4335
4336 Tue Nov  2 15:07:07 1993  Jeffrey A. Law  ([email protected])
4337
4338         * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
4339         predefined register table.
4340         (pa_parse_number): Handle %rp in common register shortcut code.
4341         Consistently set return value to -1 for an error.  Clean up error
4342         messages and only print them when "print_errors" is true.  Handle
4343         empty string case like the HP assembler -- assume a value of
4344         zero.
4345  
4346         * config/ho-hpux.h: Do not include ho-sysv.h.  Instead include
4347         standard hpux include files to pick up various function decls.
4348
4349         * config/ho-hppaosf.h: Delete _IO* macros.  They are defined in
4350         stdio.h.  Delete bogus declaration of free.  Get path to
4351         alloca-conf.h right.
4352
4353 Tue Nov  2 13:57:30 1993  Ken Raeburn  ([email protected])
4354
4355         * expr.c (operand): Fix checks for characters following "0b" or
4356         "0f".
4357
4358 Mon Nov  1 21:37:04 1993  Jeffrey A. Law  ([email protected])
4359
4360         * config/obj-som.h (obj_attach_unwind_info): Define as a hook
4361         so GAS can attach unwind descriptor information to a BFD symbol.
4362         * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
4363         descriptor information to the BFD symbol.
4364         (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
4365         they are simply markers.  Make R_HPPA_UNWIND_* handling OBJ_ELF
4366         dependent.
4367         (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
4368         (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
4369         (pa_exit): Likewise, but built a R_HPPA_EXIT relocation.  Do not
4370         build "end-of-function" symbols for SOM, they are not needed.
4371
4372         * config/tc-hppa.c (process_exit): Create temporary symbols with
4373         correct prefixes so they can be eliminated later.
4374
4375         * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
4376         (pa_callinfo): Insert framesize into the unwind information as 
4377         soon as it's available.
4378         (pa_build_unwind_subspace): Do not insert framesize into the unwind
4379         information here.
4380
4381         * Add support for marker type relocations.  These mark areas
4382         of interest to the linker.  ENTRY/EXIT relocations for SOM are
4383         an example of marker relocations.
4384         * write.c (write_relocs): Instead of assuming size of a relocation
4385         is 4 bytes, pick up the size from relocation itself.
4386         (fixup_segment): Do not complain that a value is too small for 
4387         marker relocations.
4388
4389         * struc-symbol.h: Add new "sy_used" field to the symbol structure.
4390         * expr.c (operand): Set sy_used for any symbol used as an operand.
4391         (expr): Likewise for any symbol used in an expression.
4392         * config/tc-hppa.h (tc_frob_symbol): Define.  Punt imported
4393         symbols which are never used and absolute symbols which local scope.
4394
4395         * config/obj-som.h (obj_frob_file): Define.
4396         * config/obj-som.c (obj_som_init_stab_section): Set alignment
4397         of stab sections.  Make space for the special stab entry.
4398         (adjust_stab_sections): Adjust the special entry in the 
4399         stabs section.
4400         (som_frob_file): New function.  Simply calls adjust_stab_sections
4401         for each section.
4402
4403 Mon Nov  1 17:54:29 1993  Ian Lance Taylor  ([email protected])
4404
4405         * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
4406         (mips_pic, mips_cprestore_offset): New static variables.
4407         (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
4408         Ignore .bgnb and .endb.
4409         (gp_reference): _gp_disp is never addressed off GP.
4410         (macro_build): Ignore macros while searching for insn.  For cases
4411         i, j, and o, accept the reloc type as an argument rather than
4412         assuming BFD_RELOC_LO16.  Don't try to convert BFD_RELOC_LO16 to
4413         BFD_RELOC_MIPS_GPREL.  Added new case a.
4414         (set_at, load_register, macro): Changed calls to macro_build to
4415         pass new argument for i, j and o cases.
4416         (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A.  These require
4417         special handling when generating SVR4 PIC code.
4418         (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
4419         rather than hard coded constants.
4420         (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
4421         BFD_RELOC_MIPS_CALL16.
4422         (s_option): Set mips_pic based on .option picN.
4423         (s_abicalls): New function; set mips_pic to 2.
4424         (s_cpload): New function; handle .cpload.
4425         (s_cprestore): New function; handle .cprestore.
4426
4427         * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
4428         .endb and .verstamp, setting them to s_ignore.
4429
4430 Sun Oct 31 00:36:40 1993  Jeffrey A. Law  ([email protected])
4431
4432         * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
4433         field.  Define SUBSPACE_DEFINED accessor macro.
4434         (pa_subspace): Allow user to override subspace attributes for
4435         built-in subspaces.  Set ssd_defined at the end of fcn -- that
4436         way the attributes can only be changed once.  Pass newly allocated
4437         name to is_defined_subspace, not a pointer to the input line.
4438         Fix typo in space/subspace rework.
4439         (is_defined_subspace): Delete unused 2nd arg.  All callers changed.
4440
4441         * config/tc-hppa.c (pa_import): If currently in the text segment
4442         and a symbol is imported without type information, set BSF_FUNCTION
4443         for the symbol.
4444         * write.c (relax_and_size_seg): Correct test to determine if
4445         the section's size was rounded up.
4446
4447         * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
4448         can properly set all the SOM symbol types.
4449         * config/tc-hppa.c (pa_symbol_type): New enum to represent the 
4450         symbol types which can be set from an IMPORT/EXPORT statement.
4451         (pa_export_args): Set the pa_symbol_type type based on arguments.
4452         If defined, call obj_set_symbol_type to pass this information on
4453         to the BFD backend.
4454
4455         * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any 
4456         stab section we make.
4457         (s_stab_generic): Likewise.
4458
4459 Sat Oct 30 14:26:20 1993  Jeffrey A. Law  ([email protected])
4460
4461         * Allow backends to override the value of the fake label.
4462         * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code.  Instead
4463         assume backends will define LOCAL_LABEL if anything other than
4464         'L' is used to denote a local label.
4465         (FAKE_LABEL_NAME): New macro.  Defines the default name used for
4466         the "fake" label.
4467         * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
4468         and instead simply use the string defined by FAKE_LABEL_NAME.
4469         (operand): Likewise.
4470         * read.c (s_stab_generic): Likewise.
4471         * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
4472         known to be a local label.
4473         * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
4474         (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
4475         * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
4476         (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
4477         * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
4478         (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
4479
4480         Rework space/subspace handling in PA code to fully support
4481         SOM spaces/subspaces.
4482         * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
4483         to control the use of space/subspace name aliases.
4484         (update_subspace): Accept space chain entry for containing space
4485         as a new parameter.  All callers changed.
4486         (pa_get_label): Use current_space rather than pa_segment_to_space.
4487         (pa_define_label): Likewise.
4488         (pa_undefine_label): Likewise.
4489         (md_begin): Change into the (possibly modified) text_section.
4490         (pa_parse_space_stmt): Create a new segment/space if create_flag
4491         is true, and the space name is not one of the two predefined spaces.
4492         (pa_subspace): Use current_space rather than a lookup via 
4493         pa_segment_to_space.  Reset BFD section flags as required by 
4494         the .subspace directive.  Likewise for the section alignment.
4495         Pass the current space to update_subspace and create_new_subspace.
4496         (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
4497         is true.  When not using aliases, create a BFD section for each
4498         subspace encountered.  When not using aliases replace the default
4499         text, data, and bss segments with new ones.
4500         (create_new_subspace): When not using aliases each subspace has a 
4501         section/segment and subsegments are not needed, so set the subsegment
4502         to zero. 
4503
4504         * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
4505         obj_set_section_attributes to pass space attributes to the 
4506         BFD backend.
4507         (create_new_space): Likewise.
4508         (create_new_subspace): Likewise for subspace attributes using 
4509         obj_set_subsection_attributes.
4510         (update_subspace): Likewise for subspace attributes using
4511         obj_set_subsection_attributes.
4512
4513         * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
4514         for $TEXT$ and $PRIVATE$ from the default space structure.
4515
4516         * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
4517         as appropriate for the given type.
4518
4519         * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
4520         SOM relocations.
4521
4522         * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
4523         redefinition.
4524
4525         * config/obj-som.[ch]: New files for SOM support.  Note SOM
4526         support is not yet complete in GAS or BFD.
4527
4528         * config/ho-hppabsd.h:  Delete IO* macros, they are defined in 
4529         stdio.h.  Delete declaration of free.  Include stdlib.h, unistd.h,
4530         and string.h.
4531
4532 Fri Oct 29 13:26:12 1993  Jeffrey A. Law  ([email protected])
4533
4534         * Allow backends to override the section names used for embedded
4535         stabs support.  Needed for SOM.
4536         * read.c (STAB_SECTION_NAME): Default the name of the stab section
4537         to ".stab".  
4538         (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
4539         (get_stab_string_offset): Is now passed the full name for the
4540         stab string section rather than a name prefix.  All references
4541         changed.
4542         (s_stab_generic): New argument for the stab string section name.
4543         all references changed.
4544         (s_xstab): Append "str" to the stab section name to get the
4545         stab string section name.
4546         * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
4547         to stab section name to get the stab string section name.  Pass
4548         the full name of the stab string section to get_stab_string_offset.
4549         * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
4550         
4551         * config/tc-hppa.c (md_begin): Disable "-R" option to fold
4552         textand data segments.  Warn user "-R" is unsupported on the
4553         PA.
4554
4555 Thu Oct 28 12:36:13 1993  Jeffrey A. Law  ([email protected])
4556
4557         * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
4558         .align and .ALIGN directives.
4559
4560         * config/tc-hppa.c (pa_space): Do not report an error for a .space
4561         directive which does not define a "well-known" space and does
4562         not include a space number as an argument.
4563         
4564         * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
4565         "defined", "loadable", "code_only" and "space_index" fields.
4566         (pa_def_spaces): Correct initialization of the "spnum", "defined",
4567         and "private" fields.
4568
4569         * write.h (struct fix): Add new tc_fix_data field for the various
4570         backends to attach machine dependent fixup information to.
4571         * write.c (fix_new_internal): Initialize new tc_fix_data field.
4572         * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
4573         fx_next fields.
4574         (hppa_find_hppa_fix): Delete unnecessary function.  Fix all
4575         callers to get HPPA fixup information from the tc_fix_data field
4576         in the GAS fixup.
4577         (hppa_fix_root): Delete unnecessary variable.
4578         (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
4579
4580         * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
4581         function.  Fix all callers.
4582         (subspace_dictionary_chain): Delete unused ssd_start_sym field.
4583
4584         * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
4585         if a particular fixup is adjustable.
4586         * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
4587         perform the real work.
4588
4589         * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
4590         of OBJ_XXX conditionals.
4591         (MAX_RELOC_EXPANSION): Likewise.
4592
4593         * config/tc-hppa.c (log2): Renamed from is_power_of_2.  Fix all
4594         callers. Now returns log2 (N) for positive N which are an exact
4595         power of two or -1 for an error.
4596
4597         * config/tc-hppa.c (pa_callinfo): Range check values provided for 
4598         ENTRY_GR, ENTRY_FR and ENTRY_SR.  Properly adjust vaues before
4599         inserting them into the unwind table.
4600
4601         * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
4602         (hppa_gen_reloc_type): New object format dependent macro.
4603         (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
4604         conditional.  The code can (and will) be shared between SOM & ELF
4605         formats in the near future.
4606         (cons_fix_new_hppa, md_apply_fix_1): Likewise.
4607         (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
4608         (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
4609         specific call.
4610
4611         * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
4612         to bfd_und_section.
4613
4614         * config/obj-elf.h (obj_elf_version): Add extern prototype.
4615
4616         * configure.in (hppa-*-bsd*): New configuration.
4617         BFD is always used for GAS generating SOM objects.
4618
4619         * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
4620         adjustment is rejected by the target machine.
4621
4622         * config/tc-hppa.c (pa_big_cons): Delete function and its
4623         declaration.  All callers changed to use pa_cons.
4624
4625         * write.c (fixup_segment): Fix indention and open/close brace
4626         problem.
4627
4628         From Pete Hoogenboom:
4629         * config/tc-hppa.c (md_atof): Return a NULL on success rather than
4630         an empty string.
4631
4632         * config/tc-hppa.c (pa_parse_space_stmt): Advance
4633         input_line_poitner when an invalid argument is encountered.
4634
4635 Thu Oct 28 13:09:26 1993  Ian Lance Taylor  ([email protected])
4636
4637         * config/tc-a29k.c (md_begin): When opcodes are mashed together in
4638         the table, require that the one without bit 0x1000000 set come
4639         first.  Require further that it be case 'b' or 'P'.  The a29k
4640         opcode table already meets these constraints.
4641         (machine_ip): When handling case 'i' or 'A', make sure that the
4642         appropriate opcode really exists by looking at the next entry in
4643         the opcode table.
4644
4645 Wed Oct 27 11:48:56 1993  Ian Lance Taylor  ([email protected])
4646
4647         * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
4648         fixups.  Add 6 for long 7.3 case, 2 for short 7.2 case.
4649
4650         * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
4651         after a .ent directive.
4652
4653         * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
4654         between 32 and 63 for double shift instruction).  Do & 0x1f rather
4655         than % 32.
4656         (printInsn): Handle '>'.
4657
4658 Tue Oct 26 16:58:36 1993  Ian Lance Taylor  ([email protected])
4659
4660         * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
4661         number in the right place.  Untested.  Probably does not work for
4662         cross assembly.  From [email protected] (Andrew Cagney).
4663
4664         * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
4665         an illegal offset of 0 or -1.
4666
4667         * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
4668         section to a longword boundary.
4669
4670 Tue Oct 26 10:24:31 1993  Ken Raeburn  ([email protected])
4671
4672         * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
4673
4674         From Jeff Law:
4675         * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
4676         HPPA_R_ADDEND.
4677
4678 Mon Oct 25 14:06:17 1993  Ian Lance Taylor  ([email protected])
4679
4680         * config/tc-sparc.c (sparc_ip): Fix up membar argument handling.
4681
4682 Mon Oct 25 11:17:58 1993  Steve Chamberlain  ([email protected])
4683
4684         * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
4685         address. (md_assemble): Make error handling a bit more graceful.
4686         (md_apply_fix):  Don't warn on non aligned displacement.
4687
4688         * config/tc-z8k.c (get_specific, built_bytes):  Understand all the
4689         aspects of lda.
4690
4691 Mon Oct 25 10:20:31 1993  Ken Raeburn  ([email protected])
4692
4693         * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
4694         as.info* even if they're in $(srcdir) (e.g., for FSF
4695         distributions).
4696
4697         * write.c (write_relocs): For relocs that are pc_relative and
4698         pcrel_offset and not partial_inplace, adjust reloc->addend to
4699         compensate for a bfd_perform_relocation bug.
4700
4701         * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
4702         * config/tc-sparc.c: Ditto.
4703         (tc_gen_reloc): Include fx_offset for pcrel fixups.
4704
4705 Sun Oct 24 16:49:00 1993  Jim Wilson  ([email protected])
4706
4707         * tc-mips.c (md_pseudo_table): Add dword pseudo op.
4708
4709 Fri Oct 22 20:40:56 1993  david d `zoo' zuhn  ([email protected])
4710
4711         * messages.c: replaced all variables called Format with 'format',
4712           for consistency throughout
4713
4714         * configure.in: handle mips*- instead of mips, mips*el for little
4715         endian configurations
4716
4717 Fri Oct 22 14:45:49 1993  Ian Lance Taylor  ([email protected])
4718
4719         * input-scrub.c (physical_input_file, logical_input_file,
4720         physical_input_line, logical_input_line): Made static.
4721         (as_where): Return current file name and line number, don't print
4722         them out.
4723         * messages.c (as_show_where): New static function.  Other
4724         functions use it instead of as_where.
4725         (as_bad_internal): New static function.
4726         (as_bad): Use as_bad_internal.
4727         (as_bad_where): New function, like as_bad but taking a file name
4728         and line number.
4729         * as.h (as_bad_where): Declare.
4730         (as_where): Change prototype for new arguments.
4731         * write.h (fixS): Added fields fx_file and fx_line.
4732         * write.c (fix_new_internal): Save file and line number in fix.
4733         (fixup_segment): Use as_bad_where, not as_bad.
4734         * input-file.c (f_in, file_name): Made static.
4735         * cond.c (struct file_line): Just use file and line fields.
4736         (s_else): Use as_where and as_bad_where, not get_file_line and
4737         set_file_line.
4738         (get_file_line, set_file_line): Removed.
4739         * listing.c (listing_newline): Use as_where.
4740         * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
4741         * config/obj-ecoff.c (add_file): Use as_where.
4742         * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
4743         * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
4744         * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
4745
4746 Thu Oct 21 12:52:01 1993  Ken Raeburn  ([email protected])
4747
4748         * config/tc-m68k.h: Don't define REGISTER_PREFIX or
4749         OPTIONAL_REGISTER_PREFIX if either is already defined.
4750
4751         * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
4752
4753         * configure.in: Set bfd_gas for all sparc targets.  Added facility
4754         for keeping or rejecting configurations still under development;
4755         default is to assume production environment, and reject configs
4756         still being worked on.  Mark Elf configurations (except sparc and
4757         i386) as developmental.  Deleted cases matching some generic names
4758         in favor of more specific names.  (E.g., when we get Alpha
4759         support, we'll still only support VMS for Vax.)
4760
4761         * config/tc-sparc.h (md_end): New macro.
4762         * config/tc-sparc.c (md_end): Function deleted.
4763         (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
4764         version compiling.  All sparc targets will use bfd now.
4765         * tc.h (md_end): Don't declare if it's defined as a macro.
4766
4767         Changes from Jeff Law and Peter Hoogenboom:
4768
4769         * read.c (next_char_of_string): Limit octal character constants to
4770         three digits.
4771
4772         * config/tc-hppa.h: Major cleanup.  Use GNU-style comments.  Warn
4773         against placing additional object-file dependent code here.  Warn
4774         against contaminating all of GAS with the internals of tc-hppa.c
4775         through inclusion of tc-hppa.h.  Delete all forward declarations
4776         for functions only used within tc-hppa.c, likewise for structures,
4777         variables, and #defines.  Try to group OBJ_ELF and OBJ_SOM
4778         conditional code in a few small places.
4779
4780         * config/tc-hppa.c: Major cleanup.  Use GNU-style comments.  Group
4781         structures, global variables, forward declarations together.
4782         Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
4783         conditional code -- try to group conditional code together
4784         into a few places.   Make all functions and variables which
4785         are only used within tc-hppa.c static.  PARAMize all functions.
4786         Add comments to functions.  Delete unused functions, variables,
4787         #defines, etc.  Delete unused members within structures.  Delete
4788         ldil;ble hacks -- it is believed they were installed to work
4789         around old gas bugs.   Avoid using mixed case for local
4790         functions, variables, and structures.  Fix formatting problems
4791         not found by GNU-indent.  Add FIXME notices for things which
4792         should be worked on the near future.  Delete lots of old
4793         useless (1.36 PA-SOM) code.  
4794
4795         * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
4796         field of the fixS structure.  Needed to build unwind
4797         descriptors correctly.
4798
4799         * write.c: (fixup_segment): Allow expressions such as
4800         sym1-sym2+const as long as sym2 is $global$.
4801
4802         * write.c (adjust_reloc_syms): Provide a hook so that a target
4803         cpu configuration can reject certain relocation reductions.
4804         * tc-hppa.h (tc_fix_adjustable): New macro.  Only accept relocations
4805         which do not involve function symbols.
4806
4807         * config/tc-hppa.h: Reindent with GNU-indent.  Delete references
4808         to OBJ_OSFROSE.  Fix typos (OBJ_SOME -> OBJ_SOM).  Delete unused
4809         STAB_FIXUP macro.
4810         * config/tc-hppa.c: Likewise.
4811
4812         * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
4813         of elf32_symbol_type.
4814         (pa_export_args): Likewise.
4815         (elf_hppa_final_processing): Likewise.
4816         (pa_desc): Do not call obj_elf_desc.  (Is pa_desc even needed
4817         anymore?)
4818         (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
4819         ore.
4820
4821         * config/tc-hppa.c: (md_section_align): Align all sections to
4822         a multiple of the section alignment rather than always a
4823         multiple of 8.
4824
4825         * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
4826         bits are zero (eg they specify no relocations), then do not even
4827         bother adding their entries to thesymextn section.
4828
4829 Thu Oct 21 15:44:55 1993  Ian Lance Taylor  ([email protected])
4830
4831         * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
4832         option, which is used by the SunOS make default .s.o rule.
4833
4834 Wed Oct 20 12:26:33 1993  Ken Raeburn  ([email protected])
4835
4836         * config/tc-sparc.c (sparc_ip, label "immediate"): Convert relocs
4837         operating on upper 32 bits of immediate constants to lower-half
4838         relocs with adjusted constants.
4839
4840 Tue Oct 19 18:13:26 1993  Ian Lance Taylor  ([email protected])
4841
4842         * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
4843         m68k_aout_machtype.
4844         * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
4845         (m68k_aout_machtype): New variable, if OBJ_AOUT.
4846         (md_assemble): Initialize m68k_aout_machtype based on
4847         current_architecture, if OBJ_AOUT.
4848         (md_parse_option): Remove obsolete reference to omagic.
4849
4850 Thu Oct 14 16:51:00 1993  Ian Lance Taylor  ([email protected])
4851
4852         * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
4853         (s_option): Ignore .option O* and .option pic*.
4854         (s_ent): Skip whitespace between symbol and optional digit.
4855         (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
4856
4857         * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
4858         characters in state 6.
4859         * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
4860         hexidecimal digits.
4861
4862         * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
4863         for ELF by hacking around bizarre bfd_perform_relocation behaviour
4864         that I don't dare change.
4865
4866 Thu Oct 14 11:33:25 1993  Michael Meissner  ([email protected])
4867
4868         * config/tc-i386.c: (md_begin): Do not zero static arrays.  Don't
4869         call strchr for each character to see if it is a special char,
4870         instead add a second loop over special_chars.  Set alignment
4871         of text, data and bss sections to 4.
4872         (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
4873         used again.
4874         (reloc): Don't return 8 and 16 bit non-PC relative relocations on
4875         ELF, since the ELF object format does not have these type of
4876         relocations.  Change the abort into as as_bad and return
4877         BFD_RELOC_NONE to silence compiler warnings.
4878         (md_assemble): Keep track of the instruction size.  Allow white
4879         space between the $ and the constant for compatibility with older
4880         gases and other assemblers.
4881         (i386_operand): Skip spaces between $ and expression.
4882         (tc_gen_reloc): Don't allow anything but 32 bit relocations on
4883         ELF.  Convert abort into an as_bad and assert into as_fatal.
4884
4885 Wed Oct 13 16:50:55 1993  Ken Raeburn  ([email protected])
4886
4887         * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
4888         sub_symbolP is in the current segment, convert to a PC-relative
4889         fixup and discard the symbol.
4890
4891 Wed Oct 13 14:00:02 1993  Ian Lance Taylor  ([email protected])
4892
4893         * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
4894         for st_StaticProc just like st_Proc.
4895
4896         * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
4897         so that OBJ_BOUT doesn't forget to adjust all the fragments in the
4898         .bss section.
4899
4900 Tue Oct 12 17:26:15 1993  Ian Lance Taylor  ([email protected])
4901
4902         * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
4903         (mips_regmask_frag): New static variable, if OBJ_ELF.
4904         (md_begin): If OBJ_ELF, create .reginfo section and set
4905         mips_regmask_frag to a frag.
4906         (mips_elf_final_processing): New function, if OBJ_ELF.  Set
4907         mips_regmask_frag to register mask information.
4908         * config/tc-mips.h (elf_tc_final_processing): New macro, defined
4909         if OBJ_ELF.
4910
4911 Tue Oct 12 03:33:26 1993  Ken Raeburn  ([email protected])
4912
4913         * messages.c (as_fatal): Use myname when printing messages.
4914
4915         * config/tc-i960.c (md_begin): Use null pointer, not empty string,
4916         as initial "return" value in case hashing isn't needed.
4917
4918         * config/tc-a29k.c (md_atof): Return null, not empty string, on
4919         success.
4920         * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
4921         config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
4922         config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
4923         config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
4924
4925 Mon Oct 11 16:46:31 1993  Steve Chamberlain  ([email protected])
4926
4927         fix for pr 3571
4928         * config/tc-h8300.c (get_specific): Special action if 8 bit
4929         address seen. (check_operand): Don't complain if truncating top
4930         bits of an 8 bit address.  (build_bytes): Allow an immediate and
4931         an absolute in the same insn.
4932
4933 Mon Oct 11 17:18:51 1993  Ian Lance Taylor  ([email protected])
4934
4935         * write.c (write_contents): Don't crash if seginfo is NULL.
4936
4937         * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
4938         by modifying .reginfo section, not by directly modifying BFD
4939         backend data.
4940
4941 Mon Oct 11 14:11:32 1993  david d `zoo' zuhn  ([email protected])
4942
4943         * config/ho-sunos.h: remove extern time declaration
4944
4945 Mon Oct 11 16:14:43 1993  Ken Raeburn  ([email protected])
4946
4947         * messages.c (as_fatal): Do mention that it's the assembler that
4948         got the fatal error.
4949
4950 Fri Oct  8 14:09:35 1993  Ian Lance Taylor  ([email protected])
4951
4952         * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
4953         hold register masks.
4954         (md_begin): Initialize them to zero.
4955         (append_insn): Update mips_gprmask and mips_cprmask.  Also add
4956         register variables pinfo and prev_pinfo.
4957         * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
4958         * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
4959         and cprmask from mips_gprmask and mips_cprmask.
4960
4961         * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
4962         * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
4963         (various): Change all references to GP references to apply if
4964         GPOPT, not if OBJ_ECOFF.
4965         (s_change_sec): Rearrange somewhat.  If OBJ_ELF, use .rodata
4966         instead of .rdata.  If OBJ_ELF, set section flags for .rodata and
4967         .sdata sections.
4968         (s_frame, s_loc, s_mask): Comment out entire functions, rather
4969         than just body.  They're not used anyhow.
4970         * configure.in: Set cpu_type to mips for mips*.  Accept
4971         mips-*-elfl* and mips-*-elf*.
4972
4973 Thu Oct  7 18:36:29 1993  Michael Meissner  ([email protected])
4974
4975         * config/obj-elf.c (obj_elf_common): Allow the alignment field to
4976         not be specified.
4977
4978 Wed Oct  6 13:01:34 1993  Ian Lance Taylor  ([email protected])
4979
4980         * config/tc-mips.c (cons_fix_new_mips): New function.  Turn
4981         BFD_RELOC_64 into BFD_RELOC_32.
4982         * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
4983         (cons_fix_new_mips): Declare.
4984
4985         Changes to let cons handle bignums like general expressions.
4986         * expr.h (expressionS): New field X_unsigned.
4987         * expr.c (operand): Initialize X_unsigned to 1.  Set it to 0 for
4988         unary minus case.
4989         (expr) Fix typo resultP to right if missing operand.  Set
4990         X_unsigned to 1 when building new expression.
4991         * read.c (potable): Make "octa" and "quad" call cons, not
4992         big_cons.
4993         (cons): Handle bignums.  If given an O_constant (small integer) to
4994         fill a big space, turn it into a bignum.
4995         (parse_bitfield_cons): Set X_unsigned field.
4996         (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
4997         Removed.
4998         * read.h (big_cons): Remove prototype.
4999         * symbols.c (resolve_symbol_value): Don't give a warning if a
5000         symbol in expr_section can not be resolved.
5001         (S_SET_VALUE): Clear X_unsigned.
5002         * write.c (write_object_file): If resolve_symbol_value failed on a
5003         symbol we are writing out, give a warning.
5004         * config/tc-h8500.c (parse_reglist): Set X_unsigned.
5005         * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
5006         call pa_cons, not pa_big_cons.
5007         (pa_big_cons): Remove.
5008         * config/tc-hppa.h (pa_big_cons): Remove declaration.
5009         * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
5010         not big_cons.
5011
5012 Tue Oct  5 10:53:36 1993  david d `zoo' zuhn  ([email protected])
5013
5014         * doc/as.texinfo (Copying): new node, to handle the recent changes
5015         in the texinfo/gpl.texinfo file
5016
5017 Mon Oct  4 17:10:15 1993  Ian Lance Taylor  ([email protected])
5018
5019         * read.c (big_cons): Handle "0" correctly.
5020
5021         * config/tc-mips.c (md_begin): Set target_big_endian correctly.
5022
5023 Mon Oct  4 15:37:57 1993  Ken Raeburn  ([email protected])
5024
5025         * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
5026         have pc-relative fixup.
5027         (md_parse_option): Move "-k" case down near "-pic" case.
5028
5029         * configure.in: Alphabetize list of cpu type alternatives.  Enable
5030         OS values of "linux*elf*" and "linux*coff*" to select those
5031         formats, with linux emulation.  Don't bother checking for upper-
5032         or mixed-case versions of "ose".
5033
5034 Thu Sep 30 11:05:35 1993  Steve Chamberlain  ([email protected])
5035
5036         * config/z8k.c (md_pseudo_table): add "unseg".
5037
5038 Wed Sep 29 16:15:11 1993  K. Richard Pixley  ([email protected])
5039
5040         * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
5041           found while extending the dissassembler.
5042
5043 Tue Sep 28 12:02:04 1993  Stan Shebs  ([email protected])
5044
5045         * configure.in: Split i386 LynxOS out from other coff targets,
5046         add a specific Lynx emulation.
5047         Add m68k LynxOS target.
5048         * config/tc-i386.c: Define specific Lynx target format.
5049         * config/tc-m68k.c: Define specific Lynx target format.
5050         * config/te-lynx.h: New file.
5051
5052         * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
5053         "coff-{i386,m68k}" if TARGET_FORMAT already defined.
5054         (INIT_STAB_SECTION): Define.
5055         * config/obj-coffbfd.c: Include <time.h>.
5056         (write_object_file): Look for .stab sections and call
5057         adjust_stab_section.
5058         (adjust_stab_section): New function, fills in the first symbol
5059         of a stab section with number of symbols and string table size.
5060         (obj_coff_init_stab_section): New function, creates the initial
5061         symbol for a stab section.
5062
5063 Mon Sep 27 15:21:55 1993  Ken Raeburn  ([email protected])
5064
5065         * config/atof-vax.c (md_atof): Return null on success instead of
5066         empty string.
5067         * config/atof-tahoe.c (md_atof): Ditto.
5068         * read.c (float_cons): Expect a null pointer for success, not an
5069         empty string.
5070
5071         * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
5072         on success, instead of empty string.  All callers changed.
5073
5074         * config/tc-vax.c: Use PARAMS in declarations.
5075         (vip_op): Use NULL instead of empty string for success in error
5076         and warning fields.
5077
5078 Sun Sep 26 23:45:29 1993  Ken Raeburn  ([email protected])
5079
5080         * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
5081         in different defined segments.
5082
5083         * write.c (relax_segment): Localize "aim" variable.  If
5084         DIFF_EXPR_OK, don't impose checks on symbol segment types.
5085         (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
5086         segment, convert to a PC-relative fixup and discard the symbol.
5087
5088         * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
5089         (md_parse_option) [TE_SUN3]: Set it for "-k".
5090         (m68k_ip): Generate proper fixup for mode 7.3.
5091         * config/tc-m68k.h (DIFF_EXPR_OK): Define.
5092
5093 Sat Sep 25 05:08:19 1993  Ken Raeburn  ([email protected])
5094
5095         * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
5096         earlier in the file.
5097         (insop, add_exp): Now defined as functions, for readability.
5098         (insop): Now takes two arguments; callers changed.
5099
5100 Fri Sep 24 12:37:59 1993  K. Richard Pixley  ([email protected])
5101
5102         * config/tc-m88k.c (get_o6): new function.
5103           (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
5104           get_vec9, getval, get_pcr, calcop, match_name): make static and
5105           prototype.
5106           (s_file): remove extraneous forward decl.
5107           (md_begin): add const to retval decl.
5108           (calcop): cope with instructions without arguments.  Handle 'o'
5109           type argument, the o6 field of the prot insn.
5110           (md_estimate_size_before_relax): return a dummy value.
5111
5112         * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
5113           in bits 10 through 7.  flt.[dxs]s requires an r register in the
5114           second argument.  New instruction lda.x.  New instruction muls
5115           (alias for mul).
5116
5117 Fri Sep 24 13:43:30 1993  Ian Lance Taylor  ([email protected])
5118
5119         * Makefile.in (distclean): Recurse like clean.
5120         * doc/Makefile.in (distclean): New target.
5121
5122         * config/tc-mips.c (md_begin): Set BFD architecture and machine
5123         based on MIPS ISA level.
5124
5125 Thu Sep 23 17:58:58 1993  Ian Lance Taylor  ([email protected])
5126
5127         * as.c (main): "exhausted", not "exhuasted".
5128
5129         * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
5130         * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
5131         (write_object_file): Never strip symbols with sy_used_in_reloc
5132         set.
5133
5134         * config/obj-elf.c (obj_elf_section): Rewrote to handle both
5135         Solaris and SVR4 style .section pseudo-ops.
5136         (obj_elf_ident): Set SEC_READONLY for .comment section.
5137         * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
5138         generating a reloc, don't apply a fix.
5139
5140 Thu Sep 23 13:16:58 1993  Ken Raeburn  ([email protected])
5141
5142         * config/obj-coffbfd.c (relax_align): Now static.
5143
5144 Mon Sep 20 19:23:35 1993  Ian Lance Taylor  ([email protected])
5145
5146         * read.c (get_stab_string_offset): Make non-static.  Make
5147         arguments const.  Don't align strings to 4 byte boundaries.
5148         * read.h: Declare get_stab_string_offset.
5149         * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
5150         SEC_LOAD for progbits section.
5151         (obj_elf_init_stab_section): New function.
5152         (adjust_stab_sections): Add casts to avoid warnings.
5153         * config/obj-elf.h (INIT_STAB_SECTION): Call
5154         obj_elf_init_stab_section.
5155         (OBJ_PROCESS_STAB): Removed definition.
5156
5157 Fri Sep 17 18:12:34 1993  Ian Lance Taylor  ([email protected])
5158
5159         * config/obj-elf.h (S_GET_SIZE): Define.
5160         (obj_frob_forward_symbol): Define.
5161         * config/tc-i386.c (line_comment_chars): Initialize in all cases.
5162
5163 Thu Sep 16 14:23:08 1993  Ian Lance Taylor  ([email protected])
5164
5165         * tc.h: Declare tc_gen_reloc differently depending upon
5166         RELOC_EXPANSION_POSSIBLE.
5167         * config/obj-elf.c (obj_elf_section): Only set flags when first
5168         creating the section.
5169
5170 Wed Sep 15 12:15:53 1993  Ian Lance Taylor  ([email protected])
5171
5172         * config/tc-mips.c (append_insn): Don't swap a trap instruction
5173         with a branch.
5174
5175 Tue Sep 14 13:31:04 1993  Ian Lance Taylor  ([email protected])
5176
5177         * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
5178         set previous_section and previous_subsection and then call s_data
5179         and s_text, respectively.
5180         (obj_pseudo_table): Add data and text.
5181         (obj_elf_section): Add SEC_LOAD to default initialization of
5182         flags.  Treat .rodata1 like .rodata.  Set SEC_LOAD as well as
5183         SEC_ALLOC for "alloc" string.  Don't bother trying to find the
5184         section; just use subseg_new.
5185
5186         * read.c (change_to_section): Removed.  This is now done by
5187         subseg_new.
5188         (get_stab_string_offset): Rearranged somewhat.  Create the section
5189         using subseg_new.  Store the string index in seg_info, rather than
5190         in a static variable.  Force the first string to be empty.  Use
5191         frag_more rather than FRAG_APPEND_1_CHAR.
5192         (s_stab_generic): Rewrote.
5193         * subsegs.h (segment_info_type): Added stabu union.
5194         * subsegs.c (subseg_new): Initialize stab_string_size to 0.
5195         * config/obj-aout.c: Don't include aout/stab_gnu.h.
5196         (obj_aout_stab, obj_aout_desc): Removed.
5197         (obj_pseudo_table): Removed desc and stabX entries.
5198         * config/obj-bout.c: Same changes as config/obj-aout.c.
5199         * config/obj-bout.h (S_SET_TYPE): Define.
5200         (tc_bout_fix_to_chars): Declare.
5201         * config/obj-coff.c (obj_coff_stab): Removed.
5202         (obj_pseudo_table): Removed desc and stabX entries.
5203         * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
5204         * config/obj-coffbfd.c (current_stab_symbol): Removed.
5205         * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
5206         n_other, n_desc and n_value fields.
5207         (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
5208         (MAKE_STAB_SYMBOL): Removed.
5209         * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
5210         Changed arguments and removed parsing code.
5211         (obj_pseudo_table): Removed stabX entries.
5212         * config/obj-ecoff.h (ecoff_stab): Declare.
5213         (OBJ_PROCESS_STAB): Define.
5214         * config/obj-elf.c: Don't include aout/stab_gnu.h.
5215         (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
5216         elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
5217         Removed.
5218         (obj_pseudo_table): Removed desc, stabX and xstabs entries.
5219         (obj_elf_version): Use subseg_new, not bfd_make_section.  Don't
5220         set SEC_LOAD for .note section.
5221         (adjust_stab_sections): Get frag pointer from seg_info, rather
5222         than looking through frags.
5223         * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
5224         (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
5225         Define.
5226         * config/obj-vms.c (obj_aout_stab): Removed.
5227         (obj_pseudo_table): Removed stabX entries.
5228         * config/obj-vms.h (S_SET_TYPE): Define.
5229
5230         * as.h: Declare listing.
5231         * read.c: Don't declare listing.
5232         (emit_expr): Cast fix_new_exp argument.
5233         (parse_bitfield_cons): Correct printf format.
5234         * symbols.c (symbol_new): Add cast to avoid warning.
5235         * write.h: Declare text_last_frag and data_last_frag.
5236         * config/obj-bout.c (obj_bout_line): Added dummy argument.
5237         * config/obj-coffbfd.c: Add some casts to avoid warnings.
5238         * config/tc-a29k.c: Likewise.
5239         * config/tc-i960.c: Likewise.  Also fully bracket structure
5240         initializations, fix printf formats, and remove unused variables.
5241
5242 Mon Sep 13 16:48:38 1993  Ian Lance Taylor  ([email protected])
5243
5244         * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
5245         * struc-symbol.h: Declare verify_symbol_chain and
5246         verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
5247         * symbols.c (verify_symbol_chain): Removed useless expression.
5248         * write.c (headers, the_object_file): Only use if not
5249         BFD_ASSEMBLER and not BFD.
5250         (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
5251         not BFD.
5252         (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
5253         not OBJ_AOUT).
5254         * write.h: Declare relax_segment.
5255         * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
5256         static.
5257         (stack_top): Commented out, since it's not used.
5258         Fixed up pseudo-op functions to take an ignored int argument.
5259         (size_section): Added default BAD_CASE to switch.
5260         Changed bzero calls to memset.
5261         * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
5262         (s), not on s itself.
5263         * config/tc-a29k.c (s_use): Take ignored int argument.  Only
5264         define if OBJ_COFF is not defined.
5265         * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
5266         argument signed again.
5267         * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
5268         argument.
5269         (m68k_ip): Fully bracket initialization of archs.
5270         Correct several formats for __LINE__ to be %d rather than %s.
5271         (init_table): Fully bracket initialization.
5272         Cast values larger than 0x7f assigned to fr_opcode to char.
5273
5274         * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
5275         Wrote non-BFD_ASSEMBLER subseg_new.  Now subseg_new always takes a
5276         section name, and subseg_set always takes a segT.  Changed all
5277         callers as appropriate.
5278         * config/obj-coffbfd.c  (change_to_section): Renamed to
5279         obj_coff_add_segment.  Corrected.  Made callers use subseg_new.
5280         * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
5281         Define.
5282
5283 Mon Sep 13 13:15:03 1993  Doug Evans  ([email protected])
5284
5285         * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
5286
5287 Fri Sep 10 11:22:08 1993  Ian Lance Taylor  ([email protected])
5288
5289         * config/obj-elf.h (S_SET_SIZE): Actually set the size.
5290
5291         Gcc lint.
5292         * Added a number of casts to function calls.
5293         * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
5294         operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
5295         read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
5296         ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
5297         read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
5298         (obj_elf_section), config/tc-i386.c (parse_register),
5299         config/tc-sparc.c (isoctal, s_proc): Cast char
5300         array indices to unsigned char.
5301         * app.c (process_escape): Make static.  Add prototype.  Change
5302         argument from char to int.
5303         * as.c: Include output-file.h for prototypes.  Comment out unused
5304         function got_sig.
5305         * Makefile.in (as.o): Depend on output-file.h.
5306         * as.h (BAD_CASE): Cast val argument to long, and use %ld.
5307         (pseudo_typeS): Add prototype to poc_handler field.
5308         (print_version_id): Add prototype.
5309         (xmalloc, xrealloc): Change size arguments to unsigned long.
5310         (do_scrub_next_char): Add prototypes for function arguments.
5311         (had_errors, had_warnings, scrub_from_file): Remove duplicate
5312         declarations.
5313         * atof-generic.c (atof_generic): Make size variables unsigned.
5314         * cond.c (ignore_input): Removed unused local variable ptr.
5315         * expr.c (floating_constant, integer_constant): Make static.  Add
5316         prototypes.
5317         * flonum-copy.c (flonum_copy): Make size variables unsigned.
5318         * frags.h: Add prototype for frag_init.
5319         * hash.h, hash.c: Change hash values from char * to PTR, make hash
5320         strings const, make returned error strings const char *.  Added
5321         prototypes for functions.
5322         * input-file.h, input-file.c (input_file_buffer_size): Return
5323         unsigned int.
5324         * input-scrub.c (buffer_length): Make unsigned.
5325         (input_scrub_push, input_scrub_pop): Make static.
5326         * listing.c (list_symbol_table): Cast sprintf argument to unsigned
5327         long and use %lx.  Print name of segment rather than address of
5328         structure.
5329         (listing_list, listing_title): Change argument to int.
5330         (listing_eject, listing_flags, listing_psize): Add int argument.
5331         * listing.h: Corresponding declaration changes.
5332         * obj.h (obj_emit_symbols): Rename prototype argument to avoid
5333         shadowing.
5334         * read.h: Change get_absolute_expression prototype to return
5335         offsetT.  Add prototype for next_char_of_string.  Various
5336         prototype changes.
5337         * read.c: Remove prototype for next_char_of_string.
5338         (pobegin): Make errtxt const.  Make new_length, tmp_len and num
5339         unsigned.
5340         (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
5341         s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
5342         Change all callers.
5343         (s_comm): Change temp from valueT to offsetT.  Cast to long when
5344         printing and use %ld (only for error messages anyhow).
5345         (s_long, s_int): Remove unused functions.
5346         (cons): Change argument to int.
5347         (emit_expr): Use %lx when printing longs.
5348         (get_absolute_expression): Return offsetT, not long.
5349         (get_stab_string_offset): Comment out unless
5350         SEPARATE_STAB_SECTIONS.
5351         (s_stab_generic): Remove unused offset.  Define seg_is_new only
5352         if SEPARATE_STAB_SECTIONS.  Use toP only in local block.
5353         * struc-symbol.h (verify_symbol_chain_2): Add prototype.
5354         * symbols.c: Remove nested comment.
5355         (symbol_new): Rename value to valu.
5356         (colon): Use %ld and cast to long in error message.
5357         * symbols.h: Remove duplicate verify_symbol_chain declaration.
5358         * tc.h: Remove unused md_emit_relocations declaration.
5359         (tc_gen_reloc): Add declaration.
5360         * write.c (cvt_frag_to_fill): Change first argument name depending
5361         on BFD_ASSEMBLER.
5362         (write_relocs): Remove unused offset, frags.  Remove tc_gen_reloc
5363         declarations.  Make n unsigned.
5364         (write_contents): Remove unused i, n, relocs, fixp.  Rename frags
5365         to f to avoid shadowing.
5366         (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
5367         WORKING_DOT_WORD.  Remove unused keep.  Only declare punt and
5368         punt_it if they will be used.  Make i and n unsigned.
5369         (fixup_segment): Cast to long and use %ld in error message.
5370         * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
5371         * config/obj-aout.h: Remove nested comment.  Add prototype for
5372         obj_aout_frob_symbol.
5373         (obj_aout_line, obj_aout_desc): Add int argument.
5374         * config/obj-ecoff.c: Changed build routines to use an unsigned
5375         offset.
5376         (add_string): Make len unsigned long.
5377         (obj_ecoff_stab): Use %lu in error message.
5378         * config/obj-elf.c (obj_elf_common): Comment out unused label
5379         allocate_bss.
5380         (obj_elf_frob_symbol): Return 0 (currently broken).
5381         (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
5382         obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
5383         obj_elf_line, obj_elf_previous): Add int argument.
5384         (obj_elf_write_symbol_p): Make static.
5385         * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
5386         * config/tc-hppa.h: Remove declarations of functions declared in
5387         read.h.
5388         * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
5389         (s_bss): Add int argument.
5390         (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
5391         (dummy): Remove unused function.
5392         (md_assemble): Rename local o to op to avoid shadowing.
5393         (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
5394         * config/tc-m68k.c (s_data1, s_data2): Add int argument.
5395         * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
5396         %ld in error messages.
5397         * config/tc-sparc.c: Remove duplicate declarations.
5398         (getExpression): Rewrite condition to avoid empty conditional
5399         body.
5400         (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
5401         argument.
5402
5403 Thu Sep  9 17:10:00 1993  Ken Raeburn  ([email protected])
5404
5405         Changes from Jeff Law:
5406
5407         * config/tc-hppa.c (md_assemble): Fix typo.
5408         (pa_ip): Delete unused variables and labels.  Do not check for
5409         unsigned values being < 0, it can't happen.
5410         (is_same_frag): Return a value in recursive call case.
5411         (pa_callinfo): Delete unused variables and labels.
5412         (pa_comm): Likewise.
5413         (pa_copyright): Likewise.
5414         (pa_export): Likewise.
5415         (pa_import): Likewise.
5416         (pa_param): Likewise.
5417         (pa_space): Likewise.
5418         (pa_subspace): Likewise.
5419
5420 Thu Sep  9 15:05:34 1993  Ian Lance Taylor  ([email protected])
5421
5422         * read.c (get_stab_string_offset, s_stab_generic): If
5423         BFD_ASSEMBLER, call subseg_set rather than subseg_new.
5424
5425 Wed Sep  8 15:09:17 1993  Ian Lance Taylor  ([email protected])
5426
5427         * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
5428         default flag values.
5429
5430 Tue Sep  7 10:22:52 1993  Stan Shebs  ([email protected])
5431
5432         * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
5433
5434         * read.c: (s_stab, s_xstab, s_desc): New functions to parse
5435         various stab-related directives.
5436         * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
5437         * write.c: (merge_data_into_text): Fix ifdef tangle.
5438         * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
5439         for stab reader to use.
5440         * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
5441         stab reader, macros to access.
5442
5443 Fri Sep  3 16:44:03 1993  Ken Raeburn  ([email protected])
5444
5445         * config/obj-elf.h (elf_symbol): No longer special-cased on
5446         sparcv9, since elf_symbol_type is now independent of size.
5447
5448         * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
5449
5450         * config/tc-hppa.h (struct default_subspace_dict, struct
5451         default_space_dict): Field "sort" is now unsigned char.
5452
5453         * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
5454         columns for easier reading.
5455         (bcmp, index): Deleted USG-specific definitions.  Should be dealt
5456         with in ho-*.h, or in libiberty.  Changed mention of index to
5457         strchr.
5458         (label_symbolP, label_symbol_defined, callinfo_found,
5459         within_entry_exit, exit_processing_complete, within_procedure,
5460         pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
5461         label_symbols_rootP, pa_get_label, pa_label_is_defined,
5462         pa_undefine_label): Now static.
5463         (movers): Now const, in addition to pointing to const data.
5464         * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
5465         pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
5466         Delete declarations.
5467
5468         Merged more changes from Jeff Law and Pete Hoogenboom:
5469
5470         * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
5471         entries for .stab and .stabstr.
5472
5473         * config/obj-elf.c: (elf_stab_symbol_string):  Set the
5474         SEC_LOAD attribute for the .stabstr section.
5475         (obj_elf_stab_generic):  Set the SEC_LOAD attribute for the
5476         .stab section.
5477         (obj_elf_stab_generic):  Change '#if 1' to '#if 0'.
5478         (obj_elf_stab_generic):  Incorrect byte count on call to
5479         md_number_to_chars function.
5480
5481         * config/tc-hppa.c (hppa_tc_symbol): Static functions need
5482         argument relocation bits too.
5483
5484         * config/tc-hppa.c (pa_stringer): Correctly handle escaping
5485         characters which should appear unaltered in the output string (for
5486         example an escaped double-quote).
5487
5488         * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
5489         initialize name.
5490         (pa_parse_neg_cmpsub_cmpltr): Likewise.
5491         (pa_parse_nonneg_add_cmpltr): Likewise.
5492         (pa_parse_neg_add_cmpltr): Likewise.
5493
5494         * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
5495         for now.
5496         (cons_fix_new_hppa): Likewise.
5497         * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
5498         prototype.
5499
5500         * config/tc-hppa.c: Include libhppa.h.
5501
5502         * config/tc-hppa.h: Delete extern declarations of functions
5503         found in libhppa.h.
5504
5505         * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
5506         OBJ_ELF conditionals.
5507         * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
5508         on the PA.
5509
5510 Thu Sep  2 10:43:57 1993  Ian Lance Taylor  ([email protected])
5511
5512         * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
5513         (macro): Use "z,s,t" for div instructions to match corresponding
5514         change in opcode table.
5515         (mips_ip): Added 'z'--must be zero register.
5516
5517 Wed Sep  1 15:56:42 1993  Ken Raeburn  ([email protected])
5518
5519         * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
5520         tc_gen_reloc correctly.
5521
5522         * configure.in: Use "case" instead of "if" when possible.  Rewrote
5523         Makefile editing to reduce work done.  Treat "hppa*" as "hppa".
5524
5525 Wed Sep  1 12:19:07 1993  K. Richard Pixley  ([email protected])
5526
5527         * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
5528           section type of data.  'd' seems to be used for m88k.
5529
5530 Wed Aug 25 22:33:22 1993  Ian Lance Taylor  ([email protected])
5531
5532         * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
5533         s_mips_space): Set insn_label to NULL to avoid changing it at the
5534         next .align statement.
5535         (append_insn): Don't swap jal with instruction that sets the
5536         register that jal sets.
5537
5538 Wed Aug 25 16:15:57 1993  K. Richard Pixley  ([email protected])
5539
5540         * configure.in: recognize m88110.
5541
5542 Wed Aug 25 13:37:46 1993  Ken Raeburn  ([email protected])
5543
5544         Merged changes from Pete Hoogenboom and Jeff Law at Utah:
5545         * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
5546         not be on for .hppa_unwind.
5547         (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
5548         (pa_param): New function to handle .PARAM directives.
5549         (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
5550         functions.  Handle '|' for movb; allow movb,n.
5551         (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
5552         version.  Handle cases where no completer exists for
5553         comb,n or addb,n.
5554         (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
5555         completer exists for comb,n or addb,n.  Make logic
5556         mirror that of pa_parse_nonneg_cmpsub_cmpltr.
5557         (pa_parse_nonneg_add_cmpltr): Likewise.
5558         (pa_parse_neg_add_cmpltr): Likewise.
5559         * tc-hppa.h (pa_param): Declare.
5560
5561 Tue Aug 24 15:41:35 1993  Ken Raeburn  ([email protected])
5562
5563         * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
5564         Added forward declaration.
5565
5566         Merged changes from Pete Hoogenboom and Jeff Law at Utah:
5567
5568         * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
5569         call to elf_tc_make_sections.
5570         (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
5571         attribute.
5572
5573         * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
5574         handle symbol extension sections.
5575
5576         * config/tc-hppa.c (pa_build_symextn_section): New function to
5577         create a symbol extension section.
5578         (pa_export_args): Make call to pa_build_symextn_section.
5579         (hppa_tc_symbol, hppa_tc_make_sections,
5580         hppa_tc_make_symextn_section): New functions.
5581         * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
5582         macros.
5583
5584         * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
5585         BFD_ASSEMBLER branch as well.
5586
5587         * config/tc-hppa.h: If ELF is the target object format, define
5588         some ELF- and hppa-specific types and constants.
5589
5590         * config/tc-hppa.c (getExpression): Fix a typo.
5591
5592         * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
5593         if a `=' is part of an instruction.
5594         (read_a_source_file): Handle case where end-of-line markers are
5595         also used within instructions.
5596         * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
5597
5598         * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
5599         out-of-range branches/'calls using "bl" or calls which may need
5600         argument relocation stubs.  Do not need/keep relocations for
5601         conditional branches.
5602         (elf_hppa_final_processing): Fix calculation of function size.
5603
5604         * config/obj-elf.c (obj_elf_version): Mark .note section as
5605         READONLY.
5606
5607         * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
5608         address of exp, to expression.
5609         (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
5610         (md_apply_fix_1): Delete unwanted comments.
5611         (process_exit): Symbols marking the end of a function are always
5612         BSF_LOCAL.
5613
5614         * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
5615         (pa_space): Declare and initialize gdb_section.
5616
5617         * config/obj-elf.c (elf_frob_file): Change
5618         elf_tc_final_processing_hook to elf_tc_final_processing.
5619
5620         * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
5621         argument type declarations.
5622         (getExpression): Fix typo.
5623         (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
5624         (elf_hppa_final_processing): Likewise.  Name changed from
5625         elf_hppa_final_processing_hook.
5626         (start_symbol_root, start_symbol_last): Deleted.
5627
5628         * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
5629
5630         * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
5631         avoid changing include ordering.
5632
5633         * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
5634
5635 Mon Aug 23 12:47:58 1993  Ian Lance Taylor  ([email protected])
5636
5637         * config/tc-mips.c (set_at): Added unsignedp argument.  Use
5638         load_register.
5639         (set_at_unsigned): Removed; changed callers to use set_at.
5640         (load_register): Removed unused ip argument.  Changed callers.
5641         (append_insn): Don't swap branch and branch likely.
5642         (macro_build): Handle 'u'.
5643         (load_register): Handle 64 bit constants.
5644         (macro): Added M_DABS, removed M_ABSU.  Numerous changes to
5645         support 64 bit constants.
5646         (mips_ip): Use hex constants in range checks for clarity.
5647         (md_number_to_chars): Support 8 byte values.
5648
5649 Fri Aug 20 16:50:59 1993  K. Richard Pixley  ([email protected])
5650
5651         * config/tc-m88k.h: updated copyrights.
5652           (TC_CONS_RELOC): declare to be RELOC_32.
5653
5654 Fri Aug 20 11:16:44 1993  Ian Lance Taylor  ([email protected])
5655
5656         * config/tc-mips.c (mips_isa): New static variable.
5657         (md_begin): Initialize mips_isa based on TARGET_CPU.  Don't sanity
5658         check macros.  Set text alignment and GP size here.
5659         (md_assemble): Don't set text alignment and GP size here.
5660         (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
5661         Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S.  Add
5662         a NOP after a branch likely.
5663         (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
5664         >= 2.
5665         (macro): Support r6000 and r4000 macros.
5666         (mips_ip): Check insn ISA level against mips_isa before using it.
5667         Added 'x' case for ignored register.
5668         (md_parse_option): Handle -mipsN and -mcpu=XX.
5669
5670 Fri Aug 20 01:26:52 1993  Ken Raeburn  ([email protected])
5671
5672         * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
5673
5674 Thu Aug 19 12:15:18 1993  Ken Raeburn  ([email protected])
5675
5676         * config/tc-sparc.c (s_local): Function moved and renamed...
5677         * config/obj-elf.c (obj_elf_local): ...to here.
5678         * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
5679         (obj_pseudo_table): Move handling of ".local".
5680
5681         * tc.h (md_parse_option): Don't declare if defined as a macro.
5682
5683         * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
5684         BFD_RELOC_NONE.
5685         (md_parse_option): New macro, converted from function.
5686         * config/tc-i386.c (md_parse_option): Function deleted.
5687         (comment_chars) [OBJ_ELF]: Include "/".
5688         (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
5689         (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
5690         warning.
5691         (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
5692         Call reloc for fix_new type, or use correct enumerator, instead of
5693         always using NO_RELOC.
5694         (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
5695         tests for valid section.
5696         (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
5697         address.
5698         (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
5699         symbol, compensate for location of reloc.
5700         (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
5701         to return zero.
5702
5703 Wed Aug 18 16:51:29 1993  Ken Raeburn  ([email protected])
5704
5705         * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
5706         (obj_elf_weak): New function.
5707         (obj_pseudo_table): Handle ".weak".
5708         (obj_elf_section): If section directive includes a string, ignore
5709         it for now.  Accept "progbits" flag.
5710         (obj_elf_type): Accept `@' before flag name.
5711
5712         * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
5713         condition.
5714         (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
5715         than checking for bfd_com_section directly.
5716         (fixup_segment): Simplify range check.
5717         (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
5718         test.
5719
5720         * symbols.h (S_SET_WEAK): Declare.
5721         * symbols.c (S_SET_WEAK): New function.
5722         (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
5723         it's not a separate flag any more.  Clear BSF_WEAK.
5724
5725         * read.c (potable): Treat "string" like "asciz".
5726
5727 Wed Aug 18 15:30:29 1993  Ian Lance Taylor  ([email protected])
5728
5729         * config/tc-mips.c (append_insn): Don't swap branch instructions
5730         if .set nobopt or .set volatile.
5731         (gp_reference): .lit8 and .lit4 are accessed via the GP register.
5732         (macro): Added cases M_LI_S, M_LI_SS.  Fixed M_LI_D and M_LI_DD.
5733         (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
5734         * config/obj-ecoff.c: Renamed some variables to avoid shadow
5735         warnings.
5736
5737 Mon Aug 16 14:16:02 1993  david d `zoo' zuhn  ([email protected])
5738
5739         * config/obj-coff.h (S_IS_COMMON): add missing backslash
5740
5741         * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
5742
5743 Thu Aug 12 11:47:58 1993  Ian Lance Taylor  ([email protected])
5744
5745         * config/tc-mips.c (mips_ip): Suggested by
5746         [email protected] (David Johnson): Don't accept symbolic
5747         names for 'E' and 'G' argument types (coprocessor registers) and
5748         don't warn if $1 is used on the coprocessor.
5749         (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
5750
5751 Mon Aug  9 12:09:14 1993  Doug Evans  ([email protected])
5752
5753         * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
5754         * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
5755         BFD_RELOC_16.
5756         * config/tc-sparc.h (WORKING_DOT_WORD): Define.
5757
5758 Mon Aug  9 13:36:22 1993  Ken Raeburn  ([email protected])
5759
5760         * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
5761         defined or BFD is not.
5762         (relax_and_size_all_segments): Declare local variable fragP.
5763
5764 Fri Aug  6 15:22:53 1993  Ken Raeburn  ([email protected])
5765
5766         * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
5767         bytes with real values, not zeros.
5768
5769 Fri Aug  6 10:57:59 1993  Ian Lance Taylor  ([email protected])
5770
5771         * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
5772         targets, using ecoff and mips-big.
5773
5774         * config/tc-mips.c (mips_ip): From [email protected] (David
5775         Johnson): Added case for 'C' for coprocessor instruction codes.
5776
5777 Thu Aug  5 13:08:56 1993  Ken Raeburn  ([email protected])
5778
5779         * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): Fill in
5780         bytes with real values, not zeros.
5781         (md_pseudo_table): Call cons for .uaxword.
5782
5783         * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
5784
5785         * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
5786
5787         * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
5788         for verifying symbol chain.
5789         (merge_data_into_text, relax_and_size_all_segments): New
5790         functions, split out from write_object_file.
5791
5792 Tue Aug  3 15:43:55 1993  Ken Raeburn  ([email protected])
5793
5794         * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
5795         debug section is new, allocate an extra 12 bytes at its start.  If
5796         ".stabs" type is N_SO, fill in filename symbol field of that first
5797         entry.  Return early if "goof", to simplify later code slightly.
5798         (adjust_stab_sections): New function.
5799         (elf_frob_file): Apply adjust_stab_sections to each section.
5800
5801         * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
5802         static.
5803         * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
5804         * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
5805         and "popsection", and call cons for "uaword" and "uahalf".
5806
5807         * config/obj-elf.c (obj_elf_version): Use English in error
5808         messages.
5809
5810 Tue Aug  3 11:29:06 1993  Ian Lance Taylor  ([email protected])
5811
5812         * config/obj-ecoff.c: Updated for BFD ECOFF changes.  Now gets the
5813         swapping routines and external structure sizes via the
5814         ecoff_backend information.  No longer includes coff/mips.h.
5815
5816 Mon Aug  2 17:35:48 1993  Ian Lance Taylor  ([email protected])
5817
5818         * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
5819         and in hash_ptr->string.
5820
5821         * app.c (do_scrub_next_char): Reset state to 0 after .appline if
5822         file name is not seen.
5823
5824 Mon Aug  2 11:51:41 1993  Ken Raeburn  ([email protected])
5825
5826         * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): New case,
5827         parallel to BFD_RELOC_32.
5828         (tc_gen_reloc): Accept BFD_RELOC_64.
5829
5830 Thu Jul 29 22:21:28 1993  Ian Lance Taylor  ([email protected])
5831
5832         * write.c: Don't use short int in a prototype.
5833
5834         * expr.c (operand): Make return value simply depend on contents of
5835         returned expression.
5836
5837 Thu Jul 29 18:38:37 1993  david d `zoo' zuhn  ([email protected])
5838
5839         * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
5840
5841 Thu Jul 29 18:38:37 1993  david d `zoo' zuhn  ([email protected])
5842
5843         * config/ho-sunos.h: remove some old function decls that conflict
5844         w/ ANSI, and which weren't needed anyway
5845
5846 Wed Jul 28 16:34:55 1993  Ken Raeburn  ([email protected])
5847
5848         * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
5849         and disabled since it breaks Ian's new symbol-value code.
5850
5851         * expr.c (integer_constant): Accept more digits if BFD64.
5852
5853 Wed Jul 28 11:30:05 1993  Ian Lance Taylor  ([email protected])
5854
5855         * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
5856         expect a bignum, turn it into a bignum.  Output extra zeroes
5857         before a short bignum, rather than after.
5858
5859 Tue Jul 27 15:54:27 1993  Ken Raeburn  ([email protected])
5860
5861         * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
5862         on DEBUG_SYMS, not DEBUG.
5863         (symbol_remove): Likewise.
5864         (symbol_insert): Likewise.
5865
5866 Tue Jul 27 08:45:05 1993  Ian Lance Taylor  ([email protected])
5867
5868         * config/tc-mips.c (mips_optimize): New static variable.
5869         (append_insn): If mips_optimize == 0, always insert NOP
5870         instructions.  If mips_optimize < 2, don't swap branches.
5871         (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
5872
5873 Mon Jul 26 18:02:43 1993  K. Richard Pixley  ([email protected])
5874
5875         * Makefile.in (clean): if testsuite does not exist, then skip it.
5876
5877 Fri Jul 23 14:13:25 1993  Ian Lance Taylor  ([email protected])
5878
5879         * config/tc-mips.c (prev_insn_unreordered,
5880         prev_prev_insn_unreordered): New static variables.
5881         (append_insn): Don't swap branch instruction if
5882         prev_prev_insn_unreordered (see comment).
5883         (mips_no_prev_insn): Clear the unreordered variables.
5884         (s_mipsset): When turning on reordering, set the unreordered
5885         variables.
5886
5887 Fri Jul 23 13:09:44 1993  Ken Raeburn  ([email protected])
5888
5889         * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
5890         are also magic, and have special default flag settings.
5891         (obj_elf_frob_symbol): Since the return value from this function
5892         isn't used, don't bother calling obj_elf_write_symbol_p, since it
5893         doesn't accomplish anything else.
5894
5895         * config/tc-sparc.c (md_section_align): Round up section size only
5896         for a.out format.
5897
5898         * symbols.c: Don't define DEBUG by default.
5899
5900 Thu Jul 22 12:09:41 1993  Ian Lance Taylor  ([email protected])
5901
5902         * write.c (fix_new_exp): Handle a O_uminus expression.
5903
5904         * expr.c (expr): Don't let absolute_section override
5905         undefined_section for the return value.
5906
5907         * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
5908         pseudo-op with a poc_handler field of NULL, ignore it and treat it
5909         as an instruction instead.
5910         * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
5911         poc_handler field.
5912
5913         * config/tc-h8500.c (md_begin): Use a local variable when
5914         initializing md_relax_table to avoid warnings about modifying a
5915         supposedly const data structure.
5916
5917 Thu Jul 22 10:58:51 1993  Brendan Kehoe  ([email protected])
5918
5919         * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
5920         is defined.
5921
5922 Wed Jul 21 17:32:02 1993  Fred Fish  ([email protected])
5923
5924         * configure.in (case ${host}):  Map *-*-sysv4* to gas_host=sysv.
5925         * configure.in (case ${generic_target}):  Add i[34]86-*-sysv4*
5926         case to set obj_format=elf.  Must go before i386-*-sysv* case that
5927         sets obj_format=coffbsd.  Add *-*-sysv4* to *-*-elf and
5928         *-*-solaris case, and move to before *-sysv* case that wants to
5929         set obj_format to coff.
5930         * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
5931         'exp->X_op'.
5932         * config/tc-i386.c (md_apply_fix):  Fix valp to be 'valueT *' for
5933         BFD_ASSEMBLER case.
5934
5935 Wed Jul 21 12:47:51 1993  Ian Lance Taylor  ([email protected])
5936
5937         * config/obj-aout.c: Include aout/aout64.h.
5938         (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
5939         symbol, so that BFD doesn't tamper with the type.
5940
5941         * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
5942         up opcodes as pseudo-ops even if they don't start with '.'.
5943         * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
5944         * config/tc-m88k.c (md_assemble): Removed special pseudo-op
5945         handling.
5946         (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
5947         Output the low 16 bits for RELOC_HI16, not the high 16 bits.
5948         * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
5949         r_offset field of the reloc to the fixup offset.
5950         (fixup_segments): If TC_M88K, don't warn about fixup overflows.
5951         * doc/as.texinfo: Minor updates.
5952
5953 Tue Jul 20 19:28:56 1993  Ian Lance Taylor  ([email protected])
5954
5955         * Extensive changes to permit symbols to contain any expression
5956         type and to delay the computation of the expression until the
5957         value is actually needed.  This permits setting symbols to values
5958         calculated based on object code size.  Expressions were changed to
5959         no longer be in a section, to stop the overloading of segment and
5960         expression type that previously occurred.
5961
5962         * as.c (big_section, pass1_section, diff_section, absent_section):
5963         Removed.
5964         (expr_section): Added (used for dummy symbols which hold
5965         intermediate expression values).
5966         (perform_an_assembly_pass): Create expr_section, do not create the
5967         sections now removed.
5968         * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
5969         SEG_DIFFERENCE.  Added SEG_EXPR.
5970         (SEG_NORMAL): Corresponding changes.
5971         * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
5972         * write.c (write_object_file): Ditto.
5973         * config/obj-aout.c (seg_N_TYPE): Ditto.
5974         * config/obj-bout.c (seg_N_TYPE): Ditto.
5975         * config/obj-coff.c (seg_N_TYPE): Ditto.
5976         * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
5977         * config/obj-vms.c (seg_N_TYPE): Ditto.
5978
5979         * expr.h (operatorT): Moved in from expr.c, added some values.
5980         (expressionS): Added X_op field, removed X_seg field; renamed
5981         X_subtract_symbol to X_op_symbol.
5982         * expr.c: Extensive changes to assign expression types rather than
5983         sections and to simplify the parsing.
5984         * write.c (fix_new_internal): New static function.
5985         (fix_new): Removed sub_symbol argument.
5986         (fix_new_exp): New function, takes expression argument.
5987         * write.h: Prototype changes for fix_new and fix_new_exp.
5988         * cond.c (s_if): Changed accordingly.
5989         * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
5990         parse_repeat_cons, get_segmented_expression,
5991         get_known_segmented_expression, get_absolute_expression): Ditto.
5992         * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
5993         Ditto.
5994         * write.c (write_object_file): Ditto.
5995         * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
5996         * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
5997         obj_coff_endef, yank_symbols): Ditto.
5998         * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
5999         * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
6000         print_insn, md_operand): Ditto.
6001         * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
6002         do_a_fix_imm, build_bytes): Ditto.
6003         * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
6004         get_specific, check, insert, md_convert_frag): Ditto.
6005         * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
6006         md_assemble, pa_ip, getExpression, getAbsoluteExpression,
6007         evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
6008         process_exit): Ditto.
6009         * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
6010         is_complex): Ditto.
6011         * config/tc-i386.c (pe, md_assemble, i386_operand,
6012         md_estimate_size_before_relax, md_create_long_jump): Ditto.
6013         * config/tc-i860.c (md_assemble, getExpression, print_insn):
6014         Ditto.
6015         * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
6016         get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
6017         i960_handle_align): Ditto.
6018         * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
6019         subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
6020         md_estimate_size_before_relax, md_create_long_jump, get_num):
6021         Ditto.
6022         * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
6023         md_create_short_jump, md_create_long_jump): Ditto.
6024         * config/tc-mips.c (md_assemble, append_insn, gp_reference,
6025         macro_build, macro, my_getExpression): Ditto.  Also removed
6026         get_optional_absolute_expression; just use get_absolute_expression
6027         instead.
6028         * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
6029         fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
6030         * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
6031         * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
6032         Ditto.
6033         * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
6034         print_insn): Ditto.
6035         * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
6036         tip_op, md_assemble): Ditto.
6037         * config/tc-vax.c (seg_of_operand, md_assemble,
6038         md_estimate_size_before_relax, md_create_long_jump): Ditto.
6039         * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
6040
6041 Tue Jul 20 12:17:16 1993  david d `zoo' zuhn  ([email protected])
6042
6043         * configure.in: i386-lynx is the same as i386-coff
6044
6045 Mon Jul 19 15:21:20 1993  Ken Raeburn  ([email protected])
6046
6047         * config/obj-elf.c (obj_elf_previous): New function.
6048         (previous_section, previous_subsection): New vars.
6049         (obj_elf_section): Save current place in case DWARF code wants us
6050         to pop back to it.  Handle unquoted section name as well as quoted
6051         section name.  Don't crash on invalid strings.
6052         (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
6053         "4byte".
6054
6055         * config/obj-elf.h: Don't include struc-symbol.h.
6056         (obj_elf_frob_symbol): Declare arg as struct symbol *.
6057
6058         * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
6059         "L" or "_.L_".
6060
6061         * write.c (write_relocs): New function, split off from
6062         write_contents.  Use memset instead of bzero.
6063         (write_object_file): Apply write_relocs to each section before
6064         applying write_contents.
6065
6066         * read.c (read_begin): Call obstack_begin with values closer to 1K
6067         multiples.
6068         (read_a_source_file, big_cons, float_cons): Use memcpy instead of
6069         bcopy.
6070
6071 Mon Jul 19 14:30:00 1993  Ian Lance Taylor  ([email protected])
6072
6073         * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
6074         calculating opP->isiz; this permits the expression size to be
6075         determined as well, later on.
6076
6077         * expr.c (clean_up_expression): Don't cancel the subtraction of
6078         undefined symbols.
6079
6080         * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
6081         switch to text section rather than data section.
6082
6083 Mon Jul 19 12:35:39 1993  Ken Raeburn  ([email protected])
6084
6085         * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
6086         expression (to take the pc-rel instruction itself into account)
6087         before using the expression, instead of after.
6088
6089 Fri Jul 16 08:56:04 1993  Ian Lance Taylor  ([email protected])
6090
6091         * read.c (float_cons): Simplified parsing logic.  If
6092         REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
6093
6094         * symbols.c (colon): Rather than a special case for TC_HPPA,
6095         use new macro tc_frob_label.
6096         * config/tc-hppa.h (tc_frob_label): Define.
6097
6098         * config/tc-mips.c: Many changes to support simple assembler
6099         optimization.
6100         (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
6101         prev_insn_valid, prev_insn_frag, prev_insn_where,
6102         prev_insn_fixp, prev_insn_is_delay_slot): New static
6103         variables.
6104         (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
6105         mips_align, s_stringer, s_mips_space): New static functions.
6106         (mips_define_label): New global function.
6107         (md_pseudo_table): For "ascii", "asciz", "asciiz", call
6108         s_stringer.  Changed argument to float_cons from 0 or 1 to 'f'
6109         or 'd'.  For "space" call s_mips_space.
6110         (md_begin): Call mips_no_prev_insn.
6111         (append_insn): Only insert necessary NOP instructions.
6112         (macro): Call mips_emit_delays before setting mips_noreorder.
6113         Increment and decrement mips_noreorder rather than using
6114         save_reorder_condition.  Don't bother to use noreorder in
6115         M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
6116         (md_atof): Handle floating point numbers correctly for both
6117         big and little endian targets.
6118         (s_align, s_cons): Call mips_align rather than frag_align.
6119         (s_change_seg, s_cons): Call mips_emit_delays.
6120         (s_float_cons): Let float_cons do the work.
6121         (s_mipsset): Call mips_emit_delays when setting noreorder.
6122         * config/tc-mips.h (tc_frob_label): Define to be
6123         mips_define_label.
6124
6125         * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
6126         ecoff_frob_files): Consistently use S_GET_VALUE rather than
6127         bfd_asymbol_value.  Warn if taking difference of symbols in
6128         different segments.
6129
6130 Thu Jul 15 11:51:03 1993  Ian Lance Taylor  ([email protected])
6131
6132         * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
6133         with a warning.
6134
6135         * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
6136         by md_pcrel_from if we are relocating against a symbol (we still
6137         need md_pcrel_from for a PC relative relocation within the same
6138         file).
6139         * config/tc-m88k.c (md_pcrel_from): Corrected return value.
6140         (omagic): Removed unused variable.
6141
6142         * Preliminary support for m88k-coff.
6143         * configure.in (m88k-*-coff*): New target.  Use coffbfd and
6144         m88kcoff.
6145         * config/m88kcoff.mt: New file.
6146         * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
6147         (pseudo_set): Handle difference of symbols in different fragments
6148         by saving the entire expression as the value of the symbol.
6149         * symbols.c (resolve_symbol_value): Resolve difference
6150         expressions.
6151         * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
6152         "sdef" as a synonym for "def".
6153         * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
6154         TARGET_FORMAT.
6155         (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
6156         * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
6157         m88k port up to date, and to add COFF support.
6158
6159 Wed Jul 14 15:09:32 1993  Ian Lance Taylor  ([email protected])
6160
6161         * Removed sy_forward and replaced it with an undefined expression
6162         as the value of a symbol.
6163         * struc-symbol.h (struct symbol): Removed sy_forward field.  Added
6164         sy_resolved and sy_resolving single bit fields.
6165         * symbols.c (symbol_new): Don't initialize sy_forward field.
6166         (resolve_symbol_value): New function to adjust symbol value by
6167         fragment address, using recursion to resolve forward symbols.
6168         * symbols.h: Added prototype for new function.
6169         * read.c (pseudo_set): Set symbolP->sy_value to an undefined
6170         expression rather than setting symbolP->sy_forward.
6171         * write.c (write_object_file): Use resolve_symbol_value on
6172         symbols, keeping the common case (the old behaviour) inline.
6173         * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
6174         handling (subsumed by write.c change).
6175         * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
6176         sy_value rather than sy_forward.
6177         * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
6178         expression segment rather than sy_forward.
6179         (yank_symbols): Use resolve_symbol_value.
6180         (crawl_symbols): Removed extra pass over symbols.
6181         * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
6182         config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
6183         symbols which handled sy_forward; use resolve_symbol_value
6184         instead.
6185         * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
6186         Define.
6187         * config/obj-elf.c (obj_elf_stab_generic): Check expression
6188         segment rather than sy_forward.
6189         * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
6190         sy_forward; do initialize sy_resolved and sy_resolving.
6191         * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
6192
6193         * Changes to keep a full expression as the value of a symbol, not
6194         just a longword:
6195         * struc-symbol.h: New field sy_value.
6196         * as.h: Include expr.h before struc-symbol.h.
6197         * expr.h: Use struct symbol rather than symbolS.
6198         * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
6199         of sy_value field; compile unconditionally, not just if
6200         BFD_ASSEMBLER.
6201         * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
6202         * write.c (write_object_file): Set BFD symbol value to gas symbol
6203         value.
6204         * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
6205         config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
6206         (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
6207         * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
6208         * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
6209         S_GET_VALUE rather than ost_entry.n_value.
6210         * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
6211         (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
6212         config/obj-coffbfd.c (symbol_to_chars): Get value to write out
6213         using S_GET_VALUE--don't assume it is already set.
6214         * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
6215         symbol value.
6216         * config/obj-vms.c (various): Don't assign directly to
6217         S_GET_VALUE; use S_SET_VALUE instead.
6218
6219 Wed Jul 14 09:35:23 1993  Doug Evans  ([email protected])
6220
6221         * configure.in: Make sparc64-*-aout* use bfd gas.
6222
6223         * configure.in: Recognize h8300h.
6224
6225 Tue Jul 13 12:09:44 1993  Steve Chamberlain  ([email protected])
6226
6227         * config/tc-h8500.c (line_comment_chars): Add hash.
6228         (parse_exp, skip_colonthing, build_bytes): Add support for
6229         R_H8500_HIGH16 relocation type.
6230
6231 Mon Jul 12 11:15:34 1993  Ken Raeburn  ([email protected])
6232
6233         * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
6234         attribute name.  Handle `execinstr' attribute.
6235
6236 Mon Jul 12 07:22:28 1993  Ian Lance Taylor  ([email protected])
6237
6238         * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
6239         there is another alternative for the instruction.
6240
6241 Fri Jul  9 17:31:34 1993  Roland H. Pesch  ([email protected])
6242
6243         * doc/as.texinfo: updates for H8/300H
6244
6245 Thu Jul  8 14:41:43 1993  Mark Eichin  ([email protected])
6246
6247         * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
6248         md_number_to_chars, md_section_align): Adjusted to use valueT,
6249         addressT, to match tc.h.
6250
6251 Thu Jul  8 14:15:05 1993  Ken Raeburn  ([email protected])
6252
6253         * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
6254         independent of format.
6255
6256 Thu Jul  8 07:25:25 1993  Doug Evans  ([email protected])
6257
6258         * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
6259
6260 Wed Jul  7 18:11:07 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
6261
6262         * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
6263         build; also recognize h8300-*-coff
6264
6265 Wed Jul  7 10:21:24 1993  Ian Lance Taylor  ([email protected])
6266
6267         * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
6268         core just because somebody uses a label before it is defined.
6269
6270         * config/mips-opcode.h: Moved to opcode/mips.h.
6271         * config/tc-mips.c: Include opcode/mips.h rather than
6272         mips-opcode.h.
6273         (append_insn): An extra NOP is only needed after instructions
6274         which set HI or LO, not after instructions which read it.
6275         (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
6276         (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
6277         * config/tc-mips.h (struct mips_opcode): Don't define.
6278         * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
6279         Set to $(srcdir)/../include/opcode/mips.h.
6280
6281         Get the MIPS assembler up to speed with other gas changes:
6282
6283         * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
6284         Removed; don't change the symbol value.
6285         (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
6286         bfd_asymbol_value rather than S_GET_VALUE to include section
6287         vma in symbol value.
6288         (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
6289         doesn't output them.  Set the vma of sections.
6290         * config/obj-ecoff.h: Don't define obj_frob_symbol.
6291         * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
6292         longer necessary.
6293         (various): use valueT rather than long.
6294
6295 Wed Jul  7 08:33:30 1993  Ken Raeburn  ([email protected])
6296
6297         * config/tc-sparc.h (ENV64): Define for v9.
6298
6299         * config/tc-sparc.c (s_xword): For numbers, call big_cons.
6300         (sparc_ip, md_apply_fix, tc_gen_reloc): Handle some sparc64
6301         relocation types.
6302         (md_number_to_chars): Handle 8-byte value.
6303
6304         * config/obj-elf.h (elf_symbol): For v9, use 64-bit symbol type.
6305
6306         * as.h (valueT): Typedef moved here.
6307         * struc-symbol.h (valueT): ...from here.
6308         * write.c (write_object_file): Locals from_addr, to_addr,
6309         table_addr are now addressT.  Supply prototype for bfd_alloc for
6310         now.
6311         (fixup_segment): Local add_number is now valueT.  Correct some
6312         range-checking bugs.
6313         (relax_align): Type `int' should be sufficient for the exponent.
6314         (fix_new): Argument offset is type offsetT.  Locals size and
6315         newsize are type valueT.
6316         * write.h (struct fix): Fields fx_offset and fx_addnumber are now
6317         type valueT.
6318         (fix_new): Fix prototype.
6319         * symbols.c (symbol_new): Symbol value is type valueT.
6320         (S_SET_VALUE, S_GET_VALUE): Likewise.
6321         (S_IS_*): Specify int return type explicitly.
6322         * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
6323         prototypes.
6324         * read.c (s_comm): Values read are type valueT.
6325         * expr.h (expressionS): Field X_add_number is an offsetT.
6326         * tc.h (md_create_long_jump, md_create_short_jump,
6327         md_section_align): Addresses are now type addressT.
6328         (md_number_to_chars, md_apply_fix): Pass value as valueT.
6329         * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
6330         md_number_to_chars, md_section_align): Adjusted.
6331         * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
6332         gcc shut up.
6333         (md_create_short_jump, md_create_long_jump, md_number_to_chars,
6334         md_section_align): Adjusted.
6335
6336         * config/tc-sparc.c (s_reserve): Permit use for other than a.out
6337         format.
6338         (s_common): Handle Solaris-2 version.
6339
6340         * config/ho-generic.h (free): Returns void if __STDC__.
6341
6342         * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
6343         elf_file_symbol): Declare.
6344
6345         * expr.c (floating_constant, integer_constant): Now return void.
6346
6347 Thu Jul  1 12:13:43 1993  Ian Lance Taylor  ([email protected])
6348
6349         * configure.in: Match on sparc*-fujitsu-none rather than
6350         sparclite*-fujitsu-none.
6351
6352 Wed Jun 30 11:12:02 1993  Ian Lance Taylor  ([email protected])
6353
6354         * read.c (cons): Conditionalize parsing of expression.  Move
6355         putting value into object file into separate function.  Separate
6356         out MRI and WANT_BITFIELDS cases into separate functions.
6357         (emit_expr): New function to write data into object file.
6358         Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
6359         processor types.
6360         (parse_bitfield_cons): New function to parse bitfield expressions
6361         as used by i960 assemblers.  Only compiled if
6362         BITFIELD_CONS_EXPRESSIONS is defined.
6363         (parse_mri_cons): New function to parse MRI style strings.  Only
6364         compiled if MRI is defined.
6365         (parse_repeat_cons): New function to parse repeat counts.  Only
6366         compiled if REPEAT_CONS_EXPRESSIONS is defined.
6367         * read.h (emit_expr): Added declaration of new function.
6368         * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
6369         * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
6370         * config/tc-hppa.c (parse_cons_expression_hppa): New function to
6371         parse a HPPA expression, rather than special case in cons
6372         function.
6373         (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
6374         than special case in emit_expr function.
6375         * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
6376         Define to use new functions from tc-hppa.c.
6377         * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
6378         (WANT_BITFIELDS): Removed; now obsolete.
6379         * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
6380         * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
6381         NS32K fixup, rather than special case in emit_expr function.
6382         * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
6383         cons_fix_new_ns32k.  Also use PARAMS rather than checking
6384         __STDC__.
6385         * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
6386
6387         * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
6388         Don't core dump if gas has no information about a section.
6389
6390 Wed Jun 30 06:21:27 1993  Ken Raeburn  ([email protected])
6391
6392         * config/tc-sparc.c (md_begin): If sparcv9 is defined, reset
6393         current_architecture to v9 automatically.
6394
6395         * config/tc-sparc.h (TARGET_FORMAT): Use elf64-sparc for v9.
6396
6397         * config/tc-sparc64.h, config/tc-sparc64.c: New files.
6398         * configure.in: Use sparc64 cpu files for v9, and default to elf
6399         format.
6400
6401         * write.c (relax_and_size_seg): Always fully process a section.
6402         Section size is last frag's (vm)address plus its size.  If no
6403         relocations are present, force SEC_RELOC flag clear.
6404         (dump_section_relocs): New debugging routine.
6405         (adjust_reloc_syms): New routine, broken out from write_contents.
6406         Don't adjust relocs that are already relative to section symbol.
6407         Look for obj_fix_adjustable macro to know what else to skip,
6408         instead of obj_write_symbol.  Look for section symbol stored in
6409         section information.
6410         (write_object_file): Map adjust_reloc_syms over all sections.
6411         (write_contents): Clear SEC_RELOC flag if no relocations are
6412         found.
6413
6414         * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
6415         keep it quiet.
6416
6417         * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
6418
6419 Fri Jun 25 14:42:53 1993  K. Richard Pixley  ([email protected])
6420
6421         * Makefile.in (all, dvi, info, install-info, clean-info): do not
6422           echo recursion lines.
6423           (install-info, clean-info): collapse into the dvi and info rule.
6424
6425 Fri Jun 25 10:47:24 1993  Doug Evans  ([email protected])
6426
6427         * config/tc-sparc.c (sparc_ip): Remove support for %d/%q fp regs.
6428         All fp regs are now specified as %f.
6429         (priv_reg_table): fpq -> fq.
6430
6431 Fri Jun 25 03:43:06 1993  Ken Raeburn  ([email protected])
6432
6433         * as.h (strstr): Disable declaration for now.
6434         (fprint_value, sprint_value): Declare.
6435
6436         * subsegs.c (subseg_new_rest): Use memset to clear new frag.
6437         (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
6438
6439         * expr.c (expr_part): Made sanity checks a.out-specific.
6440         (expr): Disabled sanity checks.
6441
6442         * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
6443         section symbol.
6444         * subsegs.c (subseg_change): Initialize section symbol pointer
6445         when setting up a new section.
6446
6447         * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
6448         field back at gas symbol structure.
6449
6450         * symbols.c (colon): Cast obstack_next_free value to char* before
6451         doing arithmetic on it.
6452         * subsegs.c (subseg_new_rest): Likewise.
6453         * as.h (frag_now_fix): Likewise.
6454
6455         * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
6456         calling bfd_make_section_old_way directly, and call subseg_set
6457         instead of subseg_change.  Now returns void.
6458         (obj_elf_write_symbol): Only check local symbols for now.
6459         (elf_stab_symbol): Now static and void, and disabled until it
6460         works completely.
6461         (obj_elf_size): For expression values, fail silently for now.
6462         (obj_symbol_new_hook): Do nothing.
6463
6464         * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
6465         relocation.
6466         (s_local) [OBJ_ELF]: New function.
6467         (md_pseudo_table) [OBJ_ELF]: Call it for "local".
6468         (s_common): Rearrange to handle Solaris .common pseudo, which may
6469         sometimes use bss space instead of common.
6470         * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
6471
6472 Thu Jun 24 16:33:53 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
6473
6474         * configure.in: set host config to hpux for hppa*-hp-hpux
6475
6476 Thu Jun 24 13:35:06 1993  Ken Raeburn  ([email protected])
6477
6478         * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
6479
6480 Tue Jun 22 01:04:23 1993  Ken Raeburn  ([email protected])
6481
6482         * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
6483         * config/obj-aout.c (s_sect): Do it here.
6484
6485         * as.h (BAD_CASE): Don't make some lame compilers think we want
6486         substitution inside strings.
6487
6488         * as.c (print_version_id): New function, split off from main.
6489         (main): Call it.
6490         * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
6491         for -V.  Ignore -Q and -s options for now.
6492
6493 Mon Jun 21 17:37:59 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
6494
6495         * Makefile.in: make installation & builds work again for crosses
6496
6497 Sun Jun 20 18:18:26 1993  Ken Raeburn  ([email protected])
6498
6499         * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
6500         symbol values correctly.
6501
6502         * write.c (write_object_file): Deleted unused variables.
6503         (fixup_segment): Use sprint_value.
6504
6505         * messages.c (sprint_value, fprint_value): New routines.
6506
6507         * config/obj-elf.c (elf_stab_symbol): Now returns void.
6508         (obj_elf_stab_generic): Fix typo in logic.
6509
6510         * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
6511
6512         * as.h (addressT, offsetT): New types, using BFD types if
6513         available.
6514         (relax_addressT, struct frag): Use them.
6515         * struc-symbol.h (valueT, struct broken_word): Likewise.
6516
6517         * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
6518         * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
6519
6520 Thu Jun 17 16:53:56 1993  david d `zoo' zuhn ([email protected])
6521
6522         * Makefile.in: canonicalize install.sh; for use within
6523         this directory (and subdirs)
6524
6525 Sun Jun 20 02:34:04 1993  Ashley Saulsbury ([email protected])
6526
6527         * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
6528         specified, should have both S1 and S2 fields identical
6529         If only finding the problem was as fast as fixing the bug !!!!
6530
6531 Tue Jun 15 16:01:57 1993  Ken Raeburn  ([email protected])
6532
6533         * write.c (write_contents): Do write out non-loadable sections.
6534         Debug sections can fall in this category.
6535
6536         * read.c (s_app_file): Call elf_file_symbol for ELF files.
6537         * config/obj-elf.c (elf_file_symbol): New function.
6538
6539         * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
6540         added argument to specify section base name.
6541         (obj_elf_stab_generic): Renamed from ..._stab.  New argument
6542         specifies section base name.
6543         (obj_elf_stab): New function, calls obj_elf_stab_generic with
6544         ".stab" as section base name.
6545         (obj_elf_xstab): New function, calls obj_elf_stab_generic.
6546         (obj_elf_type): Handle "object".  Use bitwise-or to merge in
6547         symbol flags rather than simply replacing, so global/local flags
6548         are preserved.
6549         (obj_elf_ident): Rewrite.
6550
6551 Tue Jun 15 17:03:25 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
6552
6553         * Makefile.in: remove parentdir support; use INSTALL_XFORM
6554
6555 Wed Jun  9 11:26:07 1993  Ian Lance Taylor  ([email protected])
6556
6557         * config/tc-i386.c (md_pseudo_table): .align uses a power of two
6558         for any a.out target, not just Linux and 386BSD.
6559         * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
6560         target.
6561
6562 Mon Jun  7 13:33:19 1993  Ken Raeburn  ([email protected])
6563
6564         * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h.  They
6565         don't exist or duplicate other inclusions.
6566
6567         * config/tc-vax.h (NO_RELOC): Define.
6568
6569 Mon Jun  7 09:55:03 1993  Doug Evans  ([email protected])
6570
6571         * config/tc-sparc.c (sparc_ip): Fix parsing of asi number.
6572         Fix error message.
6573
6574 Sat Jun  5 19:32:52 1993  Torbjorn Granlund  ([email protected])
6575
6576         * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
6577         * gas/config/tc-m88k.c (get_reg): New arg reg_prefix.  Compare first
6578         char to reg_prefix instead of to 'r'.
6579         (calcop): Change calls to get_reg.
6580         (calcop): Handle new case 'x' to set reg_prefix.
6581         (calcop): Set reg_prefix to 'r' after each call to get_reg.
6582         (cmpslot): Add 88110 conditions.
6583
6584         * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
6585
6586         * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
6587         before returning.
6588
6589         * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
6590         adjacent; mov.s and mov.d swapped.
6591         (m88k_opcodes): Fix typo `r2' -> `2'.
6592
6593 Fri Jun  4 15:59:31 1993  Steve Chamberlain  ([email protected])
6594
6595         * config/h8300.c: Support for H8/300-H opcodes.
6596
6597         * config/obj-coffbfd.c (w_strings): String table length is 4
6598         bytes, no matter what the host int size is.
6599
6600         * configure.in (alpha-*-osf*): New.
6601
6602 Fri Jun  4 07:51:18 1993  Ian Lance Taylor  ([email protected])
6603
6604         * configure.in (mips-*-ecoffl*): New target; use ecoff and
6605         mips-lit.
6606         (mips-*-ecoff*): Added trailing '*'.
6607
6608         * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
6609         first FDR in a file to be zero.
6610
6611 Thu Jun  3 14:09:59 1993  Ken Raeburn  ([email protected])
6612
6613         * Makefile.in (VERSION): Jump to 2.1.4.
6614
6615         * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
6616
6617         * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
6618         ECOFF format.
6619
6620 Tue Jun  1 15:21:57 1993  Ken Raeburn  ([email protected])
6621
6622         * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
6623         separate '851 mmu.
6624
6625         * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
6626         and routine names.  Assuming 32 bits for now.
6627
6628         * config/obj-elf.c (elf_frob_file): Look for macro
6629         elf_tc_final_processing_hook, instead of assuming a function
6630         always exists.
6631         * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
6632         tc_final_processing_hook.
6633         * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
6634
6635         * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
6636         moved here from obj-elf.h.
6637         * config/obj-elf.h: Don't include CPU-specific header files.
6638
6639 Sun May 30 16:49:37 1993  Peter Hoogenboom  ([email protected])
6640
6641         * configure.in: configurations should match on 'hppa*' not 'hppa'.
6642
6643         * read.c: Add support for HPPA assembly language syntax (denoted
6644         with '#ifdef TC_HPPA').
6645
6646         * symbols.c: Add support for HPPA assembly language syntax (denoted
6647         with '#ifdef TC_HPPA').
6648
6649         * write.c (write_contents):  Add support for HPPA-style
6650         relocations.
6651
6652         * config/obj-elf.c: Stab symbols weren't written properly.
6653         (obj_elf_version):
6654         (obj_elf_desc):
6655         (obj_elf_write_symbol):
6656         (obj_elf_write_symbol_p):
6657         (obj_elf_frob_symbol):
6658         (elf_stab_symbol):
6659         (elf_frob_file):
6660
6661         * config/tc-hppa.c: Support for HPPA symbol extension sections.
6662         Remove some unused code.  Support for HPPA assembly language
6663         syntax.
6664
6665         * app.c:
6666
6667         * symbols.c:
6668
6669         * config/obj-elf.h:
6670         (obj_write_symbol):
6671         (obj_frob_file):
6672         (elf_tc_symbol):
6673         (elf_tc_make_sections):
6674
6675         * config/tc-hppa.h:
6676
6677 Sun May 30 21:44:45 1993  Ken Raeburn  ([email protected])
6678
6679         * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
6680         hash_new will have succeeded if it returns.
6681         * config/tc-a29k.c (md_begin): Likewise.
6682
6683         * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
6684         const.
6685         (mode_from_disp_size, opcode_suffic_to_type): Now inline under
6686         gcc.
6687         (fits_in_{signed,unsigned}_{byte,word}): Likewise.
6688
6689         * expr.c: Delete register declarations; gcc ignores them anyways.
6690
6691 Fri May 28 19:03:32 1993  Ken Raeburn  ([email protected])
6692
6693         * hash.c (hash_new): Use xmalloc, since many callers don't check
6694         for failure.
6695
6696 Thu May 27 13:02:15 1993  Ken Raeburn  ([email protected])
6697
6698         * frags.c (zero_address_frag, bss_address_frag): These are
6699         external.
6700
6701         * tc.h (md_reloc_size): This is const.
6702         * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
6703         (md_reloc_size): Now const.
6704
6705         * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
6706         trailing commas.
6707         * as.h (enum _segT): Ditto.
6708
6709         * struc-symbol.h (N_TYPE_seg): This should be const.
6710
6711 Thu May 27 11:43:59 1993  Michael Meissner  ([email protected])
6712
6713         * config/obj-ecoff.c (add_file): Cast file_name to char * in
6714         listing_source_file call.
6715
6716         * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
6717         of subseg_new call to eliminate const attribute.
6718         (obj_elf_stab): Ditto.
6719         (obj_symbol_new_hook): Cast first argument of bzero call to char *.
6720
6721         * read.c (s_align_bytes): Properly record alignment.
6722
6723         * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
6724         for the prototype/no prototype macro.
6725
6726         * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
6727         void.
6728
6729         * as.h (relax_stateT enum): Delete trailing comma.
6730
6731 Thu May 27 11:07:50 1993  Ian Lance Taylor  ([email protected])
6732
6733         * app.c (do_scrub_begin): Let line_comment_chars override
6734         comment_chars.
6735         (do_scrub_next_char): If a line comment character is not at the
6736         start of a line, treat it as a comment character if it is one.
6737         For a CPP line comment use pseudo-op .appline rather than .line.
6738         * input-scrub.c (logical_input_line): Make int rather than
6739         unsigned.
6740         (input_scrub_push, input_scrub_begin): Initialize
6741         logical_input_line to -1 rather than 0.
6742         (bump_line_counters): Increment logical_input_line.
6743         (new_logical_line): If line_number is -2, decrement
6744         logical_input_line.
6745         (as_where): Use logical_input_line even if it is 0.
6746         * read.h (s_app_file prototype): Now takes an int argument.
6747         * read.c (potable): Make .appfile call s_app_file with 1.  New
6748         .appline pseudo-op calls s_app_line.
6749         (s_app_file): If .appfile, call new_logical_line with -2 to
6750         account for newline inserted by do_scrub_next_char.  If listing,
6751         call listing_source_file.
6752         (s_app_line): New function to handle fake pseudo-op .appline.
6753         * config/obj-coff.c (obj_pseudo_table): Make .appline call
6754         obj_coff_ln.
6755         (obj_coff_ln): Added argument to indicate whether .appline.
6756         * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
6757         obj_coff_ln.
6758         (obj_coff_ln): Added argument to indicate whether .appline.
6759         * config/tc-mips.c (s_file): Pass argument to s_app_file.
6760
6761 Tue May 25 11:59:07 1993  Ian Lance Taylor  ([email protected])
6762
6763         * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
6764
6765 Thu May 20 19:14:24 1993  Ken Raeburn  ([email protected])
6766
6767         * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
6768         invalid values.
6769
6770 Wed May 19 07:33:17 1993  Steve Chamberlain  ([email protected])
6771
6772         * config/tc-h5000.c (build_bytes): Understand @rd mode and build
6773         relocations correctly.
6774
6775 Mon May 17 15:06:26 1993  Ken Raeburn  ([email protected])
6776
6777         * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
6778         it's wrong.
6779
6780         * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
6781         if value is out of range.
6782
6783         Patch from Minh Tran-Le:
6784         * config/tc-i386.c (i386_operand): For in/out port register used
6785         as base reg, include InOutPortReg in operand type.
6786         (MATCH): Accept overlap value of InOutPortReg.
6787
6788 Mon May 17 09:29:34 1993  Ian Lance Taylor  ([email protected])
6789
6790         * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
6791         Add calls to listing routines to produce combined source/assembler
6792         listings.
6793         (obj_ecoff_stab): Create a file pointer if none used yet.
6794         (ecoff_frob_file): Set symcount to correct value.
6795
6796 Fri May 14 06:53:33 1993  Ken Raeburn  ([email protected])
6797
6798         * Makefile.in (VERSION): Bump to version 2.1, in preparation for
6799         release.
6800
6801         * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
6802         Define in terms of constants, not C structure sizes.
6803
6804         * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
6805
6806 Thu May 13 17:01:55 1993  Ken Raeburn  ([email protected])
6807
6808         * config/obj-aout.c (obj_header_append): Don't define if it's
6809         defined as a macro.
6810         * config/obj-hp300.h (obj_header_append): Define it as a macro.
6811         * config/obj-hp300.c (hp300_header_append): New function.
6812
6813         * Makefile.in (distclean): Don't bother cleaning up doc files;
6814         they aren't going to be in this directory.
6815
6816 Thu May 13 07:51:35 1993  Ian Lance Taylor  ([email protected])
6817
6818         * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
6819         symbols.
6820
6821         * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
6822         * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
6823
6824 Mon May 10 06:01:12 1993  Ken Raeburn  ([email protected])
6825
6826         * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
6827         initialization.
6828
6829         * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
6830
6831 Wed May  5 14:00:49 1993  Ian Lance Taylor  ([email protected])
6832
6833         * config/tc-mips.c (macro): Correct floating point double word
6834         loads and stores for big endian target.
6835
6836 Wed May  5 08:39:21 1993  Ken Raeburn  ([email protected])
6837
6838         * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
6839         calls.  Deleted some unused code.
6840         * config/obj-coff.c: Likewise.
6841
6842         ELF support, mostly contributed by Utah:
6843         * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
6844         obj_elf_type): Rewrite.
6845         (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
6846         obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
6847         New functions.
6848         (obj_elf_ident): Dummy.
6849         * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
6850         TARGET_SYMBOL_FIELDS): New macros.
6851         (gdb_section): New variable decl.
6852
6853         * config/tc-i386.c (md_atof): Return zero, not empty string, on
6854         success.
6855
6856         BFD_ASSEMBLER conditional changes:
6857         * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
6858         Don't define these.
6859         (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
6860         (fetch_coff_debug_section): Ditto.
6861         (obj_coff_endef): Call fetch_coff_debug_section.
6862         (struct line_no): New type.
6863         (c_symbol_merge): New way for copying aux fields.
6864         (c_dot_file_symbol): Put symbol in absolute section, and set flag
6865         BSF_DEBUGGING.
6866         (function_lineoff): New symbol.
6867         (function_lineoff, text_lineno_number, our_lineno_number,
6868         lineno_lastP): Don't define.
6869         (c_line_new): Don't define.
6870         (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
6871         placeholders, until
6872         line-number recording gets implemented.
6873         (obj_new_symbol_hook): New code for handling aux fields.
6874         (add_lineno, add_linesym): New functions.
6875         (obj_coff_ln): Call add_lineno, not c_line_new.
6876         (obj_coff_endef): New code for handling symbol names.  New lineno
6877         code.  Look for section name "*DEBUG*" for debugging section.
6878         (align, coff_check_file_symbols, obj_coff_section,
6879         coff_frob_file): New functions.
6880         * config/obj-coff.h: Reordered some includes.
6881         (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
6882         DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
6883         define these.
6884         (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
6885         (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
6886         aux entries.  Most SA_* macros now use it unconditionally.
6887         (S_*): Use `bsym' field, and access BFD private data.
6888         (SF_*): Use `sy_flags' symbol field for most of these.
6889         (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
6890         define.
6891         (*_section_header): Don't define.
6892         * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
6893         interface.
6894         (tc_gen_reloc) [I386COFF]: New function.
6895         (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
6896         * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
6897         macros.
6898
6899         * config/obj-coff.c (stack_init): Don't do assignments inside
6900         conditions.
6901         (obj_coff_def): Simplified handling of symbol name a bit.
6902         (tag_insert): Name argument is now pointer to CONST.
6903         (obj_crawl_symbol_chain): Commented out.
6904
6905         * config/obj-coff.h: Use PARAMS macro in prototypes.
6906
6907         * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
6908         through frchainP pointer if it is null.
6909
6910         * configure.in: Warn if BFD mode is explicitly turned off but is
6911         required by specified target.
6912         (mips ecoff targets): Don't need to set bfd_gas here; it gets
6913         taken care of later.
6914
6915         * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
6916         field.
6917         (yank_symbols): Merge symbols only if sy_forward is null.
6918
6919         * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
6920         defined.
6921
6922         * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
6923         pointer.
6924         * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
6925
6926         * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
6927         with "." is a local label.
6928
6929         * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
6930         files.
6931
6932         * config/te-linux.h, config/te-386bsd.h: New config files.
6933         * configure.in (i386-*-linux, i386-*-bsd): Use them.
6934         * config/tc-i386.h (TARGET_FORMAT): Select format based on target
6935         environment.
6936         (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
6937
6938 Wed May  5 13:14:01 1993  Ian Lance Taylor  ([email protected])
6939
6940         * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
6941         to want it that way.
6942         (ecoff_build_symbols): Turn local st_Proc symbols into
6943         st_StaticProc symbols.  Set index field of external st_Proc and
6944         st_staticProc symbols correctly.
6945         * config/tc-mips.h (NO_LISTING): Don't define.  People might want
6946         listings.
6947
6948 Tue May  4 21:22:54 1993  Ken Raeburn  ([email protected])
6949
6950         * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
6951         files.
6952         * configure.in (m68k-*-hpux): Use them.
6953
6954         * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
6955         defined, otherwise zero.
6956
6957         * config/aout_gnu.h (OMAGIC): Don't define if already defined.
6958
6959 Mon May  3 15:59:32 1993  Steve Chamberlain  ([email protected])
6960
6961         * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
6962         address space number.
6963
6964 Wed Apr 28 19:11:22 1993  Ken Raeburn  ([email protected])
6965
6966         * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
6967
6968         * config/tc-a29k.c: Include ctype.h.
6969         (define_some_regs): Added special-purpose registers for 29050.
6970
6971         * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
6972
6973         * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
6974         (change_to_section): Set it here instead.
6975
6976 Wed Apr 28 13:40:29 1993  Ian Lance Taylor  ([email protected])
6977
6978         * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
6979         hasn't been seen yet.
6980         (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
6981
6982 Mon Apr 26 18:29:05 1993  Steve Chamberlain  ([email protected])
6983
6984         * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
6985         SH.
6986
6987 Mon Apr 26 12:28:27 1993  Ian Lance Taylor  ([email protected])
6988
6989         * expr.c (operand): Fix unary plus operator (previously was the
6990         same as '~' operator!).
6991
6992 Wed Apr 21 00:20:11 1993  Ken Raeburn  ([email protected])
6993
6994         * write.c (cvt_frag_to_fill): Define even if BFD is defined.
6995         (write_object_file): Do define if BFD_ASSEMBLER.  Invoke
6996         obj_check_file_symbols if defined.  Call verify_symbol_chain_2
6997         instead of open-coding it.  Fix some bugs in patching up symbol
6998         chain.
6999         (relax_segment): Make some code we "ought to be able to" use for
7000         all targets no longer conditionalized on ns32k target; instead, do
7001         it always, and if the appropriate conditions fail, abort.
7002
7003         * symbols.c (DEBUG): Enabled.
7004         (symbol_new): Make sure bfd_make_empty_symbol works.
7005         (verify_symbol_chain_2): New funcion; takes one symbol as
7006         argument, anywhere in the chain.
7007         (dollar_label*): Use default initializers.
7008
7009         * as.c (perform_an_assembly_pass): Call md_begin here...
7010         (main): ...and not here.
7011
7012         * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
7013         (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
7014
7015         * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
7016         (add_fix, add_frag): Now functions instead of macros.
7017         (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
7018         s_data1, s_data2, s_bss): Use new *_section names, for
7019         compatibility with BFD_ASSEMBLER mode; rewrite switch statements
7020         to handle non-integral segT.
7021         (tc_coff_fix2rtype, tc_aout_fix_to_chars,
7022         tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
7023         (tc_gen_reloc): New routine for BFD_ASSEMBLER.
7024         (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
7025         md_apply_fix_2; new md_apply_fix definition varies interface
7026         depending on BFD_ASSEMBLER.
7027         (md_convert_frag, md_convert_frag_1): Likewise.  Use new *_section
7028         names.
7029
7030         * config/obj-vms.c: Include config.h.
7031         (version_string): Delete declaration.
7032         (Write_VMS_MHD_Records): Use GAS_VERSION instead.
7033         (vms_resolve_symbol_redef): New function, taken from VMS code in
7034         symbols.c.
7035         (_doprnt): Deleted.
7036         (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
7037         VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
7038         VMS_Psect_Spec): Fixed to compiler under traditional C.
7039         * config/obj-vms.h: Use PARAMS macro.
7040         (vms_resolve_symbol_redef): Declare.
7041         (RESOLVE_SYMBOL_REDEFINITION): New macro.
7042         * symbols.c (colon): Remove some VMS-specific code, look for
7043         RESOLVE_SYMBOL_REDEFINITION macro instead.
7044
7045         * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
7046         instructions.
7047
7048         * config/tc-i386.c: Reordered some functions so inlining might
7049         work.  Use PARAMS in function declarations.
7050         (reloc): New routine.
7051         (md_assemble): Rearrange switch statements to work with
7052         non-integral segT.
7053
7054         * struc-symbol.h [BFD_ASSEMBLER]: Undefine
7055         SYMBOLS_NEED_BACKPOINTERS before defining it.
7056
7057         * subsegs.c (subseg_new_rest): Now static.
7058
7059         * read.c (pseudo_set): Better error message for difference of
7060         symbols in different frags.
7061
7062         * Makefile.in (check): Pass down some new variables, indicating
7063         pathname or program name for cc, nm, objdump.
7064
7065         * as.h (OUTPUT_FLAVOR): New macro.
7066         * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
7067
7068         * configure.in: Initialize bfd_gas properly.  Warn that ELF
7069         support is incomplete.
7070
7071 Thu Apr 15 22:39:05 1993  Ken Raeburn  ([email protected])
7072
7073         * read.c (float_cons): Accept null pointer return from md_atof.
7074         * config/tc-m68k.c (md_atof): Return null for success.
7075         * config/tc-sparc.c (md_atof): Ditto.
7076
7077 Thu Apr 15 16:04:39 1993  Roland H. Pesch  ([email protected])
7078
7079         * doc/as.texinfo: formatting and comment cleanups; show SPARC
7080         alternative options in same style as other machines; simplify some
7081         conditional use; include GPL as separate file (from texinfo dir)
7082
7083         * doc/Makefile.in: (as.info) include directory containing GPL in
7084         makeinfo search path
7085
7086         * doc/h8.texi: new file; conditional settings for GAS manual
7087         on Hitachi chips
7088
7089 Tue Apr 13 15:31:40 1993  Roland H. Pesch  ([email protected])
7090
7091         * doc/as.texinfo: mention SPARC architecture options.
7092
7093 Fri Apr  9 17:43:11 1993  Ken Raeburn  ([email protected])
7094
7095         * configure.in: Rearranged whitespace in per-host/per-target
7096         sections.  Added hooks for dropping in HPPA support (not included
7097         yet).  Separate out overrides of variables based on target format
7098         and bfd-gas selection from actual target-specific commands.  Add
7099         error message for recognized but unsupported format name.
7100
7101 Fri Apr  9 09:05:47 1993  Ian Lance Taylor  ([email protected])
7102
7103         * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
7104         symbolic header match cline in FDR; the native linker seems to
7105         want that.
7106
7107 Thu Apr  8 15:51:28 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
7108
7109         * doc/Makefile.in: as.texinfo is in $(srcdir).  Use
7110         $(srcdir)/as.texinfo explicitly in several places
7111
7112 Thu Apr  8 15:15:02 1993  Roland H. Pesch  ([email protected])
7113
7114         * doc/Makefile.in: update dvi, clean targets for new source
7115                            file structure
7116
7117 Thu Apr  8 12:52:46 1993  Ian Lance Taylor  ([email protected])
7118
7119         * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
7120         rather than undefining know.
7121         * configure.in: Match ultrix*, not just ultrix.
7122
7123 Wed Apr  7 20:18:10 1993  Roland H. Pesch  ([email protected])
7124
7125         * doc/as.texinfo: converted conditional markup to use new
7126         Texinfo facilities, avoiding m4.
7127
7128         * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
7129
7130         * doc/Makefile.in: recast doc configuration to use a link to an
7131         included texinfo file.
7132
7133         * doc/all.texi: settings for generic form of documentation.
7134
7135 Tue Apr  6 11:56:21 1993  Ian Lance Taylor  ([email protected])
7136
7137         * read.c (cons): Zero out frag when creating reloc.
7138
7139 Mon Apr  5 09:41:58 1993  Ian Lance Taylor  ([email protected])
7140
7141         * config/tc-mips.c (gp_reference): Certain magic symbols can never
7142         be referenced off the GP register.
7143
7144         * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
7145         when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
7146         LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
7147
7148         * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
7149         definition from other MIPS targets.
7150         * configure.in (mips-*-irix): Use emulation irix.
7151
7152 Sun Apr  4 15:21:09 1993  Steve Chamberlain  ([email protected])
7153
7154         * config/tc-h8500.c: Get relax size of branch instructions right,
7155         (get_operand): Parse @sp+ correctly.
7156
7157 Fri Apr  2 15:59:49 1993  Ken Raeburn  ([email protected])
7158
7159         * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
7160         COFF section header field.
7161
7162         * configure.in: Print error message if host or target is not
7163         supported.
7164
7165         * configure.in: If with-bfd-assembler, use obj-coff instead of
7166         obj-coffbfd.
7167
7168         * config/ho-generic.h: Include string.h.
7169
7170 Fri Apr  2 08:54:57 1993  Ian Lance Taylor  ([email protected])
7171
7172         * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
7173         '$' as local, for any object file format.
7174
7175         * config/tc-mips.c (macro): Optimizations to branching code and a
7176         couple of bug fixes from [email protected] (Ralph
7177         Campbell).
7178
7179         * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
7180         * configure.in (mips-sgi-irix*): Set gas_host to irix.
7181
7182 Wed Mar 31 17:53:54 1993  Ian Lance Taylor  ([email protected])
7183
7184         * subsegs.c (subseg_new): Set output_section of new section.
7185         * as.c (perform_an_assemly_pass): Don't set output_section here.
7186         * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
7187         since it has additional sections.
7188         * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
7189         not bss_section.
7190         * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
7191         ecoff_undefined field.
7192         * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
7193         ecoff_undefined field.
7194         (add_file): If using stabs, just output a stabs symbol rather than
7195         creating a new fdr.
7196         (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
7197         it with get_absolute_expression, rather than skipping it by hand.
7198         (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
7199         than ECOFF line number information.
7200         (obj_ecoff_stab): Accept non-zero values for stabs line number.
7201         (ecoff_build_symbols): Set ifilesym correctly.  Set storage class
7202         to small, undefined and/or readonly sections if appropriate.
7203         Don't output symbol names containing \001 characters.
7204         (ecoff_frob_file): Make sure at least one fdr is output.
7205         * config/tc-mips.h: Define TC_MIPS.
7206         * config/tc-mips.c (g_switch_value): New static variable.
7207         (md_assemble): Set gp size of output BFD.
7208         (gp_reference): New function; returns 1 if expression can be
7209         accesssed via gp.  Always returns 0 if not using ECOFF.
7210         (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
7211         possible.
7212         (macro): Generate sequences using gp if possible.
7213         (md_parse_option): Ignore -EL and -EB.  Parse -G.
7214         (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
7215         (s_change_sec): Handle .rdata and .sdata for ECOFF.
7216         (s_extern): Mark symbol as external.  Set ecoff_undefined field.
7217
7218 Tue Mar 30 10:11:41 1993  Ken Raeburn  ([email protected])
7219
7220         * output-file.c (output_file_create): Don't call as_perror for
7221         filename rejected by application.
7222
7223         * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
7224         the output file.
7225
7226         * doc/as.texinfo: Don't use @value in node names for the moment;
7227         references don't appear to work right.
7228
7229         * as.h (const, volatile): Put these definitions back, and use
7230         them.
7231
7232         * doc/as.texinfo: First pass at using new texinfo features --
7233         variables, conditional tests.  Far from complete.
7234
7235 Mon Mar 29 16:05:40 1993  Ken Raeburn  ([email protected])
7236
7237         * read.c: Temporary hack to handle some 64-bit constants.  This
7238         should be redone later.
7239         (target_big_endian): Declare.
7240         (big_cons): If it's set, reverse order of bytes being copied.
7241         * config/tc-sparc.c (md_begin): Set target_big_endian.
7242
7243         * read.c (s_ignore): Delete declaration of is_end_of_line.
7244
7245         * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
7246         forward pointers properly.
7247
7248 Mon Mar 29 13:47:33 1993  Steve Chamberlain  ([email protected])
7249
7250         * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
7251         wasn't being stored into scnhdr.
7252         * config/obj-coffbfd.h: Add prototype of s_get_segment.
7253         * read.c (TC_START_LABEL): Default definition.
7254         (read_a_source_file): Use TC_START_LABEL macro to work out
7255         if a label has been seen.
7256
7257 Mon Mar 29 12:56:56 1993  Ian Lance Taylor  ([email protected])
7258
7259         * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
7260         the bottom (make expands variables in dependencies when the
7261         dependencies are read, not when they are used).
7262
7263         * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
7264         a29k .bss section; the mondfe program doesn't like it.
7265
7266 Sun Mar 28 08:12:53 1993  Ken Raeburn  ([email protected])
7267
7268         * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
7269         const.
7270         (current_architecture): Don't need initializer.
7271
7272 Fri Mar 26 08:12:48 1993  Ken Raeburn  ([email protected])
7273
7274         * doc/none.m4: Define Z8000.
7275         * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir).  Remove the
7276         texinfo file before recreating it.
7277         (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
7278         this directory.
7279         (srcdir): Delete second, bogus definition.
7280         (as.info): Look for as-*.texinfo in current directory rather than
7281         in $(srcdir).
7282         (as.dvi): Ditto.
7283         (dvi): New rule.
7284         * doc/configure.in: Create links to all as-*.texinfo files in the
7285         source directory, if that's not the current directory.
7286
7287         * configure.in (per-host):  Accept MIPS host with BSD version
7288         number.
7289         (per-target): Classify i486 as i386.  Use generic cpu_type instead
7290         of target_cpu in selecting format etc.
7291
7292         * app.c (do_scrub_next_char): Use .appfile, not .app-file.
7293         * read.c (potable): Change .app-file to .appfile.
7294
7295         * config/ho-decstatn.h: Renamed from ho-decstation.h.
7296         * configure.in: Adjusted.
7297
7298         * config/obj-bfd-sunos.*: Unused; deleted.
7299
7300         * Makefile.in (version.c, vers-stamp): Deleted.
7301         (config.h): Define GAS_VERSION.
7302         * as.c (version_string): Deleted declaration.
7303         (main): Look for GAS_VERSION instead.
7304
7305         * doc/as.texinfo: Updated description of -a* (listing) options,
7306         and describe how to pass them through from gcc.
7307
7308         * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
7309         process relocs if there aren't any relocs to process.  Avoids
7310         malloc/free bug on SCO too.
7311
7312         * as.h: Move local include files below system include files, to
7313         avoid some redefinition complaints on some systems.
7314         (const, volatile): Don't need these conditionally defined if we
7315         use CONST and VOLATILE from ansidecl.h.
7316         (seg_name): Use CONST, not const.
7317
7318 Fri Mar 26 10:22:04 1993  Ian Lance Taylor  ([email protected])
7319
7320         * config/tc-mips.c: Reindented to GNU standards.
7321
7322 Thu Mar 25 08:59:14 1993  Ian Lance Taylor  ([email protected])
7323
7324         * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
7325         (fixup_segment): Add a29k special case; the linker is not prepared
7326         to see a segment offset here.
7327
7328         * app.c (do_scrub_next_char): Added new state, 10, modifying state
7329         9 to only keep a space in between identifier characters.
7330
7331 Wed Mar 24 02:16:22 1993  david d `zoo' zuhn  (zoo at poseidon.cygnus.com)
7332
7333         * Makefile.in: add dvi target; as-$(config).texinfo might live in
7334         srcdir, might be in objdir.
7335
7336         * doc/Makefile.in: dvi depends on as.dvi
7337
7338 Mon Mar 22 23:59:13 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
7339
7340         * Makefile.in: add installcheck target
7341
7342 Mon Mar 22 16:25:57 1993  Jim Wilson  ([email protected])
7343
7344         * config/tc-sparc.c (sparc_ip): Add support for membar mask names.
7345         Add missing colons in prefetch error messages.  Add support for
7346         ASI names.
7347
7348 Mon Mar 22 10:19:00 1993  Ian Lance Taylor  ([email protected])
7349
7350         * config/tc-mips.c (macro): Use $AT for any floating point load.
7351
7352 Sat Mar 20 12:50:51 1993  Ken Raeburn  ([email protected])
7353
7354         * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
7355         bignums, but don't emit error message.
7356
7357 Fri Mar 19 21:02:19 1993  Jim Wilson  ([email protected])
7358
7359         * Makefile.in (targ-cpu.o): Depend on config.h.
7360
7361 Wed Mar 17 16:44:06 1993  Ian Lance Taylor  ([email protected])
7362
7363         * app.c (do_scrub_next_char): Added new state, 9, to avoid
7364         dropping a space immediately following an identifier.
7365         * expr.c, write.c: Rewrote assert expressions to not use multiple
7366         lines; I don't think that can be done portably.
7367         * config/tc-mips.c (macro): Use $AT if target register is zero in
7368         load instruction, which it can be for a floating point load.
7369
7370 Mon Mar 15 12:17:28 1993  Ian Lance Taylor  ([email protected])
7371
7372         * write.c (write_contents): Compute the relocs before writing out
7373         the section contents.
7374         * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
7375         symbol table and values right.
7376         * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
7377         with $L is local.
7378         * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
7379         by the section vma.
7380
7381         * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
7382         z8k-opc.h, not z8k.h.
7383
7384         * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
7385         symbol.
7386
7387 Fri Mar 12 18:33:36 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
7388
7389         * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
7390
7391 Fri Mar 12 12:00:07 1993  Ian Lance Taylor  ([email protected])
7392
7393         * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
7394         to be on a single line.
7395
7396 Thu Mar 11 17:56:22 1993  Ken Raeburn  ([email protected])
7397
7398         * Makefile.in (config.h): Create file, writing out definitions of
7399         target cpu, alias, and canonical name.
7400         (ALL_CFLAGS): No longer define TARGET_CPU.
7401
7402         * Makefile.in (check): Print a message, instead of quitting
7403         silently.
7404
7405         * as.c (main): Don't catch any signals, for now.
7406
7407         * version.c: Deleted.
7408         * Makefile.in: Generate it, putting in only the version number
7409         itself.
7410         (VERSION): New variable.
7411         * as.c: Include config.h.
7412         (main): Reformatted version string.  Include target alias.  Don't
7413         print if not requested (i.e., unknown -v argument).
7414
7415         * as.c (stralloc): Deleted.
7416         (main): Call strdup instead.
7417
7418         * configure.in: Handle all 68300 series chips.
7419         * config/tc-m68k.c: Include config.h.
7420         (md_assemble): Assume TARGET_CPU is defined.  Accept some 68300
7421         series cpus as defaults.
7422         (md_parse_option): Accept some m68300 series CPUs as defaults.
7423
7424 Wed Mar 10 17:41:16 1993  Ken Raeburn  ([email protected])
7425
7426         * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
7427         not already defined.
7428         (main, got_sig): Use them.
7429         * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
7430         values.
7431
7432 Tue Mar  9 07:40:06 1993  Ian Lance Taylor  ([email protected])
7433
7434         * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
7435         support.
7436
7437         * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
7438         OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
7439         (struct loc, struct proc, struct file): Moved to tc-mips.c within
7440         #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
7441         * config/tc-mips.c: Rearranged for ECOFF support.  Added
7442         prototypes for all static functions.  Moved existing minimal
7443         debugging format support info #ifndef OBJ_ECOFF blocks.
7444         (macro_build_lui): Eliminated sign_extend argument, because ECOFF
7445         does not support a non sign extended high 16 bits reloc.  Adjusted
7446         all callers accordingly.
7447         (tc_get_register): Renamed from get_register, and made non-static.
7448
7449         * config/mips-big.mt, config/mips-lit.mt: New files.  Define
7450         TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
7451         respectively.
7452         * configure.in (mips-*-bsd*): Use gas_target mips-lit.
7453         (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
7454         obj_format ecoff and gas_target mips-lit or mips-big.
7455
7456 Tue Mar  9 07:43:01 1993  Ken Raeburn  ([email protected])
7457
7458         * version.c: Bump to version 2.0.1.
7459
7460 Tue Mar  9 07:40:06 1993  Ian Lance Taylor  ([email protected])
7461
7462         * write.c (chain_frchains_together): Check that seg_info (section)
7463         is not NULL.
7464         (write_object_file): Call obj_frob_file after setting the symbols,
7465         not before.
7466
7467 Tue Mar  9 00:00:00 1993  Ken Raeburn  ([email protected])
7468
7469         * Version 2.0 released.
7470
7471 Mon Mar  8 14:57:10 1993  Ken Raeburn  ([email protected])
7472
7473         * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
7474
7475 Fri Mar  5 09:05:55 1993  Ian Lance Taylor  ([email protected])
7476
7477         * read.h: Define stringer here.
7478         read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
7479         places.
7480
7481 Thu Mar  4 11:52:23 1993  Steve Chamberlain  ([email protected])
7482
7483         * read.c (s_space): Multiply repeat count by mult, not fill.
7484
7485 Thu Mar  4 05:20:42 1993  Ken Raeburn  ([email protected])
7486
7487         * read.c: Include ctype.h.
7488
7489 Wed Mar  3 10:41:46 1993  Ken Raeburn  ([email protected])
7490
7491         Patches from Eric Youngdale:
7492         * make-gas.com: Find obstack.obj if it's not in the current
7493         directory.
7494         * read.c (s_ignore): Don't declare is_end_of_line.  It's
7495         redundant, and triggers a VMS gcc compiler bug.
7496
7497         * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
7498         current segment as an argument.  (Ignored in all cases but VMS.)
7499         All callers and definitions changed.
7500
7501 Tue Mar  2 11:56:19 1993  Ian Lance Taylor  ([email protected])
7502
7503         * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
7504         case compile again.
7505
7506 Tue Mar  2 08:53:34 1993  Ken Raeburn  ([email protected])
7507
7508         * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
7509         so "~0x80" won't be rejected.
7510
7511         * config/obj-elf.c: No longer include elf/reloc.h.
7512         (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
7513         (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
7514         routines.
7515         (obj_elf_xstab): New routine.
7516         (obj_elf_set_size): Call as_warn, not fprintf.  Pass desired
7517         argument to s_ignore.  Put "#if 0" around unused code.
7518         (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
7519         Call elf_xstabs for .stabs and .xstabs operators.
7520
7521         * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
7522
7523         * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
7524         present.
7525
7526         * configure.in: mips-bsd configuration was missing format spec.
7527         Should use aout.
7528
7529         * Makefile.in (Makefile): Depends on configure.in.
7530
7531         * config/tc-mips.c (append_insn): Don't check for alignment of
7532         frag in memory; alignment of instructions in section is a separate
7533         matter.
7534
7535         * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
7536         C availability.
7537
7538         * listing.h: Always provide function declarations, not macros, so
7539         pcc won't lose.
7540
7541 Tue Mar  2 00:50:43 1993  John Gilmore  ([email protected])
7542
7543         * CONTRIBUTORS:  Update Gilmore entry.
7544
7545 Mon Mar  1 12:03:16 1993  Jim Wilson  ([email protected])
7546
7547         * config/tc-sparc.c (sparc_ip):  Correctly assemble prefetch
7548         instructions.  Accept integer prefetch function numbers.
7549
7550 Wed Feb 24 14:58:19 1993  Ken Raeburn  ([email protected])
7551
7552         * config/tc-sparc.c (s_xword): Now call big_cons, so large
7553         constants are accepted, but symbolic values are not.  GCC will not
7554         generate the latter currently.
7555
7556         * frags.c (frag_init): New function.
7557         (zero_address_frag, bss_address_frag): Now initialized at run
7558         time.
7559         * as.c (main): Call frag_init.
7560
7561 Wed Feb 24 10:32:42 1993  Ian Lance Taylor  ([email protected])
7562
7563         * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
7564         Don't unget ch2 if we didn't get it.
7565
7566 Wed Feb 24 04:14:07 1993  Ken Raeburn  ([email protected])
7567
7568         * doc/Makefile.in (TEXIDIR): Updated for new layout.
7569
7570         * config/tc-sparc.c (s_common): Add support for ELF version.
7571         (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
7572         * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
7573         New macros.
7574         (md_convert_frag): New macro.
7575
7576         * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
7577         symbol, fix the offset so "+2" isn't required.
7578
7579         * config/tc-i960.c (line_comment_chars, line_separator_chars):
7580         Define as common/bss.
7581         (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
7582         initializers are sufficient.
7583
7584         * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
7585         (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
7586         (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
7587         (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
7588         * config/obj-aout.c: Use PARAMS macro for declarations.  Remove
7589         "IGNORE_DEBUG" conditional, since both branches are identical.
7590         Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
7591         referencing symbol structure members.
7592         (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
7593
7594         * as.h (struct frag): Reordered a couple of fields for better
7595         packing.
7596
7597         * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
7598         section info.
7599         (write_contents) [BFD_ASSEMBLER]: New function.
7600         (write_object_file) [BFD_ASSEMBLER]: Always handle -R here.  Call
7601         fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC.  Call
7602         obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
7603         (fixup_segment): Make sure common-section symbols get treated the
7604         same as undefined symbols.
7605         (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
7606         bfd_reloc_code_real_type.  Use seg_fix_{root,tail}P derived from
7607         section info.
7608         * write.h (fix_new): Update prototype.
7609
7610         * tc.h (md_operand, md_convert_frag, tc_headers_hook,
7611         md_section_align, md_undefined_symbol): Don't provide prototypes
7612         if these are defined as macros.
7613         (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
7614         section passed.
7615
7616         * symbols.c (symbol_new): Argument NAME is now pointer to const.
7617         Simplified STRIP_UNDERSCORE code.  Remove assumptions about null
7618         pointers in freshly allocated storage.  [BFD_ASSEMBLER]: Get new
7619         BFD symbol.
7620         (colon): Display other/desc fields of redefined symbol only if
7621         S_GET_OTHER and S_GET_DESC are defined.
7622         (symbol_make): Argument NAME is now pointer to const.
7623         (symbol_find, symbol_find_base): Likewise.
7624         (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
7625         * symbols.h: Fix prototypes for new const arguments.  Add
7626         prototypes for BFD_ASSEMBLER S_* functions.
7627
7628         * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
7629         for changing to an existing section.
7630         (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
7631         called by subseg_new and subseg_set.
7632         (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
7633         given section name and subseg number.
7634         (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
7635         new section/subsection.
7636
7637         * read.c: Don't include ctype.h.
7638         (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
7639         for now; should be machine-dependent.
7640
7641         * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
7642         targets, forcing BFD use.
7643
7644 Wed Feb 17 18:59:03 1993  Ken Raeburn  ([email protected])
7645
7646         * config/tc-sparc.c: Use PARAMS macro for static function
7647         declarations.  Use BFD_RELOC_ macros everywhere, with
7648         compatibility macros declared for non-BFD mode.
7649         (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
7650         instead of enum reloc_type.
7651         (emit_sparc_reloc): Commented-out function deleted.
7652         (md_convert_frag): Deleted.
7653         (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
7654         (md_apply_fix): Changed calling sequence (conditionally) for BFD
7655         version.
7656         * config/tc-sparc.h (md_convert_frag): New macro.
7657
7658         * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
7659         not SEG_UNKNOWN.  Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
7660         of referencing fields directly.
7661
7662         * write.c (cvt_frag_to_fill): New function; extracted from
7663         write_object_file.
7664         (write_object_file) [! BFD_ASSEMBLER]: Call it.
7665         (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
7666         and set its size and flags.
7667
7668         * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
7669         fields with BFD equivalents.  Turn on back-pointers, and add
7670         target-specific fields at end.
7671
7672 Thu Feb 11 09:20:37 1993  Ian Lance Taylor  ([email protected])
7673
7674         * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
7675         (write_object_file): Set it here instead, so that fixup_segment
7676         can see the correct value.
7677
7678 Mon Feb  8 13:56:17 1993  Ken Raeburn  ([email protected])
7679
7680         * write.c (write_object_file): Check for errors and warnings and
7681         bail out before processing contents.
7682         (chain_frchains_together_1): New function, does most of the work
7683         of remove_subsegs.
7684         (chain_frchains_together) [BFD_ASSEMBLER]: New function.
7685         (remove_subsegs) [! BFD]: Call it.
7686         (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
7687         structures and routines.
7688
7689         * config/obj-elf.*: New files.
7690
7691         * config/mips.mt, config/rs6000.mt: Deleted.
7692
7693         * config/h8300.mt: Don't specify compiler here.
7694
7695         * config/z8k.mt: The z8k code depends on the z8k opcode table,
7696         not the h8300 one.
7697         * config/tc-z8k.h: Comment fix.
7698
7699         * write.c: Reordered some functions for better inlining.
7700         (fixup_segment): Linkrelax code is no longer conditional on
7701         TC_I960.
7702
7703 Thu Feb  4 12:45:16 1993  Steve Chamberlain  ([email protected])
7704
7705         * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
7706         obj-coffbfd.h}: support for the H8/500
7707
7708 Wed Feb  3 19:28:18 1993  Ken Raeburn  ([email protected])
7709
7710         * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
7711         * write.c (write_object_file): Not here.
7712         (fix_new): Initialize fx_addnumber.
7713
7714         * listing.c: Don't include target-cpu.h explicitly, since as.h
7715         includes it.
7716
7717 Thu Jan 28 00:35:40 1993  Ken Raeburn  ([email protected])
7718
7719         * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
7720         *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
7721         (struct fix): Reordered fields for compactness and efficiency.
7722         Converted some logical fields to 1-bit fields.
7723
7724         * config/obj-aout.h: Use PARAMS.
7725         [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
7726         N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
7727
7728         * read.c: Don't include listing.h; as.h includes it.  Removed
7729         DONTDEF code.
7730         [BFD_ASSEMBLER]: Include subsegs.h.
7731         (old_buffer, new_broken_words): Default initialization is
7732         sufficient.
7733
7734         * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
7735         to 0, define stdoutput.
7736         (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
7737         Call bfd_set_arch_mach.
7738         (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
7739         bfd_close_all_done.  Call bfd_perror on failure.
7740         (output_file_append) [BFD_ASSEMBLER]: Don't define.
7741
7742         * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
7743
7744         * subsegs.h (segment_info_type): Always define.  Omit field scnhdr
7745         if not MANY_SEGMENTS.  Define new field bfd_section if
7746         BFD_ASSEMBLER.
7747         (seg_info): New macro.
7748
7749         * expr.c, input-scrub.c: Use PARAMS macro.  Deleted unused
7750         variables, and some irrelevant comments.
7751
7752         * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
7753         (LIBS): Include $(BFDLIB).  Don't bother with $(CLIB).
7754         * configure.in:  Permit --with-bfd-assembler now, with a warning.
7755         Variable need_bfd is now a boolean, as is new variable bfd_gas.
7756         Set BFDDEF and BFDLIB in Makefile when appropriate.
7757
7758         * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
7759         (main): Refer to flag_always_generate_output instead of
7760         flagseen['Z'].
7761
7762         * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
7763         (*_section) [BFD_ASSEMBLER]: Define them.
7764         (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
7765         set section flags when appropriate.
7766         * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
7767         section is not absolute, undefined, or an assembler internal one.
7768         (absolute_section, undefined_section): Always define.
7769         * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
7770         switch statements into if-else trees.
7771         * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
7772         SEG_BSS and SEG_DATA.
7773
7774         * as.h (frag_now_fix): New macro.
7775         * symbols.c (colon): Use it.
7776
7777 Wed Jan 27 21:43:53 PST 1993  Ralph Campbell  ([email protected])
7778
7779         * config/tc-mips.c:  Added mips support for mips-dec-bsd.
7780         * config/tc-mips.h:  Added mips support for mips-dec-bsd.
7781         * config/ho-mipsbsd.h:  Added mips support for mips-dec-bsd.
7782         * config/mips-opcode.h:  Added mips support for mips-dec-bsd.
7783         * configure.in:  Added mips support for mips-dec-bsd.
7784         * atof-generic.c:  Define TRUE and FALSE if not defined.
7785
7786 Thu Jan 21 12:48:19 1993  Ken Raeburn  ([email protected])
7787
7788         * version.c: Bumped version number to 1.93.05.
7789
7790 Wed Jan 20 17:11:53 1993  Ken Raeburn  ([email protected])
7791
7792         * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
7793         (obj_emit_lineno): Don't need return at end of void function.
7794         (obj_symbol_new_hook): Ditto.
7795
7796         * config/tc-m68k.c: Removed some unused code.
7797         (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
7798
7799         * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
7800         offset field is set.
7801
7802 Fri Jan  8 05:44:49 1993  Ken Raeburn  ([email protected])
7803
7804         * config/tc-sparc.c (sparc_ip): For %uhi and %ulo, if not
7805         ENV64, emit no reloc.
7806         (md_pseudo_table): For ".xword", call s_xword.
7807         (s_xword): New function.
7808
7809         * config/tc-sparc.c (architecture_requested, warn_on_bump,
7810         md_relax_table): Use default zero initialization.
7811         (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
7812         latter, instead of selecting with preprocessor conditionals.
7813
7814 Thu Jan  7 08:58:21 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
7815
7816         * configure.in: recognise all sparclite variants
7817
7818 Thu Jan  7 05:25:25 1993  Ken Raeburn  ([email protected])
7819
7820         * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
7821         accidentally changed to use subseg_change where it should have
7822         been subseg_new.
7823
7824 Tue Jan  5 08:42:16 1993  Ken Raeburn  ([email protected])
7825
7826         * expr.c (operand): If character other than comma or newline is a
7827         logical end-of-line character, use the newline case.
7828         From Eric Youngdale:
7829         (operand): Set X_add_number field for floating-point numbers.
7830         (operand): Treat zero byte as end-of-operand.
7831
7832         * configure.in (per-target): Look for with_bfd_assembler option.
7833         For now, only accept "no", until the merge is done.
7834
7835         Merged changes from Eric Youngdale ([email protected]):
7836         * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
7837           config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
7838         * read.c: Finish conversion to S_* macros in the VMS only
7839           parts of the program. Add "const" modifier to hex_value.
7840         * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
7841           "ifdef OBJ_VMS".
7842         * expr.c: Add "const" modifier to hex_value.
7843         * symbols.c: Finish conversion to S_* macros in the VMS only
7844           parts of the program.  Add "const" modifier to
7845           md_[long,short]_jump_size. Remove declaration of const_flag
7846           (which will be declared in obj-vms.h).
7847         * write.c: Add "const" modifier to md_[long,short]_jump_size.
7848           Fix arguments to VMS_write_object_file.
7849         * config-gas.com: New file.  Script for VMS systems to set up the
7850           configuration to build gas for VMS, and create config.status.
7851         * make-gas.com: Redone to work with new scheme.
7852         * obj-vms.c: Patch to fix bug where we were not correctly parsing the
7853           stabs directives.
7854         * obj-vms.c:  Define macros COPY_LONG and COPY_SHORT which
7855           will swap bytes if needed on a big endian system.  Use throughout
7856           as needed.
7857         * obj-vms.c (obj_aout_stab):  Add code to generate listing file.
7858         * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
7859           types of malformed stabs.  Change parsing algorithm so that we are
7860           more certain of having all of the information that we need on hand.
7861         * obj-vms.c (final_forward_reference):  New function, used to help
7862           resolve the data types of as many struct elements as possible
7863           when some part of the struct is not fully defined by the compiler.
7864         * obj-vms.c (VMS_LSYM_Parse):  Correctly handle case of continuation
7865           stabs directives.
7866         * obj-vms.c (VMS_write_object_file): Define all vtable psects
7867           as symbols as well in the object file.  Look for external functions
7868           that start with "__vt.", and turn them into variables, since the
7869           g++ compiler is incapable of doing this.
7870         * tc-vax.c: Add '1' option for backward compatibility with older GCC
7871           versions.
7872         * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
7873         * input-scrub.c (as_where): Fix bug where as would crash if we did not
7874           have the name of the source file yet.
7875         * config/ho-vms.h: define HO_VMS, not HO_VAX.
7876
7877 Mon Jan  4 05:17:26 1993  Ken Raeburn  ([email protected])
7878
7879         * read.c (s_data): Always use "data_section", since it'll map to
7880         SEG_DATA or SEG_E1 if needed.
7881         (s_lcomm): Likewise with bss_section.
7882         (s_fill): Use memset, not bzero.
7883
7884 Thu Dec 31 04:29:27 1992  Ken Raeburn  ([email protected])
7885
7886         * read.c: Deleted some code under "#ifdef DONTDEF" that was for
7887         handling GDB symbol table data.
7888
7889         * config/obj-aout.h (segment_name): Delete definition.
7890         (seg_name): Delete declaration.
7891         * config/obj-bout.h (segment_name, seg_name): Ditto.
7892         * config/obj-vms.h (segment_name, seg_name): Ditto.
7893         * config/obj-coff.h (segment_name): Ditto.
7894         * config/obj-coffbfd.h (segment_name): Ditto.
7895
7896         * Changes for BFD_ASSEMBLER:
7897         * obj.h (obj_crawl_symbol_chain): Declare only if not
7898         BFD_ASSEMBLER.
7899         (obj_header_append, obj_pre_write_hook): Ditto.
7900         * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
7901         (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
7902         (segment_name) If BFD_ASSEMBLER, look up BFD section name;
7903         otherwise, use seg_name array.
7904         (seg_name): Declare only if not BFD_ASSEMBLER.
7905         (section_alignment): Declare only if not BFD_ASSEMBLER.
7906         (big_section, reg_section, pass1_section, diff_section,
7907         absent_section, text_section, data_section, bss_section): If
7908         BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
7909         mapping to segT enum values.
7910         (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
7911         if these are used or defined, if BFD_ASSEMBLER.
7912         (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
7913         subseg_new split into two functions.
7914         (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
7915
7916         * as.h (volatile): Don't define if already defined.
7917         (had_errors, had_warnings): Provide prototypes for ANSI C even if
7918         NO_STDARG.
7919         (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
7920         declare with format attribute for -Wformat checking.
7921
7922 Wed Dec 30 10:18:57 1992  Ian Lance Taylor  ([email protected])
7923
7924         * app.c, config/tc-*.c: Don't include read.h, since it is already
7925         included by as.h.
7926
7927         * These are based on patches from Minh Tran-le
7928         <[email protected]>.
7929         * configure.in (i[34]86-ibm-aix*): Accept i486 for host.  Use
7930         obj_format coffbfd and gas_target i386coff for target.
7931         (i[34]86-*-isc*): New host (uses sysv).
7932         * config/i386aix.mt: Removed (no longer used).
7933         * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
7934         (MINUS_G): Removed.
7935         (LDFLAGS): Added, defined as -shlib.
7936         * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
7937         * config/te-sco386.h (LOCAL_LABEL): Don't define.
7938         (DOT_LABEL_PREFIX): Define.
7939         * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
7940         name rather than L0\001.
7941         * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
7942         local_bss_counter.
7943         * symbols.c, symbols.h (local_bss_counter): Removed.
7944         * write.c (write_object_file): bss no longer uses
7945         local_bss_counter.  Pass correct data and bss size to
7946         VMS_write_object_file.
7947         * config/obj-vms.c (VMS_write_object_file): Accept bss size as
7948         argument, rather than using local_bss_counter.
7949         * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
7950         * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
7951         * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
7952         (size_section): Restored sanity check.
7953         (do_relocs_for): Base section address on s_paddr rather than
7954         computing it.  Adjust a29k R_IHIHALF special case to account for
7955         section paddr (used to require paddr to be zero).  If there are no
7956         reclos, set s_relptr to 0.  Set relocation size in object_headers.
7957         (fill_section): Always set s_vaddr here, removing
7958         ZERO_BASED_SEGMENTS case.  Force s_scnptr for bss to 0.  Don't set
7959         NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
7960         Set STYP_INFO for .comment.
7961         (coff_header_append): Use object headers and H_{SET,GET}_* macros.
7962         Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
7963         (crawl_symbols): Handle 8 character section name correctly.  Use
7964         H_{SET,GET}_* macros.
7965         (do_linenos_for): Set lineno size in object_headers.
7966         (write_object_file): Use H_{SET,GET}_* macros.  Don't bother to
7967         set s_vaddr here.  If string_byte_count remains 4, set it back to
7968         0, and only write strings out if there are some.  Call
7969         fill_section before do_relocs_for and do_linenos_for.
7970         (obj_coff_section): Handle optional quoted second argument giving
7971         section characteristics.
7972         (obj_coff_bss): Added to handle .bss.
7973         (obj_coff_ident): Added to handle .ident (puts string in .comment
7974         section).
7975         (obj_coff_lcomm): Put common symbols in .bss, not .data.
7976         (fixup_mdeps): Change to segment.  Call frag_wane after
7977         md_convert_frag.
7978         (fixup_segment): Explicitly check S_IS_COMMON before making 386
7979         adjustment (already happened only for common symbols, but this is
7980         clearer).
7981         * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
7982         * config/tc-i386.c (s_bss): Don't use if I386COFF.
7983         (md_pseudo_table): Ignore .optim and .noopt.
7984         (tc_coff_sizemachdep): New function.
7985         * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
7986         compatibility.
7987         (LOCAL_LABEL): Removed definition.
7988         (DOT_LABEL_PREFIX): Defined.
7989
7990 Mon Dec 28 10:32:05 1992  Ken Raeburn  ([email protected])
7991
7992         * app.c (app_push): Use memcpy, not bcopy.
7993         (do_scrub_next_char): For \", return " not '.
7994         (symbol_chars): Now const.
7995
7996         * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
7997         and "0b".  If LOCAL_LABELS_DOLLAR, check for "0$".
7998
7999         * config/obj-coff.h: Don't use #elif.
8000
8001         * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
8002         have it.  (Reported by Noah Friedman, [email protected].)
8003
8004 Wed Dec 16 12:12:33 1992  Ian Lance Taylor  ([email protected])
8005
8006         * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
8007         already defined.
8008
8009 Tue Dec 15 12:40:11 1992  Steve Chamberlain  ([email protected])
8010
8011         * app.c (do_scrub_begin): allow single quote strings if so
8012         configured.
8013
8014         * config/*z8k*: checkpoint
8015
8016 Sun Dec 13 00:04:38 1992  Ian Lance Taylor  ([email protected])
8017
8018         * read.c (read_a_source_file): avoid calling xmalloc (0).
8019
8020 Sat Dec 12 15:26:34 1992  Ian Lance Taylor  ([email protected])
8021
8022         * listing.c: Call xmalloc, not malloc; don't declare malloc.
8023
8024         * Changes to support SCO 3.2v4:
8025         * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
8026         SEG_BSS, fill with NOP_OPCODE.
8027         * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
8028         * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
8029         using ZERO_BASED_SEGMENTS.
8030         (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
8031         never set segment address for SEG_E2 (.bss) and don't write out
8032         SEG_E2 contents.  Set .init and .fini sections to STYP_TEXT.
8033         (obj_coff_endef): Don't merge labels or symbols awaiting forward
8034         definitions, and don't merge tags with non-tags.  Check for .bf
8035         rather than just checking whether the second character is b and
8036         the third character is f.
8037         (obj_coff_val): gcc can generate values which we don't handle
8038         correctly; discard information for now, since it only affects the
8039         debugging information.
8040         (tag_find_or_name): Don't insert tags in the symbol table.
8041         (yank_symbols): Don't merge labels.
8042         (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
8043         already defined.  Fill subsegments with NOP_OPCODE, not 0.  Don't
8044         set segment address if ZERO_BASED_SEGMENTS.
8045         (obj_coff_section): Accept and ignore a trailing quoted string, as
8046         used in AT&T i386 syntax.
8047         (fixup_segment): Take segment as argument.  On the i386, adjust PC
8048         relative addends by the segment vaddr.
8049         * tc-i386.h: Define SUB_SEGMENT_ALIGN.
8050         * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
8051         * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
8052
8053 Tue Dec  8 00:06:48 1992  Ken Raeburn  ([email protected])
8054
8055         * config/obj-coffbfd.c: Include libcoff.h.
8056
8057         * version.c: Now version 1.93.
8058
8059 Mon Dec  7 00:39:09 1992  Ken Raeburn  ([email protected])
8060
8061         * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
8062         power-of-two alignment for .align.
8063
8064         * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
8065         and leave everything else alone.
8066
8067 Fri Dec  4 16:58:42 1992  Ken Raeburn  ([email protected])
8068
8069         * Makefile.in (as.new): Don't bother saving as.old.
8070
8071         * write.c: Conditionalize on OBJ_VMS, not VMS.
8072         (magic_number_for_object_file): Don't define if OBJ_VMS.
8073
8074         * config/obj-vms.c: Changes for traditional C.
8075
8076 Thu Dec  3 01:24:07 1992  Ken Raeburn  ([email protected])
8077
8078         * config/ho-generic.h (malloc, realloc): Declare.
8079
8080         * Lots of comment/whitespace changes.
8081
8082         * write.h (struct fix): Some fields reordered, narrowed.
8083
8084         * read.c (MASK_CHAR): Define using C types, not magic number.
8085
8086         * as.c, input-file.c: Deleted some unused code.
8087
8088         * app.c, as.h: Doc fix.
8089
8090         * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
8091
8092         * as.h (xmalloc): Argument is long.
8093
8094         * xmalloc.c (error): Remove declaration; as.h takes care of it.
8095
8096         * doc/as.texinfo: Regrouped documentation of some command-line
8097         options.  Updated options documentation for m68k.  Some minor
8098         wording/punctuation changes.
8099
8100 Mon Nov 30 11:42:11 1992  Ken Raeburn  ([email protected])
8101
8102         * configure.in: Accept target OS "vms".
8103
8104         * symbols.c:  Merged ANSI and non-ANSI function decls, using
8105         PARAMS macro.
8106
8107         * xmalloc.c: Just include as.h, don't bother trying to figure out
8108         other header files.
8109
8110         * strstr.c, strerror.c: Deleted.
8111         * Makefile.in: Deleted references.
8112
8113         * config/tc-ns32k.c: Don't include header file for string
8114         declarations; leave that to ho-*.h.
8115
8116 Fri Nov 27 04:11:36 1992  Ken Raeburn  (raeburn at cambridge-laptop.cygnus.com)
8117
8118         * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
8119         imported from FSF sources.
8120
8121         * messages.c (strerror): Declare unconditionally.
8122
8123         * as.h: Delete alloca and register definitions.
8124
8125         * config/atof-ieee.c (mask): Now const.
8126
8127         * obstack.c, obstack.h: Deleted.
8128
8129         * as.h (flag_readonly_data_in_text): New flag.
8130         * as.c (main): Set it for -R.
8131
8132         * as.h (flag_suppress_warnings): New flag.
8133         * as.c (main): Set it for -W.
8134         * messages.c (as_warn): Check it instead of flagseen['W'].
8135
8136         * as.h (flag_always_generate_output): New flag.
8137         * as.c (main): Set it for -Z.
8138
8139         * config/tc-sparc.h: Define NEED_FX_R_TYPE.
8140         * config/tc-a29k.h: Ditto.
8141         * write.h (struct fix): Don't conditionalize fx_r_type field on TC
8142         macros.
8143
8144         * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
8145         macro.
8146         * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
8147         obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
8148         write.h: Likewise.
8149         * read.c: Likewise.
8150
8151         * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG.  Fold in
8152         xrealloc from xrealloc.c.
8153         * xrealloc.c: Deleted.
8154         * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
8155
8156         * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
8157         or vms ho- files.
8158
8159         * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
8160
8161         * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
8162         don't initialize it with NULL.
8163
8164         * config/ho-vax.h (M_VAX): Deleted; was unused.
8165
8166         * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
8167         New files imported from FSF version, contributed by Eric Youngdale.
8168         * README-vms-dbg, config/vms: Deleted.
8169
8170         * ChangeLog, config/ChangeLog: Merged.
8171
8172         * config/*tahoe*, configure.in: Tahoe support brought in from FSF
8173         version.
8174
8175         * input-file.c (input_file_open): Eliminate call to setvbuf.
8176         [USG] (setbuffer): Deleted macro.
8177
8178 Mon Nov 23 11:00:16 1992  Ken Raeburn  ([email protected])
8179
8180         * all files: Whitespace changes for GNU indentation style, done by
8181         GNU `indent'.  Some cleanup still needed, especially of comments.
8182
8183         * configure.in: No te-386bsd.h file exists; don't try to use it.
8184
8185         * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
8186
8187         * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
8188         could be doing emulation.
8189
8190 Thu Nov 19 11:47:19 1992  Steve Chamberlain  ([email protected])
8191
8192         z8000 documentation
8193         * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
8194         all modified.
8195
8196 Tue Nov 10 09:49:24 1992  Ian Lance Taylor  ([email protected])
8197
8198         * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
8199
8200         * subsegs.h: add extern to segment_info declaration.
8201
8202         * read.h: added extern declarations for comment_chars,
8203         line_comment_chars, and line_separator_chars.
8204         read.c, app.c: removed definitions of comment_chars,
8205         line_comment_chars, and line_separator_chars.
8206
8207         * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
8208         still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
8209         the register name.
8210         (insert_reg): put REGISTER_PREFIX before register names before
8211         putting them in the symbol table.
8212         * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
8213         M68KCOFF.
8214
8215         * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
8216         section.
8217
8218         * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
8219         comment_chars, line_comment_chars and line_seperator_chars
8220         consistently const, and always initialized them.  Included read.h.
8221
8222 Thu Nov  5 17:55:41 1992  Jim Wilson  ([email protected])
8223
8224         * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
8225         constant will not fit in an immediate field.
8226         (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
8227
8228 Wed Nov  4 07:50:46 1992  Ken Raeburn  ([email protected])
8229
8230         * obj-coff.c (callj_table): Delete global variable.
8231         (obj_emit_relocations): Define it locally here, and only if
8232         TC_I960 is defined.
8233
8234         * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
8235         (m68k_ip): Don't warn about bignum used as float bit-pattern.
8236
8237         * obj-coff.c: Replaced ANSI and non-ANSI function declarations
8238         with a single set using PARAMS macro.
8239
8240         * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
8241         of 2.
8242
8243         * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
8244
8245         * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
8246         so widening works consistently.
8247
8248 Wed Oct 28 08:52:34 1992  Ken Raeburn  ([email protected])
8249
8250         * version.c: Put conditional "const" before version_string, not
8251         before dummy function for VMS.  Now version 1.91.03.
8252
8253         * app.c (do_scrub_next_char): Need double-\ before `000' to show
8254         printed rep of null character.
8255
8256 Fri Oct 23 14:40:38 1992  Ian Lance Taylor  ([email protected])
8257
8258         * obj-coffbfd.c (write_object_file): check return value of
8259         bfd_close_all_done.
8260
8261 Tue Oct 20 12:18:08 1992  Ian Lance Taylor  ([email protected])
8262
8263         * Support for i386-sysv.
8264         obj-coffbfd.c (do_relocs_for, write_object_file): set segment
8265         addresses to reasonable sizes.  New define ZERO_BASED_SEGMENTS can
8266         be used to set them all to zero as was done before.
8267         (fill_section): segment addresses now set in write_object_file.
8268         (fill_section): Don't set STYP_NOLOAD for .bss section.
8269         (fixup_segment): 386 uses strange common symbol format.
8270         tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
8271         compatibility with SVR3.2 linker.
8272         * configure.in: i386-sysv and i386-sco use coffbfd.
8273
8274         * app.c (do_scrub_next_char): discard whitespace after a label.
8275
8276 Sat Oct 10 12:33:45 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
8277
8278         * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
8279         hosts, use the sysv configuration for solaris2
8280
8281 Mon Oct  5 09:28:57 1992  Steve Chamberlain  ([email protected])
8282
8283          fix i960+non-bfd coff bit rot.
8284         * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
8285         support for C source listings. (obj_coff_endef): look in the right
8286         part of the symbol for the symbol name
8287
8288         * tc-m68k.c (get_num): make it work for all segments, not just the
8289         first three.
8290
8291 Mon Oct  5 03:30:36 1992  Mark Eichin  (eichin at tweedledumber.cygnus.com)
8292
8293         * configure.in: recognize i386-*-bsd emulation.
8294
8295 Thu Oct  1 23:05:12 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
8296
8297         * configure.in: use the cpu-vendor-os triple for host and target
8298
8299 Tue Sep 29 12:22:52 1992  Steve Chamberlain  ([email protected])
8300
8301         * obj-coffbfd.c (write_object_file): don't fixup for the z8k
8302         * tc-z8k.c: lots of bug fixes
8303
8304 Tue Sep 29 10:51:55 1992  Ian Lance Taylor  ([email protected])
8305
8306         * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
8307         #elif, since it is not supported by old compilers.
8308         ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
8309         couple of expressions in tc-m68k.c.
8310
8311 Mon Sep 28 21:18:24 1992  Ken Raeburn  ([email protected])
8312
8313         * read.c (cons): If NO_RELOC is defined, use it.
8314
8315         * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
8316
8317 Fri Sep 25 18:18:52 1992  Ian Lance Taylor  ([email protected])
8318
8319         * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
8320         local labels to start with a .) and set REGISTER_PREFIX to %.
8321         tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
8322
8323 Fri Sep 25 17:53:43 1992  John Gilmore  ([email protected])
8324
8325         * messages.c:  Comment changes.
8326
8327 Fri Sep 25 14:12:58 1992  Ken Raeburn  ([email protected])
8328
8329         * as.h: Test if __STDC__ is defined only, don't test its value.
8330         * messages.c: If __STDC__ is not defined, define NO_STDARG.
8331
8332 Thu Sep 24 12:42:32 1992  Brendan Kehoe  ([email protected])
8333
8334         * listing.c (debugging_pseudo): Add stabs and stabn as things to
8335         ignore.
8336
8337 Tue Sep 22 13:02:07 1992  Sean Eric Fagan  ([email protected])
8338
8339         * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
8340         sections starting from zero, rather than making them consecutive.
8341         This makes subsequent reloc calculations easier, esp if the object
8342         format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
8343         allocate lcomm in .data rather than in .bss.  It seems that some
8344         tools can't cope with a non-zero sized bss before linkage.
8345
8346 Tue Sep 22 15:10:51 1992  Ken Raeburn  ([email protected])
8347
8348         * tc-m68k.c: Replace "enum m68k_architecture" with "int"
8349         throughout.  That enum no longer means what we thought it meant.
8350
8351         * tc-m68k.c (md_assemble, md_parse_option): Handle new
8352         "-mno-688[58]1" options.
8353
8354         * tc-m68k.c: Added CPU32 support.
8355
8356 Fri Sep 18 08:02:18 1992  Steve Chamberlain  ([email protected])
8357
8358         * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
8359
8360 Tue Sep 15 17:25:05 1992  Jim Wilson  ([email protected])
8361
8362         * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
8363         Change LIBDEPS dependence to LIBS.
8364
8365 Tue Sep 15 15:32:02 1992  Ian Lance Taylor  ([email protected])
8366
8367         * Makefile.in (install): if $(tooldir) exists, install as in
8368         $(tooldir)/bin.
8369
8370 Sun Sep 13 20:30:10 1992  Ian Lance Taylor  ([email protected])
8371
8372         * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
8373         .word is < -32768 or > 32767.  The -J flag causes the error to be
8374         ignored.  This is to catch over-sized switches generated by gcc on
8375         systems which don't support the broken .word hack.
8376         as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
8377         write.c (fixup_segment): check for signed .word overflow if
8378         WARN_SIGNED_OVERFLOW_WORD.
8379
8380         * write.c (fixup_segment): fixed missing parens in expression
8381         checking for byte or word overflow.
8382
8383         * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
8384         obj-coffbfd.c (fixup_segment): check for signed .word overflow if
8385         WARN_SIGNED_OVERFLOW_WORD.
8386
8387         * obj-coffbfd.c (fixup_segment): fixed missing parens in
8388         expression checking for byte or word overflow.
8389
8390 Fri Sep 11 10:21:04 1992  Steve Chamberlain  ([email protected])
8391
8392         Support for i386 coff
8393         * obj-coffbfd.h : added stuff
8394         * tc-i386.c (tc_coff_fix2rtype): new function
8395         * tc-i386.h : new coff defines
8396
8397 Thu Sep 10 09:23:15 1992  Ian Lance Taylor  ([email protected])
8398
8399         * input-scrub.c (input_scrub_push): call input_file_begin, not
8400         input_scrub_begin.
8401         messages.c (as_perror): print ": " between the passed in error and
8402         the strerror, like perror does.
8403
8404 Wed Sep  9 11:06:25 1992  Ian Lance Taylor  ([email protected])
8405
8406         * Makefile.in: use gas_target instead of modifying target_cpu.
8407         From Steve Chamberlain:
8408         Makefile.in: Handle m68*-*-coff*.
8409         read.c, read.h: add mult argument to s_space
8410
8411         * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
8412          Motorola and MIT syntax; gas can now assemble either type of
8413          file.
8414         tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
8415         From Steve Chamberlain:
8416         m68kcoff.mt: for m68k COFF.
8417         obj-coffbfd.c: (fixup_mdeps) added
8418          (size_section) removed bad sanity check
8419          (fill_section) added rs_machine_dependent case
8420          (write_object_file) call fixup_mdeps
8421          (fixup_segment) set fx_subsy to 0.
8422         obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
8423          handle m68k.
8424         tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
8425          pseudo ops.
8426
8427 Tue Sep  8 17:10:58 1992  Ken Raeburn  ([email protected])
8428
8429         * Makefile.in (LIBS): Include opcode library.
8430
8431 Fri Sep  4 18:20:56 1992  Ken Raeburn  ([email protected])
8432
8433         * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
8434         including zero are accepted, pass +0.0.
8435
8436 Sun Aug 30 21:24:46 1992  Ian Lance Taylor  ([email protected])
8437
8438         * Makefile.in: map "as" through program_transform_name when
8439         installing.
8440
8441         * doc/Makefile.in: map "as" through program_transform_name when
8442         installing.
8443
8444 Sat Aug 29 12:11:12 1992  Jim Wilson  ([email protected])
8445
8446         * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
8447
8448 Fri Aug 28 16:25:22 1992  Ian Lance Taylor  ([email protected])
8449
8450         * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
8451         tc-i960.c (md_ri_to_chars): Always output bout object file in
8452         little endian byte order (used to use endianness of host).
8453
8454 Tue Aug 25 15:50:48 1992  Ken Raeburn  ([email protected])
8455
8456         * config/tc-m68k.c (init_table): Now const.  Always include 68851
8457         data, so that "bc" is available to 68040 cache instructions.
8458         Added "tt0", "tt1", and 68ec030 variants.
8459         (md_assemble): Complain if 68000 (only) and 68881 are specified.
8460         (enum _register): Added TT0, TT1.
8461         (m68k_ip, cases '3' and 't'): Handle new operand type codes.  Pass
8462         line number correctly in "internal error" messages.  Don't print
8463         architecture-mismatch message for operand errors.
8464
8465         From Colin Smith ([email protected]):
8466         * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
8467         than install_operand.
8468
8469 Tue Aug 25 15:13:48 1992  Steve Chamberlain  ([email protected])
8470
8471         * listing.c (buffer_line): rewind to the start of include
8472         files, they might be included twice.
8473
8474         * z8k.c, z8k.h, z8k.mt: z8000 support stuff
8475
8476 Mon Aug 24 12:45:43 1992  Ian Lance Taylor  ([email protected])
8477
8478         * Makefile.in: defined TARGET_CPU for C code so that it can choose
8479         one element of a family.
8480
8481         * tc-m68k.c: use TARGET_CPU to choose default cpu type.
8482
8483         * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
8484         so that we can assemble hand-written libgcc code.
8485
8486 Fri Aug 21 14:38:44 1992  Ken Raeburn  ([email protected])
8487
8488         * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
8489         has already been formatted (but may still contain %-characters).
8490         (as_bad): Likewise.
8491
8492 Wed Aug 19 11:20:59 1992  Ian Lance Taylor  ([email protected])
8493
8494         * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
8495         written with indirection on the last two operands, which can be
8496         either data or address registers.  Added a new operand type 'r'
8497         which accepts either register type.  Added '(' to notend stuff in
8498         tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
8499
8500 Wed Aug 19 09:25:09 1992  Ken Raeburn  ([email protected])
8501
8502         * as.h (enum _relax_state): Start off at one, not zero, to better
8503         catch uninitialized-variable errors.
8504         (linkrelax): Declare new variable.
8505
8506         * messages.c (warning_count, error_count): Default initializer is
8507         sufficient.
8508
8509         * write.c: Merged some declarations, using PARMS macro.
8510         (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
8511         data_last_frag): No longer static.
8512         (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
8513         defined, call it.  Change segments before calling fixup_segment.
8514         (relax_align): If linkrelax, provide extra padding.
8515
8516         * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
8517         their not having symbols associated.
8518
8519         * tc-i960.c (norelax, instrument_branches): Default initializer is
8520         sufficient.
8521         (linkrelax): Delete variable definition.
8522         (mem_fmt): Call fix_new with NO_RELOC.
8523         (tc_bout_fix_to_chars): Handle alignment relocs.
8524         (i960_handle_align): New function.
8525         * tc-i960.h (linkrelax): Delete declaration.
8526         (HANDLE_ALIGN): New macro; calls i960_handle_align.
8527         (NEED_FX_R_TYPE, NO_RELOC): New macros.
8528
8529 Tue Aug 18 14:59:21 1992  Ken Raeburn  ([email protected])
8530
8531         * config/sparc.mt: New file.  Grab sparc opcode table from bfd
8532         library.
8533
8534 Tue Aug 18 14:16:38 1992  Ian Lance Taylor  ([email protected])
8535
8536         * Makefile.in: always create installation directories.  Removed
8537         MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
8538         FLAGS_TO_PASS to recursive makes.
8539
8540         * doc/Makefile.in: always create installation directories.
8541
8542 Mon Aug 17 15:09:56 1992  Steve Chamberlain  ([email protected])
8543
8544         * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
8545         being used with args swapped, causing occasional lossage when
8546         refilling buffers after an include file.
8547
8548 Mon Aug 17 13:18:51 1992  Ken Raeburn  ([email protected])
8549
8550         * messages.c (as_tsktsk): Use correct ANSI form for stdarg
8551         version.  Discard bogus DONTDEF version.
8552         (as_warn, as_bad, as_fatal): Likewise.
8553
8554 Fri Aug 14 18:31:14 1992  Ken Raeburn  ([email protected])
8555
8556         * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
8557         selected architecture, print a message saying so and listing what
8558         processors support it, rather than saying "operands mismatch".
8559
8560 Thu Aug 13 13:53:19 1992  Ken Raeburn  ([email protected])
8561
8562         * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
8563
8564         * config/ho-rs6000.h (M_RS6000): Don't define it.
8565         (free): Declare it.
8566         (BROKEN_ASSERT): Define it if not __STDC__.
8567
8568 Tue Aug 11 12:58:14 1992  Ken Raeburn  ([email protected])
8569
8570         * sparc.mt: New file.
8571
8572 Mon Aug 10 14:37:08 1992  Per Bothner  ([email protected])
8573
8574         * tc-m68k.c: ".align N" means align to N-byte boundary *only*
8575         if TN_SUN3; otherwise align to 2**N-byte bounary.
8576
8577 Thu Aug  6 12:10:39 1992  Steve Chamberlain  ([email protected])
8578
8579         * read.c (s_fill): make the .fill size clamped error a warn and
8580         fix bug where 0's were always placed.
8581
8582         * config/tc-h8300.c: if a :8 is seen after an operand, fill top
8583         two bytes of any constant with 0xff:
8584
8585 Wed Aug  5 12:02:40 1992  Steve Chamberlain  ([email protected])
8586
8587         * config/tc-m68k.c (md_pseudo_table): fix the .align thing
8588         the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
8589
8590 Wed Aug  5 01:54:34 1992  John Gilmore  (gnu at cygnus.com)
8591
8592         * tc-m68k.c (try_index):  Error if index scaling specified and
8593         assembling for an older CPU than a 68020.
8594
8595 Sat Aug  1 19:10:13 1992  Ken Raeburn  ([email protected])
8596
8597         * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
8598         fx_offset into account.
8599
8600 Fri Jul 31 21:53:28 1992  Ken Raeburn  ([email protected])
8601
8602         * configure.in (mips host): Accept "ultrix" with version number.
8603
8604         * expr.c (floating_constant): Separate "=-" to avoid confusing
8605         ancient or broken compilers.
8606
8607         * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
8608         processor/opcode mismatch, so reword the error message.
8609         (md_assemble): If no CPU has been set (even if FPU/PMMU
8610         characteristics have been), default to 68020.  Don't need extra
8611         quotes around error string.
8612
8613 Fri Jul 31 12:26:34 1992  Jim Wilson  ([email protected])
8614
8615         * read.c (potable): Revert sac's incorrect change made Jul 13.
8616         Align really is supposed to be ptwo not nbytes.
8617
8618 Mon Jul 20 02:51:59 1992  D. V. Henkel-Wallace  ([email protected])
8619
8620         * Makefile.in: _Do_ include libiberty.  (from sef)
8621
8622 Fri Jul 17 15:15:28 1992  Ken Raeburn  ([email protected])
8623
8624         * expr.c (integer_constant): Handle "0f" and "0b" label references
8625         properly.
8626
8627 Thu Jul 16 08:20:17 1992  Steve Chamberlain  ([email protected])
8628
8629         * write.c (fixup_segment): if relaxing, don't do anything.
8630         * config/obj-bout.[ch] : maintain the a_relaxable file header info
8631         * config/tc-i960.c: new option -linkrelax
8632
8633 Mon Jul 13 14:11:36 1992  Steve Chamberlain  ([email protected])
8634
8635         * expr.c (expr): allow SEG_BSS in expressions
8636         * read.c (potable): align should be nbytes, not ptwo!
8637         * write.c (write_object_file): extra glue for new bss attributes
8638         (relax_segment): SEG_BSS is ok now
8639         * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
8640
8641 Mon Jul  6 17:09:32 1992  Steve Chamberlain  ([email protected])
8642
8643         * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
8644
8645 Mon Jun  1 16:20:22 1992  Michael Tiemann  ([email protected])
8646
8647         * configure.in: recognize m680x0 as having sun3 emulation mode for
8648         vxworks environment.
8649
8650
8651 Tue Jun 30 20:25:54 1992  D. V. Henkel-Wallace  ([email protected])
8652
8653         * Makefile.in: Add program_suffix (parallel to program_prefix)
8654
8655 Wed Jun 24 10:57:54 1992  Steve Chamberlain  ([email protected])
8656
8657         * app.c (process_escape): new function to handle escapes the right
8658         way, (do_scrub_next_char): use new function
8659         * cond.c (s_ifdef): do ifdef/ifndef right
8660         * read.c (s_fill): make the , expressions optional like the doc
8661         says
8662         * config/tc-h8300.[ch]: better warnings
8663
8664 Tue Jun  9 07:54:54 1992  Steve Chamberlain  ([email protected])
8665
8666         * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
8667         as data0_frchainP
8668
8669         * write.c (write_object_file): various changes to handle data in
8670         the BSS segment in much the same was as stuff in the DATA segment.
8671
8672         * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
8673         pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
8674         68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
8675         the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
8676         it into SEG_BSS
8677
8678 Thu Jun  4 11:59:13 1992  Steve Chamberlain  ([email protected])
8679
8680         * expr.c(expr): allow SEG_REGISTER in expressions.
8681         * read.c(pseudo_set): register expressions can be the source of a
8682         set.
8683         * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
8684         goto SEG_TEXT (if a.out)
8685         * write.c (write_object_file): If a.out don't use the old way for
8686         -R.
8687         * config/obj-a.out (s_sect): complain if the user tries to use a
8688         subsegment with a value which might interfere with out -R hackery.
8689         * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
8690         rather than use ugly if tree. (init_regtable): insert register
8691         names into symbol table.
8692
8693 Tue Jun  2 16:47:09 1992  Steve Chamberlain ([email protected])
8694
8695         * write.c (write_object_file): keep the fix_tail clean, which
8696         fixes a bug in -R where relocations were being lost.
8697
8698 Mon Jun  1 16:20:22 1992  Michael Tiemann  ([email protected])
8699
8700         * configure.in: recognize m680x0 as having sun3 emulation mode for
8701         vxworks environment.
8702
8703 Sun May 31 05:33:00 1992  david d `zoo' zuhn ([email protected])
8704
8705         * configure.in: recognize m680x0 as an m68k
8706
8707 Thu May 28 11:22:02 1992  Jim Wilson  ([email protected])
8708
8709         * configure.in: Recognize sparclite as a sparc variant.
8710
8711         * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro.  Mention new
8712         -Asparclite flag.
8713
8714 Tue May 26 16:47:56 1992  Steve Chamberlain  ([email protected])
8715
8716         * config/tc-a29k.c: lint
8717         * listing.c, expr.c: patches from Andrew Smith
8718
8719 Thu May 14 17:22:48 1992  K. Richard Pixley  ([email protected])
8720
8721         * doc/Makefile.in: use m4 rather than gm4.
8722
8723 Mon May  4 18:56:19 1992  Steve Chamberlain  ([email protected])
8724
8725         * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
8726         calc the base of relocs correctly.
8727         * tc-a29k.c (parse_operand): allow expressions to be in any section.
8728
8729 Mon Apr 27 13:13:31 1992  K. Richard Pixley  ([email protected])
8730
8731         * as.c, write.c: use -K rather than -k for the broken word warning
8732           option.
8733
8734 Tue Apr 21 13:35:30 1992  K. Richard Pixley  ([email protected])
8735
8736         * Makefile.in: do not print recursion lines.
8737
8738 Wed Apr 15 21:19:31 1992  K. Richard Pixley  ([email protected])
8739
8740         * Makefile.in: the tooldir copy of gas goes directly in tooldir.
8741
8742 Tue Apr 14 14:50:22 1992  Ken Raeburn  ([email protected])
8743
8744         * write.c (write_object_file): For b.out format, round up section
8745         start addresses to match required alignment.
8746
8747 Thu Apr  9 05:45:29 1992  Ken Raeburn  ([email protected])
8748
8749         * Makefile.in (install): Install into $(tooldir)/bin, since that's
8750         where gcc looks for it.
8751
8752 Tue Apr  7 15:12:15 1992  Sean Eric Fagan  ([email protected])
8753
8754         * Makefile.in:  Changed some lines to be less confusing for some
8755         makes.
8756
8757         * input-file.c:  Conditionalize on _IOFBF, not VMS.
8758
8759         * read.c, write.c:  Change a series of ifdef/elif to
8760         ifdef/else/ifdef etc.
8761
8762 Fri Mar 27 12:21:16 1992  K. Richard Pixley  ([email protected])
8763
8764         * symbols.c (fb_label_init): fix sizeof to memset.
8765
8766 Fri Mar 13 15:45:44 1992  K. Richard Pixley  ([email protected])
8767
8768         * Makefile.in: install the man page.
8769
8770         * Makefile.in: pass down MAKEINFO explicitly on info.
8771
8772         * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
8773
8774 Fri Mar 13 08:03:03 1992  Steve Chamberlain  ([email protected])
8775
8776         * flonum-const.c: renamed flonum-konst.c to stop dos name
8777         conflict.
8778
8779 Thu Mar 12 04:42:38 1992  K. Richard Pixley  ([email protected])
8780
8781         * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
8782           tc-m68k.h to te-sun3.h.
8783
8784 Wed Mar 11 23:32:42 1992  K. Richard Pixley  ([email protected])
8785
8786         * configure.in: vxworks68 gets te-sun3.h.
8787
8788         * expr.c: remove limitation that local_labels_dollar or
8789           local_labels_fb must be < 10.
8790
8791         * symbols.c: remove local_labels_dollar, replace with a function
8792           interface for a sparse array.  All users adjusted.
8793
8794         * te-sun3.h: add LOCAL_LABELS_DOLLAR.
8795
8796 Sat Mar  7 00:06:25 1992  K. Richard Pixley  ([email protected])
8797
8798         * doc/Makefile.in: commented out line for building as-all.texinfo.
8799           This is temporary.
8800
8801         * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
8802
8803 Fri Mar  6 21:57:18 1992  K. Richard Pixley  ([email protected])
8804
8805         * Makefile.in: added check target.
8806
8807 Tue Mar  3 15:45:56 1992  K. Richard Pixley  ([email protected])
8808
8809         * Makefile.in: added tooldir and program_prefix.
8810
8811 Sun Mar  1 04:43:19 1992  Michael Tiemann  ([email protected])
8812
8813         * write.{c,h} (fix_new): Make these declarations consistent.
8814
8815 Sat Feb 29 13:59:10 1992  Michael Tiemann  ([email protected])
8816
8817         * Makefile.in (strerror.o): Add rule so that broken Sun make can
8818         work in subdirs.
8819
8820 Wed Feb 26 19:26:28 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
8821
8822         * read.c, obj-coffbfd.c : fix h8300 specific bit rot
8823
8824         * expr.c (operand): if can't work out what sort of operand it is,
8825         then look through FLT_CHARS for a hint.
8826
8827 Wed Feb 26 18:04:40 1992  K. Richard Pixley  ([email protected])
8828
8829         * Makefile.in, configure.in: removed traces of namesubdir,
8830           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
8831           copyrights to '92, changed some from Cygnus to FSF.
8832
8833         * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
8834           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
8835           copyrights to '92, changed some from Cygnus to FSF.
8836
8837 Tue Feb 25 14:17:15 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
8838
8839         * expr.c: If an expression is single comma, then return with
8840         SEG_ABSENT rather than an error - since the sparc front end does
8841         really strange things with things like fbge,a
8842
8843         * as.h: include bfd.h if using many sections
8844         * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
8845         local labels didn't work.
8846         * listing.c (list_symbol_table): don't core dump when there's no
8847         symbol there.
8848         * write.c, write.h: call fix_new with the right number of args on
8849         the H8.
8850         * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
8851         errors nices
8852
8853 Sat Feb 22 12:26:28 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
8854
8855         * app.c: MRI compatibility - allow single quote to start a string.
8856         * as.c: fix typo recently introduced.
8857         * as.h : Don't include aout/reloc.h - it's not right for COFF!
8858         * expr.c: Much rewriting, to accomodate MRI syntax for
8859         expressions. Also easier to read now.
8860         * listing.c: Put back defuns
8861         * read.c: modified to accept MRI syntax, put back listing pseudo
8862         ops so that an assembler built with NO_LISTING ignores list ops
8863         rather than pukes.
8864         * write.c, write.h: fixs - only keep a reloc type in a fix if the target
8865         machine is a SPARC or a 29K.
8866         * config/obj-aout.c: added s_sect pseudo op
8867         * config/obj-coffbfd.c: lints, set the filehdr flags right and
8868         fill in the timestamp.
8869         * config/obj-coffbfd.h: Since we don't include aout/reloc.h
8870         anymore, define all the relocs which the tc-<x> bit will use so we
8871         can translate from them to the coff types.
8872         * config/tc-a29k.c: reloc_type isn't ane enum any more
8873         * config/tc-m68k.c: Added NO_RELOC definition.
8874
8875 Fri Feb 21 06:21:07 1992  K. Richard Pixley  ([email protected])
8876
8877         * Makefile.in: put header files before C source for TAGS; remove
8878           references to non-existent syscalls.h.
8879
8880         * read.c, write.c subsegs.c: back out the .bss changes.
8881
8882         * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
8883
8884         * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
8885
8886         * a.out.h: removed.
8887
8888 Fri Feb 21 01:08:48 1992  Minh Tran-Le ([email protected])
8889
8890         * symbols.c (local_label_name): symbols now start with ^A.
8891
8892         * read.c, subsegs.c, write.c obj-coff.c: added handling of
8893           `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
8894           generate these sections.  .align: will use NOP_OPCODE or 0
8895           for padding. This is just for being nice to the
8896           disassembler.
8897
8898         * expr.c (operand): changed to generate local label "\001L0"
8899           starting with a ^A so that it is recognized as a local label.
8900
8901         * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
8902
8903         * tc-i386.c: tc-i386.c: added handling of the following opcodes:
8904           i/o opcodes - inb, inw, outb and outw.  string manipulation with
8905           att syntax - scmp, slod, smov, ssca, ssto.
8906
8907         * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
8908           to just after .file .
8909
8910           In obj_crawl_symbol_chain() where it tries to put the external
8911           symbols apart, with the condition:
8912             (!S_IS_DEFINED(symbolP) &&
8913              !S_IS_DEBUG(symbolP) &&
8914              !SF_GET_STATICS(symbolP))
8915           it was moving too many symbols out. So I switch it back to the
8916           condition:
8917             (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
8918
8919           In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
8920           so that we don't use the F_RELFLG which make the linker complain
8921           that somebody has stripped the relocation info.
8922
8923           Also, the AIX ld program require that the relocation table
8924           is sorted by r_vaddr like the standard ATT assembler does.
8925
8926           [he also changed the sizeof(struct ...)'s into the coff
8927           style FOOSZ macros.  I'm not sure this is right, but I can't
8928           remember why.  xoxorich.]
8929
8930 Fri Feb 21 01:08:48 1992  K. Richard Pixley  ([email protected])
8931
8932         * Makefile.in, configure.in, doc: use the doc.  Build it, install
8933           it, clean it, etc.
8934
8935 Tue Feb 18 02:21:25 1992  K. Richard Pixley  (rich at cygnus.com)
8936
8937         * read.c: white space and comments only.
8938
8939         * configure.in: use the new atof-ns32.c for ns32k.
8940
8941         * write.c: comment change only.
8942
8943         * tc-m88k.[hc]: pulled in from hack's unfinished work.  These
8944           aren't yet integrated.
8945
8946         * tc-i860.[hc]: blew off the dust.  Something must still be done
8947           about conflicting relocation types.
8948
8949         * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
8950           real thing.
8951
8952         * tc-i960.c, tc-sparc.c: white space and comments only.
8953
8954         * tc-a29k.h: delete duplicate macro definition.
8955
8956         * new file atof-ns32k.c copied from hack's last unreleased gas.
8957
8958 Mon Feb 17 07:51:06 1992  K. Richard Pixley  (rich at cygnus.com)
8959
8960         * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
8961           rather than abort.
8962
8963         * nearly everything.  flush ChangeLog, package as gas-1.92.1.
8964           ChangeLog's prior to this are sketchy at best.  I have logs.
8965           They just aren't ChangeLogs.
8966
8967 \f
8968 Local Variables:
8969 mode: indented-text
8970 left-margin: 8
8971 fill-column: 74
8972 version-control: never
8973 End:
This page took 0.560311 seconds and 2 git commands to generate.