Tue Sep 14 14:34:45 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
4f0bccc7
ILT
1Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2
3 * read.c (change_to_section): Removed. This is now done by
4 subseg_new.
5 (get_stab_string_offset): Rearranged somewhat. Create the section
6 using subseg_new. Store the string index in seg_info, rather than
7 in a static variable. Force the first string to be empty. Use
8 frag_more rather than FRAG_APPEND_1_CHAR.
9 (s_stab_generic): Rewrote.
10 * subsegs.h (segment_info_type): Added stabu union.
11 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
12 * config/obj-aout.c: Don't include aout/stab_gnu.h.
13 (obj_aout_stab, obj_aout_desc): Removed.
14 (obj_pseudo_table): Removed desc and stabX entries.
15 * config/obj-bout.c: Same changes as config/obj-aout.c.
16 * config/obj-bout.h (S_SET_TYPE): Define.
17 (tc_bout_fix_to_chars): Declare.
18 * config/obj-coff.c (obj_coff_stab): Removed.
19 (obj_pseudo_table): Removed desc and stabX entries.
20 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
21 * config/obj-coffbfd.c (current_stab_symbol): Removed.
22 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
23 n_other, n_desc and n_value fields.
24 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
25 (MAKE_STAB_SYMBOL): Removed.
26 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
27 Changed arguments and removed parsing code.
28 (obj_pseudo_table): Removed stabX entries.
29 * config/obj-ecoff.h (ecoff_stab): Declare.
30 (OBJ_PROCESS_STAB): Define.
31 * config/obj-elf.c: Don't include aout/stab_gnu.h.
32 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
33 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
34 Removed.
35 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
36 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
37 set SEC_LOAD for .note section.
38 (adjust_stab_sections): Get frag pointer from seg_info, rather
39 than looking through frags.
40 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
41 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
42 Define.
43 * config/obj-vms.c (obj_aout_stab): Removed.
44 (obj_pseudo_table): Removed stabX entries.
45 * config/obj-vms.h (S_SET_TYPE): Define.
46
47 * as.h: Declare listing.
48 * read.c: Don't declare listing.
49 (emit_expr): Cast fix_new_exp argument.
50 (parse_bitfield_cons): Correct printf format.
51 * symbols.c (symbol_new): Add cast to avoid warning.
52 * write.h: Declare text_last_frag and data_last_frag.
53 * config/obj-bout.c (obj_bout_line): Added dummy argument.
54 * config/obj-coffbfd.c: Add some casts to avoid warnings.
55 * config/tc-a29k.c: Likewise.
56 * config/tc-i960.c: Likewise. Also fully bracket structure
57 initializations, fix printf formats, and remove unused variables.
58
604633ae
ILT
59Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
60
61 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
62 * struc-symbol.h: Declare verify_symbol_chain and
63 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
64 * symbols.c (verify_symbol_chain): Removed useless expression.
65 * write.c (headers, the_object_file): Only use if not
66 BFD_ASSEMBLER and not BFD.
67 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
68 not BFD.
69 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
70 not OBJ_AOUT).
71 * write.h: Declare relax_segment.
72 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
73 static.
74 (stack_top): Commented out, since it's not used.
75 Fixed up pseudo-op functions to take an ignored int argument.
76 (size_section): Added default BAD_CASE to switch.
77 Changed bzero calls to memset.
78 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
79 (s), not on s itself.
80 * config/tc-a29k.c (s_use): Take ignored int argument. Only
81 define if OBJ_COFF is not defined.
82 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
83 argument signed again.
84 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
85 argument.
86 (m68k_ip): Fully bracket initialization of archs.
87 Correct several formats for __LINE__ to be %d rather than %s.
88 (init_table): Fully bracket initialization.
89 Cast values larger than 0x7f assigned to fr_opcode to char.
90
91 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
92 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
93 section name, and subseg_set always takes a segT. Changed all
94 callers as appropriate.
95 * config/obj-coffbfd.c (change_to_section): Renamed to
96 obj_coff_add_segment. Corrected. Made callers use subseg_new.
97 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
98 Define.
99
54e3e909
DE
100Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
101
102 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
103
58d4951d
ILT
104Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
105
106 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
107
108 Gcc lint.
54e3e909 109 * Added a number of casts to function calls.
58d4951d
ILT
110 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
111 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
112 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
113 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
114 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
115 (obj_elf_section), config/tc-i386.c (parse_register),
116 config/tc-sparc.c (isoctal, s_proc): Cast char
117 array indices to unsigned char.
54e3e909
DE
118 * app.c (process_escape): Make static. Add prototype. Change
119 argument from char to int.
58d4951d
ILT
120 * as.c: Include output-file.h for prototypes. Comment out unused
121 function got_sig.
122 * Makefile.in (as.o): Depend on output-file.h.
123 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
124 (pseudo_typeS): Add prototype to poc_handler field.
125 (print_version_id): Add prototype.
126 (xmalloc, xrealloc): Change size arguments to unsigned long.
127 (do_scrub_next_char): Add prototypes for function arguments.
128 (had_errors, had_warnings, scrub_from_file): Remove duplicate
129 declarations.
130 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 131 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
132 * expr.c (floating_constant, integer_constant): Make static. Add
133 prototypes.
134 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 135 * frags.h: Add prototype for frag_init.
54e3e909
DE
136 * hash.h, hash.c: Change hash values from char * to PTR, make hash
137 strings const, make returned error strings const char *. Added
138 prototypes for functions.
139 * input-file.h, input-file.c (input_file_buffer_size): Return
140 unsigned int.
141 * input-scrub.c (buffer_length): Make unsigned.
142 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
143 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
144 long and use %lx. Print name of segment rather than address of
145 structure.
54e3e909
DE
146 (listing_list, listing_title): Change argument to int.
147 (listing_eject, listing_flags, listing_psize): Add int argument.
148 * listing.h: Corresponding declaration changes.
149 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
150 shadowing.
58d4951d 151 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
152 offsetT. Add prototype for next_char_of_string. Various
153 prototype changes.
58d4951d 154 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
155 (pobegin): Make errtxt const. Make new_length, tmp_len and num
156 unsigned.
157 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
158 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
159 Change all callers.
58d4951d
ILT
160 (s_comm): Change temp from valueT to offsetT. Cast to long when
161 printing and use %ld (only for error messages anyhow).
54e3e909
DE
162 (s_long, s_int): Remove unused functions.
163 (cons): Change argument to int.
58d4951d
ILT
164 (emit_expr): Use %lx when printing longs.
165 (get_absolute_expression): Return offsetT, not long.
166 (get_stab_string_offset): Comment out unless
167 SEPARATE_STAB_SECTIONS.
168 (s_stab_generic): Remove unused offset. Define seg_is_new only
169 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 170 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 171 * symbols.c: Remove nested comment.
54e3e909 172 (symbol_new): Rename value to valu.
58d4951d 173 (colon): Use %ld and cast to long in error message.
54e3e909
DE
174 * symbols.h: Remove duplicate verify_symbol_chain declaration.
175 * tc.h: Remove unused md_emit_relocations declaration.
176 (tc_gen_reloc): Add declaration.
58d4951d
ILT
177 * write.c (cvt_frag_to_fill): Change first argument name depending
178 on BFD_ASSEMBLER.
54e3e909
DE
179 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
180 declarations. Make n unsigned.
181 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
182 to f to avoid shadowing.
58d4951d
ILT
183 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
184 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 185 punt_it if they will be used. Make i and n unsigned.
58d4951d 186 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 187 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
188 * config/obj-aout.h: Remove nested comment. Add prototype for
189 obj_aout_frob_symbol.
54e3e909
DE
190 (obj_aout_line, obj_aout_desc): Add int argument.
191 * config/obj-ecoff.c: Changed build routines to use an unsigned
192 offset.
193 (add_string): Make len unsigned long.
58d4951d
ILT
194 (obj_ecoff_stab): Use %lu in error message.
195 * config/obj-elf.c (obj_elf_common): Comment out unused label
196 allocate_bss.
197 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
198 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
199 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
200 obj_elf_line, obj_elf_previous): Add int argument.
201 (obj_elf_write_symbol_p): Make static.
202 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
203 * config/tc-hppa.h: Remove declarations of functions declared in
204 read.h.
54e3e909
DE
205 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
206 (s_bss): Add int argument.
207 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
208 (dummy): Remove unused function.
209 (md_assemble): Rename local o to op to avoid shadowing.
210 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
211 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
212 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
213 %ld in error messages.
54e3e909
DE
214 * config/tc-sparc.c: Remove duplicate declarations.
215 (getExpression): Rewrite condition to avoid empty conditional
216 body.
217 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
218 argument.
58d4951d 219
892a3ff1
KR
220Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
221
222 Changes from Jeff Law:
223
224 * config/tc-hppa.c (md_assemble): Fix typo.
225 (pa_ip): Delete unused variables and labels. Do not check for
226 unsigned values being < 0, it can't happen.
227 (is_same_frag): Return a value in recursive call case.
228 (pa_callinfo): Delete unused variables and labels.
229 (pa_comm): Likewise.
230 (pa_copyright): Likewise.
231 (pa_export): Likewise.
232 (pa_import): Likewise.
233 (pa_param): Likewise.
234 (pa_space): Likewise.
235 (pa_subspace): Likewise.
236
abdd08c9
ILT
237Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
238
239 * read.c (get_stab_string_offset, s_stab_generic): If
240 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
241
414b2c8f
ILT
242Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
243
244 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
245 default flag values.
246
4064305e
SS
247Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
248
1531386b
SS
249 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
250
4064305e
SS
251 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
252 various stab-related directives.
253 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
254 * write.c: (merge_data_into_text): Fix ifdef tangle.
255 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
256 for stab reader to use.
257 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
258 stab reader, macros to access.
259
81b407c9
KR
260Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
261
262 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
263
264 * config/tc-hppa.h (struct default_subspace_dict, struct
265 default_space_dict): Field "sort" is now unsigned char.
266
267 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
268 columns for easier reading.
269 (bcmp, index): Deleted USG-specific definitions. Should be dealt
270 with in ho-*.h, or in libiberty. Changed mention of index to
271 strchr.
272 (label_symbolP, label_symbol_defined, callinfo_found,
273 within_entry_exit, exit_processing_complete, within_procedure,
274 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
275 label_symbols_rootP, pa_get_label, pa_label_is_defined,
276 pa_undefine_label): Now static.
277 (movers): Now const, in addition to pointing to const data.
278 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
279 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
280 Delete declarations.
281
282 Merged more changes from Jeff Law and Pete Hoogenboom:
283
284 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
285 entries for .stab and .stabstr.
286
287 * config/obj-elf.c: (elf_stab_symbol_string): Set the
288 SEC_LOAD attribute for the .stabstr section.
289 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
290 .stab section.
291 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
292 (obj_elf_stab_generic): Incorrect byte count on call to
293 md_number_to_chars function.
294
295 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
296 argument relocation bits too.
297
298 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
299 characters which should appear unaltered in the output string (for
300 example an escaped double-quote).
301
302 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
303 initialize name.
304 (pa_parse_neg_cmpsub_cmpltr): Likewise.
305 (pa_parse_nonneg_add_cmpltr): Likewise.
306 (pa_parse_neg_add_cmpltr): Likewise.
307
308 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
309 for now.
310 (cons_fix_new_hppa): Likewise.
311 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
312 prototype.
313
314 * config/tc-hppa.c: Include libhppa.h.
315
316 * config/tc-hppa.h: Delete extern declarations of functions
317 found in libhppa.h.
318
319 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
320 OBJ_ELF conditionals.
321 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
322 on the PA.
323
1849d646
ILT
324Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
325
ff3a5c18
ILT
326 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
327 (macro): Use "z,s,t" for div instructions to match corresponding
328 change in opcode table.
329 (mips_ip): Added 'z'--must be zero register.
1849d646 330
e96d50d0
KR
331Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
332
333 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
334 tc_gen_reloc correctly.
335
336 * configure.in: Use "case" instead of "if" when possible. Rewrote
337 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
338
56607c4e
RP
339Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
340
341 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
342 section type of data. 'd' seems to be used for m88k.
343
344Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
345
346 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
347 s_mips_space): Set insn_label to NULL to avoid changing it at the
348 next .align statement.
349 (append_insn): Don't swap jal with instruction that sets the
350 register that jal sets.
351
37d719bb
RP
352Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
353
354 * configure.in: recognize m88110.
355
28344993
KR
356Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
357
358 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
359 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
360 not be on for .hppa_unwind.
361 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
362 (pa_param): New function to handle .PARAM directives.
363 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
364 functions. Handle '|' for movb; allow movb,n.
365 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
366 version. Handle cases where no completer exists for
367 comb,n or addb,n.
368 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
369 completer exists for comb,n or addb,n. Make logic
370 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
371 (pa_parse_nonneg_add_cmpltr): Likewise.
372 (pa_parse_neg_add_cmpltr): Likewise.
373 * tc-hppa.h (pa_param): Declare.
374
375Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
376
377 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
378 Added forward declaration.
379
380 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
381
382 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
383 call to elf_tc_make_sections.
384 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
385 attribute.
386
387 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
388 handle symbol extension sections.
389
390 * config/tc-hppa.c (pa_build_symextn_section): New function to
391 create a symbol extension section.
392 (pa_export_args): Make call to pa_build_symextn_section.
393 (hppa_tc_symbol, hppa_tc_make_sections,
394 hppa_tc_make_symextn_section): New functions.
395 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
396 macros.
397
398 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
399 BFD_ASSEMBLER branch as well.
400
401 * config/tc-hppa.h: If ELF is the target object format, define
402 some ELF- and hppa-specific types and constants.
403
404 * config/tc-hppa.c (getExpression): Fix a typo.
405
406 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
407 if a `=' is part of an instruction.
408 (read_a_source_file): Handle case where end-of-line markers are
409 also used within instructions.
410 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
411
412 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
413 out-of-range branches/'calls using "bl" or calls which may need
414 argument relocation stubs. Do not need/keep relocations for
415 conditional branches.
416 (elf_hppa_final_processing): Fix calculation of function size.
417
418 * config/obj-elf.c (obj_elf_version): Mark .note section as
419 READONLY.
420
421 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
422 address of exp, to expression.
423 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
424 (md_apply_fix_1): Delete unwanted comments.
425 (process_exit): Symbols marking the end of a function are always
426 BSF_LOCAL.
427
428 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
429 (pa_space): Declare and initialize gdb_section.
430
431 * config/obj-elf.c (elf_frob_file): Change
432 elf_tc_final_processing_hook to elf_tc_final_processing.
433
434 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
435 argument type declarations.
436 (getExpression): Fix typo.
437 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
438 (elf_hppa_final_processing): Likewise. Name changed from
439 elf_hppa_final_processing_hook.
440 (start_symbol_root, start_symbol_last): Deleted.
441
442 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
443
444 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
445 avoid changing include ordering.
446
447 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
448
6e8dda9c
ILT
449Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
450
451 * config/tc-mips.c (set_at): Added unsignedp argument. Use
452 load_register.
453 (set_at_unsigned): Removed; changed callers to use set_at.
454 (load_register): Removed unused ip argument. Changed callers.
455 (append_insn): Don't swap branch and branch likely.
456 (macro_build): Handle 'u'.
457 (load_register): Handle 64 bit constants.
458 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
459 support 64 bit constants.
460 (mips_ip): Use hex constants in range checks for clarity.
461 (md_number_to_chars): Support 8 byte values.
462
1e35cd8f
RP
463Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
464
465 * config/tc-m88k.h: updated copyrights.
466 (TC_CONS_RELOC): declare to be RELOC_32.
467
8358c818
ILT
468Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
469
470 * config/tc-mips.c (mips_isa): New static variable.
471 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
472 check macros. Set text alignment and GP size here.
473 (md_assemble): Don't set text alignment and GP size here.
474 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
475 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
476 a NOP after a branch likely.
477 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
478 >= 2.
479 (macro): Support r6000 and r4000 macros.
480 (mips_ip): Check insn ISA level against mips_isa before using it.
481 Added 'x' case for ignored register.
482 (md_parse_option): Handle -mipsN and -mcpu=XX.
483
c8d4cda1
KR
484Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
485
486 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
487
488Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
489
490 * config/tc-sparc.c (s_local): Function moved and renamed...
491 * config/obj-elf.c (obj_elf_local): ...to here.
492 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
493 (obj_pseudo_table): Move handling of ".local".
494
495 * tc.h (md_parse_option): Don't declare if defined as a macro.
496
497 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
498 BFD_RELOC_NONE.
499 (md_parse_option): New macro, converted from function.
500 * config/tc-i386.c (md_parse_option): Function deleted.
501 (comment_chars) [OBJ_ELF]: Include "/".
502 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
503 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
504 warning.
505 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
506 Call reloc for fix_new type, or use correct enumerator, instead of
507 always using NO_RELOC.
508 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
509 tests for valid section.
510 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
511 address.
512 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
513 symbol, compensate for location of reloc.
514 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
515 to return zero.
516
4915cac0
KR
517Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
518
519 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
520 (obj_elf_weak): New function.
521 (obj_pseudo_table): Handle ".weak".
522 (obj_elf_section): If section directive includes a string, ignore
523 it for now. Accept "progbits" flag.
524 (obj_elf_type): Accept `@' before flag name.
525
526 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
527 condition.
528 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
529 than checking for bfd_com_section directly.
530 (fixup_segment): Simplify range check.
531 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
532 test.
533
534 * symbols.h (S_SET_WEAK): Declare.
535 * symbols.c (S_SET_WEAK): New function.
536 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
537 it's not a separate flag any more. Clear BSF_WEAK.
538
539 * read.c (potable): Treat "string" like "asciz".
540
19ed8960
ILT
541Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
542
543 * config/tc-mips.c (append_insn): Don't swap branch instructions
544 if .set nobopt or .set volatile.
545 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
546 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
547 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
548 * config/obj-ecoff.c: Renamed some variables to avoid shadow
549 warnings.
550
ae8c28f8
DZ
551Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
552
19ed8960
ILT
553 * config/obj-coff.h (S_IS_COMMON): add missing backslash
554
ae8c28f8
DZ
555 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
556
0aa07269
ILT
557Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
558
559 * config/tc-mips.c (mips_ip): Suggested by
560 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
561 names for 'E' and 'G' argument types (coprocessor registers) and
562 don't warn if $1 is used on the coprocessor.
ae8c28f8 563 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
564
565Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
566
567 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
568 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
569 BFD_RELOC_16.
570 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
571
6a9cf6fa
KR
572Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
573
574 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
575 defined or BFD is not.
576 (relax_and_size_all_segments): Declare local variable fragP.
577
b114e492
KR
578Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
579
580 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
581 bytes with real values, not zeros.
582
ac32a7e7
ILT
583Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
584
3d2330f8
ILT
585 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
586 targets, using ecoff and mips-big.
587
ac32a7e7
ILT
588 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
589 Johnson): Added case for 'C' for coprocessor instruction codes.
590
273aa947
KR
591Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
592
b114e492
KR
593 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
594
273aa947
KR
595 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
596
b114e492
KR
597 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
598 for verifying symbol chain.
599 (merge_data_into_text, relax_and_size_all_segments): New
600 functions, split out from write_object_file.
601
273aa947
KR
602Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
603
604 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
605 debug section is new, allocate an extra 12 bytes at its start. If
606 ".stabs" type is N_SO, fill in filename symbol field of that first
607 entry. Return early if "goof", to simplify later code slightly.
608 (adjust_stab_sections): New function.
609 (elf_frob_file): Apply adjust_stab_sections to each section.
610
611 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
612 static.
613 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
614 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
615 and "popsection", and call cons for "uaword" and "uahalf".
616
617 * config/obj-elf.c (obj_elf_version): Use English in error
618 messages.
619
4573d186
ILT
620Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
621
622 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
623 swapping routines and external structure sizes via the
624 ecoff_backend information. No longer includes coff/mips.h.
625
b4703fa6
ILT
626Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
627
4c7ff23d
ILT
628 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
629 and in hash_ptr->string.
630
b4703fa6
ILT
631 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
632 file name is not seen.
633
ced16de6
ILT
634Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
635
636 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
637
638 * expr.c (operand): Make return value simply depend on contents of
639 returned expression.
640
b4703fa6
ILT
641Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
642
643 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
644
0ccc65ec
DZ
645Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
646
647 * config/ho-sunos.h: remove some old function decls that conflict
648 w/ ANSI, and which weren't needed anyway
649
650Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
651
652 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
653 and disabled since it breaks Ian's new symbol-value code.
654
655 * expr.c (integer_constant): Accept more digits if BFD64.
656
7fe17970
ILT
657Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
658
659 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
660 expect a bignum, turn it into a bignum. Output extra zeroes
661 before a short bignum, rather than after.
662
0c2734c3
KR
663Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
664
665 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
666 on DEBUG_SYMS, not DEBUG.
667 (symbol_remove): Likewise.
668 (symbol_insert): Likewise.
669
4fe45d22
ILT
670Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
671
672 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
673 (append_insn): If mips_optimize == 0, always insert NOP
674 instructions. If mips_optimize < 2, don't swap branches.
675 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 676
de9310b9
RP
677Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
678
679 * Makefile.in (clean): if testsuite does not exist, then skip it.
680
681Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
682
683 * config/tc-mips.c (prev_insn_unreordered,
684 prev_prev_insn_unreordered): New static variables.
685 (append_insn): Don't swap branch instruction if
686 prev_prev_insn_unreordered (see comment).
687 (mips_no_prev_insn): Clear the unreordered variables.
688 (s_mipsset): When turning on reordering, set the unreordered
689 variables.
690
7767e7e9
KR
691Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
692
693 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
694 are also magic, and have special default flag settings.
695 (obj_elf_frob_symbol): Since the return value from this function
696 isn't used, don't bother calling obj_elf_write_symbol_p, since it
697 doesn't accomplish anything else.
698
699 * config/tc-sparc.c (md_section_align): Round up section size only
700 for a.out format.
701
702 * symbols.c: Don't define DEBUG by default.
703
88b457e5
ILT
704Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
705
2a2d3d08
ILT
706 * write.c (fix_new_exp): Handle a O_uminus expression.
707
e979ea04
ILT
708 * expr.c (expr): Don't let absolute_section override
709 undefined_section for the return value.
710
cf897ce2
ILT
711 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
712 pseudo-op with a poc_handler field of NULL, ignore it and treat it
713 as an instruction instead.
714 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
715 poc_handler field.
716
88b457e5
ILT
717 * config/tc-h8500.c (md_begin): Use a local variable when
718 initializing md_relax_table to avoid warnings about modifying a
719 supposedly const data structure.
720
88e12460
BK
721Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
722
723 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
724 is defined.
725
86a6ada2
FF
726Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
727
728 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
729 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
730 case to set obj_format=elf. Must go before i386-*-sysv* case that
731 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
732 *-*-solaris case, and move to before *-sysv* case that wants to
733 set obj_format to coff.
734 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
735 'exp->X_op'.
736 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
737 BFD_ASSEMBLER case.
738
8ff6f40e
ILT
739Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
740
2c5c299f
ILT
741 * config/obj-aout.c: Include aout/aout64.h.
742 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
743 symbol, so that BFD doesn't tamper with the type.
744
8ff6f40e
ILT
745 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
746 up opcodes as pseudo-ops even if they don't start with '.'.
747 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
748 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
749 handling.
750 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
751 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
752 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
753 r_offset field of the reloc to the fixup offset.
754 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
755 * doc/as.texinfo: Minor updates.
756
5ac34ac3
ILT
757Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
758
759 * Extensive changes to permit symbols to contain any expression
760 type and to delay the computation of the expression until the
761 value is actually needed. This permits setting symbols to values
762 calculated based on object code size. Expressions were changed to
763 no longer be in a section, to stop the overloading of segment and
764 expression type that previously occurred.
765
766 * as.c (big_section, pass1_section, diff_section, absent_section):
767 Removed.
768 (expr_section): Added (used for dummy symbols which hold
769 intermediate expression values).
770 (perform_an_assembly_pass): Create expr_section, do not create the
771 sections now removed.
772 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
773 SEG_DIFFERENCE. Added SEG_EXPR.
774 (SEG_NORMAL): Corresponding changes.
775 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
776 * write.c (write_object_file): Ditto.
777 * config/obj-aout.c (seg_N_TYPE): Ditto.
778 * config/obj-bout.c (seg_N_TYPE): Ditto.
779 * config/obj-coff.c (seg_N_TYPE): Ditto.
780 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
781 * config/obj-vms.c (seg_N_TYPE): Ditto.
782
783 * expr.h (operatorT): Moved in from expr.c, added some values.
784 (expressionS): Added X_op field, removed X_seg field; renamed
785 X_subtract_symbol to X_op_symbol.
786 * expr.c: Extensive changes to assign expression types rather than
787 sections and to simplify the parsing.
788 * write.c (fix_new_internal): New static function.
789 (fix_new): Removed sub_symbol argument.
790 (fix_new_exp): New function, takes expression argument.
791 * write.h: Prototype changes for fix_new and fix_new_exp.
792 * cond.c (s_if): Changed accordingly.
793 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
794 parse_repeat_cons, get_segmented_expression,
795 get_known_segmented_expression, get_absolute_expression): Ditto.
796 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
797 Ditto.
798 * write.c (write_object_file): Ditto.
799 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
800 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
801 obj_coff_endef, yank_symbols): Ditto.
802 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
803 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
804 print_insn, md_operand): Ditto.
805 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
806 do_a_fix_imm, build_bytes): Ditto.
807 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
808 get_specific, check, insert, md_convert_frag): Ditto.
809 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
810 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
811 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
812 process_exit): Ditto.
813 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
814 is_complex): Ditto.
815 * config/tc-i386.c (pe, md_assemble, i386_operand,
816 md_estimate_size_before_relax, md_create_long_jump): Ditto.
817 * config/tc-i860.c (md_assemble, getExpression, print_insn):
818 Ditto.
819 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
820 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
821 i960_handle_align): Ditto.
822 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
823 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
824 md_estimate_size_before_relax, md_create_long_jump, get_num):
825 Ditto.
826 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
827 md_create_short_jump, md_create_long_jump): Ditto.
828 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
829 macro_build, macro, my_getExpression): Ditto. Also removed
830 get_optional_absolute_expression; just use get_absolute_expression
831 instead.
832 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
833 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
834 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
835 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
836 Ditto.
837 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
838 print_insn): Ditto.
839 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
840 tip_op, md_assemble): Ditto.
841 * config/tc-vax.c (seg_of_operand, md_assemble,
842 md_estimate_size_before_relax, md_create_long_jump): Ditto.
843 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
844
84873870
DZ
845Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
846
847 * configure.in: i386-lynx is the same as i386-coff
848
623d6e9a
KR
849Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
850
851 * config/obj-elf.c (obj_elf_previous): New function.
852 (previous_section, previous_subsection): New vars.
853 (obj_elf_section): Save current place in case DWARF code wants us
854 to pop back to it. Handle unquoted section name as well as quoted
855 section name. Don't crash on invalid strings.
856 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
857 "4byte".
858
859 * config/obj-elf.h: Don't include struc-symbol.h.
860 (obj_elf_frob_symbol): Declare arg as struct symbol *.
861
862 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
863 "L" or "_.L_".
864
865 * write.c (write_relocs): New function, split off from
866 write_contents. Use memset instead of bzero.
867 (write_object_file): Apply write_relocs to each section before
868 applying write_contents.
869
870 * read.c (read_begin): Call obstack_begin with values closer to 1K
871 multiples.
872 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
873 bcopy.
874
ffffc8fb
ILT
875Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
876
ce2ad89a
ILT
877 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
878 calculating opP->isiz; this permits the expression size to be
879 determined as well, later on.
880
ffffc8fb
ILT
881 * expr.c (clean_up_expression): Don't cancel the subtraction of
882 undefined symbols.
883
884 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
885 switch to text section rather than data section.
886
9d4dfbf3
KR
887Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
888
889 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
890 expression (to take the pc-rel instruction itself into account)
891 before using the expression, instead of after.
892
04acd059
ILT
893Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
894
1e9cf565
ILT
895 * read.c (float_cons): Simplified parsing logic. If
896 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
897
898 * symbols.c (colon): Rather than a special case for TC_HPPA,
899 use new macro tc_frob_label.
900 * config/tc-hppa.h (tc_frob_label): Define.
901
902 * config/tc-mips.c: Many changes to support simple assembler
903 optimization.
904 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
905 prev_insn_valid, prev_insn_frag, prev_insn_where,
906 prev_insn_fixp, prev_insn_is_delay_slot): New static
907 variables.
908 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
909 mips_align, s_stringer, s_mips_space): New static functions.
910 (mips_define_label): New global function.
911 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
912 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
913 or 'd'. For "space" call s_mips_space.
914 (md_begin): Call mips_no_prev_insn.
915 (append_insn): Only insert necessary NOP instructions.
916 (macro): Call mips_emit_delays before setting mips_noreorder.
917 Increment and decrement mips_noreorder rather than using
918 save_reorder_condition. Don't bother to use noreorder in
919 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
920 (md_atof): Handle floating point numbers correctly for both
921 big and little endian targets.
922 (s_align, s_cons): Call mips_align rather than frag_align.
923 (s_change_seg, s_cons): Call mips_emit_delays.
924 (s_float_cons): Let float_cons do the work.
925 (s_mipsset): Call mips_emit_delays when setting noreorder.
926 * config/tc-mips.h (tc_frob_label): Define to be
927 mips_define_label.
928
04acd059
ILT
929 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
930 ecoff_frob_files): Consistently use S_GET_VALUE rather than
931 bfd_asymbol_value. Warn if taking difference of symbols in
932 different segments.
933
c978e704
ILT
934Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
935
5276e361
ILT
936 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
937 with a warning.
938
2368ec63
ILT
939 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
940 by md_pcrel_from if we are relocating against a symbol (we still
941 need md_pcrel_from for a PC relative relocation within the same
942 file).
943 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 944 (omagic): Removed unused variable.
2368ec63 945
c978e704
ILT
946 * Preliminary support for m88k-coff.
947 * configure.in (m88k-*-coff*): New target. Use coffbfd and
948 m88kcoff.
949 * config/m88kcoff.mt: New file.
950 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
951 (pseudo_set): Handle difference of symbols in different fragments
952 by saving the entire expression as the value of the symbol.
953 * symbols.c (resolve_symbol_value): Resolve difference
954 expressions.
955 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
956 "sdef" as a synonym for "def".
957 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
958 TARGET_FORMAT.
959 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
960 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
961 m88k port up to date, and to add COFF support.
962
85051959
ILT
963Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
964
5868b1fe
ILT
965 * Removed sy_forward and replaced it with an undefined expression
966 as the value of a symbol.
967 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
968 sy_resolved and sy_resolving single bit fields.
969 * symbols.c (symbol_new): Don't initialize sy_forward field.
970 (resolve_symbol_value): New function to adjust symbol value by
971 fragment address, using recursion to resolve forward symbols.
972 * symbols.h: Added prototype for new function.
973 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
974 expression rather than setting symbolP->sy_forward.
975 * write.c (write_object_file): Use resolve_symbol_value on
976 symbols, keeping the common case (the old behaviour) inline.
977 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
978 handling (subsumed by write.c change).
979 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
980 sy_value rather than sy_forward.
981 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
982 expression segment rather than sy_forward.
983 (yank_symbols): Use resolve_symbol_value.
984 (crawl_symbols): Removed extra pass over symbols.
985 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
986 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
987 symbols which handled sy_forward; use resolve_symbol_value
988 instead.
989 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
990 Define.
991 * config/obj-elf.c (obj_elf_stab_generic): Check expression
992 segment rather than sy_forward.
993 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
994 sy_forward; do initialize sy_resolved and sy_resolving.
995 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
996
85051959
ILT
997 * Changes to keep a full expression as the value of a symbol, not
998 just a longword:
999 * struc-symbol.h: New field sy_value.
1000 * as.h: Include expr.h before struc-symbol.h.
1001 * expr.h: Use struct symbol rather than symbolS.
1002 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
1003 of sy_value field; compile unconditionally, not just if
1004 BFD_ASSEMBLER.
1005 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
1006 * write.c (write_object_file): Set BFD symbol value to gas symbol
1007 value.
1008 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
1009 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
1010 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
1011 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
1012 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
1013 S_GET_VALUE rather than ost_entry.n_value.
1014 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
1015 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
1016 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
1017 using S_GET_VALUE--don't assume it is already set.
1018 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
1019 symbol value.
1020 * config/obj-vms.c (various): Don't assign directly to
1021 S_GET_VALUE; use S_SET_VALUE instead.
1022
b50401c9
DE
1023Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
1024
1025 * configure.in: Recognize h8300h.
1026
489a93f3
SC
1027Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
1028
1029 * config/tc-h8500.c (line_comment_chars): Add hash.
1030 (parse_exp, skip_colonthing, build_bytes): Add support for
1031 R_H8500_HIGH16 relocation type.
1032
5d4ef296
KR
1033Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1034
1035 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
1036 attribute name. Handle `execinstr' attribute.
1037
99c24539
ILT
1038Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
1039
1040 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
1041 there is another alternative for the instruction.
1042
ec1c752b
RP
1043Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
1044
1045 * doc/as.texinfo: updates for H8/300H
1046
d358969d
ME
1047Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
1048
1049 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
1050 md_number_to_chars, md_section_align): Adjusted to use valueT,
1051 addressT, to match tc.h.
1052
ff4cac38
KR
1053Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1054
1055 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 1056 independent of format.
ff4cac38 1057
42206996
DE
1058Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
1059
1060 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
1061
e9baeb46
DZ
1062Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
1063
1064 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
1065 build; also recognize h8300-*-coff
1066
76c64db0
ILT
1067Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
1068
e154ecf4
ILT
1069 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
1070 core just because somebody uses a label before it is defined.
1071
76c64db0
ILT
1072 * config/mips-opcode.h: Moved to opcode/mips.h.
1073 * config/tc-mips.c: Include opcode/mips.h rather than
1074 mips-opcode.h.
1075 (append_insn): An extra NOP is only needed after instructions
1076 which set HI or LO, not after instructions which read it.
1077 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
1078 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
1079 * config/tc-mips.h (struct mips_opcode): Don't define.
1080 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
1081 Set to $(srcdir)/../include/opcode/mips.h.
1082
1083 Get the MIPS assembler up to speed with other gas changes:
1084
1085 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
1086 Removed; don't change the symbol value.
1087 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
1088 bfd_asymbol_value rather than S_GET_VALUE to include section
1089 vma in symbol value.
1090 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
1091 doesn't output them. Set the vma of sections.
1092 * config/obj-ecoff.h: Don't define obj_frob_symbol.
1093 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
1094 longer necessary.
1095 (various): use valueT rather than long.
1096
e28e0b95
KR
1097Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1098
1099 * as.h (valueT): Typedef moved here.
1100 * struc-symbol.h (valueT): ...from here.
1101 * write.c (write_object_file): Locals from_addr, to_addr,
1102 table_addr are now addressT. Supply prototype for bfd_alloc for
1103 now.
1104 (fixup_segment): Local add_number is now valueT. Correct some
1105 range-checking bugs.
1106 (relax_align): Type `int' should be sufficient for the exponent.
1107 (fix_new): Argument offset is type offsetT. Locals size and
1108 newsize are type valueT.
1109 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
1110 type valueT.
1111 (fix_new): Fix prototype.
1112 * symbols.c (symbol_new): Symbol value is type valueT.
1113 (S_SET_VALUE, S_GET_VALUE): Likewise.
1114 (S_IS_*): Specify int return type explicitly.
1115 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
1116 prototypes.
1117 * read.c (s_comm): Values read are type valueT.
1118 * expr.h (expressionS): Field X_add_number is an offsetT.
1119 * tc.h (md_create_long_jump, md_create_short_jump,
1120 md_section_align): Addresses are now type addressT.
1121 (md_number_to_chars, md_apply_fix): Pass value as valueT.
1122 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
1123 md_number_to_chars, md_section_align): Adjusted.
1124 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
1125 gcc shut up.
1126 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
1127 md_section_align): Adjusted.
1128
1129 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
1130 format.
1131 (s_common): Handle Solaris-2 version.
1132
1133 * config/ho-generic.h (free): Returns void if __STDC__.
1134
1135 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
1136 elf_file_symbol): Declare.
1137
1138 * expr.c (floating_constant, integer_constant): Now return void.
1139
1140Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
1141
1142 * configure.in: Match on sparc*-fujitsu-none rather than
1143 sparclite*-fujitsu-none.
1144
267389df
ILT
1145Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
1146
1147 * read.c (cons): Conditionalize parsing of expression. Move
1148 putting value into object file into separate function. Separate
1149 out MRI and WANT_BITFIELDS cases into separate functions.
1150 (emit_expr): New function to write data into object file.
1151 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
1152 processor types.
1153 (parse_bitfield_cons): New function to parse bitfield expressions
1154 as used by i960 assemblers. Only compiled if
1155 BITFIELD_CONS_EXPRESSIONS is defined.
1156 (parse_mri_cons): New function to parse MRI style strings. Only
1157 compiled if MRI is defined.
1158 (parse_repeat_cons): New function to parse repeat counts. Only
1159 compiled if REPEAT_CONS_EXPRESSIONS is defined.
1160 * read.h (emit_expr): Added declaration of new function.
1161 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
1162 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
1163 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
1164 parse a HPPA expression, rather than special case in cons
1165 function.
1166 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
1167 than special case in emit_expr function.
1168 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
1169 Define to use new functions from tc-hppa.c.
1170 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
1171 (WANT_BITFIELDS): Removed; now obsolete.
1172 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
1173 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
1174 NS32K fixup, rather than special case in emit_expr function.
1175 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
1176 cons_fix_new_ns32k. Also use PARAMS rather than checking
1177 __STDC__.
1178 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
1179
1180 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
1181 Don't core dump if gas has no information about a section.
1182
1183Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1184
1185 * write.c (relax_and_size_seg): Always fully process a section.
1186 Section size is last frag's (vm)address plus its size. If no
1187 relocations are present, force SEC_RELOC flag clear.
1188 (dump_section_relocs): New debugging routine.
1189 (adjust_reloc_syms): New routine, broken out from write_contents.
1190 Don't adjust relocs that are already relative to section symbol.
1191 Look for obj_fix_adjustable macro to know what else to skip,
1192 instead of obj_write_symbol. Look for section symbol stored in
1193 section information.
1194 (write_object_file): Map adjust_reloc_syms over all sections.
1195 (write_contents): Clear SEC_RELOC flag if no relocations are
1196 found.
1197
1198 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
1199 keep it quiet.
1200
1201 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
1202
e28e0b95
KR
1203Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
1204
1205 * Makefile.in (all, dvi, info, install-info, clean-info): do not
1206 echo recursion lines.
1207 (install-info, clean-info): collapse into the dvi and info rule.
1208
267389df
ILT
1209Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
1210
1211 * as.h (strstr): Disable declaration for now.
1212 (fprint_value, sprint_value): Declare.
1213
1214 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
1215 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
1216
1217 * expr.c (expr_part): Made sanity checks a.out-specific.
1218 (expr): Disabled sanity checks.
1219
1220 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
1221 section symbol.
1222 * subsegs.c (subseg_change): Initialize section symbol pointer
1223 when setting up a new section.
1224
1225 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
1226 field back at gas symbol structure.
1227
1228 * symbols.c (colon): Cast obstack_next_free value to char* before
1229 doing arithmetic on it.
1230 * subsegs.c (subseg_new_rest): Likewise.
1231 * as.h (frag_now_fix): Likewise.
1232
1233 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
1234 calling bfd_make_section_old_way directly, and call subseg_set
1235 instead of subseg_change. Now returns void.
1236 (obj_elf_write_symbol): Only check local symbols for now.
1237 (elf_stab_symbol): Now static and void, and disabled until it
1238 works completely.
1239 (obj_elf_size): For expression values, fail silently for now.
1240 (obj_symbol_new_hook): Do nothing.
1241
1242 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
1243 relocation.
1244 (s_local) [OBJ_ELF]: New function.
1245 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
1246 (s_common): Rearrange to handle Solaris .common pseudo, which may
1247 sometimes use bss space instead of common.
1248 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
1249
a8285504
DZ
1250Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1251
1252 * configure.in: set host config to hpux for hppa*-hp-hpux
1253
267389df
ILT
1254Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
1255
1256 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
1257
1258Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
1259
1260 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
1261 * config/obj-aout.c (s_sect): Do it here.
1262
1263 * as.h (BAD_CASE): Don't make some lame compilers think we want
1264 substitution inside strings.
1265
1266 * as.c (print_version_id): New function, split off from main.
1267 (main): Call it.
1268 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
1269 for -V. Ignore -Q and -s options for now.
1270
a8285504
DZ
1271Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1272
1273 * Makefile.in: make installation & builds work again for crosses
1274
267389df
ILT
1275Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
1276
1277 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
1278 symbol values correctly.
1279
1280 * write.c (write_object_file): Deleted unused variables.
1281 (fixup_segment): Use sprint_value.
1282
1283 * messages.c (sprint_value, fprint_value): New routines.
1284
1285 * config/obj-elf.c (elf_stab_symbol): Now returns void.
1286 (obj_elf_stab_generic): Fix typo in logic.
1287
1288 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
1289
1290 * as.h (addressT, offsetT): New types, using BFD types if
1291 available.
1292 (relax_addressT, struct frag): Use them.
1293 * struc-symbol.h (valueT, struct broken_word): Likewise.
1294
1295 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
1296 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
1297
9126738c
DZ
1298Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
1299
1300 * Makefile.in: canonicalize install.sh; for use within
1301 this directory (and subdirs)
1302
267389df
ILT
1303Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
1304
1305 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
1306 specified, should have both S1 and S2 fields identical
1307 If only finding the problem was as fast as fixing the bug !!!!
1308
1309Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1310
1311 * write.c (write_contents): Do write out non-loadable sections.
1312 Debug sections can fall in this category.
115147fb 1313
267389df
ILT
1314 * read.c (s_app_file): Call elf_file_symbol for ELF files.
1315 * config/obj-elf.c (elf_file_symbol): New function.
1316
1317 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
1318 added argument to specify section base name.
1319 (obj_elf_stab_generic): Renamed from ..._stab. New argument
1320 specifies section base name.
1321 (obj_elf_stab): New function, calls obj_elf_stab_generic with
1322 ".stab" as section base name.
1323 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
1324 (obj_elf_type): Handle "object". Use bitwise-or to merge in
1325 symbol flags rather than simply replacing, so global/local flags
1326 are preserved.
1327 (obj_elf_ident): Rewrite.
115147fb 1328
a00ee522
DZ
1329Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1330
1331 * Makefile.in: remove parentdir support; use INSTALL_XFORM
1332
1333Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
1334
1335 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
1336 for any a.out target, not just Linux and 386BSD.
1337 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
1338 target.
1339
267389df
ILT
1340Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1341
1342 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
1343 don't exist or duplicate other inclusions.
1344
1345 * config/tc-vax.h (NO_RELOC): Define.
1346
1347Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
1348
1349 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
1350 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
1351 char to reg_prefix instead of to 'r'.
1352 (calcop): Change calls to get_reg.
1353 (calcop): Handle new case 'x' to set reg_prefix.
1354 (calcop): Set reg_prefix to 'r' after each call to get_reg.
1355 (cmpslot): Add 88110 conditions.
1356
1357 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
1358
1359 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
1360 before returning.
1361
1362 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
1363 adjacent; mov.s and mov.d swapped.
1364 (m88k_opcodes): Fix typo `r2' -> `2'.
1365
a00ee522
DZ
1366Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
1367
1368 * config/h8300.c: Support for H8/300-H opcodes.
1369
1370 * config/obj-coffbfd.c (w_strings): String table length is 4
1371 bytes, no matter what the host int size is.
1372
1373 * configure.in (alpha-*-osf*): New.
1374
68ad4c92
ILT
1375Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
1376
47fcc4f5
ILT
1377 * configure.in (mips-*-ecoffl*): New target; use ecoff and
1378 mips-lit.
1379 (mips-*-ecoff*): Added trailing '*'.
1380
68ad4c92
ILT
1381 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
1382 first FDR in a file to be zero.
1383
75776695
KR
1384Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1385
b7067d7f
KR
1386 * Makefile.in (VERSION): Jump to 2.1.4.
1387
75776695
KR
1388 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
1389
1390 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
1391 ECOFF format.
1392
1393Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1394
1395 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
1396 separate '851 mmu.
1397
1398 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
1399 and routine names. Assuming 32 bits for now.
1400
1401 * config/obj-elf.c (elf_frob_file): Look for macro
1402 elf_tc_final_processing_hook, instead of assuming a function
1403 always exists.
1404 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
1405 tc_final_processing_hook.
1406 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
1407
1408 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
1409 moved here from obj-elf.h.
1410 * config/obj-elf.h: Don't include CPU-specific header files.
1411
1412Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
1413
1414 * configure.in: configurations should match on 'hppa*' not 'hppa'.
1415
1416 * read.c: Add support for HPPA assembly language syntax (denoted
1417 with '#ifdef TC_HPPA').
1418
1419 * symbols.c: Add support for HPPA assembly language syntax (denoted
1420 with '#ifdef TC_HPPA').
1421
1422 * write.c (write_contents): Add support for HPPA-style
1423 relocations.
1424
1425 * config/obj-elf.c: Stab symbols weren't written properly.
1426 (obj_elf_version):
1427 (obj_elf_desc):
1428 (obj_elf_write_symbol):
1429 (obj_elf_write_symbol_p):
1430 (obj_elf_frob_symbol):
1431 (elf_stab_symbol):
1432 (elf_frob_file):
1433
1434 * config/tc-hppa.c: Support for HPPA symbol extension sections.
1435 Remove some unused code. Support for HPPA assembly language
1436 syntax.
1437
1438 * app.c:
1439
1440 * symbols.c:
1441
1442 * config/obj-elf.h:
1443 (obj_write_symbol):
1444 (obj_frob_file):
1445 (elf_tc_symbol):
1446 (elf_tc_make_sections):
1447
1448 * config/tc-hppa.h:
1449
1450Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1451
1452 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
1453 hash_new will have succeeded if it returns.
1454 * config/tc-a29k.c (md_begin): Likewise.
1455
1456 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
1457 const.
1458 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
1459 gcc.
1460 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
1461
1462 * expr.c: Delete register declarations; gcc ignores them anyways.
1463
1464Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1465
1466 * hash.c (hash_new): Use xmalloc, since many callers don't check
1467 for failure.
1468
49864cfa
KR
1469Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1470
1471 * frags.c (zero_address_frag, bss_address_frag): These are
1472 external.
1473
1474 * tc.h (md_reloc_size): This is const.
1475 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
1476 (md_reloc_size): Now const.
1477
1478 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
1479 trailing commas.
1480 * as.h (enum _segT): Ditto.
1481
1482 * struc-symbol.h (N_TYPE_seg): This should be const.
1483
1484Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
1485
1486 * config/obj-ecoff.c (add_file): Cast file_name to char * in
1487 listing_source_file call.
1488
1489 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
1490 of subseg_new call to eliminate const attribute.
1491 (obj_elf_stab): Ditto.
1492 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
1493
1494 * read.c (s_align_bytes): Properly record alignment.
1495
1496 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
1497 for the prototype/no prototype macro.
1498
1499 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
1500 void.
1501
1502 * as.h (relax_stateT enum): Delete trailing comma.
1503
9a7d824a
ILT
1504Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
1505
1506 * app.c (do_scrub_begin): Let line_comment_chars override
1507 comment_chars.
1508 (do_scrub_next_char): If a line comment character is not at the
1509 start of a line, treat it as a comment character if it is one.
1510 For a CPP line comment use pseudo-op .appline rather than .line.
1511 * input-scrub.c (logical_input_line): Make int rather than
1512 unsigned.
1513 (input_scrub_push, input_scrub_begin): Initialize
1514 logical_input_line to -1 rather than 0.
1515 (bump_line_counters): Increment logical_input_line.
1516 (new_logical_line): If line_number is -2, decrement
1517 logical_input_line.
1518 (as_where): Use logical_input_line even if it is 0.
1519 * read.h (s_app_file prototype): Now takes an int argument.
1520 * read.c (potable): Make .appfile call s_app_file with 1. New
1521 .appline pseudo-op calls s_app_line.
1522 (s_app_file): If .appfile, call new_logical_line with -2 to
1523 account for newline inserted by do_scrub_next_char. If listing,
1524 call listing_source_file.
1525 (s_app_line): New function to handle fake pseudo-op .appline.
1526 * config/obj-coff.c (obj_pseudo_table): Make .appline call
1527 obj_coff_ln.
1528 (obj_coff_ln): Added argument to indicate whether .appline.
1529 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
1530 obj_coff_ln.
1531 (obj_coff_ln): Added argument to indicate whether .appline.
1532 * config/tc-mips.c (s_file): Pass argument to s_app_file.
1533
61f14fb0
ILT
1534Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
1535
1536 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
1537
1538Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1539
1540 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
1541 invalid values.
1542
6eef4543
SC
1543Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
1544
1545 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
1546 relocations correctly.
1547
f8f61478
KR
1548Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1549
6eef4543
SC
1550 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
1551 it's wrong.
1552
f8f61478
KR
1553 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
1554 if value is out of range.
1555
1556 Patch from Minh Tran-Le:
1557 * config/tc-i386.c (i386_operand): For in/out port register used
1558 as base reg, include InOutPortReg in operand type.
1559 (MATCH): Accept overlap value of InOutPortReg.
1560
1561Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
1562
1563 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
1564 Add calls to listing routines to produce combined source/assembler
1565 listings.
1566 (obj_ecoff_stab): Create a file pointer if none used yet.
1567 (ecoff_frob_file): Set symcount to correct value.
1568
1569Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1570
1571 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
1572 release.
1573
1574 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
1575 Define in terms of constants, not C structure sizes.
1576
1577 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
1578
1579Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1580
1581 * config/obj-aout.c (obj_header_append): Don't define if it's
1582 defined as a macro.
1583 * config/obj-hp300.h (obj_header_append): Define it as a macro.
1584 * config/obj-hp300.c (hp300_header_append): New function.
1585
1586 * Makefile.in (distclean): Don't bother cleaning up doc files;
1587 they aren't going to be in this directory.
1588
204ff785
ILT
1589Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
1590
f8f61478
KR
1591 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
1592 symbols.
1593
204ff785
ILT
1594 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
1595 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
1596
65824763
KR
1597Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1598
204ff785
ILT
1599 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
1600 initialization.
1601
65824763
KR
1602 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
1603
21bb48b9
ILT
1604Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
1605
1606 * config/tc-mips.c (macro): Correct floating point double word
1607 loads and stores for big endian target.
1608
e7c2f943
KR
1609Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1610
1611 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
1612 calls. Deleted some unused code.
1613 * config/obj-coff.c: Likewise.
1614
1615 ELF support, mostly contributed by Utah:
1616 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
1617 obj_elf_type): Rewrite.
1618 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
1619 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
1620 New functions.
1621 (obj_elf_ident): Dummy.
1622 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
1623 TARGET_SYMBOL_FIELDS): New macros.
1624 (gdb_section): New variable decl.
1625
1626 * config/tc-i386.c (md_atof): Return zero, not empty string, on
1627 success.
1628
1629 BFD_ASSEMBLER conditional changes:
1630 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
1631 Don't define these.
1632 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
1633 (fetch_coff_debug_section): Ditto.
1634 (obj_coff_endef): Call fetch_coff_debug_section.
1635 (struct line_no): New type.
1636 (c_symbol_merge): New way for copying aux fields.
1637 (c_dot_file_symbol): Put symbol in absolute section, and set flag
1638 BSF_DEBUGGING.
1639 (function_lineoff): New symbol.
1640 (function_lineoff, text_lineno_number, our_lineno_number,
1641 lineno_lastP): Don't define.
1642 (c_line_new): Don't define.
1643 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
1644 placeholders, until
1645 line-number recording gets implemented.
1646 (obj_new_symbol_hook): New code for handling aux fields.
1647 (add_lineno, add_linesym): New functions.
1648 (obj_coff_ln): Call add_lineno, not c_line_new.
1649 (obj_coff_endef): New code for handling symbol names. New lineno
1650 code. Look for section name "*DEBUG*" for debugging section.
1651 (align, coff_check_file_symbols, obj_coff_section,
1652 coff_frob_file): New functions.
1653 * config/obj-coff.h: Reordered some includes.
1654 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
1655 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
1656 define these.
1657 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
1658 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
1659 aux entries. Most SA_* macros now use it unconditionally.
1660 (S_*): Use `bsym' field, and access BFD private data.
1661 (SF_*): Use `sy_flags' symbol field for most of these.
1662 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
1663 define.
1664 (*_section_header): Don't define.
1665 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
1666 interface.
1667 (tc_gen_reloc) [I386COFF]: New function.
1668 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
1669 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
1670 macros.
1671
1672 * config/obj-coff.c (stack_init): Don't do assignments inside
1673 conditions.
1674 (obj_coff_def): Simplified handling of symbol name a bit.
1675 (tag_insert): Name argument is now pointer to CONST.
1676 (obj_crawl_symbol_chain): Commented out.
1677
1678 * config/obj-coff.h: Use PARAMS macro in prototypes.
1679
1680 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
1681 through frchainP pointer if it is null.
1682
1683 * configure.in: Warn if BFD mode is explicitly turned off but is
1684 required by specified target.
1685 (mips ecoff targets): Don't need to set bfd_gas here; it gets
1686 taken care of later.
1687
1688 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
1689 field.
1690 (yank_symbols): Merge symbols only if sy_forward is null.
1691
1692 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
1693 defined.
1694
1695 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
1696 pointer.
1697 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
1698
1699 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
1700 with "." is a local label.
1701
1702 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
1703 files.
1704
1705 * config/te-linux.h, config/te-386bsd.h: New config files.
1706 * configure.in (i386-*-linux, i386-*-bsd): Use them.
1707 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
1708 environment.
1709 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
1710
5d6cfa60
ILT
1711Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
1712
1713 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
1714 to want it that way.
1715 (ecoff_build_symbols): Turn local st_Proc symbols into
1716 st_StaticProc symbols. Set index field of external st_Proc and
1717 st_staticProc symbols correctly.
1718 * config/tc-mips.h (NO_LISTING): Don't define. People might want
1719 listings.
1720
e7c2f943
KR
1721Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1722
1723 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
1724 files.
1725 * configure.in (m68k-*-hpux): Use them.
1726
1727 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
1728 defined, otherwise zero.
1729
1730 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
1731
5d6cfa60
ILT
1732Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1733
1734 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
1735 address space number.
1736
1737Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
1738
1739 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
1740
1741 * config/tc-a29k.c: Include ctype.h.
1742 (define_some_regs): Added special-purpose registers for 29050.
1743
e7c2f943
KR
1744 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
1745
1746 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
1747 (change_to_section): Set it here instead.
1748
a1387260
ILT
1749Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
1750
1751 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
1752 hasn't been seen yet.
1753 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
1754
4a1bbbe7
SC
1755Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1756
1757 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
1758 SH.
1759
be2f6bd6
ILT
1760Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
1761
1762 * expr.c (operand): Fix unary plus operator (previously was the
1763 same as '~' operator!).
1764
1765Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1766
1767 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
1768 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
1769 obj_check_file_symbols if defined. Call verify_symbol_chain_2
1770 instead of open-coding it. Fix some bugs in patching up symbol
1771 chain.
1772 (relax_segment): Make some code we "ought to be able to" use for
1773 all targets no longer conditionalized on ns32k target; instead, do
1774 it always, and if the appropriate conditions fail, abort.
1775
1776 * symbols.c (DEBUG): Enabled.
1777 (symbol_new): Make sure bfd_make_empty_symbol works.
1778 (verify_symbol_chain_2): New funcion; takes one symbol as
1779 argument, anywhere in the chain.
1780 (dollar_label*): Use default initializers.
1781
1782 * as.c (perform_an_assembly_pass): Call md_begin here...
1783 (main): ...and not here.
1784
1785 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
1786 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
1787
1788 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
1789 (add_fix, add_frag): Now functions instead of macros.
1790 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
1791 s_data1, s_data2, s_bss): Use new *_section names, for
1792 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
1793 to handle non-integral segT.
1794 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
1795 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
1796 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
1797 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
1798 md_apply_fix_2; new md_apply_fix definition varies interface
1799 depending on BFD_ASSEMBLER.
1800 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
1801 names.
1802
1803 * config/obj-vms.c: Include config.h.
1804 (version_string): Delete declaration.
1805 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
1806 (vms_resolve_symbol_redef): New function, taken from VMS code in
1807 symbols.c.
1808 (_doprnt): Deleted.
1809 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
1810 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
1811 VMS_Psect_Spec): Fixed to compiler under traditional C.
1812 * config/obj-vms.h: Use PARAMS macro.
1813 (vms_resolve_symbol_redef): Declare.
1814 (RESOLVE_SYMBOL_REDEFINITION): New macro.
1815 * symbols.c (colon): Remove some VMS-specific code, look for
1816 RESOLVE_SYMBOL_REDEFINITION macro instead.
1817
1818 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
1819 instructions.
1820
1821 * config/tc-i386.c: Reordered some functions so inlining might
1822 work. Use PARAMS in function declarations.
1823 (reloc): New routine.
1824 (md_assemble): Rearrange switch statements to work with
1825 non-integral segT.
1826
1827 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
1828 SYMBOLS_NEED_BACKPOINTERS before defining it.
1829
1830 * subsegs.c (subseg_new_rest): Now static.
1831
1832 * read.c (pseudo_set): Better error message for difference of
1833 symbols in different frags.
1834
1835 * Makefile.in (check): Pass down some new variables, indicating
1836 pathname or program name for cc, nm, objdump.
1837
1838 * as.h (OUTPUT_FLAVOR): New macro.
1839 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
1840
1841 * configure.in: Initialize bfd_gas properly. Warn that ELF
1842 support is incomplete.
1843
1844Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1845
1846 * read.c (float_cons): Accept null pointer return from md_atof.
1847 * config/tc-m68k.c (md_atof): Return null for success.
1848 * config/tc-sparc.c (md_atof): Ditto.
1849
97a6070c
RP
1850Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
1851
1852 * doc/as.texinfo: formatting and comment cleanups; show SPARC
1853 alternative options in same style as other machines; simplify some
1854 conditional use; include GPL as separate file (from texinfo dir)
1855
1856 * doc/Makefile.in: (as.info) include directory containing GPL in
1857 makeinfo search path
1858
1859 * doc/h8.texi: new file; conditional settings for GAS manual
1860 on Hitachi chips
1861
1862Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
1863
1864 * doc/as.texinfo: mention SPARC architecture options.
1865
be2f6bd6
ILT
1866Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
1867
1868 * configure.in: Rearranged whitespace in per-host/per-target
1869 sections. Added hooks for dropping in HPPA support (not included
1870 yet). Separate out overrides of variables based on target format
1871 and bfd-gas selection from actual target-specific commands. Add
1872 error message for recognized but unsupported format name.
1873
349f20de
ILT
1874Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
1875
1876 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 1877 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
1878 want that.
1879
5316696f
DZ
1880Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
1881
1882 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
1883 $(srcdir)/as.texinfo explicitly in several places
1884
8ac18b21
RP
1885Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
1886
1887 * doc/Makefile.in: update dvi, clean targets for new source
1888 file structure
1889
d565311f
ILT
1890Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
1891
1892 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
1893 rather than undefining know.
8ac18b21 1894 * configure.in: Match ultrix*, not just ultrix.
d565311f 1895
0742a6fd
RP
1896Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
1897
1898 * doc/as.texinfo: converted conditional markup to use new
1899 Texinfo facilities, avoiding m4.
1900
1901 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
1902
1903 * doc/Makefile.in: recast doc configuration to use a link to an
1904 included texinfo file.
1905
1906 * doc/all.texi: settings for generic form of documentation.
1907
1908Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
1909
1910 * read.c (cons): Zero out frag when creating reloc.
1911
367fc835
ILT
1912Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
1913
84e4920f
ILT
1914 * config/tc-mips.c (gp_reference): Certain magic symbols can never
1915 be referenced off the GP register.
1916
367fc835
ILT
1917 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
1918 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
1919 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
1920
1921 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
1922 definition from other MIPS targets.
1923 * configure.in (mips-*-irix): Use emulation irix.
1924
dd4227d3
SC
1925Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
1926
1927 * config/tc-h8500.c: Get relax size of branch instructions right,
1928 (get_operand): Parse @sp+ correctly.
1929
be2f6bd6
ILT
1930Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1931
1932 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
1933 COFF section header field.
1934
1935 * configure.in: Print error message if host or target is not
1936 supported.
1937
1938 * configure.in: If with-bfd-assembler, use obj-coff instead of
1939 obj-coffbfd.
1940
1941 * config/ho-generic.h: Include string.h.
1942
ed364bb6
ILT
1943Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
1944
0433135d
ILT
1945 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
1946 '$' as local, for any object file format.
1947
477b4b04
ILT
1948 * config/tc-mips.c (macro): Optimizations to branching code and a
1949 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
1950 Campbell).
1951
ed364bb6
ILT
1952 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
1953 * configure.in (mips-sgi-irix*): Set gas_host to irix.
1954
670a50eb
ILT
1955Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
1956
1957 * subsegs.c (subseg_new): Set output_section of new section.
1958 * as.c (perform_an_assemly_pass): Don't set output_section here.
1959 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
1960 since it has additional sections.
1961 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
1962 not bss_section.
1963 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
1964 ecoff_undefined field.
1965 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
1966 ecoff_undefined field.
1967 (add_file): If using stabs, just output a stabs symbol rather than
1968 creating a new fdr.
1969 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
1970 it with get_absolute_expression, rather than skipping it by hand.
1971 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
1972 than ECOFF line number information.
1973 (obj_ecoff_stab): Accept non-zero values for stabs line number.
1974 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
1975 to small, undefined and/or readonly sections if appropriate.
1976 Don't output symbol names containing \001 characters.
1977 (ecoff_frob_file): Make sure at least one fdr is output.
1978 * config/tc-mips.h: Define TC_MIPS.
1979 * config/tc-mips.c (g_switch_value): New static variable.
1980 (md_assemble): Set gp size of output BFD.
1981 (gp_reference): New function; returns 1 if expression can be
1982 accesssed via gp. Always returns 0 if not using ECOFF.
1983 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
1984 possible.
1985 (macro): Generate sequences using gp if possible.
1986 (md_parse_option): Ignore -EL and -EB. Parse -G.
1987 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
1988 (s_change_sec): Handle .rdata and .sdata for ECOFF.
1989 (s_extern): Mark symbol as external. Set ecoff_undefined field.
1990
2b1b5697
KR
1991Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1992
670a50eb
ILT
1993 * output-file.c (output_file_create): Don't call as_perror for
1994 filename rejected by application.
1995
1996 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
1997 the output file.
1998
4b061a2a
KR
1999 * doc/as.texinfo: Don't use @value in node names for the moment;
2000 references don't appear to work right.
2001
4478def8
KR
2002 * as.h (const, volatile): Put these definitions back, and use
2003 them.
2004
2b1b5697
KR
2005 * doc/as.texinfo: First pass at using new texinfo features --
2006 variables, conditional tests. Far from complete.
2007
2008Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2009
2010 * read.c: Temporary hack to handle some 64-bit constants. This
2011 should be redone later.
2012 (target_big_endian): Declare.
2013 (big_cons): If it's set, reverse order of bytes being copied.
2014 * config/tc-sparc.c (md_begin): Set target_big_endian.
2015
2016 * read.c (s_ignore): Delete declaration of is_end_of_line.
2017
2018 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
2019 forward pointers properly.
2020
e02eaa59
SC
2021Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
2022
2023 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
2024 wasn't being stored into scnhdr.
2025 * config/obj-coffbfd.h: Add prototype of s_get_segment.
2026 * read.c (TC_START_LABEL): Default definition.
2027 (read_a_source_file): Use TC_START_LABEL macro to work out
2028 if a label has been seen.
2029
543d88e4
ILT
2030Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
2031
c39b3eba
ILT
2032 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
2033 the bottom (make expands variables in dependencies when the
2034 dependencies are read, not when they are used).
2035
543d88e4
ILT
2036 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
2037 a29k .bss section; the mondfe program doesn't like it.
2038
2b1b5697
KR
2039Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2040
2041 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
2042 const.
2043 (current_architecture): Don't need initializer.
2044
2045Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2046
2047 * doc/none.m4: Define Z8000.
2048 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
2049 texinfo file before recreating it.
2050 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
2051 this directory.
2052 (srcdir): Delete second, bogus definition.
2053 (as.info): Look for as-*.texinfo in current directory rather than
2054 in $(srcdir).
2055 (as.dvi): Ditto.
2056 (dvi): New rule.
2057 * doc/configure.in: Create links to all as-*.texinfo files in the
2058 source directory, if that's not the current directory.
2059
2060 * configure.in (per-host): Accept MIPS host with BSD version
2061 number.
2062 (per-target): Classify i486 as i386. Use generic cpu_type instead
2063 of target_cpu in selecting format etc.
2064
2065 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
2066 * read.c (potable): Change .app-file to .appfile.
2067
2068 * config/ho-decstatn.h: Renamed from ho-decstation.h.
2069 * configure.in: Adjusted.
2070
2071 * config/obj-bfd-sunos.*: Unused; deleted.
2072
2073 * Makefile.in (version.c, vers-stamp): Deleted.
2074 (config.h): Define GAS_VERSION.
2075 * as.c (version_string): Deleted declaration.
2076 (main): Look for GAS_VERSION instead.
2077
2078 * doc/as.texinfo: Updated description of -a* (listing) options,
2079 and describe how to pass them through from gcc.
2080
2081 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
2082 process relocs if there aren't any relocs to process. Avoids
2083 malloc/free bug on SCO too.
2084
2085 * as.h: Move local include files below system include files, to
2086 avoid some redefinition complaints on some systems.
2087 (const, volatile): Don't need these conditionally defined if we
2088 use CONST and VOLATILE from ansidecl.h.
2089 (seg_name): Use CONST, not const.
2090
543d88e4
ILT
2091Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
2092
2093 * config/tc-mips.c: Reindented to GNU standards.
2094
2c19a57c
ILT
2095Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
2096
61001d96
ILT
2097 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
2098 (fixup_segment): Add a29k special case; the linker is not prepared
2099 to see a segment offset here.
2100
2c19a57c
ILT
2101 * app.c (do_scrub_next_char): Added new state, 10, modifying state
2102 9 to only keep a space in between identifier characters.
2103
afcc637a
DZ
2104Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
2105
2d4bef5e
DZ
2106 * Makefile.in: add dvi target; as-$(config).texinfo might live in
2107 srcdir, might be in objdir.
afcc637a
DZ
2108
2109 * doc/Makefile.in: dvi depends on as.dvi
2110
80c8fd72
DZ
2111Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
2112
2113 * Makefile.in: add installcheck target
2114
1369949e
ILT
2115Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
2116
2117 * config/tc-mips.c (macro): Use $AT for any floating point load.
2118
63cdddad
KR
2119Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
2120
2121 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
2122 bignums, but don't emit error message.
2123
69498fa2
JW
2124Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
2125
2126 * Makefile.in (targ-cpu.o): Depend on config.h.
2127
f6a91cc0
ILT
2128Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
2129
2130 * app.c (do_scrub_next_char): Added new state, 9, to avoid
2131 dropping a space immediately following an identifier.
2132 * expr.c, write.c: Rewrote assert expressions to not use multiple
2133 lines; I don't think that can be done portably.
2134 * config/tc-mips.c (macro): Use $AT if target register is zero in
2135 load instruction, which it can be for a floating point load.
2136
a36f6645
ILT
2137Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
2138
3d3c5039
ILT
2139 * write.c (write_contents): Compute the relocs before writing out
2140 the section contents.
2141 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
2142 symbol table and values right.
2143 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
2144 with $L is local.
2145 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
2146 by the section vma.
2147
2148 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
2149 z8k-opc.h, not z8k.h.
2150
a36f6645
ILT
2151 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
2152 symbol.
2153
2a697fa4
DZ
2154Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
2155
2156 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
2157
f2f7d044
ILT
2158Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
2159
2160 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
2161 to be on a single line.
2162
ed099874
KR
2163Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2164
2165 * Makefile.in (config.h): Create file, writing out definitions of
2166 target cpu, alias, and canonical name.
2167 (ALL_CFLAGS): No longer define TARGET_CPU.
2168
2169 * Makefile.in (check): Print a message, instead of quitting
2170 silently.
2171
2172 * as.c (main): Don't catch any signals, for now.
2173
2174 * version.c: Deleted.
2175 * Makefile.in: Generate it, putting in only the version number
2176 itself.
2177 (VERSION): New variable.
2178 * as.c: Include config.h.
2179 (main): Reformatted version string. Include target alias. Don't
2180 print if not requested (i.e., unknown -v argument).
2181
2182 * as.c (stralloc): Deleted.
2183 (main): Call strdup instead.
2184
2185 * configure.in: Handle all 68300 series chips.
2186 * config/tc-m68k.c: Include config.h.
2187 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
2188 series cpus as defaults.
2189 (md_parse_option): Accept some m68300 series CPUs as defaults.
2190
2191Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2192
2193 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
2194 not already defined.
2195 (main, got_sig): Use them.
2196 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
2197 values.
2198
2199Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
2200
2201 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
2202 support.
2203
2204 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
2205 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
2206 (struct loc, struct proc, struct file): Moved to tc-mips.c within
2207 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
2208 * config/tc-mips.c: Rearranged for ECOFF support. Added
2209 prototypes for all static functions. Moved existing minimal
2210 debugging format support info #ifndef OBJ_ECOFF blocks.
2211 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
2212 does not support a non sign extended high 16 bits reloc. Adjusted
2213 all callers accordingly.
2214 (tc_get_register): Renamed from get_register, and made non-static.
2215
2216 * config/mips-big.mt, config/mips-lit.mt: New files. Define
2217 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
2218 respectively.
2219 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
2220 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
2221 obj_format ecoff and gas_target mips-lit or mips-big.
2222
c5d4bc88
KR
2223Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
2224
2225 * version.c: Bump to version 2.0.1.
2226
fefba3a5
ILT
2227Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
2228
2229 * write.c (chain_frchains_together): Check that seg_info (section)
2230 is not NULL.
2231 (write_object_file): Call obj_frob_file after setting the symbols,
2232 not before.
2233
2b1b5697
KR
2234Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
2235
2236 * Version 2.0 released.
2237
fefba3a5
ILT
2238Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2239
2240 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
2241
2242Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
2243
2244 * read.h: Define stringer here.
2245 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
2246 places.
2247
bf449293
SC
2248Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
2249
2250 * read.c (s_space): Multiply repeat count by mult, not fill.
2251
9471a360
KR
2252Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
2253
2254 * read.c: Include ctype.h.
2255
1101551c
KR
2256Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2257
2258 Patches from Eric Youngdale:
2259 * make-gas.com: Find obstack.obj if it's not in the current
2260 directory.
2261 * read.c (s_ignore): Don't declare is_end_of_line. It's
2262 redundant, and triggers a VMS gcc compiler bug.
2263
2264 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
2265 current segment as an argument. (Ignored in all cases but VMS.)
2266 All callers and definitions changed.
2267
5e4cddb7
ILT
2268Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
2269
2270 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
2271 case compile again.
2272
f3ca2a64
KR
2273Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
2274
2275 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
2276 so "~0x80" won't be rejected.
2277
2278 * config/obj-elf.c: No longer include elf/reloc.h.
2279 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
2280 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
2281 routines.
2282 (obj_elf_xstab): New routine.
2283 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
2284 argument to s_ignore. Put "#if 0" around unused code.
2285 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
2286 Call elf_xstabs for .stabs and .xstabs operators.
2287
2288 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
2289
2290 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
2291 present.
2292
2293 * configure.in: mips-bsd configuration was missing format spec.
2294 Should use aout.
2295
2296 * Makefile.in (Makefile): Depends on configure.in.
2297
2298 * config/tc-mips.c (append_insn): Don't check for alignment of
2299 frag in memory; alignment of instructions in section is a separate
2300 matter.
2301
2302 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
2303 C availability.
2304
2305 * listing.h: Always provide function declarations, not macros, so
2306 pcc won't lose.
2307
7687d89b
JG
2308Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
2309
2310 * CONTRIBUTORS: Update Gilmore entry.
2311
2312Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2313
2314 * frags.c (frag_init): New function.
2315 (zero_address_frag, bss_address_frag): Now initialized at run
2316 time.
2317 * as.c (main): Call frag_init.
2318
160b7f0f
ILT
2319Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
2320
2321 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
2322 Don't unget ch2 if we didn't get it.
2323
0cca30f3
KR
2324Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2325
2326 * doc/Makefile.in (TEXIDIR): Updated for new layout.
2327
2328 * config/tc-sparc.c (s_common): Add support for ELF version.
2329 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
2330 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
2331 New macros.
2332 (md_convert_frag): New macro.
2333
2334 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
2335 symbol, fix the offset so "+2" isn't required.
2336
2337 * config/tc-i960.c (line_comment_chars, line_separator_chars):
2338 Define as common/bss.
2339 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
2340 initializers are sufficient.
2341
2342 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
2343 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
2344 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
2345 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
2346 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
2347 "IGNORE_DEBUG" conditional, since both branches are identical.
2348 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
2349 referencing symbol structure members.
2350 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
2351
2352 * as.h (struct frag): Reordered a couple of fields for better
2353 packing.
2354
2355 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
2356 section info.
2357 (write_contents) [BFD_ASSEMBLER]: New function.
2358 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
2359 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
2360 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
2361 (fixup_segment): Make sure common-section symbols get treated the
2362 same as undefined symbols.
2363 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
2364 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
2365 section info.
2366 * write.h (fix_new): Update prototype.
2367
2368 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
2369 md_section_align, md_undefined_symbol): Don't provide prototypes
2370 if these are defined as macros.
2371 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
2372 section passed.
2373
2374 * symbols.c (symbol_new): Argument NAME is now pointer to const.
2375 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
2376 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
2377 BFD symbol.
2378 (colon): Display other/desc fields of redefined symbol only if
2379 S_GET_OTHER and S_GET_DESC are defined.
2380 (symbol_make): Argument NAME is now pointer to const.
2381 (symbol_find, symbol_find_base): Likewise.
2382 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
2383 * symbols.h: Fix prototypes for new const arguments. Add
2384 prototypes for BFD_ASSEMBLER S_* functions.
2385
2386 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
2387 for changing to an existing section.
2388 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
2389 called by subseg_new and subseg_set.
2390 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
2391 given section name and subseg number.
2392 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
2393 new section/subsection.
2394
2395 * read.c: Don't include ctype.h.
2396 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
2397 for now; should be machine-dependent.
2398
2399 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
2400 targets, forcing BFD use.
2401
2402Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2403
2404 * config/tc-sparc.c: Use PARAMS macro for static function
2405 declarations. Use BFD_RELOC_ macros everywhere, with
2406 compatibility macros declared for non-BFD mode.
2407 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
2408 instead of enum reloc_type.
2409 (emit_sparc_reloc): Commented-out function deleted.
2410 (md_convert_frag): Deleted.
2411 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
2412 (md_apply_fix): Changed calling sequence (conditionally) for BFD
2413 version.
2414 * config/tc-sparc.h (md_convert_frag): New macro.
2415
2416 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
2417 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
2418 of referencing fields directly.
2419
2420 * write.c (cvt_frag_to_fill): New function; extracted from
2421 write_object_file.
2422 (write_object_file) [! BFD_ASSEMBLER]: Call it.
2423 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
2424 and set its size and flags.
2425
2426 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
2427 fields with BFD equivalents. Turn on back-pointers, and add
2428 target-specific fields at end.
2429
2430Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
2431
2432 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
2433 (write_object_file): Set it here instead, so that fixup_segment
2434 can see the correct value.
2435
2436Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2437
2438 * write.c (write_object_file): Check for errors and warnings and
2439 bail out before processing contents.
2440 (chain_frchains_together_1): New function, does most of the work
2441 of remove_subsegs.
2442 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
2443 (remove_subsegs) [! BFD]: Call it.
2444 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
2445 structures and routines.
2446
2447 * config/obj-elf.*: New files.
2448
2449 * config/mips.mt, config/rs6000.mt: Deleted.
2450
2451 * config/h8300.mt: Don't specify compiler here.
2452
7687d89b 2453 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
2454 not the h8300 one.
2455 * config/tc-z8k.h: Comment fix.
2456
2457 * write.c: Reordered some functions for better inlining.
2458 (fixup_segment): Linkrelax code is no longer conditional on
2459 TC_I960.
2460
2461Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
2462
2463 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
2464 obj-coffbfd.h}: support for the H8/500
2465
2466Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2467
2468 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
2469 * write.c (write_object_file): Not here.
2470 (fix_new): Initialize fx_addnumber.
2471
2472 * listing.c: Don't include target-cpu.h explicitly, since as.h
2473 includes it.
2474
2475Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2476
2477 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
2478 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
2479 (struct fix): Reordered fields for compactness and efficiency.
2480 Converted some logical fields to 1-bit fields.
2481
2482 * config/obj-aout.h: Use PARAMS.
2483 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
2484 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
2485
2486 * read.c: Don't include listing.h; as.h includes it. Removed
2487 DONTDEF code.
2488 [BFD_ASSEMBLER]: Include subsegs.h.
2489 (old_buffer, new_broken_words): Default initialization is
2490 sufficient.
2491
2492 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
2493 to 0, define stdoutput.
2494 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
2495 Call bfd_set_arch_mach.
2496 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
2497 bfd_close_all_done. Call bfd_perror on failure.
2498 (output_file_append) [BFD_ASSEMBLER]: Don't define.
2499
2500 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
2501
2502 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
2503 if not MANY_SEGMENTS. Define new field bfd_section if
2504 BFD_ASSEMBLER.
2505 (seg_info): New macro.
2506
2507 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
2508 variables, and some irrelevant comments.
2509
2510 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
2511 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
2512 * configure.in: Permit --with-bfd-assembler now, with a warning.
2513 Variable need_bfd is now a boolean, as is new variable bfd_gas.
2514 Set BFDDEF and BFDLIB in Makefile when appropriate.
2515
2516 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
2517 (main): Refer to flag_always_generate_output instead of
2518 flagseen['Z'].
2519
2520 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
2521 (*_section) [BFD_ASSEMBLER]: Define them.
2522 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
2523 set section flags when appropriate.
2524 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
2525 section is not absolute, undefined, or an assembler internal one.
2526 (absolute_section, undefined_section): Always define.
2527 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
2528 switch statements into if-else trees.
2529 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
2530 SEG_BSS and SEG_DATA.
2531
2532 * as.h (frag_now_fix): New macro.
2533 * symbols.c (colon): Use it.
2534
2535Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
2536
2537 * config/tc-mips.c: Added mips support for mips-dec-bsd.
2538 * config/tc-mips.h: Added mips support for mips-dec-bsd.
2539 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
2540 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
2541 * configure.in: Added mips support for mips-dec-bsd.
2542 * atof-generic.c: Define TRUE and FALSE if not defined.
2543
2544Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2545
2546 * version.c: Bumped version number to 1.93.05.
2547
2548Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2549
2550 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
2551 (obj_emit_lineno): Don't need return at end of void function.
2552 (obj_symbol_new_hook): Ditto.
2553
2554 * config/tc-m68k.c: Removed some unused code.
2555 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
2556
2557 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
2558 offset field is set.
2559
2560Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2561
2562 * config/tc-sparc.c (architecture_requested, warn_on_bump,
2563 md_relax_table): Use default zero initialization.
2564 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
2565 latter, instead of selecting with preprocessor conditionals.
2566
2567Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
2568
2569 * configure.in: recognise all sparclite variants
2570
2571Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2572
2573 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
2574 accidentally changed to use subseg_change where it should have
2575 been subseg_new.
2576
6c5f9998
KR
2577Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2578
0bd77bc4
KR
2579 * expr.c (operand): If character other than comma or newline is a
2580 logical end-of-line character, use the newline case.
0cca30f3
KR
2581 From Eric Youngdale:
2582 (operand): Set X_add_number field for floating-point numbers.
2583 (operand): Treat zero byte as end-of-operand.
0bd77bc4 2584
6c5f9998
KR
2585 * configure.in (per-target): Look for with_bfd_assembler option.
2586 For now, only accept "no", until the merge is done.
2587
0cca30f3
KR
2588 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
2589 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
2590 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
2591 * read.c: Finish conversion to S_* macros in the VMS only
2592 parts of the program. Add "const" modifier to hex_value.
2593 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
2594 "ifdef OBJ_VMS".
2595 * expr.c: Add "const" modifier to hex_value.
2596 * symbols.c: Finish conversion to S_* macros in the VMS only
2597 parts of the program. Add "const" modifier to
2598 md_[long,short]_jump_size. Remove declaration of const_flag
2599 (which will be declared in obj-vms.h).
2600 * write.c: Add "const" modifier to md_[long,short]_jump_size.
2601 Fix arguments to VMS_write_object_file.
2602 * config-gas.com: New file. Script for VMS systems to set up the
2603 configuration to build gas for VMS, and create config.status.
2604 * make-gas.com: Redone to work with new scheme.
2605 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
2606 stabs directives.
2607 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
2608 will swap bytes if needed on a big endian system. Use throughout
2609 as needed.
2610 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
2611 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
2612 types of malformed stabs. Change parsing algorithm so that we are
2613 more certain of having all of the information that we need on hand.
2614 * obj-vms.c (final_forward_reference): New function, used to help
2615 resolve the data types of as many struct elements as possible
2616 when some part of the struct is not fully defined by the compiler.
2617 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
2618 stabs directives.
2619 * obj-vms.c (VMS_write_object_file): Define all vtable psects
2620 as symbols as well in the object file. Look for external functions
2621 that start with "__vt.", and turn them into variables, since the
2622 g++ compiler is incapable of doing this.
2623 * tc-vax.c: Add '1' option for backward compatibility with older GCC
2624 versions.
2625 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
2626 * input-scrub.c (as_where): Fix bug where as would crash if we did not
2627 have the name of the source file yet.
2628 * config/ho-vms.h: define HO_VMS, not HO_VAX.
2629
9d76a195
KR
2630Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
2631
2632 * read.c (s_data): Always use "data_section", since it'll map to
2633 SEG_DATA or SEG_E1 if needed.
2634 (s_lcomm): Likewise with bss_section.
2635 (s_fill): Use memset, not bzero.
2636
2637Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2638
2639 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
2640 handling GDB symbol table data.
2641
2642 * config/obj-aout.h (segment_name): Delete definition.
2643 (seg_name): Delete declaration.
2644 * config/obj-bout.h (segment_name, seg_name): Ditto.
2645 * config/obj-vms.h (segment_name, seg_name): Ditto.
2646 * config/obj-coff.h (segment_name): Ditto.
2647 * config/obj-coffbfd.h (segment_name): Ditto.
2648
2649 * Changes for BFD_ASSEMBLER:
2650 * obj.h (obj_crawl_symbol_chain): Declare only if not
2651 BFD_ASSEMBLER.
2652 (obj_header_append, obj_pre_write_hook): Ditto.
2653 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
2654 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
2655 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
2656 otherwise, use seg_name array.
2657 (seg_name): Declare only if not BFD_ASSEMBLER.
2658 (section_alignment): Declare only if not BFD_ASSEMBLER.
2659 (big_section, reg_section, pass1_section, diff_section,
2660 absent_section, text_section, data_section, bss_section): If
2661 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
2662 mapping to segT enum values.
2663 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
2664 if these are used or defined, if BFD_ASSEMBLER.
2665 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
2666 subseg_new split into two functions.
2667 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
2668
2669 * as.h (volatile): Don't define if already defined.
2670 (had_errors, had_warnings): Provide prototypes for ANSI C even if
2671 NO_STDARG.
2672 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
2673 declare with format attribute for -Wformat checking.
2674
85825401
ILT
2675Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
2676
2677 * app.c, config/tc-*.c: Don't include read.h, since it is already
2678 included by as.h.
2679
2680 * These are based on patches from Minh Tran-le
2681 <mtranle@paris.intellicorp.com>.
2682 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
2683 obj_format coffbfd and gas_target i386coff for target.
2684 (i[34]86-*-isc*): New host (uses sysv).
2685 * config/i386aix.mt: Removed (no longer used).
2686 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
2687 (MINUS_G): Removed.
2688 (LDFLAGS): Added, defined as -shlib.
2689 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
2690 * config/te-sco386.h (LOCAL_LABEL): Don't define.
2691 (DOT_LABEL_PREFIX): Define.
2692 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
2693 name rather than L0\001.
2694 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
2695 local_bss_counter.
2696 * symbols.c, symbols.h (local_bss_counter): Removed.
2697 * write.c (write_object_file): bss no longer uses
2698 local_bss_counter. Pass correct data and bss size to
2699 VMS_write_object_file.
2700 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
2701 argument, rather than using local_bss_counter.
2702 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
2703 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
2704 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
2705 (size_section): Restored sanity check.
2706 (do_relocs_for): Base section address on s_paddr rather than
2707 computing it. Adjust a29k R_IHIHALF special case to account for
2708 section paddr (used to require paddr to be zero). If there are no
2709 reclos, set s_relptr to 0. Set relocation size in object_headers.
2710 (fill_section): Always set s_vaddr here, removing
2711 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
2712 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
2713 Set STYP_INFO for .comment.
2714 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
2715 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
2716 (crawl_symbols): Handle 8 character section name correctly. Use
2717 H_{SET,GET}_* macros.
2718 (do_linenos_for): Set lineno size in object_headers.
2719 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
2720 set s_vaddr here. If string_byte_count remains 4, set it back to
2721 0, and only write strings out if there are some. Call
2722 fill_section before do_relocs_for and do_linenos_for.
2723 (obj_coff_section): Handle optional quoted second argument giving
2724 section characteristics.
2725 (obj_coff_bss): Added to handle .bss.
2726 (obj_coff_ident): Added to handle .ident (puts string in .comment
2727 section).
2728 (obj_coff_lcomm): Put common symbols in .bss, not .data.
2729 (fixup_mdeps): Change to segment. Call frag_wane after
2730 md_convert_frag.
2731 (fixup_segment): Explicitly check S_IS_COMMON before making 386
2732 adjustment (already happened only for common symbols, but this is
2733 clearer).
2734 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
2735 * config/tc-i386.c (s_bss): Don't use if I386COFF.
2736 (md_pseudo_table): Ignore .optim and .noopt.
2737 (tc_coff_sizemachdep): New function.
2738 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
2739 compatibility.
2740 (LOCAL_LABEL): Removed definition.
2741 (DOT_LABEL_PREFIX): Defined.
2742
4539aa02
KR
2743Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
2744
6d331d71
KR
2745 * app.c (app_push): Use memcpy, not bcopy.
2746 (do_scrub_next_char): For \", return " not '.
2747 (symbol_chars): Now const.
2748
4539aa02
KR
2749 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
2750 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
2751
2752 * config/obj-coff.h: Don't use #elif.
2753
2754 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
2755 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
2756
3eb802b5
ILT
2757Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
2758
2759 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
2760 already defined.
2761
be06bdcd
SC
2762Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2763
2764 * app.c (do_scrub_begin): allow single quote strings if so
2765 configured.
2766
2767 * config/*z8k*: checkpoint
2768
2769Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
2770
2771 * read.c (read_a_source_file): avoid calling xmalloc (0).
2772
016e0d42
ILT
2773Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
2774
2775 * listing.c: Call xmalloc, not malloc; don't declare malloc.
2776
2777 * Changes to support SCO 3.2v4:
2778 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
2779 SEG_BSS, fill with NOP_OPCODE.
2780 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
2781 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
2782 using ZERO_BASED_SEGMENTS.
2783 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
2784 never set segment address for SEG_E2 (.bss) and don't write out
2785 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
2786 (obj_coff_endef): Don't merge labels or symbols awaiting forward
2787 definitions, and don't merge tags with non-tags. Check for .bf
2788 rather than just checking whether the second character is b and
2789 the third character is f.
2790 (obj_coff_val): gcc can generate values which we don't handle
2791 correctly; discard information for now, since it only affects the
2792 debugging information.
2793 (tag_find_or_name): Don't insert tags in the symbol table.
2794 (yank_symbols): Don't merge labels.
2795 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
2796 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
2797 set segment address if ZERO_BASED_SEGMENTS.
2798 (obj_coff_section): Accept and ignore a trailing quoted string, as
2799 used in AT&T i386 syntax.
2800 (fixup_segment): Take segment as argument. On the i386, adjust PC
2801 relative addends by the segment vaddr.
2802 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
2803 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
2804 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
2805
db33220f
KR
2806Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
2807
016e0d42
ILT
2808 * config/obj-coffbfd.c: Include libcoff.h.
2809
db33220f
KR
2810 * version.c: Now version 1.93.
2811
dde624ef
KR
2812Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
2813
db33220f
KR
2814 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
2815 power-of-two alignment for .align.
2816
dde624ef
KR
2817 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
2818 and leave everything else alone.
2819
2820Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
2821
2822 * Makefile.in (as.new): Don't bother saving as.old.
2823
2824 * write.c: Conditionalize on OBJ_VMS, not VMS.
2825 (magic_number_for_object_file): Don't define if OBJ_VMS.
2826
2827 * config/obj-vms.c: Changes for traditional C.
2828
7f2cb270
KR
2829Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2830
2831 * config/ho-generic.h (malloc, realloc): Declare.
2832
2833 * Lots of comment/whitespace changes.
2834
2835 * write.h (struct fix): Some fields reordered, narrowed.
2836
2837 * read.c (MASK_CHAR): Define using C types, not magic number.
2838
2839 * as.c, input-file.c: Deleted some unused code.
2840
2841 * app.c, as.h: Doc fix.
2842
2843 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
2844
2845 * as.h (xmalloc): Argument is long.
2846
2847 * xmalloc.c (error): Remove declaration; as.h takes care of it.
2848
0cca30f3
KR
2849 * doc/as.texinfo: Regrouped documentation of some command-line
2850 options. Updated options documentation for m68k. Some minor
2851 wording/punctuation changes.
2852
7f2cb270
KR
2853Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
2854
2855 * configure.in: Accept target OS "vms".
2856
2857 * symbols.c: Merged ANSI and non-ANSI function decls, using
2858 PARAMS macro.
2859
2860 * xmalloc.c: Just include as.h, don't bother trying to figure out
2861 other header files.
2862
2863 * strstr.c, strerror.c: Deleted.
2864 * Makefile.in: Deleted references.
2865
2866 * config/tc-ns32k.c: Don't include header file for string
2867 declarations; leave that to ho-*.h.
2868
2869Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
2870
2871 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
2872 imported from FSF sources.
2873
2874 * messages.c (strerror): Declare unconditionally.
2875
2876 * as.h: Delete alloca and register definitions.
2877
2878 * config/atof-ieee.c (mask): Now const.
2879
2880 * obstack.c, obstack.h: Deleted.
2881
2882 * as.h (flag_readonly_data_in_text): New flag.
2883 * as.c (main): Set it for -R.
2884
2885 * as.h (flag_suppress_warnings): New flag.
2886 * as.c (main): Set it for -W.
2887 * messages.c (as_warn): Check it instead of flagseen['W'].
2888
2889 * as.h (flag_always_generate_output): New flag.
2890 * as.c (main): Set it for -Z.
2891
2892 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
2893 * config/tc-a29k.h: Ditto.
2894 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
2895 macros.
2896
2897 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
2898 macro.
2899 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
2900 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
2901 write.h: Likewise.
2902 * read.c: Likewise.
2903
2904 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
2905 xrealloc from xrealloc.c.
2906 * xrealloc.c: Deleted.
2907 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
2908
2909 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
2910 or vms ho- files.
2911
2912 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
2913
2914 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
2915 don't initialize it with NULL.
2916
2917 * config/ho-vax.h (M_VAX): Deleted; was unused.
2918
2919 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
2920 New files imported from FSF version, contributed by Eric Youngdale.
2921 * README-vms-dbg, config/vms: Deleted.
2922
2923 * ChangeLog, config/ChangeLog: Merged.
2924
2925 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
2926 version.
2927
2928 * input-file.c (input_file_open): Eliminate call to setvbuf.
2929 [USG] (setbuffer): Deleted macro.
2930
6efd877d
KR
2931Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
2932
2933 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 2934 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
2935
2936 * configure.in: No te-386bsd.h file exists; don't try to use it.
2937
7f2cb270
KR
2938 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
2939
2940 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
2941 could be doing emulation.
2942
0cca30f3
KR
2943Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
2944
2945 z8000 documentation
2946 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
2947 all modified.
2948
6efd877d
KR
2949Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
2950
2951 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
2952
2953 * subsegs.h: add extern to segment_info declaration.
2954
2955 * read.h: added extern declarations for comment_chars,
2956 line_comment_chars, and line_separator_chars.
2957 read.c, app.c: removed definitions of comment_chars,
2958 line_comment_chars, and line_separator_chars.
2959
7f2cb270
KR
2960 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
2961 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
2962 the register name.
2963 (insert_reg): put REGISTER_PREFIX before register names before
2964 putting them in the symbol table.
2965 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
2966 M68KCOFF.
2967
2968 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
2969 section.
2970
2971 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
2972 comment_chars, line_comment_chars and line_seperator_chars
2973 consistently const, and always initialized them. Included read.h.
2974
2975Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
2976
2977 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
2978 constant will not fit in an immediate field.
2979 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
2980
2981Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
2982
2983 * obj-coff.c (callj_table): Delete global variable.
2984 (obj_emit_relocations): Define it locally here, and only if
2985 TC_I960 is defined.
2986
2987 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
2988 (m68k_ip): Don't warn about bignum used as float bit-pattern.
2989
2990 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
2991 with a single set using PARAMS macro.
2992
2993 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
2994 of 2.
2995
2996 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
2997
2998 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
2999 so widening works consistently.
3000
6efd877d
KR
3001Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
3002
3003 * version.c: Put conditional "const" before version_string, not
3004 before dummy function for VMS. Now version 1.91.03.
3005
3006 * app.c (do_scrub_next_char): Need double-\ before `000' to show
3007 printed rep of null character.
3008
7f2cb270
KR
3009Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
3010
3011 * obj-coffbfd.c (write_object_file): check return value of
3012 bfd_close_all_done.
3013
559d9aac
ILT
3014Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
3015
7f2cb270
KR
3016 * Support for i386-sysv.
3017 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
3018 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
3019 be used to set them all to zero as was done before.
3020 (fill_section): segment addresses now set in write_object_file.
3021 (fill_section): Don't set STYP_NOLOAD for .bss section.
3022 (fixup_segment): 386 uses strange common symbol format.
3023 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
3024 compatibility with SVR3.2 linker.
6efd877d
KR
3025 * configure.in: i386-sysv and i386-sco use coffbfd.
3026
559d9aac
ILT
3027 * app.c (do_scrub_next_char): discard whitespace after a label.
3028
0f8b9790
DZ
3029Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3030
3031 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
3032 hosts, use the sysv configuration for solaris2
3033
7f2cb270
KR
3034Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3035
3036 fix i960+non-bfd coff bit rot.
3037 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
3038 support for C source listings. (obj_coff_endef): look in the right
3039 part of the symbol for the symbol name
3040
3041 * tc-m68k.c (get_num): make it work for all segments, not just the
3042 first three.
3043
984cf2d7
ME
3044Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
3045
3046 * configure.in: recognize i386-*-bsd emulation.
3047
3048Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3049
3050 * configure.in: use the cpu-vendor-os triple for host and target
3051
7f2cb270
KR
3052Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3053
3054 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
3055 * tc-z8k.c: lots of bug fixes
3056
3057Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
3058
3059 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
3060 #elif, since it is not supported by old compilers.
3061 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
3062 couple of expressions in tc-m68k.c.
3063
984cf2d7
ME
3064Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
3065
3066 * read.c (cons): If NO_RELOC is defined, use it.
3067
7f2cb270
KR
3068 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
3069
3070Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
3071
3072 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
3073 local labels to start with a .) and set REGISTER_PREFIX to %.
3074 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
3075
5a0fc1d4
JG
3076Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
3077
3078 * messages.c: Comment changes.
3079
4959cb7b
KR
3080Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
3081
3082 * as.h: Test if __STDC__ is defined only, don't test its value.
3083 * messages.c: If __STDC__ is not defined, define NO_STDARG.
3084
5e9d510e
BK
3085Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
3086
3087 * listing.c (debugging_pseudo): Add stabs and stabn as things to
3088 ignore.
3089
7f2cb270
KR
3090Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
3091
3092 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
3093 sections starting from zero, rather than making them consecutive.
3094 This makes subsequent reloc calculations easier, esp if the object
3095 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
3096 allocate lcomm in .data rather than in .bss. It seems that some
3097 tools can't cope with a non-zero sized bss before linkage.
3098
3099Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
3100
3101 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
3102 throughout. That enum no longer means what we thought it meant.
3103
3104 * tc-m68k.c (md_assemble, md_parse_option): Handle new
3105 "-mno-688[58]1" options.
3106
3107 * tc-m68k.c: Added CPU32 support.
3108
3109Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3110
3111 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
3112
569dac15
JW
3113Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
3114
3115 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
3116 Change LIBDEPS dependence to LIBS.
3117
efbfb612
ILT
3118Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
3119
3120 * Makefile.in (install): if $(tooldir) exists, install as in
3121 $(tooldir)/bin.
3122
987b1491
ILT
3123Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
3124
ca5e9d49
ILT
3125 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
3126 .word is < -32768 or > 32767. The -J flag causes the error to be
3127 ignored. This is to catch over-sized switches generated by gcc on
3128 systems which don't support the broken .word hack.
3129 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
3130 write.c (fixup_segment): check for signed .word overflow if
3131 WARN_SIGNED_OVERFLOW_WORD.
3132
987b1491
ILT
3133 * write.c (fixup_segment): fixed missing parens in expression
3134 checking for byte or word overflow.
3135
7f2cb270
KR
3136 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
3137 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
3138 WARN_SIGNED_OVERFLOW_WORD.
3139
3140 * obj-coffbfd.c (fixup_segment): fixed missing parens in
3141 expression checking for byte or word overflow.
3142
3143Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3144
3145 Support for i386 coff
3146 * obj-coffbfd.h : added stuff
3147 * tc-i386.c (tc_coff_fix2rtype): new function
3148 * tc-i386.h : new coff defines
3149
b1520b1f
ILT
3150Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
3151
3152 * input-scrub.c (input_scrub_push): call input_file_begin, not
3153 input_scrub_begin.
3154 messages.c (as_perror): print ": " between the passed in error and
3155 the strerror, like perror does.
3156
b53ccaac
ILT
3157Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
3158
3159 * Makefile.in: use gas_target instead of modifying target_cpu.
3160 From Steve Chamberlain:
3161 Makefile.in: Handle m68*-*-coff*.
3162 read.c, read.h: add mult argument to s_space
3163
7f2cb270
KR
3164 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
3165 Motorola and MIT syntax; gas can now assemble either type of
3166 file.
3167 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
3168 From Steve Chamberlain:
3169 m68kcoff.mt: for m68k COFF.
3170 obj-coffbfd.c: (fixup_mdeps) added
3171 (size_section) removed bad sanity check
3172 (fill_section) added rs_machine_dependent case
3173 (write_object_file) call fixup_mdeps
3174 (fixup_segment) set fx_subsy to 0.
3175 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
3176 handle m68k.
3177 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
3178 pseudo ops.
3179
db4d20e5
KR
3180Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
3181
3182 * Makefile.in (LIBS): Include opcode library.
3183
e53ab768
KR
3184Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
3185
3186 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
3187 including zero are accepted, pass +0.0.
3188
7e10f53c
ILT
3189Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
3190
3191 * Makefile.in: map "as" through program_transform_name when
3192 installing.
3193
0cca30f3
KR
3194 * doc/Makefile.in: map "as" through program_transform_name when
3195 installing.
3196
b0952e12
JW
3197Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
3198
3199 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
3200
7f2cb270
KR
3201Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
3202
3203 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
3204 tc-i960.c (md_ri_to_chars): Always output bout object file in
3205 little endian byte order (used to use endianness of host).
3206
b2f221a9
KR
3207Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
3208
3209 * config/tc-m68k.c (init_table): Now const. Always include 68851
3210 data, so that "bc" is available to 68040 cache instructions.
3211 Added "tt0", "tt1", and 68ec030 variants.
3212 (md_assemble): Complain if 68000 (only) and 68881 are specified.
3213 (enum _register): Added TT0, TT1.
3214 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
3215 line number correctly in "internal error" messages. Don't print
3216 architecture-mismatch message for operand errors.
3217
3218 From Colin Smith (colin@wrs.com):
3219 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
3220 than install_operand.
3221
ab737e51
SC
3222Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3223
3224 * listing.c (buffer_line): rewind to the start of include
3225 files, they might be included twice.
3226
7f2cb270
KR
3227 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
3228
7121231f
ILT
3229Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
3230
3231 * Makefile.in: defined TARGET_CPU for C code so that it can choose
3232 one element of a family.
3233
7f2cb270
KR
3234 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
3235
3236 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
3237 so that we can assemble hand-written libgcc code.
3238
4772861e
KR
3239Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
3240
3241 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
3242 has already been formatted (but may still contain %-characters).
3243 (as_bad): Likewise.
3244
7f2cb270
KR
3245Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
3246
3247 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
3248 written with indirection on the last two operands, which can be
3249 either data or address registers. Added a new operand type 'r'
3250 which accepts either register type. Added '(' to notend stuff in
3251 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
3252
09952cd9
KR
3253Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
3254
3255 * as.h (enum _relax_state): Start off at one, not zero, to better
3256 catch uninitialized-variable errors.
3257 (linkrelax): Declare new variable.
3258
3259 * messages.c (warning_count, error_count): Default initializer is
3260 sufficient.
3261
3262 * write.c: Merged some declarations, using PARMS macro.
3263 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
3264 data_last_frag): No longer static.
3265 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
3266 defined, call it. Change segments before calling fixup_segment.
3267 (relax_align): If linkrelax, provide extra padding.
3268
3269 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
3270 their not having symbols associated.
3271
3272 * tc-i960.c (norelax, instrument_branches): Default initializer is
3273 sufficient.
3274 (linkrelax): Delete variable definition.
3275 (mem_fmt): Call fix_new with NO_RELOC.
3276 (tc_bout_fix_to_chars): Handle alignment relocs.
3277 (i960_handle_align): New function.
3278 * tc-i960.h (linkrelax): Delete declaration.
3279 (HANDLE_ALIGN): New macro; calls i960_handle_align.
3280 (NEED_FX_R_TYPE, NO_RELOC): New macros.
3281
a457f4d9
KR
3282Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
3283
3284 * config/sparc.mt: New file. Grab sparc opcode table from bfd
3285 library.
3286
4b857710
ILT
3287Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
3288
3289 * Makefile.in: always create installation directories. Removed
3290 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
3291 FLAGS_TO_PASS to recursive makes.
3292
0cca30f3
KR
3293 * doc/Makefile.in: always create installation directories.
3294
f7e9bc5a
SC
3295Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3296
3297 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
3298 being used with args swapped, causing occasional lossage when
3299 refilling buffers after an include file.
3300
c1c28543
KR
3301Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
3302
3303 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
3304 version. Discard bogus DONTDEF version.
3305 (as_warn, as_bad, as_fatal): Likewise.
3306
2e20e59a
KR
3307Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
3308
3309 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
3310 selected architecture, print a message saying so and listing what
3311 processors support it, rather than saying "operands mismatch".
3312
c8c7e0bf
KR
3313Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
3314
3315 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
3316
3317 * config/ho-rs6000.h (M_RS6000): Don't define it.
3318 (free): Declare it.
3319 (BROKEN_ASSERT): Define it if not __STDC__.
3320
7f2cb270
KR
3321Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
3322
3323 * sparc.mt: New file.
3324
3325Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
3326
3327 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
3328 if TN_SUN3; otherwise align to 2**N-byte bounary.
3329
7fd3560a
SC
3330Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3331
3332 * read.c (s_fill): make the .fill size clamped error a warn and
3333 fix bug where 0's were always placed.
3334
7f2cb270
KR
3335 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
3336 two bytes of any constant with 0xff:
3337
62594bd7
SC
3338Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3339
3340 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 3341 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 3342
7f2cb270
KR
3343Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
3344
3345 * tc-m68k.c (try_index): Error if index scaling specified and
3346 assembling for an older CPU than a 68020.
3347
680227f3
KR
3348Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
3349
3350 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
3351 fx_offset into account.
3352
c51ccfd5
KR
3353Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
3354
3355 * configure.in (mips host): Accept "ultrix" with version number.
3356
3357 * expr.c (floating_constant): Separate "=-" to avoid confusing
3358 ancient or broken compilers.
3359
3360 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
3361 processor/opcode mismatch, so reword the error message.
3362 (md_assemble): If no CPU has been set (even if FPU/PMMU
3363 characteristics have been), default to 68020. Don't need extra
3364 quotes around error string.
3365
14f1fc24
JW
3366Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
3367
3368 * read.c (potable): Revert sac's incorrect change made Jul 13.
3369 Align really is supposed to be ptwo not nbytes.
3370
3371Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
3372
3373 * Makefile.in: _Do_ include libiberty. (from sef)
3374
3375Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
3376
3377 * expr.c (integer_constant): Handle "0f" and "0b" label references
3378 properly.
3379
462088b8
SC
3380Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3381
3382 * write.c (fixup_segment): if relaxing, don't do anything.
3383 * config/obj-bout.[ch] : maintain the a_relaxable file header info
3384 * config/tc-i960.c: new option -linkrelax
3385
3386Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3387
3388 * expr.c (expr): allow SEG_BSS in expressions
3389 * read.c (potable): align should be nbytes, not ptwo!
3390 * write.c (write_object_file): extra glue for new bss attributes
3391 (relax_segment): SEG_BSS is ok now
3392 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
3393
7f2cb270
KR
3394Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
3395
3396 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
3397
462088b8
SC
3398Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
3399
3400 * configure.in: recognize m680x0 as having sun3 emulation mode for
3401 vxworks environment.
3402
3403
0b0b5dba
DHW
3404Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
3405
3406 * Makefile.in: Add program_suffix (parallel to program_prefix)
3407
7c2d4011
SC
3408Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3409
3410 * app.c (process_escape): new function to handle escapes the right
3411 way, (do_scrub_next_char): use new function
3412 * cond.c (s_ifdef): do ifdef/ifndef right
3413 * read.c (s_fill): make the , expressions optional like the doc
3414 says
3415 * config/tc-h8300.[ch]: better warnings
3416
90d49457
SC
3417Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3418
65bfcf2e
SC
3419 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
3420 as data0_frchainP
3421
3422 * write.c (write_object_file): various changes to handle data in
3423 the BSS segment in much the same was as stuff in the DATA segment.
3424
7f2cb270
KR
3425 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
3426 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
3427 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
3428 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
3429 it into SEG_BSS
462088b8 3430
f8701a3f
SC
3431Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3432
3433 * expr.c(expr): allow SEG_REGISTER in expressions.
3434 * read.c(pseudo_set): register expressions can be the source of a
3435 set.
3436 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
3437 goto SEG_TEXT (if a.out)
3438 * write.c (write_object_file): If a.out don't use the old way for
3439 -R.
3440 * config/obj-a.out (s_sect): complain if the user tries to use a
3441 subsegment with a value which might interfere with out -R hackery.
3442 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
3443 rather than use ugly if tree. (init_regtable): insert register
3444 names into symbol table.
3445
ebfb4167
MT
3446Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
3447
3448 * write.c (write_object_file): keep the fix_tail clean, which
3449 fixes a bug in -R where relocations were being lost.
3450
3451Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
3452
3453 * configure.in: recognize m680x0 as having sun3 emulation mode for
3454 vxworks environment.
3455
3456Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
3457
3458 * configure.in: recognize m680x0 as an m68k
3459
dfd53fe9
JW
3460Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
3461
3462 * configure.in: Recognize sparclite as a sparc variant.
3463
7f2cb270
KR
3464 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
3465 -Asparclite flag.
3466
d312e231
SC
3467Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3468
3469 * config/tc-a29k.c: lint
3470 * listing.c, expr.c: patches from Andrew Smith
3471
0cca30f3
KR
3472Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
3473
3474 * doc/Makefile.in: use m4 rather than gm4.
3475
7f2cb270
KR
3476Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3477
3478 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
3479 calc the base of relocs correctly.
3480 * tc-a29k.c (parse_operand): allow expressions to be in any section.
3481
d312e231
SC
3482Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
3483
3484 * as.c, write.c: use -K rather than -k for the broken word warning
3485 option.
3486
fa493b93
RP
3487Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
3488
3489 * Makefile.in: do not print recursion lines.
3490
d96c09ed
RP
3491Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
3492
3493 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
3494
3495Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
3496
3497 * write.c (write_object_file): For b.out format, round up section
3498 start addresses to match required alignment.
3499
81484684
KR
3500Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
3501
3502 * Makefile.in (install): Install into $(tooldir)/bin, since that's
3503 where gcc looks for it.
3504
3876b4c5
SEF
3505Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
3506
3507 * Makefile.in: Changed some lines to be less confusing for some
3508 makes.
3509
3510 * input-file.c: Conditionalize on _IOFBF, not VMS.
3511
3512 * read.c, write.c: Change a series of ifdef/elif to
3513 ifdef/else/ifdef etc.
3514
3515Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
3516
3517 * symbols.c (fb_label_init): fix sizeof to memset.
3518
95a925b8
RP
3519Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
3520
3876b4c5
SEF
3521 * Makefile.in: install the man page.
3522
95a925b8
RP
3523 * Makefile.in: pass down MAKEINFO explicitly on info.
3524
0cca30f3
KR
3525 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
3526
5d53038b
SC
3527Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
3528
3529 * flonum-const.c: renamed flonum-konst.c to stop dos name
3530 conflict.
3531
7f2cb270
KR
3532Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
3533
3534 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
3535 tc-m68k.h to te-sun3.h.
3536
8c1b25e4
RP
3537Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
3538
3539 * configure.in: vxworks68 gets te-sun3.h.
3540
3541 * expr.c: remove limitation that local_labels_dollar or
3542 local_labels_fb must be < 10.
3543
3544 * symbols.c: remove local_labels_dollar, replace with a function
3545 interface for a sparse array. All users adjusted.
3546
7f2cb270
KR
3547 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
3548
0cca30f3
KR
3549Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
3550
3551 * doc/Makefile.in: commented out line for building as-all.texinfo.
3552 This is temporary.
3553
3554 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
3555
8c1b25e4
RP
3556Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
3557
3558 * Makefile.in: added check target.
3559
3560Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
3561
3562 * Makefile.in: added tooldir and program_prefix.
3563
3564Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
3565
3566 * write.{c,h} (fix_new): Make these declarations consistent.
3567
1651b22d
MT
3568Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
3569
3570 * Makefile.in (strerror.o): Add rule so that broken Sun make can
3571 work in subdirs.
3572
5373c439
SC
3573Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
3574
3575 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
3576
3577 * expr.c (operand): if can't work out what sort of operand it is,
3578 then look through FLT_CHARS for a hint.
3579
8c1b25e4
RP
3580Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
3581
3582 * Makefile.in, configure.in: removed traces of namesubdir,
3583 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
3584 copyrights to '92, changed some from Cygnus to FSF.
3585
0cca30f3
KR
3586 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
3587 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
3588 copyrights to '92, changed some from Cygnus to FSF.
3589
f24f7577
SC
3590Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
3591
14d3e47b
SC
3592 * expr.c: If an expression is single comma, then return with
3593 SEG_ABSENT rather than an error - since the sparc front end does
3594 really strange things with things like fbge,a
3595
f24f7577
SC
3596 * as.h: include bfd.h if using many sections
3597 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
3598 local labels didn't work.
3599 * listing.c (list_symbol_table): don't core dump when there's no
3600 symbol there.
3601 * write.c, write.h: call fix_new with the right number of args on
3602 the H8.
3603 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
3604 errors nices
3605
c593cf41
SC
3606Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
3607
3608 * app.c: MRI compatibility - allow single quote to start a string.
3609 * as.c: fix typo recently introduced.
3610 * as.h : Don't include aout/reloc.h - it's not right for COFF!
3611 * expr.c: Much rewriting, to accomodate MRI syntax for
3612 expressions. Also easier to read now.
3613 * listing.c: Put back defuns
3614 * read.c: modified to accept MRI syntax, put back listing pseudo
3615 ops so that an assembler built with NO_LISTING ignores list ops
3616 rather than pukes.
3617 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
3618 machine is a SPARC or a 29K.
3619 * config/obj-aout.c: added s_sect pseudo op
3620 * config/obj-coffbfd.c: lints, set the filehdr flags right and
3621 fill in the timestamp.
3622 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
3623 anymore, define all the relocs which the tc-<x> bit will use so we
3624 can translate from them to the coff types.
3625 * config/tc-a29k.c: reloc_type isn't ane enum any more
3626 * config/tc-m68k.c: Added NO_RELOC definition.
3627
2d97273c
RP
3628Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
3629
c593cf41
SC
3630 * Makefile.in: put header files before C source for TAGS; remove
3631 references to non-existent syscalls.h.
3632
2d97273c
RP
3633 * read.c, write.c subsegs.c: back out the .bss changes.
3634
7f2cb270
KR
3635 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
3636
3637 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
3638
3639 * a.out.h: removed.
3640
6d5460ab
RP
3641Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
3642
3643 * symbols.c (local_label_name): symbols now start with ^A.
3644
3645 * read.c, subsegs.c, write.c obj-coff.c: added handling of
3646 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
3647 generate these sections. .align: will use NOP_OPCODE or 0
3648 for padding. This is just for being nice to the
3649 disassembler.
3650
3651 * expr.c (operand): changed to generate local label "\001L0"
3652 starting with a ^A so that it is recognized as a local label.
3653
3654 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
3655
7f2cb270
KR
3656 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
3657 i/o opcodes - inb, inw, outb and outw. string manipulation with
3658 att syntax - scmp, slod, smov, ssca, ssto.
3659
3660 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
3661 to just after .file .
3662
3663 In obj_crawl_symbol_chain() where it tries to put the external
3664 symbols apart, with the condition:
3665 (!S_IS_DEFINED(symbolP) &&
3666 !S_IS_DEBUG(symbolP) &&
3667 !SF_GET_STATICS(symbolP))
3668 it was moving too many symbols out. So I switch it back to the
3669 condition:
3670 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
3671
3672 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
3673 so that we don't use the F_RELFLG which make the linker complain
3674 that somebody has stripped the relocation info.
3675
3676 Also, the AIX ld program require that the relocation table
3677 is sorted by r_vaddr like the standard ATT assembler does.
3678
3679 [he also changed the sizeof(struct ...)'s into the coff
3680 style FOOSZ macros. I'm not sure this is right, but I can't
3681 remember why. xoxorich.]
3682
d6e344db
RP
3683Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
3684
3685 * Makefile.in, configure.in, doc: use the doc. Build it, install
3686 it, clean it, etc.
3687
eb9eacd3
RP
3688Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
3689
aa3782d2
RP
3690 * read.c: white space and comments only.
3691
f816adbc
RP
3692 * configure.in: use the new atof-ns32.c for ns32k.
3693
eb9eacd3
RP
3694 * write.c: comment change only.
3695
7f2cb270
KR
3696 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
3697 aren't yet integrated.
3698
3699 * tc-i860.[hc]: blew off the dust. Something must still be done
3700 about conflicting relocation types.
3701
3702 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
3703 real thing.
3704
3705 * tc-i960.c, tc-sparc.c: white space and comments only.
3706
3707 * tc-a29k.h: delete duplicate macro definition.
3708
3709 * new file atof-ns32k.c copied from hack's last unreleased gas.
3710
542e1629 3711Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 3712
eb9eacd3
RP
3713 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
3714 rather than abort.
3715
542e1629
RP
3716 * nearly everything. flush ChangeLog, package as gas-1.92.1.
3717 ChangeLog's prior to this are sketchy at best. I have logs.
3718 They just aren't ChangeLogs.
This page took 0.344459 seconds and 4 git commands to generate.