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