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