* config/tc-mips.c (RELAX_RELOC1, RELAX_RELOC2): Cast values to bfd_vma before
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
aac4d5a7
KR
1Mon Jan 9 16:22:28 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
2
483971bd
KR
3 * config/tc-mips.c (RELAX_RELOC1, RELAX_RELOC2): Cast values to
4 bfd_vma before subtracting.
5
aac4d5a7
KR
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
1113140a
ILT
10Sun 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
2a6978af
KR
15Fri 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
71f9b3c0
KR
19 * config/tc-alpha.c (alpha_ip): Delay calls to emit_add64 until
20 after any remaining operands are also known to match.
21
f949f7b8
KR
22Fri 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
84951544
KR
29 * Makefile.in (dependencies): Make $(OBJS) depend on as.h and
30 everything it includes. Delete those files from per-file
31 dependencies.
32
cd3b81bd
KR
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
582d2a4d
JL
55Wed 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
4a9c666e
KR
60Wed Dec 28 15:01:01 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
61
62 * subsegs.h: Include obstack.h.
63
64Tue Dec 27 18:16:04 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
65
66 * as.h (struct frag): Enable align* components now.
67
7e2283d4
KR
68Tue Dec 20 14:56:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
69
87e48495
KR
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
9ad5755f
KR
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
d675782a
KR
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.
104start-sanitize-rce
105 * config/tc-rce.c: Ditto.
106end-sanitize-rce
107
108 * config/obj-coff.c (fixup_segment): Reformat condition in an `if'
109 statement.
110
7e2283d4
KR
111 * Makefile.in (SUBDIR_INCLUDES): Deleted.
112
972b2401
ILT
113Tue 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
117start-sanitize-arc
118Tue Dec 20 09:10:40 1994 Doug Evans <dje@canuck.cygnus.com>
119
120 * config/tc-arc.c: Delete lots of sparc pseudo-ops.
121end-sanitize-arc
122
847a01cd
ILT
123Mon 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
60937ce7
JL
130Mon Dec 19 14:15:07 1994 Jeff Law (law@snake.cs.utah.edu)
131
b8f7596c
JL
132 * config/tc-hppa.c (pa_subspace): Make sure SEC_HAS_CONTENTS is
133 clear for a section with the "ZERO" attribute.
134
60937ce7
JL
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
88cc1324
DE
149start-sanitize-arc
150Mon 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.
162end-sanitize-arc
163
703139a8
KR
164Mon Dec 19 13:49:07 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
165
5cda0c7a
KR
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
703139a8
KR
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
b63defaa
KR
188Fri Dec 16 14:40:16 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
189
d6905776
KR
190 * config/tc-sh.c (md_begin): Don't fill in md_relax_table here.
191 (md_relax_table): Use static initialization.
192
091f3a62
KR
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
b63defaa
KR
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
719153bf
SS
205Fri Dec 16 11:07:10 1994 Stan Shebs <shebs@andros.cygnus.com>
206
254603ca
SS
207 * config/obj-coff.h: Include libcoff.h, not ../bfd/libcoff.h.
208
719153bf
SS
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
0141b6c2
ILT
213Fri 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
8b1f3552
JW
219Thu 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
7ac36f64
ILT
225Tue 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
6baef6d2
ILT
230Tue 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
bd869652
KR
237Fri Dec 9 21:04:17 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
238
a55774a1
KR
239 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Use
240 bfd_install_relocation.
241
3504635a
KR
242 * ecoff.c (ecoff_set_gp_prolog_size): If there is no current
243 routine, just return.
244
bd869652
KR
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
4181c985
KR
249Thu Dec 8 17:48:25 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
250
b8f52750
KR
251 * Makefile.in (NM_FOR_TARGET): Use ../binutils/nm.new, not just
252 plain nm.
253
4181c985
KR
254 * configure.in (ns32k-pc532-mach*): Select correct emulation.
255 (mips-sony-bsd*): Use ecoff.
c5745996 256 (mips-*-gnu*): New target, using aout format, from Roland McGrath.
4181c985
KR
257 * configure: Regenerated.
258
6ea93cc9
DE
259start-sanitize-arc
260Tue Nov 29 18:12:22 1994 Doug Evans <dje@canuck.cygnus.com>
261
262 * configure.in (arc-*-elf*): Recognize.
263 * configure: "regenerated".
4181c985 264 * config/tc-arc.c, config/tc-arc.h, config/arc.mt: New files.
6ea93cc9
DE
265end-sanitize-arc
266
75af551f
KR
267Tue Nov 29 13:58:10 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
268
d2a0c9f9
KR
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
75af551f
KR
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
23c17fea
KR
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
4181c985 304start-sanitize-rce
75af551f
KR
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.
4181c985 310end-sanitize-rce
75af551f 311
326fe1a3
DE
312Mon 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
e07f8926
JL
317Mon 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
3f67e000
SC
331Wed 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
32c7d5d8
JL
341Wed 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
740e5428
JL
346Tue 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
aa30c7ee
SC
351Tue Nov 22 14:37:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
352
353 * Makefile.in (INSTALL_XFORM): Fix typo.
354
3a443b1e
C
355Tue 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
e67b3aa3
JL
360Tue Nov 15 21:44:13 1994 Jeff Law (law@snake.cs.utah.edu)
361
3a443b1e
C
362 * config/tc-hppa.c (pa_subspace): Make sure to always reset
363 current_subspace.
364 (pa_text, pa_data): Likewise.
365
e67b3aa3
JL
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
8de6b5f8
KR
373Tue 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
1a9a95bb
JL
378Tue 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
757d4129
KR
385Wed 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
642b6186
ILT
389Wed 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
f4c01c95
KR
393Mon Nov 7 01:58:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
394
642b6186
ILT
395 * Makefile.in (VERSION): Bump to 2.5.3.
396
3e7acf98
KR
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
f4c01c95
KR
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
5b162d37
KR
410Thu Nov 3 20:20:40 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
411
b4123234
KR
412 * config/go32.mh: Unused file deleted.
413
5b162d37
KR
414 * read.c (get_absolute_expression): Indicate that the error may
415 merely be that the expression can't currently be reduced.
416
0cb42d6f
C
417Thu 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
f2889110
KR
429Thu 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
a2c49209
ILT
485Thu 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
2622a6c2 490Tue Nov 1 16:10:59 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
da15a93e
ILT
491
492 * config/tc-mips.c (s_change_sec): If not GPOPT, don't permit
493 switching to the readonly data section.
2622a6c2
ILT
494
495 * ecoff.c (ecoff_directive_type): Fix warning message.
496
ec11c09c
JL
497Sun 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
4bb0cc41
ILT
502Tue Oct 25 14:44:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
503
94b68f04
ILT
504 * config/tc-mips.c (macro): Ensure that mips2 case of M_LI_DD in
505 .rdata does not become a variant frag.
506
4bb0cc41
ILT
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
9da4c5d1
ILT
512Fri 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
e443a021
JL
519Thu 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
030915dc
ILT
525Wed 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
683f4743
ILT
536Tue 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
f10a96cb
ILT
541Mon Oct 17 18:06:05 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
542
62d39689
ILT
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
f10a96cb
ILT
547 * read.c (read_a_source_file): The second argument to as_where is
548 unsigned int *, not int *.
549
550Mon 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
2d928291
KR
558Fri Oct 14 19:06:46 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
559
560 * Makefile.in (BISON): Use bison -y, not bison.
561
562Thu 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
ba49e48d
KR
569Wed 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
4992dbc9
C
574Wed 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
2cc0357f
KR
579Wed 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
eab55c1c
C
585Wed 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
f0b556a2
ILT
590Wed 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
3256c4b5
KR
599Wed 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
15dc8a20
KR
606Tue 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
c8caa6c5
ILT
611Tue 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
6d60424f
KR
617Tue 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
15a90f75
KR
623Sat 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
ecee4027
KR
644Fri 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
669Wed 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
b2d7b325
ILT
674Wed 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
dc87e0ce
KR
681Fri 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
76a390e2
KR
686Fri Sep 30 16:23:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
687
13a336c4
KR
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.
dc87e0ce
KR
693 * make-gas.com: Deleted.
694
76a390e2
KR
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
9dc6c00f
KR
735Thu Sep 29 18:57:06 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
736
10ff87e9
KR
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
9dc6c00f
KR
742 * write.c (print_fixup): Print source location on first line.
743 Show fx_r_type and fx_addsy fields.
744
648acaa0
KR
745Wed Sep 28 14:56:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
746
b8480abc
KR
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
648acaa0
KR
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.
9ff0f5ef
KR
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.
648acaa0 785
7b777690
ILT
786Wed Sep 28 11:50:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
787
620a590e
ILT
788 * Makefile.in (gasp.o): Depends upon config.h.
789
3f42c69e
ILT
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
7b777690
ILT
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
797Mon 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
803Fri 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
144659ab
ILT
817Fri 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
826Thu 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
bdaa198a
KH
839Thu 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.
cacd15c4 843 * read.c (read_a_source_file): fix a bug in generate_asm_lineno
bdaa198a
KH
844 checking.
845
8068b96a
KR
846Wed 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
144659ab
ILT
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
cacd15c4 866 Mon Sep 19 17:14:44 1994 Pat Rankin (rankin@eql.caltech.edu)
8068b96a
KR
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
3af9783a
ILT
871Wed Sep 21 11:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
872
87bbf920
ILT
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
3af9783a
ILT
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
e8d4d475
ILT
886Tue 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
8268e3ec
JL
893Mon 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
eb3028aa
KR
898Mon 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
35e70f58
KR
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
d1578de3
ILT
957Mon 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
e3683042
ILT
962Thu 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
75c28b49
JL
966Tue Sep 13 20:05:47 1994 Jeff Law (law@snake.cs.utah.edu)
967
fcacfef6
JL
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
75c28b49
JL
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
26f4447a
KR
988Tue Sep 13 21:15:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
989
d7152d07
KR
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
26f4447a
KR
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
a9898563
SC
1010Tue 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
28d3e4a3
KR
1019Tue Sep 13 16:20:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1020
b9419dd2
KR
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
460531da
KR
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
28d3e4a3
KR
1052 * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall):
1053 Rewrite handling of program_transform_name.
1054
b9419dd2
KR
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.
28d3e4a3
KR
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
430a3997
ILT
1070Tue 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
e23b25ec
KR
1076Tue 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
c570d361
KR
1082Mon 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
1b434ced
ILT
1146Mon Sep 12 17:51:39 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1147
1779d515
ILT
1148 * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
1149 reportedly to be used on Irix 6.
1150
c1444ec4
ILT
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
1b434ced
ILT
1158 * read.c (read_a_source_file): The second argument to as_where is
1159 unsigned int *, not int *.
1160
326d16ca
KH
1161Thu 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
eb4fd16f
ILT
1175Thu 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
20c9d49a
SC
1181Wed Sep 7 17:21:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1182
eb4fd16f
ILT
1183 * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing
1184 nothing becomes macro doing nothing.
20c9d49a 1185
bf111c9f
KR
1186Wed Sep 7 19:10:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1187
353acf31
KR
1188 * Makefile.in (Makefile): Depend on config.status.
1189 (config.status): Run config.status from . instead of srcdir.
1190
72373532
KR
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
bf111c9f
KR
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
c8570de8
ILT
1215Wed 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
8c63448a
ILT
1221Tue 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
a5a2f156
KR
1232Mon 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
8c63448a 1238Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
318b02b6
KR
1239
1240 * config/ho-riscix.h, config/tc-arm.c, config/tc-arm.h: New files
1241 * configure.in: Recognize the arm.
1242
3ffbc907
ILT
1243Fri 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
1248Thu 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
fb589130
KR
1259Wed Aug 31 17:43:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1260
7f64fd4e
KR
1261 * atof-generic.c: Deleted alloca handling here.
1262
fb589130
KR
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
c7072f56
KR
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
bdee23af
ILT
1276Wed 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
a48f997a
KR
1283Tue 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
0c49642d
ILT
1288Mon 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
65ad84c1
KR
1294Sun Aug 28 13:22:52 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
1295
e9296bdb
KR
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
c72aa0e2
KR
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
65ad84c1
KR
1317 * Makefile.in (distclean, realclean): Remove new
1318 configure-generated files.
1319
aaeee550
KR
1320Sat Aug 27 20:26:12 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
1321
b11fb939
KR
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
27bf48ec
KR
1356 * input-file.c: Don't include assert.h here, 'cause as.h already
1357 includes it.
1358
aaeee550
KR
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
6668a062
KR
1376Fri 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
8ef75e2c
KR
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
904b6037
ILT
1385Wed Aug 24 12:46:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1386
20ae2fb8
ILT
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
fd4f335c
ILT
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
a2a1a548
ILT
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
904b6037
ILT
1425 * configure.in: Recognize i586 as a synonym for i[34]86.
1426
1427Tue 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
2cffb4f4
JL
1439Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
1440
05d0c2cc
JL
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
1444Tue 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.
2cffb4f4 1451
101fbf7e
ILT
1452Fri 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
a1dafd55
SG
1457Tue 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
55933a58
ILT
1464Tue Aug 9 11:12:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1465
8e479636
ILT
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
c9a89891
ILT
1470 * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
1471 zero. Undoes change of June 4, 1993.
1472
55933a58
ILT
1473 * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
1474 orion.
1475
1476Mon 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
1503edcc
JL
1482Mon 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
2cd14ddc
ILT
1487Mon 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
6670b7f3
SC
1492Sat 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
1497Mon 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
363d6150
JL
1503Mon Aug 1 02:40:43 1994 Jeff Law (law@snake.cs.utah.edu)
1504
fbf71886
JL
1505 * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
1506 field in the space chain.
1507
363d6150
JL
1508 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
1509 hppa_gen_reloc_type.
1510
5e0a90a8
KR
1511Thu 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
39792caf
KR
1527Tue 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
10db66ec
KR
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
39792caf
KR
1600Fri Jul 15 15:36:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1601
1602 * subsegs.c (section_symbol): Had last change backwards.
1603
3b6d6f71
KR
1604Thu Jul 14 13:21:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1605
462ab71d
KR
1606 * config/atof-ns32k.c: Deleted.
1607
3b6d6f71
KR
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
259e35d4
KR
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
4ac7a9e4
ILT
1705Wed 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
6b510a40
KR
1712Tue Jul 12 21:27:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1713
1714 * config/ho-sysv.h (realloc): Declare.
1715
3c498933
KR
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
a85cd289
KH
1733Tue 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
51d8e5ae
ILT
1747Mon 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
64d527f7
ILT
1753Sat 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
6f15d409
SC
1758Fri Jul 8 15:22:07 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1759
6670b7f3 1760 * gasp.c (process_pseudo_op): Pass right args to do do_aif.
6f15d409
SC
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
daad3bbf
KH
1765Fri 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
13d9fd33
SC
1779Thu 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
1788Thu 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
8fd04cba
JL
1793Thu Jul 7 11:31:32 1994 Jeff Law (law@snake.cs.utah.edu)
1794
13d9fd33
SC
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
8fd04cba
JL
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
8882a587
ILT
1802Wed 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
4174e052
KR
1807Tue 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
10f67315
KR
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
bcb62abf
ILT
1817Tue 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
655f3ef4
JL
1825Mon 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
1830Fri 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
04f0c2e3
KR
1835Thu 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
f2554579
ILT
1841Thu 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
6f0b87c3
SS
1850Wed 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
1856Mon 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
f488a4d6
SS
1861Sun 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
1f12ae43
JL
1866Wed 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
dff770c8
ILT
1871Tue Jun 21 11:32:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1872
1f12ae43
JL
1873 * subsegs.c (subseg_change): Clear seginfo after allocating it.
1874 (subseg_get): Pass actual size of seginfo to memset.
1875
dff770c8
ILT
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
e0b36f18
KR
1888Mon Jun 20 16:30:54 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1889
639c820d
KR
1890 * configure.in (ppc-*-elf*): New target, like -sysv4*.
1891
e0b36f18
KR
1892 * expr.c (operand): If "0f" is followed by '\0', don't do eol
1893 checks.
1894
256816ca
ILT
1895Mon 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
de442a3c
ILT
1900Fri 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
0e68b3bc
JL
1905Fri Jun 17 11:01:04 1994 Jeff Law (law@snake.cs.utah.edu)
1906
239f16dd
JL
1907 * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy.
1908
0e68b3bc
JL
1909 * config/tc-hppa.h (elf_hppa_final_processing): Declare.
1910
5ee93e0a
KR
1911Wed Jun 15 20:44:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1912
286272fb
KR
1913 * as.c (parse_args): Cast xmalloc return value.
1914
5ee93e0a
KR
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.
4174e052 1943 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
5ee93e0a
KR
1944 for gcc2's predefined types "complex float", "complex double",
1945 and "complex long double" (identical to complex double).
1946
36a87ad7
ILT
1947Wed Jun 15 12:32:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1948
0e35ba9b
ILT
1949 * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
1950 section symbol, not C_LABEL.
1951
adf05987
ILT
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.
36a87ad7 1955
a5183648
ILT
1956Mon 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
02d4e923
ILT
1961Sat 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
726672c5
ILT
1975Fri Jun 10 13:48:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1976
7b1e07b4
ILT
1977 * config/obj-elf.c (obj_elf_section): Don't set any flags based on
1978 the type of a special section.
1979
726672c5
ILT
1980 * config/ho-sunos.h: Include <stdlib.h>. Don't declare malloc,
1981 realloc, free, or atol.
1982
0b3d0999
BC
1983Wed 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
daa7e184
ILT
1988Tue 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
d2c71068
ILT
1993Mon 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
1fbfe108
ILT
2002Fri 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
f3d817d8
DM
2009Fri Jun 3 12:50:13 1994 David J. MacKenzie (djm@rtl.cygnus.com)
2010
baed44cd
DM
2011 * as.c (show_usage), config/tc-alpha.c (md_show_usage),
2012 config/tc-mips.c (md_show_usage): Fix up messages.
2013
def66e24
DM
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
f3d817d8
DM
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
ebd6f117
DM
2041Thu 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
314628f6
KR
2050Thu 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
0221ddf7
ILT
2095Wed 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
488442d4 2100Fri May 27 10:05:53 1994 Ken Raeburn (raeburn@cygnus.com)
c06e55d9
KR
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
314628f6
KR
2112 * config/obj-coff.c (fixup_segment) [BFD_ASSEMBLER]
2113 [DIFF_EXPR_OK]: Don't check pcrel, just convert it.
c06e55d9
KR
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.
4174e052 2133 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
c06e55d9
KR
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
a193acc0
ILT
2164Fri May 20 17:59:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2165
2166 * as.h: Don't declare parameters for strstr.
2167
f9c57637
ILT
2168Thu 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
ac7f7dfe
ILT
2173Wed 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
44e8d616
JL
2178Wed 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
ee8b8346
JL
2183Tue 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
3315c7c7
JL
2188Mon 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
c794f0aa
SC
2199Fri 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
2db90a63
ILT
2204Fri 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
59232011
KR
2212Thu May 5 19:14:43 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2213
2db90a63
ILT
2214 * Makefile.in (VERSION): Update to 2.2.90.
2215
fbefddfb
KR
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
59232011
KR
2221 * doc/Makefile.in (distclean, clean-dvi, clean-info): Delete gasp
2222 files too.
2223
6d41de19
ILT
2224Thu 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
a139d99b
KR
2229Thu 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
9267b020
KR
2236Wed May 4 13:34:11 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2237
a139d99b
KR
2238 * config/te-dpx2.h (TARGET_FORMAT, REGISTER_PREFIX_OPTIONAL):
2239 Define.
2240 * configure.in (m68k-bull-sysv3*): Enable.
2241
9267b020
KR
2242 * config/coff_gnu.h: Deleted.
2243
9fc63ce0
ILT
2244Wed May 4 11:29:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2245
2237e240
ILT
2246 * config/tc-m68k.h (TARGET_FORMAT): If not TE_SUN3, define as
2247 "a.out-zero.big".
2248
9fc63ce0
ILT
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
a3547e53
KR
2253Wed May 4 02:29:21 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2254
3f048548
KR
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
a3547e53
KR
2267 * configure.in (i386-*-gnu*): New target, handled like i386-mach.
2268
2269Tue 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
1b96bdce
ILT
2324Mon 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
17f0b355
KR
2336Thu 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
fa1a86f3
SC
2344Wed 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
b46f83f2
KR
2350Tue 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
fb51366f
KR
2356 * config/obj-coffbfd.c (fill_section): Check COFF_NOLOAD_PROBLEM
2357 also before setting STYP_NOLOAD for .bss section.
2358
926ffe94
KR
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
497c179a
ILT
2399Mon Apr 25 16:19:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2400
2401 * doc/Makefile.in (clean, distclean): Remove asconfig.texi.
2402
f38cd6ec
JL
2403Sun 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
92867d8e
ILT
2408Fri 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
e860dfd0
KR
2414Fri 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
988238d3
KR
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
a926dd6a
KR
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
6fdc26e6
ILT
2431Thu 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
a6652b1c
KR
2438Wed Apr 20 18:46:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2439
71b4de6f
KR
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
a6652b1c
KR
2453 * config/tc-sparc.c (md_section_align): Always round up to
2454 multiple of alignment power specified in bfd target vector.
d924d209
KR
2455
2456 * gasp.c: Include ctype.h.
2457
19990560
KR
2458Mon 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
9de7c1fc
JL
2475Mon 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
e904716c
ILT
2484Fri Apr 15 10:51:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2485
37032d95
ILT
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
e904716c
ILT
2491 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Make gasp.new
2492 as well as as.new.
2493
d6f98c55
KR
2494Thu 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
c92d9ee9
KR
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
1a69212c
ILT
2520Thu Apr 14 13:34:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2521
b3cd8555
ILT
2522 * Makefile.in (de-stage1, de-stage2, de-stage3): Use rm -f.
2523
1a69212c
ILT
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
cc886e3d
SS
2539Tue 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
05210990
JL
2546Mon Apr 11 09:00:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2547
caed9e82
JL
2548 * config/tc-hppa.c (pa_procend): Handle case where label was
2549 defined after the .proc directive.
2550
05210990
JL
2551 * config/tc-hppa.c (pa_procend): Give an error if we encounter a
2552 procend for a procedure without a name.
2553
1c803e52
ILT
2554Thu 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
0b503989
JL
2566Thu 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
f39a73b1
JL
2580Wed 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
f3645945
ILT
2585Tue 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
03fcf1f8
KR
2595Tue 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
79381848
JL
2606Mon 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
1e147242
ILT
2610Mon Apr 4 12:39:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2611
1937a665
ILT
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
1e147242
ILT
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
7ab2e983
ILT
2622Thu 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
75d20ac8
KR
2627Mon 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
57afabd0
ILT
2632Mon 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
882bdc69
ILT
2638Mon 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
de3ffc7a
JL
2644Sun 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
5b63f465
ILT
2650Fri Mar 25 17:35:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2651
645f842c
ILT
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
5b63f465
ILT
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
11d7c064
KR
2665Thu 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
2691Wed 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
e1b5066f
ILT
2705Tue Mar 22 13:58:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2706
d9aba805
ILT
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
e1b5066f
ILT
2721 * config/obj-ecoff.h (obj_sec_sym_ok_for_reloc): Define to be 1.
2722
2723Sun 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
1871f91a
KR
2729Sun Mar 20 14:43:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2730
c37f6138
KR
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
3680de74
KR
2755 * config/obj-coff.c (obj_pseudo_table): Supply "section"
2756 unconditionally.
2757
1871f91a
KR
2758 * write.c (set_symtab): Define only if BFD_ASSEMBLER.
2759
c20c7506
JL
2760Sun Mar 20 12:06:05 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2761
2762 * Makefile.in (STAGESTUFF): Add gasp.new.
2763
634233a3
KR
2764Fri Mar 18 20:09:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2765
1cf7548e
KR
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
ec3c65e1
KR
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
1be3cf74
KR
2808 * config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
2809 MANY_SEGMENTS).
2810
634233a3
KR
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
49ccc555
JL
2820Thu 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
23dc1ae3
ILT
2825Wed Mar 16 17:11:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2826
614a3211
ILT
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
d6e6bc1c
ILT
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
23dc1ae3
ILT
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
2840Wed Mar 16 11:54:12 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2841
c38c91da
JL
2842 * config/tc-hppa.c (pa_equ): Handle both .reg and .equ correctly.
2843
f2ada910
JL
2844 * config/tc-hppa.c (pa_callinfo): Accept "millicode" as an
2845 argument to a .callinfo directive. Don't loop forever on errors.
2846
c38c91da 2847 * config/tc-hppa.c (pa_equ): Use pa_parse_number so that we can
23dc1ae3
ILT
2848 use pre-defined registers as arguments.
2849
954979ca
KR
2850Mon Mar 14 14:29:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2851
dbc529c4
KR
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
954979ca
KR
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
2900Mon 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
62ea7974
ILT
2904Fri 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
63ca2e81
KR
2912Fri 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
be22008b
ILT
2929Fri 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
2c6db5a1
DE
2935Thu 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
9e12fbbc
KR
2939Tue 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
2bac8c54
SC
2968Tue 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
d16938f5
ILT
2973Tue 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
8ea7f4e8
ILT
2978Mon 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
fa47b47e
DE
2985Thu 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
34b16850
JL
2990Wed Mar 2 10:31:01 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2991
fb338f1d
JL
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
34b16850
JL
2998 * config/tc-hppa.h: Wrap ELF specific decls inside an ifdef.
2999
994fde6d
KR
3000Mon 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
e03095c9
JL
3032Fri 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
3919ffeb
ILT
3044Fri 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
f95de5d9
KR
3049Thu Feb 24 11:30:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3050
3919ffeb
ILT
3051 * configure.in: Don't require version number for i386-*-mach.
3052
f95de5d9
KR
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
cb6af928
JL
3058Thu 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
08c5812c
JL
3062Wed 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
c9c45af1
KR
3068Tue Feb 22 10:07:32 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
3069
3070 * config/ho-mach3.h: New file.
3071
9eb5f4b8
ILT
3072Mon Feb 21 11:41:18 1994 Ian Lance Taylor (ian@cygnus.com)
3073
2e5fdb1d
ILT
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
9d90491e
ILT
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
c8d02404
ILT
3084 * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
3085
9eb5f4b8
ILT
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
4d88d6dc
ILT
3090Sun 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
741f4d66
KR
3097Fri Feb 18 14:16:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3098
9e0cbfbb
KR
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
741f4d66
KR
3108 * write.c (write_object_file): Removed register declarations.
3109
5e65fbc8
ILT
3110Thu Feb 17 16:25:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3111
254f8450 3112 Some support for PowerPC ELF.
5e65fbc8
ILT
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
f61b81b7
DM
3143Thu 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
c25be7f4
KR
3148Tue 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
04bde70d
KR
3153 * atof-generic.c (atof_generic): Use switch and strcasecmp instead
3154 of large number of compares when looking for inf/nan values.
3155
b1237b9d
ILT
3156Fri 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
605e1d90
ILT
3162Thu 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
6440d65c
KR
3184Thu 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
ddb393cf
ILT
3190Wed Feb 9 13:08:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3191
d87c080e
ILT
3192 * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
3193 * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
3194
ddb393cf
ILT
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
66c774bb
SS
3199Wed 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
356315fe
ILT
3206Tue 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
df44a852
KR
3213Tue Feb 8 16:00:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3214
cfaf70e3
KR
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
cafb569b
KR
3224 * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
3225 complaint from "gcc -Wall".
3226
7496639a
KR
3227 * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
3228
8a74b870
KR
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
df44a852
KR
3236 * write.c (write_relocs): Print some sensible error message if
3237 bfd_perform_relocation returns bfd_reloc_overflow.
3238
3239Mon 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
c3591adb
KR
3244Mon Feb 7 16:07:35 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3245
2d33b3aa
KR
3246 * config/tc-alpha.c (md_atof): Warn that floating-point values
3247 might not assemble properly.
3248
c3591adb
KR
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.
fc6b54fd 3254
c3591adb
KR
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
3264Mon Feb 7 03:56:05 1994 Ken Raeburn (raeburn@cambridge.cygnus.com)
fc6b54fd
KR
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
5facbfd4
KR
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
dc536cc0
JL
3294Sun Feb 6 16:13:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3295
f8693e71
JL
3296 * configure.in (hiux): Fixes from m-kasahr@sramhc.sra.co.JP.
3297
dc536cc0
JL
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
41b5ef0f
SS
3302Sat 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
fa4beb7e
JL
3308Sat 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
1c11ab0e
ILT
3314Sat 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
f85ad9d5
ILT
3363Thu 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
b4bd2c92
JL
3378Wed 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
1051c97f
ILT
3382Wed 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
f2cdeec4
KR
3390Tue 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
e2847e64
SC
3400Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3401
3402 * gasp.c: Include host.h.
3403
9cbf9e57
ILT
3404Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3405
8bbad6fd
ILT
3406 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
3407 warning, not an error.
3408
9cbf9e57
ILT
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
2abb453d
SS
3424Mon 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
a5a4b5ac
SC
3429Mon 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
7909261f
KR
3437Sun 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
1f029792
ILT
3478Fri 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
6221fe20
KR
3488Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3489
81f6013a
KR
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
6221fe20
KR
3514 * atof-generic.c: Some reformatting.
3515 (atof_generic): Be careful when mixing signed/unsigned values of
3516 different sizes.
3517
81f6013a
KR
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
a57180ad
ILT
3555Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3556
ec7a69ea
ILT
3557 * read.c (lex_type): No longer make '{' a valid character for
3558 symbol names.
3559
fe920573
ILT
3560 * as.c (main): Print long values using %ld.
3561
a57180ad
ILT
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
ca7bd557
SS
3567Tue 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
9dcf8057
JL
3572Tue 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
f71babce
ILT
3576Mon 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
2ef7731d
KR
3599Mon 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
7691379e
KR
3604Thu 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
eb8fd0e9
ILT
3610Wed 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
d9420fc1
SC
3615Tue 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
2f156c92
JL
3620Tue 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
19302e44
KR
3626Tue 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
4bda835f
ILT
3631Tue 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
13655af6
ILT
3637 bfd_ind_section and set the BSF_INDIRECT flag; set the
3638 BSF_WARNING flag for a symbol makred N_WARNING.
4bda835f 3639
17ed84ed
ILT
3640Mon 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
d0286a21
JL
3645Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3646
51517966
JL
3647 * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
3648 and 'f' template operand.
3649
d0286a21
JL
3650 * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
3651 and '2' in copr and sfu instruction templates.
3652
e7501ac7
JL
3653Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3654
3655 * as.h (subseg_force_new): Add prototype.
3656
d2550c72
DE
3657Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
3658
d307fed1
DE
3659 * app.c (do_scrub_next_char): Allow lines like " foolab :".
3660
d2550c72
DE
3661 * read.c (emit_expr): Fix computation of mask.
3662 * config/obj-elf.c (obj_elf_section): Fix loop termination test.
3663
d211303d
KR
3664Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3665
64270963
KR
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
ff4325cb
KR
3671 * struc-symbol.h (struct symbol): Make all bitfields unsigned.
3672
d211303d
KR
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.
64270963 3688 * as.c: Don't include config.h.
d211303d
KR
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
500828a0
JL
3697Thu 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
3719Wed 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
bbf7e43d
ILT
3730Wed 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
a1c91916
JL
3745Tue 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
44ce2f32
DE
3750Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
3751
fd4b7c25
KR
3752 * config/tc-sparc.c (sparc_ip): Truncate args to %hi/%lo to 32 bits.
3753
44ce2f32
DE
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
af255ca0
ILT
3759Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3760
f34e27a1
ILT
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
4e76ae53
ILT
3767 * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
3768 sections to be close together.
3769
8197b589
ILT
3770 * config/tc-mips.c (macro): Corrected $at warnings in a couple of
3771 spots.
3772
af255ca0
ILT
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
4047ff1d
JL
3781Mon 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
6f1c6a67
KR
3788Sun 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
fe4e3290
ILT
3794Fri 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
af255ca0 3797 with the associated stabs information.
fe4e3290
ILT
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
917fae09
SS
3803Fri 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
03a372ed
SC
3809Fri 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
fd0e2cf2
KR
3815Thu 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
13fe1379
ILT
3820Thu 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
311ff8d6
KR
3825Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3826
2d29d89d 3827 * literal.c: New file.
d4aad2b4
KR
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.
2d29d89d 3834
311ff8d6
KR
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
5a051773
SS
3842Tue 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
fce98d63
RS
3849Tue 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
5a051773
SS
3854Thu 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
9314b3a1
KR
3859Wed 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
45db9caf
TG
3865Sun 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
8b13fa4e
KR
3884Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3885
0a75cb6c
KR
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
d3e3010b
KR
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.
8b13fa4e
KR
3929
3930Sun 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
5ea18b5d
JL
3935Thu 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
a8a72d74
KR
3941Thu 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
50f75add
KR
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
cf4aca57
KR
3959Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3960
7387c355
KR
3961 * Makefile.in (RUNTEST): New variable.
3962 (CHECKFLAGS): Pass it down.
3963
cf4aca57
KR
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
551d2fd4
JL
3973Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3974
26da0351
JL
3975 * configure.in (hppa*-*-osf*): Do not consider this a developmental
3976 configuration.
3977
551d2fd4
JL
3978 * config/tc-hppa.c (md_apply_fix): Handle cases where no
3979 relocation will be emitted for 32bit formats.
3980
9d5a9b20
JL
3981Mon 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
2b5936ff
SC
3986Sat 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
a1328e79
KR
3994Wed 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
ef7ce769
SC
4000Tue 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
67707031
DE
4006Mon 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
dd2f509f
JL
4010Mon 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
7b624bf2
JL
4023Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4024
eb91665b
JL
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
42ecb409
JL
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
4165dcc2
JL
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
7b624bf2
JL
4041 * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
4042 e_rlsel field selectors.
4043
4044Fri 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
753dcbbd
JL
4052Fri 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
585635c7
JL
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
bfbfba45
KR
4066Thu 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
0a8ae18f
JL
4144Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4145
4146 * Makefile (clean): Depend on clean-here.
4147
9a048e48
KR
4148Wed 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
44c0de53
JL
4169Wed 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
777ad64d
ILT
4174Wed 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
4032d3f0
ILT
4177 case. See comment. From wilson@cygnus.com: for M_L_DAB, set
4178 coproc before doing goto ld.
777ad64d 4179
335d35c8
JL
4180Tue 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
018f2bba
ILT
4193Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4194
c751ad19
ILT
4195 * Makefile.in (stabs.o): Added dependencies.
4196
018f2bba
ILT
4197 * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
4198
81413fa2
JL
4199Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4200
278cd007
JL
4201 * app.c (do_scrub_next_char): Output a TAB before any
4202 .app* directive.
4203
81413fa2
JL
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
385ce433
JL
4210Sat 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
31a385d1
JL
4221Wed 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
c5953036
ILT
4227Wed 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
4247Sun 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
e0209756
ILT
4253Fri 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
0669e047
KR
4264Fri 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
29cc5816
ILT
4302Wed 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
c5e9ccd0
JL
4431Tue 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
4435Sat 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
4a1b59ef
JL
4441Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4442
3e330968 4443 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
4444 * config/obj-som.c (obj_som_version): Add missing ';'.
4445 (som_frob_file): Delete whitespace at EOL.
4446
f3b6e1f2
KR
4447Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
4448
4449 * Makefile.in (VERSION): Updated following 2.2 release.
4450
c5e9ccd0 4451Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
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)
a721c80b
JL
4461
4462 * config/tc-hppa.c (pa_type_args): For .import statements,
4463 silently ignore attempt to change the symbol type for a function
f2eed884 4464 from ST_ENTRY to ST_CODE on .import.
a721c80b 4465
ca16b5e5
ILT
4466Wed 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
48153d49
JL
4472Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4473
7420b02b
JL
4474 * Makefile.in (distclean): Delete config-stamp and config.h
4475
f41f3d72
JL
4476 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
4477 ANSI-C features.
4478
48153d49
JL
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
9226253a
ILT
4485Mon 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.
48153d49 4490 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 4491
53087850
DE
4492Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
4493
4494 * configure.in: Remove h8300h, we have multilib now.
4495
5f8a3788
DHW
4496Mon 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
163aac84
JL
4501Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4502
513f0471
JL
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
3e411021
JL
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
240cbc57
JL
4529 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
4530
163aac84
JL
4531 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
4532 for 'z' operands (target of ble branch).
4533
1cc248d2
JL
4534Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4535
18c4f112
JL
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
1cc248d2
JL
4540 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
4541 to default state after it's been used.
4542
88eb7ea6
JL
4543Fri 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
0f894895
JL
4549Thu 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
de074576
JW
4554Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
4555
4556 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
4557
4558Wed 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
efe8ef02
ILT
4579Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4580
fd4b7c25
KR
4581 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
4582
efe8ef02
ILT
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
aa14e863
JL
4587Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4588
d6e524f3
JL
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
20cee6d8
JL
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
aa14e863
JL
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
25270a1c
KR
4604Tue 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
f197d7eb
JL
4609Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4610
ff852e11
JL
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
a50e9b55
JL
4623 * config/tc-hppa.c (process_exit): Create temporary symbols with
4624 correct prefixes so they can be eliminated later.
4625
49fc68a1
JL
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
c43d56f7
JL
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
009dc5e1
JL
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
f197d7eb
JL
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
bca9cf0b
ILT
4654Mon 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
d191a03c
JL
4681Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4682
47f45d66
JL
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.
20b39b6f
JL
4695 * write.c (relax_and_size_seg): Correct test to determine if
4696 the section's size was rounded up.
4697
e75acd68
JL
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
d191a03c
JL
4706 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
4707 stab section we make.
4708 (s_stab_generic): Likewise.
4709
12696e9c
JL
4710Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4711
65a7f8a6
JL
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
6bc14195
JL
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
548ea75b
JL
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
0f3b419c
JL
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
9a182533
JL
4767 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
4768 as appropriate for the given type.
4769
62f0841b
JL
4770 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
4771 SOM relocations.
4772
d56f45f5
JL
4773 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
4774 redefinition.
4775
3c87583d
JL
4776 * config/obj-som.[ch]: New files for SOM support. Note SOM
4777 support is not yet complete in GAS or BFD.
4778
12696e9c
JL
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
37ed805e
JL
4783Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4784
12696e9c
JL
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
53c0b9e7
JL
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.
37ed805e 4805
48ac0c90
JL
4806Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4807
d33ace2e
JL
4808 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
4809 .align and .ALIGN directives.
4810
48ac0c90
JL
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
3515a504
JL
4883 * config/tc-hppa.c (pa_parse_space_stmt): Advance
4884 input_line_poitner when an invalid argument is encountered.
4885
6121fb06
ILT
4886Thu 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
56c96faa
ILT
4896Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4897
729f4bba
ILT
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
007ff46b
ILT
4901 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
4902 after a .ent directive.
4903
d1ee509b
ILT
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 '>'.
56c96faa 4908
fa20b8bf
ILT
4909Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4910
5694ad93
ILT
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
f3751617
ILT
4915 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
4916 an illegal offset of 0 or -1.
4917
fa20b8bf
ILT
4918 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
4919 section to a longword boundary.
4920
4da7942d
KR
4921Tue 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
fd4b7c25
KR
4929Mon 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
24934035
SC
4933Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
4934
8e5afd4f
SC
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.
fd4b7c25 4938
24934035
SC
4939 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
4940 aspects of lda.
4941
84678d16
KR
4942Mon 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
52aa70b5
JW
4956Sun 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
ab0751c8
DZ
4960Fri 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
8efed14f
ILT
4968Fri 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
efa0c22e
KR
4997Thu 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
7766838e
ILT
5080Thu 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
fd4b7c25
KR
5085Wed 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
dff60b7d
ILT
5091Tue 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
c17cd709
ILT
5101Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5102
dd3f1f76
ILT
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.
dff60b7d 5106 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 5107
54508138
ILT
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
c17cd709
ILT
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
ad660eb1
ILT
5117Thu 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
132239bf
KR
5136Wed 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
b7cbb59f
ILT
5142Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5143
463b1851
ILT
5144 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
5145 for st_StaticProc just like st_Proc.
5146
b7cbb59f
ILT
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
f2a663d3
ILT
5151Tue 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
99024047
KR
5162Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5163
2145a183
KR
5164 * messages.c (as_fatal): Use myname when printing messages.
5165
99024047
KR
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
5176Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
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
f37449aa
ILT
5184Mon 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
fec552ce
DZ
5192Mon 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
8d3be803
KR
5196Mon 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
88225433
ILT
5201Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5202
1aa6938e
ILT
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
88225433
ILT
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
17a0da33
ILT
5224Thu 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
80aab579
ILT
5229Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5230
abdad6bc
ILT
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
80aab579
ILT
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
5263Tue 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
4f5666c5
ILT
5268Mon 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
8208ab5a
KR
5274Mon 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
31909d40
KR
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
8208ab5a
KR
5285Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
5286
5287 * config/z8k.c (md_pseudo_table): add "unseg".
5288
6cc87fbb
RP
5289Wed 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
8f3956b3
SS
5294Tue 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
43029a8f
KR
5314Mon 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
b7318ac4
KR
5329Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5330
b9790da8
KR
5331 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
5332 in different defined segments.
5333
b7318ac4 5334 * write.c (relax_segment): Localize "aim" variable. If
132239bf 5335 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
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
c996b199
KR
5344Sat 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
6d6b97b7
RP
5351Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5352
58f3e8a9
RP
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
6d6b97b7
RP
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
5368Fri 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
5376Thu 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
6110df28
KR
5391Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5392
5393 * config/obj-coffbfd.c (relax_align): Now static.
5394
9bd0d649
ILT
5395Mon 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
80903ca6
ILT
5408Fri 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
13998021
ILT
5414Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5415
9bd0d649 5416 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
5417 RELOC_EXPANSION_POSSIBLE.
5418 * config/obj-elf.c (obj_elf_section): Only set flags when first
5419 creating the section.
5420
5421Wed 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
4f0bccc7
ILT
5426Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5427
90397ff8
ILT
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
4f0bccc7
ILT
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
604633ae
ILT
5493Mon 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
54e3e909
DE
5534Mon 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
58d4951d
ILT
5538Fri 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.
54e3e909 5543 * Added a number of casts to function calls.
58d4951d
ILT
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.
54e3e909
DE
5552 * app.c (process_escape): Make static. Add prototype. Change
5553 argument from char to int.
58d4951d
ILT
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.
54e3e909
DE
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.
58d4951d 5565 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
5566 * expr.c (floating_constant, integer_constant): Make static. Add
5567 prototypes.
5568 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 5569 * frags.h: Add prototype for frag_init.
54e3e909
DE
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.
58d4951d
ILT
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.
54e3e909
DE
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.
58d4951d 5585 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
5586 offsetT. Add prototype for next_char_of_string. Various
5587 prototype changes.
58d4951d 5588 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
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.
58d4951d
ILT
5594 (s_comm): Change temp from valueT to offsetT. Cast to long when
5595 printing and use %ld (only for error messages anyhow).
54e3e909
DE
5596 (s_long, s_int): Remove unused functions.
5597 (cons): Change argument to int.
58d4951d
ILT
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.
54e3e909 5604 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 5605 * symbols.c: Remove nested comment.
54e3e909 5606 (symbol_new): Rename value to valu.
58d4951d 5607 (colon): Use %ld and cast to long in error message.
54e3e909
DE
5608 * symbols.h: Remove duplicate verify_symbol_chain declaration.
5609 * tc.h: Remove unused md_emit_relocations declaration.
5610 (tc_gen_reloc): Add declaration.
58d4951d
ILT
5611 * write.c (cvt_frag_to_fill): Change first argument name depending
5612 on BFD_ASSEMBLER.
54e3e909
DE
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.
58d4951d
ILT
5617 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
5618 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 5619 punt_it if they will be used. Make i and n unsigned.
58d4951d 5620 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 5621 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
5622 * config/obj-aout.h: Remove nested comment. Add prototype for
5623 obj_aout_frob_symbol.
54e3e909
DE
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.
58d4951d
ILT
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).
54e3e909
DE
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.
58d4951d
ILT
5637 * config/tc-hppa.h: Remove declarations of functions declared in
5638 read.h.
54e3e909
DE
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.
58d4951d
ILT
5646 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
5647 %ld in error messages.
54e3e909
DE
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.
58d4951d 5653
892a3ff1
KR
5654Thu 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.
132239bf 5659 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
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
abdd08c9
ILT
5671Thu 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
414b2c8f
ILT
5676Wed 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
4064305e
SS
5681Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
5682
1531386b
SS
5683 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
5684
4064305e
SS
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
132239bf 5692 stab reader, macros to access.
4064305e 5693
81b407c9
KR
5694Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5695
fd4b7c25
KR
5696 * config/obj-elf.h (elf_symbol): No longer special-cased on
5697 sparcv9, since elf_symbol_type is now independent of size.
5698
81b407c9
KR
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
132239bf 5753 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
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
1849d646
ILT
5761Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5762
ff3a5c18
ILT
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.
1849d646 5767
e96d50d0
KR
5768Wed 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
56607c4e
RP
5776Wed 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
5781Wed 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
37d719bb
RP
5789Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5790
5791 * configure.in: recognize m88110.
5792
28344993
KR
5793Wed 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.
132239bf 5805 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
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
5812Tue 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
6e8dda9c
ILT
5886Mon 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
1e35cd8f
RP
5900Fri 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
8358c818
ILT
5905Fri 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
c8d4cda1
KR
5921Fri 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
5925Thu 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
4915cac0
KR
5954Wed 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
19ed8960
ILT
5978Wed 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
ae8c28f8
DZ
5988Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5989
19ed8960
ILT
5990 * config/obj-coff.h (S_IS_COMMON): add missing backslash
5991
ae8c28f8
DZ
5992 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
5993
0aa07269
ILT
5994Thu 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.
ae8c28f8 6000 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
6001
6002Mon 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
6a9cf6fa
KR
6009Mon 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
b114e492
KR
6015Fri 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
ac32a7e7
ILT
6020Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6021
3d2330f8
ILT
6022 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
6023 targets, using ecoff and mips-big.
6024
ac32a7e7
ILT
6025 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
6026 Johnson): Added case for 'C' for coprocessor instruction codes.
6027
273aa947
KR
6028Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6029
fd4b7c25
KR
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
b114e492
KR
6034 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
6035
273aa947
KR
6036 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
6037
b114e492
KR
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
273aa947
KR
6043Tue 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
4573d186
ILT
6061Tue 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
b4703fa6
ILT
6067Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6068
4c7ff23d
ILT
6069 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
6070 and in hash_ptr->string.
6071
b4703fa6
ILT
6072 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
6073 file name is not seen.
6074
fd4b7c25
KR
6075Mon 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
ced16de6
ILT
6081Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
6082
6083 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
6084
6085 * expr.c (operand): Make return value simply depend on contents of
6086 returned expression.
6087
b4703fa6
ILT
6088Thu 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
0ccc65ec
DZ
6092Thu 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
6097Wed 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
7fe17970
ILT
6104Wed 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
0c2734c3
KR
6110Tue 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
4fe45d22
ILT
6117Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
6118
6119 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
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.
4fe45d22 6123
de9310b9
RP
6124Mon 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
6128Fri 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
7767e7e9
KR
6138Fri 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
88b457e5
ILT
6151Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
6152
2a2d3d08
ILT
6153 * write.c (fix_new_exp): Handle a O_uminus expression.
6154
e979ea04
ILT
6155 * expr.c (expr): Don't let absolute_section override
6156 undefined_section for the return value.
6157
cf897ce2
ILT
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
88b457e5
ILT
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
88e12460
BK
6168Thu 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
86a6ada2
FF
6173Wed 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
8ff6f40e
ILT
6186Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6187
2c5c299f
ILT
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
8ff6f40e
ILT
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
5ac34ac3
ILT
6204Tue 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
84873870
DZ
6292Tue 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
623d6e9a
KR
6296Mon 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
ffffc8fb
ILT
6322Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6323
ce2ad89a
ILT
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
ffffc8fb
ILT
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
9d4dfbf3
KR
6334Mon 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
04acd059
ILT
6340Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
6341
1e9cf565
ILT
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
04acd059
ILT
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
c978e704
ILT
6381Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6382
5276e361
ILT
6383 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
6384 with a warning.
6385
2368ec63
ILT
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.
cb441b38 6391 (omagic): Removed unused variable.
2368ec63 6392
c978e704
ILT
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
85051959
ILT
6410Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6411
5868b1fe
ILT
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
85051959
ILT
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
b50401c9
DE
6470Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
6471
fd4b7c25
KR
6472 * configure.in: Make sparc64-*-aout* use bfd gas.
6473
b50401c9
DE
6474 * configure.in: Recognize h8300h.
6475
489a93f3
SC
6476Tue 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
5d4ef296
KR
6482Mon 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
99c24539
ILT
6487Mon 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
ec1c752b
RP
6492Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6493
6494 * doc/as.texinfo: updates for H8/300H
6495
d358969d
ME
6496Thu 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
ff4cac38
KR
6502Thu 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,
b2565433 6505 independent of format.
ff4cac38 6506
42206996
DE
6507Thu 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
e9baeb46
DZ
6511Wed 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
76c64db0
ILT
6516Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
6517
e154ecf4
ILT
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
76c64db0
ILT
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
e28e0b95
KR
6546Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6547
fd4b7c25
KR
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
e28e0b95
KR
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
6598Thu 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
267389df
ILT
6603Wed 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
6641Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6642
fd4b7c25
KR
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
267389df
ILT
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
e28e0b95
KR
6670Fri 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
fd4b7c25
KR
6676Fri 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
267389df
ILT
6682Fri 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
a8285504
DZ
6723Thu 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
267389df
ILT
6727Thu 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
6731Tue 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
a8285504
DZ
6744Mon 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
267389df
ILT
6748Sun 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
9126738c 6771Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 6772
9126738c
DZ
6773 * Makefile.in: canonicalize install.sh; for use within
6774 this directory (and subdirs)
6775
267389df
ILT
6776Sun 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
6782Tue 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.
115147fb 6786
267389df
ILT
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.
115147fb 6801
a00ee522
DZ
6802Tue 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
6806Wed 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
267389df
ILT
6813Mon 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
fd4b7c25
KR
6820Mon 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
267389df
ILT
6825Sat 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
a00ee522
DZ
6844Fri 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
68ad4c92
ILT
6853Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
6854
47fcc4f5
ILT
6855 * configure.in (mips-*-ecoffl*): New target; use ecoff and
6856 mips-lit.
6857 (mips-*-ecoff*): Added trailing '*'.
6858
68ad4c92
ILT
6859 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
6860 first FDR in a file to be zero.
6861
75776695
KR
6862Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6863
b7067d7f
KR
6864 * Makefile.in (VERSION): Jump to 2.1.4.
6865
75776695
KR
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
6871Tue 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
6890Sun 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
6928Sun 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
6942Fri 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
49864cfa
KR
6947Thu 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
6962Thu 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
9a7d824a
ILT
6982Thu 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
61f14fb0
ILT
7012Tue 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
7016Thu 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
6eef4543
SC
7021Wed 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
f8f61478
KR
7026Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7027
6eef4543
SC
7028 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
7029 it's wrong.
7030
f8f61478
KR
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
7039Mon 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
7047Fri 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
7057Thu 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
204ff785
ILT
7067Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
7068
f8f61478
KR
7069 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
7070 symbols.
7071
204ff785
ILT
7072 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
7073 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
7074
65824763
KR
7075Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7076
204ff785
ILT
7077 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
7078 initialization.
7079
65824763
KR
7080 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
7081
21bb48b9
ILT
7082Wed 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
e7c2f943
KR
7087Wed 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
5d6cfa60
ILT
7189Wed 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
e7c2f943
KR
7199Tue 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
5d6cfa60
ILT
7210Mon 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
7215Wed 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
e7c2f943
KR
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
a1387260
ILT
7227Wed 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
4a1bbbe7
SC
7233Mon 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
be2f6bd6
ILT
7238Mon 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
7243Wed 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
7322Thu 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
97a6070c
RP
7328Thu 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
7340Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7341
7342 * doc/as.texinfo: mention SPARC architecture options.
7343
be2f6bd6
ILT
7344Fri 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
349f20de
ILT
7352Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
7353
7354 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 7355 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
7356 want that.
7357
5316696f
DZ
7358Thu 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
8ac18b21
RP
7363Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7364
132239bf 7365 * doc/Makefile.in: update dvi, clean targets for new source
8ac18b21
RP
7366 file structure
7367
d565311f
ILT
7368Thu 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.
8ac18b21 7372 * configure.in: Match ultrix*, not just ultrix.
d565311f 7373
0742a6fd
RP
7374Wed 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
7386Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
7387
7388 * read.c (cons): Zero out frag when creating reloc.
7389
367fc835
ILT
7390Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
7391
84e4920f
ILT
7392 * config/tc-mips.c (gp_reference): Certain magic symbols can never
7393 be referenced off the GP register.
7394
367fc835
ILT
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
dd4227d3
SC
7403Sun 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
be2f6bd6
ILT
7408Fri 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
ed364bb6
ILT
7421Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
7422
0433135d
ILT
7423 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
7424 '$' as local, for any object file format.
7425
477b4b04
ILT
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
ed364bb6
ILT
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
670a50eb
ILT
7433Wed 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
2b1b5697
KR
7469Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7470
670a50eb
ILT
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
4b061a2a
KR
7477 * doc/as.texinfo: Don't use @value in node names for the moment;
7478 references don't appear to work right.
7479
4478def8
KR
7480 * as.h (const, volatile): Put these definitions back, and use
7481 them.
7482
2b1b5697
KR
7483 * doc/as.texinfo: First pass at using new texinfo features --
7484 variables, conditional tests. Far from complete.
7485
7486Mon 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
e02eaa59
SC
7499Mon 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
543d88e4
ILT
7508Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
7509
c39b3eba
ILT
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
543d88e4
ILT
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
2b1b5697
KR
7517Sun 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
7523Fri 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
543d88e4
ILT
7569Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
7570
7571 * config/tc-mips.c: Reindented to GNU standards.
7572
2c19a57c
ILT
7573Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
7574
61001d96
ILT
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
2c19a57c
ILT
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
afcc637a
DZ
7582Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
7583
2d4bef5e
DZ
7584 * Makefile.in: add dvi target; as-$(config).texinfo might live in
7585 srcdir, might be in objdir.
afcc637a
DZ
7586
7587 * doc/Makefile.in: dvi depends on as.dvi
7588
80c8fd72
DZ
7589Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7590
7591 * Makefile.in: add installcheck target
7592
fd4b7c25
KR
7593Mon 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
1369949e
ILT
7599Mon 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
63cdddad
KR
7603Sat 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
69498fa2
JW
7608Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
7609
7610 * Makefile.in (targ-cpu.o): Depend on config.h.
7611
f6a91cc0
ILT
7612Wed 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
a36f6645
ILT
7621Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
7622
3d3c5039
ILT
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
a36f6645
ILT
7635 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
7636 symbol.
7637
2a697fa4
DZ
7638Fri 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
f2f7d044
ILT
7642Fri 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
ed099874
KR
7647Thu 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
7675Wed 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
7683Tue 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
c5d4bc88
KR
7707Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
7708
7709 * version.c: Bump to version 2.0.1.
7710
fefba3a5
ILT
7711Tue 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
2b1b5697
KR
7718Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
7719
7720 * Version 2.0 released.
7721
fefba3a5
ILT
7722Mon 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
7726Fri 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
bf449293
SC
7732Thu 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
9471a360
KR
7736Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
7737
7738 * read.c: Include ctype.h.
7739
1101551c
KR
7740Wed 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
5e4cddb7
ILT
7752Tue 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
f3ca2a64
KR
7757Tue 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
7687d89b
JG
7792Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
7793
7794 * CONTRIBUTORS: Update Gilmore entry.
7795
fd4b7c25
KR
7796Mon 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
7687d89b
JG
7801Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7802
fd4b7c25
KR
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
7687d89b
JG
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
160b7f0f
ILT
7812Wed 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
0cca30f3
KR
7817Wed 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
7895Wed 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
7923Thu 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
7929Mon 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
7687d89b 7946 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
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
7954Thu 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
7959Wed 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
7968Thu 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
8028Wed 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
8037Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8038
8039 * version.c: Bumped version number to 1.93.05.
8040
8041Wed 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
8053Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8054
fd4b7c25
KR
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
0cca30f3
KR
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
8065Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8066
8067 * configure.in: recognise all sparclite variants
8068
8069Thu 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
6c5f9998
KR
8075Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8076
0bd77bc4
KR
8077 * expr.c (operand): If character other than comma or newline is a
8078 logical end-of-line character, use the newline case.
0cca30f3
KR
8079 From Eric Youngdale:
8080 (operand): Set X_add_number field for floating-point numbers.
8081 (operand): Treat zero byte as end-of-operand.
0bd77bc4 8082
6c5f9998
KR
8083 * configure.in (per-target): Look for with_bfd_assembler option.
8084 For now, only accept "no", until the merge is done.
8085
0cca30f3
KR
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
9d76a195
KR
8128Mon 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
8135Thu 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
85825401
ILT
8173Wed 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
4539aa02
KR
8241Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
8242
6d331d71
KR
8243 * app.c (app_push): Use memcpy, not bcopy.
8244 (do_scrub_next_char): For \", return " not '.
8245 (symbol_chars): Now const.
8246
4539aa02
KR
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
3eb802b5
ILT
8255Wed 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
be06bdcd
SC
8260Tue 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
8267Sun 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
016e0d42
ILT
8271Sat 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
db33220f
KR
8304Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
8305
016e0d42
ILT
8306 * config/obj-coffbfd.c: Include libcoff.h.
8307
db33220f
KR
8308 * version.c: Now version 1.93.
8309
dde624ef
KR
8310Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
8311
db33220f
KR
8312 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
8313 power-of-two alignment for .align.
8314
dde624ef
KR
8315 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
8316 and leave everything else alone.
8317
8318Fri 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
7f2cb270
KR
8327Thu 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
0cca30f3
KR
8347 * doc/as.texinfo: Regrouped documentation of some command-line
8348 options. Updated options documentation for m68k. Some minor
8349 wording/punctuation changes.
8350
7f2cb270
KR
8351Mon 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
8367Fri 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
6efd877d
KR
8429Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
8430
8431 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 8432 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
8433
8434 * configure.in: No te-386bsd.h file exists; don't try to use it.
8435
7f2cb270
KR
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
0cca30f3 8441Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 8442
0cca30f3
KR
8443 z8000 documentation
8444 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
8445 all modified.
8446
6efd877d
KR
8447Tue 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
7f2cb270
KR
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
8473Thu 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
8479Wed 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
6efd877d
KR
8499Wed 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
7f2cb270
KR
8507Fri 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
559d9aac
ILT
8512Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
8513
7f2cb270
KR
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.
6efd877d
KR
8523 * configure.in: i386-sysv and i386-sco use coffbfd.
8524
559d9aac
ILT
8525 * app.c (do_scrub_next_char): discard whitespace after a label.
8526
0f8b9790
DZ
8527Sat 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
7f2cb270
KR
8532Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8533
132239bf 8534 fix i960+non-bfd coff bit rot.
7f2cb270
KR
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
984cf2d7
ME
8542Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
8543
8544 * configure.in: recognize i386-*-bsd emulation.
8545
8546Thu 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
7f2cb270
KR
8550Tue 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
8555Tue 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
984cf2d7
ME
8562Mon 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
7f2cb270
KR
8566 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
8567
8568Fri 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
5a0fc1d4
JG
8574Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
8575
8576 * messages.c: Comment changes.
8577
4959cb7b
KR
8578Fri 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
5e9d510e
BK
8583Thu 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
7f2cb270
KR
8588Tue 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.
132239bf 8596
7f2cb270
KR
8597Tue 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
8607Fri 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
569dac15
JW
8611Tue 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
efbfb612
ILT
8616Tue 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
987b1491
ILT
8621Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
8622
ca5e9d49
ILT
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
987b1491
ILT
8631 * write.c (fixup_segment): fixed missing parens in expression
8632 checking for byte or word overflow.
8633
7f2cb270
KR
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
8641Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8642
8643 Support for i386 coff
132239bf 8644 * obj-coffbfd.h : added stuff
7f2cb270
KR
8645 * tc-i386.c (tc_coff_fix2rtype): new function
8646 * tc-i386.h : new coff defines
8647
b1520b1f
ILT
8648Thu 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
b53ccaac
ILT
8655Wed 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
7f2cb270
KR
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
db4d20e5
KR
8678Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8679
8680 * Makefile.in (LIBS): Include opcode library.
8681
e53ab768
KR
8682Fri 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
7e10f53c
ILT
8687Sun 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
0cca30f3
KR
8692 * doc/Makefile.in: map "as" through program_transform_name when
8693 installing.
8694
b0952e12
JW
8695Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8696
8697 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
8698
7f2cb270
KR
8699Fri 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
b2f221a9
KR
8705Tue 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
ab737e51
SC
8720Tue 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
7f2cb270
KR
8725 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
8726
7121231f
ILT
8727Mon 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
7f2cb270
KR
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
4772861e
KR
8737Fri 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
7f2cb270
KR
8743Wed 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
09952cd9
KR
8751Wed 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
a457f4d9
KR
8780Tue 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
4b857710
ILT
8785Tue 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
0cca30f3
KR
8791 * doc/Makefile.in: always create installation directories.
8792
f7e9bc5a
SC
8793Mon 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
c1c28543
KR
8799Mon 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
2e20e59a
KR
8805Fri 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
c8c7e0bf
KR
8811Thu 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
7f2cb270
KR
8819Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
8820
8821 * sparc.mt: New file.
8822
8823Mon 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
7fd3560a
SC
8828Thu 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
7f2cb270
KR
8833 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
8834 two bytes of any constant with 0xff:
8835
62594bd7
SC
8836Wed 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
4f3569fa 8839 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 8840
7f2cb270
KR
8841Wed 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
680227f3
KR
8846Sat 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
c51ccfd5
KR
8851Fri 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
14f1fc24
JW
8864Fri 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
8869Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
8870
8871 * Makefile.in: _Do_ include libiberty. (from sef)
8872
8873Fri 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
462088b8
SC
8878Thu 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
8884Mon 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
7f2cb270
KR
8892Mon 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
462088b8
SC
8896Mon 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
0b0b5dba
DHW
8902Tue 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
7c2d4011
SC
8906Wed 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
90d49457
SC
8915Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8916
65bfcf2e
SC
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
132239bf 8921 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 8922
7f2cb270
KR
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
462088b8 8928
f8701a3f
SC
8929Thu 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
ebfb4167
MT
8944Tue 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
8949Mon 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
8954Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
8955
8956 * configure.in: recognize m680x0 as an m68k
8957
dfd53fe9
JW
8958Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8959
8960 * configure.in: Recognize sparclite as a sparc variant.
8961
7f2cb270
KR
8962 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
8963 -Asparclite flag.
8964
d312e231
SC
8965Tue 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
0cca30f3
KR
8970Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8971
8972 * doc/Makefile.in: use m4 rather than gm4.
8973
7f2cb270
KR
8974Mon 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
d312e231
SC
8980Mon 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
fa493b93
RP
8985Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
8986
8987 * Makefile.in: do not print recursion lines.
8988
d96c09ed
RP
8989Wed 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
8993Tue 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
81484684
KR
8998Thu 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
3876b4c5
SEF
9003Tue 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
9013Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
9014
9015 * symbols.c (fb_label_init): fix sizeof to memset.
9016
95a925b8
RP
9017Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
9018
3876b4c5
SEF
9019 * Makefile.in: install the man page.
9020
95a925b8
RP
9021 * Makefile.in: pass down MAKEINFO explicitly on info.
9022
0cca30f3
KR
9023 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
9024
5d53038b
SC
9025Fri 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
7f2cb270
KR
9030Thu 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
132239bf 9033 tc-m68k.h to te-sun3.h.
7f2cb270 9034
8c1b25e4
RP
9035Wed 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
7f2cb270
KR
9045 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
9046
0cca30f3
KR
9047Sat 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
8c1b25e4
RP
9054Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
9055
9056 * Makefile.in: added check target.
9057
9058Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9059
9060 * Makefile.in: added tooldir and program_prefix.
9061
9062Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
9063
9064 * write.{c,h} (fix_new): Make these declarations consistent.
9065
1651b22d
MT
9066Sat 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
5373c439
SC
9071Wed 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
8c1b25e4
RP
9078Wed 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
0cca30f3
KR
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
f24f7577
SC
9088Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9089
14d3e47b
SC
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
132239bf 9092 really strange things with things like fbge,a
14d3e47b 9093
f24f7577
SC
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
c593cf41
SC
9104Sat 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
2d97273c
RP
9126Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9127
c593cf41
SC
9128 * Makefile.in: put header files before C source for TAGS; remove
9129 references to non-existent syscalls.h.
9130
2d97273c
RP
9131 * read.c, write.c subsegs.c: back out the .bss changes.
9132
7f2cb270
KR
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
6d5460ab
RP
9139Fri 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
7f2cb270
KR
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
d6e344db
RP
9181Fri 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
eb9eacd3
RP
9186Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
9187
aa3782d2
RP
9188 * read.c: white space and comments only.
9189
f816adbc
RP
9190 * configure.in: use the new atof-ns32.c for ns32k.
9191
eb9eacd3
RP
9192 * write.c: comment change only.
9193
7f2cb270
KR
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
542e1629 9209Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 9210
eb9eacd3
RP
9211 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
9212 rather than abort.
132239bf 9213
542e1629
RP
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.
33e61c95
ILT
9217
9218\f
9219Local Variables:
de442a3c
ILT
9220mode: indented-text
9221left-margin: 8
9222fill-column: 74
33e61c95
ILT
9223version-control: never
9224End:
This page took 0.542321 seconds and 4 git commands to generate.