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