3 * expr.c (operand): If character other than comma or newline is a
4 logical end-of-line character, use the newline case.
6 * configure.in (per-target): Look for with_bfd_assembler option.
7 For now, only accept "no", until the merge is done.
11 * read.c (s_data): Always use "data_section", since it'll map to
12 SEG_DATA or SEG_E1 if needed.
13 (s_lcomm): Likewise with bss_section.
14 (s_fill): Use memset, not bzero.
18 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
19 handling GDB symbol table data.
21 * config/obj-aout.h (segment_name): Delete definition.
22 (seg_name): Delete declaration.
23 * config/obj-bout.h (segment_name, seg_name): Ditto.
24 * config/obj-vms.h (segment_name, seg_name): Ditto.
25 * config/obj-coff.h (segment_name): Ditto.
26 * config/obj-coffbfd.h (segment_name): Ditto.
28 * Changes for BFD_ASSEMBLER:
29 * obj.h (obj_crawl_symbol_chain): Declare only if not
31 (obj_header_append, obj_pre_write_hook): Ditto.
32 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
33 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
34 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
35 otherwise, use seg_name array.
36 (seg_name): Declare only if not BFD_ASSEMBLER.
37 (section_alignment): Declare only if not BFD_ASSEMBLER.
38 (big_section, reg_section, pass1_section, diff_section,
39 absent_section, text_section, data_section, bss_section): If
40 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
41 mapping to segT enum values.
42 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
43 if these are used or defined, if BFD_ASSEMBLER.
44 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
45 subseg_new split into two functions.
46 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
48 * as.h (volatile): Don't define if already defined.
49 (had_errors, had_warnings): Provide prototypes for ANSI C even if
51 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
52 declare with format attribute for -Wformat checking.
56 * app.c, config/tc-*.c: Don't include read.h, since it is already
59 * These are based on patches from Minh Tran-le
61 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
62 obj_format coffbfd and gas_target i386coff for target.
63 (i[34]86-*-isc*): New host (uses sysv).
64 * config/i386aix.mt: Removed (no longer used).
65 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
67 (LDFLAGS): Added, defined as -shlib.
68 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
69 * config/te-sco386.h (LOCAL_LABEL): Don't define.
70 (DOT_LABEL_PREFIX): Define.
71 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
72 name rather than L0\001.
73 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
75 * symbols.c, symbols.h (local_bss_counter): Removed.
76 * write.c (write_object_file): bss no longer uses
77 local_bss_counter. Pass correct data and bss size to
78 VMS_write_object_file.
79 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
80 argument, rather than using local_bss_counter.
81 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
82 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
83 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
84 (size_section): Restored sanity check.
85 (do_relocs_for): Base section address on s_paddr rather than
86 computing it. Adjust a29k R_IHIHALF special case to account for
87 section paddr (used to require paddr to be zero). If there are no
88 reclos, set s_relptr to 0. Set relocation size in object_headers.
89 (fill_section): Always set s_vaddr here, removing
90 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
91 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
92 Set STYP_INFO for .comment.
93 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
94 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
95 (crawl_symbols): Handle 8 character section name correctly. Use
97 (do_linenos_for): Set lineno size in object_headers.
98 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
99 set s_vaddr here. If string_byte_count remains 4, set it back to
100 0, and only write strings out if there are some. Call
101 fill_section before do_relocs_for and do_linenos_for.
102 (obj_coff_section): Handle optional quoted second argument giving
103 section characteristics.
104 (obj_coff_bss): Added to handle .bss.
105 (obj_coff_ident): Added to handle .ident (puts string in .comment
107 (obj_coff_lcomm): Put common symbols in .bss, not .data.
108 (fixup_mdeps): Change to segment. Call frag_wane after
110 (fixup_segment): Explicitly check S_IS_COMMON before making 386
111 adjustment (already happened only for common symbols, but this is
113 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
114 * config/tc-i386.c (s_bss): Don't use if I386COFF.
115 (md_pseudo_table): Ignore .optim and .noopt.
116 (tc_coff_sizemachdep): New function.
117 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
119 (LOCAL_LABEL): Removed definition.
120 (DOT_LABEL_PREFIX): Defined.
124 * app.c (app_push): Use memcpy, not bcopy.
125 (do_scrub_next_char): For \", return " not '.
126 (symbol_chars): Now const.
128 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
129 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
131 * config/obj-coff.h: Don't use #elif.
133 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
138 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
143 * app.c (do_scrub_begin): allow single quote strings if so
146 * config/*z8k*: checkpoint
150 * read.c (read_a_source_file): avoid calling xmalloc (0).
154 * listing.c: Call xmalloc, not malloc; don't declare malloc.
156 * Changes to support SCO 3.2v4:
157 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
158 SEG_BSS, fill with NOP_OPCODE.
159 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
160 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
161 using ZERO_BASED_SEGMENTS.
162 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
163 never set segment address for SEG_E2 (.bss) and don't write out
164 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
165 (obj_coff_endef): Don't merge labels or symbols awaiting forward
166 definitions, and don't merge tags with non-tags. Check for .bf
167 rather than just checking whether the second character is b and
168 the third character is f.
169 (obj_coff_val): gcc can generate values which we don't handle
170 correctly; discard information for now, since it only affects the
171 debugging information.
172 (tag_find_or_name): Don't insert tags in the symbol table.
173 (yank_symbols): Don't merge labels.
174 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
175 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
176 set segment address if ZERO_BASED_SEGMENTS.
177 (obj_coff_section): Accept and ignore a trailing quoted string, as
178 used in AT&T i386 syntax.
179 (fixup_segment): Take segment as argument. On the i386, adjust PC
180 relative addends by the segment vaddr.
181 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
182 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
183 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
187 * config/obj-coffbfd.c: Include libcoff.h.
189 * version.c: Now version 1.93.
193 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
194 power-of-two alignment for .align.
196 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
197 and leave everything else alone.
201 * Makefile.in (as.new): Don't bother saving as.old.
203 * write.c: Conditionalize on OBJ_VMS, not VMS.
204 (magic_number_for_object_file): Don't define if OBJ_VMS.
206 * config/obj-vms.c: Changes for traditional C.
210 * config/ho-generic.h (malloc, realloc): Declare.
212 * Lots of comment/whitespace changes.
214 * write.h (struct fix): Some fields reordered, narrowed.
216 * read.c (MASK_CHAR): Define using C types, not magic number.
218 * as.c, input-file.c: Deleted some unused code.
220 * app.c, as.h: Doc fix.
222 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
224 * as.h (xmalloc): Argument is long.
226 * xmalloc.c (error): Remove declaration; as.h takes care of it.
230 * configure.in: Accept target OS "vms".
232 * symbols.c: Merged ANSI and non-ANSI function decls, using
235 * xmalloc.c: Just include as.h, don't bother trying to figure out
238 * strstr.c, strerror.c: Deleted.
239 * Makefile.in: Deleted references.
241 * config/tc-ns32k.c: Don't include header file for string
242 declarations; leave that to ho-*.h.
244 Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
246 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
247 imported from FSF sources.
249 * messages.c (strerror): Declare unconditionally.
251 * as.h: Delete alloca and register definitions.
253 * config/atof-ieee.c (mask): Now const.
255 * obstack.c, obstack.h: Deleted.
257 * as.h (flag_readonly_data_in_text): New flag.
258 * as.c (main): Set it for -R.
260 * as.h (flag_suppress_warnings): New flag.
261 * as.c (main): Set it for -W.
262 * messages.c (as_warn): Check it instead of flagseen['W'].
264 * as.h (flag_always_generate_output): New flag.
265 * as.c (main): Set it for -Z.
267 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
268 * config/tc-a29k.h: Ditto.
269 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
272 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
274 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
275 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
279 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
280 xrealloc from xrealloc.c.
281 * xrealloc.c: Deleted.
282 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
284 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
287 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
289 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
290 don't initialize it with NULL.
292 * config/ho-vax.h (M_VAX): Deleted; was unused.
294 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
295 New files imported from FSF version, contributed by Eric Youngdale.
296 * README-vms-dbg, config/vms: Deleted.
298 * ChangeLog, config/ChangeLog: Merged.
300 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
303 * input-file.c (input_file_open): Eliminate call to setvbuf.
304 [USG] (setbuffer): Deleted macro.
308 * all files: Whitespace changes for GNU indentation style, done by
309 GNU `indent'. Some cleanup still needed, especially of comments.
311 * configure.in: No te-386bsd.h file exists; don't try to use it.
313 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
315 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
316 could be doing emulation.
320 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
322 * subsegs.h: add extern to segment_info declaration.
324 * read.h: added extern declarations for comment_chars,
325 line_comment_chars, and line_separator_chars.
326 read.c, app.c: removed definitions of comment_chars,
327 line_comment_chars, and line_separator_chars.
329 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
330 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
332 (insert_reg): put REGISTER_PREFIX before register names before
333 putting them in the symbol table.
334 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
337 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
340 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
341 comment_chars, line_comment_chars and line_seperator_chars
342 consistently const, and always initialized them. Included read.h.
346 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
347 constant will not fit in an immediate field.
348 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
352 * obj-coff.c (callj_table): Delete global variable.
353 (obj_emit_relocations): Define it locally here, and only if
356 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
357 (m68k_ip): Don't warn about bignum used as float bit-pattern.
359 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
360 with a single set using PARAMS macro.
362 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
365 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
367 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
368 so widening works consistently.
372 * version.c: Put conditional "const" before version_string, not
373 before dummy function for VMS. Now version 1.91.03.
375 * app.c (do_scrub_next_char): Need double-\ before `000' to show
376 printed rep of null character.
380 * obj-coffbfd.c (write_object_file): check return value of
385 * Support for i386-sysv.
386 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
387 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
388 be used to set them all to zero as was done before.
389 (fill_section): segment addresses now set in write_object_file.
390 (fill_section): Don't set STYP_NOLOAD for .bss section.
391 (fixup_segment): 386 uses strange common symbol format.
392 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
393 compatibility with SVR3.2 linker.
394 * configure.in: i386-sysv and i386-sco use coffbfd.
396 * app.c (do_scrub_next_char): discard whitespace after a label.
398 Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
400 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
401 hosts, use the sysv configuration for solaris2
405 fix i960+non-bfd coff bit rot.
406 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
407 support for C source listings. (obj_coff_endef): look in the right
408 part of the symbol for the symbol name
410 * tc-m68k.c (get_num): make it work for all segments, not just the
413 Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
415 * configure.in: recognize i386-*-bsd emulation.
417 Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
419 * configure.in: use the cpu-vendor-os triple for host and target
423 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
424 * tc-z8k.c: lots of bug fixes
428 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
429 #elif, since it is not supported by old compilers.
430 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
431 couple of expressions in tc-m68k.c.
435 * read.c (cons): If NO_RELOC is defined, use it.
437 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
441 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
442 local labels to start with a .) and set REGISTER_PREFIX to %.
443 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
447 * messages.c: Comment changes.
451 * as.h: Test if __STDC__ is defined only, don't test its value.
452 * messages.c: If __STDC__ is not defined, define NO_STDARG.
456 * listing.c (debugging_pseudo): Add stabs and stabn as things to
461 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
462 sections starting from zero, rather than making them consecutive.
463 This makes subsequent reloc calculations easier, esp if the object
464 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
465 allocate lcomm in .data rather than in .bss. It seems that some
466 tools can't cope with a non-zero sized bss before linkage.
470 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
471 throughout. That enum no longer means what we thought it meant.
473 * tc-m68k.c (md_assemble, md_parse_option): Handle new
474 "-mno-688[58]1" options.
476 * tc-m68k.c: Added CPU32 support.
480 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
484 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
485 Change LIBDEPS dependence to LIBS.
489 * Makefile.in (install): if $(tooldir) exists, install as in
494 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
495 .word is < -32768 or > 32767. The -J flag causes the error to be
496 ignored. This is to catch over-sized switches generated by gcc on
497 systems which don't support the broken .word hack.
498 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
499 write.c (fixup_segment): check for signed .word overflow if
500 WARN_SIGNED_OVERFLOW_WORD.
502 * write.c (fixup_segment): fixed missing parens in expression
503 checking for byte or word overflow.
505 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
506 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
507 WARN_SIGNED_OVERFLOW_WORD.
509 * obj-coffbfd.c (fixup_segment): fixed missing parens in
510 expression checking for byte or word overflow.
514 Support for i386 coff
515 * obj-coffbfd.h : added stuff
516 * tc-i386.c (tc_coff_fix2rtype): new function
517 * tc-i386.h : new coff defines
521 * input-scrub.c (input_scrub_push): call input_file_begin, not
523 messages.c (as_perror): print ": " between the passed in error and
524 the strerror, like perror does.
528 * Makefile.in: use gas_target instead of modifying target_cpu.
529 From Steve Chamberlain:
530 Makefile.in: Handle m68*-*-coff*.
531 read.c, read.h: add mult argument to s_space
533 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
534 Motorola and MIT syntax; gas can now assemble either type of
536 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
537 From Steve Chamberlain:
538 m68kcoff.mt: for m68k COFF.
539 obj-coffbfd.c: (fixup_mdeps) added
540 (size_section) removed bad sanity check
541 (fill_section) added rs_machine_dependent case
542 (write_object_file) call fixup_mdeps
543 (fixup_segment) set fx_subsy to 0.
544 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
546 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
551 * Makefile.in (LIBS): Include opcode library.
555 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
556 including zero are accepted, pass +0.0.
560 * Makefile.in: map "as" through program_transform_name when
565 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
569 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
570 tc-i960.c (md_ri_to_chars): Always output bout object file in
571 little endian byte order (used to use endianness of host).
575 * config/tc-m68k.c (init_table): Now const. Always include 68851
576 data, so that "bc" is available to 68040 cache instructions.
577 Added "tt0", "tt1", and 68ec030 variants.
578 (md_assemble): Complain if 68000 (only) and 68881 are specified.
579 (enum _register): Added TT0, TT1.
580 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
581 line number correctly in "internal error" messages. Don't print
582 architecture-mismatch message for operand errors.
585 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
586 than install_operand.
590 * listing.c (buffer_line): rewind to the start of include
591 files, they might be included twice.
593 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
597 * Makefile.in: defined TARGET_CPU for C code so that it can choose
598 one element of a family.
600 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
602 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
603 so that we can assemble hand-written libgcc code.
607 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
608 has already been formatted (but may still contain %-characters).
613 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
614 written with indirection on the last two operands, which can be
615 either data or address registers. Added a new operand type 'r'
616 which accepts either register type. Added '(' to notend stuff in
617 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
621 * as.h (enum _relax_state): Start off at one, not zero, to better
622 catch uninitialized-variable errors.
623 (linkrelax): Declare new variable.
625 * messages.c (warning_count, error_count): Default initializer is
628 * write.c: Merged some declarations, using PARMS macro.
629 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
630 data_last_frag): No longer static.
631 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
632 defined, call it. Change segments before calling fixup_segment.
633 (relax_align): If linkrelax, provide extra padding.
635 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
636 their not having symbols associated.
638 * tc-i960.c (norelax, instrument_branches): Default initializer is
640 (linkrelax): Delete variable definition.
641 (mem_fmt): Call fix_new with NO_RELOC.
642 (tc_bout_fix_to_chars): Handle alignment relocs.
643 (i960_handle_align): New function.
644 * tc-i960.h (linkrelax): Delete declaration.
645 (HANDLE_ALIGN): New macro; calls i960_handle_align.
646 (NEED_FX_R_TYPE, NO_RELOC): New macros.
650 * config/sparc.mt: New file. Grab sparc opcode table from bfd
655 * Makefile.in: always create installation directories. Removed
656 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
657 FLAGS_TO_PASS to recursive makes.
661 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
662 being used with args swapped, causing occasional lossage when
663 refilling buffers after an include file.
667 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
668 version. Discard bogus DONTDEF version.
669 (as_warn, as_bad, as_fatal): Likewise.
673 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
674 selected architecture, print a message saying so and listing what
675 processors support it, rather than saying "operands mismatch".
679 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
681 * config/ho-rs6000.h (M_RS6000): Don't define it.
683 (BROKEN_ASSERT): Define it if not __STDC__.
687 * sparc.mt: New file.
691 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
692 if TN_SUN3; otherwise align to 2**N-byte bounary.
696 * read.c (s_fill): make the .fill size clamped error a warn and
697 fix bug where 0's were always placed.
699 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
700 two bytes of any constant with 0xff:
704 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
705 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
707 Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
709 * tc-m68k.c (try_index): Error if index scaling specified and
710 assembling for an older CPU than a 68020.
714 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
715 fx_offset into account.
719 * configure.in (mips host): Accept "ultrix" with version number.
721 * expr.c (floating_constant): Separate "=-" to avoid confusing
722 ancient or broken compilers.
724 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
725 processor/opcode mismatch, so reword the error message.
726 (md_assemble): If no CPU has been set (even if FPU/PMMU
727 characteristics have been), default to 68020. Don't need extra
728 quotes around error string.
732 * read.c (potable): Revert sac's incorrect change made Jul 13.
733 Align really is supposed to be ptwo not nbytes.
737 * Makefile.in: _Do_ include libiberty. (from sef)
741 * expr.c (integer_constant): Handle "0f" and "0b" label references
746 * write.c (fixup_segment): if relaxing, don't do anything.
747 * config/obj-bout.[ch] : maintain the a_relaxable file header info
748 * config/tc-i960.c: new option -linkrelax
752 * expr.c (expr): allow SEG_BSS in expressions
753 * read.c (potable): align should be nbytes, not ptwo!
754 * write.c (write_object_file): extra glue for new bss attributes
755 (relax_segment): SEG_BSS is ok now
756 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
760 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
764 * configure.in: recognize m680x0 as having sun3 emulation mode for
770 * Makefile.in: Add program_suffix (parallel to program_prefix)
774 * app.c (process_escape): new function to handle escapes the right
775 way, (do_scrub_next_char): use new function
776 * cond.c (s_ifdef): do ifdef/ifndef right
777 * read.c (s_fill): make the , expressions optional like the doc
779 * config/tc-h8300.[ch]: better warnings
783 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
786 * write.c (write_object_file): various changes to handle data in
787 the BSS segment in much the same was as stuff in the DATA segment.
789 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
790 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
791 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
792 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
797 * expr.c(expr): allow SEG_REGISTER in expressions.
798 * read.c(pseudo_set): register expressions can be the source of a
800 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
801 goto SEG_TEXT (if a.out)
802 * write.c (write_object_file): If a.out don't use the old way for
804 * config/obj-a.out (s_sect): complain if the user tries to use a
805 subsegment with a value which might interfere with out -R hackery.
806 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
807 rather than use ugly if tree. (init_regtable): insert register
808 names into symbol table.
812 * write.c (write_object_file): keep the fix_tail clean, which
813 fixes a bug in -R where relocations were being lost.
817 * configure.in: recognize m680x0 as having sun3 emulation mode for
822 * configure.in: recognize m680x0 as an m68k
826 * configure.in: Recognize sparclite as a sparc variant.
828 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
833 * config/tc-a29k.c: lint
834 * listing.c, expr.c: patches from Andrew Smith
838 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
839 calc the base of relocs correctly.
840 * tc-a29k.c (parse_operand): allow expressions to be in any section.
844 * as.c, write.c: use -K rather than -k for the broken word warning
849 * Makefile.in: do not print recursion lines.
853 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
857 * write.c (write_object_file): For b.out format, round up section
858 start addresses to match required alignment.
862 * Makefile.in (install): Install into $(tooldir)/bin, since that's
863 where gcc looks for it.
867 * Makefile.in: Changed some lines to be less confusing for some
870 * input-file.c: Conditionalize on _IOFBF, not VMS.
872 * read.c, write.c: Change a series of ifdef/elif to
873 ifdef/else/ifdef etc.
877 * symbols.c (fb_label_init): fix sizeof to memset.
881 * Makefile.in: install the man page.
883 * Makefile.in: pass down MAKEINFO explicitly on info.
887 * flonum-const.c: renamed flonum-konst.c to stop dos name
892 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
893 tc-m68k.h to te-sun3.h.
897 * configure.in: vxworks68 gets te-sun3.h.
899 * expr.c: remove limitation that local_labels_dollar or
900 local_labels_fb must be < 10.
902 * symbols.c: remove local_labels_dollar, replace with a function
903 interface for a sparse array. All users adjusted.
905 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
909 * Makefile.in: added check target.
913 * Makefile.in: added tooldir and program_prefix.
917 * write.{c,h} (fix_new): Make these declarations consistent.
921 * Makefile.in (strerror.o): Add rule so that broken Sun make can
924 Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
926 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
928 * expr.c (operand): if can't work out what sort of operand it is,
929 then look through FLT_CHARS for a hint.
933 * Makefile.in, configure.in: removed traces of namesubdir,
934 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
935 copyrights to '92, changed some from Cygnus to FSF.
937 Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
939 * expr.c: If an expression is single comma, then return with
940 SEG_ABSENT rather than an error - since the sparc front end does
941 really strange things with things like fbge,a
943 * as.h: include bfd.h if using many sections
944 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
945 local labels didn't work.
946 * listing.c (list_symbol_table): don't core dump when there's no
948 * write.c, write.h: call fix_new with the right number of args on
950 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
953 Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
955 * app.c: MRI compatibility - allow single quote to start a string.
956 * as.c: fix typo recently introduced.
957 * as.h : Don't include aout/reloc.h - it's not right for COFF!
958 * expr.c: Much rewriting, to accomodate MRI syntax for
959 expressions. Also easier to read now.
960 * listing.c: Put back defuns
961 * read.c: modified to accept MRI syntax, put back listing pseudo
962 ops so that an assembler built with NO_LISTING ignores list ops
964 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
965 machine is a SPARC or a 29K.
966 * config/obj-aout.c: added s_sect pseudo op
967 * config/obj-coffbfd.c: lints, set the filehdr flags right and
968 fill in the timestamp.
969 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
970 anymore, define all the relocs which the tc-<x> bit will use so we
971 can translate from them to the coff types.
972 * config/tc-a29k.c: reloc_type isn't ane enum any more
973 * config/tc-m68k.c: Added NO_RELOC definition.
977 * Makefile.in: put header files before C source for TAGS; remove
978 references to non-existent syscalls.h.
980 * read.c, write.c subsegs.c: back out the .bss changes.
982 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
984 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
990 * symbols.c (local_label_name): symbols now start with ^A.
992 * read.c, subsegs.c, write.c obj-coff.c: added handling of
993 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
994 generate these sections. .align: will use NOP_OPCODE or 0
995 for padding. This is just for being nice to the
998 * expr.c (operand): changed to generate local label "\001L0"
999 starting with a ^A so that it is recognized as a local label.
1001 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
1003 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
1004 i/o opcodes - inb, inw, outb and outw. string manipulation with
1005 att syntax - scmp, slod, smov, ssca, ssto.
1007 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
1008 to just after .file .
1010 In obj_crawl_symbol_chain() where it tries to put the external
1011 symbols apart, with the condition:
1012 (!S_IS_DEFINED(symbolP) &&
1013 !S_IS_DEBUG(symbolP) &&
1014 !SF_GET_STATICS(symbolP))
1015 it was moving too many symbols out. So I switch it back to the
1017 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
1019 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
1020 so that we don't use the F_RELFLG which make the linker complain
1021 that somebody has stripped the relocation info.
1023 Also, the AIX ld program require that the relocation table
1024 is sorted by r_vaddr like the standard ATT assembler does.
1026 [he also changed the sizeof(struct ...)'s into the coff
1027 style FOOSZ macros. I'm not sure this is right, but I can't
1028 remember why. xoxorich.]
1032 * Makefile.in, configure.in, doc: use the doc. Build it, install
1035 Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
1037 * read.c: white space and comments only.
1039 * configure.in: use the new atof-ns32.c for ns32k.
1041 * write.c: comment change only.
1043 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
1044 aren't yet integrated.
1046 * tc-i860.[hc]: blew off the dust. Something must still be done
1047 about conflicting relocation types.
1049 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
1052 * tc-i960.c, tc-sparc.c: white space and comments only.
1054 * tc-a29k.h: delete duplicate macro definition.
1056 * new file atof-ns32k.c copied from hack's last unreleased gas.
1058 Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
1060 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
1063 * nearly everything. flush ChangeLog, package as gas-1.92.1.
1064 ChangeLog's prior to this are sketchy at best. I have logs.
1065 They just aren't ChangeLogs.