1 Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
3 * write.c (write_contents): Compute the relocs before writing out
5 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
6 symbol table and values right.
7 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
9 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
12 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
15 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
18 Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
20 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
22 Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
24 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
25 to be on a single line.
27 Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
29 * Makefile.in (config.h): Create file, writing out definitions of
30 target cpu, alias, and canonical name.
31 (ALL_CFLAGS): No longer define TARGET_CPU.
33 * Makefile.in (check): Print a message, instead of quitting
36 * as.c (main): Don't catch any signals, for now.
39 * Makefile.in: Generate it, putting in only the version number
41 (VERSION): New variable.
42 * as.c: Include config.h.
43 (main): Reformatted version string. Include target alias. Don't
44 print if not requested (i.e., unknown -v argument).
46 * as.c (stralloc): Deleted.
47 (main): Call strdup instead.
49 * configure.in: Handle all 68300 series chips.
50 * config/tc-m68k.c: Include config.h.
51 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
52 series cpus as defaults.
53 (md_parse_option): Accept some m68300 series CPUs as defaults.
55 Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
57 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
59 (main, got_sig): Use them.
60 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
63 Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
65 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
68 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
69 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
70 (struct loc, struct proc, struct file): Moved to tc-mips.c within
71 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
72 * config/tc-mips.c: Rearranged for ECOFF support. Added
73 prototypes for all static functions. Moved existing minimal
74 debugging format support info #ifndef OBJ_ECOFF blocks.
75 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
76 does not support a non sign extended high 16 bits reloc. Adjusted
77 all callers accordingly.
78 (tc_get_register): Renamed from get_register, and made non-static.
80 * config/mips-big.mt, config/mips-lit.mt: New files. Define
81 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
83 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
84 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
85 obj_format ecoff and gas_target mips-lit or mips-big.
87 Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
89 * version.c: Bump to version 2.0.1.
91 Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
93 * write.c (chain_frchains_together): Check that seg_info (section)
95 (write_object_file): Call obj_frob_file after setting the symbols,
98 Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
100 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
102 Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
104 * read.h: Define stringer here.
105 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
108 Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
110 * read.c (s_space): Multiply repeat count by mult, not fill.
112 Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
114 * read.c: Include ctype.h.
116 Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
118 Patches from Eric Youngdale:
119 * make-gas.com: Find obstack.obj if it's not in the current
121 * read.c (s_ignore): Don't declare is_end_of_line. It's
122 redundant, and triggers a VMS gcc compiler bug.
124 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
125 current segment as an argument. (Ignored in all cases but VMS.)
126 All callers and definitions changed.
128 Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
130 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
133 Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
135 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
136 so "~0x80" won't be rejected.
138 * config/obj-elf.c: No longer include elf/reloc.h.
139 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
140 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
142 (obj_elf_xstab): New routine.
143 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
144 argument to s_ignore. Put "#if 0" around unused code.
145 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
146 Call elf_xstabs for .stabs and .xstabs operators.
148 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
150 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
153 * configure.in: mips-bsd configuration was missing format spec.
156 * Makefile.in (Makefile): Depends on configure.in.
158 * config/tc-mips.c (append_insn): Don't check for alignment of
159 frag in memory; alignment of instructions in section is a separate
162 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
165 * listing.h: Always provide function declarations, not macros, so
168 Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
170 * CONTRIBUTORS: Update Gilmore entry.
172 Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
174 * frags.c (frag_init): New function.
175 (zero_address_frag, bss_address_frag): Now initialized at run
177 * as.c (main): Call frag_init.
179 Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
181 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
182 Don't unget ch2 if we didn't get it.
184 Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
186 * doc/Makefile.in (TEXIDIR): Updated for new layout.
188 * config/tc-sparc.c (s_common): Add support for ELF version.
189 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
190 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
192 (md_convert_frag): New macro.
194 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
195 symbol, fix the offset so "+2" isn't required.
197 * config/tc-i960.c (line_comment_chars, line_separator_chars):
198 Define as common/bss.
199 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
200 initializers are sufficient.
202 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
203 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
204 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
205 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
206 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
207 "IGNORE_DEBUG" conditional, since both branches are identical.
208 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
209 referencing symbol structure members.
210 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
212 * as.h (struct frag): Reordered a couple of fields for better
215 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
217 (write_contents) [BFD_ASSEMBLER]: New function.
218 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
219 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
220 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
221 (fixup_segment): Make sure common-section symbols get treated the
222 same as undefined symbols.
223 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
224 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
226 * write.h (fix_new): Update prototype.
228 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
229 md_section_align, md_undefined_symbol): Don't provide prototypes
230 if these are defined as macros.
231 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
234 * symbols.c (symbol_new): Argument NAME is now pointer to const.
235 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
236 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
238 (colon): Display other/desc fields of redefined symbol only if
239 S_GET_OTHER and S_GET_DESC are defined.
240 (symbol_make): Argument NAME is now pointer to const.
241 (symbol_find, symbol_find_base): Likewise.
242 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
243 * symbols.h: Fix prototypes for new const arguments. Add
244 prototypes for BFD_ASSEMBLER S_* functions.
246 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
247 for changing to an existing section.
248 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
249 called by subseg_new and subseg_set.
250 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
251 given section name and subseg number.
252 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
253 new section/subsection.
255 * read.c: Don't include ctype.h.
256 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
257 for now; should be machine-dependent.
259 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
260 targets, forcing BFD use.
262 Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
264 * config/tc-sparc.c: Use PARAMS macro for static function
265 declarations. Use BFD_RELOC_ macros everywhere, with
266 compatibility macros declared for non-BFD mode.
267 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
268 instead of enum reloc_type.
269 (emit_sparc_reloc): Commented-out function deleted.
270 (md_convert_frag): Deleted.
271 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
272 (md_apply_fix): Changed calling sequence (conditionally) for BFD
274 * config/tc-sparc.h (md_convert_frag): New macro.
276 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
277 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
278 of referencing fields directly.
280 * write.c (cvt_frag_to_fill): New function; extracted from
282 (write_object_file) [! BFD_ASSEMBLER]: Call it.
283 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
284 and set its size and flags.
286 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
287 fields with BFD equivalents. Turn on back-pointers, and add
288 target-specific fields at end.
290 Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
292 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
293 (write_object_file): Set it here instead, so that fixup_segment
294 can see the correct value.
296 Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
298 * write.c (write_object_file): Check for errors and warnings and
299 bail out before processing contents.
300 (chain_frchains_together_1): New function, does most of the work
302 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
303 (remove_subsegs) [! BFD]: Call it.
304 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
305 structures and routines.
307 * config/obj-elf.*: New files.
309 * config/mips.mt, config/rs6000.mt: Deleted.
311 * config/h8300.mt: Don't specify compiler here.
313 * config/z8k.mt: The z8k code depends on the z8k opcode table,
315 * config/tc-z8k.h: Comment fix.
317 * write.c: Reordered some functions for better inlining.
318 (fixup_segment): Linkrelax code is no longer conditional on
321 Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
323 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
324 obj-coffbfd.h}: support for the H8/500
326 Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
328 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
329 * write.c (write_object_file): Not here.
330 (fix_new): Initialize fx_addnumber.
332 * listing.c: Don't include target-cpu.h explicitly, since as.h
335 Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
337 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
338 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
339 (struct fix): Reordered fields for compactness and efficiency.
340 Converted some logical fields to 1-bit fields.
342 * config/obj-aout.h: Use PARAMS.
343 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
344 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
346 * read.c: Don't include listing.h; as.h includes it. Removed
348 [BFD_ASSEMBLER]: Include subsegs.h.
349 (old_buffer, new_broken_words): Default initialization is
352 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
353 to 0, define stdoutput.
354 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
355 Call bfd_set_arch_mach.
356 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
357 bfd_close_all_done. Call bfd_perror on failure.
358 (output_file_append) [BFD_ASSEMBLER]: Don't define.
360 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
362 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
363 if not MANY_SEGMENTS. Define new field bfd_section if
365 (seg_info): New macro.
367 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
368 variables, and some irrelevant comments.
370 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
371 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
372 * configure.in: Permit --with-bfd-assembler now, with a warning.
373 Variable need_bfd is now a boolean, as is new variable bfd_gas.
374 Set BFDDEF and BFDLIB in Makefile when appropriate.
376 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
377 (main): Refer to flag_always_generate_output instead of
380 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
381 (*_section) [BFD_ASSEMBLER]: Define them.
382 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
383 set section flags when appropriate.
384 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
385 section is not absolute, undefined, or an assembler internal one.
386 (absolute_section, undefined_section): Always define.
387 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
388 switch statements into if-else trees.
389 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
390 SEG_BSS and SEG_DATA.
392 * as.h (frag_now_fix): New macro.
393 * symbols.c (colon): Use it.
395 Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
397 * config/tc-mips.c: Added mips support for mips-dec-bsd.
398 * config/tc-mips.h: Added mips support for mips-dec-bsd.
399 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
400 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
401 * configure.in: Added mips support for mips-dec-bsd.
402 * atof-generic.c: Define TRUE and FALSE if not defined.
404 Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
406 * version.c: Bumped version number to 1.93.05.
408 Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
410 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
411 (obj_emit_lineno): Don't need return at end of void function.
412 (obj_symbol_new_hook): Ditto.
414 * config/tc-m68k.c: Removed some unused code.
415 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
417 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
420 Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
422 * config/tc-sparc.c (architecture_requested, warn_on_bump,
423 md_relax_table): Use default zero initialization.
424 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
425 latter, instead of selecting with preprocessor conditionals.
427 Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
429 * configure.in: recognise all sparclite variants
431 Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
433 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
434 accidentally changed to use subseg_change where it should have
437 Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
439 * expr.c (operand): If character other than comma or newline is a
440 logical end-of-line character, use the newline case.
442 (operand): Set X_add_number field for floating-point numbers.
443 (operand): Treat zero byte as end-of-operand.
445 * configure.in (per-target): Look for with_bfd_assembler option.
446 For now, only accept "no", until the merge is done.
448 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
449 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
450 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
451 * read.c: Finish conversion to S_* macros in the VMS only
452 parts of the program. Add "const" modifier to hex_value.
453 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
455 * expr.c: Add "const" modifier to hex_value.
456 * symbols.c: Finish conversion to S_* macros in the VMS only
457 parts of the program. Add "const" modifier to
458 md_[long,short]_jump_size. Remove declaration of const_flag
459 (which will be declared in obj-vms.h).
460 * write.c: Add "const" modifier to md_[long,short]_jump_size.
461 Fix arguments to VMS_write_object_file.
462 * config-gas.com: New file. Script for VMS systems to set up the
463 configuration to build gas for VMS, and create config.status.
464 * make-gas.com: Redone to work with new scheme.
465 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
467 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
468 will swap bytes if needed on a big endian system. Use throughout
470 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
471 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
472 types of malformed stabs. Change parsing algorithm so that we are
473 more certain of having all of the information that we need on hand.
474 * obj-vms.c (final_forward_reference): New function, used to help
475 resolve the data types of as many struct elements as possible
476 when some part of the struct is not fully defined by the compiler.
477 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
479 * obj-vms.c (VMS_write_object_file): Define all vtable psects
480 as symbols as well in the object file. Look for external functions
481 that start with "__vt.", and turn them into variables, since the
482 g++ compiler is incapable of doing this.
483 * tc-vax.c: Add '1' option for backward compatibility with older GCC
485 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
486 * input-scrub.c (as_where): Fix bug where as would crash if we did not
487 have the name of the source file yet.
488 * config/ho-vms.h: define HO_VMS, not HO_VAX.
490 Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
492 * read.c (s_data): Always use "data_section", since it'll map to
493 SEG_DATA or SEG_E1 if needed.
494 (s_lcomm): Likewise with bss_section.
495 (s_fill): Use memset, not bzero.
497 Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
499 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
500 handling GDB symbol table data.
502 * config/obj-aout.h (segment_name): Delete definition.
503 (seg_name): Delete declaration.
504 * config/obj-bout.h (segment_name, seg_name): Ditto.
505 * config/obj-vms.h (segment_name, seg_name): Ditto.
506 * config/obj-coff.h (segment_name): Ditto.
507 * config/obj-coffbfd.h (segment_name): Ditto.
509 * Changes for BFD_ASSEMBLER:
510 * obj.h (obj_crawl_symbol_chain): Declare only if not
512 (obj_header_append, obj_pre_write_hook): Ditto.
513 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
514 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
515 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
516 otherwise, use seg_name array.
517 (seg_name): Declare only if not BFD_ASSEMBLER.
518 (section_alignment): Declare only if not BFD_ASSEMBLER.
519 (big_section, reg_section, pass1_section, diff_section,
520 absent_section, text_section, data_section, bss_section): If
521 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
522 mapping to segT enum values.
523 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
524 if these are used or defined, if BFD_ASSEMBLER.
525 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
526 subseg_new split into two functions.
527 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
529 * as.h (volatile): Don't define if already defined.
530 (had_errors, had_warnings): Provide prototypes for ANSI C even if
532 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
533 declare with format attribute for -Wformat checking.
535 Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
537 * app.c, config/tc-*.c: Don't include read.h, since it is already
540 * These are based on patches from Minh Tran-le
541 <mtranle@paris.intellicorp.com>.
542 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
543 obj_format coffbfd and gas_target i386coff for target.
544 (i[34]86-*-isc*): New host (uses sysv).
545 * config/i386aix.mt: Removed (no longer used).
546 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
548 (LDFLAGS): Added, defined as -shlib.
549 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
550 * config/te-sco386.h (LOCAL_LABEL): Don't define.
551 (DOT_LABEL_PREFIX): Define.
552 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
553 name rather than L0\001.
554 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
556 * symbols.c, symbols.h (local_bss_counter): Removed.
557 * write.c (write_object_file): bss no longer uses
558 local_bss_counter. Pass correct data and bss size to
559 VMS_write_object_file.
560 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
561 argument, rather than using local_bss_counter.
562 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
563 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
564 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
565 (size_section): Restored sanity check.
566 (do_relocs_for): Base section address on s_paddr rather than
567 computing it. Adjust a29k R_IHIHALF special case to account for
568 section paddr (used to require paddr to be zero). If there are no
569 reclos, set s_relptr to 0. Set relocation size in object_headers.
570 (fill_section): Always set s_vaddr here, removing
571 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
572 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
573 Set STYP_INFO for .comment.
574 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
575 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
576 (crawl_symbols): Handle 8 character section name correctly. Use
577 H_{SET,GET}_* macros.
578 (do_linenos_for): Set lineno size in object_headers.
579 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
580 set s_vaddr here. If string_byte_count remains 4, set it back to
581 0, and only write strings out if there are some. Call
582 fill_section before do_relocs_for and do_linenos_for.
583 (obj_coff_section): Handle optional quoted second argument giving
584 section characteristics.
585 (obj_coff_bss): Added to handle .bss.
586 (obj_coff_ident): Added to handle .ident (puts string in .comment
588 (obj_coff_lcomm): Put common symbols in .bss, not .data.
589 (fixup_mdeps): Change to segment. Call frag_wane after
591 (fixup_segment): Explicitly check S_IS_COMMON before making 386
592 adjustment (already happened only for common symbols, but this is
594 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
595 * config/tc-i386.c (s_bss): Don't use if I386COFF.
596 (md_pseudo_table): Ignore .optim and .noopt.
597 (tc_coff_sizemachdep): New function.
598 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
600 (LOCAL_LABEL): Removed definition.
601 (DOT_LABEL_PREFIX): Defined.
603 Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
605 * app.c (app_push): Use memcpy, not bcopy.
606 (do_scrub_next_char): For \", return " not '.
607 (symbol_chars): Now const.
609 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
610 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
612 * config/obj-coff.h: Don't use #elif.
614 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
615 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
617 Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
619 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
622 Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
624 * app.c (do_scrub_begin): allow single quote strings if so
627 * config/*z8k*: checkpoint
629 Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
631 * read.c (read_a_source_file): avoid calling xmalloc (0).
633 Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
635 * listing.c: Call xmalloc, not malloc; don't declare malloc.
637 * Changes to support SCO 3.2v4:
638 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
639 SEG_BSS, fill with NOP_OPCODE.
640 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
641 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
642 using ZERO_BASED_SEGMENTS.
643 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
644 never set segment address for SEG_E2 (.bss) and don't write out
645 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
646 (obj_coff_endef): Don't merge labels or symbols awaiting forward
647 definitions, and don't merge tags with non-tags. Check for .bf
648 rather than just checking whether the second character is b and
649 the third character is f.
650 (obj_coff_val): gcc can generate values which we don't handle
651 correctly; discard information for now, since it only affects the
652 debugging information.
653 (tag_find_or_name): Don't insert tags in the symbol table.
654 (yank_symbols): Don't merge labels.
655 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
656 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
657 set segment address if ZERO_BASED_SEGMENTS.
658 (obj_coff_section): Accept and ignore a trailing quoted string, as
659 used in AT&T i386 syntax.
660 (fixup_segment): Take segment as argument. On the i386, adjust PC
661 relative addends by the segment vaddr.
662 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
663 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
664 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
666 Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
668 * config/obj-coffbfd.c: Include libcoff.h.
670 * version.c: Now version 1.93.
672 Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
674 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
675 power-of-two alignment for .align.
677 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
678 and leave everything else alone.
680 Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
682 * Makefile.in (as.new): Don't bother saving as.old.
684 * write.c: Conditionalize on OBJ_VMS, not VMS.
685 (magic_number_for_object_file): Don't define if OBJ_VMS.
687 * config/obj-vms.c: Changes for traditional C.
689 Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
691 * config/ho-generic.h (malloc, realloc): Declare.
693 * Lots of comment/whitespace changes.
695 * write.h (struct fix): Some fields reordered, narrowed.
697 * read.c (MASK_CHAR): Define using C types, not magic number.
699 * as.c, input-file.c: Deleted some unused code.
701 * app.c, as.h: Doc fix.
703 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
705 * as.h (xmalloc): Argument is long.
707 * xmalloc.c (error): Remove declaration; as.h takes care of it.
709 * doc/as.texinfo: Regrouped documentation of some command-line
710 options. Updated options documentation for m68k. Some minor
711 wording/punctuation changes.
713 Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
715 * configure.in: Accept target OS "vms".
717 * symbols.c: Merged ANSI and non-ANSI function decls, using
720 * xmalloc.c: Just include as.h, don't bother trying to figure out
723 * strstr.c, strerror.c: Deleted.
724 * Makefile.in: Deleted references.
726 * config/tc-ns32k.c: Don't include header file for string
727 declarations; leave that to ho-*.h.
729 Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
731 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
732 imported from FSF sources.
734 * messages.c (strerror): Declare unconditionally.
736 * as.h: Delete alloca and register definitions.
738 * config/atof-ieee.c (mask): Now const.
740 * obstack.c, obstack.h: Deleted.
742 * as.h (flag_readonly_data_in_text): New flag.
743 * as.c (main): Set it for -R.
745 * as.h (flag_suppress_warnings): New flag.
746 * as.c (main): Set it for -W.
747 * messages.c (as_warn): Check it instead of flagseen['W'].
749 * as.h (flag_always_generate_output): New flag.
750 * as.c (main): Set it for -Z.
752 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
753 * config/tc-a29k.h: Ditto.
754 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
757 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
759 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
760 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
764 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
765 xrealloc from xrealloc.c.
766 * xrealloc.c: Deleted.
767 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
769 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
772 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
774 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
775 don't initialize it with NULL.
777 * config/ho-vax.h (M_VAX): Deleted; was unused.
779 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
780 New files imported from FSF version, contributed by Eric Youngdale.
781 * README-vms-dbg, config/vms: Deleted.
783 * ChangeLog, config/ChangeLog: Merged.
785 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
788 * input-file.c (input_file_open): Eliminate call to setvbuf.
789 [USG] (setbuffer): Deleted macro.
791 Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
793 * all files: Whitespace changes for GNU indentation style, done by
794 GNU `indent'. Some cleanup still needed, especially of comments.
796 * configure.in: No te-386bsd.h file exists; don't try to use it.
798 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
800 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
801 could be doing emulation.
803 Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
806 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
809 Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
811 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
813 * subsegs.h: add extern to segment_info declaration.
815 * read.h: added extern declarations for comment_chars,
816 line_comment_chars, and line_separator_chars.
817 read.c, app.c: removed definitions of comment_chars,
818 line_comment_chars, and line_separator_chars.
820 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
821 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
823 (insert_reg): put REGISTER_PREFIX before register names before
824 putting them in the symbol table.
825 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
828 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
831 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
832 comment_chars, line_comment_chars and line_seperator_chars
833 consistently const, and always initialized them. Included read.h.
835 Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
837 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
838 constant will not fit in an immediate field.
839 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
841 Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
843 * obj-coff.c (callj_table): Delete global variable.
844 (obj_emit_relocations): Define it locally here, and only if
847 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
848 (m68k_ip): Don't warn about bignum used as float bit-pattern.
850 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
851 with a single set using PARAMS macro.
853 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
856 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
858 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
859 so widening works consistently.
861 Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
863 * version.c: Put conditional "const" before version_string, not
864 before dummy function for VMS. Now version 1.91.03.
866 * app.c (do_scrub_next_char): Need double-\ before `000' to show
867 printed rep of null character.
869 Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
871 * obj-coffbfd.c (write_object_file): check return value of
874 Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
876 * Support for i386-sysv.
877 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
878 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
879 be used to set them all to zero as was done before.
880 (fill_section): segment addresses now set in write_object_file.
881 (fill_section): Don't set STYP_NOLOAD for .bss section.
882 (fixup_segment): 386 uses strange common symbol format.
883 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
884 compatibility with SVR3.2 linker.
885 * configure.in: i386-sysv and i386-sco use coffbfd.
887 * app.c (do_scrub_next_char): discard whitespace after a label.
889 Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
891 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
892 hosts, use the sysv configuration for solaris2
894 Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
896 fix i960+non-bfd coff bit rot.
897 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
898 support for C source listings. (obj_coff_endef): look in the right
899 part of the symbol for the symbol name
901 * tc-m68k.c (get_num): make it work for all segments, not just the
904 Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
906 * configure.in: recognize i386-*-bsd emulation.
908 Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
910 * configure.in: use the cpu-vendor-os triple for host and target
912 Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
914 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
915 * tc-z8k.c: lots of bug fixes
917 Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
919 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
920 #elif, since it is not supported by old compilers.
921 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
922 couple of expressions in tc-m68k.c.
924 Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
926 * read.c (cons): If NO_RELOC is defined, use it.
928 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
930 Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
932 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
933 local labels to start with a .) and set REGISTER_PREFIX to %.
934 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
936 Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
938 * messages.c: Comment changes.
940 Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
942 * as.h: Test if __STDC__ is defined only, don't test its value.
943 * messages.c: If __STDC__ is not defined, define NO_STDARG.
945 Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
947 * listing.c (debugging_pseudo): Add stabs and stabn as things to
950 Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
952 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
953 sections starting from zero, rather than making them consecutive.
954 This makes subsequent reloc calculations easier, esp if the object
955 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
956 allocate lcomm in .data rather than in .bss. It seems that some
957 tools can't cope with a non-zero sized bss before linkage.
959 Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
961 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
962 throughout. That enum no longer means what we thought it meant.
964 * tc-m68k.c (md_assemble, md_parse_option): Handle new
965 "-mno-688[58]1" options.
967 * tc-m68k.c: Added CPU32 support.
969 Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
971 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
973 Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
975 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
976 Change LIBDEPS dependence to LIBS.
978 Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
980 * Makefile.in (install): if $(tooldir) exists, install as in
983 Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
985 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
986 .word is < -32768 or > 32767. The -J flag causes the error to be
987 ignored. This is to catch over-sized switches generated by gcc on
988 systems which don't support the broken .word hack.
989 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
990 write.c (fixup_segment): check for signed .word overflow if
991 WARN_SIGNED_OVERFLOW_WORD.
993 * write.c (fixup_segment): fixed missing parens in expression
994 checking for byte or word overflow.
996 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
997 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
998 WARN_SIGNED_OVERFLOW_WORD.
1000 * obj-coffbfd.c (fixup_segment): fixed missing parens in
1001 expression checking for byte or word overflow.
1003 Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1005 Support for i386 coff
1006 * obj-coffbfd.h : added stuff
1007 * tc-i386.c (tc_coff_fix2rtype): new function
1008 * tc-i386.h : new coff defines
1010 Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
1012 * input-scrub.c (input_scrub_push): call input_file_begin, not
1014 messages.c (as_perror): print ": " between the passed in error and
1015 the strerror, like perror does.
1017 Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
1019 * Makefile.in: use gas_target instead of modifying target_cpu.
1020 From Steve Chamberlain:
1021 Makefile.in: Handle m68*-*-coff*.
1022 read.c, read.h: add mult argument to s_space
1024 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
1025 Motorola and MIT syntax; gas can now assemble either type of
1027 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
1028 From Steve Chamberlain:
1029 m68kcoff.mt: for m68k COFF.
1030 obj-coffbfd.c: (fixup_mdeps) added
1031 (size_section) removed bad sanity check
1032 (fill_section) added rs_machine_dependent case
1033 (write_object_file) call fixup_mdeps
1034 (fixup_segment) set fx_subsy to 0.
1035 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
1037 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
1040 Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
1042 * Makefile.in (LIBS): Include opcode library.
1044 Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
1046 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
1047 including zero are accepted, pass +0.0.
1049 Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
1051 * Makefile.in: map "as" through program_transform_name when
1054 * doc/Makefile.in: map "as" through program_transform_name when
1057 Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
1059 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
1061 Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
1063 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
1064 tc-i960.c (md_ri_to_chars): Always output bout object file in
1065 little endian byte order (used to use endianness of host).
1067 Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
1069 * config/tc-m68k.c (init_table): Now const. Always include 68851
1070 data, so that "bc" is available to 68040 cache instructions.
1071 Added "tt0", "tt1", and 68ec030 variants.
1072 (md_assemble): Complain if 68000 (only) and 68881 are specified.
1073 (enum _register): Added TT0, TT1.
1074 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
1075 line number correctly in "internal error" messages. Don't print
1076 architecture-mismatch message for operand errors.
1078 From Colin Smith (colin@wrs.com):
1079 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
1080 than install_operand.
1082 Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1084 * listing.c (buffer_line): rewind to the start of include
1085 files, they might be included twice.
1087 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
1089 Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
1091 * Makefile.in: defined TARGET_CPU for C code so that it can choose
1092 one element of a family.
1094 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
1096 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
1097 so that we can assemble hand-written libgcc code.
1099 Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
1101 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
1102 has already been formatted (but may still contain %-characters).
1105 Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
1107 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
1108 written with indirection on the last two operands, which can be
1109 either data or address registers. Added a new operand type 'r'
1110 which accepts either register type. Added '(' to notend stuff in
1111 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
1113 Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
1115 * as.h (enum _relax_state): Start off at one, not zero, to better
1116 catch uninitialized-variable errors.
1117 (linkrelax): Declare new variable.
1119 * messages.c (warning_count, error_count): Default initializer is
1122 * write.c: Merged some declarations, using PARMS macro.
1123 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
1124 data_last_frag): No longer static.
1125 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
1126 defined, call it. Change segments before calling fixup_segment.
1127 (relax_align): If linkrelax, provide extra padding.
1129 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
1130 their not having symbols associated.
1132 * tc-i960.c (norelax, instrument_branches): Default initializer is
1134 (linkrelax): Delete variable definition.
1135 (mem_fmt): Call fix_new with NO_RELOC.
1136 (tc_bout_fix_to_chars): Handle alignment relocs.
1137 (i960_handle_align): New function.
1138 * tc-i960.h (linkrelax): Delete declaration.
1139 (HANDLE_ALIGN): New macro; calls i960_handle_align.
1140 (NEED_FX_R_TYPE, NO_RELOC): New macros.
1142 Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
1144 * config/sparc.mt: New file. Grab sparc opcode table from bfd
1147 Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
1149 * Makefile.in: always create installation directories. Removed
1150 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
1151 FLAGS_TO_PASS to recursive makes.
1153 * doc/Makefile.in: always create installation directories.
1155 Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1157 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
1158 being used with args swapped, causing occasional lossage when
1159 refilling buffers after an include file.
1161 Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
1163 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
1164 version. Discard bogus DONTDEF version.
1165 (as_warn, as_bad, as_fatal): Likewise.
1167 Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
1169 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
1170 selected architecture, print a message saying so and listing what
1171 processors support it, rather than saying "operands mismatch".
1173 Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
1175 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
1177 * config/ho-rs6000.h (M_RS6000): Don't define it.
1179 (BROKEN_ASSERT): Define it if not __STDC__.
1181 Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
1183 * sparc.mt: New file.
1185 Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
1187 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
1188 if TN_SUN3; otherwise align to 2**N-byte bounary.
1190 Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1192 * read.c (s_fill): make the .fill size clamped error a warn and
1193 fix bug where 0's were always placed.
1195 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
1196 two bytes of any constant with 0xff:
1198 Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1200 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
1201 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
1203 Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
1205 * tc-m68k.c (try_index): Error if index scaling specified and
1206 assembling for an older CPU than a 68020.
1208 Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
1210 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
1211 fx_offset into account.
1213 Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
1215 * configure.in (mips host): Accept "ultrix" with version number.
1217 * expr.c (floating_constant): Separate "=-" to avoid confusing
1218 ancient or broken compilers.
1220 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
1221 processor/opcode mismatch, so reword the error message.
1222 (md_assemble): If no CPU has been set (even if FPU/PMMU
1223 characteristics have been), default to 68020. Don't need extra
1224 quotes around error string.
1226 Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
1228 * read.c (potable): Revert sac's incorrect change made Jul 13.
1229 Align really is supposed to be ptwo not nbytes.
1231 Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
1233 * Makefile.in: _Do_ include libiberty. (from sef)
1235 Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
1237 * expr.c (integer_constant): Handle "0f" and "0b" label references
1240 Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1242 * write.c (fixup_segment): if relaxing, don't do anything.
1243 * config/obj-bout.[ch] : maintain the a_relaxable file header info
1244 * config/tc-i960.c: new option -linkrelax
1246 Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1248 * expr.c (expr): allow SEG_BSS in expressions
1249 * read.c (potable): align should be nbytes, not ptwo!
1250 * write.c (write_object_file): extra glue for new bss attributes
1251 (relax_segment): SEG_BSS is ok now
1252 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
1254 Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
1256 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
1258 Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
1260 * configure.in: recognize m680x0 as having sun3 emulation mode for
1261 vxworks environment.
1264 Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
1266 * Makefile.in: Add program_suffix (parallel to program_prefix)
1268 Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1270 * app.c (process_escape): new function to handle escapes the right
1271 way, (do_scrub_next_char): use new function
1272 * cond.c (s_ifdef): do ifdef/ifndef right
1273 * read.c (s_fill): make the , expressions optional like the doc
1275 * config/tc-h8300.[ch]: better warnings
1277 Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1279 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
1282 * write.c (write_object_file): various changes to handle data in
1283 the BSS segment in much the same was as stuff in the DATA segment.
1285 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
1286 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
1287 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
1288 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
1291 Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1293 * expr.c(expr): allow SEG_REGISTER in expressions.
1294 * read.c(pseudo_set): register expressions can be the source of a
1296 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
1297 goto SEG_TEXT (if a.out)
1298 * write.c (write_object_file): If a.out don't use the old way for
1300 * config/obj-a.out (s_sect): complain if the user tries to use a
1301 subsegment with a value which might interfere with out -R hackery.
1302 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
1303 rather than use ugly if tree. (init_regtable): insert register
1304 names into symbol table.
1306 Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
1308 * write.c (write_object_file): keep the fix_tail clean, which
1309 fixes a bug in -R where relocations were being lost.
1311 Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
1313 * configure.in: recognize m680x0 as having sun3 emulation mode for
1314 vxworks environment.
1316 Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
1318 * configure.in: recognize m680x0 as an m68k
1320 Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
1322 * configure.in: Recognize sparclite as a sparc variant.
1324 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
1327 Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1329 * config/tc-a29k.c: lint
1330 * listing.c, expr.c: patches from Andrew Smith
1332 Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1334 * doc/Makefile.in: use m4 rather than gm4.
1336 Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1338 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
1339 calc the base of relocs correctly.
1340 * tc-a29k.c (parse_operand): allow expressions to be in any section.
1342 Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
1344 * as.c, write.c: use -K rather than -k for the broken word warning
1347 Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
1349 * Makefile.in: do not print recursion lines.
1351 Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1353 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
1355 Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
1357 * write.c (write_object_file): For b.out format, round up section
1358 start addresses to match required alignment.
1360 Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
1362 * Makefile.in (install): Install into $(tooldir)/bin, since that's
1363 where gcc looks for it.
1365 Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
1367 * Makefile.in: Changed some lines to be less confusing for some
1370 * input-file.c: Conditionalize on _IOFBF, not VMS.
1372 * read.c, write.c: Change a series of ifdef/elif to
1373 ifdef/else/ifdef etc.
1375 Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
1377 * symbols.c (fb_label_init): fix sizeof to memset.
1379 Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
1381 * Makefile.in: install the man page.
1383 * Makefile.in: pass down MAKEINFO explicitly on info.
1385 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
1387 Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
1389 * flonum-const.c: renamed flonum-konst.c to stop dos name
1392 Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
1394 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
1395 tc-m68k.h to te-sun3.h.
1397 Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
1399 * configure.in: vxworks68 gets te-sun3.h.
1401 * expr.c: remove limitation that local_labels_dollar or
1402 local_labels_fb must be < 10.
1404 * symbols.c: remove local_labels_dollar, replace with a function
1405 interface for a sparse array. All users adjusted.
1407 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
1409 Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1411 * doc/Makefile.in: commented out line for building as-all.texinfo.
1414 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
1416 Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
1418 * Makefile.in: added check target.
1420 Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1422 * Makefile.in: added tooldir and program_prefix.
1424 Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
1426 * write.{c,h} (fix_new): Make these declarations consistent.
1428 Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
1430 * Makefile.in (strerror.o): Add rule so that broken Sun make can
1433 Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
1435 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
1437 * expr.c (operand): if can't work out what sort of operand it is,
1438 then look through FLT_CHARS for a hint.
1440 Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
1442 * Makefile.in, configure.in: removed traces of namesubdir,
1443 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
1444 copyrights to '92, changed some from Cygnus to FSF.
1446 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
1447 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
1448 copyrights to '92, changed some from Cygnus to FSF.
1450 Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
1452 * expr.c: If an expression is single comma, then return with
1453 SEG_ABSENT rather than an error - since the sparc front end does
1454 really strange things with things like fbge,a
1456 * as.h: include bfd.h if using many sections
1457 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
1458 local labels didn't work.
1459 * listing.c (list_symbol_table): don't core dump when there's no
1461 * write.c, write.h: call fix_new with the right number of args on
1463 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
1466 Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
1468 * app.c: MRI compatibility - allow single quote to start a string.
1469 * as.c: fix typo recently introduced.
1470 * as.h : Don't include aout/reloc.h - it's not right for COFF!
1471 * expr.c: Much rewriting, to accomodate MRI syntax for
1472 expressions. Also easier to read now.
1473 * listing.c: Put back defuns
1474 * read.c: modified to accept MRI syntax, put back listing pseudo
1475 ops so that an assembler built with NO_LISTING ignores list ops
1477 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
1478 machine is a SPARC or a 29K.
1479 * config/obj-aout.c: added s_sect pseudo op
1480 * config/obj-coffbfd.c: lints, set the filehdr flags right and
1481 fill in the timestamp.
1482 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
1483 anymore, define all the relocs which the tc-<x> bit will use so we
1484 can translate from them to the coff types.
1485 * config/tc-a29k.c: reloc_type isn't ane enum any more
1486 * config/tc-m68k.c: Added NO_RELOC definition.
1488 Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
1490 * Makefile.in: put header files before C source for TAGS; remove
1491 references to non-existent syscalls.h.
1493 * read.c, write.c subsegs.c: back out the .bss changes.
1495 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
1497 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
1501 Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
1503 * symbols.c (local_label_name): symbols now start with ^A.
1505 * read.c, subsegs.c, write.c obj-coff.c: added handling of
1506 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
1507 generate these sections. .align: will use NOP_OPCODE or 0
1508 for padding. This is just for being nice to the
1511 * expr.c (operand): changed to generate local label "\001L0"
1512 starting with a ^A so that it is recognized as a local label.
1514 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
1516 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
1517 i/o opcodes - inb, inw, outb and outw. string manipulation with
1518 att syntax - scmp, slod, smov, ssca, ssto.
1520 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
1521 to just after .file .
1523 In obj_crawl_symbol_chain() where it tries to put the external
1524 symbols apart, with the condition:
1525 (!S_IS_DEFINED(symbolP) &&
1526 !S_IS_DEBUG(symbolP) &&
1527 !SF_GET_STATICS(symbolP))
1528 it was moving too many symbols out. So I switch it back to the
1530 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
1532 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
1533 so that we don't use the F_RELFLG which make the linker complain
1534 that somebody has stripped the relocation info.
1536 Also, the AIX ld program require that the relocation table
1537 is sorted by r_vaddr like the standard ATT assembler does.
1539 [he also changed the sizeof(struct ...)'s into the coff
1540 style FOOSZ macros. I'm not sure this is right, but I can't
1541 remember why. xoxorich.]
1543 Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
1545 * Makefile.in, configure.in, doc: use the doc. Build it, install
1548 Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
1550 * read.c: white space and comments only.
1552 * configure.in: use the new atof-ns32.c for ns32k.
1554 * write.c: comment change only.
1556 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
1557 aren't yet integrated.
1559 * tc-i860.[hc]: blew off the dust. Something must still be done
1560 about conflicting relocation types.
1562 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
1565 * tc-i960.c, tc-sparc.c: white space and comments only.
1567 * tc-a29k.h: delete duplicate macro definition.
1569 * new file atof-ns32k.c copied from hack's last unreleased gas.
1571 Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
1573 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
1576 * nearly everything. flush ChangeLog, package as gas-1.92.1.
1577 ChangeLog's prior to this are sketchy at best. I have logs.
1578 They just aren't ChangeLogs.