SUB_SEGMENT_ALIGN now takes an argument.
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
1101551c
KR
1Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2
3 Patches from Eric Youngdale:
4 * make-gas.com: Find obstack.obj if it's not in the current
5 directory.
6 * read.c (s_ignore): Don't declare is_end_of_line. It's
7 redundant, and triggers a VMS gcc compiler bug.
8
9 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
10 current segment as an argument. (Ignored in all cases but VMS.)
11 All callers and definitions changed.
12
5e4cddb7
ILT
13Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
14
15 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
16 case compile again.
17
f3ca2a64
KR
18Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
19
20 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
21 so "~0x80" won't be rejected.
22
23 * config/obj-elf.c: No longer include elf/reloc.h.
24 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
25 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
26 routines.
27 (obj_elf_xstab): New routine.
28 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
29 argument to s_ignore. Put "#if 0" around unused code.
30 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
31 Call elf_xstabs for .stabs and .xstabs operators.
32
33 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
34
35 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
36 present.
37
38 * configure.in: mips-bsd configuration was missing format spec.
39 Should use aout.
40
41 * Makefile.in (Makefile): Depends on configure.in.
42
43 * config/tc-mips.c (append_insn): Don't check for alignment of
44 frag in memory; alignment of instructions in section is a separate
45 matter.
46
47 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
48 C availability.
49
50 * listing.h: Always provide function declarations, not macros, so
51 pcc won't lose.
52
7687d89b
JG
53Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
54
55 * CONTRIBUTORS: Update Gilmore entry.
56
57Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
58
59 * frags.c (frag_init): New function.
60 (zero_address_frag, bss_address_frag): Now initialized at run
61 time.
62 * as.c (main): Call frag_init.
63
160b7f0f
ILT
64Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
65
66 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
67 Don't unget ch2 if we didn't get it.
68
0cca30f3
KR
69Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
70
71 * doc/Makefile.in (TEXIDIR): Updated for new layout.
72
73 * config/tc-sparc.c (s_common): Add support for ELF version.
74 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
75 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
76 New macros.
77 (md_convert_frag): New macro.
78
79 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
80 symbol, fix the offset so "+2" isn't required.
81
82 * config/tc-i960.c (line_comment_chars, line_separator_chars):
83 Define as common/bss.
84 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
85 initializers are sufficient.
86
87 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
88 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
89 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
90 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
91 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
92 "IGNORE_DEBUG" conditional, since both branches are identical.
93 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
94 referencing symbol structure members.
95 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
96
97 * as.h (struct frag): Reordered a couple of fields for better
98 packing.
99
100 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
101 section info.
102 (write_contents) [BFD_ASSEMBLER]: New function.
103 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
104 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
105 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
106 (fixup_segment): Make sure common-section symbols get treated the
107 same as undefined symbols.
108 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
109 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
110 section info.
111 * write.h (fix_new): Update prototype.
112
113 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
114 md_section_align, md_undefined_symbol): Don't provide prototypes
115 if these are defined as macros.
116 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
117 section passed.
118
119 * symbols.c (symbol_new): Argument NAME is now pointer to const.
120 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
121 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
122 BFD symbol.
123 (colon): Display other/desc fields of redefined symbol only if
124 S_GET_OTHER and S_GET_DESC are defined.
125 (symbol_make): Argument NAME is now pointer to const.
126 (symbol_find, symbol_find_base): Likewise.
127 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
128 * symbols.h: Fix prototypes for new const arguments. Add
129 prototypes for BFD_ASSEMBLER S_* functions.
130
131 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
132 for changing to an existing section.
133 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
134 called by subseg_new and subseg_set.
135 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
136 given section name and subseg number.
137 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
138 new section/subsection.
139
140 * read.c: Don't include ctype.h.
141 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
142 for now; should be machine-dependent.
143
144 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
145 targets, forcing BFD use.
146
147Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
148
149 * config/tc-sparc.c: Use PARAMS macro for static function
150 declarations. Use BFD_RELOC_ macros everywhere, with
151 compatibility macros declared for non-BFD mode.
152 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
153 instead of enum reloc_type.
154 (emit_sparc_reloc): Commented-out function deleted.
155 (md_convert_frag): Deleted.
156 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
157 (md_apply_fix): Changed calling sequence (conditionally) for BFD
158 version.
159 * config/tc-sparc.h (md_convert_frag): New macro.
160
161 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
162 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
163 of referencing fields directly.
164
165 * write.c (cvt_frag_to_fill): New function; extracted from
166 write_object_file.
167 (write_object_file) [! BFD_ASSEMBLER]: Call it.
168 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
169 and set its size and flags.
170
171 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
172 fields with BFD equivalents. Turn on back-pointers, and add
173 target-specific fields at end.
174
175Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
176
177 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
178 (write_object_file): Set it here instead, so that fixup_segment
179 can see the correct value.
180
181Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
182
183 * write.c (write_object_file): Check for errors and warnings and
184 bail out before processing contents.
185 (chain_frchains_together_1): New function, does most of the work
186 of remove_subsegs.
187 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
188 (remove_subsegs) [! BFD]: Call it.
189 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
190 structures and routines.
191
192 * config/obj-elf.*: New files.
193
194 * config/mips.mt, config/rs6000.mt: Deleted.
195
196 * config/h8300.mt: Don't specify compiler here.
197
7687d89b 198 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
199 not the h8300 one.
200 * config/tc-z8k.h: Comment fix.
201
202 * write.c: Reordered some functions for better inlining.
203 (fixup_segment): Linkrelax code is no longer conditional on
204 TC_I960.
205
206Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
207
208 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
209 obj-coffbfd.h}: support for the H8/500
210
211Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
212
213 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
214 * write.c (write_object_file): Not here.
215 (fix_new): Initialize fx_addnumber.
216
217 * listing.c: Don't include target-cpu.h explicitly, since as.h
218 includes it.
219
220Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
221
222 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
223 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
224 (struct fix): Reordered fields for compactness and efficiency.
225 Converted some logical fields to 1-bit fields.
226
227 * config/obj-aout.h: Use PARAMS.
228 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
229 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
230
231 * read.c: Don't include listing.h; as.h includes it. Removed
232 DONTDEF code.
233 [BFD_ASSEMBLER]: Include subsegs.h.
234 (old_buffer, new_broken_words): Default initialization is
235 sufficient.
236
237 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
238 to 0, define stdoutput.
239 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
240 Call bfd_set_arch_mach.
241 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
242 bfd_close_all_done. Call bfd_perror on failure.
243 (output_file_append) [BFD_ASSEMBLER]: Don't define.
244
245 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
246
247 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
248 if not MANY_SEGMENTS. Define new field bfd_section if
249 BFD_ASSEMBLER.
250 (seg_info): New macro.
251
252 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
253 variables, and some irrelevant comments.
254
255 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
256 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
257 * configure.in: Permit --with-bfd-assembler now, with a warning.
258 Variable need_bfd is now a boolean, as is new variable bfd_gas.
259 Set BFDDEF and BFDLIB in Makefile when appropriate.
260
261 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
262 (main): Refer to flag_always_generate_output instead of
263 flagseen['Z'].
264
265 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
266 (*_section) [BFD_ASSEMBLER]: Define them.
267 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
268 set section flags when appropriate.
269 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
270 section is not absolute, undefined, or an assembler internal one.
271 (absolute_section, undefined_section): Always define.
272 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
273 switch statements into if-else trees.
274 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
275 SEG_BSS and SEG_DATA.
276
277 * as.h (frag_now_fix): New macro.
278 * symbols.c (colon): Use it.
279
280Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
281
282 * config/tc-mips.c: Added mips support for mips-dec-bsd.
283 * config/tc-mips.h: Added mips support for mips-dec-bsd.
284 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
285 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
286 * configure.in: Added mips support for mips-dec-bsd.
287 * atof-generic.c: Define TRUE and FALSE if not defined.
288
289Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
290
291 * version.c: Bumped version number to 1.93.05.
292
293Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
294
295 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
296 (obj_emit_lineno): Don't need return at end of void function.
297 (obj_symbol_new_hook): Ditto.
298
299 * config/tc-m68k.c: Removed some unused code.
300 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
301
302 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
303 offset field is set.
304
305Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
306
307 * config/tc-sparc.c (architecture_requested, warn_on_bump,
308 md_relax_table): Use default zero initialization.
309 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
310 latter, instead of selecting with preprocessor conditionals.
311
312Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
313
314 * configure.in: recognise all sparclite variants
315
316Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
317
318 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
319 accidentally changed to use subseg_change where it should have
320 been subseg_new.
321
6c5f9998
KR
322Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
323
0bd77bc4
KR
324 * expr.c (operand): If character other than comma or newline is a
325 logical end-of-line character, use the newline case.
0cca30f3
KR
326 From Eric Youngdale:
327 (operand): Set X_add_number field for floating-point numbers.
328 (operand): Treat zero byte as end-of-operand.
0bd77bc4 329
6c5f9998
KR
330 * configure.in (per-target): Look for with_bfd_assembler option.
331 For now, only accept "no", until the merge is done.
332
0cca30f3
KR
333 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
334 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
335 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
336 * read.c: Finish conversion to S_* macros in the VMS only
337 parts of the program. Add "const" modifier to hex_value.
338 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
339 "ifdef OBJ_VMS".
340 * expr.c: Add "const" modifier to hex_value.
341 * symbols.c: Finish conversion to S_* macros in the VMS only
342 parts of the program. Add "const" modifier to
343 md_[long,short]_jump_size. Remove declaration of const_flag
344 (which will be declared in obj-vms.h).
345 * write.c: Add "const" modifier to md_[long,short]_jump_size.
346 Fix arguments to VMS_write_object_file.
347 * config-gas.com: New file. Script for VMS systems to set up the
348 configuration to build gas for VMS, and create config.status.
349 * make-gas.com: Redone to work with new scheme.
350 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
351 stabs directives.
352 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
353 will swap bytes if needed on a big endian system. Use throughout
354 as needed.
355 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
356 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
357 types of malformed stabs. Change parsing algorithm so that we are
358 more certain of having all of the information that we need on hand.
359 * obj-vms.c (final_forward_reference): New function, used to help
360 resolve the data types of as many struct elements as possible
361 when some part of the struct is not fully defined by the compiler.
362 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
363 stabs directives.
364 * obj-vms.c (VMS_write_object_file): Define all vtable psects
365 as symbols as well in the object file. Look for external functions
366 that start with "__vt.", and turn them into variables, since the
367 g++ compiler is incapable of doing this.
368 * tc-vax.c: Add '1' option for backward compatibility with older GCC
369 versions.
370 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
371 * input-scrub.c (as_where): Fix bug where as would crash if we did not
372 have the name of the source file yet.
373 * config/ho-vms.h: define HO_VMS, not HO_VAX.
374
9d76a195
KR
375Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
376
377 * read.c (s_data): Always use "data_section", since it'll map to
378 SEG_DATA or SEG_E1 if needed.
379 (s_lcomm): Likewise with bss_section.
380 (s_fill): Use memset, not bzero.
381
382Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
383
384 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
385 handling GDB symbol table data.
386
387 * config/obj-aout.h (segment_name): Delete definition.
388 (seg_name): Delete declaration.
389 * config/obj-bout.h (segment_name, seg_name): Ditto.
390 * config/obj-vms.h (segment_name, seg_name): Ditto.
391 * config/obj-coff.h (segment_name): Ditto.
392 * config/obj-coffbfd.h (segment_name): Ditto.
393
394 * Changes for BFD_ASSEMBLER:
395 * obj.h (obj_crawl_symbol_chain): Declare only if not
396 BFD_ASSEMBLER.
397 (obj_header_append, obj_pre_write_hook): Ditto.
398 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
399 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
400 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
401 otherwise, use seg_name array.
402 (seg_name): Declare only if not BFD_ASSEMBLER.
403 (section_alignment): Declare only if not BFD_ASSEMBLER.
404 (big_section, reg_section, pass1_section, diff_section,
405 absent_section, text_section, data_section, bss_section): If
406 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
407 mapping to segT enum values.
408 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
409 if these are used or defined, if BFD_ASSEMBLER.
410 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
411 subseg_new split into two functions.
412 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
413
414 * as.h (volatile): Don't define if already defined.
415 (had_errors, had_warnings): Provide prototypes for ANSI C even if
416 NO_STDARG.
417 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
418 declare with format attribute for -Wformat checking.
419
85825401
ILT
420Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
421
422 * app.c, config/tc-*.c: Don't include read.h, since it is already
423 included by as.h.
424
425 * These are based on patches from Minh Tran-le
426 <mtranle@paris.intellicorp.com>.
427 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
428 obj_format coffbfd and gas_target i386coff for target.
429 (i[34]86-*-isc*): New host (uses sysv).
430 * config/i386aix.mt: Removed (no longer used).
431 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
432 (MINUS_G): Removed.
433 (LDFLAGS): Added, defined as -shlib.
434 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
435 * config/te-sco386.h (LOCAL_LABEL): Don't define.
436 (DOT_LABEL_PREFIX): Define.
437 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
438 name rather than L0\001.
439 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
440 local_bss_counter.
441 * symbols.c, symbols.h (local_bss_counter): Removed.
442 * write.c (write_object_file): bss no longer uses
443 local_bss_counter. Pass correct data and bss size to
444 VMS_write_object_file.
445 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
446 argument, rather than using local_bss_counter.
447 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
448 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
449 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
450 (size_section): Restored sanity check.
451 (do_relocs_for): Base section address on s_paddr rather than
452 computing it. Adjust a29k R_IHIHALF special case to account for
453 section paddr (used to require paddr to be zero). If there are no
454 reclos, set s_relptr to 0. Set relocation size in object_headers.
455 (fill_section): Always set s_vaddr here, removing
456 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
457 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
458 Set STYP_INFO for .comment.
459 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
460 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
461 (crawl_symbols): Handle 8 character section name correctly. Use
462 H_{SET,GET}_* macros.
463 (do_linenos_for): Set lineno size in object_headers.
464 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
465 set s_vaddr here. If string_byte_count remains 4, set it back to
466 0, and only write strings out if there are some. Call
467 fill_section before do_relocs_for and do_linenos_for.
468 (obj_coff_section): Handle optional quoted second argument giving
469 section characteristics.
470 (obj_coff_bss): Added to handle .bss.
471 (obj_coff_ident): Added to handle .ident (puts string in .comment
472 section).
473 (obj_coff_lcomm): Put common symbols in .bss, not .data.
474 (fixup_mdeps): Change to segment. Call frag_wane after
475 md_convert_frag.
476 (fixup_segment): Explicitly check S_IS_COMMON before making 386
477 adjustment (already happened only for common symbols, but this is
478 clearer).
479 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
480 * config/tc-i386.c (s_bss): Don't use if I386COFF.
481 (md_pseudo_table): Ignore .optim and .noopt.
482 (tc_coff_sizemachdep): New function.
483 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
484 compatibility.
485 (LOCAL_LABEL): Removed definition.
486 (DOT_LABEL_PREFIX): Defined.
487
4539aa02
KR
488Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
489
6d331d71
KR
490 * app.c (app_push): Use memcpy, not bcopy.
491 (do_scrub_next_char): For \", return " not '.
492 (symbol_chars): Now const.
493
4539aa02
KR
494 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
495 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
496
497 * config/obj-coff.h: Don't use #elif.
498
499 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
500 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
501
3eb802b5
ILT
502Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
503
504 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
505 already defined.
506
be06bdcd
SC
507Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
508
509 * app.c (do_scrub_begin): allow single quote strings if so
510 configured.
511
512 * config/*z8k*: checkpoint
513
514Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
515
516 * read.c (read_a_source_file): avoid calling xmalloc (0).
517
016e0d42
ILT
518Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
519
520 * listing.c: Call xmalloc, not malloc; don't declare malloc.
521
522 * Changes to support SCO 3.2v4:
523 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
524 SEG_BSS, fill with NOP_OPCODE.
525 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
526 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
527 using ZERO_BASED_SEGMENTS.
528 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
529 never set segment address for SEG_E2 (.bss) and don't write out
530 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
531 (obj_coff_endef): Don't merge labels or symbols awaiting forward
532 definitions, and don't merge tags with non-tags. Check for .bf
533 rather than just checking whether the second character is b and
534 the third character is f.
535 (obj_coff_val): gcc can generate values which we don't handle
536 correctly; discard information for now, since it only affects the
537 debugging information.
538 (tag_find_or_name): Don't insert tags in the symbol table.
539 (yank_symbols): Don't merge labels.
540 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
541 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
542 set segment address if ZERO_BASED_SEGMENTS.
543 (obj_coff_section): Accept and ignore a trailing quoted string, as
544 used in AT&T i386 syntax.
545 (fixup_segment): Take segment as argument. On the i386, adjust PC
546 relative addends by the segment vaddr.
547 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
548 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
549 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
550
db33220f
KR
551Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
552
016e0d42
ILT
553 * config/obj-coffbfd.c: Include libcoff.h.
554
db33220f
KR
555 * version.c: Now version 1.93.
556
dde624ef
KR
557Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
558
db33220f
KR
559 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
560 power-of-two alignment for .align.
561
dde624ef
KR
562 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
563 and leave everything else alone.
564
565Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
566
567 * Makefile.in (as.new): Don't bother saving as.old.
568
569 * write.c: Conditionalize on OBJ_VMS, not VMS.
570 (magic_number_for_object_file): Don't define if OBJ_VMS.
571
572 * config/obj-vms.c: Changes for traditional C.
573
7f2cb270
KR
574Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
575
576 * config/ho-generic.h (malloc, realloc): Declare.
577
578 * Lots of comment/whitespace changes.
579
580 * write.h (struct fix): Some fields reordered, narrowed.
581
582 * read.c (MASK_CHAR): Define using C types, not magic number.
583
584 * as.c, input-file.c: Deleted some unused code.
585
586 * app.c, as.h: Doc fix.
587
588 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
589
590 * as.h (xmalloc): Argument is long.
591
592 * xmalloc.c (error): Remove declaration; as.h takes care of it.
593
0cca30f3
KR
594 * doc/as.texinfo: Regrouped documentation of some command-line
595 options. Updated options documentation for m68k. Some minor
596 wording/punctuation changes.
597
7f2cb270
KR
598Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
599
600 * configure.in: Accept target OS "vms".
601
602 * symbols.c: Merged ANSI and non-ANSI function decls, using
603 PARAMS macro.
604
605 * xmalloc.c: Just include as.h, don't bother trying to figure out
606 other header files.
607
608 * strstr.c, strerror.c: Deleted.
609 * Makefile.in: Deleted references.
610
611 * config/tc-ns32k.c: Don't include header file for string
612 declarations; leave that to ho-*.h.
613
614Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
615
616 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
617 imported from FSF sources.
618
619 * messages.c (strerror): Declare unconditionally.
620
621 * as.h: Delete alloca and register definitions.
622
623 * config/atof-ieee.c (mask): Now const.
624
625 * obstack.c, obstack.h: Deleted.
626
627 * as.h (flag_readonly_data_in_text): New flag.
628 * as.c (main): Set it for -R.
629
630 * as.h (flag_suppress_warnings): New flag.
631 * as.c (main): Set it for -W.
632 * messages.c (as_warn): Check it instead of flagseen['W'].
633
634 * as.h (flag_always_generate_output): New flag.
635 * as.c (main): Set it for -Z.
636
637 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
638 * config/tc-a29k.h: Ditto.
639 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
640 macros.
641
642 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
643 macro.
644 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
645 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
646 write.h: Likewise.
647 * read.c: Likewise.
648
649 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
650 xrealloc from xrealloc.c.
651 * xrealloc.c: Deleted.
652 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
653
654 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
655 or vms ho- files.
656
657 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
658
659 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
660 don't initialize it with NULL.
661
662 * config/ho-vax.h (M_VAX): Deleted; was unused.
663
664 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
665 New files imported from FSF version, contributed by Eric Youngdale.
666 * README-vms-dbg, config/vms: Deleted.
667
668 * ChangeLog, config/ChangeLog: Merged.
669
670 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
671 version.
672
673 * input-file.c (input_file_open): Eliminate call to setvbuf.
674 [USG] (setbuffer): Deleted macro.
675
6efd877d
KR
676Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
677
678 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 679 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
680
681 * configure.in: No te-386bsd.h file exists; don't try to use it.
682
7f2cb270
KR
683 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
684
685 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
686 could be doing emulation.
687
0cca30f3
KR
688Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
689
690 z8000 documentation
691 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
692 all modified.
693
6efd877d
KR
694Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
695
696 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
697
698 * subsegs.h: add extern to segment_info declaration.
699
700 * read.h: added extern declarations for comment_chars,
701 line_comment_chars, and line_separator_chars.
702 read.c, app.c: removed definitions of comment_chars,
703 line_comment_chars, and line_separator_chars.
704
7f2cb270
KR
705 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
706 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
707 the register name.
708 (insert_reg): put REGISTER_PREFIX before register names before
709 putting them in the symbol table.
710 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
711 M68KCOFF.
712
713 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
714 section.
715
716 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
717 comment_chars, line_comment_chars and line_seperator_chars
718 consistently const, and always initialized them. Included read.h.
719
720Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
721
722 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
723 constant will not fit in an immediate field.
724 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
725
726Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
727
728 * obj-coff.c (callj_table): Delete global variable.
729 (obj_emit_relocations): Define it locally here, and only if
730 TC_I960 is defined.
731
732 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
733 (m68k_ip): Don't warn about bignum used as float bit-pattern.
734
735 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
736 with a single set using PARAMS macro.
737
738 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
739 of 2.
740
741 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
742
743 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
744 so widening works consistently.
745
6efd877d
KR
746Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
747
748 * version.c: Put conditional "const" before version_string, not
749 before dummy function for VMS. Now version 1.91.03.
750
751 * app.c (do_scrub_next_char): Need double-\ before `000' to show
752 printed rep of null character.
753
7f2cb270
KR
754Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
755
756 * obj-coffbfd.c (write_object_file): check return value of
757 bfd_close_all_done.
758
559d9aac
ILT
759Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
760
7f2cb270
KR
761 * Support for i386-sysv.
762 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
763 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
764 be used to set them all to zero as was done before.
765 (fill_section): segment addresses now set in write_object_file.
766 (fill_section): Don't set STYP_NOLOAD for .bss section.
767 (fixup_segment): 386 uses strange common symbol format.
768 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
769 compatibility with SVR3.2 linker.
6efd877d
KR
770 * configure.in: i386-sysv and i386-sco use coffbfd.
771
559d9aac
ILT
772 * app.c (do_scrub_next_char): discard whitespace after a label.
773
0f8b9790
DZ
774Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
775
776 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
777 hosts, use the sysv configuration for solaris2
778
7f2cb270
KR
779Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
780
781 fix i960+non-bfd coff bit rot.
782 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
783 support for C source listings. (obj_coff_endef): look in the right
784 part of the symbol for the symbol name
785
786 * tc-m68k.c (get_num): make it work for all segments, not just the
787 first three.
788
984cf2d7
ME
789Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
790
791 * configure.in: recognize i386-*-bsd emulation.
792
793Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
794
795 * configure.in: use the cpu-vendor-os triple for host and target
796
7f2cb270
KR
797Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
798
799 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
800 * tc-z8k.c: lots of bug fixes
801
802Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
803
804 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
805 #elif, since it is not supported by old compilers.
806 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
807 couple of expressions in tc-m68k.c.
808
984cf2d7
ME
809Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
810
811 * read.c (cons): If NO_RELOC is defined, use it.
812
7f2cb270
KR
813 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
814
815Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
816
817 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
818 local labels to start with a .) and set REGISTER_PREFIX to %.
819 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
820
5a0fc1d4
JG
821Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
822
823 * messages.c: Comment changes.
824
4959cb7b
KR
825Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
826
827 * as.h: Test if __STDC__ is defined only, don't test its value.
828 * messages.c: If __STDC__ is not defined, define NO_STDARG.
829
5e9d510e
BK
830Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
831
832 * listing.c (debugging_pseudo): Add stabs and stabn as things to
833 ignore.
834
7f2cb270
KR
835Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
836
837 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
838 sections starting from zero, rather than making them consecutive.
839 This makes subsequent reloc calculations easier, esp if the object
840 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
841 allocate lcomm in .data rather than in .bss. It seems that some
842 tools can't cope with a non-zero sized bss before linkage.
843
844Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
845
846 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
847 throughout. That enum no longer means what we thought it meant.
848
849 * tc-m68k.c (md_assemble, md_parse_option): Handle new
850 "-mno-688[58]1" options.
851
852 * tc-m68k.c: Added CPU32 support.
853
854Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
855
856 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
857
569dac15
JW
858Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
859
860 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
861 Change LIBDEPS dependence to LIBS.
862
efbfb612
ILT
863Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
864
865 * Makefile.in (install): if $(tooldir) exists, install as in
866 $(tooldir)/bin.
867
987b1491
ILT
868Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
869
ca5e9d49
ILT
870 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
871 .word is < -32768 or > 32767. The -J flag causes the error to be
872 ignored. This is to catch over-sized switches generated by gcc on
873 systems which don't support the broken .word hack.
874 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
875 write.c (fixup_segment): check for signed .word overflow if
876 WARN_SIGNED_OVERFLOW_WORD.
877
987b1491
ILT
878 * write.c (fixup_segment): fixed missing parens in expression
879 checking for byte or word overflow.
880
7f2cb270
KR
881 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
882 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
883 WARN_SIGNED_OVERFLOW_WORD.
884
885 * obj-coffbfd.c (fixup_segment): fixed missing parens in
886 expression checking for byte or word overflow.
887
888Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
889
890 Support for i386 coff
891 * obj-coffbfd.h : added stuff
892 * tc-i386.c (tc_coff_fix2rtype): new function
893 * tc-i386.h : new coff defines
894
b1520b1f
ILT
895Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
896
897 * input-scrub.c (input_scrub_push): call input_file_begin, not
898 input_scrub_begin.
899 messages.c (as_perror): print ": " between the passed in error and
900 the strerror, like perror does.
901
b53ccaac
ILT
902Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
903
904 * Makefile.in: use gas_target instead of modifying target_cpu.
905 From Steve Chamberlain:
906 Makefile.in: Handle m68*-*-coff*.
907 read.c, read.h: add mult argument to s_space
908
7f2cb270
KR
909 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
910 Motorola and MIT syntax; gas can now assemble either type of
911 file.
912 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
913 From Steve Chamberlain:
914 m68kcoff.mt: for m68k COFF.
915 obj-coffbfd.c: (fixup_mdeps) added
916 (size_section) removed bad sanity check
917 (fill_section) added rs_machine_dependent case
918 (write_object_file) call fixup_mdeps
919 (fixup_segment) set fx_subsy to 0.
920 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
921 handle m68k.
922 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
923 pseudo ops.
924
db4d20e5
KR
925Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
926
927 * Makefile.in (LIBS): Include opcode library.
928
e53ab768
KR
929Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
930
931 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
932 including zero are accepted, pass +0.0.
933
7e10f53c
ILT
934Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
935
936 * Makefile.in: map "as" through program_transform_name when
937 installing.
938
0cca30f3
KR
939 * doc/Makefile.in: map "as" through program_transform_name when
940 installing.
941
b0952e12
JW
942Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
943
944 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
945
7f2cb270
KR
946Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
947
948 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
949 tc-i960.c (md_ri_to_chars): Always output bout object file in
950 little endian byte order (used to use endianness of host).
951
b2f221a9
KR
952Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
953
954 * config/tc-m68k.c (init_table): Now const. Always include 68851
955 data, so that "bc" is available to 68040 cache instructions.
956 Added "tt0", "tt1", and 68ec030 variants.
957 (md_assemble): Complain if 68000 (only) and 68881 are specified.
958 (enum _register): Added TT0, TT1.
959 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
960 line number correctly in "internal error" messages. Don't print
961 architecture-mismatch message for operand errors.
962
963 From Colin Smith (colin@wrs.com):
964 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
965 than install_operand.
966
ab737e51
SC
967Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
968
969 * listing.c (buffer_line): rewind to the start of include
970 files, they might be included twice.
971
7f2cb270
KR
972 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
973
7121231f
ILT
974Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
975
976 * Makefile.in: defined TARGET_CPU for C code so that it can choose
977 one element of a family.
978
7f2cb270
KR
979 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
980
981 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
982 so that we can assemble hand-written libgcc code.
983
4772861e
KR
984Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
985
986 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
987 has already been formatted (but may still contain %-characters).
988 (as_bad): Likewise.
989
7f2cb270
KR
990Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
991
992 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
993 written with indirection on the last two operands, which can be
994 either data or address registers. Added a new operand type 'r'
995 which accepts either register type. Added '(' to notend stuff in
996 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
997
09952cd9
KR
998Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
999
1000 * as.h (enum _relax_state): Start off at one, not zero, to better
1001 catch uninitialized-variable errors.
1002 (linkrelax): Declare new variable.
1003
1004 * messages.c (warning_count, error_count): Default initializer is
1005 sufficient.
1006
1007 * write.c: Merged some declarations, using PARMS macro.
1008 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
1009 data_last_frag): No longer static.
1010 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
1011 defined, call it. Change segments before calling fixup_segment.
1012 (relax_align): If linkrelax, provide extra padding.
1013
1014 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
1015 their not having symbols associated.
1016
1017 * tc-i960.c (norelax, instrument_branches): Default initializer is
1018 sufficient.
1019 (linkrelax): Delete variable definition.
1020 (mem_fmt): Call fix_new with NO_RELOC.
1021 (tc_bout_fix_to_chars): Handle alignment relocs.
1022 (i960_handle_align): New function.
1023 * tc-i960.h (linkrelax): Delete declaration.
1024 (HANDLE_ALIGN): New macro; calls i960_handle_align.
1025 (NEED_FX_R_TYPE, NO_RELOC): New macros.
1026
a457f4d9
KR
1027Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
1028
1029 * config/sparc.mt: New file. Grab sparc opcode table from bfd
1030 library.
1031
4b857710
ILT
1032Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
1033
1034 * Makefile.in: always create installation directories. Removed
1035 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
1036 FLAGS_TO_PASS to recursive makes.
1037
0cca30f3
KR
1038 * doc/Makefile.in: always create installation directories.
1039
f7e9bc5a
SC
1040Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1041
1042 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
1043 being used with args swapped, causing occasional lossage when
1044 refilling buffers after an include file.
1045
c1c28543
KR
1046Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
1047
1048 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
1049 version. Discard bogus DONTDEF version.
1050 (as_warn, as_bad, as_fatal): Likewise.
1051
2e20e59a
KR
1052Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
1053
1054 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
1055 selected architecture, print a message saying so and listing what
1056 processors support it, rather than saying "operands mismatch".
1057
c8c7e0bf
KR
1058Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
1059
1060 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
1061
1062 * config/ho-rs6000.h (M_RS6000): Don't define it.
1063 (free): Declare it.
1064 (BROKEN_ASSERT): Define it if not __STDC__.
1065
7f2cb270
KR
1066Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
1067
1068 * sparc.mt: New file.
1069
1070Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
1071
1072 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
1073 if TN_SUN3; otherwise align to 2**N-byte bounary.
1074
7fd3560a
SC
1075Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1076
1077 * read.c (s_fill): make the .fill size clamped error a warn and
1078 fix bug where 0's were always placed.
1079
7f2cb270
KR
1080 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
1081 two bytes of any constant with 0xff:
1082
62594bd7
SC
1083Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1084
1085 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 1086 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 1087
7f2cb270
KR
1088Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
1089
1090 * tc-m68k.c (try_index): Error if index scaling specified and
1091 assembling for an older CPU than a 68020.
1092
680227f3
KR
1093Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
1094
1095 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
1096 fx_offset into account.
1097
c51ccfd5
KR
1098Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
1099
1100 * configure.in (mips host): Accept "ultrix" with version number.
1101
1102 * expr.c (floating_constant): Separate "=-" to avoid confusing
1103 ancient or broken compilers.
1104
1105 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
1106 processor/opcode mismatch, so reword the error message.
1107 (md_assemble): If no CPU has been set (even if FPU/PMMU
1108 characteristics have been), default to 68020. Don't need extra
1109 quotes around error string.
1110
14f1fc24
JW
1111Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
1112
1113 * read.c (potable): Revert sac's incorrect change made Jul 13.
1114 Align really is supposed to be ptwo not nbytes.
1115
1116Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
1117
1118 * Makefile.in: _Do_ include libiberty. (from sef)
1119
1120Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
1121
1122 * expr.c (integer_constant): Handle "0f" and "0b" label references
1123 properly.
1124
462088b8
SC
1125Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1126
1127 * write.c (fixup_segment): if relaxing, don't do anything.
1128 * config/obj-bout.[ch] : maintain the a_relaxable file header info
1129 * config/tc-i960.c: new option -linkrelax
1130
1131Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1132
1133 * expr.c (expr): allow SEG_BSS in expressions
1134 * read.c (potable): align should be nbytes, not ptwo!
1135 * write.c (write_object_file): extra glue for new bss attributes
1136 (relax_segment): SEG_BSS is ok now
1137 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
1138
7f2cb270
KR
1139Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
1140
1141 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
1142
462088b8
SC
1143Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
1144
1145 * configure.in: recognize m680x0 as having sun3 emulation mode for
1146 vxworks environment.
1147
1148
0b0b5dba
DHW
1149Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
1150
1151 * Makefile.in: Add program_suffix (parallel to program_prefix)
1152
7c2d4011
SC
1153Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1154
1155 * app.c (process_escape): new function to handle escapes the right
1156 way, (do_scrub_next_char): use new function
1157 * cond.c (s_ifdef): do ifdef/ifndef right
1158 * read.c (s_fill): make the , expressions optional like the doc
1159 says
1160 * config/tc-h8300.[ch]: better warnings
1161
90d49457
SC
1162Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1163
65bfcf2e
SC
1164 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
1165 as data0_frchainP
1166
1167 * write.c (write_object_file): various changes to handle data in
1168 the BSS segment in much the same was as stuff in the DATA segment.
1169
7f2cb270
KR
1170 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
1171 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
1172 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
1173 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
1174 it into SEG_BSS
462088b8 1175
f8701a3f
SC
1176Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1177
1178 * expr.c(expr): allow SEG_REGISTER in expressions.
1179 * read.c(pseudo_set): register expressions can be the source of a
1180 set.
1181 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
1182 goto SEG_TEXT (if a.out)
1183 * write.c (write_object_file): If a.out don't use the old way for
1184 -R.
1185 * config/obj-a.out (s_sect): complain if the user tries to use a
1186 subsegment with a value which might interfere with out -R hackery.
1187 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
1188 rather than use ugly if tree. (init_regtable): insert register
1189 names into symbol table.
1190
ebfb4167
MT
1191Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
1192
1193 * write.c (write_object_file): keep the fix_tail clean, which
1194 fixes a bug in -R where relocations were being lost.
1195
1196Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
1197
1198 * configure.in: recognize m680x0 as having sun3 emulation mode for
1199 vxworks environment.
1200
1201Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
1202
1203 * configure.in: recognize m680x0 as an m68k
1204
dfd53fe9
JW
1205Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
1206
1207 * configure.in: Recognize sparclite as a sparc variant.
1208
7f2cb270
KR
1209 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
1210 -Asparclite flag.
1211
d312e231
SC
1212Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1213
1214 * config/tc-a29k.c: lint
1215 * listing.c, expr.c: patches from Andrew Smith
1216
0cca30f3
KR
1217Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1218
1219 * doc/Makefile.in: use m4 rather than gm4.
1220
7f2cb270
KR
1221Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1222
1223 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
1224 calc the base of relocs correctly.
1225 * tc-a29k.c (parse_operand): allow expressions to be in any section.
1226
d312e231
SC
1227Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
1228
1229 * as.c, write.c: use -K rather than -k for the broken word warning
1230 option.
1231
fa493b93
RP
1232Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
1233
1234 * Makefile.in: do not print recursion lines.
1235
d96c09ed
RP
1236Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1237
1238 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
1239
1240Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
1241
1242 * write.c (write_object_file): For b.out format, round up section
1243 start addresses to match required alignment.
1244
81484684
KR
1245Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
1246
1247 * Makefile.in (install): Install into $(tooldir)/bin, since that's
1248 where gcc looks for it.
1249
3876b4c5
SEF
1250Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
1251
1252 * Makefile.in: Changed some lines to be less confusing for some
1253 makes.
1254
1255 * input-file.c: Conditionalize on _IOFBF, not VMS.
1256
1257 * read.c, write.c: Change a series of ifdef/elif to
1258 ifdef/else/ifdef etc.
1259
1260Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
1261
1262 * symbols.c (fb_label_init): fix sizeof to memset.
1263
95a925b8
RP
1264Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
1265
3876b4c5
SEF
1266 * Makefile.in: install the man page.
1267
95a925b8
RP
1268 * Makefile.in: pass down MAKEINFO explicitly on info.
1269
0cca30f3
KR
1270 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
1271
5d53038b
SC
1272Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1273
1274 * flonum-const.c: renamed flonum-konst.c to stop dos name
1275 conflict.
1276
7f2cb270
KR
1277Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
1278
1279 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
1280 tc-m68k.h to te-sun3.h.
1281
8c1b25e4
RP
1282Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
1283
1284 * configure.in: vxworks68 gets te-sun3.h.
1285
1286 * expr.c: remove limitation that local_labels_dollar or
1287 local_labels_fb must be < 10.
1288
1289 * symbols.c: remove local_labels_dollar, replace with a function
1290 interface for a sparse array. All users adjusted.
1291
7f2cb270
KR
1292 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
1293
0cca30f3
KR
1294Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1295
1296 * doc/Makefile.in: commented out line for building as-all.texinfo.
1297 This is temporary.
1298
1299 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
1300
8c1b25e4
RP
1301Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
1302
1303 * Makefile.in: added check target.
1304
1305Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1306
1307 * Makefile.in: added tooldir and program_prefix.
1308
1309Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
1310
1311 * write.{c,h} (fix_new): Make these declarations consistent.
1312
1651b22d
MT
1313Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
1314
1315 * Makefile.in (strerror.o): Add rule so that broken Sun make can
1316 work in subdirs.
1317
5373c439
SC
1318Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
1319
1320 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
1321
1322 * expr.c (operand): if can't work out what sort of operand it is,
1323 then look through FLT_CHARS for a hint.
1324
8c1b25e4
RP
1325Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
1326
1327 * Makefile.in, configure.in: removed traces of namesubdir,
1328 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
1329 copyrights to '92, changed some from Cygnus to FSF.
1330
0cca30f3
KR
1331 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
1332 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
1333 copyrights to '92, changed some from Cygnus to FSF.
1334
f24f7577
SC
1335Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
1336
14d3e47b
SC
1337 * expr.c: If an expression is single comma, then return with
1338 SEG_ABSENT rather than an error - since the sparc front end does
1339 really strange things with things like fbge,a
1340
f24f7577
SC
1341 * as.h: include bfd.h if using many sections
1342 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
1343 local labels didn't work.
1344 * listing.c (list_symbol_table): don't core dump when there's no
1345 symbol there.
1346 * write.c, write.h: call fix_new with the right number of args on
1347 the H8.
1348 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
1349 errors nices
1350
c593cf41
SC
1351Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
1352
1353 * app.c: MRI compatibility - allow single quote to start a string.
1354 * as.c: fix typo recently introduced.
1355 * as.h : Don't include aout/reloc.h - it's not right for COFF!
1356 * expr.c: Much rewriting, to accomodate MRI syntax for
1357 expressions. Also easier to read now.
1358 * listing.c: Put back defuns
1359 * read.c: modified to accept MRI syntax, put back listing pseudo
1360 ops so that an assembler built with NO_LISTING ignores list ops
1361 rather than pukes.
1362 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
1363 machine is a SPARC or a 29K.
1364 * config/obj-aout.c: added s_sect pseudo op
1365 * config/obj-coffbfd.c: lints, set the filehdr flags right and
1366 fill in the timestamp.
1367 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
1368 anymore, define all the relocs which the tc-<x> bit will use so we
1369 can translate from them to the coff types.
1370 * config/tc-a29k.c: reloc_type isn't ane enum any more
1371 * config/tc-m68k.c: Added NO_RELOC definition.
1372
2d97273c
RP
1373Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1374
c593cf41
SC
1375 * Makefile.in: put header files before C source for TAGS; remove
1376 references to non-existent syscalls.h.
1377
2d97273c
RP
1378 * read.c, write.c subsegs.c: back out the .bss changes.
1379
7f2cb270
KR
1380 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
1381
1382 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
1383
1384 * a.out.h: removed.
1385
6d5460ab
RP
1386Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
1387
1388 * symbols.c (local_label_name): symbols now start with ^A.
1389
1390 * read.c, subsegs.c, write.c obj-coff.c: added handling of
1391 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
1392 generate these sections. .align: will use NOP_OPCODE or 0
1393 for padding. This is just for being nice to the
1394 disassembler.
1395
1396 * expr.c (operand): changed to generate local label "\001L0"
1397 starting with a ^A so that it is recognized as a local label.
1398
1399 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
1400
7f2cb270
KR
1401 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
1402 i/o opcodes - inb, inw, outb and outw. string manipulation with
1403 att syntax - scmp, slod, smov, ssca, ssto.
1404
1405 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
1406 to just after .file .
1407
1408 In obj_crawl_symbol_chain() where it tries to put the external
1409 symbols apart, with the condition:
1410 (!S_IS_DEFINED(symbolP) &&
1411 !S_IS_DEBUG(symbolP) &&
1412 !SF_GET_STATICS(symbolP))
1413 it was moving too many symbols out. So I switch it back to the
1414 condition:
1415 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
1416
1417 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
1418 so that we don't use the F_RELFLG which make the linker complain
1419 that somebody has stripped the relocation info.
1420
1421 Also, the AIX ld program require that the relocation table
1422 is sorted by r_vaddr like the standard ATT assembler does.
1423
1424 [he also changed the sizeof(struct ...)'s into the coff
1425 style FOOSZ macros. I'm not sure this is right, but I can't
1426 remember why. xoxorich.]
1427
d6e344db
RP
1428Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
1429
1430 * Makefile.in, configure.in, doc: use the doc. Build it, install
1431 it, clean it, etc.
1432
eb9eacd3
RP
1433Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
1434
aa3782d2
RP
1435 * read.c: white space and comments only.
1436
f816adbc
RP
1437 * configure.in: use the new atof-ns32.c for ns32k.
1438
eb9eacd3
RP
1439 * write.c: comment change only.
1440
7f2cb270
KR
1441 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
1442 aren't yet integrated.
1443
1444 * tc-i860.[hc]: blew off the dust. Something must still be done
1445 about conflicting relocation types.
1446
1447 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
1448 real thing.
1449
1450 * tc-i960.c, tc-sparc.c: white space and comments only.
1451
1452 * tc-a29k.h: delete duplicate macro definition.
1453
1454 * new file atof-ns32k.c copied from hack's last unreleased gas.
1455
542e1629 1456Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 1457
eb9eacd3
RP
1458 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
1459 rather than abort.
1460
542e1629
RP
1461 * nearly everything. flush ChangeLog, package as gas-1.92.1.
1462 ChangeLog's prior to this are sketchy at best. I have logs.
1463 They just aren't ChangeLogs.
This page took 0.107978 seconds and 4 git commands to generate.