* read.c (get_absolute_expression): Indicate that the error may merely be that
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
5b162d37
KR
1Thu Nov 3 20:20:40 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
2
3 * read.c (get_absolute_expression): Indicate that the error may
4 merely be that the expression can't currently be reduced.
5
0cb42d6f
C
6Thu Nov 3 16:09:59 1994 J.T. Conklin (jtc@rtl.cygnus.com)
7
8 * config/tc-m68k.h (TARGET_FORMAT): If TE_NetBSD define as
9 "a.out-m68k-netbsd".
10 * config/tc-sparc.h (TARGET_FORMAT): If TE_NetBSD define as
11 "a.out-sparc-netbsd".
12
13 * config/te-nbsd.h: New file, NetBSD target emulation
14 * config/te-netbsd.h: Removed.
15 * configure.in (i[345]86-*-netbsd*,m68*-*-netbsd*,sparc*-*-netbsd*):
16 Set bfd_gas. Use nbsd emulation.
17
f2889110
KR
18Thu Nov 3 17:44:47 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
19
20 Changes from net 2.5.2 release branch:
21
22 * configure.in: Put AC_DEFINE(sparcv9) on its own line, so that
23 the shell variable settings associated with it are permanent. For
24 CPUs requiring bfd_gas=yes, select it based on CPU only, not
25 individual target names. Handle m68k-hp-hpux*, not just -hpux.
26
27 * config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument
28 to match prototype in obj-coff.h.
29
30 * configure.in: Skip tests for defining WANT_FOPEN_BIN and
31 IBM_COMPILER_SUX.
32 * acconfig.h: Deleted them.
33 * configure, conf.in: Rebuild with autoconf 2.0.
34 * config/go32.cfg, config/vms-conf.h: Updated.
35
36 * config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
37 IBM_COMPILER_SUX version of code, with comments indicating why.
38
39 * listing.c (file_info): Use text mode when opening file for read.
40 Use "r" directly, no macro.
41 * input-file.c (input_file_open): Don't use FOPEN_RT, just use
42 "r".
43 * read.c (s_include): Ditto.
44 * output-file.c (output_file_create): Try both "wb" and "w", don't
45 bother with FOPEN_* macros.
46 * as.h: Don't include fopen-*.h.
47
48 * config/alpha-opcode.h: Make "ret" with no operands equivalent to
49 "ret zero,(ra)", to match OSF1 and to be consistent with both
50 one-operand forms.
51
52 Patches from DJ Delorie:
53 * as.h (alloca): undef alloca before defining it just in case
54 * config/go32.cfg: new file for autoconf values
55 * config/te-go32.h: new file
56 * configure.bat: new for autoconf
57
58 * config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had =
59 for ==.
60
61 * configure.in: If target_frag doesn't exist, use /dev/null.
62
63 * as.c (parse_args): For non-VMS systems, re-add `v' to
64 std_shortopts. Add "verbose" to list of long options.
65
66 * write.c (adjust_reloc_syms): When generating an absolute section
67 symbol as a placeholder, don't mark it as used in a relocation
68 entry, here.
69
70 * Makefile.in (comparison): Compare using makefile code from gcc,
71 stripped down to discard subdir stuff and adapted to give a
72 non-zero exit status if either file differs.
73
a2c49209
ILT
74Thu Nov 3 15:43:02 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
75
76 * config/tc-mips.c (load_address): Fix RELAX_ENCODE arguments for
77 NO_PIC case.
78
2622a6c2 79Tue Nov 1 16:10:59 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
da15a93e
ILT
80
81 * config/tc-mips.c (s_change_sec): If not GPOPT, don't permit
82 switching to the readonly data section.
2622a6c2
ILT
83
84 * ecoff.c (ecoff_directive_type): Fix warning message.
85
ec11c09c
JL
86Sun Oct 30 00:57:35 1994 Jeff Law (law@snake.cs.utah.edu)
87
88 * config/tc-hppa.c (pa_proc): Delete disabled code to put each
89 proc in its own subspace, we're not going to use it.
90
4bb0cc41
ILT
91Tue Oct 25 14:44:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
92
94b68f04
ILT
93 * config/tc-mips.c (macro): Ensure that mips2 case of M_LI_DD in
94 .rdata does not become a variant frag.
95
4bb0cc41
ILT
96 * config/tc-mips.c (mips_cpu): Initialize to -1.
97 (md_begin): Don't mips_cpu if it was already set.
98 (md_parse_option): For -mipsN, don't set mips_cpu if it was
99 already set. For -mcpu=, just set mips_cpu, not mips_isa.
100
9da4c5d1
ILT
101Fri Oct 21 20:42:29 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
102
103 * config/tc-mips.c (md_pseudo_table): If OBJ_ELF, handle .section.
104 (s_elf_section): New static function.
105 * ecoff.c (ecoff_build_symbols): Don't abort if we don't recognize
106 the section when setting the storage class; default to sc_Data.
107
e443a021
JL
108Thu Oct 20 00:43:38 1994 Jeff Law (law@snake.cs.utah.edu)
109
110 * config/tc-hppa.c (md_apply_fix): Set new_val to 8 for all
111 fixups to branch instructions (not just pc-relative ones) which
112 will generate SOM relocations.
113
030915dc
ILT
114Wed Oct 19 13:41:56 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
115
116 * config/tc-a29k.c: Include ctype.h with angle brackets.
117 (define_some_regs): Add new special register names defined on the
118 29040.
119 (parse_operand): Add argument opt. If non-zero, don't warn about
120 a missing operand.
121 (machine_ip): If handling argument type 'I', pass opt as non-zero
122 to parse_operand. Handle new optional operand type 'I'.
123 (md_undefined_symbol): Handle special register names (srNN).
124
683f4743
ILT
125Tue Oct 18 00:45:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
126
127 * write.c (renumber_sections): New static BFD_ASSEMBLER function.
128 (write_object_file): Call it after removing gas created sections.
129
f10a96cb
ILT
130Mon Oct 17 18:06:05 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
131
62d39689
ILT
132 * symbols.c (symbol_create): Use udata.p, not just udata.
133 * config/obj-elf.c (obj_ecoff_set_ext): Likewise.
134 (elf_get_extr): Likewise.
135
f10a96cb
ILT
136 * read.c (read_a_source_file): The second argument to as_where is
137 unsigned int *, not int *.
138
139Mon Oct 17 02:26:32 1994 Jeff Law (law@snake.cs.utah.edu)
140
141 * config/tc-hppa.c: Eliminate all uses of fx_addnumber.
142 (tc_gen_reloc): Simplify. It's no longer necessary to set a
143 reloc's addend field to zero for function symbols.
144 (md_apply_fix): Simplify. For fixups which will require a SOM
145 reloc, just clear out the necessary bits in the output file.
146
2d928291
KR
147Fri Oct 14 19:06:46 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
148
149 * Makefile.in (BISON): Use bison -y, not bison.
150
151Thu Oct 13 19:22:54 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
152
153 * Makefile.in (VERSION): Updated to 2.5.
154 (clean-here): Delete stamp-mk.com.
155 (distclean): Delete .gdbinit.
156 * Version 2.5 released.
157
ba49e48d
KR
158Wed Oct 12 20:30:51 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
159
160 * config/te-nbsd532.h: Renamed from te-netbsd532.h.
161 * configure.in, configure: Adjusted.
162
4992dbc9
C
163Wed Oct 12 16:33:38 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
164
165 * config/cplus-dem.c: Removed. It isn't used. Even if it was,
166 it's better to use the one in libiberty.
167
2cc0357f
KR
168Wed Oct 12 18:48:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
169
170 * symbols.c (resolve_symbol_value, case O_symbol): Undo last
171 change; it breaks the rs6000 support, and doesn't seem to be
172 needed.
173
eab55c1c
C
174Wed Oct 12 11:56:50 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
175
176 * config/tc-i386.h,te-netbsd532.h (TARGET_FORMAT): Changed to
177 a.out-<arch>-netbsd to match corresponding changes in BFD.
178
f0b556a2
ILT
179Wed Oct 12 11:06:11 1994 Ian Lance Taylor (ian@cygnus.com)
180
181 * config/tc-ppc.c (ppc_fix_adjustable): Resolve symbol values
182 rather than explicitly adding the frag address.
183 * config/obj-coff.c (coff_frob_symbol): Add a zero entry to mark
184 the end of the line numbers; this replaces the zero entry which
185 used to be added by coff_add_linesym, removed Oct 7.
186 (coff_adjust_section_syms): Ignore sections with no seginfo.
187
3256c4b5
KR
188Wed Oct 12 01:41:37 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
189
190 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Create a
191 "stage" symlink to the appropriate stage* directory, and use it
192 instead in the -B options.
193 (comparison): Revert yesterday's change.
194
15dc8a20
KR
195Tue Oct 11 16:48:11 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
196
197 * config/tc-sparc.c (tc_gen_reloc): For non-a.out relocations, if
198 pc-relative, use fx_offset only, ignore address of relocation.
199
c8caa6c5
ILT
200Tue Oct 11 15:24:00 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
201
202 * config/tc-mips.c (mips_ip): Don't use S_IS_LOCAL when checking
203 for an embedded PIC switch expression, since the definition of
204 S_IS_LOCAL was changed.
205
6d60424f
KR
206Tue Oct 11 15:05:11 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
207
208 * Makefile.in (comparison): When comparing as.new or gasp.new, try
209 running the binary through sed to avoid differences due to
210 "stage1" or "stage2" having been written into the binary.
211
15a90f75
KR
212Sat Oct 8 01:48:04 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
213
214 ELF symbol size handling, based on code from Eric Youngdale:
215 * config/obj-elf.h (OBJ_SYMFIELD_TYPE): New macro. Adds an
216 expression pointer to the symbol structure, used for `size'
217 expressions that couldn't be reduced to constants when initially
218 processed.
219 (elf_frob_symbol): Declare.
220 (obj_frob_symbol): Call elf_frob_symbol always, rather than
221 ecoff_frob_symbol only if ECOFF_DEBUGGING defined.
222 * config/obj-elf.c (obj_symbol_new_hook): Deleted unused code.
223 Clear sy_obj field.
224 (obj_elf_size): Deleted unused code. If size is non-reducible
225 expression, allocate some storage for the sy_obj field and copy
226 the expression.
227 (elf_frob_symbol): New function. Computes sizes, calls
228 ecoff_frob_symbol if appropriate.
229
230 * write.c (fixup_segment): For i386 elf and coff (for now), don't
231 add in value of symbol from another defined section of the file.
232
ecee4027
KR
233Fri Oct 7 17:54:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
234
235 * config/tc-m88k.h (TC_KEEP_FX_OFFSET): Define.
236 * config/obj-coff.c (do_relocs_for): Test only TC_KEEP_FX_OFFSET,
237 rather than both it and TC_M88K.
238 (coff_adjust_section_syms): New function.
239 (coff_frob_section): For non-empty sections, create aux entry for
240 the section symbol, indicating the size.
241 (n_line_nos): New variable.
242 (add_lineno): Increment it.
243 (coff_add_linesym): Increment n_line_nos, don't call add_lineno.
244 (coff_frob_file): New function; map coff_adjust_section_syms over
245 sections.
246 (obj_coff_line): Only reset line_base for .bf symbols.
247 * config/obj-coff.h (coff_adjust_section_syms, coff_frob_file):
248 Declare.
249 (obj_frob_file): New macro.
250
251 * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Renamed from
252 obj_frob_forward_symbol, and rewritten for new parameter list.
253
254 Mon Oct 3 21:02:38 1994 Pat Rankin (rankin@eql.caltech.edu)
255
256 * config/obj-vms.h (S_IS_LOCAL): fix obsolete flagseen[] reference.
257
258Wed Oct 5 11:49:26 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
259
260 * config/obj-ecoff.c (obj_pseudo_table): Accept .esize and .etype
261 as synonyms for .size and .type.
262
b2d7b325
ILT
263Wed Oct 5 00:08:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
264
265 * config/obj-coff.c (coff_frob_section): Remove assert about
266 section alignment.
267 * config/tc-sparc.c (md_section_align): Use section alignment, not
268 xvec align_power_min field.
269
dc87e0ce
KR
270Fri Sep 30 19:05:20 1994 Pat Rankin (rankin@eql.caltech.edu)
271
272 * vmsconf.sh (make-gas.com): handle DCL verification to enable
273 sensible feedback to the user while gas is being built.
274
76a390e2
KR
275Fri Sep 30 16:23:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
276
13a336c4
KR
277 * Makefile.in (DISTSTUFF): New variable, listing only make-gas.com
278 for now.
279 (diststuff): New target; builds DISTSTUFF.
280 (realclean): Separate target, depend on clean and distclean, then
281 delete DISTSTUFF.
dc87e0ce
KR
282 * make-gas.com: Deleted.
283
76a390e2
KR
284 * config/tc-i386.c (i386_validate_fix) [BFD_ASSEMBLER]: New
285 function. Converts reloc for "foo-GOT" to BFD_RELOC_386_GOTOFF
286 reloc for "foo".
287 (i386_operand): Don't look up section symbol for
288 undefined_section.
289 (reloc): Always permit return of 8- and 16-bit relocation types.
290 Add a space after "pc-relative" in the error message.
291 (tc_i386_fix_adjustable) [BFD_ASSEMBLER]: Reject
292 BFD_RELOC_386_GOTOFF relocs.
293 (i386_operand): For any GOTOFF reloc, convert it to a BFD_RELOC_32
294 with a "foo-GOT" value.
295 * config/tc-i386.h (i386_validate_fix): Declare it.
296 (TC_VALIDATE_FIX): New macro -- call it.
297 (NOP_OPCODE): Cast to `char' to avoid compiler warnings.
298
299 * as.h: If __STDC__ is not defined and varargs.h is available, use
300 it rather than stdarg.h.
301
302 * write.h (struct fix): Added new bitfield fx_plt, for fixups
303 referring to PLT entries.
304 * write.c (fix_new_internal): Initialize fx_plt to zero.
305 (adjust_reloc_syms): Re-fetch `sym' after top of reduction loop.
306 Don't adjust fx_offset by frag address, since S_GET_VALUE now
307 includes the frag address.
308 (fixup_segment): Changed local var PCREL to type int, added PLT.
309 If PC-relative fixup refers to a PLT entry for a symbol in the
310 current section, don't reduce it.
311
312 * write.c (adjust_reloc_syms): Exit loop through a label. If
313 DEBUG5 is defined, print out each fixup before and after
314 processing.
315 (fixup_segment): If DEBUG5 is defined, print out each fixup before
316 and after processing.
317 (print_fixup): Added prototype. Show address on first line. Show
318 fx_offset and fx_subsy. [!BFD_ASSEMBLER]: Only show fx_r_type if
319 NEED_FX_R_TYPE is defined.
320
321 * symbols.c (print_symbol_value_1): Check S_IS_LOCAL, S_IS_EXTERN,
322 S_IS_DEBUG, S_IS_DEFINED also.
323
9dc6c00f
KR
324Thu Sep 29 18:57:06 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
325
10ff87e9
KR
326 * Makefile.in (all): Depend on .gdbinit.
327 (.gdbinit): Rebuild from gdbinit.in by running config.status.
328
329 * gdbinit.in: Define new function "pf". Fix doc on "pe" and "ps".
330
9dc6c00f
KR
331 * write.c (print_fixup): Print source location on first line.
332 Show fx_r_type and fx_addsy fields.
333
648acaa0
KR
334Wed Sep 28 14:56:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
335
b8480abc
KR
336 * configure.in: Set bfd_gas for all sparc targets in one place,
337 instead of separately for each. Correctly handle user-supplied
338 "--enable-bfd-gas" option.
339
340 * gdbinit.in: Move "break abort" to end, in case gdb complains.
341
342 * as.h (PRINTF_WHERE_LIKE, PRINT_LIKE) [USE_STDARG, !__GNUC__]:
343 Use PARAMS macro.
344
345 * symbols.c (resolve_symbol_value, case O_symbol): Don't do any
346 processing if add_symbol is undefined or in expr_section.
347 (resolve_symbol_value, case O_add): For symbol plus
348 constant-valued symbol, convert to O_symbol and re-reduce.
349 (S_GET_VALUE): If symbol needs resolving, resolve it.
350 (indent_level): No longer static.
351 (print_symbol_value_1): Don't print frag address if it matches
352 zero_address_frag. Don't print "resolving" if already resolved.
353 Print segment name. Don't call print_expr_1 on an undefined
354 symbol.
355 (print_expr_1): Fix whitespace before printing X_add_number.
356
648acaa0
KR
357 * expr.c (make_expr_symbol): No longer static. Use symbol_create,
358 not symbol_new, for symbols holding expression values.
359 * expr.h (make_expr_symbol): Move declaration here.
9ff0f5ef
KR
360 * write.c (fix_new_exp): Handle O_add by creating an
361 expression-valued symbol, and calling fix_new_exp recursively.
362 (adjust_reloc_syms): If a fixup's symbol value is a sum of an
363 undefined symbol and a constant, fold the constant into the fixup,
364 and refer to the undefined symbol directly. Then process the
365 fixup again from scratch.
366 (write_object_file): Before calling adjust_reloc_syms, make a pass
367 through the symbol list trying to resolve values.
368
369 * write.c (print_fixup): New routine, for debugging.
370 (write_relocs): Call bfd_install_relocation. Deleted various
371 hacks for working around problems with bfd_perform_relocation.
372
373 * Makefile.in (VERSION): Update to 2.4.90.
648acaa0 374
7b777690
ILT
375Wed Sep 28 11:50:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
376
620a590e
ILT
377 * Makefile.in (gasp.o): Depends upon config.h.
378
3f42c69e
ILT
379 * config/tc-mips.c: Include subsegs.h.
380 (md_apply_fix): If an unconditional b or bal overflows, and we are
381 not assembling PIC code, replace it with a j or jal.
382
7b777690
ILT
383 * config/tc-mips.c (md_apply_fix): Correct branch overflow test.
384 Use as_bad_where and as_warn_where rather than as_bad and as_warn.
385
386Mon Sep 26 17:15:59 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
387
388 * write.c (write_relocs): Add file name and line number to
389 as_fatal calls. Handle bfd_reloc_overflow case specifically when
390 RELOC_EXPANSION_POSSIBLE.
391
392Fri Sep 23 16:11:28 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
393
394 * as.h (USE_STDARG, USE_VARARGS): Define one or neither of these
395 here. Use them for deciding which PRINTF*LIKE macro definitions
396 to use.
397 * messages.c: Use them, instead of NO_STDARG, NO_VARARGS.
398 [!USE_STDARG && !USE_VARARGS] (va_alist, va_dcl, ...): Provide
399 default definitions matching what we were doing before.
400 (as_tsktsk): Remove the non-stdarg, non-varargs version, and
401 always use the varargs form if not using stdarg. It's safe to
402 always use vfprintf, because libiberty will provide it if the
403 native system doesn't. Also, always make format be const.
404 (as_warn, as_warn_where, as_bad, as_bad_where, as_fatal): Ditto.
405
144659ab
ILT
406Fri Sep 23 14:42:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
407
408 * config/tc-mips.c (load_register): Always use addiu when adding a
409 constant to $zero--no need to use daddiu.
410 (macro): Hack the -mips3 overflow tests to not fail when offsetT
411 is only 32 bits.
412
413 * symbols.h (copy_symbol_attributes): Declare.
414
415Thu Sep 22 21:58:24 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
416
417 * listing.c: Bugfixes based in part on patches from Paul
418 Kranenburg.
419 (listing_newline): Check filename as well as line number when
420 deciding whether to record it.
421 (list_symbol_table) [S_IS_REGISTER]: Check that S_IS_REGISTER is
422 false (if defined) as well as checking for reg_section.
423 (listing_listing): Iterate fetching lines while line number is too
424 low, and we haven't run off the end of the input file.
425
426 * config/vms-conf.h: Changed HAVE_DELETE to HAVE_REMOVE.
427
bdaa198a
KH
428Thu Sep 22 13:39:10 1994 Kung Hsu (kung@x1.cygnus.com)
429
430 * ecoff.c (ecoff_generate_asm_lineno): check if
431 current_stabs_filename is NULL before strcmp.
cacd15c4 432 * read.c (read_a_source_file): fix a bug in generate_asm_lineno
bdaa198a
KH
433 checking.
434
8068b96a
KR
435Wed Sep 21 18:17:35 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
436
437 * config/ho-*.h: Now-unused files deleted.
438
439 * symbols.c (copy_symbol_attributes): New function. Copies BFD
440 symbol flags and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
441 (resolve_symbol_value, case O_symbol): Call it, if X_add_number is
442 zero. Don't call obj_frob_forward_symbol.
443 * read.c (pseudo_set): Call copy_symbol_attributes, but only if
444 X_add_number is zero.
445 * config/obj-elf.h (obj_frob_forward_symbol): Deleted.
446
144659ab
ILT
447 * config/tc-i960.c: Lots of whitespace, comment reformatting,
448 using GNU indent.
449 (strchr): Don't declare.
450 [BFD_ASSEMBLER]: Don't compile md_convert_frag,
451 md_estimate_size_before_relax, md_ri_to_chars,
452 md_create_short_jump, md_create_long_jump.
453 (brtab_emit): Use data_section, not SEG_DATA.
454
cacd15c4 455 Mon Sep 19 17:14:44 1994 Pat Rankin (rankin@eql.caltech.edu)
8068b96a
KR
456
457 * config/vms-conf.h: new file, manually derived from conf.in.
458 * config-gas.com: use it, and eliminate obsolete "host.h".
459
3af9783a
ILT
460Wed Sep 21 11:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
461
87bbf920
ILT
462 * config/tc-ppc.c (ppc_current_block): New static variable.
463 (ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
464 ppc_current_block. Don't move around any stab symbol, just those
465 for common symbols.
466 (ppc_bs): Set ppc_current_block.
467 (ppc_es): Clear ppc_current_block.
468 (ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
469 from the csect of the enclosing block.
470
3af9783a
ILT
471 * config/tc-mips.c (insns_since_cache_access): Remove.
472 (append_insn): Remove setting of insns_since_cache_access, and
473 special 4600 handling; it turns out not to be required.
474
e8d4d475
ILT
475Tue Sep 20 16:13:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
476
477 * config/tc-mips.c (md_shortopts): Remove E.
478 (md_longopts): Add EB and EL.
479 (md_parse_option): Handle -EB and -EL as separate options, rather
480 than as a single -E option with an argument.
481
8268e3ec
JL
482Mon Sep 19 12:42:05 1994 Jeff Law (law@snake.cs.utah.edu)
483
484 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions
485 involving global symbols too.
486
eb3028aa
KR
487Mon Sep 19 12:12:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
488
489 * as.h: Test NEED_DECLARATION_*, not NEED_*_DECLARATION.
490
491 * configure.in: Test for remove, not delete. Fix cross-assembler
492 test.
493 * as.h: Test HAVE_REMOVE, not HAVE_DELETE; define unlink to
494 remove, not delete.
495
35e70f58
KR
496 * read.c (pseudo_set, case O_symbol): If
497 OBJ_COPY_SYMBOL_ATTRIBUTES is defined, invoke it.
498 [BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
499 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
500
501 Wed Aug 10 19:15:30 1994 Pat Rankin (rankin@eql.caltech.edu)
502
503 * config/obj-vms.h (DSG_S_C_UBITU, DST_K_VFLAGS_DSC, DST_K_TS_ATOM,
504 many others): new macros; values obtained from "DSTRECRDS.SDL".
505 * config/obj-vms.h (various): use them.
506 (USE_BITSTRING_DESCRIPTOR): new macro, for selecting bitfield
507 representation (only enum bitfields can avoid being bitstrings).
508 (bitfield_suffix, setup_basic_type): new routines.
509 (VMS_typedef_parse): use them. Now recognize bitfields of all
510 integral types, not just type `int'. Caveat: the representation
511 used for bitfields still does not work for objects placed in
512 registers, and gcc's optimizer sometimes puts small structs there.
513
514 Tue Jun 14 17:31:44 1994 Pat Rankin (rankin@eql.caltech.edu)
515
516 * read.c (s_text) [#if OBJ_VMS]: clear the IN_DEFAULT_SECTION
517 bit from const_flag.
518 * config/obj-vms.h (IN_DEFAULT_SECTION): define this macro.
519 (tc_frob_label): define this to call vms_check_for_special_label,
520 and declare the latter.
521 * config/obj-vms.c (vax_g_doubles): declare this file-scope
522 variable.
523 (const_flag): initialize to IN_DEFAULT_SECTION instead of 0.
524 (vms_check_for_special_label): new routine (tc_frob_label).
525 (VMS_TBT_Routine_End): don't bother checking for `gcc_compiled.'
526 and `gcc2_compiled.' labels; they won't reach here any more.
527 (VMS_typedef_parse) [case 'r']: for types `double' and `complex
528 double', use `vax_g_doubles' flag to select type of double.
529 (VMS_write_object_file) [traceback setup]: don't pass symbols
530 with the IN_DEFAULT_SECTION attribute to the TBT_Routine_Begin
531 and TBT_Routine_End functions.
532
533 Mon Jun 6 20:52:20 1994 Pat Rankin (rankin@eql.caltech.edu)
534
535 * config/obj-vms.c (VMS_TBT_Routine_End): cache the result of
536 S_GET_VALUE() to avoid many repeated function calls.
537 (VMS_Check_For_Main) [#if HACK_DEC_C_STARTUP]: capitalize
538 _C$MAIN_ARGS in advance, in case -h3 (leave symbol name as-is)
539 gets requested. [All the HACK_DEC_C_STARTUP code appears to
540 be obsolete; gcc does it automatically for vms target. It's
541 also misnamed, because it is for the "VAX C" run-time library,
542 not the newer "DEC C" one which has much different startup code.]
543 {various}: use `S_SET_xxx(symbol,new_value)' rather than
544 `S_GET_xxx(symbol) = new_value'.
545
d1578de3
ILT
546Mon Sep 19 12:05:03 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
547
548 * config/obj-coff.c (c_dot_file_symbol): Use bfd_abs_section_ptr,
549 not &bfd_abs_section.
550
e3683042
ILT
551Thu Sep 15 18:36:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
552
553 * expr.c (clean_up_expression): Use addressT, not bfd_vma.
554
75c28b49
JL
555Tue Sep 13 20:05:47 1994 Jeff Law (law@snake.cs.utah.edu)
556
fcacfef6
JL
557 * expr.c (expr): Don't reduce the difference of two symbols in the
558 same frag if the symbols are not in normal sections.
559
75c28b49
JL
560 * config/obj-som.h (S_SET_OTHER, S_SET_TYPE): Delete a.out crud.
561 (S_SET_DESC, S_GET_OTHER, S_GET_TYPE, S_GET_DESC): Likewise.
562 (obj_attach_unwind_info): Do not define. Not needed anymore.
563 * config/tc-hppa.c: Delete whitespace at EOL.
564 (struct hppa_fix_struct): Delete fx_unwind field and all references.
565 (fix_new_hppa): Last arg is now a pointer to an int. Do not
566 call obj_attach_unwind_info anymore. For SOM R_ENTRY and R_EXIT
567 fixups, store 32bits of unwind information in the fx_addnumber
568 field of the fixup.
569 (md_assemble, pa_entry, process_exit, pa_procend): For SOM R_ENTRY
570 and R_EXIT fixups, pass a NULL pointer to fix_new_hppa, and a
571 pointer to 32 bits of unwind info.
572 (tc_gen_reloc): For SOM R_ENTRY and R_EXIT fixups, set the symbol
573 pointer to the dummy symbol; set the addend field to fx_addnumber.
574 (pa_comm, pa_equ, pa_type_args, pa_import): Use bfd_XXX_section_ptr
575 rather than &bfd_XXX_section.
576
26f4447a
KR
577Tue Sep 13 21:15:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
578
d7152d07
KR
579 * config/tc-i386.c (md_apply_fix_1): For GOTPC relocs, decrement
580 value by one; discard adjustments previously being made. From
581 Eric Youngdale.
582
26f4447a
KR
583 VMS- and Vax-related changes from Pat Rankin:
584 * Makefile.in (VMS_OTHER_OBJS): add concat, getopt, and getopt1.
585 * vmsconf.sh: no longer have make-gas.com echo text about needing
586 to modify the gcc-vms driver when intending to use with gcc 1.x.
587 * as.c (parse_options): suppress 'v' from std_short_options and
588 eliminate VMS-specific conditional initialization;
589 [default case]: check for '-v' if md_parse_options doesn't recognize
590 an option;
591 [default case, #if VMS]: check for filename argument when '-v' seen;
592 [case 'v']: delete.
593 * config/tc-vax.c (md_assemble): don't rely on `this_add_number'
594 for O_big literal operands (double floats and long long ints);
595 [VMS, md_shortopts]: add second colon after 'v';
596 (md_parse_options) [VMS, case 'v']: check for argument, so
597 caller can handle `-v' w/o arg.
598
a9898563
SC
599Tue Sep 13 16:45:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
600
601 * config/obj-coff.c (do_relocs_for): If TC_KEEP_FX_OFFSET
602 is defined, put the tx_offset into the r_offset.
603 * config/tc-sh.c (line_comment_chars): Add #
604 (tc_reloc_mangle): Deleted.
605 * config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
606 (TC_RELOC_MANGLE): Delete.
607
28d3e4a3
KR
608Tue Sep 13 16:20:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
609
b9419dd2
KR
610 * flonum-konst.c: Change preprocessor tests of HO_VMS to just VMS.
611 * hex-value.c: Ditto.
612 * config/obj-vms.c: Ditto.
613
460531da
KR
614 * config/tc-sparc.c (sparc_ip): Replace as_bad/exit sequence with
615 a call to as_fatal.
616 * config/tc-i860.c (i860_ip): Ditto.
617 * config/tc-hppa.c (pa_ip): Ditto.
618 * config/tc-alpha.c (alpha_ip): Ditto.
619 * as.c (parse_args): Ditto.
620
621 * config/tc-mips.c (mips_ip): Replace as_warn/exit sequence with a
622 call to as_fatal.
623
624 * write.c (write_contents): Use EXIT_FAILURE.
625 * output-file.c (output_file_create, output_file_close,
626 output_file_create, output_file_close): Ditto.
627 * messages.c (as_fatal): Ditto.
628 * config/obj-som.c (obj_som_version, obj_som_copyright): Ditto.
629 * config/obj-ieee.c (write_object_file): Ditto.
630 * config/obj-coff.c (write_object_file): Ditto.
631 * config/tc-vax.c (main): Use EXIT_SUCCESS.
632 * config/tc-m68k.c (main): Ditto.
633
634 * hash.c (main): Pass a value to exit().
635
636 * as.h (EXIT_SUCCESS, EXIT_FAILURE): Moved here.
637 * as.c: ...from here.
638 (parse_args): Use them always.
639 (main): Use exit rather than return.
640
28d3e4a3
KR
641 * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall):
642 Rewrite handling of program_transform_name.
643
b9419dd2
KR
644 * configure.in: Test for functions unlink and delete.
645 * as.h: If unlink isn't available but delete is, define unlink to
646 be delete.
28d3e4a3
KR
647
648 Update for autoconf 1.118:
649 * gdbinit.in: New file, created from old .gdbinit.
650 * .gdbinit: Deleted.
651 * aclocal.m4 (GAS_GDBINIT): Deleted.
652 * configure.in: Don't use it. Instead, generate .gdbinit from
653 gdbinit.in. Don't substitute cpu_type, obj_format, emulation,
654 atof. Switched order of AC_LINK_FILES arguments. Use AC_PREREQ
655 to ensure that older versions of autoconf aren't used.
656 * Makefile.in: Added @configure_input@ line.
657 (configure): Deleted rule.
658
430a3997
ILT
659Tue Sep 13 12:08:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
660
661 * config/obj-coff.c (fixup_segment): After handling the difference
662 of two symbols from the same segment, set fx_subsy to NULL, to
663 satisfy existing TC_COUNT_RELOC macros.
664
e23b25ec
KR
665Tue Sep 13 01:47:08 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
666
667 * aclocal.m4 (GAS_GDBINIT): New macro.
668 * configure.in: Use it.
669 * configure: Regenerated.
670
c570d361
KR
671Mon Sep 12 20:56:38 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
672
673 * .gdbinit (pe, ps): Define new commands.
674 * symbols.c (indent_level): New static variable.
675 (indent, print_expr_1, print_symbol_value_1, print_symbol_value,
676 print_expr): New functions.
677
678 * Makefile.in (config-stamp): Add a "this file generated by make"
679 message to config.h.
680
681 PIC implementation for i386-linux, based on code from Eric
682 Youngdale and Paul Kranenburg, with some work of my own:
683
684 * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup
685 before processing same-section pcrel relocations.
686 (TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
687
688 * expr.c (make_expr_symbol): If operator is O_symbol and
689 X_add_number is zero, just return the symbol. If operator is
690 O_constant, resolve the symbol's value before returning.
691 (operand): Permit use of "[]" for grouping.
692 (clean_up_expression): For difference of two symbols in the same
693 frag, add the difference of their offsets into X_add_number.
694 (expr): Reduce difference of two symbols in same frag to their
695 difference.
696
697 * config/tc-i386.c (TC_RELOC): New macro.
698 (struct _i386_insn): New field disp_reloc.
699 (GOT_symbol): New variable.
700 (operand_special_chars): Added square-brackets and at-sign.
701 (reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not
702 NO_RELOC, just return it.
703 (reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
704 (BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More
705 dummy macros.
706 (tc_i386_fix_adjustable): New function. Returns zero if symbol in
707 fixup is not local, to prevent relocations against externals from
708 being dropped.
709 (md_assemble): Initialize disp_reloc field to NO_RELOC. Pass
710 disp_reloc field to reloc() function, and use TC_RELOC to generate
711 value to pass to fix_new_exp.
712 (md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC
713 reloc.
714 (i386_operand): Initialize disp_reloc field to NO_RELOC. Handle
715 @GOTOFF, @PLT, @GOT operands. For GOTOFF relocations with local
716 symbols, force generation of the section symbol.
717 (md_estimate_size_before_relax): If GOT_symbol exists, decide
718 we're generating PIC code, and convert relocations against
719 undefined symbols from PCREL to PLT32.
720 (md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking
721 relocs.
722 (md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set
723 and return GOT_symbol if it matches.
724 (F, MAP): Move macro definitions outside function.
725 (tc_gen_reloc): Only switch on size and pcrel if code wasn't
726 already supplied as PLT32. GOT32, GOTOFF, or GOTPC. Convert
727 BFD_RELOC_32 using GOT_symbol into GOTPC.
728 * config/tc-i386.h (TC_RELOC, tc_fix_adjustable,
729 TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): New
730 macros.
731 (NEED_FX_R_TYPE): Define.
732 (LOCAL_LABEL): Accept ".X" prefix too.
733 (GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
734
1b434ced
ILT
735Mon Sep 12 17:51:39 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
736
1779d515
ILT
737 * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
738 reportedly to be used on Irix 6.
739
c1444ec4
ILT
740 * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
741 (s_mips_globl): New static function; needed for Irix 5 support.
742 * ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
743 external symbol with no type, set the type to st_Proc rather than
744 st_Global. Don't set the index of an external st_Proc or
745 st_StaticProc symbol unless it is also a local symbol.
746
1b434ced
ILT
747 * read.c (read_a_source_file): The second argument to as_where is
748 unsigned int *, not int *.
749
326d16ca
KH
750Thu Sep 8 17:18:24 1994 Kung Hsu (kung@mexican.cygnus.com)
751
752 * config/obj-ecoff.h : Change names to OBJ_GENERATE_ASM_LINENO,
753 and generate_asm_lineno.
754 * config/obj-elf.h : ditto.
755 * read.h : ditto.
756 * read.c (read_a_source_file): if no file when inst is read, set
757 generate_asm_lineno to true.
758 * ecoff.h : change name to generate_asm_lineno and add function
759 ecoff_no_current_file.
760 * ecoff.c : change name to generate_asm_lineno.
761 * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate
762 ecoff style line for asm file.
763
eb4fd16f
ILT
764Thu Sep 8 19:43:49 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
765
766 * config/obj-coff.c (size_section): Do an fprintf to stderr rather
767 than a printf.
768 (fixup_segment): Use as_bad_where rather than as_bad.
769
20c9d49a
SC
770Wed Sep 7 17:21:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
771
eb4fd16f
ILT
772 * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing
773 nothing becomes macro doing nothing.
20c9d49a 774
bf111c9f
KR
775Wed Sep 7 19:10:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
776
353acf31
KR
777 * Makefile.in (Makefile): Depend on config.status.
778 (config.status): Run config.status from . instead of srcdir.
779
72373532
KR
780 * config/tc-i386.c (tc_gen_reloc): Use bfd_get_reloc_code_name to
781 display the name of the relocation type that couldn't be handled.
782 * config/tc-sparc.c (tc_gen_reloc): Likewise.
783 * config/tc-alpha.c (tc_gen_reloc): Likewise. Deleted abort call
784 after call to as_fatal.
785
786 * configure.in (i386-*-linux*): Don't set bfd_gas.
787
788 * Makefile.in (CC_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET,
789 install, uninstall): Don't use "brokensed" hack any more, the new
790 autoconf code should never let program_transform_name be empty.
791
bf111c9f
KR
792 Update for autoconf beta 1.112:
793 * aclocal.m4 (GAS_CHECK_DECL_NEEDED, GAS_WORKING_ASSERT): New
794 macros.
795 * configure.in: Use them. Use AC_ARG_PROGRAM (now provided by
796 autoconf) instead of my hacked-up AC_PROGRAM_TRANSFORM_NAME. Move
797 test for CROSS_COMPILE just before AC_FUNC_ALLOCA, and emit a
798 message to try to ease confusion about autoconf's
799 "cross-compiling" message.
800 * acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_FREE,
801 NEED_DECLARATION_ERRNO): Renamed from NEED_*_DECLARATION.
802 * configure, conf.in: Regenerated.
803
c8570de8
ILT
804Wed Sep 7 12:49:55 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
805
806 * configure.in: Check ${host} and ${target} rather than
807 ${host_canon} and ${target_canon}.
808 * configure: Likewise.
809
8c63448a
ILT
810Tue Sep 6 11:42:38 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
811
812 * config/tc-mips.c (mips_cpu): New static variable.
813 (insns_since_cache_access): New static variable.
814 (md_begin): Set mips_cpu as well as mips_isa.
815 (append_insn): If mips_cpu is 4600, require four nop instructions
816 between an instruction which accesses the cache and certain CACHE
817 instructions. Keep track of the number of instructions seen since
818 an instruction which accesses the cache.
819 (md_parse_option): Set mips_cpu as well as mips_isa.
820
a5a2f156
KR
821Mon Sep 5 07:09:00 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
822
823 * doc/Makefile.in (VPATH): Define using @srcdir@.
824 (prefix, program_transform_name, exec_prefix): Use autoconf style
825 @-substitutions.
826
8c63448a 827Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
318b02b6
KR
828
829 * config/ho-riscix.h, config/tc-arm.c, config/tc-arm.h: New files
830 * configure.in: Recognize the arm.
831
3ffbc907
ILT
832Fri Sep 2 16:05:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
833
834 * ecoff.c (add_file): Don't try to generate line numbers if the
835 symbol table has been frozen.
836
837Thu Sep 1 19:48:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
838
839 * aclocal.m4 (AC_PROG_CC): Use AC_DEFUN, and omit AC_PROVIDE.
840
841 * configure.in: Handle user-specified bfd-assembler option with
842 separate variable from preferred configuration, until the two are
843 resolved. Indicate bfd_gas=preferred for linux a.out. Use
844 AC_PROGRAM_TRANSFORM_NAME, for which a patch has been sent to djm.
845 * Makefile.in (target_alias, program_transform_name): Define,
846 using autoconf @-substitutions.
847
fb589130
KR
848Wed Aug 31 17:43:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
849
7f64fd4e
KR
850 * atof-generic.c: Deleted alloca handling here.
851
fb589130
KR
852 * Makefile.in (prefix, exec_prefix): Use @-subtitutions.
853
854 * aclocal.m4 (AC_OUTPUT_LINKS): Deleted redefinition, since
855 autoconf 1.109 has this fixed.
856 * configure.in: Don't change quote characters around AC_MSG_ERROR
857 invocation. Don't use AC_HEADER_STDC, since it requires running a
858 program. Cache NEED_*_DECLARATION values.
859 * configure, conf.in: Regenerated with a modified autoconf 1.109.
860
c7072f56
KR
861 * as.h (volatile): Don't test or define here; not needed.
862 (alloca): Replace alloca-conf.h inclusion with code recommended in
863 autoconf documentation. Include config.h first.
864
bdee23af
ILT
865Wed Aug 31 11:20:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
866
867 * config/obj-coff.h (S_IS_DEFINED): Absolute symbols are defined
868 also.
869
870 * configure.in, configure: Initialize bfd_gas to no.
871
a48f997a
KR
872Tue Aug 30 19:31:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
873
874 * as.h: Include alloca-conf.h from "libiberty", not
875 "../libiberty".
876
0c49642d
ILT
877Mon Aug 29 16:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
878
879 * config/tc-ppc.c (md_apply_fix): Don't generate a reloc when a
880 symbol is used as an offset into a CSECT that is not a TOC. These
881 types of loads are generated by gcc -mminimal-toc.
882
65ad84c1
KR
883Sun Aug 28 13:22:52 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
884
e9296bdb
KR
885 * as.h (flag_*): Added comments describing meanings of some of
886 these variables.
887 (struct frag): Add some comments about the ns32k-specific fields
888 and why they're here.
889 (SIZEOF_STRUCT_FRAG): Cast addresses to char*, not int.
890 (flag_print_statistics): Declare.
891
892 * as.c (parse_args): Set flag_print_statistics instead of
893 statistics_flag. Options array is now const. Added new option
894 "dump-config"; if specified, print TARGET_ALIAS, TARGET_CANONICAL,
895 TARGET_CPU, TARGET_OBJ_FORMAT, and TARGET_FORMAT, if defined.
896 (main): Change test to check flag_print_statistics.
897 (statistics_flag): Deleted.
898
c72aa0e2
KR
899 * frags.c (frag_variant): Removed PCREL_ADJUST and BSR arguments.
900 Always initialize them to zero.
901 * frags.h (frag_variant): Fixed prototype.
902 * config/tc-i960.c (get_cdisp): Don't pass the extra zero args.
903 * config/tc-ns32k.c (convert_iif): Don't pass the arguments; cache
904 the value of frag_now and fill in the fields later.
905
65ad84c1
KR
906 * Makefile.in (distclean, realclean): Remove new
907 configure-generated files.
908
aaeee550
KR
909Sat Aug 27 20:26:12 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
910
b11fb939
KR
911 Conversion to autoconf:
912 * acconfig.h, aclocal.m4: New files.
913 * configure.in: Rewritten (except for some target-specific code)
914 for autoconf.
915 * conf.in, configure: New files, generated from the above.
916 * Makefile.in: Changed magic sequence indicating insertion of
917 makefile fragments.
918 (VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions
919 from configure.
920 (LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
921 (config.status, configure): Rewrite rules.
922 (config-stamp): Depend on conf. Skip variables that configure is
923 now substituting itself.
924 (*.o dependencies): Deleted host.h.
925 (distclean, realclean): Don't delete host.h.
926 * as.c: Don't include stdio.h, string.h, sys/types.h. Include
927 signal.h after as.h.
928 * as.h: Include alloca-conf.h first. Include ctype.h, string.h,
929 strings.h, stdlib.h, unistd.h, sys/types.h, fopen-bin.h,
930 fopen-same.h, as suggested by autoconf test results.
931 [BROKEN_ASSERT]: Don't include assert.h.
932 (strdup): Declare.
933 (volatile, const): Define if not __STDC__ and not already defined.
934 (malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
935 (free) [NEED_FREE_DECLARATION]: Declare.
936 * gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't
937 include host.h.
938 (malloc) [NEED_MALLOC_DECLARATION]: Declare.
939 * messages.c: Include as.h first. Include errno.h only if
940 HAVE_ERRNO_H. If HAVE_VARARGS_H and not __STDC__, undefine
941 HAVE_STDARG_H. Set NO_STDARG and NO_VARARGS as appropriate.
942 * doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM,
943 INSTALL_DATA): Use autoconf @-substitutions.
944
27bf48ec
KR
945 * input-file.c: Don't include assert.h here, 'cause as.h already
946 includes it.
947
aaeee550
KR
948 * config/tc-alpha.c: Added various prototypes for static
949 functions.
950 (in_range): New function, tests whether a value can fit in an
951 N-bit field.
952 (build_mem, build_operate_n): New functions for constructing
953 opcode values.
954 (emit_sll_n, emit_ldah_num, emit_addq_r, emit_lda_n): New
955 functions for emitting single instructions, no longer requiring a
956 recursive call to md_assemble.
957 (emit_add64): New function for expanding a REG:=REG+CONST
958 operation into one or more instructions, to handle wide constants.
959 (clear_insn): New variable.
960 (md_begin): Fill it in with zeros and BFD_RELOC_NONE values.
961 (alpha_ip): Use it to initialize local variable insns.
962 (alpha_ip, label "immediate" and cases 'P', 'G'): Use emit_add64
963 for calculations.
964
6668a062
KR
965Fri Aug 26 14:46:15 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
966
967 * subsegs.c (section_symbol): Reverse still-wrong test of
968 EMIT_SECTION_SYMBOLS.
969
8ef75e2c
KR
970 * write.c (BFD_FAST_SECTION_FILL): Always define.
971 (write_contents): If fill_size is 1, use memset instead of looping
972 calling memcpy.
973
904b6037
ILT
974Wed Aug 24 12:46:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
975
20ae2fb8
ILT
976 * config/tc-mips.h (LOCAL_LABEL): Define as 0, for compatibility
977 with native MIPS assembler.
978 * configure.in (mips-*-irix*): Don't set emulation.
979 * config/te-irix.h: Remove.
980
fd4f335c
ILT
981 * ecoff.c (ecoff_symbol_new_hook): Don't add a new file if we
982 haven't seen any input files yet.
983 * config/tc-alpha.c (md_begin): Just call symbol_create, rather
984 than calling symbol_new and then removing the symbol from the
985 list.
986
a2a1a548
ILT
987 * as.c (main): Move a inside the #if 0 block which uses it.
988 * ecoff.c (current_stabs_filename): Make const.
989 * frags.h (frag_align_pattern): Declare.
990 * gasp.c (new_file): Cast isp to long, and use %ld to print it.
991 * config/tc-alpha.h (md_operand): Add cast to void.
992 (alpha_do_align): Declare argument types.
993 (tc_get_register): Declare.
994 (alpha_frob_ecoff_data): Declare.
995 * config/tc-alpha.c: Include <ctype.h>.
996 (s_mask): Don't declare; does not exist.
997 (line_comment_chars): Remove /* from descriptive comment.
998 (tc_get_register): Remove unused local reg.
999 (tc_gen_reloc): Don't bother to compare unsigned to zero.
1000 (s_base): Correct warning to actually print register number.
1001 (md_begin): Remove unused locals retval, lose, and i.
1002 (alpha_fix_adjustable): Move default case inside switch to avoid
1003 warning.
1004 (load_symbol_address): Remove unused locals reloc_addr, p, sym,
1005 and addend.
1006 (emit_byte_manip_r): Declare types for all arguments.
1007 (emit_extract_r, emit_insert_r, emit_mask_r): Likewise.
1008 (emit_sign_extend, emit_bis_r, s_proc): Likewise.
1009 (alpha_ip): Use sprint_value to print offsetT value. Remove
1010 unused local size. Remove unused label get_macro.
1011 (alpha_do_align): Make fill const.
1012 (md_apply_fix): Remove unused label check_zov.
1013
904b6037
ILT
1014 * configure.in: Recognize i586 as a synonym for i[34]86.
1015
1016Tue Aug 23 12:32:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1017
1018 * config/obj-coff.c (c_line_new): Change line_number argument from
1019 unsigned short to int so that the type in the prototype matches
1020 the promoted type in the definition.
1021 (stack_delete): Comment out; not used.
1022 * config/obj-coff.h (tc_coff_symbol_emit_hook): Declare if not
1023 BFD_ASSEMBLER, not if BFD_ASSEMBLER. Declare argument type.
1024 * config/tc-m68k.h (tc_coff_sizemachdep): Declare.
1025 * config/tc-m68k.c (tc_coff_symbol_emit_hook): Add ignored
1026 argument.
1027
2cffb4f4
JL
1028Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
1029
05d0c2cc
JL
1030 * gas/config/tc-hppa.c (pa_comm): Undo last change. Set sy_frag for
1031 the common symbol to the zero address frag (the correct fix).
1032
1033Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
1034
1035 * gas/config/tc-hppa.c (pa_comm): Undo last change. Set sy_frag for
1036 the common symbol to the zero address frag (the correct fix).
1037
1038 * config/tc-hppa.c (pa_comm): Set sy_resolved for the common
1039 symbol.
2cffb4f4 1040
101fbf7e
ILT
1041Fri Aug 12 17:51:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1042
1043 * config/tc-mips.c (md_begin): Drop "el" from the end of
1044 TARGET_CPU. Check for mips64orion.
1045
a1dafd55
SG
1046Tue Aug 9 19:43:45 1994 Stu Grossman (grossman@cygnus.com)
1047
1048 * configure.in: Recognize ppc-*-netware.
1049 * config/te-ppcnw.h: New file to support Power-PC/Netware
1050 configurations. Currently, it just enables the use of backslash
1051 escapes in string directives.
1052
55933a58
ILT
1053Tue Aug 9 11:12:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1054
8e479636
ILT
1055 * config/tc-ppc.c (ppc_stabx): Call expression directly, rather
1056 than via pseudo_set. If expression is a symbol, move stab symbol
1057 to just after symbol from expression.
1058
c9a89891
ILT
1059 * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
1060 zero. Undoes change of June 4, 1993.
1061
55933a58
ILT
1062 * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
1063 orion.
1064
1065Mon Aug 8 16:28:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1066
1067 * as.h: Remove FOPEN_WB patch of Aug 6.
1068 * configure.in: Configure for ho-go32 correctly.
1069 * config/ho-go32.h: Fix copyright.
1070
1503edcc
JL
1071Mon Aug 8 11:59:51 1994 Jeff Law (law@snake.cs.utah.edu)
1072
1073 * gas/config/tc-hppa.c (md_pseudo_table): Delete redundant
1074 upper-case versions of the pseudo-ops.
1075
2cd14ddc
ILT
1076Mon Aug 8 13:42:16 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1077
1078 * config/tc-sparc.c (md_apply_fix): If we are going to generate a
1079 non PC relative reloc, don't put the addend in the object file.
1080
6670b7f3
SC
1081Sat Aug 6 01:15:02 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1082
1083 * as.h: If FOPEN_WB is not defined, do the right thing in a go32
1084 environment.
1085
1086Mon Jul 11 11:34:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1087
1088 * config/tc-h8300.c (pint): New function for handling varying
1089 size of int pseudo op.
1090 * doc/as.texinfo: Fix typo describing .h8300h pseduop.
1091
363d6150
JL
1092Mon Aug 1 02:40:43 1994 Jeff Law (law@snake.cs.utah.edu)
1093
fbf71886
JL
1094 * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
1095 field in the space chain.
1096
363d6150
JL
1097 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
1098 hppa_gen_reloc_type.
1099
5e0a90a8
KR
1100Thu Jul 28 15:45:37 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1101
1102 * config/tc-sparc.c (sparc_ip): Check more carefully for
1103 conflicting architectures.
1104 (md_parse_option) [NO_V9]: Complain if v9 was selected.
1105 (md_show_usage): Derive architecture list in usage message from
1106 architecture_pname array.
1107 (cypress): Macro deleted.
1108 (op_hash): Don't initialize.
1109 (s_common): Use bfd_und_section_ptr instead of bfd_und_section.
1110
1111 * config/tc-sparc.c (BSR): New function.
1112 (sparc_ip): Use it for right-shift operations of 32 bits or more.
1113
1114 * config/tc-sparc.c (sparc_ip): Implement new operand type 'x'.
1115
39792caf
KR
1116Tue Jul 26 18:21:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1117
1118 * config/obj-coff.h: Moved common includes and TARGET_FORMAT
1119 definitions together.
1120 (WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD,
1121 OBJ_COFF_OMIT_OPTIONAL_HEADER, BFD_HEADERS, BFD) [!BFD_ASSEMBLER]:
1122 Moved these definitions to the start of the file, before the
1123 includes.
1124 (SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always
1125 define these.
1126 (S_GET_ZEROES): Deleted.
1127 (S_SET_ZEROES): Moved to obj-coff.c.
1128
1129 * config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted
1130 forward declarations.
1131 (obj_pseudo_table): Moved to one version end of file,
1132 conditionalized internally.
1133 (stack typedef, stack_init, stack_delete, stack_push, stack_pop,
1134 tag_hash, tag_init, tag_insert, tag_find, tag_find_or_make): Moved
1135 to one combined version at top of file, unconditional. Deleted
1136 forward declarations.
1137 (s_get_name): Moved one copy of declarations to start of file.
1138 (def_symbol_in_progress): Ditto. Don't initialize.
1139 (S_SET_ZEROES): Moved here from obj-coff.h.
1140 (write_object_file): If TC_COFF_SET_MACHINE is defined, call it on
1141 the file headers.
1142
1143 * config/obj-coff.c (seg_info_off_by_4): Now const and static.
1144 (SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
1145 (previous_file_symbol, def_symbol_in_progress, symbol_externP,
1146 symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't
1147 bother explicitly initializing to zero value.
1148
1149 * config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME
1150 and SF_GET_CALLNAME instead of the TC_S_IS_ versions.
1151
10db66ec
KR
1152 * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls
1153 tc_headers_hook.
1154
1155 * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX
1156 was used previously.
1157 (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.
1158
1159 * config/tc-i960.c (po_hash): Declaration deleted.
1160 (next_object_file_charP): Ditto.
1161 (regnames, aregs, coj): Now const.
1162 (parse_memop): Static array def_scale now const.
1163 (md_begin): Cast away const when passing hash routines addresses
1164 of values in regnames or aregs.
1165 (md_longopts): Added "link-relax" and "no-relax" hyphenated forms.
1166 Continue to accept one-word forms.
1167 (struct tabentry, arch_tab): Moved to top level from inside
1168 md_parse_option. Now const.
1169 (md_show_usage): Use arch_tab to generate usage message. Print
1170 hyphenated forms of relax options.
1171
1172 * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
1173 TC_S_FORCE_TO_*): Moved from here...
1174 * config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff
1175 to test OBJ_AOUT and OBJ_BOUT directly.
1176
1177 * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ,
1178 M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F,
1179 {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*):
1180 Macros deleted.
1181
1182 start-sanitize-i960xl
1183 * config/tc-i960.c (ARCH_XL): Define.
1184 (arch_tab): Include XL.
1185 (targ_has_sfr, targ_has_iclass): Handle XL.
1186 (tc_headers_hook): Set flags to F_I960XL for i960XL.
1187 end-sanitize-i960xl
1188
39792caf
KR
1189Fri Jul 15 15:36:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1190
1191 * subsegs.c (section_symbol): Had last change backwards.
1192
3b6d6f71
KR
1193Thu Jul 14 13:21:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1194
462ab71d
KR
1195 * config/atof-ns32k.c: Deleted.
1196
3b6d6f71
KR
1197 * config/obj-aout.c (obj_aout_frob_symbol): Use
1198 bfd_ind_section_ptr and bfd_und_section_ptr.
1199
1200 * subsegs.c (subseg_set_rest): Compare segT values directly,
1201 without casting to int first.
1202
259e35d4
KR
1203 * config/tc-ns32k.c (md_begin): Return value from hash_insert
1204 should be pointer to const. Don't call exit explicitly after
1205 calling as_fatal; it won't return.
1206 (convert_iif): Make local variable j be pointer to bit_fixS, since
1207 that's how it's used.
1208 (encode_operand, case 'b'): Ignore sprintf return value. Don't try
1209 converting freeptr to int and back.
1210
1211 Merged in NS32K support update from Ian Dall (dall@hfrd.dsto.gov.au):
1212
1213 * config/te-pc532mach.h: New file. pc532-mach target emulation.
1214
1215 * config/te-netbsd532.h: New file. Netbsd532 target emulation.
1216
1217 * config/tc-ns32k.h: Add definition of NOP_OPCODE.
1218
1219 * config/tc-ns32k.h: Add prototype for fix_new_ns32k_exp.
1220
1221 * config/tc-ns32k.h: Add BFD_ASSEMBLER support.
1222
1223 * config/tc-ns32k.c (tc_gen_reloc): New function for BFD_ASSEMBLER.
1224
1225 * config/tc-ns32k.c (fix_new_ns32k_exp): Get reloc type
1226 differently for BFD_ASSEMBLER.
1227
1228 * config/tc-ns32k.c (md_estimate_size_before_relax): Get reloc
1229 type differently for BFD_ASSEMBLER.
1230
1231 * config/tc-ns32k.c (md_create_long_jump): Size of opcode is one
1232 not 2.
1233
1234 * config/tc-ns32k.c (md_convert_frag): Code for the BFD_ASSEMBLER
1235 case. Also use smart md_pcrel_adjust function.
1236
1237 * config/tc-ns32k.c (md_apply_fix): Code for the BFD_ASSEMBLER
1238 case. Also use smart md_fix_pcrel_adjust function.
1239
1240 * config/tc-ns32k.c (md_fix_pcrel_adjust): New function which can
1241 find offset from opcode to operand even if in another frag
1242 and in the presence of relaxing.
1243
1244 * config/tc-ns32k.c (md_pcrel_adjust): New function which can
1245 find offset from opcode to operand even if in another frag
1246 and in the presence of relaxing.
1247
1248 * config/tc-ns32k.c (md_number_to_disp): Check ranges properly.
1249
1250 * config/tc-ns32k.c (md_atof): use atof_ieee instead of special
1251 atof_ns32k.
1252
1253 * config/tc-ns32k.c (reloc): New (static) function for
1254 BFD_ASSEMBLER.
1255
1256 * config/tc-ns32k.c (convert_iif): More correct pc relative code.
1257 md_relax must be able to find opcode address even if in another frag.
1258
1259 * config/tc-ns32k.c: More extensive comments.
1260
1261 * config/tc-ns32k.c (encode_operand): Support new operand classes I
1262 and Z. Drop Q.
1263
1264 * config/tc-ns32k.c (fix_new_ns32k_exp): new function and
1265 corresponding prototype.
1266
1267 * config/tc-ns32k.c: make 32532 default machine instead of 32032.
1268
1269 * config/tc-ns32k.c: include opcode/ns32k.h after as.h
1270
1271 * aout_gnu.h: r_disp needs to be 2 bits for TC_NS32K
1272
1273 * write.h: fx_im_disp needs to be 2 bits big for TC_NS32K
1274
1275 * write.c (relax_segment): Use TC_PCREL_ADJUST macro (if defined)
1276 instead of adding pcrel_adjust.
1277
1278 * write.c (write_object_file): Adjust to_addr for the
1279 BROKEN_DOT_WORD feature for the BFD_ASSEMBLER case.
1280
1281 * write.c (write_object_file): Use TC_CONS_FIX_NEW if it is defined.
1282
1283 * write.c (write_contents): Add code (currently if
1284 BFD_FAST_SECTION_FILL is defined) to make large fills a lot faster.
1285
1286 * configure.in: Remove ns32k from special FP list. All the ns32k
1287 series use ieee float.
1288
1289 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd targets
1290
1291 * as.h: include expr.h before targ-env.h. Some target dependent file
1292 want to use expr structures.
1293
4ac7a9e4
ILT
1294Wed Jul 13 14:49:05 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1295
1296 * config/tc-m68k.c (m68k_ip): Change rp to be a const pointer.
1297 (md_parse_option): Clear cpu field of current_architecture before
1298 setting a new cpu type. Clear no_68881 for m68881 or m68882.
1299 Clear no_68851 for m68851.
1300
6b510a40
KR
1301Tue Jul 12 21:27:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1302
1303 * config/ho-sysv.h (realloc): Declare.
1304
3c498933
KR
1305 * symbols.c (symbol_create): New function, most of the guts of the
1306 old symbol_new function.
1307 (symbol_new): Now just checks symbol_table_frozen, calls
1308 symbol_create, and enters the symbol into the symbol table.
1309 * subsegs.c (section_symbol): If EMIT_SECTION_SYMBOLS is not true,
1310 and the symbol table is frozen, call symbol_create instead of
1311 symbol_new.
1312 * symbols.h (symbol_create, symbol_table_frozen): Declare.
1313
1314 * symbols.c (symbol_clear_list_pointers): Always a function now.
1315 * struc-symbol.h (symbol_clear_list_pointers): Deleted macro
1316 version.
1317
1318 * symbols.c (debug_verify_symchain): New macro, defined to be
1319 verify_symbol_chain or a cast to void, depending on DEBUG_SYMS.
1320 (many functions): Invoke debug_verify_symchain unconditionally.
1321
a85cd289
KH
1322Tue Jul 12 12:06:42 1994 Kung Hsu (kung@x1.cygnus.com)
1323
1324 * config/obj-ecoff.h: change calling interface of
1325 OBJ_GENERATE_ASM_LINE_STAB.
1326 * config/obj-elf.h: ditto.
1327 * read.c (read_a_source_file): ditto.
1328 * ecoff.h: change calling interface of
1329 ecoff_generate_asm_line_stab.
1330 * ecoff.c (add_file): record of filename to handle case of include
1331 files, also change default built-in type from int to void for
1332 asm file.
1333 * ecoff.c (ecoff_generate_asm_line_stab): handle case of include
1334 files.
1335
51d8e5ae
ILT
1336Mon Jul 11 17:20:23 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1337
1338 * config/tc-mips.c (macro): In case M_LA_AB, SVR4_PIC, large
1339 constant, and case ldd_std, set mips_optimize to 2 temporarily to
1340 avoid inserting an unexpected nop instruction.
1341
64d527f7
ILT
1342Sat Jul 9 00:05:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1343
1344 * ecoff.c (ecoff_build_lineno): Handle count correctly for last
1345 line number.
1346
6f15d409
SC
1347Fri Jul 8 15:22:07 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1348
6670b7f3 1349 * gasp.c (process_pseudo_op): Pass right args to do do_aif.
6f15d409
SC
1350 (get_any_string): New arg 'pretend_quote'.
1351 (get_and_process, do_formals, macro_expand, do_sdata,
1352 process_pseudo_op): Use new arg.
1353
daad3bbf
KH
1354Fri Jul 8 12:23:44 1994 Kung Hsu (kung@mexican.cygnus.com)
1355
1356 * config/obj-ecoff.h: define macro OBJ_GENERATE_ASM_LINE_STAB.
1357 * config/obj-elf.h: ditto.
1358 * read.c (read_a_source_file): generate line stabs for asm file.
1359 * read.h: add extern generate_asm_line_stab.
1360 * ecoff.h : add prototype for ecoff_generate_asm_line_stab().
1361 * ecoff.c (add_file): if there's no filename provided, set switch
1362 to generate line stabs for .s file.
1363 * ecoff.c (add_procedure): add stabs symbol for .ent directive.
1364 * ecoff.c (generate_ecoff_stab): creates an artificial stabs.
1365 * ecoff.c (generate_asm_line_stab): generate a artifitial label
1366 for each line and generate a stabn for the line.
1367
13d9fd33
SC
1368Thu Jul 7 17:04:03 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1369
1370 * gasp.c (get_any_string): Cope with getting a string with an
1371 alternate base specifier.
1372 (do_aif, do_aelse): Only enable output if expression is true and previous
1373 level was on.
1374 (chartype_init): Add BASEBIT chartype.
1375 (process_pseudo_op): Notice nesteed AIFs.
1376
1377Thu Jul 7 12:30:22 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1378
1379 * h8300.c (do_a_fix_imm): Code for 2 bit reloc type using in trapa
1380 insn. (fix pr 5165, 5174)
1381
8fd04cba
JL
1382Thu Jul 7 11:31:32 1994 Jeff Law (law@snake.cs.utah.edu)
1383
13d9fd33
SC
1384 * config/tc-hppa.c (R_DLT_REL): If it isn't defined, then define
1385 to an appropriate value to avoid losing on old hpux systems.
1386
8fd04cba
JL
1387 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions for
1388 symbols in DLT relative relocs.
1389 (tc_gen_reloc): Zero out the addend field for DLT relative relocs.
1390
8882a587
ILT
1391Wed Jul 6 01:07:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1392
1393 * config/tc-ppc.c (ppc_tc): If not OBJ_COFF, force TOC entry to
1394 align to a four byte boundary.
1395
4174e052
KR
1396Tue Jul 5 15:42:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1397
1398 * config/tc-alpha.c (load_expression): Handle 32-bit addends.
1399 (gpdisp_hi16_howto): Now points to const.
1400 (load_insn_table, alpha_ip): Fix uses of const.
1401
10f67315
KR
1402 * doc/internals.texi: Updates to COFF description. Added "@end
1403 defmac" as needed, and some extra heading and "@bye" so it'll
1404 format as a separate document.
1405
bcb62abf
ILT
1406Tue Jul 5 13:54:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1407
1408 * config/obj-elf.h (S_GET_ALIGN, S_SET_ALIGN): Define.
1409 * config/obj-elf.c (obj_elf_common): Set alignment of common
1410 symbol.
1411 * config/tc-sparc.c (s_common): If OBJ_ELF, set alignment of
1412 common symbol.
1413
655f3ef4
JL
1414Mon Jul 4 18:29:43 1994 Jeff Law (law@snake.cs.utah.edu)
1415
1416 * config/tc-hppa.c (is_complex): New macro.
1417 (cons_fix_new_hppa): "Handle" complex expressions.
1418
1419Fri Jul 1 00:48:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1420
1421 * config/obj-coff.c (write_object_file): Set s_align field from
1422 section_alignment array.
1423
04f0c2e3
KR
1424Thu Jun 30 15:05:28 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1425
1426 * write.c (write_object_file): Use bfd_com_section_ptr.
1427 * as.h (absolute_section, undefined_section): Use new BFD macros
1428 bfd_abs_section_ptr and bfd_und_section_ptr.
1429
f2554579
ILT
1430Thu Jun 30 14:36:37 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1431
1432 * config/tc-mips.c (macro): For M_LI_SS, decide how to handle it
1433 based on contents of imm_expr and offset_expr, rather than
1434 mips_pic. For M_LI_DD, decide how to handle it based on segment
1435 name of offset_expr, rather than mips_pic.
1436 (mips_ip): If g_switch_value < 4, use immediate values for 'l'.
1437 If g_switch_value < 8, use .rdata rather than .lit for 'L'.
1438
6f0b87c3
SS
1439Wed Jun 29 17:30:46 1994 Stan Shebs (shebs@andros.cygnus.com)
1440
1441 * as.c (show_usage): Break long string into shorter ones.
1442 (parse_args): Add -v, prints version id and continues.
1443 * config/tc-mips.c (md_show_usage): Break long string.
1444
1445Mon Jun 27 09:47:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
1446
1447 * config/tc-i386.c (md_parse_option): Handle "-V" and "-Q" if
1448 OBJ_ELF is defined.
1449
f488a4d6
SS
1450Sun Jun 26 16:30:48 1994 Stan Shebs (shebs@andros.cygnus.com)
1451
1452 * as.c (main) [HOST_SPECIAL_INIT]: New hook, for host-specific
1453 initialization.
1454
1f12ae43
JL
1455Wed Jun 22 00:24:55 1994 Jeff Law (law@snake.cs.utah.edu)
1456
1457 * config/tc-hppa.h (obj_frob_symbol): Define for OBJ_ELF.
1458 More gas/bfd lossage exposed by the new linker code.
1459
dff770c8
ILT
1460Tue Jun 21 11:32:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1461
1f12ae43
JL
1462 * subsegs.c (subseg_change): Clear seginfo after allocating it.
1463 (subseg_get): Pass actual size of seginfo to memset.
1464
dff770c8
ILT
1465 * subsegs.c (abs_seg_info, und_seg_info): Define if BFD_ASSEMBLER.
1466 (subseg_change): Store seg_info for bfd_abs_section_ptr in
1467 abs_seg_info, and store seg_info for bfd_und_section_ptr in
1468 und_seg_info.
1469 (subseg_get): Likewise. Also, don't set output_section if it is
1470 already set.
1471 (seg_info): Define as function.
1472 * subsegs.h (seg_info): Declare as function rather than defining
1473 as macro.
1474 * write.c (relax_and_size_seg): Call seg_info rather than
1475 bfd_get_section_userdata.
1476
e0b36f18
KR
1477Mon Jun 20 16:30:54 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1478
639c820d
KR
1479 * configure.in (ppc-*-elf*): New target, like -sysv4*.
1480
e0b36f18
KR
1481 * expr.c (operand): If "0f" is followed by '\0', don't do eol
1482 checks.
1483
256816ca
ILT
1484Mon Jun 20 15:17:43 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1485
1486 * ecoff.c (ecoff_build_aux): Call swap_tir_out and swap_rndx_out
1487 via backend pointer, not directly.
1488
de442a3c
ILT
1489Fri Jun 17 18:05:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1490
1491 * Makefile.in (config-stamp): Make sure there is at least one
1492 element in the for loop.
1493
0e68b3bc
JL
1494Fri Jun 17 11:01:04 1994 Jeff Law (law@snake.cs.utah.edu)
1495
239f16dd
JL
1496 * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy.
1497
0e68b3bc
JL
1498 * config/tc-hppa.h (elf_hppa_final_processing): Declare.
1499
5ee93e0a
KR
1500Wed Jun 15 20:44:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1501
286272fb
KR
1502 * as.c (parse_args): Cast xmalloc return value.
1503
5ee93e0a
KR
1504 * Makefile.in (config-stamp): If $(defs) contains multiple words,
1505 emit a #define line for each.
1506 * configure.in: For sparc64 target, use sparc cpu files and add
1507 sparcv9 to extra_defs. No longer treat sparc64-*-aout* specially.
1508
1509 * config/tc-sparc.c (membar_masks): Now static and const.
1510 (md_show_usage) [!NO_V9]: Add -Av9 to usage message.
1511 (current_architecture) [sparcv9]: Initialize to v9.
1512 (md_begin) [sparcv9]: Don't bother changing it unconditionally
1513 here.
1514 (s_reserve): Don't pass unexpected argument to as_bad with
1515 bad-segment message.
1516
1517 * as.h (bfd_alloc_by_size_t) [BFD_ASSEMBLER]: Declare.
1518
1519 * config/atof-ieee.c (int_to_gen): Commented out unused routine.
1520
1521 * config/tc-vax.c (md_assemble): Removed check of operand section.
1522
1523 Fri Jun 3 17:25:08 1994 Pat Rankin (rankin@eql.caltech.edu)
1524
1525 * config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
1526 these new VMS symbol-type macros for `complex float' and
1527 `complex double' support. Their values come from the existing
1528 DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
1529 (DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
1530 REAL8 and COMPLX8; not used yet, because gcc outputs the same
1531 .stabs for `double' regardless of whether `-mg' is used.
4174e052 1532 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
5ee93e0a
KR
1533 for gcc2's predefined types "complex float", "complex double",
1534 and "complex long double" (identical to complex double).
1535
36a87ad7
ILT
1536Wed Jun 15 12:32:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1537
0e35ba9b
ILT
1538 * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
1539 section symbol, not C_LABEL.
1540
adf05987
ILT
1541 * config/tc-mips.c (mips_ip): Permit a modifier in 'o' case, and
1542 permit non constant expressions in 'u' case. Lets ``lui
1543 $8,%hi(foo); lw $8,%lo(foo)($8)'' work correctly.
36a87ad7 1544
a5183648
ILT
1545Mon Jun 13 12:08:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1546
1547 * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
1548 to put a common symbol in a set.
1549
02d4e923
ILT
1550Sat Jun 11 16:41:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1551
1552 Add weak symbols as an extension to a.out.
1553 * read.c (pseudo_set): Only preserve external bit for OBJ_AOUT and
1554 OBJ_BOUT if not BFD_ASSEMBLER.
1555 * config/aout_gnu.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB):
1556 Define as in ../include/aout/aout64.h.
1557 * config/obj-aout.h (OBJ_SYMFIELD_TYPE): If not BFD_ASSEMBLER,
1558 define as char.
1559 (S_GET_WEAK, S_SET_WEAK): Define if not BFD_ASSEMBLER.
1560 * config/obj-aout.c (obj_pseudo_table): Add "weak".
1561 (obj_emit_symbols): Adjust type of weak symbols.
1562 (obj_aout_weak): New static function.
1563
726672c5
ILT
1564Fri Jun 10 13:48:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1565
7b1e07b4
ILT
1566 * config/obj-elf.c (obj_elf_section): Don't set any flags based on
1567 the type of a special section.
1568
726672c5
ILT
1569 * config/ho-sunos.h: Include <stdlib.h>. Don't declare malloc,
1570 realloc, free, or atol.
1571
0b3d0999
BC
1572Wed Jun 8 06:28:37 1994 Bill Cox (bill@cygnus.com)
1573
1574 * Makefile.in (check): Delete as.new dependency, so that
1575 regression test doesn't trigger an assembler build.
1576
daa7e184
ILT
1577Tue Jun 7 13:33:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1578
1579 * Makefile.in (mostlyclean, realclean): New targets.
1580 * doc/Makefile.in, testsuite/Makefile.in: Likewise.
1581
d2c71068
ILT
1582Mon Jun 6 13:10:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1583
1584 * config/tc-mips.c (RDATA_SECTION_NAME): Define.
1585 (macro): Correct M_LI_SS SVR4_PIC/EMBEDDED_PIC case. After M_LI_D
1586 or M_L_DOB or label dob, force a new frag to avoid getting
1587 confused in tc_gen_reloc.
1588 (mips_ip): Use RDATA_SECTION_NAME, not .rdata.
1589 (s_change_sec): Likewise.
1590
1fbfe108
ILT
1591Fri Jun 3 23:35:36 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1592
1593 * read.c (emit_expr): Use memset to zero out memory, rather than
1594 going through md_number_to_chars. This permits handling symbolic
1595 arguments when the size is larger than sizeof (valueT), if
1596 TC_CONS_FIX_NEW is prepared to handle the case (as it is on MIPS).
1597
f3d817d8
DM
1598Fri Jun 3 12:50:13 1994 David J. MacKenzie (djm@rtl.cygnus.com)
1599
baed44cd
DM
1600 * as.c (show_usage), config/tc-alpha.c (md_show_usage),
1601 config/tc-mips.c (md_show_usage): Fix up messages.
1602
def66e24
DM
1603 * as.h: Replace flagseen with separate variables.
1604 * as.c (parse_args): Set them. Don't accept -1 option, or -v
1605 explicitly (it's a synonym for --version).
1606 * as.c, input-scrub.c, messages.c, read.c, symbols.c, write.c,
1607 config/obj-aout.c, config/obj-aout.h, config/obj-bout.c,
1608 config/obj-bout.h, config/obj-coff.c, config/obj-coff.h,
1609 config/obj-vms.c, config/tc-hppa.c, config/tc-i386.c,
1610 config/tc-i960.c, config/tc-m68k.c, config/tc-mips.c,
1611 config/tc-vax.c: Use the new flag variables instead of flagseen.
1612 * config/tc-vax.c [OBJ_VMS]: Recognize -+, -1, -v, and document in
1613 usage.
1614
f3d817d8
DM
1615 * as.c (show_usage): Remove target specific messages;
1616 instead, call md_show_usage.
1617 (parse_args): Use getopt_long_only. Take pointers to argc and
1618 argv.
1619 (main): Pass parse_args pointers.
1620 * as.h: Remove 3 variables that are redundant with flagseen.
1621 * as.c, messages.c: Change their users to use flagseen.
1622 Define getopt stuff.
1623 * tc.h: Update md_parse_option decl. Add md_show_usage decl.
1624 * config/tc-*.c: Add md_shortopts, md_longopts,
1625 md_longopts_size, md_show_usage. Change calling convention for
1626 md_parse_option. Remove md_parse_long_option.
1627 * config/tc-ns32k.c: Rename `struct option' to `struct ns32k_option'.
1628 * config/tc-i386.h: Don't define md_parse_option.
1629
ebd6f117
DM
1630Thu Jun 2 13:54:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
1631
1632 * as.c (show_usage): New function.
1633 (parse_args): Code moved from main.
1634 Recognize --help and --version.
1635 * config/tc-ns32k.h: Define TC_NS32K.
1636 * doc/as.texinfo: Document all of the target-independent command
1637 line options.
1638
314628f6
KR
1639Thu Jun 2 12:07:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1640
1641 * gasp.c (hash_new_table): Clear newly allocated table.
1642
1643 * config/tc-m68k.c (enum _register): Add 68060 control registers
1644 BUSCR and PCR.
1645 (last_movec_reg): New macro.
1646 (m68000_control_regs, m68010_control_regs, m68020_control_regs,
1647 m68040_control_regs, m68060_control_regs): New arrays.
1648 (control_regs): New pointer.
1649 (m68k_ip): Use control_regs instead of testing CPU every time.
1650 Use last_movec_reg too. In error messages, handle 68060, and
1651 print 68060 for mfloat, too.
1652 (m68k_init_after_args): Handle "68060". Use m68040up for making
1653 m68851 choice. Set control_regs.
1654 (md_parse_option): Handle "68060".
1655 * configure.in: Setting cpu_type, recognize m68060 too.
1656
1657 * config/obj-coff.c (fixup_segment) [!BFD_ASSEMBLER]
1658 [DIFF_EXPR_OK]: Do conversion to pc-relative for difference, even
1659 if pcrel is already set.
1660
1661 * read.c (potable): Add this_gcc_requires_the_gnu_assembler in all
1662 lower-case, in case we're ignoring case of opcodes in the input
1663 file.
1664
1665 * doc/as.texinfo (.section): Document as unavailable for a.out
1666 type formats.
1667
1668 * config/tc-alpha.c (machine): New variable.
1669 (load_insn): New macro.
1670 (load_insn_table): New function.
1671 (md_begin): Call load_insn_table, once for basic instructions and
1672 once for appropriate PAL instruction table.
1673 (md_parse_option): Set `machine' based on -m##### arguments.
1674 * config/alpha-opcode.h (alpha_pal21064_opcodes): Split out from
1675 alpha_opcodes.
1676 (alpha_pal21164_opcodes): New table.
1677 (NUM21064OPCODES, NUM21164OPCODES): New macros.
1678
1679 * configure.in (target i386-*-netbsd0.8): Use 386bsd emulation.
1680
1681 * doc/Makefile.in (install-info-gasp): Use $$dir when installing
1682 file.
1683
0221ddf7
ILT
1684Wed Jun 1 10:48:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1685
1686 * config/tc-mips.c (mips_ip): Force floating point values to be
1687 aligned correctly.
1688
488442d4 1689Fri May 27 10:05:53 1994 Ken Raeburn (raeburn@cygnus.com)
c06e55d9
KR
1690
1691 Merged in changes from gas-2.3 net release:
1692
1693 * Makefile.in (VERSION): Updated to cygnus-2.3.1.
1694
1695 * config/obj-vms.c: Replaced unchecked uses of malloc with
1696 xmalloc.
1697
1698 * listing.c (list_symbol_table): Only test BFD64, not
1699 BFD_ASSEMBLER too.
1700
314628f6
KR
1701 * config/obj-coff.c (fixup_segment) [BFD_ASSEMBLER]
1702 [DIFF_EXPR_OK]: Don't check pcrel, just convert it.
c06e55d9
KR
1703
1704 * config/obj-vms.c: Removed lots of extra semicolons after
1705 compound statements.
1706 (strchr): Don't declare here.
1707
1708 * config/ho-vax.h (realloc): Declare.
1709
1710 * config/ho-vms.h (strchr, strdup): Declare.
1711
1712 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Accept and ignore
1713 option `-q'.
1714
1715 Wed May 18 20:50:35 1994 Pat Rankin (rankin@eql.caltech.edu)
1716
1717 * config/obj-vms.h (DBG_S_C_SQUAD, DBG_S_C_UQUAD): define these
1718 new VMS symbol-type macros; signed and unsigned quadword integers,
1719 for `long long' support. Their values come from the existing
1720 DSC$K_DTYPE_QU and DSC$K_DTYPE_Q macros in <descrip.h>. The
1721 VMS debugger now recognizes `long long' variables correctly.
4174e052 1722 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
c06e55d9
KR
1723 for gcc2's predefined types "long double" (same as double, as
1724 per gcc's current state), "long long int", "long long unsigned
1725 int", and final `otherwise' case (to avoid uninitialized type
1726 and size fields). [caveat: predefined types "complex int",
1727 "complex float", "complex double", and "complex long double" are
1728 still missing.]
1729
1730 * config/ho-vms.h (EXIT_FAILURE): define as 0x10000002 instead
1731 of 0, because the latter indicates success rather than failure
1732 when passed to `exit' or return from `main' compiled by gcc2.
1733
1734 * config/obj-vms.c (array_suffix, generate_suffix): replace two
1735 hardcoded `0xa3's with macro DBG_S_C_ADVANCED_TYPE from obj-vms.h.
1736 (VMS_typedef_parse): eliminate redundant if-then-else when
1737 allocating new symbol entry and linking it to VMS_Symbol_type_list.
1738
1739 Tue May 17 20:47:31 1994 Pat Rankin (rankin@eql.caltech.edu)
1740
1741 * config/obj-vms.c (Write_VMS_MHD_Records): don't try to interpret
1742 the contents of the GAS_VERSION string when falling back to it for
1743 language processor identification.
1744
1745 * make-gas.com, vmsconf.sh (ENVIRON): fix misspelling of
1746 `psect_attr' in linker options.
1747
1748 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
1749
1750 * configure.bat: update to latest makefile.in
1751 * config/te-go32.h: [new] go32's environment
1752
a193acc0
ILT
1753Fri May 20 17:59:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1754
1755 * as.h: Don't declare parameters for strstr.
1756
f9c57637
ILT
1757Thu May 19 15:40:13 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1758
1759 * config/tc-sparc.c (md_section_align): Don't change the size if
1760 OBJ_ELF.
1761
ac7f7dfe
ILT
1762Wed May 18 13:08:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1763
1764 * Makefile.in (install): Redirect ln output to /dev/null. If ln
1765 fails on gasp, install gasp.new, not gasp.
1766
44e8d616
JL
1767Wed May 18 09:16:36 1994 Jeff Law (law@snake.cs.utah.edu)
1768
1769 * config/tc-hppa.c (pa_ip): Use R_HPPA_ABS_CALL, not R_HPPA for
1770 absolute calls.
1771
ee8b8346
JL
1772Tue May 17 12:50:46 1994 Jeff Law (law@snake.cs.utah.edu)
1773
1774 * config/tc-hppa.c (pa_parse_fp_cmp_cond): Report an error
1775 on a partial completer match.
1776
3315c7c7
JL
1777Mon May 16 12:03:49 1994 Jeff Law (law@snake.cs.utah.edu)
1778
1779 * config/tc-hppa.c: Change .hppa_unwind to .PARISC.unwind
1780 throughout code.
1781 (is_complex): Delete definition and support for complex relocation
1782 types.
1783 (tc_gen_reloc): Delete special unwind crud for ELF. Simplify and
1784 rewrite ELF code based on 94-02-02 PA ELF draft spec.
1785 (pa_build_unwind_subspace): Use standard PARISC_DIR32 relocs for
1786 the unwind descriptors.
1787
c794f0aa
SC
1788Fri May 6 14:13:15 1994 Steve Chamberlain (sac@cygnus.com)
1789
1790 * config/go32.mh: New makefile fragment for go32 crossing.
1791 * configure.in (host==go32): Use new fragment.
1792
2db90a63
ILT
1793Fri May 6 14:35:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1794
1795 * gasp.c: Include libiberty.h.
1796 (main): Remove unused variable i.
1797
1798 * config/tc-ppc.c (md_begin): When using -many, permit comparison
1799 instructions to appear multiple times in the opcode table.
1800
59232011
KR
1801Thu May 5 19:14:43 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1802
2db90a63
ILT
1803 * Makefile.in (VERSION): Update to 2.2.90.
1804
fbefddfb
KR
1805 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Don't permit additions
1806 to the symbol table if it's already been set in the output bfd.
1807 (symbol_begin) [! EMIT_SECTION_SYMBOLS] [RELOC_REQUIRES_SYMBOL]:
1808 Don't use bfd_abs_section.symbol for gas absolute symbol.
1809
59232011
KR
1810 * doc/Makefile.in (distclean, clean-dvi, clean-info): Delete gasp
1811 files too.
1812
6d41de19
ILT
1813Thu May 5 18:12:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1814
1815 * config/tc-mips.c (mips_emit_delays): Make call to
1816 mips_no_prev_insn unconditional.
1817
a139d99b
KR
1818Thu May 5 17:25:38 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1819
1820 * config/obj-coff*.*: Merged coffbfd versions into coff versions,
1821 with a single "#ifdef BFD_ASSEMBLER" controlling most of it for
1822 now. Deleted obj-coffbfd.* files.
1823 * configure.in: Always use obj-coff.* for COFF targets.
1824
9267b020
KR
1825Wed May 4 13:34:11 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1826
a139d99b
KR
1827 * config/te-dpx2.h (TARGET_FORMAT, REGISTER_PREFIX_OPTIONAL):
1828 Define.
1829 * configure.in (m68k-bull-sysv3*): Enable.
1830
9267b020
KR
1831 * config/coff_gnu.h: Deleted.
1832
9fc63ce0
ILT
1833Wed May 4 11:29:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1834
2237e240
ILT
1835 * config/tc-m68k.h (TARGET_FORMAT): If not TE_SUN3, define as
1836 "a.out-zero.big".
1837
9fc63ce0
ILT
1838 * config/obj-coffbfd.c (fixup_segment): Make common symbol and PC
1839 relative adjustments when TE_LYNX is defined as well as when
1840 TC_I386 is defined.
1841
a3547e53
KR
1842Wed May 4 02:29:21 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1843
3f048548
KR
1844 * as.h (strstr): Restore declaration.
1845 (subseg_get) [BFD_ASSEMBLER]: Declare.
1846
1847 * write.c (write_object_file): If obj_adjust_symtab is defined,
1848 invoke it. Then call set_symtab, and finally invoke *_frob_file
1849 hooks.
1850 * config/obj-coff.c (coff_adjust_symtab): Renamed from
1851 coff_frob_file.
1852 * config/obj-coff.h (coff_adjust_symtab): Changed declaration
1853 accordingly.
1854 (obj_adjust_symtab): Macro also changed.
1855
a3547e53
KR
1856 * configure.in (i386-*-gnu*): New target, handled like i386-mach.
1857
1858Tue May 3 21:04:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1859
1860 * config/obj-coff.h (TARGET_FORMAT) [TC_I960]: Select little
1861 endian version.
1862
1863 * config/obj-coffbfd.h (TARGET_FORMAT) [TC_I960]: Ditto.
1864
1865 * config/obj-coff.c (coff_frob_section): Round up the size of
1866 every section to a multiple of the alignment, so that BFD doesn't
1867 surprise us.
1868
1869 Eliminate many simple differences between the two COFF back ends:
1870
1871 * config/obj-coffbfd.c: Removed all uses of DEFUN and DEFUN_VOID.
1872 Made minor stylistic changes, deleted some register declarations.
1873 (stack_top): Deleted.
1874 (symbol_to_chars): Use absolute_section and reg_section instead of
1875 the corresponding SEG_* symbols.
1876 (obj_coff_endef, tag_find_or_make, fixup_segment): Likewise.
1877 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
1878 Moved to just after pseudo-op table. All functions now static.
1879 (stack_delete): Removed declaration.
1880 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
1881 after stack functions.
1882 * config/obj-coffbfd.h: Reordered some declarations and macros.
1883 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
1884 (stack typedef): Deleted.
1885 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
1886 (SYM_AUXENT): New macro.
1887 (SA_GET_*, SA_SET_*): Define in terms of SYM_AUXENT when feasible.
1888 (SF_GET_*, SF_SET_*): Define in terms of SF_GET when feasible.
1889 (SA_GET_SYM_TAGNDX, SA_GET_SYM_ENDNDX, SA_SET_SYM_TAGNDX,
1890 SA_SET_SYM_ENDNDX, object_headers typedef, data_section_header,
1891 text_section_header): Delete non-BFD_HEADERS versions, since we
1892 always define that symbol now.
1893
1894 * config/obj-coff.c (stack_top): Deleted.
1895 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
1896 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Change
1897 argument name from "ignored" to "ignore".
1898 (obj_coff_val): Use frag_now_fix.
1899 (obj_pseudo_table): Removed IGNORE_DEBUG version, since it doesn't
1900 get used.
1901 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
1902 Moved to just after pseudo-op table. All functions now static.
1903 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
1904 after stack functions.
1905 * config/obj-coff.h: Reordered some declarations and macros.
1906 Protected against multiple inclusions.
1907 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
1908 (stack typedef): Deleted.
1909 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
1910 (stdoutput): Deleted declaration.
1911 (TARGET_FORMAT) [TC_I386]: Don't define if already defined.
1912
1b96bdce
ILT
1913Mon May 2 17:09:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1914
1915 * subsegs.h (segment_info_type): Use fix_tail field even if
1916 BFD_ASSEMBLER.
1917 * subsegs.c (subseg_change): Initialize fix_tail field.
1918 (subseg_get): Likewise.
1919 * write.c (frags_chained): New static variable.
1920 (fix_new_internal): If frags_chained is set, use fix_root and
1921 fix_tail from seg_info (now_seg), rather than frchain_now.
1922 (chain_frchains_together_1): Set fix_tail field.
1923 (chain_frchains_together): Set frags_chained.
1924
17f0b355
KR
1925Thu Apr 28 01:39:15 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1926
1927 * config/tc-mips.c (s_option): Only refer to g_switch_* variables
1928 if GPOPT is defined.
1929 (s_abicalls): Ditto.
1930 (md_apply_fix): Cast char* to unsigned char* to avoid pointer
1931 mismatch.
1932
fa1a86f3
SC
1933Wed Apr 27 11:06:32 1994 Steve Chamberlain (sac@cygnus.com)
1934
1935 * configure.in (i386-*-go32): Uses coff now.
1936 * gasp.c (main): Now takes -D on command line.
1937 (show_usage): Describe new options.
1938
b46f83f2
KR
1939Tue Apr 26 17:10:30 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1940
1941 * listing.c (list_symbol_table): Print "NO DEFINED SYMBOLS" and
1942 "NO UNDEFINED SYMBOLS" if there aren't any, instead of displaying
1943 the header with an empty list.
1944
fb51366f
KR
1945 * config/obj-coffbfd.c (fill_section): Check COFF_NOLOAD_PROBLEM
1946 also before setting STYP_NOLOAD for .bss section.
1947
926ffe94
KR
1948 * config/tc-m68k.c (flag_reg_prefix_optional): New variable.
1949 Initialized to value of REGISTER_PREFIX_OPTIONAL, if defined, or
1950 zero.
1951 (m68k_reg_parse): If flag_reg_prefix_optional is set, permit
1952 register prefix to be absent.
1953 (m68k_ip_op): Accept `&' also for immediate constants.
1954 (insert_reg): Don't bother with (two!?) sanity checks of the
1955 symbol table when inserting each register.
1956 (m68k_parse_long_option): New function. Set
1957 flag_reg_prefix_optional if "register-prefix-optional" is passed.
1958 * config/tc-m68k.h (REGISTER_PREFIX): Always define if not already
1959 defined.
1960 (OPTIONAL_REGISTER_PREFIX): Don't define.
1961 (REGISTER_PREFIX_OPTIONAL): If not already defined, define as zero
1962 or one depending on M68KCOFF.
1963
1964 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
1965 * config/tc-m68k.c (DATA, ADDR, SP, FPREG, COPNUM, BAD, BAC):
1966 Define as macros instead of enumerators, since the Apollo compiler
1967 can't handle "enumVal1, enumVal2 = enumVal1" when defining an enum
1968 type.
1969 (make_pcrel_absolute) [NO_PCREL_RELOCS]: New function.
1970 (tc_coff_fix2rtype) [NO_PCREL_RELOCS]: Generate only R_RELBYTE,
1971 R_DIR16, and R_DIR32 relocs.
1972 * config/tc-m68k.h [TE_APOLLO] (COFF_MAGIC, COFF_AOUTHDR_MAGIC):
1973 Use Apollo versions.
1974 [TE_APOLLO] (OBJ_COFF_OMIT_OPTIONAL_HEADER): Undefine. That is,
1975 do include the optional header for Apollo target.
1976 (COFF_MAGIC): Don't define as MC68MAGIC if it's already defined.
1977
1978 * config/tc-m68k.h [TE_DELTA] (LEX_PCT): Define as 1, so that `%'
1979 can be used within a label name.
1980
1981 * config/tc-m68k.h (m68k_init_after_args): Declare.
1982 (tc_init_after_args): Define as m68k_init_after_args.
1983 * config/tc-m68k.c (m68k_init_after_args): New function,
1984 containing one-shot code from md_assemble. Added warning for
1985 combination of 68040 and 68851.
1986 (md_assemble): Startup-time code deleted.
1987
497c179a
ILT
1988Mon Apr 25 16:19:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1989
1990 * doc/Makefile.in (clean, distclean): Remove asconfig.texi.
1991
f38cd6ec
JL
1992Sun Apr 24 00:13:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1993
1994 * config/tc-hppa.c (pa_ip): 13 bit immediate constant (for break
1995 instruction) is unsigned.
1996
92867d8e
ILT
1997Fri Apr 22 17:58:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1998
1999 * config/obj-ecoff.c (ecoff_frob_file): Use bfd_ecoff_set_gp_value
2000 and bfd_ecoff_set_regmasks to set the GP value and the register
2001 masks, rather than using the now obsolete fake .reginfo section.
2002
e860dfd0
KR
2003Fri Apr 22 15:17:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2004
2005 * listing.c (list_symbol_table): Don't print register symbols as
2006 undefined.
2007
988238d3
KR
2008 * config/obj-coff.c (obj_symbol_new_hook): Don't need to strip
2009 underscores, since symbol_new will already have done it.
2010 * config/obj-coffbfd.c (obj_symbol_new_hook): Ditto.
2011
a926dd6a
KR
2012 * as.c (main): If tc_init_after_args is defined, invoke it after
2013 all arguments have been processed.
2014
2015 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
2016 * as.c (perform_an_assembly_pass) [TE_APOLLO]: Create .wtext
2017 section instead of .text. Call create_target_segments.
2018 * read.c (demand_copy_string): No longer static.
2019
6fdc26e6
ILT
2020Thu Apr 21 15:50:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2021
2022 * config/tc-mips.c (append_insn): Permit branches to be switched
2023 with the preceding instruction even if .set nobopt has been seen.
2024 .set nobopt actually controls whether to bring up an instruction
2025 from the branch target, which gas does not currently support.
2026
a6652b1c
KR
2027Wed Apr 20 18:46:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2028
71b4de6f
KR
2029 * config/obj-coff.h, config/obj-coff.c: Deleted all code used only
2030 when BFD_ASSEMBLER is not defined, and all conditionals relating
2031 to such code. No such targets remain.
2032
2033 Fixes for stabs-in-coff:
2034 * config/obj-coff.c: Include subsegs.h.
2035 (coff_frob_section): New function.
2036 (obj_coff_init_stab_section): New function.
2037 * config/obj-coff.h (obj_coff_init_stab_section,
2038 coff_frob_section): Declare.
2039 (obj_frob_section): New macro; uses coff_frob_section.
2040 (INIT_STAB_SECTION): New macro; uses obj_coff_init_stab_section.
2041
a6652b1c
KR
2042 * config/tc-sparc.c (md_section_align): Always round up to
2043 multiple of alignment power specified in bfd target vector.
d924d209
KR
2044
2045 * gasp.c: Include ctype.h.
2046
19990560
KR
2047Mon Apr 18 21:08:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2048
2049 * doc/Makefile.in, doc/as.texinfo: Renamed asdoc-config.texi to
2050 asconfig.texi.
2051
2052 * doc/Makefile.in (install-info-as, install-info-gasp): Get file
2053 names from source directory without pathname.
2054
2055 * config/obj-vms.c (VMS_write_object_file): While looking for
2056 register mask, skip empty fill frags caused by enabling listing
2057 output.
2058
2059 * config/ho-sysv.h: Include string.h.
2060
2061 * doc/internals.texi: New (well, recently added) file. Just added
2062 info on as_warn and friends.
2063
9de7c1fc
JL
2064Mon Apr 18 14:28:22 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2065
2066 * config/tc-hppa.c (pa_parse_space_stmt): Use the built-in
2067 defaults for defined, private, and spnum fields for the
2068 $TEXT$ and $PRIVATE$ spaces. Do not clobber spnum. Do
2069 not reset the segment if just updating a space.
2070 (pa_spaces_begin): Set BFD section flags for all built-in
2071 subspaces.
2072
e904716c
ILT
2073Fri Apr 15 10:51:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2074
37032d95
ILT
2075 * ecoff.c (first_proc_ptr): New static variable.
2076 (add_procedure): Set first_proc_ptr if it hasn't been set.
2077 (ecoff_build_lineno): If the first procedure does not start at
2078 address zero, insert a dummy line to compensate.
2079
e904716c
ILT
2080 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Make gasp.new
2081 as well as as.new.
2082
d6f98c55
KR
2083Thu Apr 14 15:12:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2084
2085 * expr.c (operand): Try to parse "0f" and "0b" sequences as
2086 floating point and binary numbers respectively; if it doesn't
2087 work, treat them as local labels.
2088
c92d9ee9
KR
2089 * Makefile.in: Make $(OBJS) depend on $(ALL_OBJ_DEPS).
2090 * configure.in: Set ALL_OBJ_DEPS in output Makefile.
2091
2092 Based on suggestions from <BAILEY@hmivax.humgen.upenn.edu>
2093 (Charles Bailey):
2094 * vmsconf.sh: In generated file, get ".obj" suffix right, build
2095 source files from other directories into objects in the current
2096 directory, and specify PSECT attributes explicitly to linker.
2097 Also added missing label.
2098 * Makefile.in (stamp-mk.com): Reference new variable
2099 VMS_OTHER_OBJS for list of non-local object files, instead of
2100 listing them here.
2101 (VMS_OTHER_OBJS): New variable, added more libiberty files.
2102 * make-gas.com: Regenerated.
2103
2104 * config/ho-vms.h (unlink): Define as delete.
2105
2106 * config-gas.com: Fix quoting on TARGET_CANONICAL definition.
2107 Delete files before creating them.
2108
1a69212c
ILT
2109Thu Apr 14 13:34:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2110
b3cd8555
ILT
2111 * Makefile.in (de-stage1, de-stage2, de-stage3): Use rm -f.
2112
1a69212c
ILT
2113 * config/tc-mips.h (DIFF_EXPR_OK): Define.
2114 * config/tc-mips.c (macro_build): Permit BFD_RELOC_PCREL_LO16 for
2115 certain cases of 'i', 'j' and 'o'. Change 'u' to take an
2116 argument, the reloc type.
2117 (load_register): Pass reloc type to macro_build for 'u'.
2118 (macro): Likewise. For M_LA_AB permit a difference expression
2119 when generating embedded PIC code between an arbitrary symbol and
2120 a symbol in the .text section.
2121 (mips_force_relocation): Force BFD_RELOC_PCREL_HI16_S and
2122 BFD_RELOC_PCREL_LO16 to be emitted.
2123 (md_apply_fix): Check that most relocs are not PC relative.
2124 Handle BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
2125 (tc_gen_reloc): Change #error to as_fatal. Handle
2126 BFD_RELOC_PCREL_LO16 and BFD_RELOC_PCREL_HI16_S.
2127
cc886e3d
SS
2128Tue Apr 12 18:25:13 1994 Stan Shebs (shebs@andros.cygnus.com)
2129
2130 * subsegs.c (subsegs_begin): Call memset with args in the correct
2131 order.
2132 (subseg_get): Clear newly allocated seginfo, set its pointer slots
2133 to NULL instead of 0.
2134
05210990
JL
2135Mon Apr 11 09:00:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2136
caed9e82
JL
2137 * config/tc-hppa.c (pa_procend): Handle case where label was
2138 defined after the .proc directive.
2139
05210990
JL
2140 * config/tc-hppa.c (pa_procend): Give an error if we encounter a
2141 procend for a procedure without a name.
2142
1c803e52
ILT
2143Thu Apr 7 14:28:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2144
2145 * config/tc-mips.c (macro): Pass NULL for expression argument to
2146 macro_build for nori case.
2147 (SWITCH_TABLE): Define.
2148 (mips_force_relocation): Force a relocation for a switch table
2149 entry.
2150 (md_apply_fix): Write switch table entry value into file.
2151 (tc_gen_reloc): Use BFD_RELOC_GPREL32 for a switch table entry,
2152 and set the addend to the difference between the reloc address and
2153 the subtrahend.
2154
0b503989
JL
2155Thu Apr 7 10:38:18 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2156
2157 * config/tc-hppa.h (elf_tc_symbol): Delete. No longer used.
2158 (elf_tc_make_sections): Likewise.
2159 (hppa_tc_make_sections, hppa_tc_symbol): Delete extern decls.
2160
2161 * config/tc-hppa.c (hppa_tc_make_sections): Delete function.
2162 (hppa_tc_symbol): Likewise.
2163
2164 * config/obj-elf.c (elf_frob_file): Delete elf_tc_symbol and
2165 elf_tc_make_sections stuff. It was there to support PA braindamage
2166 which has been fixed, and in the case of elf_tc_make_sections is
2167 redundant with elf_tc_final_processing.
2168
f39a73b1
JL
2169Wed Apr 6 20:48:30 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2170
2171 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
2172 manufacturer.
2173
f3645945
ILT
2174Tue Apr 5 15:48:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2175
2176 * config/tc-mips.c (mips_ip): For case 'o', when generating
2177 embedded PIC code, accept the difference between two local symbols
2178 as being constant.
2179 (mips_force_relocation): Only force a reloc to be generated for a
2180 PC relative fixup.
2181 (md_apply_fix): For BFD_RELOC_32 and BFD_RELOC_LO16, put the fixup
2182 value into the file if the fixup will not generate a reloc.
2183
03fcf1f8
KR
2184Tue Apr 5 11:14:14 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
2185
2186 * config/tc-sparc.c (s_reserve): If section passed isn't bss,
2187 don't spew remainder of input file in error message.
2188 (tc_gen_reloc): If bfd_reloc_type_lookup returns null, print error
2189 message with reloc type and try to process remainder of file.
2190
2191 * doc/Makefile.in (install-info-as, install-info-gasp): New
2192 targets, now explicitly checking $(srcdir) for info files.
2193 (install-info): Depend on both of them; do nothing more.
2194
79381848
JL
2195Mon Apr 4 17:06:04 1994 Jeffrey A. Law (law@cygnus.com)
2196
2197 * config/tc-hppa.c (tc_gen_reloc): Fix thinko in ELF version.
2198
1e147242
ILT
2199Mon Apr 4 12:39:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2200
1937a665
ILT
2201 * config/tc-ppc.c (ppc_insert_operand): Check PPC_OPERAND_SIGNED
2202 flag rather than signedp field. Only permit extended range if
2203 PPC_OPERAND_SIGNOPT flag is set and assembling in 32 bit mode.
2204 Based on patch from David Edelsohn (edelsohn@npac.syr.edu).
2205
1e147242
ILT
2206 * config/tc-ppc.c (ppc_size): New static variable.
2207 (ppc_arch): Check for PPC_OPCODE_PPC before PPC_OPCODE_POWER.
2208 (md_begin): If an instruction has a size specific flag set, only
2209 add it if we are assembling that size.
2210
7ab2e983
ILT
2211Thu Mar 31 16:51:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2212
2213 * config/tc-sparc.c (tc_gen_reloc): Add a gruesome hack to get
2214 cross section PC relative relocs right for COFF and ELF.
2215
75d20ac8
KR
2216Mon Mar 28 14:38:23 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2217
2218 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Always define.
2219 (OBJ_PROCESS_STAB): Don't define.
2220
57afabd0
ILT
2221Mon Mar 28 12:40:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2222
2223 * config/obj-aout.c (obj_aout_frob_symbols): Don't let BFD clobber
2224 the type of symbol set symbols which happen to be in the absolute
2225 or undefined section.
2226
882bdc69
ILT
2227Mon Mar 28 12:35:00 1994 David Edelsohn (edelsohn@npac.syr.edu)
2228
2229 * config/tc-ppc.c (md_parse_option): Add -mpwrx (POWER/2 aka
2230 RIOS2), -mpwr (POWER aka RIOS1), -mppc (PowerPC aka MPC603/604),
2231 and -many (all architectures).
2232
de3ffc7a
JL
2233Sun Mar 27 14:04:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2234
2235 * config/tc-hppa.c (tc_gen_reloc): Set addend for relocation
2236 involving a function symbol which is not a plabel to zero.
2237 (md_apply_fix): Never pass a function symbol to field_adjust.
2238
5b63f465
ILT
2239Fri Mar 25 17:35:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2240
645f842c
ILT
2241 * config/obj-aout.c (obj_aout_frob_symbol): If N_EXT is set for an
2242 N_INDR symbol, set BSF_EXPORT and clear BSF_LOCAL.
2243
5b63f465
ILT
2244 * config/tc-mips.c (append_insn): If EMBEDDED_PIC, don't swap a
2245 branch with an instruction that uses $at, in case the branch is
2246 later expanded.
2247 (macro): If EMBEDDED_PIC, case M_JAL_A may use $at.
2248 (md_pcrel_from): If not OBJ_AOUT, return 4 for an undefined symbol
2249 to make it pcrel_offset.
2250 (tc_gen_reloc): If not OBJ_AOUT, set the reloc addend to
2251 reloc->address; another gruesome hack to get gas reloc handling to
2252 do the right thing.
2253
11d7c064
KR
2254Thu Mar 24 21:29:29 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2255
2256 * config/tc-alpha.c (alpha_ip): Only set GP prolog size if using
2257 PV register.
2258 (T12): New macro.
2259 (emit_insn): New function.
2260 (md_assemble): Call it.
2261 (alpha_force_relocation): Handle BFD_RELOC_26, for call_pal
2262 instructions.
2263 (lituse_pending): New variable. Set by anything that generates a
2264 LITERAL reloc, cleared by anything that generates a LITUSE reloc,
2265 tested by code that might want to emit a LITUSE reloc.
2266 (emit_unaligned_io): New function. Currently calls md_assemble,
2267 but it should eventually be converted to generate the insn itself
2268 and call emit_insn directly.
2269 (emit_load_unal, emit_store_unal, emit_byte_manip_r,
2270 emit_extract_r, emit_insert_r, emit_mask_r, emit_sign_extend,
2271 emit_bis_r): Likewise.
2272 (alpha_ip, case 'I'): Handle with BFD_RELOC_23.
2273 (alpha_ip, label get_macro): Don't emit the final instruction if
2274 the opcode is zero.
2275 (alpha_ip, case 'B', subcase 'd'): New case, for subword and
2276 unaligned memory access macros.
2277 (md_apply_fix): Handle BFD_RELOC_26. Generate an error message if
2278 the value can't be resolved.
2279
2280Wed Mar 23 16:06:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2281
2282 * config/tc-mips.c (md_parse_option): For -membedded-pic, force
2283 the -G value to 0x7fffffff. For SVR4 PIC options, don't call
2284 bfd_set_gp_size here, it's done in md_begin. Don't permit -G with
2285 -membedded-pic.
2286 (mips_force_relocation): New function.
2287 (md_apply_fix): Set fixP->fx_done appropriately.
2288 (s_change_sec): For EMBEDDED_PIC, change .data and .rdata to
2289 .sdata.
2290 * config/tc-mips.h (TC_FORCE_RELOCATION): Define.
2291 (mips_force_relocation): Declare.
2292 (TC_HANDLE_FX_DONE): Define.
2293
e1b5066f
ILT
2294Tue Mar 22 13:58:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2295
d9aba805
ILT
2296 * config/tc-mips.c (enum mips_pic_level): New enum.
2297 (mips_pic): Change from int to enum mips_pic_level. Change all
2298 uses (0 becomes NO_PIC, 2 becomes SVR4_PIC).
2299 (load_address): Handle EMBEDDED_PIC.
2300 (macro): Handle EMBEDDED_PIC in all PIC cases.
2301 (md_parse_option): Accept -membedded-pic to use EMBEDDED_PIC. If
2302 OBJ_ELF, accept -KPIC and -call_shared to use SVR4_PIC and accept
2303 -non_shared to use NO_PIC (this is how the Irix 5 assembler
2304 works). Do not permit -G with SVR4_PIC.
2305 (s_abicalls): Warn if -G was used, and force -G 0.
2306 (tc_gen_reloc): Set reloc->addend to 0 for a PC relative reloc for
2307 anything but a.out, not just for ELF. For ECOFF, don't generate a
2308 BFD_RELOC_16_PCREL_S2 reloc unless using EMBEDDED_PIC.
2309
e1b5066f
ILT
2310 * config/obj-ecoff.h (obj_sec_sym_ok_for_reloc): Define to be 1.
2311
2312Sun Mar 20 16:31:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2313
2314 * config/tc-hppa.c (create_new_space): Use ints, not chars as
2315 parameters to avoid losing when compiling with HP CC.
2316 (create_new_subspace, update_subspace, fix_new_hppa): Likewise.
2317
1871f91a
KR
2318Sun Mar 20 14:43:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2319
c37f6138
KR
2320 * Makefile.in (config-stamp): If `defs' is defined, emit a
2321 preprocessor directive to create a macro named by this value into
2322 config.new; don't explicitly go for BFD_ASSEMBLER.
2323 * configure.in: Define `defs', not `BFDDEF'. Set it to
2324 MANY_SEGMENTS for any obj-coffbfd target.
2325 * config/obj-coffbfd.h (BFD_HEADERS, BFD): Define.
2326 * config/i386coff.mt (TDEFINES): Don't define BFD, MANY_SEGMENTS,
2327 or BFD_HEADERS.
2328 (LOCAL_LOADLIBES): Deleted.
2329 * config/m68kcoff.mt (TDEFINES): Don't define those macros.
2330 * config/m88kcoff.mt (TDEFINES): Ditto.
2331 * config/ebmon29k.mt: Deleted.
2332 * config/h8300hds.mt: Deleted.
2333 * config/ic960coff.mt: Deleted.
2334 * config/sparc.mt: Deleted.
2335 * config/h8300.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
2336 * config/h8500.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
2337 * config/sh.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
2338 * config/z8k.mt (LOCAL_LOADLIBES): Deleted.
2339 (TDEFINES): Don't define the coffbfd macros.
2340
2341 * Makefile.in: Insert makefile fragments before OBJS definition.
2342 (OBJS): Add $(TE_OBJS).
2343
3680de74
KR
2344 * config/obj-coff.c (obj_pseudo_table): Supply "section"
2345 unconditionally.
2346
1871f91a
KR
2347 * write.c (set_symtab): Define only if BFD_ASSEMBLER.
2348
c20c7506
JL
2349Sun Mar 20 12:06:05 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2350
2351 * Makefile.in (STAGESTUFF): Add gasp.new.
2352
634233a3
KR
2353Fri Mar 18 20:09:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2354
1cf7548e
KR
2355 * write.c (symbol_table_frozen): New variable, to be set after
2356 bfd_set_symtab is called.
2357 (dump_section_relocs): Note whether a symbol is a section symbol
2358 or not.
2359 (adjust_reloc_syms): For now, always supply an absolute symbol for
2360 fixups without symbols but not yet `done'. Use section_symbol to
2361 get the symbol, instead of going directly for abs_symbol.
2362 (write_relocs) [DEBUG4]: Abort if any symbol referred to by a
2363 reloc is not a section symbol and is not in the symbol table.
2364 (set_symtab): New function, broken out from write_object_file.
2365 Counts symbol table instead of relying on an earlier count.
2366 (write_object_file): Call set_symtab, but do it after potentially
2367 invoking the *_frob_file macros. Don't bother counting symbols.
2368 Call symbol_remove, instead of expanding it in place. Moved the
2369 conditionalized `object_file_size' declaration down to
2370 conditionalized block where it's used. When using the absolute
2371 symbol for a fixup without a symbol, set sy_used_in_reloc.
2372 (write_object_file) [BFD_ASSEMBLER]: Call section_symbol to get
2373 the correct symbol for the absolute section.
2374
ec3c65e1
KR
2375 * subsegs.c (section_symbol): Use symbol_new instead of
2376 symbol_make, since we may want it to go into the symbol table.
2377 Make the new symbol have internal linkage. If
2378 obj_sec_sym_ok_for_reloc says it's okay, use the BFD section
2379 symbol with the newly created GAS symbol.
2380 (obj_sec_sym_ok_for_reloc): Default to always returning 0.
2381 * config/obj-aout.h (obj_sec_sym_ok_for_reloc) [BFD_ASSEMBLER]:
2382 New macro.
2383 * config/obj-elf.h (obj_sec_sym_ok_for_reloc): New macro.
2384
2385 * config/tc-sparc.c: Include subsegs.h.
2386 (in_signed_range): New function.
2387 (sparc_ip): Use it.
2388 (sparc_ip, case 'i'): Use BFD_RELOC_SPARC13, not _BASE13.
2389 (sparc_ip, label "immediate"): Reject constants for pcrel
2390 instructions only if the relocation type indicates a "call"
2391 instruction and the offset is within range of a "jmpl %g0". If
2392 it's not in range, use the absolute section symbol plus an offset.
2393 (md_apply_fix): Use in_signed_range. Combined _SPARC13 and
2394 _BASE13 cases.
2395 (tc_gen_reloc): Permit BFD_RELOC_SPARC13.
2396
1be3cf74
KR
2397 * config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
2398 MANY_SEGMENTS).
2399
634233a3
KR
2400 * configure.in: Eliminated all targets using obj-coff but not
2401 defining BFD_ASSEMBLER; I think all such targets that are
2402 supported will be matched by real CPU-OS combinations earlier in
2403 the case statement.
2404 (targets *-*-coff*, *-sysv*, *-*-sco*, *-*-sysv32): Deleted. Made
2405 some comments about the dpx2 configuration, but left it disabled,
2406 since it couldn't be reached before.
2407 (target a29k-amd-ebmonold): Deleted.
2408
49ccc555
JL
2409Thu Mar 17 13:36:09 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2410
2411 * config/tc-hppa.c (pa_import): Correctly handle importing of an
2412 already defined symbol.
2413
23dc1ae3
ILT
2414Wed Mar 16 17:11:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2415
614a3211
ILT
2416 * config/tc-mips.c (mips_ip): Only accept overly large values for
2417 the 'j' operand if there are no further alternatives for this
2418 instruction.
2419
d6e6bc1c
ILT
2420 * config/obj-coffbfd.c (adjust_stab_section): Initialize
2421 stabstrseg to SEG_UNKNOWN, not -1. After loop, check whether it
2422 is not SEG_UNKNOWN rather than checking whether it is >= 0.
2423
23dc1ae3
ILT
2424 * config/tc-mips.c (mips_align): Take new argument, label, and use
2425 it instead of global insn_label.
2426 (s_align, s_cons, s_float_cons, s_gpword): Save insn_label before
2427 call to mips_emit_delay and pass it to mips_align.
2428
2429Wed Mar 16 11:54:12 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2430
c38c91da
JL
2431 * config/tc-hppa.c (pa_equ): Handle both .reg and .equ correctly.
2432
f2ada910
JL
2433 * config/tc-hppa.c (pa_callinfo): Accept "millicode" as an
2434 argument to a .callinfo directive. Don't loop forever on errors.
2435
c38c91da 2436 * config/tc-hppa.c (pa_equ): Use pa_parse_number so that we can
23dc1ae3
ILT
2437 use pre-defined registers as arguments.
2438
954979ca
KR
2439Mon Mar 14 14:29:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2440
dbc529c4
KR
2441 * write.c (write_object_file): Check both S_IS_LOCAL and
2442 S_IS_EXTERNAL when deciding whether to discard a symbol.
2443
2444 * config-gas.com: Scan Makefile.in, not version.c, for current
2445 version number. Delete all versions of temp files when finished
2446 with them. Create config.h.
2447
2448 * config/obj-vms.c (VMS_Initialized_Data_Size): Cache symbol
2449 values to reduce number of lookups with S_GET_VALUE. Skip debug
2450 symbols to avoid "a really nasty bug". (From Holger Teutsch,
2451 holger@botbso.rhein-main.de.)
2452 (VMS_write_object_file): For "__vt.*" symbols, set S_GET_OTHER
2453 field. (Also from Holger Teutsch.) Watch for a would-be register
2454 mask that spans frags.
2455
2456 * config/obj-coffbfd.c (obj_coff_line): Set symbol lnno field with
2457 this_base, not line_base. (Patch from Andreas Arens,
2458 ari@obelix.av.rwth-aachen.de.)
2459
2460 * config/obj-aout.c (obj_crawl_symbol_chain): Retain symbols that
2461 look local if they're exported or undefined. Used to be done for
2462 i960 only.
2463
2464 * read.c (s_lcomm, s_comm): Print symbol name being redefined.
2465 Get it from the looked-up symbol, instead of using the string from
2466 the input stream, which is no longer null-terminated.
2467 (LEX_PCT): New macro, defaults to 0.
2468 (lex_type): Use it for `%'.
2469
2470 * config/tc-vax.c (md_parse_option): Handle `-h#' option for VMS.
2471 (vip_op): Now static, and returns void. Callers changed. Added
2472 forward decl.
2473 (vip): Ditto. Call as_fatal directly if a program bug is
2474 detected.
2475 (op_hash): Let default initialization suffice.
2476
954979ca
KR
2477 * Makefile.in (literal.o): Provide dependencies.
2478
2479 * configure.in: Set new makefile variable OPCODES_LIB.
2480 * Makefile.in (LIBS): Use it.
2481
2482 * Makefile.in (make-gas.com, stamp-mk.com): New targets.
2483 * vmsconf.sh: New file.
2484 * make-gas.com: Regenerated from new script.
2485
2486 * configure.in (sparc*-*-lynxos*): Handle any version number
2487 suffix after "lynxos". Set emulation to lynx.
2488
2489Mon Mar 14 11:30:49 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2490
2491 * config/obj-coff.c (obj_coff_section): Delete declaration.
2492
62ea7974
ILT
2493Fri Mar 11 22:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2494
2495 * config/tc-ppc.c (md_pcrel_from): Return 0 for undefined ELF
2496 symbols.
2497 (ppc_is_toc_sym): Change .toc to .got.
2498 (md_apply_fix): Change handling of ELF relocs.
2499 (tc_gen_reloc): Likewise.
2500
63ca2e81
KR
2501Fri Mar 11 17:42:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2502
2503 * config/obj-vms.c (Close_VMS_Object_File): Add comment pointing
2504 out some code that doesn't belong in this file.
2505
2506 * config/obj-vms.h: Include aout/stab_gnu.h.
2507 (N_GSYM, ..., N_LENG): Deleted.
2508 (NO_RELOC): Undefine before defining as part of enum reloc_type.
2509
2510 * config/tc-alpha.c: Add comment questioning need for all the
2511 characters in FLT_CHARS.
2512
2513 * as.c (main) [OBJ_VMS]: Don't call output_file_close.
2514
2515 * config/obj-ecoff.c (ecoff_frob_file): Set strict order for
2516 sections with recognized names, before computing VMA values.
2517
be22008b
ILT
2518Fri Mar 11 17:56:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2519
2520 * config/tc-mips.c (mips_ip): Accept numbers between 0x8000 and
2521 0xffff for 'j' to be compatible with MIPS assembler. These
2522 numbers are actually treated as negative.
2523
2c6db5a1
DE
2524Thu Mar 10 13:36:29 1994 Doug Evans (dje@canuck.cygnus.com)
2525
2526 * config/tc-sparc.h (LOCAL_LABEL): Local labels are .Lfoo.
2527
9e12fbbc
KR
2528Tue Mar 8 21:17:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2529
2530 * config/obj-coff.c: Minor formatting/stylistic changes, plus:
2531 (obj_coff_section): Declare.
2532 (obj_pseudo_table): Make it available only if MANY_SECTIONS.
2533 (obj_symbol_to_chars) [CROSS_COMPILE]: Some attemps to make this
2534 work. It still doesn't. It now fails to compile, instead of
2535 silently compiling to do nothing.
2536 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define only if
2537 MANY_SECTIONS.
2538 (OBJ_PROCESS_STAB) [! MANY_SECTIONS]: New macro, just emits
2539 warning.
2540
2541 Handle Alpha load-immediate-FP pseudo-instructions:
2542 * config/alpha-opcode.h (ldif, ldig, ldis, ldit): New patterns.
2543 * config/tc-alpha.c (lit8_sec, lit4_sec, lit8_sym, lit4_sym): New
2544 variables.
2545 (create_literal_section): New function.
2546 (create_lita_section): Now a macro.
2547 (get_lit8_offset, get_lit4_offset): New functions.
2548 (maybe_set_gp): New function.
2549 (select_gp_value): Call it.
2550 (load_expression): Preserve addend if symbol is a section symbol.
2551 (alpha_ip): Handle new operand type `F' for floating-point
2552 constants; store them in .lit{4,8} sections.
2553 (alpha_ip, case 'G'): Emit LITUSE relocations for symbol exprs.
2554
2555 * config/tc-i386.c (smallest_imm_type): Never return Imm1.
2556
2bac8c54
SC
2557Tue Mar 8 14:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2558
2559 * config/obj-coffbfd.c (w_strings): Only copy strings out if
2560 their symbols are going to be written.
2561
d16938f5
ILT
2562Tue Mar 8 11:49:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2563
2564 * messages.c (as_perror): Declare arguments const.
2565 * as.h (as_perror): Change declaration.
2566
8ea7f4e8
ILT
2567Mon Mar 7 16:08:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2568
2569 * config/tc-mips.c (load_address): When calling frag_grow, allow
2570 for the (up to) two nops which may be inserted by append_insn if
2571 mips_optimize is 0.
2572 (macro): Likewise.
2573
fa47b47e
DE
2574Thu Mar 3 11:37:55 1994 Doug Evans (dje@canuck.cygnus.com)
2575
2576 * config/atof-ieee.c (make_invalid_floating_point_number):
2577 Add cast to avoid warning from gcc.
2578
34b16850
JL
2579Wed Mar 2 10:31:01 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2580
fb338f1d
JL
2581 * config/tc-hppa.c: Add a few casts to make HP C compiler happy.
2582
2583 * config/obj-som.c (obj_som_version, obj_som_copyright): Be
2584 prepared
2585 to handle an error from bfd_som_attach_aux_hdr.
2586
34b16850
JL
2587 * config/tc-hppa.h: Wrap ELF specific decls inside an ifdef.
2588
994fde6d
KR
2589Mon Feb 28 15:03:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2590
2591 * config/tc-alpha.c (md_atof): Omit warning about FP values.
2592 (line_comment_chars): Add ! to list.
2593 (md_apply_fix): Do process 32- and 64-bit relocations.
2594
2595 * config/obj-coffbfd.c (obj_coff_lcomm): Put "#if 0" around the
2596 unused parts (most of the function).
2597 (obj_coff_init_stab_section): Cast alloca result.
2598
2599 * configure.in (i960-*-coff, i960-*-vxworks5.*): Use coffbfd, and
2600 gas_target ic960coff.
2601 * config/ic960coff.mt: New file.
2602 * config/obj-coffbfd.h [TC_I960]: Include coff/i960.h.
2603 (TARGET_FORMAT) [TC_I960]: Use coff-Intel-little.
2604 * config/te-ic960.h (CROSS_COMPILE): Don't undef this. We'll
2605 always build little-endian object files.
2606 * config/tc-i960.c (md_reloc_size): Don't define at all if BFD or
2607 BFD_ASSEMBLER is defined.
2608 (mem_fmt): Since COFF doesn't handle callx relocations yet, treat
2609 them like normal 32-bit relocations.
2610 (md_apply_fix): For callx relocations, store zero.
2611 (tc_bout_fix_to_chars): Store symbol index for all callx
2612 relocations, regardless of link-relax setting.
2613 (tc_coff_fix2rtype, tc_coff_sizemachdep): New functions.
2614 (i960_handle_align) [! OBJ_BOUT]: If link-relax option is
2615 selected, print an error message and clear it.
2616 * config/tc-i960.h (BFD_ARCH, COFF_FLAGS, COFF_MAGIC,
2617 TC_COUNT_RELOC, TC_COFF_FIX2RTYPE, TC_COFF_SIZEMACHDEP,
2618 tc_fix_adjustable): New macros.
2619 (tc_coff_fix2rtype, tc_coff_sizemachdep): Declare.
2620
e03095c9
JL
2621Fri Feb 25 20:56:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2622
2623 * config/tc-hppa.c (hppa_tc_symbol): Call PA ELF BFD version.
2624 (hppa_tc_make_sections): Likewise.
2625 (pa_build_symextn_section): Delete unused function.
2626 (hppa_tc_make_symextn_section): Likewise.
2627 (pa_export): Delete call to pa_build_symextn_section.
2628
2629 * config/tc-hppa.h (hppa_tc_symbol): Add extern decl.
2630 (elf_hppa_final_processing): Delete extern decl.
2631 (hppa_tc_symbol): Delete extern decl.
2632
3919ffeb
ILT
2633Fri Feb 25 13:15:31 1994 Ian Lance Taylor (ian@cygnus.com)
2634
2635 * config/obj-coffbfd.c (fill_section): Correct test for whether to
2636 fill a section (from Minh Tran-Le <TRANLE@intellicorp.com>).
2637
f95de5d9
KR
2638Thu Feb 24 11:30:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2639
3919ffeb
ILT
2640 * configure.in: Don't require version number for i386-*-mach.
2641
f95de5d9
KR
2642 * read.c (potable): Added ".this_GCC_requires_the_GNU_assembler",
2643 which is ignored by gas, but will cause other assemblers to choke.
2644 Intended for use by gcc ports that require gas instead of native
2645 assemblers.
2646
cb6af928
JL
2647Thu Feb 24 07:10:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2648
2649 * config/ho-hppaosf.h: Fix braino in test for ANSI-C.
2650
08c5812c
JL
2651Wed Feb 23 16:51:43 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2652
2653 * write.c (write_contents): Give the user a reasonable error
2654 message rather than "assertion failed" if bfd_set_section_contents
2655 fails.
2656
c9c45af1
KR
2657Tue Feb 22 10:07:32 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
2658
2659 * config/ho-mach3.h: New file.
2660
9eb5f4b8
ILT
2661Mon Feb 21 11:41:18 1994 Ian Lance Taylor (ian@cygnus.com)
2662
2e5fdb1d
ILT
2663 * ecoff.c (ecoff_build_debug): Don't set hdr->magic here. It is
2664 now set in bfd/ecofflink.c:ecoff_write_symhdr.
2665
9d90491e
ILT
2666 * config/obj-coffbfd.c (write_object_file): use bfd_get_error (),
2667 not bfd_error.
2668 * config/obj-elf.c (elf_frob_file): Likewise.
2669
2670 * read.c (s_lcomm): Use an alignment power of 3 for 8 byte .lcomm
2671 variables.
2672
c8d02404
ILT
2673 * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
2674
9eb5f4b8
ILT
2675 * read.c (read_a_source_file): Use correct arguments to memcpy
2676 (broken 19 Jul 1993). From kjd@pescadero.stanford.edu (Kenneth
2677 Duda).
2678
4d88d6dc
ILT
2679Sun Feb 20 18:01:54 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
2680
2681 * config/obj-coff.h (obj_coff_section): Declare.
2682 * config/obj-coff.c (obj_pseudo_table): For "section", use
2683 obj_coff_section.
2684 (obj_coff_section): Rewrite.
2685
741f4d66
KR
2686Fri Feb 18 14:16:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2687
9e0cbfbb
KR
2688 * configure.in (i386-*-mach3*): New target; uses BFD.
2689 * config/te-mach.h: New file.
2690 * config/obj-aout.c (obj_aout_frob_file): New function.
2691 * config/obj-aout.h (obj_aout_frob_file): Declare it.
2692 (frob_file): New macro.
2693 * config/tc-i386.c (md_apply_fix_1) [TE_Mach]: Don't adjust
2694 pcrel32 relocations.
2695 * config/tc-i386.h (TARGET_FORMAT) [TE_Mach]: Use a.out-mach3.
2696
741f4d66
KR
2697 * write.c (write_object_file): Removed register declarations.
2698
5e65fbc8
ILT
2699Thu Feb 17 16:25:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2700
254f8450 2701 Some support for PowerPC ELF.
5e65fbc8
ILT
2702 * configure.in: If cpu is powerpc*, use ppc.
2703 (ppc-*-sysv4*): Use object format elf.
2704 * config/tc-ppc.h: Only declare a number of things if OBJ_COFF is
2705 defined.
2706 (TARGET_ARCH): Make it call ppc_arch.
2707 (ppc_arch): Declare.
2708 (TARGET_FORMAT): Set based on OBJ_COFF or OBJ_ELF.
2709 (NO_STRING_ESCAPES): Define.
2710 (LOCAL_LABEL, FAKE_LABEL_NAME): Define for OBJ_ELF.
2711 * config/tc-ppc.c: Only define a number of functions of OBJ_COFF
2712 is defined.
2713 (md_pseudo_table): Most pseudo-ops are OBJ_COFF specific. Added
2714 OBJ_COFF specific "bi" and "ei".
2715 (md_parse_option): Fix handling of -u. Make -m601 set
2716 PPC_OPCODE_601. If OBJ_ELF, accept -V and -Q.
2717 (ppc_set_cpu): New function.
2718 (ppc_arch): New function.
2719 (md_begin): Call ppc_set_cpu.
2720 (ppc_insert_operand): For a signed operand accept an unsigned
2721 value, for IBM compatibility.
2722 (ppc_byte): Don't call stringer for strings; instead, treat two
2723 double quotes as a single double quote.
2724 (ppc_comm): Set sy_tc.output for a .lcomm symbol.
2725 (ppc_biei): New function.
2726 (ppc_tc): If not OBJ_COFF, ignore first argument.
2727 (ppc_fix_adjustable): Call as_bad_where, not as_bad.
2728 (ppc_is_toc_sym): New function.
2729 (md_apply_fix): Use ppc_is_toc_sym. Handle BFD_RELOC_16 and
2730 BFD_RELOC_8.
2731
f61b81b7
DM
2732Thu Feb 17 09:29:37 1994 David J. Mackenzie (djm@thepub.cygnus.com)
2733
2734 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_get_error and
2735 bfd_set_error and new error names.
2736
c25be7f4
KR
2737Tue Feb 15 20:23:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2738
2739 * configure.in: Support i960-vxworks versions > 5.0 as coff.
2740 Default is still bout if no version is specified.
2741
04bde70d
KR
2742 * atof-generic.c (atof_generic): Use switch and strcasecmp instead
2743 of large number of compares when looking for inf/nan values.
2744
b1237b9d
ILT
2745Fri Feb 11 13:13:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2746
2747 * config/tc-mips.c (macro): Do unaligned loads and stores
2748 correctly when big endian, and give errors on overflow rather than
2749 generating incorrect code.
2750
605e1d90
ILT
2751Thu Feb 10 11:24:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2752
2753 * as.c: Include libiberty.h.
2754
2755 * read.c (do_align): Don't define label just_record_alignment
2756 unless it might be used.
2757
2758 * as.c (main): If md_parse_long_option is defined, call it with a
2759 long option.
2760 * config/tc-mips.h (md_parse_long_option): Define.
2761 * config/tc-mips.c (mips_trap): New static variable.
2762 (md_begin): Report an error if mips_trap is set at ISA level 1.
2763 (macro): If mips_trap, use trap instructions instead of break
2764 instructions for overflow and divide by zero detection.
2765 (mips_parse_long_option): New function. Support --trap,
2766 --no-break, --break and --no-trap.
2767 * doc/as.texinfo: Document new options.
2768
2769 * read.c (potable): Add "zero".
2770 * config/tc-i386.c (md_pseudo_table): Remove "zero".
2771 * config/tc-m88k.c (md_pseudo_table): Likewise.
2772
6440d65c
KR
2773Thu Feb 10 01:24:27 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2774
2775 * config/tc-sparc.c (sparc_ip): Reject integer values for
2776 pc-relative operand fields. This forces "call 0" to become "jmpl
2777 %g0,%o7" with no relocations needed.
2778
ddb393cf
ILT
2779Wed Feb 9 13:08:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2780
d87c080e
ILT
2781 * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
2782 * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
2783
ddb393cf
ILT
2784 * app.c (do_scrub_next_char): If NO_STRING_ESCAPES is defined,
2785 don't treat backslash specially inside strings.
2786 * read.c (next_char_of_string): Likewise.
2787
66c774bb
SS
2788Wed Feb 9 09:42:45 1994 Stan Shebs (shebs@andros.cygnus.com)
2789
2790 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use memset
2791 instead of memcpy to zero the initial stab symbol, duh.
2792 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
2793 * config/obj-som.c (obj_som_init_stab_section): Ditto.
2794
356315fe
ILT
2795Tue Feb 8 17:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2796
2797 * write.c (fixup_segment): Use as_bad_where, not as_bad.
2798
2799 * subsegs.c (subseg_set_rest): Call memset with the arguments in
2800 the right order. Explicitly clear fix_root and fix_tail fields.
2801
df44a852
KR
2802Tue Feb 8 16:00:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2803
cfaf70e3
KR
2804 * config/obj-coff.c (coff_frob_symbol): For abs_symbol, set *punt
2805 and do nothing else.
2806
2807 * symbols.c (symbol_begin): Initialize value of abs_symbol
2808 properly.
2809
2810 * write.c (adjust_reloc_syms): Use abs_symbol instead of calling
2811 section_symbol.
2812
cafb569b
KR
2813 * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
2814 complaint from "gcc -Wall".
2815
7496639a
KR
2816 * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
2817
8a74b870
KR
2818 * config/tc-alpha.c (GP_ADJUSTMENT): Move definition to start of
2819 file.
2820 (tc_gen_reloc): Remove uninitialized variable `code', and code
2821 that tried to use it (incorrectly). For LITERAL reloc, set addend
2822 to negative of GP value.
2823 (load_symbol_address): Don't adjust return value by GP_ADJUSTMENT.
2824
df44a852
KR
2825 * write.c (write_relocs): Print some sensible error message if
2826 bfd_perform_relocation returns bfd_reloc_overflow.
2827
2828Mon Feb 7 15:49:24 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2829
2830 * configure.in (hppa*-*elf*): New configuration for PA ELF.
2831 (hppa*-*-osf*): Default object format is SOM.
2832
c3591adb
KR
2833Mon Feb 7 16:07:35 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2834
2d33b3aa
KR
2835 * config/tc-alpha.c (md_atof): Warn that floating-point values
2836 might not assemble properly.
2837
c3591adb
KR
2838 * configure.in (target alpha-*-osf*): Don't set "dev=yes" any
2839 more.
2840
2841 * config/tc-alpha.c (load_expression): Parenthesize operations in
2842 range checking, to avoid precedence questions.
fc6b54fd 2843
c3591adb
KR
2844 * config/tc-alpha.c (addr32): New static variable.
2845 (md_parse_option): Set it for "-32addr".
2846 (load_symbol_address): If addr32 is set, use ldl instead of ldq.
2847
2848 * atof-generic.c (atof_generic): Calculate maximum_useful_digits
2849 and more_than_enough_bits_for_digits in integer arithmetic, to
2850 eliminate the only sources of dependence on floating point
2851 support, which doesn't work yet on the Alpha.
2852
2853Mon Feb 7 03:56:05 1994 Ken Raeburn (raeburn@cambridge.cygnus.com)
fc6b54fd
KR
2854
2855 * ecoff.c (ecoff_build_debug) [TC_ALPHA]: Specify version stamp as
2856 0x30b for Alpha for now, until ".verstamp" is handled.
2857
2858 * literal.c (add_to_literal_pool): Use seginfo->frchainP, which
2859 actually refers to the literal pool section, rather than
2860 frchain_now, which refers to whatever section the assembler was
2861 in.
2862
2863 * write.c (fixup_segment): Only do range checking if size of fixup
2864 is smaller than word size. Otherwise, we always wind up with
2865 zeros.
2866
5facbfd4
KR
2867 * config/tc-alpha.c (md_section_align): Change second argument and
2868 return type to valueT, to agree with tc.h.
2869 (alpha_do_align): Local static array nop_pattern is now unsigned
2870 char, to avoid overflow warnings.
2871 * config/tc-alpha.h (md_section_align): Delete declaration.
2872
2873 * config/obj-ecoff.c (ecoff_frob_file): Ensure that ecoff_data for
2874 output bfd is non-null before indirecting through it.
2875
2876 * config/tc-alpha.c (alpha_frob_ecoff_data): Renamed from
2877 alpha_frob_file.
2878 * config/tc-alpha.h (tc_frob_file): Macro deleted.
2879 * config/obj-ecoff.c (ecoff_frob_file) [TC_ALPHA]: Call
2880 alpha_frob_ecoff_data, then fill in optional-header info with gp
2881 value and register masks.
2882
dc536cc0
JL
2883Sun Feb 6 16:13:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2884
f8693e71
JL
2885 * configure.in (hiux): Fixes from m-kasahr@sramhc.sra.co.JP.
2886
dc536cc0
JL
2887 * config/obj-som.c (obj_som_init_stab_section): Same change
2888 as coffbfd and elf below. Zero the initial stab symbol after
2889 allocating it.
2890
41b5ef0f
SS
2891Sat Feb 5 12:30:32 1994 Stan Shebs (shebs@andros.cygnus.com)
2892
2893 * config/obj-coffbfd.c (obj_coff_init_stab_section): Zero the
2894 initial stab symbol after allocating it.
2895 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
2896
fa4beb7e
JL
2897Sat Feb 5 11:53:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2898
2899 * config/tc-hppa.c (pa_ip): addb[tf] should only accept
2900 non-negated condition completers. Add support for addb pseudo-op
2901 which accepts both negated and non-negated completers.
2902
1c11ab0e
ILT
2903Sat Feb 5 00:15:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2904
2905 * configure.in (rs6000*): Use cpu_type ppc.
2906 (ppc-*-aix*): New target; use coff and force bfd_gas.
2907 * config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
2908 (RS/6000) support. At the moment, only XCOFF is supported.
2909
2910 * config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
2911 (S_SET_DATA_TYPE): Likewise.
2912 (coff_last_function): Renamed from local static last_functionP in
2913 coff_frob_symbol and made externally visible.
2914 (coff_frob_symbol): New local static set_end; use it to try to
2915 avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
2916 * config/obj-coff.h (S_SET_DATA_TYPE): Declare.
2917 (SA_SET_SYM_ENDNDX): Declare.
2918 (coff_last_function): Declare.
2919
2920 * expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
2921 equivalent to `.' to mean the current location.
2922
2923 * read.c (LEX_BR): If not defined, define as 0.
2924 (lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
2925
2926 * symbols.c (symbol_new): If tc_canonicalize_symbol_name is
2927 defined, call it with preserved_copy_of_name. If
2928 tc_symbol_new_hook is defined, call it on the new symbol.
2929 (symbol_find_base): If tc_canonicalize_symbol_name is defined,
2930 call it on a copy of the name argument.
2931
2932 * write.c (write_object_file): Simplified usage of obj_frob_symbol
2933 and tc_frob_symbol. Always call both if the symbol is going to be
2934 output.
2935
2936 * write.c (relax_segment): Use %ld rather than %d when printing
2937 fragP->fr_var, and cast it to long.
2938
2939 Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
2940 * subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
2941 fix_root and fix_tail.
2942 (segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
2943 field.
2944 * write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
2945 fix_tailP based on frchain_now, not seg_info (now_seg).
2946 (chain_frchains_together_1): Chain the subsegment relocs together.
2947 * subsegs.c (subseg_change): Don't clear fix_tail field.
2948 (subseg_get): Likewise.
2949 * literal.c (add_to_literal_pool): Look through the relocs via
2950 frchain_now, not seginfo.
2951
f85ad9d5
ILT
2952Thu Feb 3 23:07:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2953
2954 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
2955 ecoff_undefined to ecoff_extern_size.
2956 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
2957 * config/tc-mips.c (s_extern): Set ecoff_extern_size to the
2958 external symbol size, rathern than setting the symbol value.
2959 (md_estimate_size_before_relax): Check both ecoff_extern_size and
2960 symbol value to see if GP referencing can be used.
2961 * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
2962 ecoff_undefined.
2963 (ecoff_frob_symbol): Don't check ecoff_undefined.
2964 (ecoff_build_symbols): Get size of an undefined symbol from
2965 sym->ecoff_extern_size, not S_GET_VALUE (sym).
2966
b4bd2c92
JL
2967Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2968
2969 * Makefile.in: Avoid bug in losing hpux sed.
2970
1051c97f
ILT
2971Wed Feb 2 11:40:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2972
2973 * config/tc-mips.c (file_mips_isa): New static variable.
2974 (md_begin): Set it.
2975 (s_mipsset): Add support for .set mipN to set the ISA level.
2976
2977 * gasp.c (kinfo): Fully bracket initializer.
2978
f2cdeec4
KR
2979Tue Feb 1 19:28:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2980
2981 * gasp.c (malloc): Don't declare, since host.h or system header
2982 files may declare it differently.
2983
2984 * config/atof-ieee.c (int_to_gen): Now static.
2985
2986 * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
2987 ho-sysv.h. Based loosely on a patch from Minh Tran-Le.
2988
e2847e64
SC
2989Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2990
2991 * gasp.c: Include host.h.
2992
9cbf9e57
ILT
2993Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2994
8bbad6fd
ILT
2995 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
2996 warning, not an error.
2997
9cbf9e57
ILT
2998 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
2999 dot_bss_symbol): Don't define if BFD_ASSEMBLER.
3000 (obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
3001 arguments.
3002 (coff_line_base): Renamed from line_base. Changed all uses.
3003 (coff_add_linesym): Renamed from add_line_sym. Made non-static.
3004 Changed all uses.
3005 * config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
3006 (S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
3007 BFD_ASSEMBLER.
3008 (coff_line_base): Declare.
3009 (coff_add_linesym): Declare if BFD_ASSEMBLER.
3010 * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
3011 now takes more arguments.
3012
2abb453d
SS
3013Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
3014
3015 * as.c (statistics_flag): Renamed from quiet_flag.
3016 (main): Get statistics with --statistics instead of -noquiet.
3017
a5a4b5ac
SC
3018Mon Jan 31 07:19:30 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3019
3020 * Makefile.in: Support for Gnu ASsembler Preprocessor.
3021 * gasp.c: New file.
3022 * read.c (s_lcomm): Align lcomm data.
3023 * config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
3024 from different sections.
3025
7909261f
KR
3026Sun Jan 30 14:58:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3027
3028 * write.c (write_object_file): If tc_frob_file is defined, call it
3029 just before calling obj_frob_file.
3030 * config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
3031 (references changed), and made non-static.
3032 (getExpression): Return void.
3033 (select_gp_value): Abort if gp_value is non-zero. Delete call to
3034 non-existent bfd_set_gp_value.
3035 (alpha_validate_fix): Function deleted.
3036 (alpha_frob_symbol): Function deleted.
3037 (alpha_local_label): Function deleted.
3038 (alpha_frob_file): Renamed from alpha_end.
3039 * config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
3040 alpha_local_label, alpha_end): Declarations deleted.
3041 (alpha_gp_value, alpha_frob_file): Declare.
3042 (tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
3043 (LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
3044 (md_convert_frag): Simplified slightly.
3045 (tc_frob_file): New macro.
3046
3047 * read.c (do_align): New function, most of guts of s_align_*
3048 functions. Look for md_do_align macro, give it a chance to bypass
3049 all but recording of section alignment.
3050 (s_align_bytes, s_align_ptwo): Call do_align.
3051 (s_lcomm) [TC_ALPHA]: Align object to largest power of two that
3052 divides object size.
3053
3054 * frags.c (frag_align_pattern): New function.
3055 (frag_align): Rewrite for clarity.
3056
3057 * config/tc-vax.c (md_assemble): Handle O_constant expression.
3058 (vip_begin): Returns pointer to const char. Cast hash_insert arg
3059 to PTR to avoid compiler complaints about const.
3060 (md_begin): Local variable errtxt must point to const.
3061
3062 * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't
3063 bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
3064 the last has an existing host support file. Do handle vax-bsd and
3065 vax-ultrix targets.
3066
1f029792
ILT
3067Fri Jan 28 11:26:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3068
3069 * config/obj-coff.c (obj_coff_section_header_append): Do not
3070 declare if BFD_ASSEMBLER.
3071 (stack_pop): Correct test for stack underflow.
3072 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
3073 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
3074 type of ignored argument to avoid gcc warning.
3075 (align): Removed unused function.
3076
6221fe20
KR
3077Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3078
81f6013a
KR
3079 * config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
3080 files, based on port of gas-1.38 contributed by CMU, using a.out
3081 variant. Updated for gas-2.x and ECOFF. Floating-point constants
3082 are still broken, bootstrap testing incomplete.
3083
3084 * literal.c: Comment changes.
3085
3086 * listing.c (listing_source_file): Check for null listing_tail
3087 before indirecting through it.
3088
3089 * expr.h (struct expressionS): Added struct tag.
3090
3091 * as.h: If __GNUC__ and inline are both undefined, define inline
3092 away.
3093
3094 * write.c (cvt_frag_to_fill): Don't assume that fr_var for
3095 rs_align or rs_org frags will be 1.
3096 (relax_segment): For rs_align, if fr_var is not 1, complain if
3097 required padding is not a multiple of the size of the pad pattern.
3098 (fixup_segment): Leave gp-relative relocations alone. For pcrel
3099 relocations referring to the same segment, clear fx_pcrel when
3100 clearing fx_addsy.
3101 * as.h: Adjust comments on rs_align.
3102
6221fe20
KR
3103 * atof-generic.c: Some reformatting.
3104 (atof_generic): Be careful when mixing signed/unsigned values of
3105 different sizes.
3106
81f6013a
KR
3107 * write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
3108 Query the fx_done field instead of fx_addsy to see if the fixup
3109 still needs to be applied. Set fx_done and clear fx_addsy both,
3110 for now. If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
3111 will only clear fx_addsy, and set fx_done accordingly after
3112 returning.
3113 * config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
3114 * config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
3115 with no fx_addsy.
3116
3117 * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
3118 Deleted.
3119 (symbol_begin): Moved to end of file, so function inlining can
3120 work better.
3121 (fb_label_count, fb_label_max): Default C static initializers are
3122 sufficient.
3123 * symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
3124 Declarations deleted.
3125 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
3126 dot_bss_symbol): Defined here, static.
3127
3128 * config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
3129 including aout/aout64.h.
3130
3131 * write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
3132 don't write out a section symbol even if it's used in a
3133 relocation; assume relocations will handle section numbers
3134 somehow. Rename "punt_it" label to "punt_it_if_unused" to reflect
3135 it's true use.
3136 (EMIT_SECTION_SYMBOLS): Default to 1.
3137 (adjust_reloc_syms): Don't create a new symbol for an absolute
3138 reference; just use the absolute section symbol.
3139 (write_relocs): Make printout of reloc values dependent on flag
3140 DEBUG3, not DEBUG2.
3141 * config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
3142 * config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
3143
a57180ad
ILT
3144Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3145
ec7a69ea
ILT
3146 * read.c (lex_type): No longer make '{' a valid character for
3147 symbol names.
3148
fe920573
ILT
3149 * as.c (main): Print long values using %ld.
3150
a57180ad
ILT
3151 * messages.c (as_warn_internal): New static function.
3152 (as_warn, 3 versions): Use as_warn_internal.
3153 (as_warn_where, 3 versions): New function.
3154 * as.h (as_warn_where): Declare.
3155
ca7bd557
SS
3156Tue Jan 25 18:30:34 1994 Stan Shebs (shebs@andros.cygnus.com)
3157
3158 * as.c (quiet_flag): New flag.
3159 (main): If -noquiet given, display execution time and memory used.
3160
9dcf8057
JL
3161Tue Jan 25 15:53:11 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3162
3163 * doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
3164
f71babce
ILT
3165Mon Jan 24 19:18:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3166
3167 * ecoff.c (ecoff_frob_symbol): New function. Put undefined
3168 symbols of known size in the undefined section. Put small common
3169 symbols in a .scommon section.
3170 * ecoff.h (ecoff_frob_symbol): Declare.
3171 * config/obj-ecoff.h (obj_frob_symbol): Define.
3172 * config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
3173 obj_elf_frob_symbol): Removed unused functions.
3174 * config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
3175 unused macros.
3176 (obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
3177 of unused functions.
3178 (obj_frob_symbol): Define if ECOFF_DEBUGGING.
3179
3180 * tc-mips.c (g_switch_seen): New static variable.
3181 (md_parse_option): Set g_switch_seen for -G option.
3182 (s_option): If creating PIC code, force the GP size to be 0. Warn
3183 if -G switch used with a non-zero value.
3184
3185 * symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
3186 comparing against bfd_com_section.
3187
2ef7731d
KR
3188Mon Jan 24 14:12:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3189
3190 * read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
3191 section.
3192
7691379e
KR
3193Thu Jan 20 13:17:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3194
3195 * expr.c (operand): For floating point operand with unusual fp
3196 char from FLT_CHARS, preserve the character. Patch from Lisa
3197 Repka.
3198
eb8fd0e9
ILT
3199Wed Jan 19 23:15:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3200
3201 * config/tc-mips.c (md_pseudo_table): Add all data allocation
3202 pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
3203
d9420fc1
SC
3204Tue Jan 18 15:51:59 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3205
3206 * config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
3207 C_FCN assume .val has been set to .
3208
2f156c92
JL
3209Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3210
3211 * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
3212 confuses GDB for some unknown reason.
3213 * cofnig/obj-som.c: Likewise.
3214
19302e44
KR
3215Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3216
3217 * literal.c (add_to_literal_pool): Handle duplicates of values
3218 already written to literal pool.
3219
4bda835f
ILT
3220Tue Jan 18 17:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3221
3222 * config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
3223 with explicitly marked stabs through BFD: if a symbol marked
3224 N_UNDF | N_EXT is in the absolute section, move it to the
3225 undefined section; move a symbol marked N_INDR into
13655af6
ILT
3226 bfd_ind_section and set the BSF_INDIRECT flag; set the
3227 BSF_WARNING flag for a symbol makred N_WARNING.
4bda835f 3228
17ed84ed
ILT
3229Mon Jan 17 15:40:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3230
3231 * ecoff.h (ecoff_set_gp_prolog_size): Declare.
3232 * ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
3233
d0286a21
JL
3234Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3235
51517966
JL
3236 * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
3237 and 'f' template operand.
3238
d0286a21
JL
3239 * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
3240 and '2' in copr and sfu instruction templates.
3241
e7501ac7
JL
3242Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3243
3244 * as.h (subseg_force_new): Add prototype.
3245
d2550c72
DE
3246Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
3247
d307fed1
DE
3248 * app.c (do_scrub_next_char): Allow lines like " foolab :".
3249
d2550c72
DE
3250 * read.c (emit_expr): Fix computation of mask.
3251 * config/obj-elf.c (obj_elf_section): Fix loop termination test.
3252
d211303d
KR
3253Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3254
64270963
KR
3255 * ecoff.c (ecoff_set_gp_prolog_size): New function.
3256 (current_file_idx): New static variable.
3257 (add_file): Use and increment current_file_idx instead of indx
3258 parameter.
3259
ff4325cb
KR
3260 * struc-symbol.h (struct symbol): Make all bitfields unsigned.
3261
d211303d
KR
3262 * config/tc-i960.c (i960_validate_fix): Added argument
3263 add_symbolPP. Indirect through it to get "add_symbolP".
3264 * config/tc-i960.h (i960_validate_fix): Supply prototype.
3265 (TC_VALIDATE_FIX): Pass address of add_symbolP.
3266
3267 * configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
3268 (i386-*-netbsd0.8): New target, like 386bsd.
3269
3270 * configure.in: Set BFDDEF in Makefile to "define" or "undef".
3271 * Makefile.in (config.h): Protect against multiple inclusions.
3272 Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
3273 (ALL_CFLAGS): Omit $(BFDDEF).
3274 * as.h: Include config.h.
3275 (struct symbol): Added forward declaration.
3276 (add_to_literal_pool): Fix declaration.
64270963 3277 * as.c: Don't include config.h.
d211303d
KR
3278
3279 * literal.c (add_to_literal_pool): Take symbol and addend as
3280 arguments, instead of expression, for now. Fix calculation of
3281 offset to return.
3282
3283 * subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
3284 literal_pool_size.
3285
500828a0
JL
3286Thu Jan 13 12:14:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu
3287
3288 * subsegs.c (subseg_get): Accept new argument "force_new". If
3289 set then a new segment is always created. All callers changed.
3290 (subseg_force_new): New function. Similar to subseg_new, but
3291 always force a new segment to be created.
3292
3293 * config/obj-som.c (som_frob_file): Call adjust_code_sections
3294 for each section.
3295 (adjust_code_sections): New function. Adjusts the VMA for all the
3296 $CODE$ subspaces.
3297
3298 * config/tc-hppa.c (md_assemble): Also handle creating a fixup
3299 for the unwind descriptors if a function's label follows the
3300 .PROC and .ENTRY directives.
3301 (pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
3302 is done elsewhere. Don't create a fixup for the unwind
3303 descriptors if the function's label has not been defined yet.
3304 (pa_proc): For SOM, place each procedure within a new $CODE$
3305 subspace. Adjust the segment and frag for the associated
3306 function label if it exists.
3307
3308Wed Jan 12 22:05:33 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3309
3310 * config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
3311 (hppa_fix_new): Initialize segment field.
3312 (md_apply_fix): Do nothing for pc-relative fixup which involves
3313 crossing a segment boundary.
3314 (pa_procend): Undefine the current label after handling .PROC
3315 and .PROCEND directives.
3316 (dummy_symbol): Make type "symbolS *". Change references as
3317 appropriate.
3318
bbf7e43d
ILT
3319Wed Jan 12 13:29:31 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3320
3321 * read.c (read_a_source_file): Cast array argument to unsigned
3322 char.
3323 * write.c (adjust_reloc_syms): Remove unused variable symseginfo.
3324 (write_object_file): Don't define punt_it if it won't be used.
3325 (fixup_segment): Don't define skip if it won't be used.
3326
3327 * config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
3328 (mips_target_format): Declare.
3329 * config/tc-mips.c (mips_target_format): Define with appropriate
3330 default definition.
3331 (md_parse_option): If -EL or -EB is used, change byte_order and
3332 mips_target_format as appropriate.
3333
a1c91916
JL
3334Tue Jan 11 21:52:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3335
3336 * app.c (do_scrub_next_char): Another attempt to fix bugs
3337 dealing with labels without colons (for HPPA and MRI).
3338
44ce2f32
DE
3339Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
3340
fd4b7c25
KR
3341 * config/tc-sparc.c (sparc_ip): Truncate args to %hi/%lo to 32 bits.
3342
44ce2f32
DE
3343 * expr.c (integer_constant): Fix computation of too_many_digits.
3344 Variable digit_2 renamed to start. Fix check for whether number
3345 will fit in 32 bits.
3346 * read.c (emit_expr): Use valueT instead of long.
3347
af255ca0
ILT
3348Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3349
f34e27a1
ILT
3350 * config/obj-elf.c: If TC_MIPS, include elf/mips.h.
3351 (special_sections): Define.
3352 (obj_elf_special_section): Get default types and attributes from
3353 list of special sections.
3354 * config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
3355
4e76ae53
ILT
3356 * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
3357 sections to be close together.
3358
8197b589
ILT
3359 * config/tc-mips.c (macro): Corrected $at warnings in a couple of
3360 spots.
3361
af255ca0
ILT
3362 * listing.c (listing_prev_line): New function.
3363 * listing.c: Include subsegs.h.
3364 (listing_prev_line): New function.
3365 (calc_hex): Reset byte_in_frag to zero for each new frag.
3366 * config/tc-mips.c (append_insn): Call listing_prev_line after
3367 emitting nop instructions.
3368 * Makefile.in (listing.o): Depends upon subsegs.h.
3369
4047ff1d
JL
3370Mon Jan 10 09:52:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3371
3372 * config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
3373 here. Handle case where label may be defined after the .PROC.
3374 (pa_proc): It is not an error if the procedure's label isn't
3375 defined before the .PROC directive.
3376
6f1c6a67
KR
3377Sun Jan 9 04:43:30 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3378
3379 * config/te-netbsd.h: New file.
3380 * config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
3381 a.out-netbsd-386 for this configuration.
3382
fe4e3290
ILT
3383Fri Jan 7 17:38:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3384
3385 * ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
af255ca0 3386 with the associated stabs information.
fe4e3290
ILT
3387 (ecoff_build_symbols): Never set the type of stabs symbols to
3388 st_Global. Don't update the symbol index or ifd if the gas symbol
3389 is not the same as the ECOFF symbol (which is now the case for
3390 stabs symbols).
3391
917fae09
SS
3392Fri Jan 7 11:14:07 1994 Stan Shebs (shebs@andros.cygnus.com)
3393
3394 * config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
3395 splits the function.
3396 (macro2): New function, if LOSING_COMPILER defined.
3397
03a372ed
SC
3398Fri Jan 7 09:38:25 1994 Steve Chamberlain (sac@cygnus.com)
3399
3400 * config/obj-coffbfd.c (fill_section): Don't ever fill past the
3401 end of a section. (write_object_file): Temporary fix - setup
3402 stdoutput.
3403
fd0e2cf2
KR
3404Thu Jan 6 18:05:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3405
3406 * config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
3407 non-pcrel_offset relocations.
3408
13fe1379
ILT
3409Thu Jan 6 01:06:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3410
3411 * config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
3412 without .set noat.
3413
311ff8d6
KR
3414Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3415
2d29d89d 3416 * literal.c: New file.
d4aad2b4
KR
3417 * Makefile.in (REAL_SOURCES, OBJS): List it.
3418
3419 * as.h (DEBUG): Don't define.
3420 (struct expressionS, struct fix): Declare in case they're used in
3421 prototypes.
3422 (add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
2d29d89d 3423
311ff8d6
KR
3424 * config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
3425 in bfd.
3426
3427 * subsegs.c (subseg_get): New function. Creates segment if
3428 needed, returns pointer, but doesn't change current segment.
3429 (subseg_new): Use it.
3430
5a051773
SS
3431Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
3432
3433 * Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
3434 * config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
3435 * app.c, flonum.h, hex-value.c (const): Change #if to be more
3436 portable.
3437
fce98d63
RS
3438Tue Jan 4 22:11:34 1994 Rob Savoye (rob@darkstar.cygnus.com)
3439
3440 * config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
3441 micro-kernel.
3442
5a051773
SS
3443Thu Dec 30 15:27:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3444
3445 * write.c (write_relocs): bfd_perform_relocation now takes an
3446 additional argument, to return an error string (which we ignore).
3447
9314b3a1
KR
3448Wed Dec 29 14:37:26 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3449
3450 * write.h (struct fix): Field tc_fix_data should be type PTR, not
3451 void*, for compatibility with non-ANSI compilers. Added
3452 single-bit field "fx_done".
3453
45db9caf
TG
3454Sun Dec 26 14:31:47 1993 Torbjorn Granlund (tege@adder.cygnus.com)
3455
3456 * tc-hppa.c (pre_defined_registers): Convert to lower case.
3457 Delete spurious register names "%r4L", etc.
3458 (selector_table): Sort and convert to lower case.
3459 (cons_fix_new_hppa): `reloc_type' => `rel_type'.
3460 (pa_ip): Always use strcmp for non-text and strcasecmp for text.
3461 (reg_name_search): Rewrite to call strcasecmp only once per
3462 iteration.
3463 (pa_chk_field_selector): Rewrite to use binary search.
3464 (pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
3465 (pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
3466 sensitive comparisons.
3467 (pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
3468 (pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$". Use
3469 case sensitive comparison for all symbolic names.
3470 (pa_subspace): Canonicalize strncasecmp arg to lower case.
3471 (pa_subspace_start): Use case sensitive comparison for symbolic names.
3472
8b13fa4e
KR
3473Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3474
0a75cb6c
KR
3475 * write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
3476 symbol is present (i.e., relocation against absolute), create a
3477 phony local symbol, and use it in the reloc.
3478 (fixup_segment): When adjusting a reloc with an absolute symbol,
3479 have TC_FORCE_RELOCATION control clearing add_symbolP too.
3480 * config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
3481
3482 * symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
3483 and BSF_GLOBAL, since they're the same.
3484
d3e3010b
KR
3485 * as.c (main): Only invoke md_end if it's defined as a macro.
3486 * tc.h (md_end): Don't declare it.
3487 * config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
3488 anything.
3489 * config/tc-vax.c (vip_end): Deleted null function.
3490 * config/tc-mips.c (md_mips_end): Renamed from md_end.
3491 * config/tc-mips.h (md_mips_end): Declare.
3492 (md_end): New macro, calls md_mips_end.
3493
3494 * write.c (write_object_file): Don't close output file.
3495 * as.c (main): Close output file (if needed) after calling
3496 listing_print, which should be after calling write_object_file,
3497 which sets the frag addresses.
3498
3499 * config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
3500 obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
3501 obj_coff_val): Add unused int argument to satisfy prototypes; goes
3502 with Ian's 10 Sep changes.
3503 (S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
3504 S_SET_STORAGE_CLASS): Now function instead of macros.
3505 (obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
3506 (tag_insert): Local var ERROR_STRING is const. Use "const" not
3507 "CONST" for argument NAME. Fixed prototype.
3508 (coff_frob_symbol): Removed explicit "#if 1" directive. If
3509 S_IS_EXTERNAL, set storage class to C_EXT.
3510 (s_get_name): Use "const" not "CONST".
3511 * config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
3512 S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
3513 (obj_emit_lineno): Declare only for non-BFD_ASSEMBLER. For
3514 BFD_ASSEMBLER, define as macro that aborts.
3515 (obj_extra_stuff, tc_headers_hook): Declare only for
3516 non-BFD_ASSEMBLER.
3517 (coff_frob_symbol): Fix prototype.
8b13fa4e
KR
3518
3519Sun Dec 19 00:37:20 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3520
3521 * config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
3522 reversed.
3523
5ea18b5d
JL
3524Thu Dec 16 21:13:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3525
3526 * config/tc-hppa.c (md_begin): Initialize "dummy_label".
3527 (tc_gen_reloc, SOM version): For relocations which have no symbol,
3528 set sym_ptr_ptr to dummy_label. Avoids lossage in generic BFD code.
3529
a8a72d74
KR
3530Thu Dec 16 16:07:56 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3531
3532 * read.c (lex_type): No longer make '[' a valid character for
3533 symbol names.
3534
50f75add
KR
3535 * config/tc-vax.c (tc_aout_fix_to_chars): Local variable
3536 NBYTES_R_LENGTH now const.
3537
3538 * config/obj-*.c, config/tc-*.c: Omit superfluous "return"
3539 statements at ends of functions. Don't check for null return from
3540 hash_new, since it won't return at all if there's no memory
3541 available. Also, check for null return from hash_insert, rather
3542 than zero-length string, as success indicator.
3543
3544 * subsegs.c (section_symbol): New function.
3545 * subsegs.h (section_symbol): Declare.
3546 * write.c (adjust_reloc_syms): Use it.
3547
cf4aca57
KR
3548Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3549
7387c355
KR
3550 * Makefile.in (RUNTEST): New variable.
3551 (CHECKFLAGS): Pass it down.
3552
cf4aca57
KR
3553 * ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
3554 unused for now, but supplied by Alpha OSF1 compiler.
3555
3556 * as.h: Protect against multiple inclusions.
3557 (int_to_gen): Don't declare.
3558
3559 * config/atof-vax.c (atof_vax): NULL is not a valid character
3560 constant.
3561
551d2fd4
JL
3562Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3563
26da0351
JL
3564 * configure.in (hppa*-*-osf*): Do not consider this a developmental
3565 configuration.
3566
551d2fd4
JL
3567 * config/tc-hppa.c (md_apply_fix): Handle cases where no
3568 relocation will be emitted for 32bit formats.
3569
9d5a9b20
JL
3570Mon Dec 13 23:33:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3571
3572 * config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
3573 for any of the 'T' field selectors.
3574
2b5936ff
SC
3575Sat Dec 11 11:23:12 1993 Steve Chamberlain (sac@thepub.cygnus.com)
3576
3577 * config/tc-h8500.c (build_bytes): Get reloc type right for a
3578 %page operation. (md_assemble): Don't modify input_line_pointer.
3579 (mdcoff_sizemachdep): New function.
3580 * config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
3581 * config/tc-z8k.c (get_operand): Delete bogus check.
3582
a1328e79
KR
3583Wed Dec 8 16:31:51 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
3584
3585 * write.c (number_to_chars_*): Delete bogus range check.
3586
3587 * output-file.c (TARGET_ARCH): No default.
3588
ef7ce769
SC
3589Tue Dec 7 16:02:53 1993 Steve Chamberlain (sac@jonny.cygnus.com)
3590
3591 * config/tc-sh.c (md_convert_frag): Truncate disps before calling
3592 md_number_to_chars. (md_assemble): Don't modify
3593 input_line_pointer.
3594
67707031
DE
3595Mon Dec 6 11:49:03 1993 Doug Evans (dje@canuck.cygnus.com)
3596
3597 * config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
3598
dd2f509f
JL
3599Mon Dec 6 11:20:02 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3600
3601 * config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
3602 Breaks with the HP compilers.
3603
3604 * config/tc-hppa.c (struct call_info): Remove fields which were
3605 set but never used. Remove all code which sets those fields.
3606 (struct subspace_dictionary_chain): Likewise.
3607 (struct space_dictionary_chain): Likewise.
3608 (pa_desc): Delete useless function. Delete all references.
3609 (hppa_tc_make_sections): No need to count the number of symbols for
3610 the symbol extension section.
3611
7b624bf2
JL
3612Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3613
eb91665b
JL
3614 * config/obj-som.c (obj_som_version): Pass version string to
3615 SOM BFD backend.
3616 (obj_som_copyright): New function. Much like obj_som_version.
3617
3618 * config/tc-hppa.c (obj_copyright): Define as appropriate for
3619 SOM and ELF.
3620 (pa_copyright): Just a stub now.
3621
42ecb409
JL
3622 * config/obj-som.c (obj_read_begin_hook): Delete unused function.
3623 * config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
3624 (TARGET_SYMBOL_FIELDS): Delete. SOM isn't making use of them.
3625
4165dcc2
JL
3626 * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
3627 expansion due to rounding mode selectors. Handle R_[RDSN]_MODE
3628 relocations for selecting the current rounding mode.
3629
7b624bf2
JL
3630 * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
3631 e_rlsel field selectors.
3632
3633Fri Dec 3 18:33:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3634
3635 * config/obj-elf.h: If ECOFF_DEBUGGING, undef
3636 SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
3637 OBJ_PROCESS_STAB to call ecoff_stab.
3638 * config/obj-elf.c: Don't compile obj_elf_init_stab_section if
3639 INIT_STAB_SECTION is not defined.
3640
753dcbbd
JL
3641Fri Dec 3 10:56:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3642
3643 * config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
3644 (md_apply_fix_1): Rename to md_apply_fix. Fix argument decls.
3645 Fix comments in various places. Always return a value.
3646 Avoid dereferencing a NULL fx_addsy.
3647 (hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
3648
585635c7
JL
3649 Fri Dec 3 09:47:30 1993 Pete Hoogenboom (hoogen@cs.utah.edu)
3650
3651 * tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
3652 be either 0 or 2 (no static link or static link required). Always
3653 assume no static link.
3654
bfbfba45
KR
3655Thu Dec 2 11:52:21 1993 Ken Raeburn (raeburn@cygnus.com)
3656
3657 * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
3658 dependent on howto fields, not on format flavour.
3659
3660 * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
3661 defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
3662 macros are defined.
3663 * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
3664 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
3665 (sy_tc, sy_obj): Define so that the fields look like they used to,
3666 until all references get changed.
3667
3668 * write.c (fixup_segment): Lots of variables no longer register.
3669 Reordered some code for easier reading.
3670 * config/obj-coff.c (obj_coff_dim): dim_index no longer register.
3671 Deleted superfluous return statement.
3672 (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
3673 obj_coff_val, tag_init, tag_insert): Deleted superfluous return
3674 statement.
3675 (align, obj_coff_section): Deleted debugging printfs.
3676 * config/tc-i386.c (md_assemble): Discard some register decls.
3677 Use assignment rather than memcpy to copy template.
3678 (op_hash, reg_hash, prefix_hash): Default C initialization of
3679 statics is sufficient.
3680 * config/tc-sparc.c (print_insn): Array Reloc is now const, and
3681 points to const.
3682
3683 * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
3684 TE_LYNX; use coff-sparc otherwise.
3685 [USE_NATIVE_HEADERS]: Delete this code; it isn't used.
3686
3687 * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
3688 before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before
3689 returning. Remove some i960-coff-specific code.
3690 (TC_ADJUST_RELOC_COUNT): Default to doing nothing.
3691 * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
3692 (i960_validate_fix): Declare.
3693 (TC_VALIDATE_FIX): Define.
3694 * config/tc-i960.c (i960_validate_fix): New function.
3695
3696 * write.c (number_to_chars_littleendian): New function. Write out
3697 bytes in little endian order, doing size and range checking.
3698 (number_to_chars_bigendian): New function, similar.
3699 * write.h: Declare them.
3700 * config/tc-*.c (md_number_to_chars): Use them.
3701 * config/tc-vax.c (md_apply_fix): Ditto.
3702 * config/tc-i386.c (md_apply_fix): Ditto.
3703
3704 * config/obj-coff.c: Rearranged code for handling line number
3705 data.
3706 (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
3707 since the usage is different from non-BFD_ASSEMBLER case.
3708 (in_function, clear_function, set_function): New macros, to
3709 combine some of the functionality implemented in differnet ways in
3710 BFD_ASSEMBLER and non-... code. Used in other functions that used
3711 to check function_lineoff &c.
3712 (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
3713 one for not. Non-BFD_ASSEMBLER version now has temporary variable
3714 to contain char* pointer pointed to by char** argument. Always
3715 follow CROSS_COMPILE code; easier to read that way.
3716 (obj_coff_ln): Don't call add_lineno or c_line_new if appline is
3717 set.
3718 (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
3719 ".bf", it's been done elsewhere.
3720 (coff_frob_symbol): If ilne number data is pending, call
3721 add_linesym to flush it.
3722 (coff_frob_file): Don't do that here.
3723 * config/obj-coff.h (coff_frob_file): Declare.
3724 (obj_frob_file): Define, to call it.
3725
3726 * config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
3727 md_estimate_size_before_relax: Define them as macros calling
3728 as_fatal.
3729 * config/tc-sparc.c: Don't define them as functions.
3730
3731 * configure.in: Handle target alpha-*-osf*. (No cpu files yet.)
3732
0a8ae18f
JL
3733Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3734
3735 * Makefile (clean): Depend on clean-here.
3736
9a048e48
KR
3737Wed Dec 1 11:35:21 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3738
3739 * config/ho-go32.h: Include fopen-bin.h.
3740 * as.h: If FOPEN_WB isn't defined, include fopen-same.h.
3741 * output-file.c (output_file_create): Use FOPEN_WB instead of "w".
3742 * input-file.c (input_file_open): Use FOPEN_RT instead of "r".
3743 * listing.c (file_info): Use FOPEN_RB instead of "rb".
3744 * read.c (s_include): Use FOPEN_RT instead of "r".
3745
3746 * stabs.c: Include obstack.h.
3747
3748 * tc.h (md_create_long_jump): Don't declare if it's already
3749 defined as a macro.
3750 (md_create_short_jump, md_estimate_size_before_relax): Ditto.
3751
3752 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
3753 of strerror. Clear bfd_error.
3754
3755 * config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
3756 defined.
3757
44c0de53
JL
3758Wed Dec 1 10:41:56 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3759
3760 * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
3761 (pa_process_exit, pa_procend): Call it for ELF objects.
3762
777ad64d
ILT
3763Wed Dec 1 12:10:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3764
3765 * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
4032d3f0
ILT
3766 case. See comment. From wilson@cygnus.com: for M_L_DAB, set
3767 coproc before doing goto ld.
777ad64d 3768
335d35c8
JL
3769Tue Nov 30 13:40:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3770
3771 * write.c (TC_FORCE_RELOCATION): Provide a default definition.
3772 (fixup_segment): Allow the target machine to specify that a
3773 relocation must be generated for a particular fixup. Remove
3774 #ifndef TC_HPPA hack.
3775
3776 * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.
3777
3778 * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
3779 be NULL. Only fixup_segment is supposed to do that.
3780 (hppa_force_relocation): New function.
3781
018f2bba
ILT
3782Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3783
c751ad19
ILT
3784 * Makefile.in (stabs.o): Added dependencies.
3785
018f2bba
ILT
3786 * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
3787
81413fa2
JL
3788Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3789
278cd007
JL
3790 * app.c (do_scrub_next_char): Output a TAB before any
3791 .app* directive.
3792
81413fa2
JL
3793 * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
3794 exists before trying to peek at its name.
3795 (pa_space): Do not call pa_align_subseg. See hppa/unsorted/align3.s
3796 for testcase.
3797 (pa_align_subseg): Delete unused/unwanted function.
3798
385ce433
JL
3799Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3800
3801 * read.c (read_a_source_file): Fix test for when to stick a colon
3802 on the end of a label. Make code conditional on either MRI or
3803 LABELS_WITHOUT_COLONS.
3804
3805 * app.c (do_scrub_next_char): If a line begins with whitespace, leave
3806 the single whitespace character alone. Eat all others.
3807
3808 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
3809
31a385d1
JL
3810Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3811
3812 * config/tc-hppa.c (pa_procend): Do not call process_exit.
3813 (exit_processing_complete): Delete unwanted variable and all
3814 references.
3815
c5953036
ILT
3816Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3817
3818 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
3819 Changed to not actually build the external symbol information, as
3820 that is now done by the ECOFF back end.
3821 (ecoff_build_debug): Changed accordingly.
3822 * ecoff.h (obj_ecoff_set_ext): Declare. obj-format.c function
3823 called by ecoff_setup_ext.
3824 * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
3825 set corresponding pointer to NULL. Don't set raw_size and
3826 raw_syments.
3827 (obj_ecoff_set_sym_index): Removed.
3828 (obj_ecoff_set_ext): New function.
3829 * config/obj-ecoff.h (obj_set_sym_index): Don't define.
3830 (obj_ecoff_set_sym_index): Don't declare.
3831 * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
3832 elf_set_index): New functions used for ECOFF_DEBUGGING.
3833 (elf_frob_file): Reworked ECOFF debug generation to use
3834 new functions in bfd/ecofflink.c.
3835
3836Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3837
3838 * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
3839 subspace for ELF. In the SOM world, the linker is responsible
3840 for creating the unwind subspaces.
3841
e0209756
ILT
3842Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3843
3844 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
3845 (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
3846 already set. Fixes .def var; .val external_var; .scl 3; .endef.
3847 (adjust_stab_section): Make static. Declare return type. Remove
3848 unused variables.
3849
3850 * config/tc-i386.h: Declare tc_coff_fix2rtype and
3851 tc_coff_sizemachdep.
3852
0669e047
KR
3853Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3854
3855 * write.c (write_object_file): Disable obj_check_file_symbols
3856 hook; only back end using it wasn't using it correctly.
3857 (write_object_file): Always call obj_frob_symbol and
3858 tc_frob_symbol; always retain symbol if it's used by a relocation,
3859 regardless of what these routines indicate.
3860 * config/obj-coff.c (coff_frob_symbol): Renamed from
3861 coff_check_file_symbols.
3862 * config/obj-coff.h (obj_check_file_symbols): Deleted.
3863 (coff_frob_symbol): Declare.
3864 (obj_frob_symbol): Call it.
3865
3866 * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
3867 obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
3868 (c_section_header): Ditto. Delete superfluous return at end of
3869 function.
3870
3871 * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
3872 coff-sparc-lynx.
3873 (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
3874 too.
3875 (c_section_header): Rewrite prototype so that it contains no
3876 preprocessing directives. Don't declare it at all if
3877 BFD_ASSEMBLER.
3878
3879 * configure.in (sparc*-*-lynxos): New target, using coff and
3880 BFD_ASSEMBLER.
3881
3882 * stabs.c: New file.
3883 * Makefile.in (REAL_SOURCES, OBJS): List it.
3884 * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
3885 get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
3886 Moved to new file.
3887
3888 * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
3889 files.
3890
29cc5816
ILT
3891Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3892
3893 * configure.in (mips-*-irix5*): New target. Use elf and mips-big.
3894 * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
3895 (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
3896 pseudo-ops.
3897 (obj_read_begin_hook): If ECOFF_DEBUGGING, call
3898 ecoff_read_begin_hook.
3899 (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
3900 ecoff_symbol_new_hook.
3901 (obj_elf_init_stab_section): Cast alloca result.
3902 (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
3903 information and write it out into .mdebug section.
3904 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
3905 (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
3906 (ECOFF_DEBUGGING): Define if TC_MIPS.
3907 (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
3908 fields required by ECOFF.
3909 * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
3910 OBJ_ECOFF in many cases.
3911 (mips_any_noreorder): New variable.
3912 (mips_cprestore_offset): Initialize to -1.
3913 (mips_frame_reg): New variable.
3914 (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
3915 RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
3916 (md_pseudo_table): Handle "gpword" and "cpadd".
3917 (md_begin): Initialize ok to false. If OBJ_ELF, set alignment
3918 of text, data and bss sections to 4. Set alignment of
3919 .reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
3920 section.
3921 (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
3922 check.
3923 (append_insn, macro_build, macro_build_lui): Take place
3924 argument. Changed all callers.
3925 (append_insn): If appending a nop, don't emit one.
3926 (macro_build): Changed assertion for 'i', 'j', 'o' case.
3927 (gp_reference): Removed.
3928 (load_address): New function.
3929 (macro): If mips_noreorder is used, set mips_any_noreorder.
3930 Extensive changes to handle GP and PIC symbols differently.
3931 Build both possible code choices using a variant frag, and
3932 make a final decision at the end of assembly when all
3933 information is known. Added PIC support for all symbol
3934 references.
3935 (mips_ip): Don't permit anything but a number after $ for a
3936 coprocessor register. Don't use .lit4 or .lit8 sections when
3937 generating PIC code. If OBJ_ELF, set alignment of .lit4 or
3938 .lit8 section to 4.
3939 (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
3940 (s_change_sec): Set alignment of ELF .rodata or .sdata section
3941 to 4.
3942 (s_mipsset): If .set noreorder, set mips_any_noreorder.
3943 (s_cpload): Ignore .cpload if not generating PIC code. Warn
3944 if .cpload is not in noreorder section.
3945 (s_cprestore): Ignore .cprestore if not generating PIC code.
3946 (s_gpword, s_cpadd): New functions.
3947 (tc_get_register): Added frame argument; if true, set
3948 mips_frame_reg to return value. Changed all callers.
3949 (md_estimate_size_before_relax): Don't error out, but instead
3950 determine how much a frag should grow.
3951 (tc_gen_reloc): Return multiple relocs if appropriate, as
3952 determined by md_estimate_size_before_relax.
3953 (md_convert_frag): New function.
3954 (mips_elf_final_processing): Set ELF header flags based on
3955 mips_any_noreorder and mips_pic.
3956 * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
3957 (MAX_RELOC_EXPANSION): Define to be 3.
3958 (md_relax_frag): Define to be 0.
3959 (md_convert_frag): Don't define.
3960 (tc_get_register): Changed declaration.
3961
3962 * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
3963 support generating ECOFF debugging information for MIPS ELF
3964 targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
3965 handling of external symbols: it now always generates exactly
3966 those external symbols that are defined in the global symbol list.
3967 * Makefile.in (REAL_SOURCES): Added ecoff.c.
3968 (REAL_HEADERS): Added ecoff.h.
3969 (OBJS): Added ecoff.o.
3970 (ecoff.o): New target.
3971 * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
3972 Remaining code mostly just calls ecoff.c code.
3973 * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
3974 (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
3975 struct localsym.
3976 (obj_read_begin_hook, obj_symbol_new_hook): Define to call
3977 functions in ecoff.c.
3978 (ecoff_stab): Don't declare (now declared in ecoff.h).
3979 (obj_set_sym_index): Define.
3980 (obj_ecoff_set_sym_index): Declare.
3981
3982 * frags.h (frag_grow): Declare.
3983 * frags.c (frag_grow): Made non-static.
3984
3985 * write.c (is_dnrange): Do not define if md_relax_frag is defined.
3986 (relax_segment): If md_relax_frag is defined, use it to handle a
3987 frag of type rs_machine_dependent rather than looking through
3988 md_relax_table.
3989
3990 * read.c (read_a_source_file): If we find a bad pseudo-op,
3991 do a continue to go on to the next line rather than a break.
3992 Removed duplicate bad pseudo-op code which was never executed.
3993
3994 * read.c (s_lcomm): Do not require a comma after the name.
3995
3996 * subsegs.h (segment_info_type): Changed hadone field to bitfield.
3997 Added bss bitfield.
3998 * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
3999 * read.c (s_lcomm): Set bss flag for .sbss section if used.
4000 * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
4001 bss section. Set SEC_RELOC if there are any relocations, even for
4002 a zero size section.
4003
4004 * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
4005 data offset on reloc[0]->address rather than reloc[j]->address, so
4006 that multiple relocs can affect different memory locations.
4007
4008 * write.c (chain_frchains_together, relax_and_size_seg,
4009 adjust_reloc_syms, write_relocs): Make third argument PTR, not
4010 char *, to match definition of bfd_map_over_sections.
4011
4012 * app.c (do_scrub_next_char): Don't interpret a comment character
4013 as starting a CPP line directive unless it is a '#' and is the
4014 very first characters on the line (i.e., do not permit leading
4015 whitespace).
4016
4017 * messages.c (identify): Make file argument non-const, to match
4018 callers.
4019
c5e9ccd0
JL
4020Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4021
4022 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
4023
4024Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
4025
4026 * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
4027 * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
4028 relocs.
4029
4a1b59ef
JL
4030Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4031
3e330968 4032 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
4033 * config/obj-som.c (obj_som_version): Add missing ';'.
4034 (som_frob_file): Delete whitespace at EOL.
4035
f3b6e1f2
KR
4036Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
4037
4038 * Makefile.in (VERSION): Updated following 2.2 release.
4039
c5e9ccd0 4040Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
4041
4042 * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
4043 field selector, rather than an int. All uses of field selectors
4044 fixed.
4045 (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
4046 (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
4047 field.
4048
4049 Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
a721c80b
JL
4050
4051 * config/tc-hppa.c (pa_type_args): For .import statements,
4052 silently ignore attempt to change the symbol type for a function
f2eed884 4053 from ST_ENTRY to ST_CODE on .import.
a721c80b 4054
ca16b5e5
ILT
4055Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4056
4057 * write.h (fixS): Rename fx_callj field to fx_tcbit.
4058 * write.c, config/obj-coff.c, config/obj-coffbfd.c,
4059 config/tc-i960.c: Corresponding changes.
4060
48153d49
JL
4061Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4062
7420b02b
JL
4063 * Makefile.in (distclean): Delete config-stamp and config.h
4064
f41f3d72
JL
4065 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
4066 ANSI-C features.
4067
48153d49
JL
4068 * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
4069 Accept new argument "is_export". All callers changed. When
4070 processing a .export directive for a function, do not allow
4071 the user to set the type to "CODE", instead warn and set the
4072 type to "ENTRY".
4073
9226253a
ILT
4074Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4075
4076 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
4077 Lemon <mellon@pepper.ncd.com>).
4078 (mips_ip): Permit odd numbered floating point registers if -mips3.
48153d49 4079 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 4080
53087850
DE
4081Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
4082
4083 * configure.in: Remove h8300h, we have multilib now.
4084
5f8a3788
DHW
4085Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
4086
4087 * configure.in: Support generic netware as being ELF format.
4088 Recognise unixware if the user supplies it.
4089
163aac84
JL
4090Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4091
513f0471
JL
4092 * First cut at cleaning up PA instruction parsing.
4093 * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
4094 insn structure as an argument, and a pointer to a string. All
4095 callers changed. Always read any field selector here. Call
4096 evaluate absolute to get a return value.
4097 (evaluate_absolute): Addept pointer to insn structure as its
4098 argument. All callers changed.
4099 (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
4100 into an instruction and continuing the main pa_ip loop.
4101 (CHECK_FIELD): New macro for simple range checking of fields.
4102 (pa_ip): Delete unused variables. Use INSERT_FIELD_AND_CONTINUE
4103 and CHECK_FIELD. All immediate fields now pass through
4104 pa_get_absolute_expression which will also handle field selectors.
4105 Delete dead code. Simplify.
4106 (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
4107 applied are in range. Use bfd_put_32 rather than inserting each
4108 byte of the fixed instrution into the buffer ourselves.
4109
3e411021
JL
4110 * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
4111 it was PA specific and is no longer needed (it's now handled
4112 within the PA backend).
4113 * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
4114 * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
4115 a fixup is $global$ change it to NULL as $global$ is really only
4116 needed long enough to determine the base type of relocation to use.
4117
240cbc57
JL
4118 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
4119
163aac84
JL
4120 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
4121 for 'z' operands (target of ble branch).
4122
1cc248d2
JL
4123Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4124
18c4f112
JL
4125 * config/tc-hppa.c: (update_subspace): Fix type and name of last
4126 parameter. All callers fixed.
4127 (md_begin, pa_chk_field_selector, pa_entry): Lint.
4128
1cc248d2
JL
4129 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
4130 to default state after it's been used.
4131
88eb7ea6
JL
4132Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4133
4134 * config/obj-som.c (obj_som_init_stab_section): Change
4135 space/subspace sort keys for the stab sections so as to avoid
4136 bugs in the hp linker and pxdb.
4137
0f894895
JL
4138Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4139
4140 * write.c (chain_frchains_together): Update pointer to last
4141 frag for a segment in the seginfo structure.
4142
de074576
JW
4143Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
4144
4145 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
4146
4147Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4148
4149 * write.c (fixup_segment): Handle conversion of subtraction to
4150 pc-relative addressing even if pc-relative flag is already set.
4151
4152 * config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
4153 declare either.
4154
4155 * doc/Makefile.in (distclean): Delete intermediate files from dvi
4156 build, but not the dvi or info files.
4157 * Makefile.in (clean-here): New target; cleans up current
4158 directory only.
4159 (distclean): Use it instead of clean.
4160
4161 * read.c (s_xstab): Don't use alloca.
4162
4163 * messages.c (identify): New routine; print message identifying
4164 following messages as coming from assembler.
4165 (as_show_where, as_bad_internal, as_bad_where): Call it.
4166 (as_fatal): Don't need to identify program any more.
4167
efe8ef02
ILT
4168Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4169
fd4b7c25
KR
4170 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
4171
efe8ef02
ILT
4172 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
4173 well as MIPS ECOFF.
4174 (get_stab_string_offset): Remove unused variable aligned.
4175
aa14e863
JL
4176Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4177
d6e524f3
JL
4178 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
4179 predefined register table.
4180 (pa_parse_number): Handle %rp in common register shortcut code.
4181 Consistently set return value to -1 for an error. Clean up error
4182 messages and only print them when "print_errors" is true. Handle
4183 empty string case like the HP assembler -- assume a value of
4184 zero.
4185
20cee6d8
JL
4186 * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
4187 standard hpux include files to pick up various function decls.
4188
aa14e863
JL
4189 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
4190 stdio.h. Delete bogus declaration of free. Get path to
4191 alloca-conf.h right.
4192
25270a1c
KR
4193Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4194
4195 * expr.c (operand): Fix checks for characters following "0b" or
4196 "0f".
4197
f197d7eb
JL
4198Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4199
ff852e11
JL
4200 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
4201 so GAS can attach unwind descriptor information to a BFD symbol.
4202 * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
4203 descriptor information to the BFD symbol.
4204 (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
4205 they are simply markers. Make R_HPPA_UNWIND_* handling OBJ_ELF
4206 dependent.
4207 (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
4208 (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
4209 (pa_exit): Likewise, but built a R_HPPA_EXIT relocation. Do not
4210 build "end-of-function" symbols for SOM, they are not needed.
4211
a50e9b55
JL
4212 * config/tc-hppa.c (process_exit): Create temporary symbols with
4213 correct prefixes so they can be eliminated later.
4214
49fc68a1
JL
4215 * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
4216 (pa_callinfo): Insert framesize into the unwind information as
4217 soon as it's available.
4218 (pa_build_unwind_subspace): Do not insert framesize into the unwind
4219 information here.
4220
c43d56f7
JL
4221 * Add support for marker type relocations. These mark areas
4222 of interest to the linker. ENTRY/EXIT relocations for SOM are
4223 an example of marker relocations.
4224 * write.c (write_relocs): Instead of assuming size of a relocation
4225 is 4 bytes, pick up the size from relocation itself.
4226 (fixup_segment): Do not complain that a value is too small for
4227 marker relocations.
4228
009dc5e1
JL
4229 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
4230 * expr.c (operand): Set sy_used for any symbol used as an operand.
4231 (expr): Likewise for any symbol used in an expression.
4232 * config/tc-hppa.h (tc_frob_symbol): Define. Punt imported
4233 symbols which are never used and absolute symbols which local scope.
4234
f197d7eb
JL
4235 * config/obj-som.h (obj_frob_file): Define.
4236 * config/obj-som.c (obj_som_init_stab_section): Set alignment
4237 of stab sections. Make space for the special stab entry.
4238 (adjust_stab_sections): Adjust the special entry in the
4239 stabs section.
4240 (som_frob_file): New function. Simply calls adjust_stab_sections
4241 for each section.
4242
bca9cf0b
ILT
4243Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4244
4245 * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
4246 (mips_pic, mips_cprestore_offset): New static variables.
4247 (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
4248 Ignore .bgnb and .endb.
4249 (gp_reference): _gp_disp is never addressed off GP.
4250 (macro_build): Ignore macros while searching for insn. For cases
4251 i, j, and o, accept the reloc type as an argument rather than
4252 assuming BFD_RELOC_LO16. Don't try to convert BFD_RELOC_LO16 to
4253 BFD_RELOC_MIPS_GPREL. Added new case a.
4254 (set_at, load_register, macro): Changed calls to macro_build to
4255 pass new argument for i, j and o cases.
4256 (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A. These require
4257 special handling when generating SVR4 PIC code.
4258 (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
4259 rather than hard coded constants.
4260 (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
4261 BFD_RELOC_MIPS_CALL16.
4262 (s_option): Set mips_pic based on .option picN.
4263 (s_abicalls): New function; set mips_pic to 2.
4264 (s_cpload): New function; handle .cpload.
4265 (s_cprestore): New function; handle .cprestore.
4266
4267 * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
4268 .endb and .verstamp, setting them to s_ignore.
4269
d191a03c
JL
4270Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4271
47f45d66
JL
4272 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
4273 field. Define SUBSPACE_DEFINED accessor macro.
4274 (pa_subspace): Allow user to override subspace attributes for
4275 built-in subspaces. Set ssd_defined at the end of fcn -- that
4276 way the attributes can only be changed once. Pass newly allocated
4277 name to is_defined_subspace, not a pointer to the input line.
4278 Fix typo in space/subspace rework.
4279 (is_defined_subspace): Delete unused 2nd arg. All callers changed.
4280
4281 * config/tc-hppa.c (pa_import): If currently in the text segment
4282 and a symbol is imported without type information, set BSF_FUNCTION
4283 for the symbol.
20b39b6f
JL
4284 * write.c (relax_and_size_seg): Correct test to determine if
4285 the section's size was rounded up.
4286
e75acd68
JL
4287 * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
4288 can properly set all the SOM symbol types.
4289 * config/tc-hppa.c (pa_symbol_type): New enum to represent the
4290 symbol types which can be set from an IMPORT/EXPORT statement.
4291 (pa_export_args): Set the pa_symbol_type type based on arguments.
4292 If defined, call obj_set_symbol_type to pass this information on
4293 to the BFD backend.
4294
d191a03c
JL
4295 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
4296 stab section we make.
4297 (s_stab_generic): Likewise.
4298
12696e9c
JL
4299Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4300
65a7f8a6
JL
4301 * Allow backends to override the value of the fake label.
4302 * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
4303 assume backends will define LOCAL_LABEL if anything other than
4304 'L' is used to denote a local label.
4305 (FAKE_LABEL_NAME): New macro. Defines the default name used for
4306 the "fake" label.
4307 * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
4308 and instead simply use the string defined by FAKE_LABEL_NAME.
4309 (operand): Likewise.
4310 * read.c (s_stab_generic): Likewise.
4311 * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
4312 known to be a local label.
4313 * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
4314 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
4315 * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
4316 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
4317 * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
4318 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
4319
6bc14195
JL
4320 Rework space/subspace handling in PA code to fully support
4321 SOM spaces/subspaces.
4322 * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
4323 to control the use of space/subspace name aliases.
4324 (update_subspace): Accept space chain entry for containing space
4325 as a new parameter. All callers changed.
4326 (pa_get_label): Use current_space rather than pa_segment_to_space.
4327 (pa_define_label): Likewise.
4328 (pa_undefine_label): Likewise.
4329 (md_begin): Change into the (possibly modified) text_section.
4330 (pa_parse_space_stmt): Create a new segment/space if create_flag
4331 is true, and the space name is not one of the two predefined spaces.
4332 (pa_subspace): Use current_space rather than a lookup via
4333 pa_segment_to_space. Reset BFD section flags as required by
4334 the .subspace directive. Likewise for the section alignment.
4335 Pass the current space to update_subspace and create_new_subspace.
4336 (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
4337 is true. When not using aliases, create a BFD section for each
4338 subspace encountered. When not using aliases replace the default
4339 text, data, and bss segments with new ones.
4340 (create_new_subspace): When not using aliases each subspace has a
4341 section/segment and subsegments are not needed, so set the subsegment
4342 to zero.
4343
548ea75b
JL
4344 * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
4345 obj_set_section_attributes to pass space attributes to the
4346 BFD backend.
4347 (create_new_space): Likewise.
4348 (create_new_subspace): Likewise for subspace attributes using
4349 obj_set_subsection_attributes.
4350 (update_subspace): Likewise for subspace attributes using
4351 obj_set_subsection_attributes.
4352
0f3b419c
JL
4353 * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
4354 for $TEXT$ and $PRIVATE$ from the default space structure.
4355
9a182533
JL
4356 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
4357 as appropriate for the given type.
4358
62f0841b
JL
4359 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
4360 SOM relocations.
4361
d56f45f5
JL
4362 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
4363 redefinition.
4364
3c87583d
JL
4365 * config/obj-som.[ch]: New files for SOM support. Note SOM
4366 support is not yet complete in GAS or BFD.
4367
12696e9c
JL
4368 * config/ho-hppabsd.h: Delete IO* macros, they are defined in
4369 stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
4370 and string.h.
4371
37ed805e
JL
4372Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4373
12696e9c
JL
4374 * Allow backends to override the section names used for embedded
4375 stabs support. Needed for SOM.
4376 * read.c (STAB_SECTION_NAME): Default the name of the stab section
4377 to ".stab".
4378 (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
4379 (get_stab_string_offset): Is now passed the full name for the
4380 stab string section rather than a name prefix. All references
4381 changed.
4382 (s_stab_generic): New argument for the stab string section name.
4383 all references changed.
4384 (s_xstab): Append "str" to the stab section name to get the
4385 stab string section name.
4386 * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
4387 to stab section name to get the stab string section name. Pass
4388 the full name of the stab string section to get_stab_string_offset.
4389 * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
4390
53c0b9e7
JL
4391 * config/tc-hppa.c (md_begin): Disable "-R" option to fold
4392 textand data segments. Warn user "-R" is unsupported on the
4393 PA.
37ed805e 4394
48ac0c90
JL
4395Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4396
d33ace2e
JL
4397 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
4398 .align and .ALIGN directives.
4399
48ac0c90
JL
4400 * config/tc-hppa.c (pa_space): Do not report an error for a .space
4401 directive which does not define a "well-known" space and does
4402 not include a space number as an argument.
4403
4404 * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
4405 "defined", "loadable", "code_only" and "space_index" fields.
4406 (pa_def_spaces): Correct initialization of the "spnum", "defined",
4407 and "private" fields.
4408
4409 * write.h (struct fix): Add new tc_fix_data field for the various
4410 backends to attach machine dependent fixup information to.
4411 * write.c (fix_new_internal): Initialize new tc_fix_data field.
4412 * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
4413 fx_next fields.
4414 (hppa_find_hppa_fix): Delete unnecessary function. Fix all
4415 callers to get HPPA fixup information from the tc_fix_data field
4416 in the GAS fixup.
4417 (hppa_fix_root): Delete unnecessary variable.
4418 (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
4419
4420 * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
4421 function. Fix all callers.
4422 (subspace_dictionary_chain): Delete unused ssd_start_sym field.
4423
4424 * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
4425 if a particular fixup is adjustable.
4426 * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
4427 perform the real work.
4428
4429 * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
4430 of OBJ_XXX conditionals.
4431 (MAX_RELOC_EXPANSION): Likewise.
4432
4433 * config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
4434 callers. Now returns log2 (N) for positive N which are an exact
4435 power of two or -1 for an error.
4436
4437 * config/tc-hppa.c (pa_callinfo): Range check values provided for
4438 ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
4439 inserting them into the unwind table.
4440
4441 * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
4442 (hppa_gen_reloc_type): New object format dependent macro.
4443 (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
4444 conditional. The code can (and will) be shared between SOM & ELF
4445 formats in the near future.
4446 (cons_fix_new_hppa, md_apply_fix_1): Likewise.
4447 (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
4448 (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
4449 specific call.
4450
4451 * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
4452 to bfd_und_section.
4453
4454 * config/obj-elf.h (obj_elf_version): Add extern prototype.
4455
4456 * configure.in (hppa-*-bsd*): New configuration.
4457 BFD is always used for GAS generating SOM objects.
4458
4459 * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
4460 adjustment is rejected by the target machine.
4461
4462 * config/tc-hppa.c (pa_big_cons): Delete function and its
4463 declaration. All callers changed to use pa_cons.
4464
4465 * write.c (fixup_segment): Fix indention and open/close brace
4466 problem.
4467
4468 From Pete Hoogenboom:
4469 * config/tc-hppa.c (md_atof): Return a NULL on success rather than
4470 an empty string.
4471
3515a504
JL
4472 * config/tc-hppa.c (pa_parse_space_stmt): Advance
4473 input_line_poitner when an invalid argument is encountered.
4474
6121fb06
ILT
4475Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4476
4477 * config/tc-a29k.c (md_begin): When opcodes are mashed together in
4478 the table, require that the one without bit 0x1000000 set come
4479 first. Require further that it be case 'b' or 'P'. The a29k
4480 opcode table already meets these constraints.
4481 (machine_ip): When handling case 'i' or 'A', make sure that the
4482 appropriate opcode really exists by looking at the next entry in
4483 the opcode table.
4484
56c96faa
ILT
4485Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4486
729f4bba
ILT
4487 * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
4488 fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
4489
007ff46b
ILT
4490 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
4491 after a .ent directive.
4492
d1ee509b
ILT
4493 * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
4494 between 32 and 63 for double shift instruction). Do & 0x1f rather
4495 than % 32.
4496 (printInsn): Handle '>'.
56c96faa 4497
fa20b8bf
ILT
4498Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4499
5694ad93
ILT
4500 * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
4501 number in the right place. Untested. Probably does not work for
4502 cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
4503
f3751617
ILT
4504 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
4505 an illegal offset of 0 or -1.
4506
fa20b8bf
ILT
4507 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
4508 section to a longword boundary.
4509
4da7942d
KR
4510Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
4511
4512 * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
4513
4514 From Jeff Law:
4515 * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
4516 HPPA_R_ADDEND.
4517
fd4b7c25
KR
4518Mon Oct 25 14:06:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4519
4520 * config/tc-sparc.c (sparc_ip): Fix up membar argument handling.
4521
24934035
SC
4522Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
4523
8e5afd4f
SC
4524 * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
4525 address. (md_assemble): Make error handling a bit more graceful.
4526 (md_apply_fix): Don't warn on non aligned displacement.
fd4b7c25 4527
24934035
SC
4528 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
4529 aspects of lda.
4530
84678d16
KR
4531Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4532
4533 * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
4534 as.info* even if they're in $(srcdir) (e.g., for FSF
4535 distributions).
4536
4537 * write.c (write_relocs): For relocs that are pc_relative and
4538 pcrel_offset and not partial_inplace, adjust reloc->addend to
4539 compensate for a bfd_perform_relocation bug.
4540
4541 * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
4542 * config/tc-sparc.c: Ditto.
4543 (tc_gen_reloc): Include fx_offset for pcrel fixups.
4544
52aa70b5
JW
4545Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
4546
4547 * tc-mips.c (md_pseudo_table): Add dword pseudo op.
4548
ab0751c8
DZ
4549Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4550
4551 * messages.c: replaced all variables called Format with 'format',
4552 for consistency throughout
4553
4554 * configure.in: handle mips*- instead of mips, mips*el for little
4555 endian configurations
4556
8efed14f
ILT
4557Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4558
4559 * input-scrub.c (physical_input_file, logical_input_file,
4560 physical_input_line, logical_input_line): Made static.
4561 (as_where): Return current file name and line number, don't print
4562 them out.
4563 * messages.c (as_show_where): New static function. Other
4564 functions use it instead of as_where.
4565 (as_bad_internal): New static function.
4566 (as_bad): Use as_bad_internal.
4567 (as_bad_where): New function, like as_bad but taking a file name
4568 and line number.
4569 * as.h (as_bad_where): Declare.
4570 (as_where): Change prototype for new arguments.
4571 * write.h (fixS): Added fields fx_file and fx_line.
4572 * write.c (fix_new_internal): Save file and line number in fix.
4573 (fixup_segment): Use as_bad_where, not as_bad.
4574 * input-file.c (f_in, file_name): Made static.
4575 * cond.c (struct file_line): Just use file and line fields.
4576 (s_else): Use as_where and as_bad_where, not get_file_line and
4577 set_file_line.
4578 (get_file_line, set_file_line): Removed.
4579 * listing.c (listing_newline): Use as_where.
4580 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
4581 * config/obj-ecoff.c (add_file): Use as_where.
4582 * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
4583 * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
4584 * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
4585
efa0c22e
KR
4586Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
4587
4588 * config/tc-m68k.h: Don't define REGISTER_PREFIX or
4589 OPTIONAL_REGISTER_PREFIX if either is already defined.
4590
4591 * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
4592
4593 * configure.in: Set bfd_gas for all sparc targets. Added facility
4594 for keeping or rejecting configurations still under development;
4595 default is to assume production environment, and reject configs
4596 still being worked on. Mark Elf configurations (except sparc and
4597 i386) as developmental. Deleted cases matching some generic names
4598 in favor of more specific names. (E.g., when we get Alpha
4599 support, we'll still only support VMS for Vax.)
4600
4601 * config/tc-sparc.h (md_end): New macro.
4602 * config/tc-sparc.c (md_end): Function deleted.
4603 (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
4604 version compiling. All sparc targets will use bfd now.
4605 * tc.h (md_end): Don't declare if it's defined as a macro.
4606
4607 Changes from Jeff Law and Peter Hoogenboom:
4608
4609 * read.c (next_char_of_string): Limit octal character constants to
4610 three digits.
4611
4612 * config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
4613 against placing additional object-file dependent code here. Warn
4614 against contaminating all of GAS with the internals of tc-hppa.c
4615 through inclusion of tc-hppa.h. Delete all forward declarations
4616 for functions only used within tc-hppa.c, likewise for structures,
4617 variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
4618 conditional code in a few small places.
4619
4620 * config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
4621 structures, global variables, forward declarations together.
4622 Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
4623 conditional code -- try to group conditional code together
4624 into a few places. Make all functions and variables which
4625 are only used within tc-hppa.c static. PARAMize all functions.
4626 Add comments to functions. Delete unused functions, variables,
4627 #defines, etc. Delete unused members within structures. Delete
4628 ldil;ble hacks -- it is believed they were installed to work
4629 around old gas bugs. Avoid using mixed case for local
4630 functions, variables, and structures. Fix formatting problems
4631 not found by GNU-indent. Add FIXME notices for things which
4632 should be worked on the near future. Delete lots of old
4633 useless (1.36 PA-SOM) code.
4634
4635 * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
4636 field of the fixS structure. Needed to build unwind
4637 descriptors correctly.
4638
4639 * write.c: (fixup_segment): Allow expressions such as
4640 sym1-sym2+const as long as sym2 is $global$.
4641
4642 * write.c (adjust_reloc_syms): Provide a hook so that a target
4643 cpu configuration can reject certain relocation reductions.
4644 * tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
4645 which do not involve function symbols.
4646
4647 * config/tc-hppa.h: Reindent with GNU-indent. Delete references
4648 to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
4649 STAB_FIXUP macro.
4650 * config/tc-hppa.c: Likewise.
4651
4652 * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
4653 of elf32_symbol_type.
4654 (pa_export_args): Likewise.
4655 (elf_hppa_final_processing): Likewise.
4656 (pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
4657 anymore?)
4658 (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
4659 ore.
4660
4661 * config/tc-hppa.c: (md_section_align): Align all sections to
4662 a multiple of the section alignment rather than always a
4663 multiple of 8.
4664
4665 * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
4666 bits are zero (eg they specify no relocations), then do not even
4667 bother adding their entries to thesymextn section.
4668
7766838e
ILT
4669Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4670
4671 * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
4672 option, which is used by the SunOS make default .s.o rule.
4673
fd4b7c25
KR
4674Wed Oct 20 12:26:33 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4675
4676 * config/tc-sparc.c (sparc_ip, label "immediate"): Convert relocs
4677 operating on upper 32 bits of immediate constants to lower-half
4678 relocs with adjusted constants.
4679
dff60b7d
ILT
4680Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4681
4682 * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
4683 m68k_aout_machtype.
4684 * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
4685 (m68k_aout_machtype): New variable, if OBJ_AOUT.
4686 (md_assemble): Initialize m68k_aout_machtype based on
4687 current_architecture, if OBJ_AOUT.
4688 (md_parse_option): Remove obsolete reference to omagic.
4689
c17cd709
ILT
4690Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4691
dd3f1f76
ILT
4692 * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
4693 (s_option): Ignore .option O* and .option pic*.
4694 (s_ent): Skip whitespace between symbol and optional digit.
dff60b7d 4695 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 4696
54508138
ILT
4697 * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
4698 characters in state 6.
4699 * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
4700 hexidecimal digits.
4701
c17cd709
ILT
4702 * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
4703 for ELF by hacking around bizarre bfd_perform_relocation behaviour
4704 that I don't dare change.
4705
ad660eb1
ILT
4706Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
4707
4708 * config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
4709 call strchr for each character to see if it is a special char,
4710 instead add a second loop over special_chars. Set alignment
4711 of text, data and bss sections to 4.
4712 (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
4713 used again.
4714 (reloc): Don't return 8 and 16 bit non-PC relative relocations on
4715 ELF, since the ELF object format does not have these type of
4716 relocations. Change the abort into as as_bad and return
4717 BFD_RELOC_NONE to silence compiler warnings.
4718 (md_assemble): Keep track of the instruction size. Allow white
4719 space between the $ and the constant for compatibility with older
4720 gases and other assemblers.
4721 (i386_operand): Skip spaces between $ and expression.
4722 (tc_gen_reloc): Don't allow anything but 32 bit relocations on
4723 ELF. Convert abort into an as_bad and assert into as_fatal.
4724
132239bf
KR
4725Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4726
4727 * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
4728 sub_symbolP is in the current segment, convert to a PC-relative
4729 fixup and discard the symbol.
4730
b7cbb59f
ILT
4731Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4732
463b1851
ILT
4733 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
4734 for st_StaticProc just like st_Proc.
4735
b7cbb59f
ILT
4736 * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
4737 so that OBJ_BOUT doesn't forget to adjust all the fragments in the
4738 .bss section.
4739
f2a663d3
ILT
4740Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4741
4742 * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
4743 (mips_regmask_frag): New static variable, if OBJ_ELF.
4744 (md_begin): If OBJ_ELF, create .reginfo section and set
4745 mips_regmask_frag to a frag.
4746 (mips_elf_final_processing): New function, if OBJ_ELF. Set
4747 mips_regmask_frag to register mask information.
4748 * config/tc-mips.h (elf_tc_final_processing): New macro, defined
4749 if OBJ_ELF.
4750
99024047
KR
4751Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4752
2145a183
KR
4753 * messages.c (as_fatal): Use myname when printing messages.
4754
99024047
KR
4755 * config/tc-i960.c (md_begin): Use null pointer, not empty string,
4756 as initial "return" value in case hashing isn't needed.
4757
4758 * config/tc-a29k.c (md_atof): Return null, not empty string, on
4759 success.
4760 * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
4761 config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
4762 config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
4763 config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
4764
4765Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
4766
4767 fix for pr 3571
4768 * config/tc-h8300.c (get_specific): Special action if 8 bit
4769 address seen. (check_operand): Don't complain if truncating top
4770 bits of an 8 bit address. (build_bytes): Allow an immediate and
4771 an absolute in the same insn.
4772
f37449aa
ILT
4773Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4774
4775 * write.c (write_contents): Don't crash if seginfo is NULL.
4776
4777 * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
4778 by modifying .reginfo section, not by directly modifying BFD
4779 backend data.
4780
fec552ce
DZ
4781Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4782
4783 * config/ho-sunos.h: remove extern time declaration
4784
8d3be803
KR
4785Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4786
4787 * messages.c (as_fatal): Do mention that it's the assembler that
4788 got the fatal error.
4789
88225433
ILT
4790Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4791
1aa6938e
ILT
4792 * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
4793 hold register masks.
4794 (md_begin): Initialize them to zero.
4795 (append_insn): Update mips_gprmask and mips_cprmask. Also add
4796 register variables pinfo and prev_pinfo.
4797 * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
4798 * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
4799 and cprmask from mips_gprmask and mips_cprmask.
4800
88225433
ILT
4801 * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
4802 * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
4803 (various): Change all references to GP references to apply if
4804 GPOPT, not if OBJ_ECOFF.
4805 (s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
4806 instead of .rdata. If OBJ_ELF, set section flags for .rodata and
4807 .sdata sections.
4808 (s_frame, s_loc, s_mask): Comment out entire functions, rather
4809 than just body. They're not used anyhow.
4810 * configure.in: Set cpu_type to mips for mips*. Accept
4811 mips-*-elfl* and mips-*-elf*.
4812
17a0da33
ILT
4813Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
4814
4815 * config/obj-elf.c (obj_elf_common): Allow the alignment field to
4816 not be specified.
4817
80aab579
ILT
4818Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4819
abdad6bc
ILT
4820 * config/tc-mips.c (cons_fix_new_mips): New function. Turn
4821 BFD_RELOC_64 into BFD_RELOC_32.
4822 * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
4823 (cons_fix_new_mips): Declare.
4824
80aab579
ILT
4825 Changes to let cons handle bignums like general expressions.
4826 * expr.h (expressionS): New field X_unsigned.
4827 * expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
4828 unary minus case.
4829 (expr) Fix typo resultP to right if missing operand. Set
4830 X_unsigned to 1 when building new expression.
4831 * read.c (potable): Make "octa" and "quad" call cons, not
4832 big_cons.
4833 (cons): Handle bignums. If given an O_constant (small integer) to
4834 fill a big space, turn it into a bignum.
4835 (parse_bitfield_cons): Set X_unsigned field.
4836 (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
4837 Removed.
4838 * read.h (big_cons): Remove prototype.
4839 * symbols.c (resolve_symbol_value): Don't give a warning if a
4840 symbol in expr_section can not be resolved.
4841 (S_SET_VALUE): Clear X_unsigned.
4842 * write.c (write_object_file): If resolve_symbol_value failed on a
4843 symbol we are writing out, give a warning.
4844 * config/tc-h8500.c (parse_reglist): Set X_unsigned.
4845 * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
4846 call pa_cons, not pa_big_cons.
4847 (pa_big_cons): Remove.
4848 * config/tc-hppa.h (pa_big_cons): Remove declaration.
4849 * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
4850 not big_cons.
4851
4852Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4853
4854 * doc/as.texinfo (Copying): new node, to handle the recent changes
4855 in the texinfo/gpl.texinfo file
4856
4f5666c5
ILT
4857Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4858
4859 * read.c (big_cons): Handle "0" correctly.
4860
4861 * config/tc-mips.c (md_begin): Set target_big_endian correctly.
4862
8208ab5a
KR
4863Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4864
4865 * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
4866 have pc-relative fixup.
4867 (md_parse_option): Move "-k" case down near "-pic" case.
4868
31909d40
KR
4869 * configure.in: Alphabetize list of cpu type alternatives. Enable
4870 OS values of "linux*elf*" and "linux*coff*" to select those
4871 formats, with linux emulation. Don't bother checking for upper-
4872 or mixed-case versions of "ose".
4873
8208ab5a
KR
4874Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
4875
4876 * config/z8k.c (md_pseudo_table): add "unseg".
4877
6cc87fbb
RP
4878Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
4879
4880 * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
4881 found while extending the dissassembler.
4882
8f3956b3
SS
4883Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
4884
4885 * configure.in: Split i386 LynxOS out from other coff targets,
4886 add a specific Lynx emulation.
4887 Add m68k LynxOS target.
4888 * config/tc-i386.c: Define specific Lynx target format.
4889 * config/tc-m68k.c: Define specific Lynx target format.
4890 * config/te-lynx.h: New file.
4891
4892 * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
4893 "coff-{i386,m68k}" if TARGET_FORMAT already defined.
4894 (INIT_STAB_SECTION): Define.
4895 * config/obj-coffbfd.c: Include <time.h>.
4896 (write_object_file): Look for .stab sections and call
4897 adjust_stab_section.
4898 (adjust_stab_section): New function, fills in the first symbol
4899 of a stab section with number of symbols and string table size.
4900 (obj_coff_init_stab_section): New function, creates the initial
4901 symbol for a stab section.
4902
43029a8f
KR
4903Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4904
4905 * config/atof-vax.c (md_atof): Return null on success instead of
4906 empty string.
4907 * config/atof-tahoe.c (md_atof): Ditto.
4908 * read.c (float_cons): Expect a null pointer for success, not an
4909 empty string.
4910
4911 * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
4912 on success, instead of empty string. All callers changed.
4913
4914 * config/tc-vax.c: Use PARAMS in declarations.
4915 (vip_op): Use NULL instead of empty string for success in error
4916 and warning fields.
4917
b7318ac4
KR
4918Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4919
b9790da8
KR
4920 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
4921 in different defined segments.
4922
b7318ac4 4923 * write.c (relax_segment): Localize "aim" variable. If
132239bf 4924 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
4925 (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
4926 segment, convert to a PC-relative fixup and discard the symbol.
4927
4928 * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
4929 (md_parse_option) [TE_SUN3]: Set it for "-k".
4930 (m68k_ip): Generate proper fixup for mode 7.3.
4931 * config/tc-m68k.h (DIFF_EXPR_OK): Define.
4932
c996b199
KR
4933Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4934
4935 * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
4936 earlier in the file.
4937 (insop, add_exp): Now defined as functions, for readability.
4938 (insop): Now takes two arguments; callers changed.
4939
6d6b97b7
RP
4940Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
4941
58f3e8a9
RP
4942 * config/tc-m88k.c (get_o6): new function.
4943 (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
4944 get_vec9, getval, get_pcr, calcop, match_name): make static and
4945 prototype.
4946 (s_file): remove extraneous forward decl.
4947 (md_begin): add const to retval decl.
4948 (calcop): cope with instructions without arguments. Handle 'o'
4949 type argument, the o6 field of the prot insn.
4950 (md_estimate_size_before_relax): return a dummy value.
4951
6d6b97b7
RP
4952 * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
4953 in bits 10 through 7. flt.[dxs]s requires an r register in the
4954 second argument. New instruction lda.x. New instruction muls
4955 (alias for mul).
4956
4957Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4958
4959 * Makefile.in (distclean): Recurse like clean.
4960 * doc/Makefile.in (distclean): New target.
4961
4962 * config/tc-mips.c (md_begin): Set BFD architecture and machine
4963 based on MIPS ISA level.
4964
4965Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4966
4967 * as.c (main): "exhausted", not "exhuasted".
4968
4969 * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
4970 * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
4971 (write_object_file): Never strip symbols with sy_used_in_reloc
4972 set.
4973
4974 * config/obj-elf.c (obj_elf_section): Rewrote to handle both
4975 Solaris and SVR4 style .section pseudo-ops.
4976 (obj_elf_ident): Set SEC_READONLY for .comment section.
4977 * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
4978 generating a reloc, don't apply a fix.
4979
6110df28
KR
4980Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4981
4982 * config/obj-coffbfd.c (relax_align): Now static.
4983
9bd0d649
ILT
4984Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4985
4986 * read.c (get_stab_string_offset): Make non-static. Make
4987 arguments const. Don't align strings to 4 byte boundaries.
4988 * read.h: Declare get_stab_string_offset.
4989 * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
4990 SEC_LOAD for progbits section.
4991 (obj_elf_init_stab_section): New function.
4992 (adjust_stab_sections): Add casts to avoid warnings.
4993 * config/obj-elf.h (INIT_STAB_SECTION): Call
4994 obj_elf_init_stab_section.
4995 (OBJ_PROCESS_STAB): Removed definition.
4996
80903ca6
ILT
4997Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4998
4999 * config/obj-elf.h (S_GET_SIZE): Define.
5000 (obj_frob_forward_symbol): Define.
5001 * config/tc-i386.c (line_comment_chars): Initialize in all cases.
5002
13998021
ILT
5003Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5004
9bd0d649 5005 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
5006 RELOC_EXPANSION_POSSIBLE.
5007 * config/obj-elf.c (obj_elf_section): Only set flags when first
5008 creating the section.
5009
5010Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5011
5012 * config/tc-mips.c (append_insn): Don't swap a trap instruction
5013 with a branch.
5014
4f0bccc7
ILT
5015Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5016
90397ff8
ILT
5017 * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
5018 set previous_section and previous_subsection and then call s_data
5019 and s_text, respectively.
5020 (obj_pseudo_table): Add data and text.
5021 (obj_elf_section): Add SEC_LOAD to default initialization of
5022 flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
5023 SEC_ALLOC for "alloc" string. Don't bother trying to find the
5024 section; just use subseg_new.
5025
4f0bccc7
ILT
5026 * read.c (change_to_section): Removed. This is now done by
5027 subseg_new.
5028 (get_stab_string_offset): Rearranged somewhat. Create the section
5029 using subseg_new. Store the string index in seg_info, rather than
5030 in a static variable. Force the first string to be empty. Use
5031 frag_more rather than FRAG_APPEND_1_CHAR.
5032 (s_stab_generic): Rewrote.
5033 * subsegs.h (segment_info_type): Added stabu union.
5034 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
5035 * config/obj-aout.c: Don't include aout/stab_gnu.h.
5036 (obj_aout_stab, obj_aout_desc): Removed.
5037 (obj_pseudo_table): Removed desc and stabX entries.
5038 * config/obj-bout.c: Same changes as config/obj-aout.c.
5039 * config/obj-bout.h (S_SET_TYPE): Define.
5040 (tc_bout_fix_to_chars): Declare.
5041 * config/obj-coff.c (obj_coff_stab): Removed.
5042 (obj_pseudo_table): Removed desc and stabX entries.
5043 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
5044 * config/obj-coffbfd.c (current_stab_symbol): Removed.
5045 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
5046 n_other, n_desc and n_value fields.
5047 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
5048 (MAKE_STAB_SYMBOL): Removed.
5049 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
5050 Changed arguments and removed parsing code.
5051 (obj_pseudo_table): Removed stabX entries.
5052 * config/obj-ecoff.h (ecoff_stab): Declare.
5053 (OBJ_PROCESS_STAB): Define.
5054 * config/obj-elf.c: Don't include aout/stab_gnu.h.
5055 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
5056 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
5057 Removed.
5058 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
5059 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
5060 set SEC_LOAD for .note section.
5061 (adjust_stab_sections): Get frag pointer from seg_info, rather
5062 than looking through frags.
5063 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
5064 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
5065 Define.
5066 * config/obj-vms.c (obj_aout_stab): Removed.
5067 (obj_pseudo_table): Removed stabX entries.
5068 * config/obj-vms.h (S_SET_TYPE): Define.
5069
5070 * as.h: Declare listing.
5071 * read.c: Don't declare listing.
5072 (emit_expr): Cast fix_new_exp argument.
5073 (parse_bitfield_cons): Correct printf format.
5074 * symbols.c (symbol_new): Add cast to avoid warning.
5075 * write.h: Declare text_last_frag and data_last_frag.
5076 * config/obj-bout.c (obj_bout_line): Added dummy argument.
5077 * config/obj-coffbfd.c: Add some casts to avoid warnings.
5078 * config/tc-a29k.c: Likewise.
5079 * config/tc-i960.c: Likewise. Also fully bracket structure
5080 initializations, fix printf formats, and remove unused variables.
5081
604633ae
ILT
5082Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5083
5084 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
5085 * struc-symbol.h: Declare verify_symbol_chain and
5086 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
5087 * symbols.c (verify_symbol_chain): Removed useless expression.
5088 * write.c (headers, the_object_file): Only use if not
5089 BFD_ASSEMBLER and not BFD.
5090 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
5091 not BFD.
5092 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
5093 not OBJ_AOUT).
5094 * write.h: Declare relax_segment.
5095 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
5096 static.
5097 (stack_top): Commented out, since it's not used.
5098 Fixed up pseudo-op functions to take an ignored int argument.
5099 (size_section): Added default BAD_CASE to switch.
5100 Changed bzero calls to memset.
5101 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
5102 (s), not on s itself.
5103 * config/tc-a29k.c (s_use): Take ignored int argument. Only
5104 define if OBJ_COFF is not defined.
5105 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
5106 argument signed again.
5107 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
5108 argument.
5109 (m68k_ip): Fully bracket initialization of archs.
5110 Correct several formats for __LINE__ to be %d rather than %s.
5111 (init_table): Fully bracket initialization.
5112 Cast values larger than 0x7f assigned to fr_opcode to char.
5113
5114 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
5115 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
5116 section name, and subseg_set always takes a segT. Changed all
5117 callers as appropriate.
5118 * config/obj-coffbfd.c (change_to_section): Renamed to
5119 obj_coff_add_segment. Corrected. Made callers use subseg_new.
5120 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
5121 Define.
5122
54e3e909
DE
5123Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
5124
5125 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
5126
58d4951d
ILT
5127Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5128
5129 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
5130
5131 Gcc lint.
54e3e909 5132 * Added a number of casts to function calls.
58d4951d
ILT
5133 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
5134 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
5135 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
5136 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
5137 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
5138 (obj_elf_section), config/tc-i386.c (parse_register),
5139 config/tc-sparc.c (isoctal, s_proc): Cast char
5140 array indices to unsigned char.
54e3e909
DE
5141 * app.c (process_escape): Make static. Add prototype. Change
5142 argument from char to int.
58d4951d
ILT
5143 * as.c: Include output-file.h for prototypes. Comment out unused
5144 function got_sig.
5145 * Makefile.in (as.o): Depend on output-file.h.
5146 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
5147 (pseudo_typeS): Add prototype to poc_handler field.
5148 (print_version_id): Add prototype.
5149 (xmalloc, xrealloc): Change size arguments to unsigned long.
5150 (do_scrub_next_char): Add prototypes for function arguments.
5151 (had_errors, had_warnings, scrub_from_file): Remove duplicate
5152 declarations.
5153 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 5154 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
5155 * expr.c (floating_constant, integer_constant): Make static. Add
5156 prototypes.
5157 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 5158 * frags.h: Add prototype for frag_init.
54e3e909
DE
5159 * hash.h, hash.c: Change hash values from char * to PTR, make hash
5160 strings const, make returned error strings const char *. Added
5161 prototypes for functions.
5162 * input-file.h, input-file.c (input_file_buffer_size): Return
5163 unsigned int.
5164 * input-scrub.c (buffer_length): Make unsigned.
5165 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
5166 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
5167 long and use %lx. Print name of segment rather than address of
5168 structure.
54e3e909
DE
5169 (listing_list, listing_title): Change argument to int.
5170 (listing_eject, listing_flags, listing_psize): Add int argument.
5171 * listing.h: Corresponding declaration changes.
5172 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
5173 shadowing.
58d4951d 5174 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
5175 offsetT. Add prototype for next_char_of_string. Various
5176 prototype changes.
58d4951d 5177 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
5178 (pobegin): Make errtxt const. Make new_length, tmp_len and num
5179 unsigned.
5180 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
5181 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
5182 Change all callers.
58d4951d
ILT
5183 (s_comm): Change temp from valueT to offsetT. Cast to long when
5184 printing and use %ld (only for error messages anyhow).
54e3e909
DE
5185 (s_long, s_int): Remove unused functions.
5186 (cons): Change argument to int.
58d4951d
ILT
5187 (emit_expr): Use %lx when printing longs.
5188 (get_absolute_expression): Return offsetT, not long.
5189 (get_stab_string_offset): Comment out unless
5190 SEPARATE_STAB_SECTIONS.
5191 (s_stab_generic): Remove unused offset. Define seg_is_new only
5192 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 5193 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 5194 * symbols.c: Remove nested comment.
54e3e909 5195 (symbol_new): Rename value to valu.
58d4951d 5196 (colon): Use %ld and cast to long in error message.
54e3e909
DE
5197 * symbols.h: Remove duplicate verify_symbol_chain declaration.
5198 * tc.h: Remove unused md_emit_relocations declaration.
5199 (tc_gen_reloc): Add declaration.
58d4951d
ILT
5200 * write.c (cvt_frag_to_fill): Change first argument name depending
5201 on BFD_ASSEMBLER.
54e3e909
DE
5202 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
5203 declarations. Make n unsigned.
5204 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
5205 to f to avoid shadowing.
58d4951d
ILT
5206 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
5207 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 5208 punt_it if they will be used. Make i and n unsigned.
58d4951d 5209 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 5210 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
5211 * config/obj-aout.h: Remove nested comment. Add prototype for
5212 obj_aout_frob_symbol.
54e3e909
DE
5213 (obj_aout_line, obj_aout_desc): Add int argument.
5214 * config/obj-ecoff.c: Changed build routines to use an unsigned
5215 offset.
5216 (add_string): Make len unsigned long.
58d4951d
ILT
5217 (obj_ecoff_stab): Use %lu in error message.
5218 * config/obj-elf.c (obj_elf_common): Comment out unused label
5219 allocate_bss.
5220 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
5221 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
5222 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
5223 obj_elf_line, obj_elf_previous): Add int argument.
5224 (obj_elf_write_symbol_p): Make static.
5225 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
5226 * config/tc-hppa.h: Remove declarations of functions declared in
5227 read.h.
54e3e909
DE
5228 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
5229 (s_bss): Add int argument.
5230 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
5231 (dummy): Remove unused function.
5232 (md_assemble): Rename local o to op to avoid shadowing.
5233 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
5234 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
5235 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
5236 %ld in error messages.
54e3e909
DE
5237 * config/tc-sparc.c: Remove duplicate declarations.
5238 (getExpression): Rewrite condition to avoid empty conditional
5239 body.
5240 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
5241 argument.
58d4951d 5242
892a3ff1
KR
5243Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5244
5245 Changes from Jeff Law:
5246
5247 * config/tc-hppa.c (md_assemble): Fix typo.
132239bf 5248 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
5249 unsigned values being < 0, it can't happen.
5250 (is_same_frag): Return a value in recursive call case.
5251 (pa_callinfo): Delete unused variables and labels.
5252 (pa_comm): Likewise.
5253 (pa_copyright): Likewise.
5254 (pa_export): Likewise.
5255 (pa_import): Likewise.
5256 (pa_param): Likewise.
5257 (pa_space): Likewise.
5258 (pa_subspace): Likewise.
5259
abdd08c9
ILT
5260Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5261
5262 * read.c (get_stab_string_offset, s_stab_generic): If
5263 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
5264
414b2c8f
ILT
5265Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5266
5267 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
5268 default flag values.
5269
4064305e
SS
5270Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
5271
1531386b
SS
5272 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
5273
4064305e
SS
5274 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
5275 various stab-related directives.
5276 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
5277 * write.c: (merge_data_into_text): Fix ifdef tangle.
5278 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
5279 for stab reader to use.
5280 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
132239bf 5281 stab reader, macros to access.
4064305e 5282
81b407c9
KR
5283Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5284
fd4b7c25
KR
5285 * config/obj-elf.h (elf_symbol): No longer special-cased on
5286 sparcv9, since elf_symbol_type is now independent of size.
5287
81b407c9
KR
5288 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
5289
5290 * config/tc-hppa.h (struct default_subspace_dict, struct
5291 default_space_dict): Field "sort" is now unsigned char.
5292
5293 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
5294 columns for easier reading.
5295 (bcmp, index): Deleted USG-specific definitions. Should be dealt
5296 with in ho-*.h, or in libiberty. Changed mention of index to
5297 strchr.
5298 (label_symbolP, label_symbol_defined, callinfo_found,
5299 within_entry_exit, exit_processing_complete, within_procedure,
5300 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
5301 label_symbols_rootP, pa_get_label, pa_label_is_defined,
5302 pa_undefine_label): Now static.
5303 (movers): Now const, in addition to pointing to const data.
5304 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
5305 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
5306 Delete declarations.
5307
5308 Merged more changes from Jeff Law and Pete Hoogenboom:
5309
5310 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
5311 entries for .stab and .stabstr.
5312
5313 * config/obj-elf.c: (elf_stab_symbol_string): Set the
5314 SEC_LOAD attribute for the .stabstr section.
5315 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
5316 .stab section.
5317 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
5318 (obj_elf_stab_generic): Incorrect byte count on call to
5319 md_number_to_chars function.
5320
5321 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
5322 argument relocation bits too.
5323
5324 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
5325 characters which should appear unaltered in the output string (for
5326 example an escaped double-quote).
5327
5328 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
5329 initialize name.
5330 (pa_parse_neg_cmpsub_cmpltr): Likewise.
5331 (pa_parse_nonneg_add_cmpltr): Likewise.
5332 (pa_parse_neg_add_cmpltr): Likewise.
5333
5334 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
5335 for now.
5336 (cons_fix_new_hppa): Likewise.
5337 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
5338 prototype.
5339
5340 * config/tc-hppa.c: Include libhppa.h.
5341
132239bf 5342 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
5343 found in libhppa.h.
5344
5345 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
5346 OBJ_ELF conditionals.
5347 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
5348 on the PA.
5349
1849d646
ILT
5350Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5351
ff3a5c18
ILT
5352 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
5353 (macro): Use "z,s,t" for div instructions to match corresponding
5354 change in opcode table.
5355 (mips_ip): Added 'z'--must be zero register.
1849d646 5356
e96d50d0
KR
5357Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5358
5359 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
5360 tc_gen_reloc correctly.
5361
5362 * configure.in: Use "case" instead of "if" when possible. Rewrote
5363 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
5364
56607c4e
RP
5365Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5366
5367 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
5368 section type of data. 'd' seems to be used for m88k.
5369
5370Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5371
5372 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
5373 s_mips_space): Set insn_label to NULL to avoid changing it at the
5374 next .align statement.
5375 (append_insn): Don't swap jal with instruction that sets the
5376 register that jal sets.
5377
37d719bb
RP
5378Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5379
5380 * configure.in: recognize m88110.
5381
28344993
KR
5382Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5383
5384 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
5385 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
5386 not be on for .hppa_unwind.
5387 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
5388 (pa_param): New function to handle .PARAM directives.
5389 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
5390 functions. Handle '|' for movb; allow movb,n.
5391 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
5392 version. Handle cases where no completer exists for
5393 comb,n or addb,n.
132239bf 5394 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
5395 completer exists for comb,n or addb,n. Make logic
5396 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
5397 (pa_parse_nonneg_add_cmpltr): Likewise.
5398 (pa_parse_neg_add_cmpltr): Likewise.
5399 * tc-hppa.h (pa_param): Declare.
5400
5401Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5402
5403 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
5404 Added forward declaration.
5405
5406 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
5407
5408 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
5409 call to elf_tc_make_sections.
5410 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
5411 attribute.
5412
5413 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
5414 handle symbol extension sections.
5415
5416 * config/tc-hppa.c (pa_build_symextn_section): New function to
5417 create a symbol extension section.
5418 (pa_export_args): Make call to pa_build_symextn_section.
5419 (hppa_tc_symbol, hppa_tc_make_sections,
5420 hppa_tc_make_symextn_section): New functions.
5421 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
5422 macros.
5423
5424 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
5425 BFD_ASSEMBLER branch as well.
5426
5427 * config/tc-hppa.h: If ELF is the target object format, define
5428 some ELF- and hppa-specific types and constants.
5429
5430 * config/tc-hppa.c (getExpression): Fix a typo.
5431
5432 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
5433 if a `=' is part of an instruction.
5434 (read_a_source_file): Handle case where end-of-line markers are
5435 also used within instructions.
5436 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
5437
5438 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
5439 out-of-range branches/'calls using "bl" or calls which may need
5440 argument relocation stubs. Do not need/keep relocations for
5441 conditional branches.
5442 (elf_hppa_final_processing): Fix calculation of function size.
5443
5444 * config/obj-elf.c (obj_elf_version): Mark .note section as
5445 READONLY.
5446
5447 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
5448 address of exp, to expression.
5449 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
5450 (md_apply_fix_1): Delete unwanted comments.
5451 (process_exit): Symbols marking the end of a function are always
5452 BSF_LOCAL.
5453
5454 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
5455 (pa_space): Declare and initialize gdb_section.
5456
5457 * config/obj-elf.c (elf_frob_file): Change
5458 elf_tc_final_processing_hook to elf_tc_final_processing.
5459
5460 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
5461 argument type declarations.
5462 (getExpression): Fix typo.
5463 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
5464 (elf_hppa_final_processing): Likewise. Name changed from
5465 elf_hppa_final_processing_hook.
5466 (start_symbol_root, start_symbol_last): Deleted.
5467
5468 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
5469
5470 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
5471 avoid changing include ordering.
5472
5473 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
5474
6e8dda9c
ILT
5475Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5476
5477 * config/tc-mips.c (set_at): Added unsignedp argument. Use
5478 load_register.
5479 (set_at_unsigned): Removed; changed callers to use set_at.
5480 (load_register): Removed unused ip argument. Changed callers.
5481 (append_insn): Don't swap branch and branch likely.
5482 (macro_build): Handle 'u'.
5483 (load_register): Handle 64 bit constants.
5484 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
5485 support 64 bit constants.
5486 (mips_ip): Use hex constants in range checks for clarity.
5487 (md_number_to_chars): Support 8 byte values.
5488
1e35cd8f
RP
5489Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5490
5491 * config/tc-m88k.h: updated copyrights.
5492 (TC_CONS_RELOC): declare to be RELOC_32.
5493
8358c818
ILT
5494Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5495
5496 * config/tc-mips.c (mips_isa): New static variable.
5497 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
5498 check macros. Set text alignment and GP size here.
5499 (md_assemble): Don't set text alignment and GP size here.
5500 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
5501 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
5502 a NOP after a branch likely.
5503 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
5504 >= 2.
5505 (macro): Support r6000 and r4000 macros.
5506 (mips_ip): Check insn ISA level against mips_isa before using it.
5507 Added 'x' case for ignored register.
5508 (md_parse_option): Handle -mipsN and -mcpu=XX.
5509
c8d4cda1
KR
5510Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5511
5512 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
5513
5514Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5515
5516 * config/tc-sparc.c (s_local): Function moved and renamed...
5517 * config/obj-elf.c (obj_elf_local): ...to here.
5518 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
5519 (obj_pseudo_table): Move handling of ".local".
5520
5521 * tc.h (md_parse_option): Don't declare if defined as a macro.
5522
5523 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
5524 BFD_RELOC_NONE.
5525 (md_parse_option): New macro, converted from function.
5526 * config/tc-i386.c (md_parse_option): Function deleted.
5527 (comment_chars) [OBJ_ELF]: Include "/".
5528 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
5529 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
5530 warning.
5531 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
5532 Call reloc for fix_new type, or use correct enumerator, instead of
5533 always using NO_RELOC.
5534 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
5535 tests for valid section.
5536 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
5537 address.
5538 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
5539 symbol, compensate for location of reloc.
5540 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
5541 to return zero.
5542
4915cac0
KR
5543Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5544
5545 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
5546 (obj_elf_weak): New function.
5547 (obj_pseudo_table): Handle ".weak".
5548 (obj_elf_section): If section directive includes a string, ignore
5549 it for now. Accept "progbits" flag.
5550 (obj_elf_type): Accept `@' before flag name.
5551
5552 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
5553 condition.
5554 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
5555 than checking for bfd_com_section directly.
5556 (fixup_segment): Simplify range check.
5557 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
5558 test.
5559
5560 * symbols.h (S_SET_WEAK): Declare.
5561 * symbols.c (S_SET_WEAK): New function.
5562 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
5563 it's not a separate flag any more. Clear BSF_WEAK.
5564
5565 * read.c (potable): Treat "string" like "asciz".
5566
19ed8960
ILT
5567Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5568
5569 * config/tc-mips.c (append_insn): Don't swap branch instructions
5570 if .set nobopt or .set volatile.
5571 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
5572 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
5573 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
5574 * config/obj-ecoff.c: Renamed some variables to avoid shadow
5575 warnings.
5576
ae8c28f8
DZ
5577Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5578
19ed8960
ILT
5579 * config/obj-coff.h (S_IS_COMMON): add missing backslash
5580
ae8c28f8
DZ
5581 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
5582
0aa07269
ILT
5583Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5584
5585 * config/tc-mips.c (mips_ip): Suggested by
5586 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
5587 names for 'E' and 'G' argument types (coprocessor registers) and
5588 don't warn if $1 is used on the coprocessor.
ae8c28f8 5589 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
5590
5591Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
5592
5593 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
5594 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
5595 BFD_RELOC_16.
5596 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
5597
6a9cf6fa
KR
5598Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5599
5600 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
5601 defined or BFD is not.
5602 (relax_and_size_all_segments): Declare local variable fragP.
5603
b114e492
KR
5604Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5605
5606 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
5607 bytes with real values, not zeros.
5608
ac32a7e7
ILT
5609Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5610
3d2330f8
ILT
5611 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
5612 targets, using ecoff and mips-big.
5613
ac32a7e7
ILT
5614 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
5615 Johnson): Added case for 'C' for coprocessor instruction codes.
5616
273aa947
KR
5617Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5618
fd4b7c25
KR
5619 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): Fill in
5620 bytes with real values, not zeros.
5621 (md_pseudo_table): Call cons for .uaxword.
5622
b114e492
KR
5623 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
5624
273aa947
KR
5625 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
5626
b114e492
KR
5627 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
5628 for verifying symbol chain.
5629 (merge_data_into_text, relax_and_size_all_segments): New
5630 functions, split out from write_object_file.
5631
273aa947
KR
5632Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5633
5634 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
5635 debug section is new, allocate an extra 12 bytes at its start. If
5636 ".stabs" type is N_SO, fill in filename symbol field of that first
5637 entry. Return early if "goof", to simplify later code slightly.
5638 (adjust_stab_sections): New function.
5639 (elf_frob_file): Apply adjust_stab_sections to each section.
5640
5641 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
5642 static.
5643 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
5644 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
5645 and "popsection", and call cons for "uaword" and "uahalf".
5646
5647 * config/obj-elf.c (obj_elf_version): Use English in error
5648 messages.
5649
4573d186
ILT
5650Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
5651
5652 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
5653 swapping routines and external structure sizes via the
5654 ecoff_backend information. No longer includes coff/mips.h.
5655
b4703fa6
ILT
5656Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5657
4c7ff23d
ILT
5658 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
5659 and in hash_ptr->string.
5660
b4703fa6
ILT
5661 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
5662 file name is not seen.
5663
fd4b7c25
KR
5664Mon Aug 2 11:51:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5665
5666 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): New case,
5667 parallel to BFD_RELOC_32.
5668 (tc_gen_reloc): Accept BFD_RELOC_64.
5669
ced16de6
ILT
5670Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
5671
5672 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
5673
5674 * expr.c (operand): Make return value simply depend on contents of
5675 returned expression.
5676
b4703fa6
ILT
5677Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5678
5679 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
5680
0ccc65ec
DZ
5681Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5682
5683 * config/ho-sunos.h: remove some old function decls that conflict
5684 w/ ANSI, and which weren't needed anyway
5685
5686Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5687
5688 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
5689 and disabled since it breaks Ian's new symbol-value code.
5690
5691 * expr.c (integer_constant): Accept more digits if BFD64.
5692
7fe17970
ILT
5693Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5694
5695 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
5696 expect a bignum, turn it into a bignum. Output extra zeroes
5697 before a short bignum, rather than after.
5698
0c2734c3
KR
5699Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5700
5701 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
5702 on DEBUG_SYMS, not DEBUG.
5703 (symbol_remove): Likewise.
5704 (symbol_insert): Likewise.
5705
4fe45d22
ILT
5706Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
5707
5708 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
5709 (append_insn): If mips_optimize == 0, always insert NOP
5710 instructions. If mips_optimize < 2, don't swap branches.
5711 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 5712
de9310b9
RP
5713Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5714
5715 * Makefile.in (clean): if testsuite does not exist, then skip it.
5716
5717Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5718
5719 * config/tc-mips.c (prev_insn_unreordered,
5720 prev_prev_insn_unreordered): New static variables.
5721 (append_insn): Don't swap branch instruction if
5722 prev_prev_insn_unreordered (see comment).
5723 (mips_no_prev_insn): Clear the unreordered variables.
5724 (s_mipsset): When turning on reordering, set the unreordered
5725 variables.
5726
7767e7e9
KR
5727Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5728
5729 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
5730 are also magic, and have special default flag settings.
5731 (obj_elf_frob_symbol): Since the return value from this function
5732 isn't used, don't bother calling obj_elf_write_symbol_p, since it
5733 doesn't accomplish anything else.
5734
5735 * config/tc-sparc.c (md_section_align): Round up section size only
5736 for a.out format.
5737
5738 * symbols.c: Don't define DEBUG by default.
5739
88b457e5
ILT
5740Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
5741
2a2d3d08
ILT
5742 * write.c (fix_new_exp): Handle a O_uminus expression.
5743
e979ea04
ILT
5744 * expr.c (expr): Don't let absolute_section override
5745 undefined_section for the return value.
5746
cf897ce2
ILT
5747 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
5748 pseudo-op with a poc_handler field of NULL, ignore it and treat it
5749 as an instruction instead.
5750 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
5751 poc_handler field.
5752
88b457e5
ILT
5753 * config/tc-h8500.c (md_begin): Use a local variable when
5754 initializing md_relax_table to avoid warnings about modifying a
5755 supposedly const data structure.
5756
88e12460
BK
5757Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
5758
5759 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
5760 is defined.
5761
86a6ada2
FF
5762Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
5763
5764 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
5765 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
5766 case to set obj_format=elf. Must go before i386-*-sysv* case that
5767 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
5768 *-*-solaris case, and move to before *-sysv* case that wants to
5769 set obj_format to coff.
5770 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
5771 'exp->X_op'.
5772 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
5773 BFD_ASSEMBLER case.
5774
8ff6f40e
ILT
5775Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5776
2c5c299f
ILT
5777 * config/obj-aout.c: Include aout/aout64.h.
5778 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
5779 symbol, so that BFD doesn't tamper with the type.
5780
8ff6f40e
ILT
5781 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
5782 up opcodes as pseudo-ops even if they don't start with '.'.
5783 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
5784 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
5785 handling.
5786 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
5787 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
5788 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
5789 r_offset field of the reloc to the fixup offset.
5790 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
5791 * doc/as.texinfo: Minor updates.
5792
5ac34ac3
ILT
5793Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5794
5795 * Extensive changes to permit symbols to contain any expression
5796 type and to delay the computation of the expression until the
5797 value is actually needed. This permits setting symbols to values
5798 calculated based on object code size. Expressions were changed to
5799 no longer be in a section, to stop the overloading of segment and
5800 expression type that previously occurred.
5801
5802 * as.c (big_section, pass1_section, diff_section, absent_section):
5803 Removed.
5804 (expr_section): Added (used for dummy symbols which hold
5805 intermediate expression values).
5806 (perform_an_assembly_pass): Create expr_section, do not create the
5807 sections now removed.
5808 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
5809 SEG_DIFFERENCE. Added SEG_EXPR.
5810 (SEG_NORMAL): Corresponding changes.
5811 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
5812 * write.c (write_object_file): Ditto.
5813 * config/obj-aout.c (seg_N_TYPE): Ditto.
5814 * config/obj-bout.c (seg_N_TYPE): Ditto.
5815 * config/obj-coff.c (seg_N_TYPE): Ditto.
5816 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
5817 * config/obj-vms.c (seg_N_TYPE): Ditto.
5818
5819 * expr.h (operatorT): Moved in from expr.c, added some values.
5820 (expressionS): Added X_op field, removed X_seg field; renamed
5821 X_subtract_symbol to X_op_symbol.
5822 * expr.c: Extensive changes to assign expression types rather than
5823 sections and to simplify the parsing.
5824 * write.c (fix_new_internal): New static function.
5825 (fix_new): Removed sub_symbol argument.
5826 (fix_new_exp): New function, takes expression argument.
5827 * write.h: Prototype changes for fix_new and fix_new_exp.
5828 * cond.c (s_if): Changed accordingly.
5829 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
5830 parse_repeat_cons, get_segmented_expression,
5831 get_known_segmented_expression, get_absolute_expression): Ditto.
5832 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
5833 Ditto.
5834 * write.c (write_object_file): Ditto.
5835 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
5836 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
5837 obj_coff_endef, yank_symbols): Ditto.
5838 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
5839 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
5840 print_insn, md_operand): Ditto.
5841 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
5842 do_a_fix_imm, build_bytes): Ditto.
5843 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
5844 get_specific, check, insert, md_convert_frag): Ditto.
5845 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
5846 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
5847 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
5848 process_exit): Ditto.
5849 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
5850 is_complex): Ditto.
5851 * config/tc-i386.c (pe, md_assemble, i386_operand,
5852 md_estimate_size_before_relax, md_create_long_jump): Ditto.
5853 * config/tc-i860.c (md_assemble, getExpression, print_insn):
5854 Ditto.
5855 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
5856 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
5857 i960_handle_align): Ditto.
5858 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
5859 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
5860 md_estimate_size_before_relax, md_create_long_jump, get_num):
5861 Ditto.
5862 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
5863 md_create_short_jump, md_create_long_jump): Ditto.
5864 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
5865 macro_build, macro, my_getExpression): Ditto. Also removed
5866 get_optional_absolute_expression; just use get_absolute_expression
5867 instead.
5868 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
5869 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
5870 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
5871 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
5872 Ditto.
5873 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
5874 print_insn): Ditto.
5875 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
5876 tip_op, md_assemble): Ditto.
5877 * config/tc-vax.c (seg_of_operand, md_assemble,
5878 md_estimate_size_before_relax, md_create_long_jump): Ditto.
5879 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
5880
84873870
DZ
5881Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5882
5883 * configure.in: i386-lynx is the same as i386-coff
5884
623d6e9a
KR
5885Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
5886
5887 * config/obj-elf.c (obj_elf_previous): New function.
5888 (previous_section, previous_subsection): New vars.
5889 (obj_elf_section): Save current place in case DWARF code wants us
5890 to pop back to it. Handle unquoted section name as well as quoted
5891 section name. Don't crash on invalid strings.
5892 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
5893 "4byte".
5894
5895 * config/obj-elf.h: Don't include struc-symbol.h.
5896 (obj_elf_frob_symbol): Declare arg as struct symbol *.
5897
5898 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
5899 "L" or "_.L_".
5900
5901 * write.c (write_relocs): New function, split off from
5902 write_contents. Use memset instead of bzero.
5903 (write_object_file): Apply write_relocs to each section before
5904 applying write_contents.
5905
5906 * read.c (read_begin): Call obstack_begin with values closer to 1K
5907 multiples.
5908 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
5909 bcopy.
5910
ffffc8fb
ILT
5911Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5912
ce2ad89a
ILT
5913 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
5914 calculating opP->isiz; this permits the expression size to be
5915 determined as well, later on.
5916
ffffc8fb
ILT
5917 * expr.c (clean_up_expression): Don't cancel the subtraction of
5918 undefined symbols.
5919
5920 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
5921 switch to text section rather than data section.
5922
9d4dfbf3
KR
5923Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5924
5925 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
5926 expression (to take the pc-rel instruction itself into account)
5927 before using the expression, instead of after.
5928
04acd059
ILT
5929Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
5930
1e9cf565
ILT
5931 * read.c (float_cons): Simplified parsing logic. If
5932 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
5933
5934 * symbols.c (colon): Rather than a special case for TC_HPPA,
5935 use new macro tc_frob_label.
5936 * config/tc-hppa.h (tc_frob_label): Define.
5937
5938 * config/tc-mips.c: Many changes to support simple assembler
5939 optimization.
5940 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
5941 prev_insn_valid, prev_insn_frag, prev_insn_where,
5942 prev_insn_fixp, prev_insn_is_delay_slot): New static
5943 variables.
5944 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
5945 mips_align, s_stringer, s_mips_space): New static functions.
5946 (mips_define_label): New global function.
5947 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
5948 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
5949 or 'd'. For "space" call s_mips_space.
5950 (md_begin): Call mips_no_prev_insn.
5951 (append_insn): Only insert necessary NOP instructions.
5952 (macro): Call mips_emit_delays before setting mips_noreorder.
5953 Increment and decrement mips_noreorder rather than using
5954 save_reorder_condition. Don't bother to use noreorder in
5955 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
5956 (md_atof): Handle floating point numbers correctly for both
5957 big and little endian targets.
5958 (s_align, s_cons): Call mips_align rather than frag_align.
5959 (s_change_seg, s_cons): Call mips_emit_delays.
5960 (s_float_cons): Let float_cons do the work.
5961 (s_mipsset): Call mips_emit_delays when setting noreorder.
5962 * config/tc-mips.h (tc_frob_label): Define to be
5963 mips_define_label.
5964
04acd059
ILT
5965 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
5966 ecoff_frob_files): Consistently use S_GET_VALUE rather than
5967 bfd_asymbol_value. Warn if taking difference of symbols in
5968 different segments.
5969
c978e704
ILT
5970Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5971
5276e361
ILT
5972 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
5973 with a warning.
5974
2368ec63
ILT
5975 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
5976 by md_pcrel_from if we are relocating against a symbol (we still
5977 need md_pcrel_from for a PC relative relocation within the same
5978 file).
5979 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 5980 (omagic): Removed unused variable.
2368ec63 5981
c978e704
ILT
5982 * Preliminary support for m88k-coff.
5983 * configure.in (m88k-*-coff*): New target. Use coffbfd and
5984 m88kcoff.
5985 * config/m88kcoff.mt: New file.
5986 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
5987 (pseudo_set): Handle difference of symbols in different fragments
5988 by saving the entire expression as the value of the symbol.
5989 * symbols.c (resolve_symbol_value): Resolve difference
5990 expressions.
5991 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
5992 "sdef" as a synonym for "def".
5993 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
5994 TARGET_FORMAT.
5995 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
5996 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
5997 m88k port up to date, and to add COFF support.
5998
85051959
ILT
5999Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6000
5868b1fe
ILT
6001 * Removed sy_forward and replaced it with an undefined expression
6002 as the value of a symbol.
6003 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
6004 sy_resolved and sy_resolving single bit fields.
6005 * symbols.c (symbol_new): Don't initialize sy_forward field.
6006 (resolve_symbol_value): New function to adjust symbol value by
6007 fragment address, using recursion to resolve forward symbols.
6008 * symbols.h: Added prototype for new function.
6009 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
6010 expression rather than setting symbolP->sy_forward.
6011 * write.c (write_object_file): Use resolve_symbol_value on
6012 symbols, keeping the common case (the old behaviour) inline.
6013 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
6014 handling (subsumed by write.c change).
6015 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
6016 sy_value rather than sy_forward.
6017 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
6018 expression segment rather than sy_forward.
6019 (yank_symbols): Use resolve_symbol_value.
6020 (crawl_symbols): Removed extra pass over symbols.
6021 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
6022 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
6023 symbols which handled sy_forward; use resolve_symbol_value
6024 instead.
6025 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
6026 Define.
6027 * config/obj-elf.c (obj_elf_stab_generic): Check expression
6028 segment rather than sy_forward.
6029 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
6030 sy_forward; do initialize sy_resolved and sy_resolving.
6031 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
6032
85051959
ILT
6033 * Changes to keep a full expression as the value of a symbol, not
6034 just a longword:
6035 * struc-symbol.h: New field sy_value.
6036 * as.h: Include expr.h before struc-symbol.h.
6037 * expr.h: Use struct symbol rather than symbolS.
6038 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
6039 of sy_value field; compile unconditionally, not just if
6040 BFD_ASSEMBLER.
6041 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
6042 * write.c (write_object_file): Set BFD symbol value to gas symbol
6043 value.
6044 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
6045 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
6046 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
6047 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
6048 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
6049 S_GET_VALUE rather than ost_entry.n_value.
6050 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
6051 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
6052 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
6053 using S_GET_VALUE--don't assume it is already set.
6054 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
6055 symbol value.
6056 * config/obj-vms.c (various): Don't assign directly to
6057 S_GET_VALUE; use S_SET_VALUE instead.
6058
b50401c9
DE
6059Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
6060
fd4b7c25
KR
6061 * configure.in: Make sparc64-*-aout* use bfd gas.
6062
b50401c9
DE
6063 * configure.in: Recognize h8300h.
6064
489a93f3
SC
6065Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
6066
6067 * config/tc-h8500.c (line_comment_chars): Add hash.
6068 (parse_exp, skip_colonthing, build_bytes): Add support for
6069 R_H8500_HIGH16 relocation type.
6070
5d4ef296
KR
6071Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6072
6073 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
6074 attribute name. Handle `execinstr' attribute.
6075
99c24539
ILT
6076Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
6077
6078 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
6079 there is another alternative for the instruction.
6080
ec1c752b
RP
6081Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6082
6083 * doc/as.texinfo: updates for H8/300H
6084
d358969d
ME
6085Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
6086
6087 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
6088 md_number_to_chars, md_section_align): Adjusted to use valueT,
6089 addressT, to match tc.h.
6090
ff4cac38
KR
6091Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6092
6093 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 6094 independent of format.
ff4cac38 6095
42206996
DE
6096Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
6097
6098 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
6099
e9baeb46
DZ
6100Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
6101
6102 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
6103 build; also recognize h8300-*-coff
6104
76c64db0
ILT
6105Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
6106
e154ecf4
ILT
6107 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
6108 core just because somebody uses a label before it is defined.
6109
76c64db0
ILT
6110 * config/mips-opcode.h: Moved to opcode/mips.h.
6111 * config/tc-mips.c: Include opcode/mips.h rather than
6112 mips-opcode.h.
6113 (append_insn): An extra NOP is only needed after instructions
6114 which set HI or LO, not after instructions which read it.
6115 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
6116 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
6117 * config/tc-mips.h (struct mips_opcode): Don't define.
6118 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
6119 Set to $(srcdir)/../include/opcode/mips.h.
6120
6121 Get the MIPS assembler up to speed with other gas changes:
6122
6123 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
6124 Removed; don't change the symbol value.
6125 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
6126 bfd_asymbol_value rather than S_GET_VALUE to include section
6127 vma in symbol value.
6128 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
6129 doesn't output them. Set the vma of sections.
6130 * config/obj-ecoff.h: Don't define obj_frob_symbol.
6131 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
6132 longer necessary.
6133 (various): use valueT rather than long.
6134
e28e0b95
KR
6135Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6136
fd4b7c25
KR
6137 * config/tc-sparc.h (ENV64): Define for v9.
6138
6139 * config/tc-sparc.c (s_xword): For numbers, call big_cons.
6140 (sparc_ip, md_apply_fix, tc_gen_reloc): Handle some sparc64
6141 relocation types.
6142 (md_number_to_chars): Handle 8-byte value.
6143
6144 * config/obj-elf.h (elf_symbol): For v9, use 64-bit symbol type.
6145
e28e0b95
KR
6146 * as.h (valueT): Typedef moved here.
6147 * struc-symbol.h (valueT): ...from here.
6148 * write.c (write_object_file): Locals from_addr, to_addr,
6149 table_addr are now addressT. Supply prototype for bfd_alloc for
6150 now.
6151 (fixup_segment): Local add_number is now valueT. Correct some
6152 range-checking bugs.
6153 (relax_align): Type `int' should be sufficient for the exponent.
6154 (fix_new): Argument offset is type offsetT. Locals size and
6155 newsize are type valueT.
6156 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
6157 type valueT.
6158 (fix_new): Fix prototype.
6159 * symbols.c (symbol_new): Symbol value is type valueT.
6160 (S_SET_VALUE, S_GET_VALUE): Likewise.
6161 (S_IS_*): Specify int return type explicitly.
6162 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
6163 prototypes.
6164 * read.c (s_comm): Values read are type valueT.
6165 * expr.h (expressionS): Field X_add_number is an offsetT.
6166 * tc.h (md_create_long_jump, md_create_short_jump,
6167 md_section_align): Addresses are now type addressT.
6168 (md_number_to_chars, md_apply_fix): Pass value as valueT.
6169 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
6170 md_number_to_chars, md_section_align): Adjusted.
6171 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
6172 gcc shut up.
6173 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
6174 md_section_align): Adjusted.
6175
6176 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
6177 format.
6178 (s_common): Handle Solaris-2 version.
6179
6180 * config/ho-generic.h (free): Returns void if __STDC__.
6181
6182 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
6183 elf_file_symbol): Declare.
6184
6185 * expr.c (floating_constant, integer_constant): Now return void.
6186
6187Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
6188
6189 * configure.in: Match on sparc*-fujitsu-none rather than
6190 sparclite*-fujitsu-none.
6191
267389df
ILT
6192Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
6193
6194 * read.c (cons): Conditionalize parsing of expression. Move
6195 putting value into object file into separate function. Separate
6196 out MRI and WANT_BITFIELDS cases into separate functions.
6197 (emit_expr): New function to write data into object file.
6198 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
6199 processor types.
6200 (parse_bitfield_cons): New function to parse bitfield expressions
6201 as used by i960 assemblers. Only compiled if
6202 BITFIELD_CONS_EXPRESSIONS is defined.
6203 (parse_mri_cons): New function to parse MRI style strings. Only
6204 compiled if MRI is defined.
6205 (parse_repeat_cons): New function to parse repeat counts. Only
6206 compiled if REPEAT_CONS_EXPRESSIONS is defined.
6207 * read.h (emit_expr): Added declaration of new function.
6208 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
6209 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
6210 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
6211 parse a HPPA expression, rather than special case in cons
6212 function.
6213 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
6214 than special case in emit_expr function.
6215 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
6216 Define to use new functions from tc-hppa.c.
6217 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
6218 (WANT_BITFIELDS): Removed; now obsolete.
6219 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
6220 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
6221 NS32K fixup, rather than special case in emit_expr function.
6222 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
6223 cons_fix_new_ns32k. Also use PARAMS rather than checking
6224 __STDC__.
6225 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
6226
6227 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
6228 Don't core dump if gas has no information about a section.
6229
6230Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6231
fd4b7c25
KR
6232 * config/tc-sparc.c (md_begin): If sparcv9 is defined, reset
6233 current_architecture to v9 automatically.
6234
6235 * config/tc-sparc.h (TARGET_FORMAT): Use elf64-sparc for v9.
6236
6237 * config/tc-sparc64.h, config/tc-sparc64.c: New files.
6238 * configure.in: Use sparc64 cpu files for v9, and default to elf
6239 format.
6240
267389df
ILT
6241 * write.c (relax_and_size_seg): Always fully process a section.
6242 Section size is last frag's (vm)address plus its size. If no
6243 relocations are present, force SEC_RELOC flag clear.
6244 (dump_section_relocs): New debugging routine.
6245 (adjust_reloc_syms): New routine, broken out from write_contents.
6246 Don't adjust relocs that are already relative to section symbol.
6247 Look for obj_fix_adjustable macro to know what else to skip,
6248 instead of obj_write_symbol. Look for section symbol stored in
6249 section information.
6250 (write_object_file): Map adjust_reloc_syms over all sections.
6251 (write_contents): Clear SEC_RELOC flag if no relocations are
6252 found.
6253
6254 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
6255 keep it quiet.
6256
6257 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
6258
e28e0b95
KR
6259Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
6260
6261 * Makefile.in (all, dvi, info, install-info, clean-info): do not
6262 echo recursion lines.
6263 (install-info, clean-info): collapse into the dvi and info rule.
6264
fd4b7c25
KR
6265Fri Jun 25 10:47:24 1993 Doug Evans (dje@canuck.cygnus.com)
6266
6267 * config/tc-sparc.c (sparc_ip): Remove support for %d/%q fp regs.
6268 All fp regs are now specified as %f.
6269 (priv_reg_table): fpq -> fq.
6270
267389df
ILT
6271Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
6272
6273 * as.h (strstr): Disable declaration for now.
6274 (fprint_value, sprint_value): Declare.
6275
6276 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
6277 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
6278
6279 * expr.c (expr_part): Made sanity checks a.out-specific.
6280 (expr): Disabled sanity checks.
6281
6282 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
6283 section symbol.
6284 * subsegs.c (subseg_change): Initialize section symbol pointer
6285 when setting up a new section.
6286
6287 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
6288 field back at gas symbol structure.
6289
6290 * symbols.c (colon): Cast obstack_next_free value to char* before
6291 doing arithmetic on it.
6292 * subsegs.c (subseg_new_rest): Likewise.
6293 * as.h (frag_now_fix): Likewise.
6294
6295 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
6296 calling bfd_make_section_old_way directly, and call subseg_set
6297 instead of subseg_change. Now returns void.
6298 (obj_elf_write_symbol): Only check local symbols for now.
6299 (elf_stab_symbol): Now static and void, and disabled until it
6300 works completely.
6301 (obj_elf_size): For expression values, fail silently for now.
6302 (obj_symbol_new_hook): Do nothing.
6303
6304 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
6305 relocation.
6306 (s_local) [OBJ_ELF]: New function.
6307 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
6308 (s_common): Rearrange to handle Solaris .common pseudo, which may
6309 sometimes use bss space instead of common.
6310 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
6311
a8285504
DZ
6312Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6313
6314 * configure.in: set host config to hpux for hppa*-hp-hpux
6315
267389df
ILT
6316Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
6317
6318 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
6319
6320Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
6321
6322 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
6323 * config/obj-aout.c (s_sect): Do it here.
6324
6325 * as.h (BAD_CASE): Don't make some lame compilers think we want
6326 substitution inside strings.
6327
6328 * as.c (print_version_id): New function, split off from main.
6329 (main): Call it.
6330 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
6331 for -V. Ignore -Q and -s options for now.
6332
a8285504
DZ
6333Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6334
6335 * Makefile.in: make installation & builds work again for crosses
6336
267389df
ILT
6337Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
6338
6339 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
6340 symbol values correctly.
6341
6342 * write.c (write_object_file): Deleted unused variables.
6343 (fixup_segment): Use sprint_value.
6344
6345 * messages.c (sprint_value, fprint_value): New routines.
6346
6347 * config/obj-elf.c (elf_stab_symbol): Now returns void.
6348 (obj_elf_stab_generic): Fix typo in logic.
6349
6350 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
6351
6352 * as.h (addressT, offsetT): New types, using BFD types if
6353 available.
6354 (relax_addressT, struct frag): Use them.
6355 * struc-symbol.h (valueT, struct broken_word): Likewise.
6356
6357 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
6358 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
6359
9126738c 6360Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 6361
9126738c
DZ
6362 * Makefile.in: canonicalize install.sh; for use within
6363 this directory (and subdirs)
6364
267389df
ILT
6365Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
6366
6367 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
6368 specified, should have both S1 and S2 fields identical
6369 If only finding the problem was as fast as fixing the bug !!!!
6370
6371Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6372
6373 * write.c (write_contents): Do write out non-loadable sections.
6374 Debug sections can fall in this category.
115147fb 6375
267389df
ILT
6376 * read.c (s_app_file): Call elf_file_symbol for ELF files.
6377 * config/obj-elf.c (elf_file_symbol): New function.
6378
6379 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
6380 added argument to specify section base name.
6381 (obj_elf_stab_generic): Renamed from ..._stab. New argument
6382 specifies section base name.
6383 (obj_elf_stab): New function, calls obj_elf_stab_generic with
6384 ".stab" as section base name.
6385 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
6386 (obj_elf_type): Handle "object". Use bitwise-or to merge in
6387 symbol flags rather than simply replacing, so global/local flags
6388 are preserved.
6389 (obj_elf_ident): Rewrite.
115147fb 6390
a00ee522
DZ
6391Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6392
6393 * Makefile.in: remove parentdir support; use INSTALL_XFORM
6394
6395Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
6396
6397 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
6398 for any a.out target, not just Linux and 386BSD.
6399 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
6400 target.
6401
267389df
ILT
6402Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6403
6404 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
6405 don't exist or duplicate other inclusions.
6406
6407 * config/tc-vax.h (NO_RELOC): Define.
6408
fd4b7c25
KR
6409Mon Jun 7 09:55:03 1993 Doug Evans (dje@canuck.cygnus.com)
6410
6411 * config/tc-sparc.c (sparc_ip): Fix parsing of asi number.
6412 Fix error message.
6413
267389df
ILT
6414Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
6415
6416 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
6417 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
6418 char to reg_prefix instead of to 'r'.
6419 (calcop): Change calls to get_reg.
6420 (calcop): Handle new case 'x' to set reg_prefix.
6421 (calcop): Set reg_prefix to 'r' after each call to get_reg.
6422 (cmpslot): Add 88110 conditions.
6423
6424 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
6425
6426 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
6427 before returning.
6428
6429 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
6430 adjacent; mov.s and mov.d swapped.
6431 (m88k_opcodes): Fix typo `r2' -> `2'.
6432
a00ee522
DZ
6433Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
6434
6435 * config/h8300.c: Support for H8/300-H opcodes.
6436
6437 * config/obj-coffbfd.c (w_strings): String table length is 4
6438 bytes, no matter what the host int size is.
6439
6440 * configure.in (alpha-*-osf*): New.
6441
68ad4c92
ILT
6442Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
6443
47fcc4f5
ILT
6444 * configure.in (mips-*-ecoffl*): New target; use ecoff and
6445 mips-lit.
6446 (mips-*-ecoff*): Added trailing '*'.
6447
68ad4c92
ILT
6448 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
6449 first FDR in a file to be zero.
6450
75776695
KR
6451Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6452
b7067d7f
KR
6453 * Makefile.in (VERSION): Jump to 2.1.4.
6454
75776695
KR
6455 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
6456
6457 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
6458 ECOFF format.
6459
6460Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6461
6462 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
6463 separate '851 mmu.
6464
6465 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
6466 and routine names. Assuming 32 bits for now.
6467
6468 * config/obj-elf.c (elf_frob_file): Look for macro
6469 elf_tc_final_processing_hook, instead of assuming a function
6470 always exists.
6471 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
6472 tc_final_processing_hook.
6473 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
6474
6475 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
6476 moved here from obj-elf.h.
6477 * config/obj-elf.h: Don't include CPU-specific header files.
6478
6479Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
6480
6481 * configure.in: configurations should match on 'hppa*' not 'hppa'.
6482
6483 * read.c: Add support for HPPA assembly language syntax (denoted
6484 with '#ifdef TC_HPPA').
6485
6486 * symbols.c: Add support for HPPA assembly language syntax (denoted
6487 with '#ifdef TC_HPPA').
6488
6489 * write.c (write_contents): Add support for HPPA-style
6490 relocations.
6491
6492 * config/obj-elf.c: Stab symbols weren't written properly.
6493 (obj_elf_version):
6494 (obj_elf_desc):
6495 (obj_elf_write_symbol):
6496 (obj_elf_write_symbol_p):
6497 (obj_elf_frob_symbol):
6498 (elf_stab_symbol):
6499 (elf_frob_file):
6500
6501 * config/tc-hppa.c: Support for HPPA symbol extension sections.
6502 Remove some unused code. Support for HPPA assembly language
6503 syntax.
6504
6505 * app.c:
6506
6507 * symbols.c:
6508
6509 * config/obj-elf.h:
6510 (obj_write_symbol):
6511 (obj_frob_file):
6512 (elf_tc_symbol):
6513 (elf_tc_make_sections):
6514
6515 * config/tc-hppa.h:
6516
6517Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6518
6519 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
6520 hash_new will have succeeded if it returns.
6521 * config/tc-a29k.c (md_begin): Likewise.
6522
6523 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
6524 const.
6525 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
6526 gcc.
6527 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
6528
6529 * expr.c: Delete register declarations; gcc ignores them anyways.
6530
6531Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6532
6533 * hash.c (hash_new): Use xmalloc, since many callers don't check
6534 for failure.
6535
49864cfa
KR
6536Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6537
6538 * frags.c (zero_address_frag, bss_address_frag): These are
6539 external.
6540
6541 * tc.h (md_reloc_size): This is const.
6542 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
6543 (md_reloc_size): Now const.
6544
6545 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
6546 trailing commas.
6547 * as.h (enum _segT): Ditto.
6548
6549 * struc-symbol.h (N_TYPE_seg): This should be const.
6550
6551Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
6552
6553 * config/obj-ecoff.c (add_file): Cast file_name to char * in
6554 listing_source_file call.
6555
6556 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
6557 of subseg_new call to eliminate const attribute.
6558 (obj_elf_stab): Ditto.
6559 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
6560
6561 * read.c (s_align_bytes): Properly record alignment.
6562
6563 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
6564 for the prototype/no prototype macro.
6565
6566 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
6567 void.
6568
6569 * as.h (relax_stateT enum): Delete trailing comma.
6570
9a7d824a
ILT
6571Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
6572
6573 * app.c (do_scrub_begin): Let line_comment_chars override
6574 comment_chars.
6575 (do_scrub_next_char): If a line comment character is not at the
6576 start of a line, treat it as a comment character if it is one.
6577 For a CPP line comment use pseudo-op .appline rather than .line.
6578 * input-scrub.c (logical_input_line): Make int rather than
6579 unsigned.
6580 (input_scrub_push, input_scrub_begin): Initialize
6581 logical_input_line to -1 rather than 0.
6582 (bump_line_counters): Increment logical_input_line.
6583 (new_logical_line): If line_number is -2, decrement
6584 logical_input_line.
6585 (as_where): Use logical_input_line even if it is 0.
6586 * read.h (s_app_file prototype): Now takes an int argument.
6587 * read.c (potable): Make .appfile call s_app_file with 1. New
6588 .appline pseudo-op calls s_app_line.
6589 (s_app_file): If .appfile, call new_logical_line with -2 to
6590 account for newline inserted by do_scrub_next_char. If listing,
6591 call listing_source_file.
6592 (s_app_line): New function to handle fake pseudo-op .appline.
6593 * config/obj-coff.c (obj_pseudo_table): Make .appline call
6594 obj_coff_ln.
6595 (obj_coff_ln): Added argument to indicate whether .appline.
6596 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
6597 obj_coff_ln.
6598 (obj_coff_ln): Added argument to indicate whether .appline.
6599 * config/tc-mips.c (s_file): Pass argument to s_app_file.
6600
61f14fb0
ILT
6601Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
6602
6603 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
6604
6605Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6606
6607 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
6608 invalid values.
6609
6eef4543
SC
6610Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
6611
6612 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
6613 relocations correctly.
6614
f8f61478
KR
6615Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6616
6eef4543
SC
6617 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
6618 it's wrong.
6619
f8f61478
KR
6620 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
6621 if value is out of range.
6622
6623 Patch from Minh Tran-Le:
6624 * config/tc-i386.c (i386_operand): For in/out port register used
6625 as base reg, include InOutPortReg in operand type.
6626 (MATCH): Accept overlap value of InOutPortReg.
6627
6628Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
6629
6630 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
6631 Add calls to listing routines to produce combined source/assembler
6632 listings.
6633 (obj_ecoff_stab): Create a file pointer if none used yet.
6634 (ecoff_frob_file): Set symcount to correct value.
6635
6636Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6637
6638 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
6639 release.
6640
6641 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
6642 Define in terms of constants, not C structure sizes.
6643
6644 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
6645
6646Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6647
6648 * config/obj-aout.c (obj_header_append): Don't define if it's
6649 defined as a macro.
6650 * config/obj-hp300.h (obj_header_append): Define it as a macro.
6651 * config/obj-hp300.c (hp300_header_append): New function.
6652
6653 * Makefile.in (distclean): Don't bother cleaning up doc files;
6654 they aren't going to be in this directory.
6655
204ff785
ILT
6656Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
6657
f8f61478
KR
6658 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
6659 symbols.
6660
204ff785
ILT
6661 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
6662 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
6663
65824763
KR
6664Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6665
204ff785
ILT
6666 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
6667 initialization.
6668
65824763
KR
6669 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
6670
21bb48b9
ILT
6671Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
6672
6673 * config/tc-mips.c (macro): Correct floating point double word
6674 loads and stores for big endian target.
6675
e7c2f943
KR
6676Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6677
6678 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
6679 calls. Deleted some unused code.
6680 * config/obj-coff.c: Likewise.
6681
6682 ELF support, mostly contributed by Utah:
6683 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
6684 obj_elf_type): Rewrite.
6685 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
6686 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
6687 New functions.
6688 (obj_elf_ident): Dummy.
6689 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
6690 TARGET_SYMBOL_FIELDS): New macros.
6691 (gdb_section): New variable decl.
6692
6693 * config/tc-i386.c (md_atof): Return zero, not empty string, on
6694 success.
6695
6696 BFD_ASSEMBLER conditional changes:
6697 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
6698 Don't define these.
6699 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
6700 (fetch_coff_debug_section): Ditto.
6701 (obj_coff_endef): Call fetch_coff_debug_section.
6702 (struct line_no): New type.
6703 (c_symbol_merge): New way for copying aux fields.
6704 (c_dot_file_symbol): Put symbol in absolute section, and set flag
6705 BSF_DEBUGGING.
6706 (function_lineoff): New symbol.
6707 (function_lineoff, text_lineno_number, our_lineno_number,
6708 lineno_lastP): Don't define.
6709 (c_line_new): Don't define.
6710 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
6711 placeholders, until
6712 line-number recording gets implemented.
6713 (obj_new_symbol_hook): New code for handling aux fields.
6714 (add_lineno, add_linesym): New functions.
6715 (obj_coff_ln): Call add_lineno, not c_line_new.
6716 (obj_coff_endef): New code for handling symbol names. New lineno
6717 code. Look for section name "*DEBUG*" for debugging section.
6718 (align, coff_check_file_symbols, obj_coff_section,
6719 coff_frob_file): New functions.
6720 * config/obj-coff.h: Reordered some includes.
6721 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
6722 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
6723 define these.
6724 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
6725 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
6726 aux entries. Most SA_* macros now use it unconditionally.
6727 (S_*): Use `bsym' field, and access BFD private data.
6728 (SF_*): Use `sy_flags' symbol field for most of these.
6729 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
6730 define.
6731 (*_section_header): Don't define.
6732 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
6733 interface.
6734 (tc_gen_reloc) [I386COFF]: New function.
6735 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
6736 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
6737 macros.
6738
6739 * config/obj-coff.c (stack_init): Don't do assignments inside
6740 conditions.
6741 (obj_coff_def): Simplified handling of symbol name a bit.
6742 (tag_insert): Name argument is now pointer to CONST.
6743 (obj_crawl_symbol_chain): Commented out.
6744
6745 * config/obj-coff.h: Use PARAMS macro in prototypes.
6746
6747 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
6748 through frchainP pointer if it is null.
6749
6750 * configure.in: Warn if BFD mode is explicitly turned off but is
6751 required by specified target.
6752 (mips ecoff targets): Don't need to set bfd_gas here; it gets
6753 taken care of later.
6754
6755 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
6756 field.
6757 (yank_symbols): Merge symbols only if sy_forward is null.
6758
6759 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
6760 defined.
6761
6762 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
6763 pointer.
6764 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
6765
6766 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
6767 with "." is a local label.
6768
6769 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
6770 files.
6771
6772 * config/te-linux.h, config/te-386bsd.h: New config files.
6773 * configure.in (i386-*-linux, i386-*-bsd): Use them.
6774 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
6775 environment.
6776 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
6777
5d6cfa60
ILT
6778Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
6779
6780 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
6781 to want it that way.
6782 (ecoff_build_symbols): Turn local st_Proc symbols into
6783 st_StaticProc symbols. Set index field of external st_Proc and
6784 st_staticProc symbols correctly.
6785 * config/tc-mips.h (NO_LISTING): Don't define. People might want
6786 listings.
6787
e7c2f943
KR
6788Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6789
6790 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
6791 files.
6792 * configure.in (m68k-*-hpux): Use them.
6793
6794 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
6795 defined, otherwise zero.
6796
6797 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
6798
5d6cfa60
ILT
6799Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6800
6801 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
6802 address space number.
6803
6804Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6805
6806 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
6807
6808 * config/tc-a29k.c: Include ctype.h.
6809 (define_some_regs): Added special-purpose registers for 29050.
6810
e7c2f943
KR
6811 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
6812
6813 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
6814 (change_to_section): Set it here instead.
6815
a1387260
ILT
6816Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
6817
6818 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
6819 hasn't been seen yet.
6820 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
6821
4a1bbbe7
SC
6822Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6823
6824 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
6825 SH.
6826
be2f6bd6
ILT
6827Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
6828
6829 * expr.c (operand): Fix unary plus operator (previously was the
6830 same as '~' operator!).
6831
6832Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6833
6834 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
6835 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
6836 obj_check_file_symbols if defined. Call verify_symbol_chain_2
6837 instead of open-coding it. Fix some bugs in patching up symbol
6838 chain.
6839 (relax_segment): Make some code we "ought to be able to" use for
6840 all targets no longer conditionalized on ns32k target; instead, do
6841 it always, and if the appropriate conditions fail, abort.
6842
6843 * symbols.c (DEBUG): Enabled.
6844 (symbol_new): Make sure bfd_make_empty_symbol works.
6845 (verify_symbol_chain_2): New funcion; takes one symbol as
6846 argument, anywhere in the chain.
6847 (dollar_label*): Use default initializers.
6848
6849 * as.c (perform_an_assembly_pass): Call md_begin here...
6850 (main): ...and not here.
6851
6852 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
6853 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
6854
6855 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
6856 (add_fix, add_frag): Now functions instead of macros.
6857 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
6858 s_data1, s_data2, s_bss): Use new *_section names, for
6859 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
6860 to handle non-integral segT.
6861 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
6862 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
6863 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
6864 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
6865 md_apply_fix_2; new md_apply_fix definition varies interface
6866 depending on BFD_ASSEMBLER.
6867 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
6868 names.
6869
6870 * config/obj-vms.c: Include config.h.
6871 (version_string): Delete declaration.
6872 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
6873 (vms_resolve_symbol_redef): New function, taken from VMS code in
6874 symbols.c.
6875 (_doprnt): Deleted.
6876 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
6877 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
6878 VMS_Psect_Spec): Fixed to compiler under traditional C.
6879 * config/obj-vms.h: Use PARAMS macro.
6880 (vms_resolve_symbol_redef): Declare.
6881 (RESOLVE_SYMBOL_REDEFINITION): New macro.
6882 * symbols.c (colon): Remove some VMS-specific code, look for
6883 RESOLVE_SYMBOL_REDEFINITION macro instead.
6884
6885 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
6886 instructions.
6887
6888 * config/tc-i386.c: Reordered some functions so inlining might
6889 work. Use PARAMS in function declarations.
6890 (reloc): New routine.
6891 (md_assemble): Rearrange switch statements to work with
6892 non-integral segT.
6893
6894 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
6895 SYMBOLS_NEED_BACKPOINTERS before defining it.
6896
6897 * subsegs.c (subseg_new_rest): Now static.
6898
6899 * read.c (pseudo_set): Better error message for difference of
6900 symbols in different frags.
6901
6902 * Makefile.in (check): Pass down some new variables, indicating
6903 pathname or program name for cc, nm, objdump.
6904
6905 * as.h (OUTPUT_FLAVOR): New macro.
6906 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
6907
6908 * configure.in: Initialize bfd_gas properly. Warn that ELF
6909 support is incomplete.
6910
6911Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6912
6913 * read.c (float_cons): Accept null pointer return from md_atof.
6914 * config/tc-m68k.c (md_atof): Return null for success.
6915 * config/tc-sparc.c (md_atof): Ditto.
6916
97a6070c
RP
6917Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6918
6919 * doc/as.texinfo: formatting and comment cleanups; show SPARC
6920 alternative options in same style as other machines; simplify some
6921 conditional use; include GPL as separate file (from texinfo dir)
6922
6923 * doc/Makefile.in: (as.info) include directory containing GPL in
6924 makeinfo search path
6925
6926 * doc/h8.texi: new file; conditional settings for GAS manual
6927 on Hitachi chips
6928
6929Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6930
6931 * doc/as.texinfo: mention SPARC architecture options.
6932
be2f6bd6
ILT
6933Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
6934
6935 * configure.in: Rearranged whitespace in per-host/per-target
6936 sections. Added hooks for dropping in HPPA support (not included
6937 yet). Separate out overrides of variables based on target format
6938 and bfd-gas selection from actual target-specific commands. Add
6939 error message for recognized but unsupported format name.
6940
349f20de
ILT
6941Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
6942
6943 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 6944 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
6945 want that.
6946
5316696f
DZ
6947Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6948
6949 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
6950 $(srcdir)/as.texinfo explicitly in several places
6951
8ac18b21
RP
6952Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6953
132239bf 6954 * doc/Makefile.in: update dvi, clean targets for new source
8ac18b21
RP
6955 file structure
6956
d565311f
ILT
6957Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
6958
6959 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
6960 rather than undefining know.
8ac18b21 6961 * configure.in: Match ultrix*, not just ultrix.
d565311f 6962
0742a6fd
RP
6963Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6964
6965 * doc/as.texinfo: converted conditional markup to use new
6966 Texinfo facilities, avoiding m4.
6967
6968 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
6969
6970 * doc/Makefile.in: recast doc configuration to use a link to an
6971 included texinfo file.
6972
6973 * doc/all.texi: settings for generic form of documentation.
6974
6975Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
6976
6977 * read.c (cons): Zero out frag when creating reloc.
6978
367fc835
ILT
6979Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
6980
84e4920f
ILT
6981 * config/tc-mips.c (gp_reference): Certain magic symbols can never
6982 be referenced off the GP register.
6983
367fc835
ILT
6984 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
6985 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
6986 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
6987
6988 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
6989 definition from other MIPS targets.
6990 * configure.in (mips-*-irix): Use emulation irix.
6991
dd4227d3
SC
6992Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6993
6994 * config/tc-h8500.c: Get relax size of branch instructions right,
6995 (get_operand): Parse @sp+ correctly.
6996
be2f6bd6
ILT
6997Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6998
6999 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
7000 COFF section header field.
7001
7002 * configure.in: Print error message if host or target is not
7003 supported.
7004
7005 * configure.in: If with-bfd-assembler, use obj-coff instead of
7006 obj-coffbfd.
7007
7008 * config/ho-generic.h: Include string.h.
7009
ed364bb6
ILT
7010Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
7011
0433135d
ILT
7012 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
7013 '$' as local, for any object file format.
7014
477b4b04
ILT
7015 * config/tc-mips.c (macro): Optimizations to branching code and a
7016 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
7017 Campbell).
7018
ed364bb6
ILT
7019 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
7020 * configure.in (mips-sgi-irix*): Set gas_host to irix.
7021
670a50eb
ILT
7022Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
7023
7024 * subsegs.c (subseg_new): Set output_section of new section.
7025 * as.c (perform_an_assemly_pass): Don't set output_section here.
7026 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
7027 since it has additional sections.
7028 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
7029 not bss_section.
7030 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
7031 ecoff_undefined field.
7032 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
7033 ecoff_undefined field.
7034 (add_file): If using stabs, just output a stabs symbol rather than
7035 creating a new fdr.
7036 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
7037 it with get_absolute_expression, rather than skipping it by hand.
7038 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
7039 than ECOFF line number information.
7040 (obj_ecoff_stab): Accept non-zero values for stabs line number.
7041 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
7042 to small, undefined and/or readonly sections if appropriate.
7043 Don't output symbol names containing \001 characters.
7044 (ecoff_frob_file): Make sure at least one fdr is output.
7045 * config/tc-mips.h: Define TC_MIPS.
7046 * config/tc-mips.c (g_switch_value): New static variable.
7047 (md_assemble): Set gp size of output BFD.
7048 (gp_reference): New function; returns 1 if expression can be
7049 accesssed via gp. Always returns 0 if not using ECOFF.
7050 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
7051 possible.
7052 (macro): Generate sequences using gp if possible.
7053 (md_parse_option): Ignore -EL and -EB. Parse -G.
7054 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
7055 (s_change_sec): Handle .rdata and .sdata for ECOFF.
7056 (s_extern): Mark symbol as external. Set ecoff_undefined field.
7057
2b1b5697
KR
7058Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7059
670a50eb
ILT
7060 * output-file.c (output_file_create): Don't call as_perror for
7061 filename rejected by application.
7062
7063 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
7064 the output file.
7065
4b061a2a
KR
7066 * doc/as.texinfo: Don't use @value in node names for the moment;
7067 references don't appear to work right.
7068
4478def8
KR
7069 * as.h (const, volatile): Put these definitions back, and use
7070 them.
7071
2b1b5697
KR
7072 * doc/as.texinfo: First pass at using new texinfo features --
7073 variables, conditional tests. Far from complete.
7074
7075Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7076
7077 * read.c: Temporary hack to handle some 64-bit constants. This
7078 should be redone later.
7079 (target_big_endian): Declare.
7080 (big_cons): If it's set, reverse order of bytes being copied.
7081 * config/tc-sparc.c (md_begin): Set target_big_endian.
7082
7083 * read.c (s_ignore): Delete declaration of is_end_of_line.
7084
7085 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
7086 forward pointers properly.
7087
e02eaa59
SC
7088Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7089
7090 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
7091 wasn't being stored into scnhdr.
7092 * config/obj-coffbfd.h: Add prototype of s_get_segment.
7093 * read.c (TC_START_LABEL): Default definition.
7094 (read_a_source_file): Use TC_START_LABEL macro to work out
7095 if a label has been seen.
7096
543d88e4
ILT
7097Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
7098
c39b3eba
ILT
7099 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
7100 the bottom (make expands variables in dependencies when the
7101 dependencies are read, not when they are used).
7102
543d88e4
ILT
7103 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
7104 a29k .bss section; the mondfe program doesn't like it.
7105
2b1b5697
KR
7106Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7107
7108 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
7109 const.
7110 (current_architecture): Don't need initializer.
7111
7112Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7113
7114 * doc/none.m4: Define Z8000.
7115 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
7116 texinfo file before recreating it.
7117 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
7118 this directory.
7119 (srcdir): Delete second, bogus definition.
7120 (as.info): Look for as-*.texinfo in current directory rather than
7121 in $(srcdir).
7122 (as.dvi): Ditto.
7123 (dvi): New rule.
7124 * doc/configure.in: Create links to all as-*.texinfo files in the
7125 source directory, if that's not the current directory.
7126
7127 * configure.in (per-host): Accept MIPS host with BSD version
7128 number.
7129 (per-target): Classify i486 as i386. Use generic cpu_type instead
7130 of target_cpu in selecting format etc.
7131
7132 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
7133 * read.c (potable): Change .app-file to .appfile.
7134
7135 * config/ho-decstatn.h: Renamed from ho-decstation.h.
7136 * configure.in: Adjusted.
7137
7138 * config/obj-bfd-sunos.*: Unused; deleted.
7139
7140 * Makefile.in (version.c, vers-stamp): Deleted.
7141 (config.h): Define GAS_VERSION.
7142 * as.c (version_string): Deleted declaration.
7143 (main): Look for GAS_VERSION instead.
7144
7145 * doc/as.texinfo: Updated description of -a* (listing) options,
7146 and describe how to pass them through from gcc.
7147
7148 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
7149 process relocs if there aren't any relocs to process. Avoids
7150 malloc/free bug on SCO too.
7151
7152 * as.h: Move local include files below system include files, to
7153 avoid some redefinition complaints on some systems.
7154 (const, volatile): Don't need these conditionally defined if we
7155 use CONST and VOLATILE from ansidecl.h.
7156 (seg_name): Use CONST, not const.
7157
543d88e4
ILT
7158Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
7159
7160 * config/tc-mips.c: Reindented to GNU standards.
7161
2c19a57c
ILT
7162Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
7163
61001d96
ILT
7164 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
7165 (fixup_segment): Add a29k special case; the linker is not prepared
7166 to see a segment offset here.
7167
2c19a57c
ILT
7168 * app.c (do_scrub_next_char): Added new state, 10, modifying state
7169 9 to only keep a space in between identifier characters.
7170
afcc637a
DZ
7171Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
7172
2d4bef5e
DZ
7173 * Makefile.in: add dvi target; as-$(config).texinfo might live in
7174 srcdir, might be in objdir.
afcc637a
DZ
7175
7176 * doc/Makefile.in: dvi depends on as.dvi
7177
80c8fd72
DZ
7178Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7179
7180 * Makefile.in: add installcheck target
7181
fd4b7c25
KR
7182Mon Mar 22 16:25:57 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
7183
7184 * config/tc-sparc.c (sparc_ip): Add support for membar mask names.
7185 Add missing colons in prefetch error messages. Add support for
7186 ASI names.
7187
1369949e
ILT
7188Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
7189
7190 * config/tc-mips.c (macro): Use $AT for any floating point load.
7191
63cdddad
KR
7192Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
7193
7194 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
7195 bignums, but don't emit error message.
7196
69498fa2
JW
7197Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
7198
7199 * Makefile.in (targ-cpu.o): Depend on config.h.
7200
f6a91cc0
ILT
7201Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
7202
7203 * app.c (do_scrub_next_char): Added new state, 9, to avoid
7204 dropping a space immediately following an identifier.
7205 * expr.c, write.c: Rewrote assert expressions to not use multiple
7206 lines; I don't think that can be done portably.
7207 * config/tc-mips.c (macro): Use $AT if target register is zero in
7208 load instruction, which it can be for a floating point load.
7209
a36f6645
ILT
7210Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
7211
3d3c5039
ILT
7212 * write.c (write_contents): Compute the relocs before writing out
7213 the section contents.
7214 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
7215 symbol table and values right.
7216 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
7217 with $L is local.
7218 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
7219 by the section vma.
7220
7221 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
7222 z8k-opc.h, not z8k.h.
7223
a36f6645
ILT
7224 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
7225 symbol.
7226
2a697fa4
DZ
7227Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7228
7229 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
7230
f2f7d044
ILT
7231Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
7232
7233 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
7234 to be on a single line.
7235
ed099874
KR
7236Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7237
7238 * Makefile.in (config.h): Create file, writing out definitions of
7239 target cpu, alias, and canonical name.
7240 (ALL_CFLAGS): No longer define TARGET_CPU.
7241
7242 * Makefile.in (check): Print a message, instead of quitting
7243 silently.
7244
7245 * as.c (main): Don't catch any signals, for now.
7246
7247 * version.c: Deleted.
7248 * Makefile.in: Generate it, putting in only the version number
7249 itself.
7250 (VERSION): New variable.
7251 * as.c: Include config.h.
7252 (main): Reformatted version string. Include target alias. Don't
7253 print if not requested (i.e., unknown -v argument).
7254
7255 * as.c (stralloc): Deleted.
7256 (main): Call strdup instead.
7257
7258 * configure.in: Handle all 68300 series chips.
7259 * config/tc-m68k.c: Include config.h.
7260 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
7261 series cpus as defaults.
7262 (md_parse_option): Accept some m68300 series CPUs as defaults.
7263
7264Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7265
7266 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
7267 not already defined.
7268 (main, got_sig): Use them.
7269 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
7270 values.
7271
7272Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
7273
7274 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
7275 support.
7276
7277 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
7278 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
7279 (struct loc, struct proc, struct file): Moved to tc-mips.c within
7280 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
7281 * config/tc-mips.c: Rearranged for ECOFF support. Added
7282 prototypes for all static functions. Moved existing minimal
7283 debugging format support info #ifndef OBJ_ECOFF blocks.
7284 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
7285 does not support a non sign extended high 16 bits reloc. Adjusted
7286 all callers accordingly.
7287 (tc_get_register): Renamed from get_register, and made non-static.
7288
7289 * config/mips-big.mt, config/mips-lit.mt: New files. Define
7290 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
7291 respectively.
7292 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
7293 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
7294 obj_format ecoff and gas_target mips-lit or mips-big.
7295
c5d4bc88
KR
7296Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
7297
7298 * version.c: Bump to version 2.0.1.
7299
fefba3a5
ILT
7300Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
7301
7302 * write.c (chain_frchains_together): Check that seg_info (section)
7303 is not NULL.
7304 (write_object_file): Call obj_frob_file after setting the symbols,
7305 not before.
7306
2b1b5697
KR
7307Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
7308
7309 * Version 2.0 released.
7310
fefba3a5
ILT
7311Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7312
7313 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
7314
7315Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
7316
7317 * read.h: Define stringer here.
7318 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
7319 places.
7320
bf449293
SC
7321Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7322
7323 * read.c (s_space): Multiply repeat count by mult, not fill.
7324
9471a360
KR
7325Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
7326
7327 * read.c: Include ctype.h.
7328
1101551c
KR
7329Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7330
7331 Patches from Eric Youngdale:
7332 * make-gas.com: Find obstack.obj if it's not in the current
7333 directory.
7334 * read.c (s_ignore): Don't declare is_end_of_line. It's
7335 redundant, and triggers a VMS gcc compiler bug.
7336
7337 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
7338 current segment as an argument. (Ignored in all cases but VMS.)
7339 All callers and definitions changed.
7340
5e4cddb7
ILT
7341Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
7342
7343 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
7344 case compile again.
7345
f3ca2a64
KR
7346Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
7347
7348 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
7349 so "~0x80" won't be rejected.
7350
7351 * config/obj-elf.c: No longer include elf/reloc.h.
7352 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
7353 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
7354 routines.
7355 (obj_elf_xstab): New routine.
7356 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
7357 argument to s_ignore. Put "#if 0" around unused code.
7358 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
7359 Call elf_xstabs for .stabs and .xstabs operators.
7360
7361 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
7362
7363 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
7364 present.
7365
7366 * configure.in: mips-bsd configuration was missing format spec.
7367 Should use aout.
7368
7369 * Makefile.in (Makefile): Depends on configure.in.
7370
7371 * config/tc-mips.c (append_insn): Don't check for alignment of
7372 frag in memory; alignment of instructions in section is a separate
7373 matter.
7374
7375 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
7376 C availability.
7377
7378 * listing.h: Always provide function declarations, not macros, so
7379 pcc won't lose.
7380
7687d89b
JG
7381Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
7382
7383 * CONTRIBUTORS: Update Gilmore entry.
7384
fd4b7c25
KR
7385Mon Mar 1 12:03:16 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
7386
7387 * config/tc-sparc.c (sparc_ip): Correctly assemble prefetch
7388 instructions. Accept integer prefetch function numbers.
7389
7687d89b
JG
7390Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7391
fd4b7c25
KR
7392 * config/tc-sparc.c (s_xword): Now call big_cons, so large
7393 constants are accepted, but symbolic values are not. GCC will not
7394 generate the latter currently.
7395
7687d89b
JG
7396 * frags.c (frag_init): New function.
7397 (zero_address_frag, bss_address_frag): Now initialized at run
7398 time.
7399 * as.c (main): Call frag_init.
7400
160b7f0f
ILT
7401Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
7402
7403 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
7404 Don't unget ch2 if we didn't get it.
7405
0cca30f3
KR
7406Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7407
7408 * doc/Makefile.in (TEXIDIR): Updated for new layout.
7409
7410 * config/tc-sparc.c (s_common): Add support for ELF version.
7411 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
7412 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
7413 New macros.
7414 (md_convert_frag): New macro.
7415
7416 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
7417 symbol, fix the offset so "+2" isn't required.
7418
7419 * config/tc-i960.c (line_comment_chars, line_separator_chars):
7420 Define as common/bss.
7421 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
7422 initializers are sufficient.
7423
7424 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
7425 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
7426 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
7427 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
7428 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
7429 "IGNORE_DEBUG" conditional, since both branches are identical.
7430 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
7431 referencing symbol structure members.
7432 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
7433
7434 * as.h (struct frag): Reordered a couple of fields for better
7435 packing.
7436
7437 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
7438 section info.
7439 (write_contents) [BFD_ASSEMBLER]: New function.
7440 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
7441 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
7442 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
7443 (fixup_segment): Make sure common-section symbols get treated the
7444 same as undefined symbols.
7445 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
7446 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
7447 section info.
7448 * write.h (fix_new): Update prototype.
7449
7450 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
7451 md_section_align, md_undefined_symbol): Don't provide prototypes
7452 if these are defined as macros.
7453 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
7454 section passed.
7455
7456 * symbols.c (symbol_new): Argument NAME is now pointer to const.
7457 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
7458 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
7459 BFD symbol.
7460 (colon): Display other/desc fields of redefined symbol only if
7461 S_GET_OTHER and S_GET_DESC are defined.
7462 (symbol_make): Argument NAME is now pointer to const.
7463 (symbol_find, symbol_find_base): Likewise.
7464 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
7465 * symbols.h: Fix prototypes for new const arguments. Add
7466 prototypes for BFD_ASSEMBLER S_* functions.
7467
7468 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
7469 for changing to an existing section.
7470 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
7471 called by subseg_new and subseg_set.
7472 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
7473 given section name and subseg number.
7474 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
7475 new section/subsection.
7476
7477 * read.c: Don't include ctype.h.
7478 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
7479 for now; should be machine-dependent.
7480
7481 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
7482 targets, forcing BFD use.
7483
7484Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7485
7486 * config/tc-sparc.c: Use PARAMS macro for static function
7487 declarations. Use BFD_RELOC_ macros everywhere, with
7488 compatibility macros declared for non-BFD mode.
7489 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
7490 instead of enum reloc_type.
7491 (emit_sparc_reloc): Commented-out function deleted.
7492 (md_convert_frag): Deleted.
7493 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
7494 (md_apply_fix): Changed calling sequence (conditionally) for BFD
7495 version.
7496 * config/tc-sparc.h (md_convert_frag): New macro.
7497
7498 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
7499 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
7500 of referencing fields directly.
7501
7502 * write.c (cvt_frag_to_fill): New function; extracted from
7503 write_object_file.
7504 (write_object_file) [! BFD_ASSEMBLER]: Call it.
7505 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
7506 and set its size and flags.
7507
7508 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
7509 fields with BFD equivalents. Turn on back-pointers, and add
7510 target-specific fields at end.
7511
7512Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
7513
7514 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
7515 (write_object_file): Set it here instead, so that fixup_segment
7516 can see the correct value.
7517
7518Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7519
7520 * write.c (write_object_file): Check for errors and warnings and
7521 bail out before processing contents.
7522 (chain_frchains_together_1): New function, does most of the work
7523 of remove_subsegs.
7524 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
7525 (remove_subsegs) [! BFD]: Call it.
7526 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
7527 structures and routines.
7528
7529 * config/obj-elf.*: New files.
7530
7531 * config/mips.mt, config/rs6000.mt: Deleted.
7532
7533 * config/h8300.mt: Don't specify compiler here.
7534
7687d89b 7535 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
7536 not the h8300 one.
7537 * config/tc-z8k.h: Comment fix.
7538
7539 * write.c: Reordered some functions for better inlining.
7540 (fixup_segment): Linkrelax code is no longer conditional on
7541 TC_I960.
7542
7543Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7544
7545 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
7546 obj-coffbfd.h}: support for the H8/500
7547
7548Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7549
7550 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
7551 * write.c (write_object_file): Not here.
7552 (fix_new): Initialize fx_addnumber.
7553
7554 * listing.c: Don't include target-cpu.h explicitly, since as.h
7555 includes it.
7556
7557Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7558
7559 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
7560 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
7561 (struct fix): Reordered fields for compactness and efficiency.
7562 Converted some logical fields to 1-bit fields.
7563
7564 * config/obj-aout.h: Use PARAMS.
7565 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
7566 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
7567
7568 * read.c: Don't include listing.h; as.h includes it. Removed
7569 DONTDEF code.
7570 [BFD_ASSEMBLER]: Include subsegs.h.
7571 (old_buffer, new_broken_words): Default initialization is
7572 sufficient.
7573
7574 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
7575 to 0, define stdoutput.
7576 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
7577 Call bfd_set_arch_mach.
7578 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
7579 bfd_close_all_done. Call bfd_perror on failure.
7580 (output_file_append) [BFD_ASSEMBLER]: Don't define.
7581
7582 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
7583
7584 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
7585 if not MANY_SEGMENTS. Define new field bfd_section if
7586 BFD_ASSEMBLER.
7587 (seg_info): New macro.
7588
7589 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
7590 variables, and some irrelevant comments.
7591
7592 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
7593 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
7594 * configure.in: Permit --with-bfd-assembler now, with a warning.
7595 Variable need_bfd is now a boolean, as is new variable bfd_gas.
7596 Set BFDDEF and BFDLIB in Makefile when appropriate.
7597
7598 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
7599 (main): Refer to flag_always_generate_output instead of
7600 flagseen['Z'].
7601
7602 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
7603 (*_section) [BFD_ASSEMBLER]: Define them.
7604 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
7605 set section flags when appropriate.
7606 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
7607 section is not absolute, undefined, or an assembler internal one.
7608 (absolute_section, undefined_section): Always define.
7609 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
7610 switch statements into if-else trees.
7611 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
7612 SEG_BSS and SEG_DATA.
7613
7614 * as.h (frag_now_fix): New macro.
7615 * symbols.c (colon): Use it.
7616
7617Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
7618
7619 * config/tc-mips.c: Added mips support for mips-dec-bsd.
7620 * config/tc-mips.h: Added mips support for mips-dec-bsd.
7621 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
7622 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
7623 * configure.in: Added mips support for mips-dec-bsd.
7624 * atof-generic.c: Define TRUE and FALSE if not defined.
7625
7626Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7627
7628 * version.c: Bumped version number to 1.93.05.
7629
7630Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7631
7632 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
7633 (obj_emit_lineno): Don't need return at end of void function.
7634 (obj_symbol_new_hook): Ditto.
7635
7636 * config/tc-m68k.c: Removed some unused code.
7637 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
7638
7639 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
7640 offset field is set.
7641
7642Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7643
fd4b7c25
KR
7644 * config/tc-sparc.c (sparc_ip): For %uhi and %ulo, if not
7645 ENV64, emit no reloc.
7646 (md_pseudo_table): For ".xword", call s_xword.
7647 (s_xword): New function.
7648
0cca30f3
KR
7649 * config/tc-sparc.c (architecture_requested, warn_on_bump,
7650 md_relax_table): Use default zero initialization.
7651 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
7652 latter, instead of selecting with preprocessor conditionals.
7653
7654Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7655
7656 * configure.in: recognise all sparclite variants
7657
7658Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7659
7660 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
7661 accidentally changed to use subseg_change where it should have
7662 been subseg_new.
7663
6c5f9998
KR
7664Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7665
0bd77bc4
KR
7666 * expr.c (operand): If character other than comma or newline is a
7667 logical end-of-line character, use the newline case.
0cca30f3
KR
7668 From Eric Youngdale:
7669 (operand): Set X_add_number field for floating-point numbers.
7670 (operand): Treat zero byte as end-of-operand.
0bd77bc4 7671
6c5f9998
KR
7672 * configure.in (per-target): Look for with_bfd_assembler option.
7673 For now, only accept "no", until the merge is done.
7674
0cca30f3
KR
7675 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
7676 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
7677 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
7678 * read.c: Finish conversion to S_* macros in the VMS only
7679 parts of the program. Add "const" modifier to hex_value.
7680 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
7681 "ifdef OBJ_VMS".
7682 * expr.c: Add "const" modifier to hex_value.
7683 * symbols.c: Finish conversion to S_* macros in the VMS only
7684 parts of the program. Add "const" modifier to
7685 md_[long,short]_jump_size. Remove declaration of const_flag
7686 (which will be declared in obj-vms.h).
7687 * write.c: Add "const" modifier to md_[long,short]_jump_size.
7688 Fix arguments to VMS_write_object_file.
7689 * config-gas.com: New file. Script for VMS systems to set up the
7690 configuration to build gas for VMS, and create config.status.
7691 * make-gas.com: Redone to work with new scheme.
7692 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
7693 stabs directives.
7694 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
7695 will swap bytes if needed on a big endian system. Use throughout
7696 as needed.
7697 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
7698 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
7699 types of malformed stabs. Change parsing algorithm so that we are
7700 more certain of having all of the information that we need on hand.
7701 * obj-vms.c (final_forward_reference): New function, used to help
7702 resolve the data types of as many struct elements as possible
7703 when some part of the struct is not fully defined by the compiler.
7704 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
7705 stabs directives.
7706 * obj-vms.c (VMS_write_object_file): Define all vtable psects
7707 as symbols as well in the object file. Look for external functions
7708 that start with "__vt.", and turn them into variables, since the
7709 g++ compiler is incapable of doing this.
7710 * tc-vax.c: Add '1' option for backward compatibility with older GCC
7711 versions.
7712 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
7713 * input-scrub.c (as_where): Fix bug where as would crash if we did not
7714 have the name of the source file yet.
7715 * config/ho-vms.h: define HO_VMS, not HO_VAX.
7716
9d76a195
KR
7717Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
7718
7719 * read.c (s_data): Always use "data_section", since it'll map to
7720 SEG_DATA or SEG_E1 if needed.
7721 (s_lcomm): Likewise with bss_section.
7722 (s_fill): Use memset, not bzero.
7723
7724Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7725
7726 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
7727 handling GDB symbol table data.
7728
7729 * config/obj-aout.h (segment_name): Delete definition.
7730 (seg_name): Delete declaration.
7731 * config/obj-bout.h (segment_name, seg_name): Ditto.
7732 * config/obj-vms.h (segment_name, seg_name): Ditto.
7733 * config/obj-coff.h (segment_name): Ditto.
7734 * config/obj-coffbfd.h (segment_name): Ditto.
7735
7736 * Changes for BFD_ASSEMBLER:
7737 * obj.h (obj_crawl_symbol_chain): Declare only if not
7738 BFD_ASSEMBLER.
7739 (obj_header_append, obj_pre_write_hook): Ditto.
7740 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
7741 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
7742 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
7743 otherwise, use seg_name array.
7744 (seg_name): Declare only if not BFD_ASSEMBLER.
7745 (section_alignment): Declare only if not BFD_ASSEMBLER.
7746 (big_section, reg_section, pass1_section, diff_section,
7747 absent_section, text_section, data_section, bss_section): If
7748 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
7749 mapping to segT enum values.
7750 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
7751 if these are used or defined, if BFD_ASSEMBLER.
7752 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
7753 subseg_new split into two functions.
7754 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
7755
7756 * as.h (volatile): Don't define if already defined.
7757 (had_errors, had_warnings): Provide prototypes for ANSI C even if
7758 NO_STDARG.
7759 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
7760 declare with format attribute for -Wformat checking.
7761
85825401
ILT
7762Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
7763
7764 * app.c, config/tc-*.c: Don't include read.h, since it is already
7765 included by as.h.
7766
7767 * These are based on patches from Minh Tran-le
7768 <mtranle@paris.intellicorp.com>.
7769 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
7770 obj_format coffbfd and gas_target i386coff for target.
7771 (i[34]86-*-isc*): New host (uses sysv).
7772 * config/i386aix.mt: Removed (no longer used).
7773 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
7774 (MINUS_G): Removed.
7775 (LDFLAGS): Added, defined as -shlib.
7776 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
7777 * config/te-sco386.h (LOCAL_LABEL): Don't define.
7778 (DOT_LABEL_PREFIX): Define.
7779 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
7780 name rather than L0\001.
7781 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
7782 local_bss_counter.
7783 * symbols.c, symbols.h (local_bss_counter): Removed.
7784 * write.c (write_object_file): bss no longer uses
7785 local_bss_counter. Pass correct data and bss size to
7786 VMS_write_object_file.
7787 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
7788 argument, rather than using local_bss_counter.
7789 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
7790 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
7791 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
7792 (size_section): Restored sanity check.
7793 (do_relocs_for): Base section address on s_paddr rather than
7794 computing it. Adjust a29k R_IHIHALF special case to account for
7795 section paddr (used to require paddr to be zero). If there are no
7796 reclos, set s_relptr to 0. Set relocation size in object_headers.
7797 (fill_section): Always set s_vaddr here, removing
7798 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
7799 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
7800 Set STYP_INFO for .comment.
7801 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
7802 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
7803 (crawl_symbols): Handle 8 character section name correctly. Use
7804 H_{SET,GET}_* macros.
7805 (do_linenos_for): Set lineno size in object_headers.
7806 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
7807 set s_vaddr here. If string_byte_count remains 4, set it back to
7808 0, and only write strings out if there are some. Call
7809 fill_section before do_relocs_for and do_linenos_for.
7810 (obj_coff_section): Handle optional quoted second argument giving
7811 section characteristics.
7812 (obj_coff_bss): Added to handle .bss.
7813 (obj_coff_ident): Added to handle .ident (puts string in .comment
7814 section).
7815 (obj_coff_lcomm): Put common symbols in .bss, not .data.
7816 (fixup_mdeps): Change to segment. Call frag_wane after
7817 md_convert_frag.
7818 (fixup_segment): Explicitly check S_IS_COMMON before making 386
7819 adjustment (already happened only for common symbols, but this is
7820 clearer).
7821 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
7822 * config/tc-i386.c (s_bss): Don't use if I386COFF.
7823 (md_pseudo_table): Ignore .optim and .noopt.
7824 (tc_coff_sizemachdep): New function.
7825 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
7826 compatibility.
7827 (LOCAL_LABEL): Removed definition.
7828 (DOT_LABEL_PREFIX): Defined.
7829
4539aa02
KR
7830Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
7831
6d331d71
KR
7832 * app.c (app_push): Use memcpy, not bcopy.
7833 (do_scrub_next_char): For \", return " not '.
7834 (symbol_chars): Now const.
7835
4539aa02
KR
7836 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
7837 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
7838
7839 * config/obj-coff.h: Don't use #elif.
7840
7841 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
7842 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
7843
3eb802b5
ILT
7844Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
7845
7846 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
7847 already defined.
7848
be06bdcd
SC
7849Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7850
7851 * app.c (do_scrub_begin): allow single quote strings if so
7852 configured.
7853
7854 * config/*z8k*: checkpoint
7855
7856Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
7857
7858 * read.c (read_a_source_file): avoid calling xmalloc (0).
7859
016e0d42
ILT
7860Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
7861
7862 * listing.c: Call xmalloc, not malloc; don't declare malloc.
7863
7864 * Changes to support SCO 3.2v4:
7865 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
7866 SEG_BSS, fill with NOP_OPCODE.
7867 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
7868 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
7869 using ZERO_BASED_SEGMENTS.
7870 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
7871 never set segment address for SEG_E2 (.bss) and don't write out
7872 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
7873 (obj_coff_endef): Don't merge labels or symbols awaiting forward
7874 definitions, and don't merge tags with non-tags. Check for .bf
7875 rather than just checking whether the second character is b and
7876 the third character is f.
7877 (obj_coff_val): gcc can generate values which we don't handle
7878 correctly; discard information for now, since it only affects the
7879 debugging information.
7880 (tag_find_or_name): Don't insert tags in the symbol table.
7881 (yank_symbols): Don't merge labels.
7882 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
7883 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
7884 set segment address if ZERO_BASED_SEGMENTS.
7885 (obj_coff_section): Accept and ignore a trailing quoted string, as
7886 used in AT&T i386 syntax.
7887 (fixup_segment): Take segment as argument. On the i386, adjust PC
7888 relative addends by the segment vaddr.
7889 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
7890 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
7891 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
7892
db33220f
KR
7893Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
7894
016e0d42
ILT
7895 * config/obj-coffbfd.c: Include libcoff.h.
7896
db33220f
KR
7897 * version.c: Now version 1.93.
7898
dde624ef
KR
7899Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
7900
db33220f
KR
7901 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
7902 power-of-two alignment for .align.
7903
dde624ef
KR
7904 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
7905 and leave everything else alone.
7906
7907Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7908
7909 * Makefile.in (as.new): Don't bother saving as.old.
7910
7911 * write.c: Conditionalize on OBJ_VMS, not VMS.
7912 (magic_number_for_object_file): Don't define if OBJ_VMS.
7913
7914 * config/obj-vms.c: Changes for traditional C.
7915
7f2cb270
KR
7916Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7917
7918 * config/ho-generic.h (malloc, realloc): Declare.
7919
7920 * Lots of comment/whitespace changes.
7921
7922 * write.h (struct fix): Some fields reordered, narrowed.
7923
7924 * read.c (MASK_CHAR): Define using C types, not magic number.
7925
7926 * as.c, input-file.c: Deleted some unused code.
7927
7928 * app.c, as.h: Doc fix.
7929
7930 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
7931
7932 * as.h (xmalloc): Argument is long.
7933
7934 * xmalloc.c (error): Remove declaration; as.h takes care of it.
7935
0cca30f3
KR
7936 * doc/as.texinfo: Regrouped documentation of some command-line
7937 options. Updated options documentation for m68k. Some minor
7938 wording/punctuation changes.
7939
7f2cb270
KR
7940Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7941
7942 * configure.in: Accept target OS "vms".
7943
7944 * symbols.c: Merged ANSI and non-ANSI function decls, using
7945 PARAMS macro.
7946
7947 * xmalloc.c: Just include as.h, don't bother trying to figure out
7948 other header files.
7949
7950 * strstr.c, strerror.c: Deleted.
7951 * Makefile.in: Deleted references.
7952
7953 * config/tc-ns32k.c: Don't include header file for string
7954 declarations; leave that to ho-*.h.
7955
7956Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
7957
7958 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
7959 imported from FSF sources.
7960
7961 * messages.c (strerror): Declare unconditionally.
7962
7963 * as.h: Delete alloca and register definitions.
7964
7965 * config/atof-ieee.c (mask): Now const.
7966
7967 * obstack.c, obstack.h: Deleted.
7968
7969 * as.h (flag_readonly_data_in_text): New flag.
7970 * as.c (main): Set it for -R.
7971
7972 * as.h (flag_suppress_warnings): New flag.
7973 * as.c (main): Set it for -W.
7974 * messages.c (as_warn): Check it instead of flagseen['W'].
7975
7976 * as.h (flag_always_generate_output): New flag.
7977 * as.c (main): Set it for -Z.
7978
7979 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
7980 * config/tc-a29k.h: Ditto.
7981 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
7982 macros.
7983
7984 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
7985 macro.
7986 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
7987 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
7988 write.h: Likewise.
7989 * read.c: Likewise.
7990
7991 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
7992 xrealloc from xrealloc.c.
7993 * xrealloc.c: Deleted.
7994 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
7995
7996 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
7997 or vms ho- files.
7998
7999 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
8000
8001 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
8002 don't initialize it with NULL.
8003
8004 * config/ho-vax.h (M_VAX): Deleted; was unused.
8005
8006 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
8007 New files imported from FSF version, contributed by Eric Youngdale.
8008 * README-vms-dbg, config/vms: Deleted.
8009
8010 * ChangeLog, config/ChangeLog: Merged.
8011
8012 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
8013 version.
8014
8015 * input-file.c (input_file_open): Eliminate call to setvbuf.
8016 [USG] (setbuffer): Deleted macro.
8017
6efd877d
KR
8018Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
8019
8020 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 8021 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
8022
8023 * configure.in: No te-386bsd.h file exists; don't try to use it.
8024
7f2cb270
KR
8025 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
8026
8027 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
8028 could be doing emulation.
8029
0cca30f3 8030Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 8031
0cca30f3
KR
8032 z8000 documentation
8033 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
8034 all modified.
8035
6efd877d
KR
8036Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
8037
8038 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
8039
8040 * subsegs.h: add extern to segment_info declaration.
8041
8042 * read.h: added extern declarations for comment_chars,
8043 line_comment_chars, and line_separator_chars.
8044 read.c, app.c: removed definitions of comment_chars,
8045 line_comment_chars, and line_separator_chars.
8046
7f2cb270
KR
8047 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
8048 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
8049 the register name.
8050 (insert_reg): put REGISTER_PREFIX before register names before
8051 putting them in the symbol table.
8052 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
8053 M68KCOFF.
8054
8055 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
8056 section.
8057
8058 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
8059 comment_chars, line_comment_chars and line_seperator_chars
8060 consistently const, and always initialized them. Included read.h.
8061
8062Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8063
8064 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
8065 constant will not fit in an immediate field.
8066 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
8067
8068Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
8069
8070 * obj-coff.c (callj_table): Delete global variable.
8071 (obj_emit_relocations): Define it locally here, and only if
8072 TC_I960 is defined.
8073
8074 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
8075 (m68k_ip): Don't warn about bignum used as float bit-pattern.
8076
8077 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
8078 with a single set using PARAMS macro.
8079
8080 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
8081 of 2.
8082
8083 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
8084
8085 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
8086 so widening works consistently.
8087
6efd877d
KR
8088Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
8089
8090 * version.c: Put conditional "const" before version_string, not
8091 before dummy function for VMS. Now version 1.91.03.
8092
8093 * app.c (do_scrub_next_char): Need double-\ before `000' to show
8094 printed rep of null character.
8095
7f2cb270
KR
8096Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
8097
8098 * obj-coffbfd.c (write_object_file): check return value of
8099 bfd_close_all_done.
8100
559d9aac
ILT
8101Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
8102
7f2cb270
KR
8103 * Support for i386-sysv.
8104 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
8105 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
8106 be used to set them all to zero as was done before.
8107 (fill_section): segment addresses now set in write_object_file.
8108 (fill_section): Don't set STYP_NOLOAD for .bss section.
8109 (fixup_segment): 386 uses strange common symbol format.
8110 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
8111 compatibility with SVR3.2 linker.
6efd877d
KR
8112 * configure.in: i386-sysv and i386-sco use coffbfd.
8113
559d9aac
ILT
8114 * app.c (do_scrub_next_char): discard whitespace after a label.
8115
0f8b9790
DZ
8116Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8117
8118 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
8119 hosts, use the sysv configuration for solaris2
8120
7f2cb270
KR
8121Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8122
132239bf 8123 fix i960+non-bfd coff bit rot.
7f2cb270
KR
8124 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
8125 support for C source listings. (obj_coff_endef): look in the right
8126 part of the symbol for the symbol name
8127
8128 * tc-m68k.c (get_num): make it work for all segments, not just the
8129 first three.
8130
984cf2d7
ME
8131Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
8132
8133 * configure.in: recognize i386-*-bsd emulation.
8134
8135Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8136
8137 * configure.in: use the cpu-vendor-os triple for host and target
8138
7f2cb270
KR
8139Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8140
8141 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
8142 * tc-z8k.c: lots of bug fixes
8143
8144Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
8145
8146 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
8147 #elif, since it is not supported by old compilers.
8148 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
8149 couple of expressions in tc-m68k.c.
8150
984cf2d7
ME
8151Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8152
8153 * read.c (cons): If NO_RELOC is defined, use it.
8154
7f2cb270
KR
8155 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
8156
8157Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
8158
8159 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
8160 local labels to start with a .) and set REGISTER_PREFIX to %.
8161 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
8162
5a0fc1d4
JG
8163Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
8164
8165 * messages.c: Comment changes.
8166
4959cb7b
KR
8167Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
8168
8169 * as.h: Test if __STDC__ is defined only, don't test its value.
8170 * messages.c: If __STDC__ is not defined, define NO_STDARG.
8171
5e9d510e
BK
8172Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
8173
8174 * listing.c (debugging_pseudo): Add stabs and stabn as things to
8175 ignore.
8176
7f2cb270
KR
8177Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
8178
8179 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
8180 sections starting from zero, rather than making them consecutive.
8181 This makes subsequent reloc calculations easier, esp if the object
8182 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
8183 allocate lcomm in .data rather than in .bss. It seems that some
8184 tools can't cope with a non-zero sized bss before linkage.
132239bf 8185
7f2cb270
KR
8186Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8187
8188 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
8189 throughout. That enum no longer means what we thought it meant.
8190
8191 * tc-m68k.c (md_assemble, md_parse_option): Handle new
8192 "-mno-688[58]1" options.
8193
8194 * tc-m68k.c: Added CPU32 support.
8195
8196Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8197
8198 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
8199
569dac15
JW
8200Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8201
8202 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
8203 Change LIBDEPS dependence to LIBS.
8204
efbfb612
ILT
8205Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
8206
8207 * Makefile.in (install): if $(tooldir) exists, install as in
8208 $(tooldir)/bin.
8209
987b1491
ILT
8210Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
8211
ca5e9d49
ILT
8212 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
8213 .word is < -32768 or > 32767. The -J flag causes the error to be
8214 ignored. This is to catch over-sized switches generated by gcc on
8215 systems which don't support the broken .word hack.
8216 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
8217 write.c (fixup_segment): check for signed .word overflow if
8218 WARN_SIGNED_OVERFLOW_WORD.
8219
987b1491
ILT
8220 * write.c (fixup_segment): fixed missing parens in expression
8221 checking for byte or word overflow.
8222
7f2cb270
KR
8223 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
8224 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
8225 WARN_SIGNED_OVERFLOW_WORD.
8226
8227 * obj-coffbfd.c (fixup_segment): fixed missing parens in
8228 expression checking for byte or word overflow.
8229
8230Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8231
8232 Support for i386 coff
132239bf 8233 * obj-coffbfd.h : added stuff
7f2cb270
KR
8234 * tc-i386.c (tc_coff_fix2rtype): new function
8235 * tc-i386.h : new coff defines
8236
b1520b1f
ILT
8237Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
8238
8239 * input-scrub.c (input_scrub_push): call input_file_begin, not
8240 input_scrub_begin.
8241 messages.c (as_perror): print ": " between the passed in error and
8242 the strerror, like perror does.
8243
b53ccaac
ILT
8244Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
8245
8246 * Makefile.in: use gas_target instead of modifying target_cpu.
8247 From Steve Chamberlain:
8248 Makefile.in: Handle m68*-*-coff*.
8249 read.c, read.h: add mult argument to s_space
8250
7f2cb270
KR
8251 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
8252 Motorola and MIT syntax; gas can now assemble either type of
8253 file.
8254 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
8255 From Steve Chamberlain:
8256 m68kcoff.mt: for m68k COFF.
8257 obj-coffbfd.c: (fixup_mdeps) added
8258 (size_section) removed bad sanity check
8259 (fill_section) added rs_machine_dependent case
8260 (write_object_file) call fixup_mdeps
8261 (fixup_segment) set fx_subsy to 0.
8262 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
8263 handle m68k.
8264 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
8265 pseudo ops.
8266
db4d20e5
KR
8267Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8268
8269 * Makefile.in (LIBS): Include opcode library.
8270
e53ab768
KR
8271Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
8272
8273 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
8274 including zero are accepted, pass +0.0.
8275
7e10f53c
ILT
8276Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
8277
8278 * Makefile.in: map "as" through program_transform_name when
8279 installing.
8280
0cca30f3
KR
8281 * doc/Makefile.in: map "as" through program_transform_name when
8282 installing.
8283
b0952e12
JW
8284Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8285
8286 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
8287
7f2cb270
KR
8288Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
8289
8290 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
8291 tc-i960.c (md_ri_to_chars): Always output bout object file in
8292 little endian byte order (used to use endianness of host).
8293
b2f221a9
KR
8294Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8295
8296 * config/tc-m68k.c (init_table): Now const. Always include 68851
8297 data, so that "bc" is available to 68040 cache instructions.
8298 Added "tt0", "tt1", and 68ec030 variants.
8299 (md_assemble): Complain if 68000 (only) and 68881 are specified.
8300 (enum _register): Added TT0, TT1.
8301 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
8302 line number correctly in "internal error" messages. Don't print
8303 architecture-mismatch message for operand errors.
8304
8305 From Colin Smith (colin@wrs.com):
8306 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
8307 than install_operand.
8308
ab737e51
SC
8309Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8310
8311 * listing.c (buffer_line): rewind to the start of include
8312 files, they might be included twice.
8313
7f2cb270
KR
8314 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
8315
7121231f
ILT
8316Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
8317
8318 * Makefile.in: defined TARGET_CPU for C code so that it can choose
8319 one element of a family.
8320
7f2cb270
KR
8321 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
8322
8323 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
8324 so that we can assemble hand-written libgcc code.
8325
4772861e
KR
8326Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8327
8328 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
8329 has already been formatted (but may still contain %-characters).
8330 (as_bad): Likewise.
8331
7f2cb270
KR
8332Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
8333
8334 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
8335 written with indirection on the last two operands, which can be
8336 either data or address registers. Added a new operand type 'r'
8337 which accepts either register type. Added '(' to notend stuff in
8338 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
8339
09952cd9
KR
8340Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
8341
8342 * as.h (enum _relax_state): Start off at one, not zero, to better
8343 catch uninitialized-variable errors.
8344 (linkrelax): Declare new variable.
8345
8346 * messages.c (warning_count, error_count): Default initializer is
8347 sufficient.
8348
8349 * write.c: Merged some declarations, using PARMS macro.
8350 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
8351 data_last_frag): No longer static.
8352 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
8353 defined, call it. Change segments before calling fixup_segment.
8354 (relax_align): If linkrelax, provide extra padding.
8355
8356 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
8357 their not having symbols associated.
8358
8359 * tc-i960.c (norelax, instrument_branches): Default initializer is
8360 sufficient.
8361 (linkrelax): Delete variable definition.
8362 (mem_fmt): Call fix_new with NO_RELOC.
8363 (tc_bout_fix_to_chars): Handle alignment relocs.
8364 (i960_handle_align): New function.
8365 * tc-i960.h (linkrelax): Delete declaration.
8366 (HANDLE_ALIGN): New macro; calls i960_handle_align.
8367 (NEED_FX_R_TYPE, NO_RELOC): New macros.
8368
a457f4d9
KR
8369Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
8370
8371 * config/sparc.mt: New file. Grab sparc opcode table from bfd
8372 library.
8373
4b857710
ILT
8374Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
8375
8376 * Makefile.in: always create installation directories. Removed
8377 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
8378 FLAGS_TO_PASS to recursive makes.
8379
0cca30f3
KR
8380 * doc/Makefile.in: always create installation directories.
8381
f7e9bc5a
SC
8382Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8383
8384 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
8385 being used with args swapped, causing occasional lossage when
8386 refilling buffers after an include file.
8387
c1c28543
KR
8388Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
8389
8390 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
8391 version. Discard bogus DONTDEF version.
8392 (as_warn, as_bad, as_fatal): Likewise.
8393
2e20e59a
KR
8394Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
8395
8396 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
8397 selected architecture, print a message saying so and listing what
8398 processors support it, rather than saying "operands mismatch".
8399
c8c7e0bf
KR
8400Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
8401
8402 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
8403
8404 * config/ho-rs6000.h (M_RS6000): Don't define it.
8405 (free): Declare it.
8406 (BROKEN_ASSERT): Define it if not __STDC__.
8407
7f2cb270
KR
8408Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
8409
8410 * sparc.mt: New file.
8411
8412Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
8413
8414 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
8415 if TN_SUN3; otherwise align to 2**N-byte bounary.
8416
7fd3560a
SC
8417Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8418
8419 * read.c (s_fill): make the .fill size clamped error a warn and
8420 fix bug where 0's were always placed.
8421
7f2cb270
KR
8422 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
8423 two bytes of any constant with 0xff:
8424
62594bd7
SC
8425Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8426
8427 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 8428 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 8429
7f2cb270
KR
8430Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
8431
8432 * tc-m68k.c (try_index): Error if index scaling specified and
8433 assembling for an older CPU than a 68020.
8434
680227f3
KR
8435Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
8436
8437 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
8438 fx_offset into account.
8439
c51ccfd5
KR
8440Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
8441
8442 * configure.in (mips host): Accept "ultrix" with version number.
8443
8444 * expr.c (floating_constant): Separate "=-" to avoid confusing
8445 ancient or broken compilers.
8446
8447 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
8448 processor/opcode mismatch, so reword the error message.
8449 (md_assemble): If no CPU has been set (even if FPU/PMMU
8450 characteristics have been), default to 68020. Don't need extra
8451 quotes around error string.
8452
14f1fc24
JW
8453Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8454
8455 * read.c (potable): Revert sac's incorrect change made Jul 13.
8456 Align really is supposed to be ptwo not nbytes.
8457
8458Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
8459
8460 * Makefile.in: _Do_ include libiberty. (from sef)
8461
8462Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
8463
8464 * expr.c (integer_constant): Handle "0f" and "0b" label references
8465 properly.
8466
462088b8
SC
8467Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8468
8469 * write.c (fixup_segment): if relaxing, don't do anything.
8470 * config/obj-bout.[ch] : maintain the a_relaxable file header info
8471 * config/tc-i960.c: new option -linkrelax
8472
8473Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8474
8475 * expr.c (expr): allow SEG_BSS in expressions
8476 * read.c (potable): align should be nbytes, not ptwo!
8477 * write.c (write_object_file): extra glue for new bss attributes
8478 (relax_segment): SEG_BSS is ok now
8479 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
8480
7f2cb270
KR
8481Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
8482
8483 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
8484
462088b8
SC
8485Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
8486
8487 * configure.in: recognize m680x0 as having sun3 emulation mode for
8488 vxworks environment.
8489
8490
0b0b5dba
DHW
8491Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
8492
8493 * Makefile.in: Add program_suffix (parallel to program_prefix)
8494
7c2d4011
SC
8495Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8496
8497 * app.c (process_escape): new function to handle escapes the right
8498 way, (do_scrub_next_char): use new function
8499 * cond.c (s_ifdef): do ifdef/ifndef right
8500 * read.c (s_fill): make the , expressions optional like the doc
8501 says
8502 * config/tc-h8300.[ch]: better warnings
8503
90d49457
SC
8504Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8505
65bfcf2e
SC
8506 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
8507 as data0_frchainP
8508
8509 * write.c (write_object_file): various changes to handle data in
132239bf 8510 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 8511
7f2cb270
KR
8512 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
8513 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
8514 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
8515 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
8516 it into SEG_BSS
462088b8 8517
f8701a3f
SC
8518Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8519
8520 * expr.c(expr): allow SEG_REGISTER in expressions.
8521 * read.c(pseudo_set): register expressions can be the source of a
8522 set.
8523 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
8524 goto SEG_TEXT (if a.out)
8525 * write.c (write_object_file): If a.out don't use the old way for
8526 -R.
8527 * config/obj-a.out (s_sect): complain if the user tries to use a
8528 subsegment with a value which might interfere with out -R hackery.
8529 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
8530 rather than use ugly if tree. (init_regtable): insert register
8531 names into symbol table.
8532
ebfb4167
MT
8533Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
8534
8535 * write.c (write_object_file): keep the fix_tail clean, which
8536 fixes a bug in -R where relocations were being lost.
8537
8538Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
8539
8540 * configure.in: recognize m680x0 as having sun3 emulation mode for
8541 vxworks environment.
8542
8543Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
8544
8545 * configure.in: recognize m680x0 as an m68k
8546
dfd53fe9
JW
8547Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8548
8549 * configure.in: Recognize sparclite as a sparc variant.
8550
7f2cb270
KR
8551 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
8552 -Asparclite flag.
8553
d312e231
SC
8554Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8555
8556 * config/tc-a29k.c: lint
8557 * listing.c, expr.c: patches from Andrew Smith
8558
0cca30f3
KR
8559Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8560
8561 * doc/Makefile.in: use m4 rather than gm4.
8562
7f2cb270
KR
8563Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8564
8565 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
8566 calc the base of relocs correctly.
8567 * tc-a29k.c (parse_operand): allow expressions to be in any section.
8568
d312e231
SC
8569Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
8570
8571 * as.c, write.c: use -K rather than -k for the broken word warning
8572 option.
8573
fa493b93
RP
8574Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
8575
8576 * Makefile.in: do not print recursion lines.
8577
d96c09ed
RP
8578Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8579
8580 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
8581
8582Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
8583
8584 * write.c (write_object_file): For b.out format, round up section
8585 start addresses to match required alignment.
8586
81484684
KR
8587Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
8588
8589 * Makefile.in (install): Install into $(tooldir)/bin, since that's
8590 where gcc looks for it.
8591
3876b4c5
SEF
8592Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
8593
8594 * Makefile.in: Changed some lines to be less confusing for some
8595 makes.
8596
8597 * input-file.c: Conditionalize on _IOFBF, not VMS.
8598
8599 * read.c, write.c: Change a series of ifdef/elif to
8600 ifdef/else/ifdef etc.
8601
8602Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
8603
8604 * symbols.c (fb_label_init): fix sizeof to memset.
8605
95a925b8
RP
8606Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
8607
3876b4c5
SEF
8608 * Makefile.in: install the man page.
8609
95a925b8
RP
8610 * Makefile.in: pass down MAKEINFO explicitly on info.
8611
0cca30f3
KR
8612 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
8613
5d53038b
SC
8614Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8615
8616 * flonum-const.c: renamed flonum-konst.c to stop dos name
8617 conflict.
8618
7f2cb270
KR
8619Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
8620
8621 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
132239bf 8622 tc-m68k.h to te-sun3.h.
7f2cb270 8623
8c1b25e4
RP
8624Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
8625
8626 * configure.in: vxworks68 gets te-sun3.h.
8627
8628 * expr.c: remove limitation that local_labels_dollar or
8629 local_labels_fb must be < 10.
8630
8631 * symbols.c: remove local_labels_dollar, replace with a function
8632 interface for a sparse array. All users adjusted.
8633
7f2cb270
KR
8634 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
8635
0cca30f3
KR
8636Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8637
8638 * doc/Makefile.in: commented out line for building as-all.texinfo.
8639 This is temporary.
8640
8641 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
8642
8c1b25e4
RP
8643Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
8644
8645 * Makefile.in: added check target.
8646
8647Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8648
8649 * Makefile.in: added tooldir and program_prefix.
8650
8651Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
8652
8653 * write.{c,h} (fix_new): Make these declarations consistent.
8654
1651b22d
MT
8655Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
8656
8657 * Makefile.in (strerror.o): Add rule so that broken Sun make can
8658 work in subdirs.
8659
5373c439
SC
8660Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
8661
8662 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
8663
8664 * expr.c (operand): if can't work out what sort of operand it is,
8665 then look through FLT_CHARS for a hint.
8666
8c1b25e4
RP
8667Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
8668
8669 * Makefile.in, configure.in: removed traces of namesubdir,
8670 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
8671 copyrights to '92, changed some from Cygnus to FSF.
8672
0cca30f3
KR
8673 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
8674 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
8675 copyrights to '92, changed some from Cygnus to FSF.
8676
f24f7577
SC
8677Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8678
14d3e47b
SC
8679 * expr.c: If an expression is single comma, then return with
8680 SEG_ABSENT rather than an error - since the sparc front end does
132239bf 8681 really strange things with things like fbge,a
14d3e47b 8682
f24f7577
SC
8683 * as.h: include bfd.h if using many sections
8684 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
8685 local labels didn't work.
8686 * listing.c (list_symbol_table): don't core dump when there's no
8687 symbol there.
8688 * write.c, write.h: call fix_new with the right number of args on
8689 the H8.
8690 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
8691 errors nices
8692
c593cf41
SC
8693Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8694
8695 * app.c: MRI compatibility - allow single quote to start a string.
8696 * as.c: fix typo recently introduced.
8697 * as.h : Don't include aout/reloc.h - it's not right for COFF!
8698 * expr.c: Much rewriting, to accomodate MRI syntax for
8699 expressions. Also easier to read now.
8700 * listing.c: Put back defuns
8701 * read.c: modified to accept MRI syntax, put back listing pseudo
8702 ops so that an assembler built with NO_LISTING ignores list ops
8703 rather than pukes.
8704 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
8705 machine is a SPARC or a 29K.
8706 * config/obj-aout.c: added s_sect pseudo op
8707 * config/obj-coffbfd.c: lints, set the filehdr flags right and
8708 fill in the timestamp.
8709 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
8710 anymore, define all the relocs which the tc-<x> bit will use so we
8711 can translate from them to the coff types.
8712 * config/tc-a29k.c: reloc_type isn't ane enum any more
8713 * config/tc-m68k.c: Added NO_RELOC definition.
8714
2d97273c
RP
8715Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8716
c593cf41
SC
8717 * Makefile.in: put header files before C source for TAGS; remove
8718 references to non-existent syscalls.h.
8719
2d97273c
RP
8720 * read.c, write.c subsegs.c: back out the .bss changes.
8721
7f2cb270
KR
8722 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
8723
8724 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
8725
8726 * a.out.h: removed.
8727
6d5460ab
RP
8728Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
8729
8730 * symbols.c (local_label_name): symbols now start with ^A.
8731
8732 * read.c, subsegs.c, write.c obj-coff.c: added handling of
8733 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
8734 generate these sections. .align: will use NOP_OPCODE or 0
8735 for padding. This is just for being nice to the
8736 disassembler.
8737
8738 * expr.c (operand): changed to generate local label "\001L0"
8739 starting with a ^A so that it is recognized as a local label.
8740
8741 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
8742
7f2cb270
KR
8743 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
8744 i/o opcodes - inb, inw, outb and outw. string manipulation with
8745 att syntax - scmp, slod, smov, ssca, ssto.
8746
8747 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
8748 to just after .file .
8749
8750 In obj_crawl_symbol_chain() where it tries to put the external
8751 symbols apart, with the condition:
8752 (!S_IS_DEFINED(symbolP) &&
8753 !S_IS_DEBUG(symbolP) &&
8754 !SF_GET_STATICS(symbolP))
8755 it was moving too many symbols out. So I switch it back to the
8756 condition:
8757 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
8758
8759 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
8760 so that we don't use the F_RELFLG which make the linker complain
8761 that somebody has stripped the relocation info.
8762
8763 Also, the AIX ld program require that the relocation table
8764 is sorted by r_vaddr like the standard ATT assembler does.
8765
8766 [he also changed the sizeof(struct ...)'s into the coff
8767 style FOOSZ macros. I'm not sure this is right, but I can't
8768 remember why. xoxorich.]
8769
d6e344db
RP
8770Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
8771
8772 * Makefile.in, configure.in, doc: use the doc. Build it, install
8773 it, clean it, etc.
8774
eb9eacd3
RP
8775Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
8776
aa3782d2
RP
8777 * read.c: white space and comments only.
8778
f816adbc
RP
8779 * configure.in: use the new atof-ns32.c for ns32k.
8780
eb9eacd3
RP
8781 * write.c: comment change only.
8782
7f2cb270
KR
8783 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
8784 aren't yet integrated.
8785
8786 * tc-i860.[hc]: blew off the dust. Something must still be done
8787 about conflicting relocation types.
8788
8789 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
8790 real thing.
8791
8792 * tc-i960.c, tc-sparc.c: white space and comments only.
8793
8794 * tc-a29k.h: delete duplicate macro definition.
8795
8796 * new file atof-ns32k.c copied from hack's last unreleased gas.
8797
542e1629 8798Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 8799
eb9eacd3
RP
8800 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
8801 rather than abort.
132239bf 8802
542e1629
RP
8803 * nearly everything. flush ChangeLog, package as gas-1.92.1.
8804 ChangeLog's prior to this are sketchy at best. I have logs.
8805 They just aren't ChangeLogs.
33e61c95
ILT
8806
8807\f
8808Local Variables:
de442a3c
ILT
8809mode: indented-text
8810left-margin: 8
8811fill-column: 74
33e61c95
ILT
8812version-control: never
8813End:
This page took 0.550359 seconds and 4 git commands to generate.