* confiugre.in (hppa*-*-osf*): New configuration.
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
cb6af928
JL
1Thu Feb 24 07:10:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2
3 * config/ho-hppaosf.h: Fix braino in test for ANSI-C.
4
08c5812c
JL
5Wed Feb 23 16:51:43 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
6
7 * write.c (write_contents): Give the user a reasonable error
8 message rather than "assertion failed" if bfd_set_section_contents
9 fails.
10
c9c45af1
KR
11Tue Feb 22 10:07:32 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
12
13 * config/ho-mach3.h: New file.
14
9eb5f4b8
ILT
15Mon Feb 21 11:41:18 1994 Ian Lance Taylor (ian@cygnus.com)
16
2e5fdb1d
ILT
17 * ecoff.c (ecoff_build_debug): Don't set hdr->magic here. It is
18 now set in bfd/ecofflink.c:ecoff_write_symhdr.
19
9d90491e
ILT
20 * config/obj-coffbfd.c (write_object_file): use bfd_get_error (),
21 not bfd_error.
22 * config/obj-elf.c (elf_frob_file): Likewise.
23
24 * read.c (s_lcomm): Use an alignment power of 3 for 8 byte .lcomm
25 variables.
26
c8d02404
ILT
27 * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
28
9eb5f4b8
ILT
29 * read.c (read_a_source_file): Use correct arguments to memcpy
30 (broken 19 Jul 1993). From kjd@pescadero.stanford.edu (Kenneth
31 Duda).
32
4d88d6dc
ILT
33Sun Feb 20 18:01:54 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
34
35 * config/obj-coff.h (obj_coff_section): Declare.
36 * config/obj-coff.c (obj_pseudo_table): For "section", use
37 obj_coff_section.
38 (obj_coff_section): Rewrite.
39
741f4d66
KR
40Fri Feb 18 14:16:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
41
9e0cbfbb
KR
42 * configure.in (i386-*-mach3*): New target; uses BFD.
43 * config/te-mach.h: New file.
44 * config/obj-aout.c (obj_aout_frob_file): New function.
45 * config/obj-aout.h (obj_aout_frob_file): Declare it.
46 (frob_file): New macro.
47 * config/tc-i386.c (md_apply_fix_1) [TE_Mach]: Don't adjust
48 pcrel32 relocations.
49 * config/tc-i386.h (TARGET_FORMAT) [TE_Mach]: Use a.out-mach3.
50
741f4d66
KR
51 * write.c (write_object_file): Removed register declarations.
52
5e65fbc8
ILT
53Thu Feb 17 16:25:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
54
254f8450 55 Some support for PowerPC ELF.
5e65fbc8
ILT
56 * configure.in: If cpu is powerpc*, use ppc.
57 (ppc-*-sysv4*): Use object format elf.
58 * config/tc-ppc.h: Only declare a number of things if OBJ_COFF is
59 defined.
60 (TARGET_ARCH): Make it call ppc_arch.
61 (ppc_arch): Declare.
62 (TARGET_FORMAT): Set based on OBJ_COFF or OBJ_ELF.
63 (NO_STRING_ESCAPES): Define.
64 (LOCAL_LABEL, FAKE_LABEL_NAME): Define for OBJ_ELF.
65 * config/tc-ppc.c: Only define a number of functions of OBJ_COFF
66 is defined.
67 (md_pseudo_table): Most pseudo-ops are OBJ_COFF specific. Added
68 OBJ_COFF specific "bi" and "ei".
69 (md_parse_option): Fix handling of -u. Make -m601 set
70 PPC_OPCODE_601. If OBJ_ELF, accept -V and -Q.
71 (ppc_set_cpu): New function.
72 (ppc_arch): New function.
73 (md_begin): Call ppc_set_cpu.
74 (ppc_insert_operand): For a signed operand accept an unsigned
75 value, for IBM compatibility.
76 (ppc_byte): Don't call stringer for strings; instead, treat two
77 double quotes as a single double quote.
78 (ppc_comm): Set sy_tc.output for a .lcomm symbol.
79 (ppc_biei): New function.
80 (ppc_tc): If not OBJ_COFF, ignore first argument.
81 (ppc_fix_adjustable): Call as_bad_where, not as_bad.
82 (ppc_is_toc_sym): New function.
83 (md_apply_fix): Use ppc_is_toc_sym. Handle BFD_RELOC_16 and
84 BFD_RELOC_8.
85
f61b81b7
DM
86Thu Feb 17 09:29:37 1994 David J. Mackenzie (djm@thepub.cygnus.com)
87
88 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_get_error and
89 bfd_set_error and new error names.
90
c25be7f4
KR
91Tue Feb 15 20:23:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
92
93 * configure.in: Support i960-vxworks versions > 5.0 as coff.
94 Default is still bout if no version is specified.
95
04bde70d
KR
96 * atof-generic.c (atof_generic): Use switch and strcasecmp instead
97 of large number of compares when looking for inf/nan values.
98
b1237b9d
ILT
99Fri Feb 11 13:13:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
100
101 * config/tc-mips.c (macro): Do unaligned loads and stores
102 correctly when big endian, and give errors on overflow rather than
103 generating incorrect code.
104
605e1d90
ILT
105Thu Feb 10 11:24:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
106
107 * as.c: Include libiberty.h.
108
109 * read.c (do_align): Don't define label just_record_alignment
110 unless it might be used.
111
112 * as.c (main): If md_parse_long_option is defined, call it with a
113 long option.
114 * config/tc-mips.h (md_parse_long_option): Define.
115 * config/tc-mips.c (mips_trap): New static variable.
116 (md_begin): Report an error if mips_trap is set at ISA level 1.
117 (macro): If mips_trap, use trap instructions instead of break
118 instructions for overflow and divide by zero detection.
119 (mips_parse_long_option): New function. Support --trap,
120 --no-break, --break and --no-trap.
121 * doc/as.texinfo: Document new options.
122
123 * read.c (potable): Add "zero".
124 * config/tc-i386.c (md_pseudo_table): Remove "zero".
125 * config/tc-m88k.c (md_pseudo_table): Likewise.
126
6440d65c
KR
127Thu Feb 10 01:24:27 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
128
129 * config/tc-sparc.c (sparc_ip): Reject integer values for
130 pc-relative operand fields. This forces "call 0" to become "jmpl
131 %g0,%o7" with no relocations needed.
132
ddb393cf
ILT
133Wed Feb 9 13:08:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
134
d87c080e
ILT
135 * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
136 * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
137
ddb393cf
ILT
138 * app.c (do_scrub_next_char): If NO_STRING_ESCAPES is defined,
139 don't treat backslash specially inside strings.
140 * read.c (next_char_of_string): Likewise.
141
66c774bb
SS
142Wed Feb 9 09:42:45 1994 Stan Shebs (shebs@andros.cygnus.com)
143
144 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use memset
145 instead of memcpy to zero the initial stab symbol, duh.
146 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
147 * config/obj-som.c (obj_som_init_stab_section): Ditto.
148
356315fe
ILT
149Tue Feb 8 17:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
150
151 * write.c (fixup_segment): Use as_bad_where, not as_bad.
152
153 * subsegs.c (subseg_set_rest): Call memset with the arguments in
154 the right order. Explicitly clear fix_root and fix_tail fields.
155
df44a852
KR
156Tue Feb 8 16:00:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
157
cfaf70e3
KR
158 * config/obj-coff.c (coff_frob_symbol): For abs_symbol, set *punt
159 and do nothing else.
160
161 * symbols.c (symbol_begin): Initialize value of abs_symbol
162 properly.
163
164 * write.c (adjust_reloc_syms): Use abs_symbol instead of calling
165 section_symbol.
166
cafb569b
KR
167 * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
168 complaint from "gcc -Wall".
169
7496639a
KR
170 * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
171
8a74b870
KR
172 * config/tc-alpha.c (GP_ADJUSTMENT): Move definition to start of
173 file.
174 (tc_gen_reloc): Remove uninitialized variable `code', and code
175 that tried to use it (incorrectly). For LITERAL reloc, set addend
176 to negative of GP value.
177 (load_symbol_address): Don't adjust return value by GP_ADJUSTMENT.
178
df44a852
KR
179 * write.c (write_relocs): Print some sensible error message if
180 bfd_perform_relocation returns bfd_reloc_overflow.
181
182Mon Feb 7 15:49:24 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
183
184 * configure.in (hppa*-*elf*): New configuration for PA ELF.
185 (hppa*-*-osf*): Default object format is SOM.
186
c3591adb
KR
187Mon Feb 7 16:07:35 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
188
2d33b3aa
KR
189 * config/tc-alpha.c (md_atof): Warn that floating-point values
190 might not assemble properly.
191
c3591adb
KR
192 * configure.in (target alpha-*-osf*): Don't set "dev=yes" any
193 more.
194
195 * config/tc-alpha.c (load_expression): Parenthesize operations in
196 range checking, to avoid precedence questions.
fc6b54fd 197
c3591adb
KR
198 * config/tc-alpha.c (addr32): New static variable.
199 (md_parse_option): Set it for "-32addr".
200 (load_symbol_address): If addr32 is set, use ldl instead of ldq.
201
202 * atof-generic.c (atof_generic): Calculate maximum_useful_digits
203 and more_than_enough_bits_for_digits in integer arithmetic, to
204 eliminate the only sources of dependence on floating point
205 support, which doesn't work yet on the Alpha.
206
207Mon Feb 7 03:56:05 1994 Ken Raeburn (raeburn@cambridge.cygnus.com)
fc6b54fd
KR
208
209 * ecoff.c (ecoff_build_debug) [TC_ALPHA]: Specify version stamp as
210 0x30b for Alpha for now, until ".verstamp" is handled.
211
212 * literal.c (add_to_literal_pool): Use seginfo->frchainP, which
213 actually refers to the literal pool section, rather than
214 frchain_now, which refers to whatever section the assembler was
215 in.
216
217 * write.c (fixup_segment): Only do range checking if size of fixup
218 is smaller than word size. Otherwise, we always wind up with
219 zeros.
220
5facbfd4
KR
221 * config/tc-alpha.c (md_section_align): Change second argument and
222 return type to valueT, to agree with tc.h.
223 (alpha_do_align): Local static array nop_pattern is now unsigned
224 char, to avoid overflow warnings.
225 * config/tc-alpha.h (md_section_align): Delete declaration.
226
227 * config/obj-ecoff.c (ecoff_frob_file): Ensure that ecoff_data for
228 output bfd is non-null before indirecting through it.
229
230 * config/tc-alpha.c (alpha_frob_ecoff_data): Renamed from
231 alpha_frob_file.
232 * config/tc-alpha.h (tc_frob_file): Macro deleted.
233 * config/obj-ecoff.c (ecoff_frob_file) [TC_ALPHA]: Call
234 alpha_frob_ecoff_data, then fill in optional-header info with gp
235 value and register masks.
236
dc536cc0
JL
237Sun Feb 6 16:13:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
238
f8693e71
JL
239 * configure.in (hiux): Fixes from m-kasahr@sramhc.sra.co.JP.
240
dc536cc0
JL
241 * config/obj-som.c (obj_som_init_stab_section): Same change
242 as coffbfd and elf below. Zero the initial stab symbol after
243 allocating it.
244
41b5ef0f
SS
245Sat Feb 5 12:30:32 1994 Stan Shebs (shebs@andros.cygnus.com)
246
247 * config/obj-coffbfd.c (obj_coff_init_stab_section): Zero the
248 initial stab symbol after allocating it.
249 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
250
fa4beb7e
JL
251Sat Feb 5 11:53:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
252
253 * config/tc-hppa.c (pa_ip): addb[tf] should only accept
254 non-negated condition completers. Add support for addb pseudo-op
255 which accepts both negated and non-negated completers.
256
1c11ab0e
ILT
257Sat Feb 5 00:15:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
258
259 * configure.in (rs6000*): Use cpu_type ppc.
260 (ppc-*-aix*): New target; use coff and force bfd_gas.
261 * config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
262 (RS/6000) support. At the moment, only XCOFF is supported.
263
264 * config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
265 (S_SET_DATA_TYPE): Likewise.
266 (coff_last_function): Renamed from local static last_functionP in
267 coff_frob_symbol and made externally visible.
268 (coff_frob_symbol): New local static set_end; use it to try to
269 avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
270 * config/obj-coff.h (S_SET_DATA_TYPE): Declare.
271 (SA_SET_SYM_ENDNDX): Declare.
272 (coff_last_function): Declare.
273
274 * expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
275 equivalent to `.' to mean the current location.
276
277 * read.c (LEX_BR): If not defined, define as 0.
278 (lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
279
280 * symbols.c (symbol_new): If tc_canonicalize_symbol_name is
281 defined, call it with preserved_copy_of_name. If
282 tc_symbol_new_hook is defined, call it on the new symbol.
283 (symbol_find_base): If tc_canonicalize_symbol_name is defined,
284 call it on a copy of the name argument.
285
286 * write.c (write_object_file): Simplified usage of obj_frob_symbol
287 and tc_frob_symbol. Always call both if the symbol is going to be
288 output.
289
290 * write.c (relax_segment): Use %ld rather than %d when printing
291 fragP->fr_var, and cast it to long.
292
293 Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
294 * subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
295 fix_root and fix_tail.
296 (segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
297 field.
298 * write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
299 fix_tailP based on frchain_now, not seg_info (now_seg).
300 (chain_frchains_together_1): Chain the subsegment relocs together.
301 * subsegs.c (subseg_change): Don't clear fix_tail field.
302 (subseg_get): Likewise.
303 * literal.c (add_to_literal_pool): Look through the relocs via
304 frchain_now, not seginfo.
305
f85ad9d5
ILT
306Thu Feb 3 23:07:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
307
308 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
309 ecoff_undefined to ecoff_extern_size.
310 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
311 * config/tc-mips.c (s_extern): Set ecoff_extern_size to the
312 external symbol size, rathern than setting the symbol value.
313 (md_estimate_size_before_relax): Check both ecoff_extern_size and
314 symbol value to see if GP referencing can be used.
315 * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
316 ecoff_undefined.
317 (ecoff_frob_symbol): Don't check ecoff_undefined.
318 (ecoff_build_symbols): Get size of an undefined symbol from
319 sym->ecoff_extern_size, not S_GET_VALUE (sym).
320
b4bd2c92
JL
321Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
322
323 * Makefile.in: Avoid bug in losing hpux sed.
324
1051c97f
ILT
325Wed Feb 2 11:40:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
326
327 * config/tc-mips.c (file_mips_isa): New static variable.
328 (md_begin): Set it.
329 (s_mipsset): Add support for .set mipN to set the ISA level.
330
331 * gasp.c (kinfo): Fully bracket initializer.
332
f2cdeec4
KR
333Tue Feb 1 19:28:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
334
335 * gasp.c (malloc): Don't declare, since host.h or system header
336 files may declare it differently.
337
338 * config/atof-ieee.c (int_to_gen): Now static.
339
340 * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
341 ho-sysv.h. Based loosely on a patch from Minh Tran-Le.
342
e2847e64
SC
343Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
344
345 * gasp.c: Include host.h.
346
9cbf9e57
ILT
347Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
348
8bbad6fd
ILT
349 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
350 warning, not an error.
351
9cbf9e57
ILT
352 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
353 dot_bss_symbol): Don't define if BFD_ASSEMBLER.
354 (obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
355 arguments.
356 (coff_line_base): Renamed from line_base. Changed all uses.
357 (coff_add_linesym): Renamed from add_line_sym. Made non-static.
358 Changed all uses.
359 * config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
360 (S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
361 BFD_ASSEMBLER.
362 (coff_line_base): Declare.
363 (coff_add_linesym): Declare if BFD_ASSEMBLER.
364 * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
365 now takes more arguments.
366
2abb453d
SS
367Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
368
369 * as.c (statistics_flag): Renamed from quiet_flag.
370 (main): Get statistics with --statistics instead of -noquiet.
371
a5a4b5ac
SC
372Mon Jan 31 07:19:30 1994 Steve Chamberlain (sac@jonny.cygnus.com)
373
374 * Makefile.in: Support for Gnu ASsembler Preprocessor.
375 * gasp.c: New file.
376 * read.c (s_lcomm): Align lcomm data.
377 * config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
378 from different sections.
379
7909261f
KR
380Sun Jan 30 14:58:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
381
382 * write.c (write_object_file): If tc_frob_file is defined, call it
383 just before calling obj_frob_file.
384 * config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
385 (references changed), and made non-static.
386 (getExpression): Return void.
387 (select_gp_value): Abort if gp_value is non-zero. Delete call to
388 non-existent bfd_set_gp_value.
389 (alpha_validate_fix): Function deleted.
390 (alpha_frob_symbol): Function deleted.
391 (alpha_local_label): Function deleted.
392 (alpha_frob_file): Renamed from alpha_end.
393 * config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
394 alpha_local_label, alpha_end): Declarations deleted.
395 (alpha_gp_value, alpha_frob_file): Declare.
396 (tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
397 (LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
398 (md_convert_frag): Simplified slightly.
399 (tc_frob_file): New macro.
400
401 * read.c (do_align): New function, most of guts of s_align_*
402 functions. Look for md_do_align macro, give it a chance to bypass
403 all but recording of section alignment.
404 (s_align_bytes, s_align_ptwo): Call do_align.
405 (s_lcomm) [TC_ALPHA]: Align object to largest power of two that
406 divides object size.
407
408 * frags.c (frag_align_pattern): New function.
409 (frag_align): Rewrite for clarity.
410
411 * config/tc-vax.c (md_assemble): Handle O_constant expression.
412 (vip_begin): Returns pointer to const char. Cast hash_insert arg
413 to PTR to avoid compiler complaints about const.
414 (md_begin): Local variable errtxt must point to const.
415
416 * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't
417 bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
418 the last has an existing host support file. Do handle vax-bsd and
419 vax-ultrix targets.
420
1f029792
ILT
421Fri Jan 28 11:26:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
422
423 * config/obj-coff.c (obj_coff_section_header_append): Do not
424 declare if BFD_ASSEMBLER.
425 (stack_pop): Correct test for stack underflow.
426 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
427 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
428 type of ignored argument to avoid gcc warning.
429 (align): Removed unused function.
430
6221fe20
KR
431Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
432
81f6013a
KR
433 * config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
434 files, based on port of gas-1.38 contributed by CMU, using a.out
435 variant. Updated for gas-2.x and ECOFF. Floating-point constants
436 are still broken, bootstrap testing incomplete.
437
438 * literal.c: Comment changes.
439
440 * listing.c (listing_source_file): Check for null listing_tail
441 before indirecting through it.
442
443 * expr.h (struct expressionS): Added struct tag.
444
445 * as.h: If __GNUC__ and inline are both undefined, define inline
446 away.
447
448 * write.c (cvt_frag_to_fill): Don't assume that fr_var for
449 rs_align or rs_org frags will be 1.
450 (relax_segment): For rs_align, if fr_var is not 1, complain if
451 required padding is not a multiple of the size of the pad pattern.
452 (fixup_segment): Leave gp-relative relocations alone. For pcrel
453 relocations referring to the same segment, clear fx_pcrel when
454 clearing fx_addsy.
455 * as.h: Adjust comments on rs_align.
456
6221fe20
KR
457 * atof-generic.c: Some reformatting.
458 (atof_generic): Be careful when mixing signed/unsigned values of
459 different sizes.
460
81f6013a
KR
461 * write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
462 Query the fx_done field instead of fx_addsy to see if the fixup
463 still needs to be applied. Set fx_done and clear fx_addsy both,
464 for now. If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
465 will only clear fx_addsy, and set fx_done accordingly after
466 returning.
467 * config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
468 * config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
469 with no fx_addsy.
470
471 * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
472 Deleted.
473 (symbol_begin): Moved to end of file, so function inlining can
474 work better.
475 (fb_label_count, fb_label_max): Default C static initializers are
476 sufficient.
477 * symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
478 Declarations deleted.
479 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
480 dot_bss_symbol): Defined here, static.
481
482 * config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
483 including aout/aout64.h.
484
485 * write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
486 don't write out a section symbol even if it's used in a
487 relocation; assume relocations will handle section numbers
488 somehow. Rename "punt_it" label to "punt_it_if_unused" to reflect
489 it's true use.
490 (EMIT_SECTION_SYMBOLS): Default to 1.
491 (adjust_reloc_syms): Don't create a new symbol for an absolute
492 reference; just use the absolute section symbol.
493 (write_relocs): Make printout of reloc values dependent on flag
494 DEBUG3, not DEBUG2.
495 * config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
496 * config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
497
a57180ad
ILT
498Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
499
ec7a69ea
ILT
500 * read.c (lex_type): No longer make '{' a valid character for
501 symbol names.
502
fe920573
ILT
503 * as.c (main): Print long values using %ld.
504
a57180ad
ILT
505 * messages.c (as_warn_internal): New static function.
506 (as_warn, 3 versions): Use as_warn_internal.
507 (as_warn_where, 3 versions): New function.
508 * as.h (as_warn_where): Declare.
509
ca7bd557
SS
510Tue Jan 25 18:30:34 1994 Stan Shebs (shebs@andros.cygnus.com)
511
512 * as.c (quiet_flag): New flag.
513 (main): If -noquiet given, display execution time and memory used.
514
9dcf8057
JL
515Tue Jan 25 15:53:11 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
516
517 * doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
518
f71babce
ILT
519Mon Jan 24 19:18:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
520
521 * ecoff.c (ecoff_frob_symbol): New function. Put undefined
522 symbols of known size in the undefined section. Put small common
523 symbols in a .scommon section.
524 * ecoff.h (ecoff_frob_symbol): Declare.
525 * config/obj-ecoff.h (obj_frob_symbol): Define.
526 * config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
527 obj_elf_frob_symbol): Removed unused functions.
528 * config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
529 unused macros.
530 (obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
531 of unused functions.
532 (obj_frob_symbol): Define if ECOFF_DEBUGGING.
533
534 * tc-mips.c (g_switch_seen): New static variable.
535 (md_parse_option): Set g_switch_seen for -G option.
536 (s_option): If creating PIC code, force the GP size to be 0. Warn
537 if -G switch used with a non-zero value.
538
539 * symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
540 comparing against bfd_com_section.
541
2ef7731d
KR
542Mon Jan 24 14:12:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
543
544 * read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
545 section.
546
7691379e
KR
547Thu Jan 20 13:17:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
548
549 * expr.c (operand): For floating point operand with unusual fp
550 char from FLT_CHARS, preserve the character. Patch from Lisa
551 Repka.
552
eb8fd0e9
ILT
553Wed Jan 19 23:15:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
554
555 * config/tc-mips.c (md_pseudo_table): Add all data allocation
556 pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
557
d9420fc1
SC
558Tue Jan 18 15:51:59 1994 Steve Chamberlain (sac@jonny.cygnus.com)
559
560 * config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
561 C_FCN assume .val has been set to .
562
2f156c92
JL
563Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
564
565 * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
566 confuses GDB for some unknown reason.
567 * cofnig/obj-som.c: Likewise.
568
19302e44
KR
569Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
570
571 * literal.c (add_to_literal_pool): Handle duplicates of values
572 already written to literal pool.
573
4bda835f
ILT
574Tue Jan 18 17:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
575
576 * config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
577 with explicitly marked stabs through BFD: if a symbol marked
578 N_UNDF | N_EXT is in the absolute section, move it to the
579 undefined section; move a symbol marked N_INDR into
13655af6
ILT
580 bfd_ind_section and set the BSF_INDIRECT flag; set the
581 BSF_WARNING flag for a symbol makred N_WARNING.
4bda835f 582
17ed84ed
ILT
583Mon Jan 17 15:40:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
584
585 * ecoff.h (ecoff_set_gp_prolog_size): Declare.
586 * ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
587
d0286a21
JL
588Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
589
51517966
JL
590 * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
591 and 'f' template operand.
592
d0286a21
JL
593 * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
594 and '2' in copr and sfu instruction templates.
595
e7501ac7
JL
596Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
597
598 * as.h (subseg_force_new): Add prototype.
599
d2550c72
DE
600Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
601
d307fed1
DE
602 * app.c (do_scrub_next_char): Allow lines like " foolab :".
603
d2550c72
DE
604 * read.c (emit_expr): Fix computation of mask.
605 * config/obj-elf.c (obj_elf_section): Fix loop termination test.
606
d211303d
KR
607Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
608
64270963
KR
609 * ecoff.c (ecoff_set_gp_prolog_size): New function.
610 (current_file_idx): New static variable.
611 (add_file): Use and increment current_file_idx instead of indx
612 parameter.
613
ff4325cb
KR
614 * struc-symbol.h (struct symbol): Make all bitfields unsigned.
615
d211303d
KR
616 * config/tc-i960.c (i960_validate_fix): Added argument
617 add_symbolPP. Indirect through it to get "add_symbolP".
618 * config/tc-i960.h (i960_validate_fix): Supply prototype.
619 (TC_VALIDATE_FIX): Pass address of add_symbolP.
620
621 * configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
622 (i386-*-netbsd0.8): New target, like 386bsd.
623
624 * configure.in: Set BFDDEF in Makefile to "define" or "undef".
625 * Makefile.in (config.h): Protect against multiple inclusions.
626 Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
627 (ALL_CFLAGS): Omit $(BFDDEF).
628 * as.h: Include config.h.
629 (struct symbol): Added forward declaration.
630 (add_to_literal_pool): Fix declaration.
64270963 631 * as.c: Don't include config.h.
d211303d
KR
632
633 * literal.c (add_to_literal_pool): Take symbol and addend as
634 arguments, instead of expression, for now. Fix calculation of
635 offset to return.
636
637 * subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
638 literal_pool_size.
639
500828a0
JL
640Thu Jan 13 12:14:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu
641
642 * subsegs.c (subseg_get): Accept new argument "force_new". If
643 set then a new segment is always created. All callers changed.
644 (subseg_force_new): New function. Similar to subseg_new, but
645 always force a new segment to be created.
646
647 * config/obj-som.c (som_frob_file): Call adjust_code_sections
648 for each section.
649 (adjust_code_sections): New function. Adjusts the VMA for all the
650 $CODE$ subspaces.
651
652 * config/tc-hppa.c (md_assemble): Also handle creating a fixup
653 for the unwind descriptors if a function's label follows the
654 .PROC and .ENTRY directives.
655 (pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
656 is done elsewhere. Don't create a fixup for the unwind
657 descriptors if the function's label has not been defined yet.
658 (pa_proc): For SOM, place each procedure within a new $CODE$
659 subspace. Adjust the segment and frag for the associated
660 function label if it exists.
661
662Wed Jan 12 22:05:33 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
663
664 * config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
665 (hppa_fix_new): Initialize segment field.
666 (md_apply_fix): Do nothing for pc-relative fixup which involves
667 crossing a segment boundary.
668 (pa_procend): Undefine the current label after handling .PROC
669 and .PROCEND directives.
670 (dummy_symbol): Make type "symbolS *". Change references as
671 appropriate.
672
bbf7e43d
ILT
673Wed Jan 12 13:29:31 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
674
675 * read.c (read_a_source_file): Cast array argument to unsigned
676 char.
677 * write.c (adjust_reloc_syms): Remove unused variable symseginfo.
678 (write_object_file): Don't define punt_it if it won't be used.
679 (fixup_segment): Don't define skip if it won't be used.
680
681 * config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
682 (mips_target_format): Declare.
683 * config/tc-mips.c (mips_target_format): Define with appropriate
684 default definition.
685 (md_parse_option): If -EL or -EB is used, change byte_order and
686 mips_target_format as appropriate.
687
a1c91916
JL
688Tue Jan 11 21:52:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
689
690 * app.c (do_scrub_next_char): Another attempt to fix bugs
691 dealing with labels without colons (for HPPA and MRI).
692
44ce2f32
DE
693Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
694
695 * expr.c (integer_constant): Fix computation of too_many_digits.
696 Variable digit_2 renamed to start. Fix check for whether number
697 will fit in 32 bits.
698 * read.c (emit_expr): Use valueT instead of long.
699
af255ca0
ILT
700Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
701
f34e27a1
ILT
702 * config/obj-elf.c: If TC_MIPS, include elf/mips.h.
703 (special_sections): Define.
704 (obj_elf_special_section): Get default types and attributes from
705 list of special sections.
706 * config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
707
4e76ae53
ILT
708 * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
709 sections to be close together.
710
8197b589
ILT
711 * config/tc-mips.c (macro): Corrected $at warnings in a couple of
712 spots.
713
af255ca0
ILT
714 * listing.c (listing_prev_line): New function.
715 * listing.c: Include subsegs.h.
716 (listing_prev_line): New function.
717 (calc_hex): Reset byte_in_frag to zero for each new frag.
718 * config/tc-mips.c (append_insn): Call listing_prev_line after
719 emitting nop instructions.
720 * Makefile.in (listing.o): Depends upon subsegs.h.
721
4047ff1d
JL
722Mon Jan 10 09:52:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
723
724 * config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
725 here. Handle case where label may be defined after the .PROC.
726 (pa_proc): It is not an error if the procedure's label isn't
727 defined before the .PROC directive.
728
6f1c6a67
KR
729Sun Jan 9 04:43:30 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
730
731 * config/te-netbsd.h: New file.
732 * config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
733 a.out-netbsd-386 for this configuration.
734
fe4e3290
ILT
735Fri Jan 7 17:38:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
736
737 * ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
af255ca0 738 with the associated stabs information.
fe4e3290
ILT
739 (ecoff_build_symbols): Never set the type of stabs symbols to
740 st_Global. Don't update the symbol index or ifd if the gas symbol
741 is not the same as the ECOFF symbol (which is now the case for
742 stabs symbols).
743
917fae09
SS
744Fri Jan 7 11:14:07 1994 Stan Shebs (shebs@andros.cygnus.com)
745
746 * config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
747 splits the function.
748 (macro2): New function, if LOSING_COMPILER defined.
749
03a372ed
SC
750Fri Jan 7 09:38:25 1994 Steve Chamberlain (sac@cygnus.com)
751
752 * config/obj-coffbfd.c (fill_section): Don't ever fill past the
753 end of a section. (write_object_file): Temporary fix - setup
754 stdoutput.
755
fd0e2cf2
KR
756Thu Jan 6 18:05:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
757
758 * config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
759 non-pcrel_offset relocations.
760
13fe1379
ILT
761Thu Jan 6 01:06:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
762
763 * config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
764 without .set noat.
765
311ff8d6
KR
766Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
767
2d29d89d 768 * literal.c: New file.
d4aad2b4
KR
769 * Makefile.in (REAL_SOURCES, OBJS): List it.
770
771 * as.h (DEBUG): Don't define.
772 (struct expressionS, struct fix): Declare in case they're used in
773 prototypes.
774 (add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
2d29d89d 775
311ff8d6
KR
776 * config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
777 in bfd.
778
779 * subsegs.c (subseg_get): New function. Creates segment if
780 needed, returns pointer, but doesn't change current segment.
781 (subseg_new): Use it.
782
5a051773
SS
783Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
784
785 * Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
786 * config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
787 * app.c, flonum.h, hex-value.c (const): Change #if to be more
788 portable.
789
fce98d63
RS
790Tue Jan 4 22:11:34 1994 Rob Savoye (rob@darkstar.cygnus.com)
791
792 * config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
793 micro-kernel.
794
5a051773
SS
795Thu Dec 30 15:27:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
796
797 * write.c (write_relocs): bfd_perform_relocation now takes an
798 additional argument, to return an error string (which we ignore).
799
9314b3a1
KR
800Wed Dec 29 14:37:26 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
801
802 * write.h (struct fix): Field tc_fix_data should be type PTR, not
803 void*, for compatibility with non-ANSI compilers. Added
804 single-bit field "fx_done".
805
45db9caf
TG
806Sun Dec 26 14:31:47 1993 Torbjorn Granlund (tege@adder.cygnus.com)
807
808 * tc-hppa.c (pre_defined_registers): Convert to lower case.
809 Delete spurious register names "%r4L", etc.
810 (selector_table): Sort and convert to lower case.
811 (cons_fix_new_hppa): `reloc_type' => `rel_type'.
812 (pa_ip): Always use strcmp for non-text and strcasecmp for text.
813 (reg_name_search): Rewrite to call strcasecmp only once per
814 iteration.
815 (pa_chk_field_selector): Rewrite to use binary search.
816 (pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
817 (pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
818 sensitive comparisons.
819 (pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
820 (pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$". Use
821 case sensitive comparison for all symbolic names.
822 (pa_subspace): Canonicalize strncasecmp arg to lower case.
823 (pa_subspace_start): Use case sensitive comparison for symbolic names.
824
8b13fa4e
KR
825Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
826
0a75cb6c
KR
827 * write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
828 symbol is present (i.e., relocation against absolute), create a
829 phony local symbol, and use it in the reloc.
830 (fixup_segment): When adjusting a reloc with an absolute symbol,
831 have TC_FORCE_RELOCATION control clearing add_symbolP too.
832 * config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
833
834 * symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
835 and BSF_GLOBAL, since they're the same.
836
d3e3010b
KR
837 * as.c (main): Only invoke md_end if it's defined as a macro.
838 * tc.h (md_end): Don't declare it.
839 * config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
840 anything.
841 * config/tc-vax.c (vip_end): Deleted null function.
842 * config/tc-mips.c (md_mips_end): Renamed from md_end.
843 * config/tc-mips.h (md_mips_end): Declare.
844 (md_end): New macro, calls md_mips_end.
845
846 * write.c (write_object_file): Don't close output file.
847 * as.c (main): Close output file (if needed) after calling
848 listing_print, which should be after calling write_object_file,
849 which sets the frag addresses.
850
851 * config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
852 obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
853 obj_coff_val): Add unused int argument to satisfy prototypes; goes
854 with Ian's 10 Sep changes.
855 (S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
856 S_SET_STORAGE_CLASS): Now function instead of macros.
857 (obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
858 (tag_insert): Local var ERROR_STRING is const. Use "const" not
859 "CONST" for argument NAME. Fixed prototype.
860 (coff_frob_symbol): Removed explicit "#if 1" directive. If
861 S_IS_EXTERNAL, set storage class to C_EXT.
862 (s_get_name): Use "const" not "CONST".
863 * config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
864 S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
865 (obj_emit_lineno): Declare only for non-BFD_ASSEMBLER. For
866 BFD_ASSEMBLER, define as macro that aborts.
867 (obj_extra_stuff, tc_headers_hook): Declare only for
868 non-BFD_ASSEMBLER.
869 (coff_frob_symbol): Fix prototype.
8b13fa4e
KR
870
871Sun Dec 19 00:37:20 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
872
873 * config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
874 reversed.
875
5ea18b5d
JL
876Thu Dec 16 21:13:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
877
878 * config/tc-hppa.c (md_begin): Initialize "dummy_label".
879 (tc_gen_reloc, SOM version): For relocations which have no symbol,
880 set sym_ptr_ptr to dummy_label. Avoids lossage in generic BFD code.
881
a8a72d74
KR
882Thu Dec 16 16:07:56 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
883
884 * read.c (lex_type): No longer make '[' a valid character for
885 symbol names.
886
50f75add
KR
887 * config/tc-vax.c (tc_aout_fix_to_chars): Local variable
888 NBYTES_R_LENGTH now const.
889
890 * config/obj-*.c, config/tc-*.c: Omit superfluous "return"
891 statements at ends of functions. Don't check for null return from
892 hash_new, since it won't return at all if there's no memory
893 available. Also, check for null return from hash_insert, rather
894 than zero-length string, as success indicator.
895
896 * subsegs.c (section_symbol): New function.
897 * subsegs.h (section_symbol): Declare.
898 * write.c (adjust_reloc_syms): Use it.
899
cf4aca57
KR
900Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
901
7387c355
KR
902 * Makefile.in (RUNTEST): New variable.
903 (CHECKFLAGS): Pass it down.
904
cf4aca57
KR
905 * ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
906 unused for now, but supplied by Alpha OSF1 compiler.
907
908 * as.h: Protect against multiple inclusions.
909 (int_to_gen): Don't declare.
910
911 * config/atof-vax.c (atof_vax): NULL is not a valid character
912 constant.
913
551d2fd4
JL
914Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
915
26da0351
JL
916 * configure.in (hppa*-*-osf*): Do not consider this a developmental
917 configuration.
918
551d2fd4
JL
919 * config/tc-hppa.c (md_apply_fix): Handle cases where no
920 relocation will be emitted for 32bit formats.
921
9d5a9b20
JL
922Mon Dec 13 23:33:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
923
924 * config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
925 for any of the 'T' field selectors.
926
2b5936ff
SC
927Sat Dec 11 11:23:12 1993 Steve Chamberlain (sac@thepub.cygnus.com)
928
929 * config/tc-h8500.c (build_bytes): Get reloc type right for a
930 %page operation. (md_assemble): Don't modify input_line_pointer.
931 (mdcoff_sizemachdep): New function.
932 * config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
933 * config/tc-z8k.c (get_operand): Delete bogus check.
934
a1328e79
KR
935Wed Dec 8 16:31:51 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
936
937 * write.c (number_to_chars_*): Delete bogus range check.
938
939 * output-file.c (TARGET_ARCH): No default.
940
ef7ce769
SC
941Tue Dec 7 16:02:53 1993 Steve Chamberlain (sac@jonny.cygnus.com)
942
943 * config/tc-sh.c (md_convert_frag): Truncate disps before calling
944 md_number_to_chars. (md_assemble): Don't modify
945 input_line_pointer.
946
67707031
DE
947Mon Dec 6 11:49:03 1993 Doug Evans (dje@canuck.cygnus.com)
948
949 * config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
950
dd2f509f
JL
951Mon Dec 6 11:20:02 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
952
953 * config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
954 Breaks with the HP compilers.
955
956 * config/tc-hppa.c (struct call_info): Remove fields which were
957 set but never used. Remove all code which sets those fields.
958 (struct subspace_dictionary_chain): Likewise.
959 (struct space_dictionary_chain): Likewise.
960 (pa_desc): Delete useless function. Delete all references.
961 (hppa_tc_make_sections): No need to count the number of symbols for
962 the symbol extension section.
963
7b624bf2
JL
964Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
965
eb91665b
JL
966 * config/obj-som.c (obj_som_version): Pass version string to
967 SOM BFD backend.
968 (obj_som_copyright): New function. Much like obj_som_version.
969
970 * config/tc-hppa.c (obj_copyright): Define as appropriate for
971 SOM and ELF.
972 (pa_copyright): Just a stub now.
973
42ecb409
JL
974 * config/obj-som.c (obj_read_begin_hook): Delete unused function.
975 * config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
976 (TARGET_SYMBOL_FIELDS): Delete. SOM isn't making use of them.
977
4165dcc2
JL
978 * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
979 expansion due to rounding mode selectors. Handle R_[RDSN]_MODE
980 relocations for selecting the current rounding mode.
981
7b624bf2
JL
982 * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
983 e_rlsel field selectors.
984
985Fri Dec 3 18:33:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
986
987 * config/obj-elf.h: If ECOFF_DEBUGGING, undef
988 SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
989 OBJ_PROCESS_STAB to call ecoff_stab.
990 * config/obj-elf.c: Don't compile obj_elf_init_stab_section if
991 INIT_STAB_SECTION is not defined.
992
753dcbbd
JL
993Fri Dec 3 10:56:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
994
995 * config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
996 (md_apply_fix_1): Rename to md_apply_fix. Fix argument decls.
997 Fix comments in various places. Always return a value.
998 Avoid dereferencing a NULL fx_addsy.
999 (hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
1000
585635c7
JL
1001 Fri Dec 3 09:47:30 1993 Pete Hoogenboom (hoogen@cs.utah.edu)
1002
1003 * tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
1004 be either 0 or 2 (no static link or static link required). Always
1005 assume no static link.
1006
bfbfba45
KR
1007Thu Dec 2 11:52:21 1993 Ken Raeburn (raeburn@cygnus.com)
1008
1009 * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
1010 dependent on howto fields, not on format flavour.
1011
1012 * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
1013 defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
1014 macros are defined.
1015 * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
1016 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
1017 (sy_tc, sy_obj): Define so that the fields look like they used to,
1018 until all references get changed.
1019
1020 * write.c (fixup_segment): Lots of variables no longer register.
1021 Reordered some code for easier reading.
1022 * config/obj-coff.c (obj_coff_dim): dim_index no longer register.
1023 Deleted superfluous return statement.
1024 (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
1025 obj_coff_val, tag_init, tag_insert): Deleted superfluous return
1026 statement.
1027 (align, obj_coff_section): Deleted debugging printfs.
1028 * config/tc-i386.c (md_assemble): Discard some register decls.
1029 Use assignment rather than memcpy to copy template.
1030 (op_hash, reg_hash, prefix_hash): Default C initialization of
1031 statics is sufficient.
1032 * config/tc-sparc.c (print_insn): Array Reloc is now const, and
1033 points to const.
1034
1035 * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
1036 TE_LYNX; use coff-sparc otherwise.
1037 [USE_NATIVE_HEADERS]: Delete this code; it isn't used.
1038
1039 * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
1040 before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before
1041 returning. Remove some i960-coff-specific code.
1042 (TC_ADJUST_RELOC_COUNT): Default to doing nothing.
1043 * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
1044 (i960_validate_fix): Declare.
1045 (TC_VALIDATE_FIX): Define.
1046 * config/tc-i960.c (i960_validate_fix): New function.
1047
1048 * write.c (number_to_chars_littleendian): New function. Write out
1049 bytes in little endian order, doing size and range checking.
1050 (number_to_chars_bigendian): New function, similar.
1051 * write.h: Declare them.
1052 * config/tc-*.c (md_number_to_chars): Use them.
1053 * config/tc-vax.c (md_apply_fix): Ditto.
1054 * config/tc-i386.c (md_apply_fix): Ditto.
1055
1056 * config/obj-coff.c: Rearranged code for handling line number
1057 data.
1058 (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
1059 since the usage is different from non-BFD_ASSEMBLER case.
1060 (in_function, clear_function, set_function): New macros, to
1061 combine some of the functionality implemented in differnet ways in
1062 BFD_ASSEMBLER and non-... code. Used in other functions that used
1063 to check function_lineoff &c.
1064 (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
1065 one for not. Non-BFD_ASSEMBLER version now has temporary variable
1066 to contain char* pointer pointed to by char** argument. Always
1067 follow CROSS_COMPILE code; easier to read that way.
1068 (obj_coff_ln): Don't call add_lineno or c_line_new if appline is
1069 set.
1070 (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
1071 ".bf", it's been done elsewhere.
1072 (coff_frob_symbol): If ilne number data is pending, call
1073 add_linesym to flush it.
1074 (coff_frob_file): Don't do that here.
1075 * config/obj-coff.h (coff_frob_file): Declare.
1076 (obj_frob_file): Define, to call it.
1077
1078 * config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
1079 md_estimate_size_before_relax: Define them as macros calling
1080 as_fatal.
1081 * config/tc-sparc.c: Don't define them as functions.
1082
1083 * configure.in: Handle target alpha-*-osf*. (No cpu files yet.)
1084
0a8ae18f
JL
1085Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1086
1087 * Makefile (clean): Depend on clean-here.
1088
9a048e48
KR
1089Wed Dec 1 11:35:21 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
1090
1091 * config/ho-go32.h: Include fopen-bin.h.
1092 * as.h: If FOPEN_WB isn't defined, include fopen-same.h.
1093 * output-file.c (output_file_create): Use FOPEN_WB instead of "w".
1094 * input-file.c (input_file_open): Use FOPEN_RT instead of "r".
1095 * listing.c (file_info): Use FOPEN_RB instead of "rb".
1096 * read.c (s_include): Use FOPEN_RT instead of "r".
1097
1098 * stabs.c: Include obstack.h.
1099
1100 * tc.h (md_create_long_jump): Don't declare if it's already
1101 defined as a macro.
1102 (md_create_short_jump, md_estimate_size_before_relax): Ditto.
1103
1104 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
1105 of strerror. Clear bfd_error.
1106
1107 * config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
1108 defined.
1109
44c0de53
JL
1110Wed Dec 1 10:41:56 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1111
1112 * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
1113 (pa_process_exit, pa_procend): Call it for ELF objects.
1114
777ad64d
ILT
1115Wed Dec 1 12:10:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1116
1117 * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
4032d3f0
ILT
1118 case. See comment. From wilson@cygnus.com: for M_L_DAB, set
1119 coproc before doing goto ld.
777ad64d 1120
335d35c8
JL
1121Tue Nov 30 13:40:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1122
1123 * write.c (TC_FORCE_RELOCATION): Provide a default definition.
1124 (fixup_segment): Allow the target machine to specify that a
1125 relocation must be generated for a particular fixup. Remove
1126 #ifndef TC_HPPA hack.
1127
1128 * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.
1129
1130 * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
1131 be NULL. Only fixup_segment is supposed to do that.
1132 (hppa_force_relocation): New function.
1133
018f2bba
ILT
1134Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1135
c751ad19
ILT
1136 * Makefile.in (stabs.o): Added dependencies.
1137
018f2bba
ILT
1138 * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
1139
81413fa2
JL
1140Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1141
278cd007
JL
1142 * app.c (do_scrub_next_char): Output a TAB before any
1143 .app* directive.
1144
81413fa2
JL
1145 * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
1146 exists before trying to peek at its name.
1147 (pa_space): Do not call pa_align_subseg. See hppa/unsorted/align3.s
1148 for testcase.
1149 (pa_align_subseg): Delete unused/unwanted function.
1150
385ce433
JL
1151Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1152
1153 * read.c (read_a_source_file): Fix test for when to stick a colon
1154 on the end of a label. Make code conditional on either MRI or
1155 LABELS_WITHOUT_COLONS.
1156
1157 * app.c (do_scrub_next_char): If a line begins with whitespace, leave
1158 the single whitespace character alone. Eat all others.
1159
1160 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
1161
31a385d1
JL
1162Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1163
1164 * config/tc-hppa.c (pa_procend): Do not call process_exit.
1165 (exit_processing_complete): Delete unwanted variable and all
1166 references.
1167
c5953036
ILT
1168Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1169
1170 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
1171 Changed to not actually build the external symbol information, as
1172 that is now done by the ECOFF back end.
1173 (ecoff_build_debug): Changed accordingly.
1174 * ecoff.h (obj_ecoff_set_ext): Declare. obj-format.c function
1175 called by ecoff_setup_ext.
1176 * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
1177 set corresponding pointer to NULL. Don't set raw_size and
1178 raw_syments.
1179 (obj_ecoff_set_sym_index): Removed.
1180 (obj_ecoff_set_ext): New function.
1181 * config/obj-ecoff.h (obj_set_sym_index): Don't define.
1182 (obj_ecoff_set_sym_index): Don't declare.
1183 * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
1184 elf_set_index): New functions used for ECOFF_DEBUGGING.
1185 (elf_frob_file): Reworked ECOFF debug generation to use
1186 new functions in bfd/ecofflink.c.
1187
1188Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1189
1190 * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
1191 subspace for ELF. In the SOM world, the linker is responsible
1192 for creating the unwind subspaces.
1193
e0209756
ILT
1194Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1195
1196 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
1197 (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
1198 already set. Fixes .def var; .val external_var; .scl 3; .endef.
1199 (adjust_stab_section): Make static. Declare return type. Remove
1200 unused variables.
1201
1202 * config/tc-i386.h: Declare tc_coff_fix2rtype and
1203 tc_coff_sizemachdep.
1204
0669e047
KR
1205Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
1206
1207 * write.c (write_object_file): Disable obj_check_file_symbols
1208 hook; only back end using it wasn't using it correctly.
1209 (write_object_file): Always call obj_frob_symbol and
1210 tc_frob_symbol; always retain symbol if it's used by a relocation,
1211 regardless of what these routines indicate.
1212 * config/obj-coff.c (coff_frob_symbol): Renamed from
1213 coff_check_file_symbols.
1214 * config/obj-coff.h (obj_check_file_symbols): Deleted.
1215 (coff_frob_symbol): Declare.
1216 (obj_frob_symbol): Call it.
1217
1218 * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
1219 obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
1220 (c_section_header): Ditto. Delete superfluous return at end of
1221 function.
1222
1223 * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
1224 coff-sparc-lynx.
1225 (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
1226 too.
1227 (c_section_header): Rewrite prototype so that it contains no
1228 preprocessing directives. Don't declare it at all if
1229 BFD_ASSEMBLER.
1230
1231 * configure.in (sparc*-*-lynxos): New target, using coff and
1232 BFD_ASSEMBLER.
1233
1234 * stabs.c: New file.
1235 * Makefile.in (REAL_SOURCES, OBJS): List it.
1236 * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
1237 get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
1238 Moved to new file.
1239
1240 * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
1241 files.
1242
29cc5816
ILT
1243Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1244
1245 * configure.in (mips-*-irix5*): New target. Use elf and mips-big.
1246 * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
1247 (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
1248 pseudo-ops.
1249 (obj_read_begin_hook): If ECOFF_DEBUGGING, call
1250 ecoff_read_begin_hook.
1251 (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
1252 ecoff_symbol_new_hook.
1253 (obj_elf_init_stab_section): Cast alloca result.
1254 (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
1255 information and write it out into .mdebug section.
1256 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
1257 (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
1258 (ECOFF_DEBUGGING): Define if TC_MIPS.
1259 (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
1260 fields required by ECOFF.
1261 * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
1262 OBJ_ECOFF in many cases.
1263 (mips_any_noreorder): New variable.
1264 (mips_cprestore_offset): Initialize to -1.
1265 (mips_frame_reg): New variable.
1266 (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
1267 RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
1268 (md_pseudo_table): Handle "gpword" and "cpadd".
1269 (md_begin): Initialize ok to false. If OBJ_ELF, set alignment
1270 of text, data and bss sections to 4. Set alignment of
1271 .reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
1272 section.
1273 (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
1274 check.
1275 (append_insn, macro_build, macro_build_lui): Take place
1276 argument. Changed all callers.
1277 (append_insn): If appending a nop, don't emit one.
1278 (macro_build): Changed assertion for 'i', 'j', 'o' case.
1279 (gp_reference): Removed.
1280 (load_address): New function.
1281 (macro): If mips_noreorder is used, set mips_any_noreorder.
1282 Extensive changes to handle GP and PIC symbols differently.
1283 Build both possible code choices using a variant frag, and
1284 make a final decision at the end of assembly when all
1285 information is known. Added PIC support for all symbol
1286 references.
1287 (mips_ip): Don't permit anything but a number after $ for a
1288 coprocessor register. Don't use .lit4 or .lit8 sections when
1289 generating PIC code. If OBJ_ELF, set alignment of .lit4 or
1290 .lit8 section to 4.
1291 (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
1292 (s_change_sec): Set alignment of ELF .rodata or .sdata section
1293 to 4.
1294 (s_mipsset): If .set noreorder, set mips_any_noreorder.
1295 (s_cpload): Ignore .cpload if not generating PIC code. Warn
1296 if .cpload is not in noreorder section.
1297 (s_cprestore): Ignore .cprestore if not generating PIC code.
1298 (s_gpword, s_cpadd): New functions.
1299 (tc_get_register): Added frame argument; if true, set
1300 mips_frame_reg to return value. Changed all callers.
1301 (md_estimate_size_before_relax): Don't error out, but instead
1302 determine how much a frag should grow.
1303 (tc_gen_reloc): Return multiple relocs if appropriate, as
1304 determined by md_estimate_size_before_relax.
1305 (md_convert_frag): New function.
1306 (mips_elf_final_processing): Set ELF header flags based on
1307 mips_any_noreorder and mips_pic.
1308 * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
1309 (MAX_RELOC_EXPANSION): Define to be 3.
1310 (md_relax_frag): Define to be 0.
1311 (md_convert_frag): Don't define.
1312 (tc_get_register): Changed declaration.
1313
1314 * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
1315 support generating ECOFF debugging information for MIPS ELF
1316 targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
1317 handling of external symbols: it now always generates exactly
1318 those external symbols that are defined in the global symbol list.
1319 * Makefile.in (REAL_SOURCES): Added ecoff.c.
1320 (REAL_HEADERS): Added ecoff.h.
1321 (OBJS): Added ecoff.o.
1322 (ecoff.o): New target.
1323 * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
1324 Remaining code mostly just calls ecoff.c code.
1325 * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
1326 (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
1327 struct localsym.
1328 (obj_read_begin_hook, obj_symbol_new_hook): Define to call
1329 functions in ecoff.c.
1330 (ecoff_stab): Don't declare (now declared in ecoff.h).
1331 (obj_set_sym_index): Define.
1332 (obj_ecoff_set_sym_index): Declare.
1333
1334 * frags.h (frag_grow): Declare.
1335 * frags.c (frag_grow): Made non-static.
1336
1337 * write.c (is_dnrange): Do not define if md_relax_frag is defined.
1338 (relax_segment): If md_relax_frag is defined, use it to handle a
1339 frag of type rs_machine_dependent rather than looking through
1340 md_relax_table.
1341
1342 * read.c (read_a_source_file): If we find a bad pseudo-op,
1343 do a continue to go on to the next line rather than a break.
1344 Removed duplicate bad pseudo-op code which was never executed.
1345
1346 * read.c (s_lcomm): Do not require a comma after the name.
1347
1348 * subsegs.h (segment_info_type): Changed hadone field to bitfield.
1349 Added bss bitfield.
1350 * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
1351 * read.c (s_lcomm): Set bss flag for .sbss section if used.
1352 * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
1353 bss section. Set SEC_RELOC if there are any relocations, even for
1354 a zero size section.
1355
1356 * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
1357 data offset on reloc[0]->address rather than reloc[j]->address, so
1358 that multiple relocs can affect different memory locations.
1359
1360 * write.c (chain_frchains_together, relax_and_size_seg,
1361 adjust_reloc_syms, write_relocs): Make third argument PTR, not
1362 char *, to match definition of bfd_map_over_sections.
1363
1364 * app.c (do_scrub_next_char): Don't interpret a comment character
1365 as starting a CPP line directive unless it is a '#' and is the
1366 very first characters on the line (i.e., do not permit leading
1367 whitespace).
1368
1369 * messages.c (identify): Make file argument non-const, to match
1370 callers.
1371
c5e9ccd0
JL
1372Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1373
1374 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
1375
1376Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
1377
1378 * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
1379 * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
1380 relocs.
1381
4a1b59ef
JL
1382Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1383
3e330968 1384 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
1385 * config/obj-som.c (obj_som_version): Add missing ';'.
1386 (som_frob_file): Delete whitespace at EOL.
1387
f3b6e1f2
KR
1388Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
1389
1390 * Makefile.in (VERSION): Updated following 2.2 release.
1391
c5e9ccd0 1392Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
1393
1394 * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
1395 field selector, rather than an int. All uses of field selectors
1396 fixed.
1397 (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
1398 (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
1399 field.
1400
1401 Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
a721c80b
JL
1402
1403 * config/tc-hppa.c (pa_type_args): For .import statements,
1404 silently ignore attempt to change the symbol type for a function
f2eed884 1405 from ST_ENTRY to ST_CODE on .import.
a721c80b 1406
ca16b5e5
ILT
1407Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1408
1409 * write.h (fixS): Rename fx_callj field to fx_tcbit.
1410 * write.c, config/obj-coff.c, config/obj-coffbfd.c,
1411 config/tc-i960.c: Corresponding changes.
1412
48153d49
JL
1413Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1414
7420b02b
JL
1415 * Makefile.in (distclean): Delete config-stamp and config.h
1416
f41f3d72
JL
1417 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
1418 ANSI-C features.
1419
48153d49
JL
1420 * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
1421 Accept new argument "is_export". All callers changed. When
1422 processing a .export directive for a function, do not allow
1423 the user to set the type to "CODE", instead warn and set the
1424 type to "ENTRY".
1425
9226253a
ILT
1426Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1427
1428 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
1429 Lemon <mellon@pepper.ncd.com>).
1430 (mips_ip): Permit odd numbered floating point registers if -mips3.
48153d49 1431 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 1432
53087850
DE
1433Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
1434
1435 * configure.in: Remove h8300h, we have multilib now.
1436
5f8a3788
DHW
1437Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
1438
1439 * configure.in: Support generic netware as being ELF format.
1440 Recognise unixware if the user supplies it.
1441
163aac84
JL
1442Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1443
513f0471
JL
1444 * First cut at cleaning up PA instruction parsing.
1445 * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
1446 insn structure as an argument, and a pointer to a string. All
1447 callers changed. Always read any field selector here. Call
1448 evaluate absolute to get a return value.
1449 (evaluate_absolute): Addept pointer to insn structure as its
1450 argument. All callers changed.
1451 (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
1452 into an instruction and continuing the main pa_ip loop.
1453 (CHECK_FIELD): New macro for simple range checking of fields.
1454 (pa_ip): Delete unused variables. Use INSERT_FIELD_AND_CONTINUE
1455 and CHECK_FIELD. All immediate fields now pass through
1456 pa_get_absolute_expression which will also handle field selectors.
1457 Delete dead code. Simplify.
1458 (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
1459 applied are in range. Use bfd_put_32 rather than inserting each
1460 byte of the fixed instrution into the buffer ourselves.
1461
3e411021
JL
1462 * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
1463 it was PA specific and is no longer needed (it's now handled
1464 within the PA backend).
1465 * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
1466 * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
1467 a fixup is $global$ change it to NULL as $global$ is really only
1468 needed long enough to determine the base type of relocation to use.
1469
240cbc57
JL
1470 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
1471
163aac84
JL
1472 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
1473 for 'z' operands (target of ble branch).
1474
1cc248d2
JL
1475Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1476
18c4f112
JL
1477 * config/tc-hppa.c: (update_subspace): Fix type and name of last
1478 parameter. All callers fixed.
1479 (md_begin, pa_chk_field_selector, pa_entry): Lint.
1480
1cc248d2
JL
1481 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
1482 to default state after it's been used.
1483
88eb7ea6
JL
1484Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1485
1486 * config/obj-som.c (obj_som_init_stab_section): Change
1487 space/subspace sort keys for the stab sections so as to avoid
1488 bugs in the hp linker and pxdb.
1489
0f894895
JL
1490Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1491
1492 * write.c (chain_frchains_together): Update pointer to last
1493 frag for a segment in the seginfo structure.
1494
de074576
JW
1495Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
1496
1497 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
1498
1499Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
1500
1501 * write.c (fixup_segment): Handle conversion of subtraction to
1502 pc-relative addressing even if pc-relative flag is already set.
1503
1504 * config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
1505 declare either.
1506
1507 * doc/Makefile.in (distclean): Delete intermediate files from dvi
1508 build, but not the dvi or info files.
1509 * Makefile.in (clean-here): New target; cleans up current
1510 directory only.
1511 (distclean): Use it instead of clean.
1512
1513 * read.c (s_xstab): Don't use alloca.
1514
1515 * messages.c (identify): New routine; print message identifying
1516 following messages as coming from assembler.
1517 (as_show_where, as_bad_internal, as_bad_where): Call it.
1518 (as_fatal): Don't need to identify program any more.
1519
efe8ef02
ILT
1520Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1521
1522 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
1523 well as MIPS ECOFF.
1524 (get_stab_string_offset): Remove unused variable aligned.
1525
aa14e863
JL
1526Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1527
d6e524f3
JL
1528 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
1529 predefined register table.
1530 (pa_parse_number): Handle %rp in common register shortcut code.
1531 Consistently set return value to -1 for an error. Clean up error
1532 messages and only print them when "print_errors" is true. Handle
1533 empty string case like the HP assembler -- assume a value of
1534 zero.
1535
20cee6d8
JL
1536 * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
1537 standard hpux include files to pick up various function decls.
1538
aa14e863
JL
1539 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
1540 stdio.h. Delete bogus declaration of free. Get path to
1541 alloca-conf.h right.
1542
25270a1c
KR
1543Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
1544
1545 * expr.c (operand): Fix checks for characters following "0b" or
1546 "0f".
1547
f197d7eb
JL
1548Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1549
ff852e11
JL
1550 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
1551 so GAS can attach unwind descriptor information to a BFD symbol.
1552 * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
1553 descriptor information to the BFD symbol.
1554 (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
1555 they are simply markers. Make R_HPPA_UNWIND_* handling OBJ_ELF
1556 dependent.
1557 (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
1558 (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
1559 (pa_exit): Likewise, but built a R_HPPA_EXIT relocation. Do not
1560 build "end-of-function" symbols for SOM, they are not needed.
1561
a50e9b55
JL
1562 * config/tc-hppa.c (process_exit): Create temporary symbols with
1563 correct prefixes so they can be eliminated later.
1564
49fc68a1
JL
1565 * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
1566 (pa_callinfo): Insert framesize into the unwind information as
1567 soon as it's available.
1568 (pa_build_unwind_subspace): Do not insert framesize into the unwind
1569 information here.
1570
c43d56f7
JL
1571 * Add support for marker type relocations. These mark areas
1572 of interest to the linker. ENTRY/EXIT relocations for SOM are
1573 an example of marker relocations.
1574 * write.c (write_relocs): Instead of assuming size of a relocation
1575 is 4 bytes, pick up the size from relocation itself.
1576 (fixup_segment): Do not complain that a value is too small for
1577 marker relocations.
1578
009dc5e1
JL
1579 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
1580 * expr.c (operand): Set sy_used for any symbol used as an operand.
1581 (expr): Likewise for any symbol used in an expression.
1582 * config/tc-hppa.h (tc_frob_symbol): Define. Punt imported
1583 symbols which are never used and absolute symbols which local scope.
1584
f197d7eb
JL
1585 * config/obj-som.h (obj_frob_file): Define.
1586 * config/obj-som.c (obj_som_init_stab_section): Set alignment
1587 of stab sections. Make space for the special stab entry.
1588 (adjust_stab_sections): Adjust the special entry in the
1589 stabs section.
1590 (som_frob_file): New function. Simply calls adjust_stab_sections
1591 for each section.
1592
bca9cf0b
ILT
1593Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1594
1595 * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
1596 (mips_pic, mips_cprestore_offset): New static variables.
1597 (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
1598 Ignore .bgnb and .endb.
1599 (gp_reference): _gp_disp is never addressed off GP.
1600 (macro_build): Ignore macros while searching for insn. For cases
1601 i, j, and o, accept the reloc type as an argument rather than
1602 assuming BFD_RELOC_LO16. Don't try to convert BFD_RELOC_LO16 to
1603 BFD_RELOC_MIPS_GPREL. Added new case a.
1604 (set_at, load_register, macro): Changed calls to macro_build to
1605 pass new argument for i, j and o cases.
1606 (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A. These require
1607 special handling when generating SVR4 PIC code.
1608 (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
1609 rather than hard coded constants.
1610 (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
1611 BFD_RELOC_MIPS_CALL16.
1612 (s_option): Set mips_pic based on .option picN.
1613 (s_abicalls): New function; set mips_pic to 2.
1614 (s_cpload): New function; handle .cpload.
1615 (s_cprestore): New function; handle .cprestore.
1616
1617 * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
1618 .endb and .verstamp, setting them to s_ignore.
1619
d191a03c
JL
1620Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1621
47f45d66
JL
1622 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
1623 field. Define SUBSPACE_DEFINED accessor macro.
1624 (pa_subspace): Allow user to override subspace attributes for
1625 built-in subspaces. Set ssd_defined at the end of fcn -- that
1626 way the attributes can only be changed once. Pass newly allocated
1627 name to is_defined_subspace, not a pointer to the input line.
1628 Fix typo in space/subspace rework.
1629 (is_defined_subspace): Delete unused 2nd arg. All callers changed.
1630
1631 * config/tc-hppa.c (pa_import): If currently in the text segment
1632 and a symbol is imported without type information, set BSF_FUNCTION
1633 for the symbol.
20b39b6f
JL
1634 * write.c (relax_and_size_seg): Correct test to determine if
1635 the section's size was rounded up.
1636
e75acd68
JL
1637 * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
1638 can properly set all the SOM symbol types.
1639 * config/tc-hppa.c (pa_symbol_type): New enum to represent the
1640 symbol types which can be set from an IMPORT/EXPORT statement.
1641 (pa_export_args): Set the pa_symbol_type type based on arguments.
1642 If defined, call obj_set_symbol_type to pass this information on
1643 to the BFD backend.
1644
d191a03c
JL
1645 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
1646 stab section we make.
1647 (s_stab_generic): Likewise.
1648
12696e9c
JL
1649Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1650
65a7f8a6
JL
1651 * Allow backends to override the value of the fake label.
1652 * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
1653 assume backends will define LOCAL_LABEL if anything other than
1654 'L' is used to denote a local label.
1655 (FAKE_LABEL_NAME): New macro. Defines the default name used for
1656 the "fake" label.
1657 * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
1658 and instead simply use the string defined by FAKE_LABEL_NAME.
1659 (operand): Likewise.
1660 * read.c (s_stab_generic): Likewise.
1661 * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
1662 known to be a local label.
1663 * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
1664 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
1665 * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
1666 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
1667 * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
1668 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
1669
6bc14195
JL
1670 Rework space/subspace handling in PA code to fully support
1671 SOM spaces/subspaces.
1672 * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
1673 to control the use of space/subspace name aliases.
1674 (update_subspace): Accept space chain entry for containing space
1675 as a new parameter. All callers changed.
1676 (pa_get_label): Use current_space rather than pa_segment_to_space.
1677 (pa_define_label): Likewise.
1678 (pa_undefine_label): Likewise.
1679 (md_begin): Change into the (possibly modified) text_section.
1680 (pa_parse_space_stmt): Create a new segment/space if create_flag
1681 is true, and the space name is not one of the two predefined spaces.
1682 (pa_subspace): Use current_space rather than a lookup via
1683 pa_segment_to_space. Reset BFD section flags as required by
1684 the .subspace directive. Likewise for the section alignment.
1685 Pass the current space to update_subspace and create_new_subspace.
1686 (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
1687 is true. When not using aliases, create a BFD section for each
1688 subspace encountered. When not using aliases replace the default
1689 text, data, and bss segments with new ones.
1690 (create_new_subspace): When not using aliases each subspace has a
1691 section/segment and subsegments are not needed, so set the subsegment
1692 to zero.
1693
548ea75b
JL
1694 * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
1695 obj_set_section_attributes to pass space attributes to the
1696 BFD backend.
1697 (create_new_space): Likewise.
1698 (create_new_subspace): Likewise for subspace attributes using
1699 obj_set_subsection_attributes.
1700 (update_subspace): Likewise for subspace attributes using
1701 obj_set_subsection_attributes.
1702
0f3b419c
JL
1703 * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
1704 for $TEXT$ and $PRIVATE$ from the default space structure.
1705
9a182533
JL
1706 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
1707 as appropriate for the given type.
1708
62f0841b
JL
1709 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
1710 SOM relocations.
1711
d56f45f5
JL
1712 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
1713 redefinition.
1714
3c87583d
JL
1715 * config/obj-som.[ch]: New files for SOM support. Note SOM
1716 support is not yet complete in GAS or BFD.
1717
12696e9c
JL
1718 * config/ho-hppabsd.h: Delete IO* macros, they are defined in
1719 stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
1720 and string.h.
1721
37ed805e
JL
1722Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1723
12696e9c
JL
1724 * Allow backends to override the section names used for embedded
1725 stabs support. Needed for SOM.
1726 * read.c (STAB_SECTION_NAME): Default the name of the stab section
1727 to ".stab".
1728 (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
1729 (get_stab_string_offset): Is now passed the full name for the
1730 stab string section rather than a name prefix. All references
1731 changed.
1732 (s_stab_generic): New argument for the stab string section name.
1733 all references changed.
1734 (s_xstab): Append "str" to the stab section name to get the
1735 stab string section name.
1736 * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
1737 to stab section name to get the stab string section name. Pass
1738 the full name of the stab string section to get_stab_string_offset.
1739 * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
1740
53c0b9e7
JL
1741 * config/tc-hppa.c (md_begin): Disable "-R" option to fold
1742 textand data segments. Warn user "-R" is unsupported on the
1743 PA.
37ed805e 1744
48ac0c90
JL
1745Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
1746
d33ace2e
JL
1747 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
1748 .align and .ALIGN directives.
1749
48ac0c90
JL
1750 * config/tc-hppa.c (pa_space): Do not report an error for a .space
1751 directive which does not define a "well-known" space and does
1752 not include a space number as an argument.
1753
1754 * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
1755 "defined", "loadable", "code_only" and "space_index" fields.
1756 (pa_def_spaces): Correct initialization of the "spnum", "defined",
1757 and "private" fields.
1758
1759 * write.h (struct fix): Add new tc_fix_data field for the various
1760 backends to attach machine dependent fixup information to.
1761 * write.c (fix_new_internal): Initialize new tc_fix_data field.
1762 * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
1763 fx_next fields.
1764 (hppa_find_hppa_fix): Delete unnecessary function. Fix all
1765 callers to get HPPA fixup information from the tc_fix_data field
1766 in the GAS fixup.
1767 (hppa_fix_root): Delete unnecessary variable.
1768 (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
1769
1770 * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
1771 function. Fix all callers.
1772 (subspace_dictionary_chain): Delete unused ssd_start_sym field.
1773
1774 * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
1775 if a particular fixup is adjustable.
1776 * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
1777 perform the real work.
1778
1779 * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
1780 of OBJ_XXX conditionals.
1781 (MAX_RELOC_EXPANSION): Likewise.
1782
1783 * config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
1784 callers. Now returns log2 (N) for positive N which are an exact
1785 power of two or -1 for an error.
1786
1787 * config/tc-hppa.c (pa_callinfo): Range check values provided for
1788 ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
1789 inserting them into the unwind table.
1790
1791 * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
1792 (hppa_gen_reloc_type): New object format dependent macro.
1793 (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
1794 conditional. The code can (and will) be shared between SOM & ELF
1795 formats in the near future.
1796 (cons_fix_new_hppa, md_apply_fix_1): Likewise.
1797 (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
1798 (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
1799 specific call.
1800
1801 * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
1802 to bfd_und_section.
1803
1804 * config/obj-elf.h (obj_elf_version): Add extern prototype.
1805
1806 * configure.in (hppa-*-bsd*): New configuration.
1807 BFD is always used for GAS generating SOM objects.
1808
1809 * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
1810 adjustment is rejected by the target machine.
1811
1812 * config/tc-hppa.c (pa_big_cons): Delete function and its
1813 declaration. All callers changed to use pa_cons.
1814
1815 * write.c (fixup_segment): Fix indention and open/close brace
1816 problem.
1817
1818 From Pete Hoogenboom:
1819 * config/tc-hppa.c (md_atof): Return a NULL on success rather than
1820 an empty string.
1821
3515a504
JL
1822 * config/tc-hppa.c (pa_parse_space_stmt): Advance
1823 input_line_poitner when an invalid argument is encountered.
1824
6121fb06
ILT
1825Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1826
1827 * config/tc-a29k.c (md_begin): When opcodes are mashed together in
1828 the table, require that the one without bit 0x1000000 set come
1829 first. Require further that it be case 'b' or 'P'. The a29k
1830 opcode table already meets these constraints.
1831 (machine_ip): When handling case 'i' or 'A', make sure that the
1832 appropriate opcode really exists by looking at the next entry in
1833 the opcode table.
1834
56c96faa
ILT
1835Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1836
729f4bba
ILT
1837 * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
1838 fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
1839
007ff46b
ILT
1840 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
1841 after a .ent directive.
1842
d1ee509b
ILT
1843 * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
1844 between 32 and 63 for double shift instruction). Do & 0x1f rather
1845 than % 32.
1846 (printInsn): Handle '>'.
56c96faa 1847
fa20b8bf
ILT
1848Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1849
5694ad93
ILT
1850 * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
1851 number in the right place. Untested. Probably does not work for
1852 cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
1853
f3751617
ILT
1854 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
1855 an illegal offset of 0 or -1.
1856
fa20b8bf
ILT
1857 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
1858 section to a longword boundary.
1859
4da7942d
KR
1860Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
1861
1862 * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
1863
1864 From Jeff Law:
1865 * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
1866 HPPA_R_ADDEND.
1867
24934035
SC
1868Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
1869
8e5afd4f
SC
1870 * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
1871 address. (md_assemble): Make error handling a bit more graceful.
1872 (md_apply_fix): Don't warn on non aligned displacement.
1873
24934035
SC
1874 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
1875 aspects of lda.
1876
84678d16
KR
1877Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
1878
1879 * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
1880 as.info* even if they're in $(srcdir) (e.g., for FSF
1881 distributions).
1882
1883 * write.c (write_relocs): For relocs that are pc_relative and
1884 pcrel_offset and not partial_inplace, adjust reloc->addend to
1885 compensate for a bfd_perform_relocation bug.
1886
1887 * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
1888 * config/tc-sparc.c: Ditto.
1889 (tc_gen_reloc): Include fx_offset for pcrel fixups.
1890
52aa70b5
JW
1891Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
1892
1893 * tc-mips.c (md_pseudo_table): Add dword pseudo op.
1894
ab0751c8
DZ
1895Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
1896
1897 * messages.c: replaced all variables called Format with 'format',
1898 for consistency throughout
1899
1900 * configure.in: handle mips*- instead of mips, mips*el for little
1901 endian configurations
1902
8efed14f
ILT
1903Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1904
1905 * input-scrub.c (physical_input_file, logical_input_file,
1906 physical_input_line, logical_input_line): Made static.
1907 (as_where): Return current file name and line number, don't print
1908 them out.
1909 * messages.c (as_show_where): New static function. Other
1910 functions use it instead of as_where.
1911 (as_bad_internal): New static function.
1912 (as_bad): Use as_bad_internal.
1913 (as_bad_where): New function, like as_bad but taking a file name
1914 and line number.
1915 * as.h (as_bad_where): Declare.
1916 (as_where): Change prototype for new arguments.
1917 * write.h (fixS): Added fields fx_file and fx_line.
1918 * write.c (fix_new_internal): Save file and line number in fix.
1919 (fixup_segment): Use as_bad_where, not as_bad.
1920 * input-file.c (f_in, file_name): Made static.
1921 * cond.c (struct file_line): Just use file and line fields.
1922 (s_else): Use as_where and as_bad_where, not get_file_line and
1923 set_file_line.
1924 (get_file_line, set_file_line): Removed.
1925 * listing.c (listing_newline): Use as_where.
1926 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
1927 * config/obj-ecoff.c (add_file): Use as_where.
1928 * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
1929 * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
1930 * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
1931
efa0c22e
KR
1932Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
1933
1934 * config/tc-m68k.h: Don't define REGISTER_PREFIX or
1935 OPTIONAL_REGISTER_PREFIX if either is already defined.
1936
1937 * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
1938
1939 * configure.in: Set bfd_gas for all sparc targets. Added facility
1940 for keeping or rejecting configurations still under development;
1941 default is to assume production environment, and reject configs
1942 still being worked on. Mark Elf configurations (except sparc and
1943 i386) as developmental. Deleted cases matching some generic names
1944 in favor of more specific names. (E.g., when we get Alpha
1945 support, we'll still only support VMS for Vax.)
1946
1947 * config/tc-sparc.h (md_end): New macro.
1948 * config/tc-sparc.c (md_end): Function deleted.
1949 (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
1950 version compiling. All sparc targets will use bfd now.
1951 * tc.h (md_end): Don't declare if it's defined as a macro.
1952
1953 Changes from Jeff Law and Peter Hoogenboom:
1954
1955 * read.c (next_char_of_string): Limit octal character constants to
1956 three digits.
1957
1958 * config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
1959 against placing additional object-file dependent code here. Warn
1960 against contaminating all of GAS with the internals of tc-hppa.c
1961 through inclusion of tc-hppa.h. Delete all forward declarations
1962 for functions only used within tc-hppa.c, likewise for structures,
1963 variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
1964 conditional code in a few small places.
1965
1966 * config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
1967 structures, global variables, forward declarations together.
1968 Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
1969 conditional code -- try to group conditional code together
1970 into a few places. Make all functions and variables which
1971 are only used within tc-hppa.c static. PARAMize all functions.
1972 Add comments to functions. Delete unused functions, variables,
1973 #defines, etc. Delete unused members within structures. Delete
1974 ldil;ble hacks -- it is believed they were installed to work
1975 around old gas bugs. Avoid using mixed case for local
1976 functions, variables, and structures. Fix formatting problems
1977 not found by GNU-indent. Add FIXME notices for things which
1978 should be worked on the near future. Delete lots of old
1979 useless (1.36 PA-SOM) code.
1980
1981 * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
1982 field of the fixS structure. Needed to build unwind
1983 descriptors correctly.
1984
1985 * write.c: (fixup_segment): Allow expressions such as
1986 sym1-sym2+const as long as sym2 is $global$.
1987
1988 * write.c (adjust_reloc_syms): Provide a hook so that a target
1989 cpu configuration can reject certain relocation reductions.
1990 * tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
1991 which do not involve function symbols.
1992
1993 * config/tc-hppa.h: Reindent with GNU-indent. Delete references
1994 to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
1995 STAB_FIXUP macro.
1996 * config/tc-hppa.c: Likewise.
1997
1998 * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
1999 of elf32_symbol_type.
2000 (pa_export_args): Likewise.
2001 (elf_hppa_final_processing): Likewise.
2002 (pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
2003 anymore?)
2004 (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
2005 ore.
2006
2007 * config/tc-hppa.c: (md_section_align): Align all sections to
2008 a multiple of the section alignment rather than always a
2009 multiple of 8.
2010
2011 * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
2012 bits are zero (eg they specify no relocations), then do not even
2013 bother adding their entries to thesymextn section.
2014
7766838e
ILT
2015Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2016
2017 * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
2018 option, which is used by the SunOS make default .s.o rule.
2019
dff60b7d
ILT
2020Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2021
2022 * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
2023 m68k_aout_machtype.
2024 * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
2025 (m68k_aout_machtype): New variable, if OBJ_AOUT.
2026 (md_assemble): Initialize m68k_aout_machtype based on
2027 current_architecture, if OBJ_AOUT.
2028 (md_parse_option): Remove obsolete reference to omagic.
2029
c17cd709
ILT
2030Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2031
dd3f1f76
ILT
2032 * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
2033 (s_option): Ignore .option O* and .option pic*.
2034 (s_ent): Skip whitespace between symbol and optional digit.
dff60b7d 2035 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 2036
54508138
ILT
2037 * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
2038 characters in state 6.
2039 * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
2040 hexidecimal digits.
2041
c17cd709
ILT
2042 * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
2043 for ELF by hacking around bizarre bfd_perform_relocation behaviour
2044 that I don't dare change.
2045
ad660eb1
ILT
2046Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
2047
2048 * config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
2049 call strchr for each character to see if it is a special char,
2050 instead add a second loop over special_chars. Set alignment
2051 of text, data and bss sections to 4.
2052 (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
2053 used again.
2054 (reloc): Don't return 8 and 16 bit non-PC relative relocations on
2055 ELF, since the ELF object format does not have these type of
2056 relocations. Change the abort into as as_bad and return
2057 BFD_RELOC_NONE to silence compiler warnings.
2058 (md_assemble): Keep track of the instruction size. Allow white
2059 space between the $ and the constant for compatibility with older
2060 gases and other assemblers.
2061 (i386_operand): Skip spaces between $ and expression.
2062 (tc_gen_reloc): Don't allow anything but 32 bit relocations on
2063 ELF. Convert abort into an as_bad and assert into as_fatal.
2064
132239bf
KR
2065Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2066
2067 * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
2068 sub_symbolP is in the current segment, convert to a PC-relative
2069 fixup and discard the symbol.
2070
b7cbb59f
ILT
2071Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2072
463b1851
ILT
2073 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
2074 for st_StaticProc just like st_Proc.
2075
b7cbb59f
ILT
2076 * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
2077 so that OBJ_BOUT doesn't forget to adjust all the fragments in the
2078 .bss section.
2079
f2a663d3
ILT
2080Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2081
2082 * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
2083 (mips_regmask_frag): New static variable, if OBJ_ELF.
2084 (md_begin): If OBJ_ELF, create .reginfo section and set
2085 mips_regmask_frag to a frag.
2086 (mips_elf_final_processing): New function, if OBJ_ELF. Set
2087 mips_regmask_frag to register mask information.
2088 * config/tc-mips.h (elf_tc_final_processing): New macro, defined
2089 if OBJ_ELF.
2090
99024047
KR
2091Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2092
2145a183
KR
2093 * messages.c (as_fatal): Use myname when printing messages.
2094
99024047
KR
2095 * config/tc-i960.c (md_begin): Use null pointer, not empty string,
2096 as initial "return" value in case hashing isn't needed.
2097
2098 * config/tc-a29k.c (md_atof): Return null, not empty string, on
2099 success.
2100 * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
2101 config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
2102 config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
2103 config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
2104
2105Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
2106
2107 fix for pr 3571
2108 * config/tc-h8300.c (get_specific): Special action if 8 bit
2109 address seen. (check_operand): Don't complain if truncating top
2110 bits of an 8 bit address. (build_bytes): Allow an immediate and
2111 an absolute in the same insn.
2112
f37449aa
ILT
2113Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2114
2115 * write.c (write_contents): Don't crash if seginfo is NULL.
2116
2117 * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
2118 by modifying .reginfo section, not by directly modifying BFD
2119 backend data.
2120
fec552ce
DZ
2121Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
2122
2123 * config/ho-sunos.h: remove extern time declaration
2124
8d3be803
KR
2125Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2126
2127 * messages.c (as_fatal): Do mention that it's the assembler that
2128 got the fatal error.
2129
88225433
ILT
2130Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2131
1aa6938e
ILT
2132 * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
2133 hold register masks.
2134 (md_begin): Initialize them to zero.
2135 (append_insn): Update mips_gprmask and mips_cprmask. Also add
2136 register variables pinfo and prev_pinfo.
2137 * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
2138 * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
2139 and cprmask from mips_gprmask and mips_cprmask.
2140
88225433
ILT
2141 * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
2142 * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
2143 (various): Change all references to GP references to apply if
2144 GPOPT, not if OBJ_ECOFF.
2145 (s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
2146 instead of .rdata. If OBJ_ELF, set section flags for .rodata and
2147 .sdata sections.
2148 (s_frame, s_loc, s_mask): Comment out entire functions, rather
2149 than just body. They're not used anyhow.
2150 * configure.in: Set cpu_type to mips for mips*. Accept
2151 mips-*-elfl* and mips-*-elf*.
2152
17a0da33
ILT
2153Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
2154
2155 * config/obj-elf.c (obj_elf_common): Allow the alignment field to
2156 not be specified.
2157
80aab579
ILT
2158Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2159
abdad6bc
ILT
2160 * config/tc-mips.c (cons_fix_new_mips): New function. Turn
2161 BFD_RELOC_64 into BFD_RELOC_32.
2162 * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
2163 (cons_fix_new_mips): Declare.
2164
80aab579
ILT
2165 Changes to let cons handle bignums like general expressions.
2166 * expr.h (expressionS): New field X_unsigned.
2167 * expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
2168 unary minus case.
2169 (expr) Fix typo resultP to right if missing operand. Set
2170 X_unsigned to 1 when building new expression.
2171 * read.c (potable): Make "octa" and "quad" call cons, not
2172 big_cons.
2173 (cons): Handle bignums. If given an O_constant (small integer) to
2174 fill a big space, turn it into a bignum.
2175 (parse_bitfield_cons): Set X_unsigned field.
2176 (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
2177 Removed.
2178 * read.h (big_cons): Remove prototype.
2179 * symbols.c (resolve_symbol_value): Don't give a warning if a
2180 symbol in expr_section can not be resolved.
2181 (S_SET_VALUE): Clear X_unsigned.
2182 * write.c (write_object_file): If resolve_symbol_value failed on a
2183 symbol we are writing out, give a warning.
2184 * config/tc-h8500.c (parse_reglist): Set X_unsigned.
2185 * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
2186 call pa_cons, not pa_big_cons.
2187 (pa_big_cons): Remove.
2188 * config/tc-hppa.h (pa_big_cons): Remove declaration.
2189 * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
2190 not big_cons.
2191
2192Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
2193
2194 * doc/as.texinfo (Copying): new node, to handle the recent changes
2195 in the texinfo/gpl.texinfo file
2196
4f5666c5
ILT
2197Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2198
2199 * read.c (big_cons): Handle "0" correctly.
2200
2201 * config/tc-mips.c (md_begin): Set target_big_endian correctly.
2202
8208ab5a
KR
2203Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2204
2205 * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
2206 have pc-relative fixup.
2207 (md_parse_option): Move "-k" case down near "-pic" case.
2208
31909d40
KR
2209 * configure.in: Alphabetize list of cpu type alternatives. Enable
2210 OS values of "linux*elf*" and "linux*coff*" to select those
2211 formats, with linux emulation. Don't bother checking for upper-
2212 or mixed-case versions of "ose".
2213
8208ab5a
KR
2214Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2215
2216 * config/z8k.c (md_pseudo_table): add "unseg".
2217
6cc87fbb
RP
2218Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
2219
2220 * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
2221 found while extending the dissassembler.
2222
8f3956b3
SS
2223Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
2224
2225 * configure.in: Split i386 LynxOS out from other coff targets,
2226 add a specific Lynx emulation.
2227 Add m68k LynxOS target.
2228 * config/tc-i386.c: Define specific Lynx target format.
2229 * config/tc-m68k.c: Define specific Lynx target format.
2230 * config/te-lynx.h: New file.
2231
2232 * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
2233 "coff-{i386,m68k}" if TARGET_FORMAT already defined.
2234 (INIT_STAB_SECTION): Define.
2235 * config/obj-coffbfd.c: Include <time.h>.
2236 (write_object_file): Look for .stab sections and call
2237 adjust_stab_section.
2238 (adjust_stab_section): New function, fills in the first symbol
2239 of a stab section with number of symbols and string table size.
2240 (obj_coff_init_stab_section): New function, creates the initial
2241 symbol for a stab section.
2242
43029a8f
KR
2243Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2244
2245 * config/atof-vax.c (md_atof): Return null on success instead of
2246 empty string.
2247 * config/atof-tahoe.c (md_atof): Ditto.
2248 * read.c (float_cons): Expect a null pointer for success, not an
2249 empty string.
2250
2251 * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
2252 on success, instead of empty string. All callers changed.
2253
2254 * config/tc-vax.c: Use PARAMS in declarations.
2255 (vip_op): Use NULL instead of empty string for success in error
2256 and warning fields.
2257
b7318ac4
KR
2258Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2259
b9790da8
KR
2260 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
2261 in different defined segments.
2262
b7318ac4 2263 * write.c (relax_segment): Localize "aim" variable. If
132239bf 2264 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
2265 (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
2266 segment, convert to a PC-relative fixup and discard the symbol.
2267
2268 * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
2269 (md_parse_option) [TE_SUN3]: Set it for "-k".
2270 (m68k_ip): Generate proper fixup for mode 7.3.
2271 * config/tc-m68k.h (DIFF_EXPR_OK): Define.
2272
c996b199
KR
2273Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2274
2275 * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
2276 earlier in the file.
2277 (insop, add_exp): Now defined as functions, for readability.
2278 (insop): Now takes two arguments; callers changed.
2279
6d6b97b7
RP
2280Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
2281
58f3e8a9
RP
2282 * config/tc-m88k.c (get_o6): new function.
2283 (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
2284 get_vec9, getval, get_pcr, calcop, match_name): make static and
2285 prototype.
2286 (s_file): remove extraneous forward decl.
2287 (md_begin): add const to retval decl.
2288 (calcop): cope with instructions without arguments. Handle 'o'
2289 type argument, the o6 field of the prot insn.
2290 (md_estimate_size_before_relax): return a dummy value.
2291
6d6b97b7
RP
2292 * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
2293 in bits 10 through 7. flt.[dxs]s requires an r register in the
2294 second argument. New instruction lda.x. New instruction muls
2295 (alias for mul).
2296
2297Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2298
2299 * Makefile.in (distclean): Recurse like clean.
2300 * doc/Makefile.in (distclean): New target.
2301
2302 * config/tc-mips.c (md_begin): Set BFD architecture and machine
2303 based on MIPS ISA level.
2304
2305Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2306
2307 * as.c (main): "exhausted", not "exhuasted".
2308
2309 * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
2310 * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
2311 (write_object_file): Never strip symbols with sy_used_in_reloc
2312 set.
2313
2314 * config/obj-elf.c (obj_elf_section): Rewrote to handle both
2315 Solaris and SVR4 style .section pseudo-ops.
2316 (obj_elf_ident): Set SEC_READONLY for .comment section.
2317 * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
2318 generating a reloc, don't apply a fix.
2319
6110df28
KR
2320Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2321
2322 * config/obj-coffbfd.c (relax_align): Now static.
2323
9bd0d649
ILT
2324Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2325
2326 * read.c (get_stab_string_offset): Make non-static. Make
2327 arguments const. Don't align strings to 4 byte boundaries.
2328 * read.h: Declare get_stab_string_offset.
2329 * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
2330 SEC_LOAD for progbits section.
2331 (obj_elf_init_stab_section): New function.
2332 (adjust_stab_sections): Add casts to avoid warnings.
2333 * config/obj-elf.h (INIT_STAB_SECTION): Call
2334 obj_elf_init_stab_section.
2335 (OBJ_PROCESS_STAB): Removed definition.
2336
80903ca6
ILT
2337Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2338
2339 * config/obj-elf.h (S_GET_SIZE): Define.
2340 (obj_frob_forward_symbol): Define.
2341 * config/tc-i386.c (line_comment_chars): Initialize in all cases.
2342
13998021
ILT
2343Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2344
9bd0d649 2345 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
2346 RELOC_EXPANSION_POSSIBLE.
2347 * config/obj-elf.c (obj_elf_section): Only set flags when first
2348 creating the section.
2349
2350Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2351
2352 * config/tc-mips.c (append_insn): Don't swap a trap instruction
2353 with a branch.
2354
4f0bccc7
ILT
2355Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2356
90397ff8
ILT
2357 * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
2358 set previous_section and previous_subsection and then call s_data
2359 and s_text, respectively.
2360 (obj_pseudo_table): Add data and text.
2361 (obj_elf_section): Add SEC_LOAD to default initialization of
2362 flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
2363 SEC_ALLOC for "alloc" string. Don't bother trying to find the
2364 section; just use subseg_new.
2365
4f0bccc7
ILT
2366 * read.c (change_to_section): Removed. This is now done by
2367 subseg_new.
2368 (get_stab_string_offset): Rearranged somewhat. Create the section
2369 using subseg_new. Store the string index in seg_info, rather than
2370 in a static variable. Force the first string to be empty. Use
2371 frag_more rather than FRAG_APPEND_1_CHAR.
2372 (s_stab_generic): Rewrote.
2373 * subsegs.h (segment_info_type): Added stabu union.
2374 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
2375 * config/obj-aout.c: Don't include aout/stab_gnu.h.
2376 (obj_aout_stab, obj_aout_desc): Removed.
2377 (obj_pseudo_table): Removed desc and stabX entries.
2378 * config/obj-bout.c: Same changes as config/obj-aout.c.
2379 * config/obj-bout.h (S_SET_TYPE): Define.
2380 (tc_bout_fix_to_chars): Declare.
2381 * config/obj-coff.c (obj_coff_stab): Removed.
2382 (obj_pseudo_table): Removed desc and stabX entries.
2383 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
2384 * config/obj-coffbfd.c (current_stab_symbol): Removed.
2385 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
2386 n_other, n_desc and n_value fields.
2387 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
2388 (MAKE_STAB_SYMBOL): Removed.
2389 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
2390 Changed arguments and removed parsing code.
2391 (obj_pseudo_table): Removed stabX entries.
2392 * config/obj-ecoff.h (ecoff_stab): Declare.
2393 (OBJ_PROCESS_STAB): Define.
2394 * config/obj-elf.c: Don't include aout/stab_gnu.h.
2395 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
2396 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
2397 Removed.
2398 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
2399 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
2400 set SEC_LOAD for .note section.
2401 (adjust_stab_sections): Get frag pointer from seg_info, rather
2402 than looking through frags.
2403 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
2404 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
2405 Define.
2406 * config/obj-vms.c (obj_aout_stab): Removed.
2407 (obj_pseudo_table): Removed stabX entries.
2408 * config/obj-vms.h (S_SET_TYPE): Define.
2409
2410 * as.h: Declare listing.
2411 * read.c: Don't declare listing.
2412 (emit_expr): Cast fix_new_exp argument.
2413 (parse_bitfield_cons): Correct printf format.
2414 * symbols.c (symbol_new): Add cast to avoid warning.
2415 * write.h: Declare text_last_frag and data_last_frag.
2416 * config/obj-bout.c (obj_bout_line): Added dummy argument.
2417 * config/obj-coffbfd.c: Add some casts to avoid warnings.
2418 * config/tc-a29k.c: Likewise.
2419 * config/tc-i960.c: Likewise. Also fully bracket structure
2420 initializations, fix printf formats, and remove unused variables.
2421
604633ae
ILT
2422Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2423
2424 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
2425 * struc-symbol.h: Declare verify_symbol_chain and
2426 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
2427 * symbols.c (verify_symbol_chain): Removed useless expression.
2428 * write.c (headers, the_object_file): Only use if not
2429 BFD_ASSEMBLER and not BFD.
2430 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
2431 not BFD.
2432 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
2433 not OBJ_AOUT).
2434 * write.h: Declare relax_segment.
2435 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
2436 static.
2437 (stack_top): Commented out, since it's not used.
2438 Fixed up pseudo-op functions to take an ignored int argument.
2439 (size_section): Added default BAD_CASE to switch.
2440 Changed bzero calls to memset.
2441 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
2442 (s), not on s itself.
2443 * config/tc-a29k.c (s_use): Take ignored int argument. Only
2444 define if OBJ_COFF is not defined.
2445 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
2446 argument signed again.
2447 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
2448 argument.
2449 (m68k_ip): Fully bracket initialization of archs.
2450 Correct several formats for __LINE__ to be %d rather than %s.
2451 (init_table): Fully bracket initialization.
2452 Cast values larger than 0x7f assigned to fr_opcode to char.
2453
2454 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
2455 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
2456 section name, and subseg_set always takes a segT. Changed all
2457 callers as appropriate.
2458 * config/obj-coffbfd.c (change_to_section): Renamed to
2459 obj_coff_add_segment. Corrected. Made callers use subseg_new.
2460 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
2461 Define.
2462
54e3e909
DE
2463Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
2464
2465 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
2466
58d4951d
ILT
2467Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2468
2469 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
2470
2471 Gcc lint.
54e3e909 2472 * Added a number of casts to function calls.
58d4951d
ILT
2473 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
2474 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
2475 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
2476 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
2477 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
2478 (obj_elf_section), config/tc-i386.c (parse_register),
2479 config/tc-sparc.c (isoctal, s_proc): Cast char
2480 array indices to unsigned char.
54e3e909
DE
2481 * app.c (process_escape): Make static. Add prototype. Change
2482 argument from char to int.
58d4951d
ILT
2483 * as.c: Include output-file.h for prototypes. Comment out unused
2484 function got_sig.
2485 * Makefile.in (as.o): Depend on output-file.h.
2486 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
2487 (pseudo_typeS): Add prototype to poc_handler field.
2488 (print_version_id): Add prototype.
2489 (xmalloc, xrealloc): Change size arguments to unsigned long.
2490 (do_scrub_next_char): Add prototypes for function arguments.
2491 (had_errors, had_warnings, scrub_from_file): Remove duplicate
2492 declarations.
2493 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 2494 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
2495 * expr.c (floating_constant, integer_constant): Make static. Add
2496 prototypes.
2497 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 2498 * frags.h: Add prototype for frag_init.
54e3e909
DE
2499 * hash.h, hash.c: Change hash values from char * to PTR, make hash
2500 strings const, make returned error strings const char *. Added
2501 prototypes for functions.
2502 * input-file.h, input-file.c (input_file_buffer_size): Return
2503 unsigned int.
2504 * input-scrub.c (buffer_length): Make unsigned.
2505 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
2506 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
2507 long and use %lx. Print name of segment rather than address of
2508 structure.
54e3e909
DE
2509 (listing_list, listing_title): Change argument to int.
2510 (listing_eject, listing_flags, listing_psize): Add int argument.
2511 * listing.h: Corresponding declaration changes.
2512 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
2513 shadowing.
58d4951d 2514 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
2515 offsetT. Add prototype for next_char_of_string. Various
2516 prototype changes.
58d4951d 2517 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
2518 (pobegin): Make errtxt const. Make new_length, tmp_len and num
2519 unsigned.
2520 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
2521 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
2522 Change all callers.
58d4951d
ILT
2523 (s_comm): Change temp from valueT to offsetT. Cast to long when
2524 printing and use %ld (only for error messages anyhow).
54e3e909
DE
2525 (s_long, s_int): Remove unused functions.
2526 (cons): Change argument to int.
58d4951d
ILT
2527 (emit_expr): Use %lx when printing longs.
2528 (get_absolute_expression): Return offsetT, not long.
2529 (get_stab_string_offset): Comment out unless
2530 SEPARATE_STAB_SECTIONS.
2531 (s_stab_generic): Remove unused offset. Define seg_is_new only
2532 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 2533 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 2534 * symbols.c: Remove nested comment.
54e3e909 2535 (symbol_new): Rename value to valu.
58d4951d 2536 (colon): Use %ld and cast to long in error message.
54e3e909
DE
2537 * symbols.h: Remove duplicate verify_symbol_chain declaration.
2538 * tc.h: Remove unused md_emit_relocations declaration.
2539 (tc_gen_reloc): Add declaration.
58d4951d
ILT
2540 * write.c (cvt_frag_to_fill): Change first argument name depending
2541 on BFD_ASSEMBLER.
54e3e909
DE
2542 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
2543 declarations. Make n unsigned.
2544 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
2545 to f to avoid shadowing.
58d4951d
ILT
2546 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
2547 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 2548 punt_it if they will be used. Make i and n unsigned.
58d4951d 2549 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 2550 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
2551 * config/obj-aout.h: Remove nested comment. Add prototype for
2552 obj_aout_frob_symbol.
54e3e909
DE
2553 (obj_aout_line, obj_aout_desc): Add int argument.
2554 * config/obj-ecoff.c: Changed build routines to use an unsigned
2555 offset.
2556 (add_string): Make len unsigned long.
58d4951d
ILT
2557 (obj_ecoff_stab): Use %lu in error message.
2558 * config/obj-elf.c (obj_elf_common): Comment out unused label
2559 allocate_bss.
2560 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
2561 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
2562 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
2563 obj_elf_line, obj_elf_previous): Add int argument.
2564 (obj_elf_write_symbol_p): Make static.
2565 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
2566 * config/tc-hppa.h: Remove declarations of functions declared in
2567 read.h.
54e3e909
DE
2568 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
2569 (s_bss): Add int argument.
2570 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
2571 (dummy): Remove unused function.
2572 (md_assemble): Rename local o to op to avoid shadowing.
2573 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
2574 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
2575 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
2576 %ld in error messages.
54e3e909
DE
2577 * config/tc-sparc.c: Remove duplicate declarations.
2578 (getExpression): Rewrite condition to avoid empty conditional
2579 body.
2580 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
2581 argument.
58d4951d 2582
892a3ff1
KR
2583Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2584
2585 Changes from Jeff Law:
2586
2587 * config/tc-hppa.c (md_assemble): Fix typo.
132239bf 2588 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
2589 unsigned values being < 0, it can't happen.
2590 (is_same_frag): Return a value in recursive call case.
2591 (pa_callinfo): Delete unused variables and labels.
2592 (pa_comm): Likewise.
2593 (pa_copyright): Likewise.
2594 (pa_export): Likewise.
2595 (pa_import): Likewise.
2596 (pa_param): Likewise.
2597 (pa_space): Likewise.
2598 (pa_subspace): Likewise.
2599
abdd08c9
ILT
2600Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2601
2602 * read.c (get_stab_string_offset, s_stab_generic): If
2603 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
2604
414b2c8f
ILT
2605Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2606
2607 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
2608 default flag values.
2609
4064305e
SS
2610Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
2611
1531386b
SS
2612 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
2613
4064305e
SS
2614 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
2615 various stab-related directives.
2616 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
2617 * write.c: (merge_data_into_text): Fix ifdef tangle.
2618 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
2619 for stab reader to use.
2620 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
132239bf 2621 stab reader, macros to access.
4064305e 2622
81b407c9
KR
2623Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2624
2625 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
2626
2627 * config/tc-hppa.h (struct default_subspace_dict, struct
2628 default_space_dict): Field "sort" is now unsigned char.
2629
2630 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
2631 columns for easier reading.
2632 (bcmp, index): Deleted USG-specific definitions. Should be dealt
2633 with in ho-*.h, or in libiberty. Changed mention of index to
2634 strchr.
2635 (label_symbolP, label_symbol_defined, callinfo_found,
2636 within_entry_exit, exit_processing_complete, within_procedure,
2637 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
2638 label_symbols_rootP, pa_get_label, pa_label_is_defined,
2639 pa_undefine_label): Now static.
2640 (movers): Now const, in addition to pointing to const data.
2641 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
2642 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
2643 Delete declarations.
2644
2645 Merged more changes from Jeff Law and Pete Hoogenboom:
2646
2647 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
2648 entries for .stab and .stabstr.
2649
2650 * config/obj-elf.c: (elf_stab_symbol_string): Set the
2651 SEC_LOAD attribute for the .stabstr section.
2652 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
2653 .stab section.
2654 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
2655 (obj_elf_stab_generic): Incorrect byte count on call to
2656 md_number_to_chars function.
2657
2658 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
2659 argument relocation bits too.
2660
2661 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
2662 characters which should appear unaltered in the output string (for
2663 example an escaped double-quote).
2664
2665 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
2666 initialize name.
2667 (pa_parse_neg_cmpsub_cmpltr): Likewise.
2668 (pa_parse_nonneg_add_cmpltr): Likewise.
2669 (pa_parse_neg_add_cmpltr): Likewise.
2670
2671 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
2672 for now.
2673 (cons_fix_new_hppa): Likewise.
2674 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
2675 prototype.
2676
2677 * config/tc-hppa.c: Include libhppa.h.
2678
132239bf 2679 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
2680 found in libhppa.h.
2681
2682 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
2683 OBJ_ELF conditionals.
2684 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
2685 on the PA.
2686
1849d646
ILT
2687Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2688
ff3a5c18
ILT
2689 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
2690 (macro): Use "z,s,t" for div instructions to match corresponding
2691 change in opcode table.
2692 (mips_ip): Added 'z'--must be zero register.
1849d646 2693
e96d50d0
KR
2694Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2695
2696 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
2697 tc_gen_reloc correctly.
2698
2699 * configure.in: Use "case" instead of "if" when possible. Rewrote
2700 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
2701
56607c4e
RP
2702Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
2703
2704 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
2705 section type of data. 'd' seems to be used for m88k.
2706
2707Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2708
2709 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
2710 s_mips_space): Set insn_label to NULL to avoid changing it at the
2711 next .align statement.
2712 (append_insn): Don't swap jal with instruction that sets the
2713 register that jal sets.
2714
37d719bb
RP
2715Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
2716
2717 * configure.in: recognize m88110.
2718
28344993
KR
2719Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2720
2721 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
2722 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
2723 not be on for .hppa_unwind.
2724 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
2725 (pa_param): New function to handle .PARAM directives.
2726 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
2727 functions. Handle '|' for movb; allow movb,n.
2728 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
2729 version. Handle cases where no completer exists for
2730 comb,n or addb,n.
132239bf 2731 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
2732 completer exists for comb,n or addb,n. Make logic
2733 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
2734 (pa_parse_nonneg_add_cmpltr): Likewise.
2735 (pa_parse_neg_add_cmpltr): Likewise.
2736 * tc-hppa.h (pa_param): Declare.
2737
2738Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2739
2740 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
2741 Added forward declaration.
2742
2743 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
2744
2745 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
2746 call to elf_tc_make_sections.
2747 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
2748 attribute.
2749
2750 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
2751 handle symbol extension sections.
2752
2753 * config/tc-hppa.c (pa_build_symextn_section): New function to
2754 create a symbol extension section.
2755 (pa_export_args): Make call to pa_build_symextn_section.
2756 (hppa_tc_symbol, hppa_tc_make_sections,
2757 hppa_tc_make_symextn_section): New functions.
2758 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
2759 macros.
2760
2761 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
2762 BFD_ASSEMBLER branch as well.
2763
2764 * config/tc-hppa.h: If ELF is the target object format, define
2765 some ELF- and hppa-specific types and constants.
2766
2767 * config/tc-hppa.c (getExpression): Fix a typo.
2768
2769 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
2770 if a `=' is part of an instruction.
2771 (read_a_source_file): Handle case where end-of-line markers are
2772 also used within instructions.
2773 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
2774
2775 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
2776 out-of-range branches/'calls using "bl" or calls which may need
2777 argument relocation stubs. Do not need/keep relocations for
2778 conditional branches.
2779 (elf_hppa_final_processing): Fix calculation of function size.
2780
2781 * config/obj-elf.c (obj_elf_version): Mark .note section as
2782 READONLY.
2783
2784 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
2785 address of exp, to expression.
2786 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
2787 (md_apply_fix_1): Delete unwanted comments.
2788 (process_exit): Symbols marking the end of a function are always
2789 BSF_LOCAL.
2790
2791 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
2792 (pa_space): Declare and initialize gdb_section.
2793
2794 * config/obj-elf.c (elf_frob_file): Change
2795 elf_tc_final_processing_hook to elf_tc_final_processing.
2796
2797 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
2798 argument type declarations.
2799 (getExpression): Fix typo.
2800 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
2801 (elf_hppa_final_processing): Likewise. Name changed from
2802 elf_hppa_final_processing_hook.
2803 (start_symbol_root, start_symbol_last): Deleted.
2804
2805 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
2806
2807 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
2808 avoid changing include ordering.
2809
2810 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
2811
6e8dda9c
ILT
2812Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2813
2814 * config/tc-mips.c (set_at): Added unsignedp argument. Use
2815 load_register.
2816 (set_at_unsigned): Removed; changed callers to use set_at.
2817 (load_register): Removed unused ip argument. Changed callers.
2818 (append_insn): Don't swap branch and branch likely.
2819 (macro_build): Handle 'u'.
2820 (load_register): Handle 64 bit constants.
2821 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
2822 support 64 bit constants.
2823 (mips_ip): Use hex constants in range checks for clarity.
2824 (md_number_to_chars): Support 8 byte values.
2825
1e35cd8f
RP
2826Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
2827
2828 * config/tc-m88k.h: updated copyrights.
2829 (TC_CONS_RELOC): declare to be RELOC_32.
2830
8358c818
ILT
2831Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2832
2833 * config/tc-mips.c (mips_isa): New static variable.
2834 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
2835 check macros. Set text alignment and GP size here.
2836 (md_assemble): Don't set text alignment and GP size here.
2837 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
2838 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
2839 a NOP after a branch likely.
2840 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
2841 >= 2.
2842 (macro): Support r6000 and r4000 macros.
2843 (mips_ip): Check insn ISA level against mips_isa before using it.
2844 Added 'x' case for ignored register.
2845 (md_parse_option): Handle -mipsN and -mcpu=XX.
2846
c8d4cda1
KR
2847Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2848
2849 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
2850
2851Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2852
2853 * config/tc-sparc.c (s_local): Function moved and renamed...
2854 * config/obj-elf.c (obj_elf_local): ...to here.
2855 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
2856 (obj_pseudo_table): Move handling of ".local".
2857
2858 * tc.h (md_parse_option): Don't declare if defined as a macro.
2859
2860 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
2861 BFD_RELOC_NONE.
2862 (md_parse_option): New macro, converted from function.
2863 * config/tc-i386.c (md_parse_option): Function deleted.
2864 (comment_chars) [OBJ_ELF]: Include "/".
2865 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
2866 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
2867 warning.
2868 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
2869 Call reloc for fix_new type, or use correct enumerator, instead of
2870 always using NO_RELOC.
2871 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
2872 tests for valid section.
2873 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
2874 address.
2875 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
2876 symbol, compensate for location of reloc.
2877 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
2878 to return zero.
2879
4915cac0
KR
2880Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2881
2882 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
2883 (obj_elf_weak): New function.
2884 (obj_pseudo_table): Handle ".weak".
2885 (obj_elf_section): If section directive includes a string, ignore
2886 it for now. Accept "progbits" flag.
2887 (obj_elf_type): Accept `@' before flag name.
2888
2889 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
2890 condition.
2891 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
2892 than checking for bfd_com_section directly.
2893 (fixup_segment): Simplify range check.
2894 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
2895 test.
2896
2897 * symbols.h (S_SET_WEAK): Declare.
2898 * symbols.c (S_SET_WEAK): New function.
2899 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
2900 it's not a separate flag any more. Clear BSF_WEAK.
2901
2902 * read.c (potable): Treat "string" like "asciz".
2903
19ed8960
ILT
2904Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2905
2906 * config/tc-mips.c (append_insn): Don't swap branch instructions
2907 if .set nobopt or .set volatile.
2908 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
2909 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
2910 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
2911 * config/obj-ecoff.c: Renamed some variables to avoid shadow
2912 warnings.
2913
ae8c28f8
DZ
2914Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
2915
19ed8960
ILT
2916 * config/obj-coff.h (S_IS_COMMON): add missing backslash
2917
ae8c28f8
DZ
2918 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
2919
0aa07269
ILT
2920Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2921
2922 * config/tc-mips.c (mips_ip): Suggested by
2923 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
2924 names for 'E' and 'G' argument types (coprocessor registers) and
2925 don't warn if $1 is used on the coprocessor.
ae8c28f8 2926 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
2927
2928Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
2929
2930 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
2931 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
2932 BFD_RELOC_16.
2933 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
2934
6a9cf6fa
KR
2935Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2936
2937 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
2938 defined or BFD is not.
2939 (relax_and_size_all_segments): Declare local variable fragP.
2940
b114e492
KR
2941Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2942
2943 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
2944 bytes with real values, not zeros.
2945
ac32a7e7
ILT
2946Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2947
3d2330f8
ILT
2948 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
2949 targets, using ecoff and mips-big.
2950
ac32a7e7
ILT
2951 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
2952 Johnson): Added case for 'C' for coprocessor instruction codes.
2953
273aa947
KR
2954Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2955
b114e492
KR
2956 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
2957
273aa947
KR
2958 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
2959
b114e492
KR
2960 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
2961 for verifying symbol chain.
2962 (merge_data_into_text, relax_and_size_all_segments): New
2963 functions, split out from write_object_file.
2964
273aa947
KR
2965Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
2966
2967 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
2968 debug section is new, allocate an extra 12 bytes at its start. If
2969 ".stabs" type is N_SO, fill in filename symbol field of that first
2970 entry. Return early if "goof", to simplify later code slightly.
2971 (adjust_stab_sections): New function.
2972 (elf_frob_file): Apply adjust_stab_sections to each section.
2973
2974 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
2975 static.
2976 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
2977 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
2978 and "popsection", and call cons for "uaword" and "uahalf".
2979
2980 * config/obj-elf.c (obj_elf_version): Use English in error
2981 messages.
2982
4573d186
ILT
2983Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
2984
2985 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
2986 swapping routines and external structure sizes via the
2987 ecoff_backend information. No longer includes coff/mips.h.
2988
b4703fa6
ILT
2989Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2990
4c7ff23d
ILT
2991 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
2992 and in hash_ptr->string.
2993
b4703fa6
ILT
2994 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
2995 file name is not seen.
2996
ced16de6
ILT
2997Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
2998
2999 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
3000
3001 * expr.c (operand): Make return value simply depend on contents of
3002 returned expression.
3003
b4703fa6
ILT
3004Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
3005
3006 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
3007
0ccc65ec
DZ
3008Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
3009
3010 * config/ho-sunos.h: remove some old function decls that conflict
3011 w/ ANSI, and which weren't needed anyway
3012
3013Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3014
3015 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
3016 and disabled since it breaks Ian's new symbol-value code.
3017
3018 * expr.c (integer_constant): Accept more digits if BFD64.
3019
7fe17970
ILT
3020Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3021
3022 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
3023 expect a bignum, turn it into a bignum. Output extra zeroes
3024 before a short bignum, rather than after.
3025
0c2734c3
KR
3026Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3027
3028 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
3029 on DEBUG_SYMS, not DEBUG.
3030 (symbol_remove): Likewise.
3031 (symbol_insert): Likewise.
3032
4fe45d22
ILT
3033Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
3034
3035 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
3036 (append_insn): If mips_optimize == 0, always insert NOP
3037 instructions. If mips_optimize < 2, don't swap branches.
3038 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 3039
de9310b9
RP
3040Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
3041
3042 * Makefile.in (clean): if testsuite does not exist, then skip it.
3043
3044Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3045
3046 * config/tc-mips.c (prev_insn_unreordered,
3047 prev_prev_insn_unreordered): New static variables.
3048 (append_insn): Don't swap branch instruction if
3049 prev_prev_insn_unreordered (see comment).
3050 (mips_no_prev_insn): Clear the unreordered variables.
3051 (s_mipsset): When turning on reordering, set the unreordered
3052 variables.
3053
7767e7e9
KR
3054Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3055
3056 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
3057 are also magic, and have special default flag settings.
3058 (obj_elf_frob_symbol): Since the return value from this function
3059 isn't used, don't bother calling obj_elf_write_symbol_p, since it
3060 doesn't accomplish anything else.
3061
3062 * config/tc-sparc.c (md_section_align): Round up section size only
3063 for a.out format.
3064
3065 * symbols.c: Don't define DEBUG by default.
3066
88b457e5
ILT
3067Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
3068
2a2d3d08
ILT
3069 * write.c (fix_new_exp): Handle a O_uminus expression.
3070
e979ea04
ILT
3071 * expr.c (expr): Don't let absolute_section override
3072 undefined_section for the return value.
3073
cf897ce2
ILT
3074 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
3075 pseudo-op with a poc_handler field of NULL, ignore it and treat it
3076 as an instruction instead.
3077 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
3078 poc_handler field.
3079
88b457e5
ILT
3080 * config/tc-h8500.c (md_begin): Use a local variable when
3081 initializing md_relax_table to avoid warnings about modifying a
3082 supposedly const data structure.
3083
88e12460
BK
3084Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
3085
3086 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
3087 is defined.
3088
86a6ada2
FF
3089Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
3090
3091 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
3092 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
3093 case to set obj_format=elf. Must go before i386-*-sysv* case that
3094 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
3095 *-*-solaris case, and move to before *-sysv* case that wants to
3096 set obj_format to coff.
3097 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
3098 'exp->X_op'.
3099 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
3100 BFD_ASSEMBLER case.
3101
8ff6f40e
ILT
3102Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3103
2c5c299f
ILT
3104 * config/obj-aout.c: Include aout/aout64.h.
3105 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
3106 symbol, so that BFD doesn't tamper with the type.
3107
8ff6f40e
ILT
3108 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
3109 up opcodes as pseudo-ops even if they don't start with '.'.
3110 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
3111 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
3112 handling.
3113 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
3114 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
3115 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
3116 r_offset field of the reloc to the fixup offset.
3117 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
3118 * doc/as.texinfo: Minor updates.
3119
5ac34ac3
ILT
3120Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3121
3122 * Extensive changes to permit symbols to contain any expression
3123 type and to delay the computation of the expression until the
3124 value is actually needed. This permits setting symbols to values
3125 calculated based on object code size. Expressions were changed to
3126 no longer be in a section, to stop the overloading of segment and
3127 expression type that previously occurred.
3128
3129 * as.c (big_section, pass1_section, diff_section, absent_section):
3130 Removed.
3131 (expr_section): Added (used for dummy symbols which hold
3132 intermediate expression values).
3133 (perform_an_assembly_pass): Create expr_section, do not create the
3134 sections now removed.
3135 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
3136 SEG_DIFFERENCE. Added SEG_EXPR.
3137 (SEG_NORMAL): Corresponding changes.
3138 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
3139 * write.c (write_object_file): Ditto.
3140 * config/obj-aout.c (seg_N_TYPE): Ditto.
3141 * config/obj-bout.c (seg_N_TYPE): Ditto.
3142 * config/obj-coff.c (seg_N_TYPE): Ditto.
3143 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
3144 * config/obj-vms.c (seg_N_TYPE): Ditto.
3145
3146 * expr.h (operatorT): Moved in from expr.c, added some values.
3147 (expressionS): Added X_op field, removed X_seg field; renamed
3148 X_subtract_symbol to X_op_symbol.
3149 * expr.c: Extensive changes to assign expression types rather than
3150 sections and to simplify the parsing.
3151 * write.c (fix_new_internal): New static function.
3152 (fix_new): Removed sub_symbol argument.
3153 (fix_new_exp): New function, takes expression argument.
3154 * write.h: Prototype changes for fix_new and fix_new_exp.
3155 * cond.c (s_if): Changed accordingly.
3156 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
3157 parse_repeat_cons, get_segmented_expression,
3158 get_known_segmented_expression, get_absolute_expression): Ditto.
3159 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
3160 Ditto.
3161 * write.c (write_object_file): Ditto.
3162 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
3163 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
3164 obj_coff_endef, yank_symbols): Ditto.
3165 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
3166 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
3167 print_insn, md_operand): Ditto.
3168 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
3169 do_a_fix_imm, build_bytes): Ditto.
3170 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
3171 get_specific, check, insert, md_convert_frag): Ditto.
3172 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
3173 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
3174 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
3175 process_exit): Ditto.
3176 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
3177 is_complex): Ditto.
3178 * config/tc-i386.c (pe, md_assemble, i386_operand,
3179 md_estimate_size_before_relax, md_create_long_jump): Ditto.
3180 * config/tc-i860.c (md_assemble, getExpression, print_insn):
3181 Ditto.
3182 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
3183 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
3184 i960_handle_align): Ditto.
3185 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
3186 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
3187 md_estimate_size_before_relax, md_create_long_jump, get_num):
3188 Ditto.
3189 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
3190 md_create_short_jump, md_create_long_jump): Ditto.
3191 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
3192 macro_build, macro, my_getExpression): Ditto. Also removed
3193 get_optional_absolute_expression; just use get_absolute_expression
3194 instead.
3195 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
3196 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
3197 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
3198 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
3199 Ditto.
3200 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
3201 print_insn): Ditto.
3202 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
3203 tip_op, md_assemble): Ditto.
3204 * config/tc-vax.c (seg_of_operand, md_assemble,
3205 md_estimate_size_before_relax, md_create_long_jump): Ditto.
3206 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
3207
84873870
DZ
3208Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
3209
3210 * configure.in: i386-lynx is the same as i386-coff
3211
623d6e9a
KR
3212Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
3213
3214 * config/obj-elf.c (obj_elf_previous): New function.
3215 (previous_section, previous_subsection): New vars.
3216 (obj_elf_section): Save current place in case DWARF code wants us
3217 to pop back to it. Handle unquoted section name as well as quoted
3218 section name. Don't crash on invalid strings.
3219 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
3220 "4byte".
3221
3222 * config/obj-elf.h: Don't include struc-symbol.h.
3223 (obj_elf_frob_symbol): Declare arg as struct symbol *.
3224
3225 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
3226 "L" or "_.L_".
3227
3228 * write.c (write_relocs): New function, split off from
3229 write_contents. Use memset instead of bzero.
3230 (write_object_file): Apply write_relocs to each section before
3231 applying write_contents.
3232
3233 * read.c (read_begin): Call obstack_begin with values closer to 1K
3234 multiples.
3235 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
3236 bcopy.
3237
ffffc8fb
ILT
3238Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3239
ce2ad89a
ILT
3240 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
3241 calculating opP->isiz; this permits the expression size to be
3242 determined as well, later on.
3243
ffffc8fb
ILT
3244 * expr.c (clean_up_expression): Don't cancel the subtraction of
3245 undefined symbols.
3246
3247 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
3248 switch to text section rather than data section.
3249
9d4dfbf3
KR
3250Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3251
3252 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
3253 expression (to take the pc-rel instruction itself into account)
3254 before using the expression, instead of after.
3255
04acd059
ILT
3256Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
3257
1e9cf565
ILT
3258 * read.c (float_cons): Simplified parsing logic. If
3259 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
3260
3261 * symbols.c (colon): Rather than a special case for TC_HPPA,
3262 use new macro tc_frob_label.
3263 * config/tc-hppa.h (tc_frob_label): Define.
3264
3265 * config/tc-mips.c: Many changes to support simple assembler
3266 optimization.
3267 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
3268 prev_insn_valid, prev_insn_frag, prev_insn_where,
3269 prev_insn_fixp, prev_insn_is_delay_slot): New static
3270 variables.
3271 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
3272 mips_align, s_stringer, s_mips_space): New static functions.
3273 (mips_define_label): New global function.
3274 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
3275 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
3276 or 'd'. For "space" call s_mips_space.
3277 (md_begin): Call mips_no_prev_insn.
3278 (append_insn): Only insert necessary NOP instructions.
3279 (macro): Call mips_emit_delays before setting mips_noreorder.
3280 Increment and decrement mips_noreorder rather than using
3281 save_reorder_condition. Don't bother to use noreorder in
3282 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
3283 (md_atof): Handle floating point numbers correctly for both
3284 big and little endian targets.
3285 (s_align, s_cons): Call mips_align rather than frag_align.
3286 (s_change_seg, s_cons): Call mips_emit_delays.
3287 (s_float_cons): Let float_cons do the work.
3288 (s_mipsset): Call mips_emit_delays when setting noreorder.
3289 * config/tc-mips.h (tc_frob_label): Define to be
3290 mips_define_label.
3291
04acd059
ILT
3292 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
3293 ecoff_frob_files): Consistently use S_GET_VALUE rather than
3294 bfd_asymbol_value. Warn if taking difference of symbols in
3295 different segments.
3296
c978e704
ILT
3297Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3298
5276e361
ILT
3299 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
3300 with a warning.
3301
2368ec63
ILT
3302 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
3303 by md_pcrel_from if we are relocating against a symbol (we still
3304 need md_pcrel_from for a PC relative relocation within the same
3305 file).
3306 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 3307 (omagic): Removed unused variable.
2368ec63 3308
c978e704
ILT
3309 * Preliminary support for m88k-coff.
3310 * configure.in (m88k-*-coff*): New target. Use coffbfd and
3311 m88kcoff.
3312 * config/m88kcoff.mt: New file.
3313 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
3314 (pseudo_set): Handle difference of symbols in different fragments
3315 by saving the entire expression as the value of the symbol.
3316 * symbols.c (resolve_symbol_value): Resolve difference
3317 expressions.
3318 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
3319 "sdef" as a synonym for "def".
3320 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
3321 TARGET_FORMAT.
3322 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
3323 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
3324 m88k port up to date, and to add COFF support.
3325
85051959
ILT
3326Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3327
5868b1fe
ILT
3328 * Removed sy_forward and replaced it with an undefined expression
3329 as the value of a symbol.
3330 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
3331 sy_resolved and sy_resolving single bit fields.
3332 * symbols.c (symbol_new): Don't initialize sy_forward field.
3333 (resolve_symbol_value): New function to adjust symbol value by
3334 fragment address, using recursion to resolve forward symbols.
3335 * symbols.h: Added prototype for new function.
3336 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
3337 expression rather than setting symbolP->sy_forward.
3338 * write.c (write_object_file): Use resolve_symbol_value on
3339 symbols, keeping the common case (the old behaviour) inline.
3340 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
3341 handling (subsumed by write.c change).
3342 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
3343 sy_value rather than sy_forward.
3344 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
3345 expression segment rather than sy_forward.
3346 (yank_symbols): Use resolve_symbol_value.
3347 (crawl_symbols): Removed extra pass over symbols.
3348 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
3349 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
3350 symbols which handled sy_forward; use resolve_symbol_value
3351 instead.
3352 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
3353 Define.
3354 * config/obj-elf.c (obj_elf_stab_generic): Check expression
3355 segment rather than sy_forward.
3356 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
3357 sy_forward; do initialize sy_resolved and sy_resolving.
3358 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
3359
85051959
ILT
3360 * Changes to keep a full expression as the value of a symbol, not
3361 just a longword:
3362 * struc-symbol.h: New field sy_value.
3363 * as.h: Include expr.h before struc-symbol.h.
3364 * expr.h: Use struct symbol rather than symbolS.
3365 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
3366 of sy_value field; compile unconditionally, not just if
3367 BFD_ASSEMBLER.
3368 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
3369 * write.c (write_object_file): Set BFD symbol value to gas symbol
3370 value.
3371 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
3372 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
3373 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
3374 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
3375 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
3376 S_GET_VALUE rather than ost_entry.n_value.
3377 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
3378 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
3379 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
3380 using S_GET_VALUE--don't assume it is already set.
3381 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
3382 symbol value.
3383 * config/obj-vms.c (various): Don't assign directly to
3384 S_GET_VALUE; use S_SET_VALUE instead.
3385
b50401c9
DE
3386Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
3387
3388 * configure.in: Recognize h8300h.
3389
489a93f3
SC
3390Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
3391
3392 * config/tc-h8500.c (line_comment_chars): Add hash.
3393 (parse_exp, skip_colonthing, build_bytes): Add support for
3394 R_H8500_HIGH16 relocation type.
3395
5d4ef296
KR
3396Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
3397
3398 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
3399 attribute name. Handle `execinstr' attribute.
3400
99c24539
ILT
3401Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
3402
3403 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
3404 there is another alternative for the instruction.
3405
ec1c752b
RP
3406Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
3407
3408 * doc/as.texinfo: updates for H8/300H
3409
d358969d
ME
3410Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
3411
3412 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
3413 md_number_to_chars, md_section_align): Adjusted to use valueT,
3414 addressT, to match tc.h.
3415
ff4cac38
KR
3416Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3417
3418 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 3419 independent of format.
ff4cac38 3420
42206996
DE
3421Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
3422
3423 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
3424
e9baeb46
DZ
3425Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
3426
3427 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
3428 build; also recognize h8300-*-coff
3429
76c64db0
ILT
3430Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
3431
e154ecf4
ILT
3432 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
3433 core just because somebody uses a label before it is defined.
3434
76c64db0
ILT
3435 * config/mips-opcode.h: Moved to opcode/mips.h.
3436 * config/tc-mips.c: Include opcode/mips.h rather than
3437 mips-opcode.h.
3438 (append_insn): An extra NOP is only needed after instructions
3439 which set HI or LO, not after instructions which read it.
3440 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
3441 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
3442 * config/tc-mips.h (struct mips_opcode): Don't define.
3443 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
3444 Set to $(srcdir)/../include/opcode/mips.h.
3445
3446 Get the MIPS assembler up to speed with other gas changes:
3447
3448 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
3449 Removed; don't change the symbol value.
3450 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
3451 bfd_asymbol_value rather than S_GET_VALUE to include section
3452 vma in symbol value.
3453 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
3454 doesn't output them. Set the vma of sections.
3455 * config/obj-ecoff.h: Don't define obj_frob_symbol.
3456 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
3457 longer necessary.
3458 (various): use valueT rather than long.
3459
e28e0b95
KR
3460Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3461
3462 * as.h (valueT): Typedef moved here.
3463 * struc-symbol.h (valueT): ...from here.
3464 * write.c (write_object_file): Locals from_addr, to_addr,
3465 table_addr are now addressT. Supply prototype for bfd_alloc for
3466 now.
3467 (fixup_segment): Local add_number is now valueT. Correct some
3468 range-checking bugs.
3469 (relax_align): Type `int' should be sufficient for the exponent.
3470 (fix_new): Argument offset is type offsetT. Locals size and
3471 newsize are type valueT.
3472 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
3473 type valueT.
3474 (fix_new): Fix prototype.
3475 * symbols.c (symbol_new): Symbol value is type valueT.
3476 (S_SET_VALUE, S_GET_VALUE): Likewise.
3477 (S_IS_*): Specify int return type explicitly.
3478 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
3479 prototypes.
3480 * read.c (s_comm): Values read are type valueT.
3481 * expr.h (expressionS): Field X_add_number is an offsetT.
3482 * tc.h (md_create_long_jump, md_create_short_jump,
3483 md_section_align): Addresses are now type addressT.
3484 (md_number_to_chars, md_apply_fix): Pass value as valueT.
3485 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
3486 md_number_to_chars, md_section_align): Adjusted.
3487 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
3488 gcc shut up.
3489 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
3490 md_section_align): Adjusted.
3491
3492 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
3493 format.
3494 (s_common): Handle Solaris-2 version.
3495
3496 * config/ho-generic.h (free): Returns void if __STDC__.
3497
3498 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
3499 elf_file_symbol): Declare.
3500
3501 * expr.c (floating_constant, integer_constant): Now return void.
3502
3503Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
3504
3505 * configure.in: Match on sparc*-fujitsu-none rather than
3506 sparclite*-fujitsu-none.
3507
267389df
ILT
3508Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
3509
3510 * read.c (cons): Conditionalize parsing of expression. Move
3511 putting value into object file into separate function. Separate
3512 out MRI and WANT_BITFIELDS cases into separate functions.
3513 (emit_expr): New function to write data into object file.
3514 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
3515 processor types.
3516 (parse_bitfield_cons): New function to parse bitfield expressions
3517 as used by i960 assemblers. Only compiled if
3518 BITFIELD_CONS_EXPRESSIONS is defined.
3519 (parse_mri_cons): New function to parse MRI style strings. Only
3520 compiled if MRI is defined.
3521 (parse_repeat_cons): New function to parse repeat counts. Only
3522 compiled if REPEAT_CONS_EXPRESSIONS is defined.
3523 * read.h (emit_expr): Added declaration of new function.
3524 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
3525 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
3526 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
3527 parse a HPPA expression, rather than special case in cons
3528 function.
3529 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
3530 than special case in emit_expr function.
3531 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
3532 Define to use new functions from tc-hppa.c.
3533 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
3534 (WANT_BITFIELDS): Removed; now obsolete.
3535 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
3536 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
3537 NS32K fixup, rather than special case in emit_expr function.
3538 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
3539 cons_fix_new_ns32k. Also use PARAMS rather than checking
3540 __STDC__.
3541 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
3542
3543 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
3544 Don't core dump if gas has no information about a section.
3545
3546Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3547
3548 * write.c (relax_and_size_seg): Always fully process a section.
3549 Section size is last frag's (vm)address plus its size. If no
3550 relocations are present, force SEC_RELOC flag clear.
3551 (dump_section_relocs): New debugging routine.
3552 (adjust_reloc_syms): New routine, broken out from write_contents.
3553 Don't adjust relocs that are already relative to section symbol.
3554 Look for obj_fix_adjustable macro to know what else to skip,
3555 instead of obj_write_symbol. Look for section symbol stored in
3556 section information.
3557 (write_object_file): Map adjust_reloc_syms over all sections.
3558 (write_contents): Clear SEC_RELOC flag if no relocations are
3559 found.
3560
3561 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
3562 keep it quiet.
3563
3564 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
3565
e28e0b95
KR
3566Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
3567
3568 * Makefile.in (all, dvi, info, install-info, clean-info): do not
3569 echo recursion lines.
3570 (install-info, clean-info): collapse into the dvi and info rule.
3571
267389df
ILT
3572Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
3573
3574 * as.h (strstr): Disable declaration for now.
3575 (fprint_value, sprint_value): Declare.
3576
3577 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
3578 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
3579
3580 * expr.c (expr_part): Made sanity checks a.out-specific.
3581 (expr): Disabled sanity checks.
3582
3583 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
3584 section symbol.
3585 * subsegs.c (subseg_change): Initialize section symbol pointer
3586 when setting up a new section.
3587
3588 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
3589 field back at gas symbol structure.
3590
3591 * symbols.c (colon): Cast obstack_next_free value to char* before
3592 doing arithmetic on it.
3593 * subsegs.c (subseg_new_rest): Likewise.
3594 * as.h (frag_now_fix): Likewise.
3595
3596 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
3597 calling bfd_make_section_old_way directly, and call subseg_set
3598 instead of subseg_change. Now returns void.
3599 (obj_elf_write_symbol): Only check local symbols for now.
3600 (elf_stab_symbol): Now static and void, and disabled until it
3601 works completely.
3602 (obj_elf_size): For expression values, fail silently for now.
3603 (obj_symbol_new_hook): Do nothing.
3604
3605 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
3606 relocation.
3607 (s_local) [OBJ_ELF]: New function.
3608 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
3609 (s_common): Rearrange to handle Solaris .common pseudo, which may
3610 sometimes use bss space instead of common.
3611 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
3612
a8285504
DZ
3613Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3614
3615 * configure.in: set host config to hpux for hppa*-hp-hpux
3616
267389df
ILT
3617Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
3618
3619 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
3620
3621Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
3622
3623 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
3624 * config/obj-aout.c (s_sect): Do it here.
3625
3626 * as.h (BAD_CASE): Don't make some lame compilers think we want
3627 substitution inside strings.
3628
3629 * as.c (print_version_id): New function, split off from main.
3630 (main): Call it.
3631 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
3632 for -V. Ignore -Q and -s options for now.
3633
a8285504
DZ
3634Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3635
3636 * Makefile.in: make installation & builds work again for crosses
3637
267389df
ILT
3638Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
3639
3640 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
3641 symbol values correctly.
3642
3643 * write.c (write_object_file): Deleted unused variables.
3644 (fixup_segment): Use sprint_value.
3645
3646 * messages.c (sprint_value, fprint_value): New routines.
3647
3648 * config/obj-elf.c (elf_stab_symbol): Now returns void.
3649 (obj_elf_stab_generic): Fix typo in logic.
3650
3651 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
3652
3653 * as.h (addressT, offsetT): New types, using BFD types if
3654 available.
3655 (relax_addressT, struct frag): Use them.
3656 * struc-symbol.h (valueT, struct broken_word): Likewise.
3657
3658 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
3659 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
3660
9126738c 3661Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 3662
9126738c
DZ
3663 * Makefile.in: canonicalize install.sh; for use within
3664 this directory (and subdirs)
3665
267389df
ILT
3666Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
3667
3668 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
3669 specified, should have both S1 and S2 fields identical
3670 If only finding the problem was as fast as fixing the bug !!!!
3671
3672Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3673
3674 * write.c (write_contents): Do write out non-loadable sections.
3675 Debug sections can fall in this category.
115147fb 3676
267389df
ILT
3677 * read.c (s_app_file): Call elf_file_symbol for ELF files.
3678 * config/obj-elf.c (elf_file_symbol): New function.
3679
3680 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
3681 added argument to specify section base name.
3682 (obj_elf_stab_generic): Renamed from ..._stab. New argument
3683 specifies section base name.
3684 (obj_elf_stab): New function, calls obj_elf_stab_generic with
3685 ".stab" as section base name.
3686 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
3687 (obj_elf_type): Handle "object". Use bitwise-or to merge in
3688 symbol flags rather than simply replacing, so global/local flags
3689 are preserved.
3690 (obj_elf_ident): Rewrite.
115147fb 3691
a00ee522
DZ
3692Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
3693
3694 * Makefile.in: remove parentdir support; use INSTALL_XFORM
3695
3696Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
3697
3698 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
3699 for any a.out target, not just Linux and 386BSD.
3700 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
3701 target.
3702
267389df
ILT
3703Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3704
3705 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
3706 don't exist or duplicate other inclusions.
3707
3708 * config/tc-vax.h (NO_RELOC): Define.
3709
3710Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
3711
3712 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
3713 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
3714 char to reg_prefix instead of to 'r'.
3715 (calcop): Change calls to get_reg.
3716 (calcop): Handle new case 'x' to set reg_prefix.
3717 (calcop): Set reg_prefix to 'r' after each call to get_reg.
3718 (cmpslot): Add 88110 conditions.
3719
3720 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
3721
3722 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
3723 before returning.
3724
3725 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
3726 adjacent; mov.s and mov.d swapped.
3727 (m88k_opcodes): Fix typo `r2' -> `2'.
3728
a00ee522
DZ
3729Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
3730
3731 * config/h8300.c: Support for H8/300-H opcodes.
3732
3733 * config/obj-coffbfd.c (w_strings): String table length is 4
3734 bytes, no matter what the host int size is.
3735
3736 * configure.in (alpha-*-osf*): New.
3737
68ad4c92
ILT
3738Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
3739
47fcc4f5
ILT
3740 * configure.in (mips-*-ecoffl*): New target; use ecoff and
3741 mips-lit.
3742 (mips-*-ecoff*): Added trailing '*'.
3743
68ad4c92
ILT
3744 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
3745 first FDR in a file to be zero.
3746
75776695
KR
3747Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3748
b7067d7f
KR
3749 * Makefile.in (VERSION): Jump to 2.1.4.
3750
75776695
KR
3751 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
3752
3753 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
3754 ECOFF format.
3755
3756Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3757
3758 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
3759 separate '851 mmu.
3760
3761 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
3762 and routine names. Assuming 32 bits for now.
3763
3764 * config/obj-elf.c (elf_frob_file): Look for macro
3765 elf_tc_final_processing_hook, instead of assuming a function
3766 always exists.
3767 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
3768 tc_final_processing_hook.
3769 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
3770
3771 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
3772 moved here from obj-elf.h.
3773 * config/obj-elf.h: Don't include CPU-specific header files.
3774
3775Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
3776
3777 * configure.in: configurations should match on 'hppa*' not 'hppa'.
3778
3779 * read.c: Add support for HPPA assembly language syntax (denoted
3780 with '#ifdef TC_HPPA').
3781
3782 * symbols.c: Add support for HPPA assembly language syntax (denoted
3783 with '#ifdef TC_HPPA').
3784
3785 * write.c (write_contents): Add support for HPPA-style
3786 relocations.
3787
3788 * config/obj-elf.c: Stab symbols weren't written properly.
3789 (obj_elf_version):
3790 (obj_elf_desc):
3791 (obj_elf_write_symbol):
3792 (obj_elf_write_symbol_p):
3793 (obj_elf_frob_symbol):
3794 (elf_stab_symbol):
3795 (elf_frob_file):
3796
3797 * config/tc-hppa.c: Support for HPPA symbol extension sections.
3798 Remove some unused code. Support for HPPA assembly language
3799 syntax.
3800
3801 * app.c:
3802
3803 * symbols.c:
3804
3805 * config/obj-elf.h:
3806 (obj_write_symbol):
3807 (obj_frob_file):
3808 (elf_tc_symbol):
3809 (elf_tc_make_sections):
3810
3811 * config/tc-hppa.h:
3812
3813Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3814
3815 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
3816 hash_new will have succeeded if it returns.
3817 * config/tc-a29k.c (md_begin): Likewise.
3818
3819 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
3820 const.
3821 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
3822 gcc.
3823 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
3824
3825 * expr.c: Delete register declarations; gcc ignores them anyways.
3826
3827Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3828
3829 * hash.c (hash_new): Use xmalloc, since many callers don't check
3830 for failure.
3831
49864cfa
KR
3832Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3833
3834 * frags.c (zero_address_frag, bss_address_frag): These are
3835 external.
3836
3837 * tc.h (md_reloc_size): This is const.
3838 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
3839 (md_reloc_size): Now const.
3840
3841 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
3842 trailing commas.
3843 * as.h (enum _segT): Ditto.
3844
3845 * struc-symbol.h (N_TYPE_seg): This should be const.
3846
3847Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
3848
3849 * config/obj-ecoff.c (add_file): Cast file_name to char * in
3850 listing_source_file call.
3851
3852 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
3853 of subseg_new call to eliminate const attribute.
3854 (obj_elf_stab): Ditto.
3855 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
3856
3857 * read.c (s_align_bytes): Properly record alignment.
3858
3859 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
3860 for the prototype/no prototype macro.
3861
3862 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
3863 void.
3864
3865 * as.h (relax_stateT enum): Delete trailing comma.
3866
9a7d824a
ILT
3867Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
3868
3869 * app.c (do_scrub_begin): Let line_comment_chars override
3870 comment_chars.
3871 (do_scrub_next_char): If a line comment character is not at the
3872 start of a line, treat it as a comment character if it is one.
3873 For a CPP line comment use pseudo-op .appline rather than .line.
3874 * input-scrub.c (logical_input_line): Make int rather than
3875 unsigned.
3876 (input_scrub_push, input_scrub_begin): Initialize
3877 logical_input_line to -1 rather than 0.
3878 (bump_line_counters): Increment logical_input_line.
3879 (new_logical_line): If line_number is -2, decrement
3880 logical_input_line.
3881 (as_where): Use logical_input_line even if it is 0.
3882 * read.h (s_app_file prototype): Now takes an int argument.
3883 * read.c (potable): Make .appfile call s_app_file with 1. New
3884 .appline pseudo-op calls s_app_line.
3885 (s_app_file): If .appfile, call new_logical_line with -2 to
3886 account for newline inserted by do_scrub_next_char. If listing,
3887 call listing_source_file.
3888 (s_app_line): New function to handle fake pseudo-op .appline.
3889 * config/obj-coff.c (obj_pseudo_table): Make .appline call
3890 obj_coff_ln.
3891 (obj_coff_ln): Added argument to indicate whether .appline.
3892 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
3893 obj_coff_ln.
3894 (obj_coff_ln): Added argument to indicate whether .appline.
3895 * config/tc-mips.c (s_file): Pass argument to s_app_file.
3896
61f14fb0
ILT
3897Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
3898
3899 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
3900
3901Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3902
3903 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
3904 invalid values.
3905
6eef4543
SC
3906Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
3907
3908 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
3909 relocations correctly.
3910
f8f61478
KR
3911Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
3912
6eef4543
SC
3913 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
3914 it's wrong.
3915
f8f61478
KR
3916 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
3917 if value is out of range.
3918
3919 Patch from Minh Tran-Le:
3920 * config/tc-i386.c (i386_operand): For in/out port register used
3921 as base reg, include InOutPortReg in operand type.
3922 (MATCH): Accept overlap value of InOutPortReg.
3923
3924Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
3925
3926 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
3927 Add calls to listing routines to produce combined source/assembler
3928 listings.
3929 (obj_ecoff_stab): Create a file pointer if none used yet.
3930 (ecoff_frob_file): Set symcount to correct value.
3931
3932Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
3933
3934 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
3935 release.
3936
3937 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
3938 Define in terms of constants, not C structure sizes.
3939
3940 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
3941
3942Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3943
3944 * config/obj-aout.c (obj_header_append): Don't define if it's
3945 defined as a macro.
3946 * config/obj-hp300.h (obj_header_append): Define it as a macro.
3947 * config/obj-hp300.c (hp300_header_append): New function.
3948
3949 * Makefile.in (distclean): Don't bother cleaning up doc files;
3950 they aren't going to be in this directory.
3951
204ff785
ILT
3952Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
3953
f8f61478
KR
3954 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
3955 symbols.
3956
204ff785
ILT
3957 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
3958 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
3959
65824763
KR
3960Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3961
204ff785
ILT
3962 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
3963 initialization.
3964
65824763
KR
3965 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
3966
21bb48b9
ILT
3967Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
3968
3969 * config/tc-mips.c (macro): Correct floating point double word
3970 loads and stores for big endian target.
3971
e7c2f943
KR
3972Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
3973
3974 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
3975 calls. Deleted some unused code.
3976 * config/obj-coff.c: Likewise.
3977
3978 ELF support, mostly contributed by Utah:
3979 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
3980 obj_elf_type): Rewrite.
3981 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
3982 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
3983 New functions.
3984 (obj_elf_ident): Dummy.
3985 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
3986 TARGET_SYMBOL_FIELDS): New macros.
3987 (gdb_section): New variable decl.
3988
3989 * config/tc-i386.c (md_atof): Return zero, not empty string, on
3990 success.
3991
3992 BFD_ASSEMBLER conditional changes:
3993 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
3994 Don't define these.
3995 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
3996 (fetch_coff_debug_section): Ditto.
3997 (obj_coff_endef): Call fetch_coff_debug_section.
3998 (struct line_no): New type.
3999 (c_symbol_merge): New way for copying aux fields.
4000 (c_dot_file_symbol): Put symbol in absolute section, and set flag
4001 BSF_DEBUGGING.
4002 (function_lineoff): New symbol.
4003 (function_lineoff, text_lineno_number, our_lineno_number,
4004 lineno_lastP): Don't define.
4005 (c_line_new): Don't define.
4006 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
4007 placeholders, until
4008 line-number recording gets implemented.
4009 (obj_new_symbol_hook): New code for handling aux fields.
4010 (add_lineno, add_linesym): New functions.
4011 (obj_coff_ln): Call add_lineno, not c_line_new.
4012 (obj_coff_endef): New code for handling symbol names. New lineno
4013 code. Look for section name "*DEBUG*" for debugging section.
4014 (align, coff_check_file_symbols, obj_coff_section,
4015 coff_frob_file): New functions.
4016 * config/obj-coff.h: Reordered some includes.
4017 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
4018 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
4019 define these.
4020 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
4021 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
4022 aux entries. Most SA_* macros now use it unconditionally.
4023 (S_*): Use `bsym' field, and access BFD private data.
4024 (SF_*): Use `sy_flags' symbol field for most of these.
4025 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
4026 define.
4027 (*_section_header): Don't define.
4028 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
4029 interface.
4030 (tc_gen_reloc) [I386COFF]: New function.
4031 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
4032 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
4033 macros.
4034
4035 * config/obj-coff.c (stack_init): Don't do assignments inside
4036 conditions.
4037 (obj_coff_def): Simplified handling of symbol name a bit.
4038 (tag_insert): Name argument is now pointer to CONST.
4039 (obj_crawl_symbol_chain): Commented out.
4040
4041 * config/obj-coff.h: Use PARAMS macro in prototypes.
4042
4043 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
4044 through frchainP pointer if it is null.
4045
4046 * configure.in: Warn if BFD mode is explicitly turned off but is
4047 required by specified target.
4048 (mips ecoff targets): Don't need to set bfd_gas here; it gets
4049 taken care of later.
4050
4051 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
4052 field.
4053 (yank_symbols): Merge symbols only if sy_forward is null.
4054
4055 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
4056 defined.
4057
4058 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
4059 pointer.
4060 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
4061
4062 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
4063 with "." is a local label.
4064
4065 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
4066 files.
4067
4068 * config/te-linux.h, config/te-386bsd.h: New config files.
4069 * configure.in (i386-*-linux, i386-*-bsd): Use them.
4070 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
4071 environment.
4072 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
4073
5d6cfa60
ILT
4074Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
4075
4076 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
4077 to want it that way.
4078 (ecoff_build_symbols): Turn local st_Proc symbols into
4079 st_StaticProc symbols. Set index field of external st_Proc and
4080 st_staticProc symbols correctly.
4081 * config/tc-mips.h (NO_LISTING): Don't define. People might want
4082 listings.
4083
e7c2f943
KR
4084Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4085
4086 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
4087 files.
4088 * configure.in (m68k-*-hpux): Use them.
4089
4090 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
4091 defined, otherwise zero.
4092
4093 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
4094
5d6cfa60
ILT
4095Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4096
4097 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
4098 address space number.
4099
4100Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
4101
4102 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
4103
4104 * config/tc-a29k.c: Include ctype.h.
4105 (define_some_regs): Added special-purpose registers for 29050.
4106
e7c2f943
KR
4107 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
4108
4109 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
4110 (change_to_section): Set it here instead.
4111
a1387260
ILT
4112Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
4113
4114 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
4115 hasn't been seen yet.
4116 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
4117
4a1bbbe7
SC
4118Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4119
4120 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
4121 SH.
4122
be2f6bd6
ILT
4123Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
4124
4125 * expr.c (operand): Fix unary plus operator (previously was the
4126 same as '~' operator!).
4127
4128Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4129
4130 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
4131 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
4132 obj_check_file_symbols if defined. Call verify_symbol_chain_2
4133 instead of open-coding it. Fix some bugs in patching up symbol
4134 chain.
4135 (relax_segment): Make some code we "ought to be able to" use for
4136 all targets no longer conditionalized on ns32k target; instead, do
4137 it always, and if the appropriate conditions fail, abort.
4138
4139 * symbols.c (DEBUG): Enabled.
4140 (symbol_new): Make sure bfd_make_empty_symbol works.
4141 (verify_symbol_chain_2): New funcion; takes one symbol as
4142 argument, anywhere in the chain.
4143 (dollar_label*): Use default initializers.
4144
4145 * as.c (perform_an_assembly_pass): Call md_begin here...
4146 (main): ...and not here.
4147
4148 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
4149 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
4150
4151 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
4152 (add_fix, add_frag): Now functions instead of macros.
4153 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
4154 s_data1, s_data2, s_bss): Use new *_section names, for
4155 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
4156 to handle non-integral segT.
4157 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
4158 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
4159 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
4160 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
4161 md_apply_fix_2; new md_apply_fix definition varies interface
4162 depending on BFD_ASSEMBLER.
4163 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
4164 names.
4165
4166 * config/obj-vms.c: Include config.h.
4167 (version_string): Delete declaration.
4168 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
4169 (vms_resolve_symbol_redef): New function, taken from VMS code in
4170 symbols.c.
4171 (_doprnt): Deleted.
4172 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
4173 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
4174 VMS_Psect_Spec): Fixed to compiler under traditional C.
4175 * config/obj-vms.h: Use PARAMS macro.
4176 (vms_resolve_symbol_redef): Declare.
4177 (RESOLVE_SYMBOL_REDEFINITION): New macro.
4178 * symbols.c (colon): Remove some VMS-specific code, look for
4179 RESOLVE_SYMBOL_REDEFINITION macro instead.
4180
4181 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
4182 instructions.
4183
4184 * config/tc-i386.c: Reordered some functions so inlining might
4185 work. Use PARAMS in function declarations.
4186 (reloc): New routine.
4187 (md_assemble): Rearrange switch statements to work with
4188 non-integral segT.
4189
4190 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
4191 SYMBOLS_NEED_BACKPOINTERS before defining it.
4192
4193 * subsegs.c (subseg_new_rest): Now static.
4194
4195 * read.c (pseudo_set): Better error message for difference of
4196 symbols in different frags.
4197
4198 * Makefile.in (check): Pass down some new variables, indicating
4199 pathname or program name for cc, nm, objdump.
4200
4201 * as.h (OUTPUT_FLAVOR): New macro.
4202 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
4203
4204 * configure.in: Initialize bfd_gas properly. Warn that ELF
4205 support is incomplete.
4206
4207Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4208
4209 * read.c (float_cons): Accept null pointer return from md_atof.
4210 * config/tc-m68k.c (md_atof): Return null for success.
4211 * config/tc-sparc.c (md_atof): Ditto.
4212
97a6070c
RP
4213Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
4214
4215 * doc/as.texinfo: formatting and comment cleanups; show SPARC
4216 alternative options in same style as other machines; simplify some
4217 conditional use; include GPL as separate file (from texinfo dir)
4218
4219 * doc/Makefile.in: (as.info) include directory containing GPL in
4220 makeinfo search path
4221
4222 * doc/h8.texi: new file; conditional settings for GAS manual
4223 on Hitachi chips
4224
4225Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
4226
4227 * doc/as.texinfo: mention SPARC architecture options.
4228
be2f6bd6
ILT
4229Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
4230
4231 * configure.in: Rearranged whitespace in per-host/per-target
4232 sections. Added hooks for dropping in HPPA support (not included
4233 yet). Separate out overrides of variables based on target format
4234 and bfd-gas selection from actual target-specific commands. Add
4235 error message for recognized but unsupported format name.
4236
349f20de
ILT
4237Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
4238
4239 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 4240 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
4241 want that.
4242
5316696f
DZ
4243Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4244
4245 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
4246 $(srcdir)/as.texinfo explicitly in several places
4247
8ac18b21
RP
4248Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
4249
132239bf 4250 * doc/Makefile.in: update dvi, clean targets for new source
8ac18b21
RP
4251 file structure
4252
d565311f
ILT
4253Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
4254
4255 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
4256 rather than undefining know.
8ac18b21 4257 * configure.in: Match ultrix*, not just ultrix.
d565311f 4258
0742a6fd
RP
4259Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
4260
4261 * doc/as.texinfo: converted conditional markup to use new
4262 Texinfo facilities, avoiding m4.
4263
4264 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
4265
4266 * doc/Makefile.in: recast doc configuration to use a link to an
4267 included texinfo file.
4268
4269 * doc/all.texi: settings for generic form of documentation.
4270
4271Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
4272
4273 * read.c (cons): Zero out frag when creating reloc.
4274
367fc835
ILT
4275Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
4276
84e4920f
ILT
4277 * config/tc-mips.c (gp_reference): Certain magic symbols can never
4278 be referenced off the GP register.
4279
367fc835
ILT
4280 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
4281 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
4282 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
4283
4284 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
4285 definition from other MIPS targets.
4286 * configure.in (mips-*-irix): Use emulation irix.
4287
dd4227d3
SC
4288Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4289
4290 * config/tc-h8500.c: Get relax size of branch instructions right,
4291 (get_operand): Parse @sp+ correctly.
4292
be2f6bd6
ILT
4293Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4294
4295 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
4296 COFF section header field.
4297
4298 * configure.in: Print error message if host or target is not
4299 supported.
4300
4301 * configure.in: If with-bfd-assembler, use obj-coff instead of
4302 obj-coffbfd.
4303
4304 * config/ho-generic.h: Include string.h.
4305
ed364bb6
ILT
4306Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
4307
0433135d
ILT
4308 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
4309 '$' as local, for any object file format.
4310
477b4b04
ILT
4311 * config/tc-mips.c (macro): Optimizations to branching code and a
4312 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
4313 Campbell).
4314
ed364bb6
ILT
4315 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
4316 * configure.in (mips-sgi-irix*): Set gas_host to irix.
4317
670a50eb
ILT
4318Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
4319
4320 * subsegs.c (subseg_new): Set output_section of new section.
4321 * as.c (perform_an_assemly_pass): Don't set output_section here.
4322 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
4323 since it has additional sections.
4324 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
4325 not bss_section.
4326 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
4327 ecoff_undefined field.
4328 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
4329 ecoff_undefined field.
4330 (add_file): If using stabs, just output a stabs symbol rather than
4331 creating a new fdr.
4332 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
4333 it with get_absolute_expression, rather than skipping it by hand.
4334 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
4335 than ECOFF line number information.
4336 (obj_ecoff_stab): Accept non-zero values for stabs line number.
4337 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
4338 to small, undefined and/or readonly sections if appropriate.
4339 Don't output symbol names containing \001 characters.
4340 (ecoff_frob_file): Make sure at least one fdr is output.
4341 * config/tc-mips.h: Define TC_MIPS.
4342 * config/tc-mips.c (g_switch_value): New static variable.
4343 (md_assemble): Set gp size of output BFD.
4344 (gp_reference): New function; returns 1 if expression can be
4345 accesssed via gp. Always returns 0 if not using ECOFF.
4346 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
4347 possible.
4348 (macro): Generate sequences using gp if possible.
4349 (md_parse_option): Ignore -EL and -EB. Parse -G.
4350 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
4351 (s_change_sec): Handle .rdata and .sdata for ECOFF.
4352 (s_extern): Mark symbol as external. Set ecoff_undefined field.
4353
2b1b5697
KR
4354Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4355
670a50eb
ILT
4356 * output-file.c (output_file_create): Don't call as_perror for
4357 filename rejected by application.
4358
4359 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
4360 the output file.
4361
4b061a2a
KR
4362 * doc/as.texinfo: Don't use @value in node names for the moment;
4363 references don't appear to work right.
4364
4478def8
KR
4365 * as.h (const, volatile): Put these definitions back, and use
4366 them.
4367
2b1b5697
KR
4368 * doc/as.texinfo: First pass at using new texinfo features --
4369 variables, conditional tests. Far from complete.
4370
4371Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4372
4373 * read.c: Temporary hack to handle some 64-bit constants. This
4374 should be redone later.
4375 (target_big_endian): Declare.
4376 (big_cons): If it's set, reverse order of bytes being copied.
4377 * config/tc-sparc.c (md_begin): Set target_big_endian.
4378
4379 * read.c (s_ignore): Delete declaration of is_end_of_line.
4380
4381 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
4382 forward pointers properly.
4383
e02eaa59
SC
4384Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4385
4386 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
4387 wasn't being stored into scnhdr.
4388 * config/obj-coffbfd.h: Add prototype of s_get_segment.
4389 * read.c (TC_START_LABEL): Default definition.
4390 (read_a_source_file): Use TC_START_LABEL macro to work out
4391 if a label has been seen.
4392
543d88e4
ILT
4393Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
4394
c39b3eba
ILT
4395 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
4396 the bottom (make expands variables in dependencies when the
4397 dependencies are read, not when they are used).
4398
543d88e4
ILT
4399 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
4400 a29k .bss section; the mondfe program doesn't like it.
4401
2b1b5697
KR
4402Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
4403
4404 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
4405 const.
4406 (current_architecture): Don't need initializer.
4407
4408Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4409
4410 * doc/none.m4: Define Z8000.
4411 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
4412 texinfo file before recreating it.
4413 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
4414 this directory.
4415 (srcdir): Delete second, bogus definition.
4416 (as.info): Look for as-*.texinfo in current directory rather than
4417 in $(srcdir).
4418 (as.dvi): Ditto.
4419 (dvi): New rule.
4420 * doc/configure.in: Create links to all as-*.texinfo files in the
4421 source directory, if that's not the current directory.
4422
4423 * configure.in (per-host): Accept MIPS host with BSD version
4424 number.
4425 (per-target): Classify i486 as i386. Use generic cpu_type instead
4426 of target_cpu in selecting format etc.
4427
4428 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
4429 * read.c (potable): Change .app-file to .appfile.
4430
4431 * config/ho-decstatn.h: Renamed from ho-decstation.h.
4432 * configure.in: Adjusted.
4433
4434 * config/obj-bfd-sunos.*: Unused; deleted.
4435
4436 * Makefile.in (version.c, vers-stamp): Deleted.
4437 (config.h): Define GAS_VERSION.
4438 * as.c (version_string): Deleted declaration.
4439 (main): Look for GAS_VERSION instead.
4440
4441 * doc/as.texinfo: Updated description of -a* (listing) options,
4442 and describe how to pass them through from gcc.
4443
4444 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
4445 process relocs if there aren't any relocs to process. Avoids
4446 malloc/free bug on SCO too.
4447
4448 * as.h: Move local include files below system include files, to
4449 avoid some redefinition complaints on some systems.
4450 (const, volatile): Don't need these conditionally defined if we
4451 use CONST and VOLATILE from ansidecl.h.
4452 (seg_name): Use CONST, not const.
4453
543d88e4
ILT
4454Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
4455
4456 * config/tc-mips.c: Reindented to GNU standards.
4457
2c19a57c
ILT
4458Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
4459
61001d96
ILT
4460 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
4461 (fixup_segment): Add a29k special case; the linker is not prepared
4462 to see a segment offset here.
4463
2c19a57c
ILT
4464 * app.c (do_scrub_next_char): Added new state, 10, modifying state
4465 9 to only keep a space in between identifier characters.
4466
afcc637a
DZ
4467Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
4468
2d4bef5e
DZ
4469 * Makefile.in: add dvi target; as-$(config).texinfo might live in
4470 srcdir, might be in objdir.
afcc637a
DZ
4471
4472 * doc/Makefile.in: dvi depends on as.dvi
4473
80c8fd72
DZ
4474Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4475
4476 * Makefile.in: add installcheck target
4477
1369949e
ILT
4478Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
4479
4480 * config/tc-mips.c (macro): Use $AT for any floating point load.
4481
63cdddad
KR
4482Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
4483
4484 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
4485 bignums, but don't emit error message.
4486
69498fa2
JW
4487Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
4488
4489 * Makefile.in (targ-cpu.o): Depend on config.h.
4490
f6a91cc0
ILT
4491Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
4492
4493 * app.c (do_scrub_next_char): Added new state, 9, to avoid
4494 dropping a space immediately following an identifier.
4495 * expr.c, write.c: Rewrote assert expressions to not use multiple
4496 lines; I don't think that can be done portably.
4497 * config/tc-mips.c (macro): Use $AT if target register is zero in
4498 load instruction, which it can be for a floating point load.
4499
a36f6645
ILT
4500Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
4501
3d3c5039
ILT
4502 * write.c (write_contents): Compute the relocs before writing out
4503 the section contents.
4504 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
4505 symbol table and values right.
4506 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
4507 with $L is local.
4508 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
4509 by the section vma.
4510
4511 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
4512 z8k-opc.h, not z8k.h.
4513
a36f6645
ILT
4514 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
4515 symbol.
4516
2a697fa4
DZ
4517Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4518
4519 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
4520
f2f7d044
ILT
4521Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
4522
4523 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
4524 to be on a single line.
4525
ed099874
KR
4526Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4527
4528 * Makefile.in (config.h): Create file, writing out definitions of
4529 target cpu, alias, and canonical name.
4530 (ALL_CFLAGS): No longer define TARGET_CPU.
4531
4532 * Makefile.in (check): Print a message, instead of quitting
4533 silently.
4534
4535 * as.c (main): Don't catch any signals, for now.
4536
4537 * version.c: Deleted.
4538 * Makefile.in: Generate it, putting in only the version number
4539 itself.
4540 (VERSION): New variable.
4541 * as.c: Include config.h.
4542 (main): Reformatted version string. Include target alias. Don't
4543 print if not requested (i.e., unknown -v argument).
4544
4545 * as.c (stralloc): Deleted.
4546 (main): Call strdup instead.
4547
4548 * configure.in: Handle all 68300 series chips.
4549 * config/tc-m68k.c: Include config.h.
4550 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
4551 series cpus as defaults.
4552 (md_parse_option): Accept some m68300 series CPUs as defaults.
4553
4554Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4555
4556 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
4557 not already defined.
4558 (main, got_sig): Use them.
4559 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
4560 values.
4561
4562Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
4563
4564 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
4565 support.
4566
4567 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
4568 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
4569 (struct loc, struct proc, struct file): Moved to tc-mips.c within
4570 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
4571 * config/tc-mips.c: Rearranged for ECOFF support. Added
4572 prototypes for all static functions. Moved existing minimal
4573 debugging format support info #ifndef OBJ_ECOFF blocks.
4574 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
4575 does not support a non sign extended high 16 bits reloc. Adjusted
4576 all callers accordingly.
4577 (tc_get_register): Renamed from get_register, and made non-static.
4578
4579 * config/mips-big.mt, config/mips-lit.mt: New files. Define
4580 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
4581 respectively.
4582 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
4583 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
4584 obj_format ecoff and gas_target mips-lit or mips-big.
4585
c5d4bc88
KR
4586Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
4587
4588 * version.c: Bump to version 2.0.1.
4589
fefba3a5
ILT
4590Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
4591
4592 * write.c (chain_frchains_together): Check that seg_info (section)
4593 is not NULL.
4594 (write_object_file): Call obj_frob_file after setting the symbols,
4595 not before.
4596
2b1b5697
KR
4597Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
4598
4599 * Version 2.0 released.
4600
fefba3a5
ILT
4601Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4602
4603 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
4604
4605Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
4606
4607 * read.h: Define stringer here.
4608 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
4609 places.
4610
bf449293
SC
4611Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4612
4613 * read.c (s_space): Multiply repeat count by mult, not fill.
4614
9471a360
KR
4615Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
4616
4617 * read.c: Include ctype.h.
4618
1101551c
KR
4619Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4620
4621 Patches from Eric Youngdale:
4622 * make-gas.com: Find obstack.obj if it's not in the current
4623 directory.
4624 * read.c (s_ignore): Don't declare is_end_of_line. It's
4625 redundant, and triggers a VMS gcc compiler bug.
4626
4627 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
4628 current segment as an argument. (Ignored in all cases but VMS.)
4629 All callers and definitions changed.
4630
5e4cddb7
ILT
4631Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
4632
4633 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
4634 case compile again.
4635
f3ca2a64
KR
4636Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
4637
4638 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
4639 so "~0x80" won't be rejected.
4640
4641 * config/obj-elf.c: No longer include elf/reloc.h.
4642 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
4643 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
4644 routines.
4645 (obj_elf_xstab): New routine.
4646 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
4647 argument to s_ignore. Put "#if 0" around unused code.
4648 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
4649 Call elf_xstabs for .stabs and .xstabs operators.
4650
4651 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
4652
4653 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
4654 present.
4655
4656 * configure.in: mips-bsd configuration was missing format spec.
4657 Should use aout.
4658
4659 * Makefile.in (Makefile): Depends on configure.in.
4660
4661 * config/tc-mips.c (append_insn): Don't check for alignment of
4662 frag in memory; alignment of instructions in section is a separate
4663 matter.
4664
4665 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
4666 C availability.
4667
4668 * listing.h: Always provide function declarations, not macros, so
4669 pcc won't lose.
4670
7687d89b
JG
4671Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
4672
4673 * CONTRIBUTORS: Update Gilmore entry.
4674
4675Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4676
4677 * frags.c (frag_init): New function.
4678 (zero_address_frag, bss_address_frag): Now initialized at run
4679 time.
4680 * as.c (main): Call frag_init.
4681
160b7f0f
ILT
4682Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
4683
4684 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
4685 Don't unget ch2 if we didn't get it.
4686
0cca30f3
KR
4687Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
4688
4689 * doc/Makefile.in (TEXIDIR): Updated for new layout.
4690
4691 * config/tc-sparc.c (s_common): Add support for ELF version.
4692 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
4693 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
4694 New macros.
4695 (md_convert_frag): New macro.
4696
4697 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
4698 symbol, fix the offset so "+2" isn't required.
4699
4700 * config/tc-i960.c (line_comment_chars, line_separator_chars):
4701 Define as common/bss.
4702 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
4703 initializers are sufficient.
4704
4705 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
4706 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
4707 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
4708 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
4709 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
4710 "IGNORE_DEBUG" conditional, since both branches are identical.
4711 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
4712 referencing symbol structure members.
4713 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
4714
4715 * as.h (struct frag): Reordered a couple of fields for better
4716 packing.
4717
4718 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
4719 section info.
4720 (write_contents) [BFD_ASSEMBLER]: New function.
4721 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
4722 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
4723 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
4724 (fixup_segment): Make sure common-section symbols get treated the
4725 same as undefined symbols.
4726 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
4727 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
4728 section info.
4729 * write.h (fix_new): Update prototype.
4730
4731 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
4732 md_section_align, md_undefined_symbol): Don't provide prototypes
4733 if these are defined as macros.
4734 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
4735 section passed.
4736
4737 * symbols.c (symbol_new): Argument NAME is now pointer to const.
4738 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
4739 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
4740 BFD symbol.
4741 (colon): Display other/desc fields of redefined symbol only if
4742 S_GET_OTHER and S_GET_DESC are defined.
4743 (symbol_make): Argument NAME is now pointer to const.
4744 (symbol_find, symbol_find_base): Likewise.
4745 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
4746 * symbols.h: Fix prototypes for new const arguments. Add
4747 prototypes for BFD_ASSEMBLER S_* functions.
4748
4749 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
4750 for changing to an existing section.
4751 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
4752 called by subseg_new and subseg_set.
4753 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
4754 given section name and subseg number.
4755 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
4756 new section/subsection.
4757
4758 * read.c: Don't include ctype.h.
4759 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
4760 for now; should be machine-dependent.
4761
4762 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
4763 targets, forcing BFD use.
4764
4765Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4766
4767 * config/tc-sparc.c: Use PARAMS macro for static function
4768 declarations. Use BFD_RELOC_ macros everywhere, with
4769 compatibility macros declared for non-BFD mode.
4770 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
4771 instead of enum reloc_type.
4772 (emit_sparc_reloc): Commented-out function deleted.
4773 (md_convert_frag): Deleted.
4774 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
4775 (md_apply_fix): Changed calling sequence (conditionally) for BFD
4776 version.
4777 * config/tc-sparc.h (md_convert_frag): New macro.
4778
4779 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
4780 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
4781 of referencing fields directly.
4782
4783 * write.c (cvt_frag_to_fill): New function; extracted from
4784 write_object_file.
4785 (write_object_file) [! BFD_ASSEMBLER]: Call it.
4786 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
4787 and set its size and flags.
4788
4789 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
4790 fields with BFD equivalents. Turn on back-pointers, and add
4791 target-specific fields at end.
4792
4793Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
4794
4795 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
4796 (write_object_file): Set it here instead, so that fixup_segment
4797 can see the correct value.
4798
4799Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4800
4801 * write.c (write_object_file): Check for errors and warnings and
4802 bail out before processing contents.
4803 (chain_frchains_together_1): New function, does most of the work
4804 of remove_subsegs.
4805 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
4806 (remove_subsegs) [! BFD]: Call it.
4807 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
4808 structures and routines.
4809
4810 * config/obj-elf.*: New files.
4811
4812 * config/mips.mt, config/rs6000.mt: Deleted.
4813
4814 * config/h8300.mt: Don't specify compiler here.
4815
7687d89b 4816 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
4817 not the h8300 one.
4818 * config/tc-z8k.h: Comment fix.
4819
4820 * write.c: Reordered some functions for better inlining.
4821 (fixup_segment): Linkrelax code is no longer conditional on
4822 TC_I960.
4823
4824Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4825
4826 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
4827 obj-coffbfd.h}: support for the H8/500
4828
4829Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4830
4831 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
4832 * write.c (write_object_file): Not here.
4833 (fix_new): Initialize fx_addnumber.
4834
4835 * listing.c: Don't include target-cpu.h explicitly, since as.h
4836 includes it.
4837
4838Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
4839
4840 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
4841 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
4842 (struct fix): Reordered fields for compactness and efficiency.
4843 Converted some logical fields to 1-bit fields.
4844
4845 * config/obj-aout.h: Use PARAMS.
4846 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
4847 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
4848
4849 * read.c: Don't include listing.h; as.h includes it. Removed
4850 DONTDEF code.
4851 [BFD_ASSEMBLER]: Include subsegs.h.
4852 (old_buffer, new_broken_words): Default initialization is
4853 sufficient.
4854
4855 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
4856 to 0, define stdoutput.
4857 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
4858 Call bfd_set_arch_mach.
4859 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
4860 bfd_close_all_done. Call bfd_perror on failure.
4861 (output_file_append) [BFD_ASSEMBLER]: Don't define.
4862
4863 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
4864
4865 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
4866 if not MANY_SEGMENTS. Define new field bfd_section if
4867 BFD_ASSEMBLER.
4868 (seg_info): New macro.
4869
4870 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
4871 variables, and some irrelevant comments.
4872
4873 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
4874 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
4875 * configure.in: Permit --with-bfd-assembler now, with a warning.
4876 Variable need_bfd is now a boolean, as is new variable bfd_gas.
4877 Set BFDDEF and BFDLIB in Makefile when appropriate.
4878
4879 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
4880 (main): Refer to flag_always_generate_output instead of
4881 flagseen['Z'].
4882
4883 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
4884 (*_section) [BFD_ASSEMBLER]: Define them.
4885 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
4886 set section flags when appropriate.
4887 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
4888 section is not absolute, undefined, or an assembler internal one.
4889 (absolute_section, undefined_section): Always define.
4890 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
4891 switch statements into if-else trees.
4892 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
4893 SEG_BSS and SEG_DATA.
4894
4895 * as.h (frag_now_fix): New macro.
4896 * symbols.c (colon): Use it.
4897
4898Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
4899
4900 * config/tc-mips.c: Added mips support for mips-dec-bsd.
4901 * config/tc-mips.h: Added mips support for mips-dec-bsd.
4902 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
4903 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
4904 * configure.in: Added mips support for mips-dec-bsd.
4905 * atof-generic.c: Define TRUE and FALSE if not defined.
4906
4907Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4908
4909 * version.c: Bumped version number to 1.93.05.
4910
4911Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4912
4913 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
4914 (obj_emit_lineno): Don't need return at end of void function.
4915 (obj_symbol_new_hook): Ditto.
4916
4917 * config/tc-m68k.c: Removed some unused code.
4918 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
4919
4920 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
4921 offset field is set.
4922
4923Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4924
4925 * config/tc-sparc.c (architecture_requested, warn_on_bump,
4926 md_relax_table): Use default zero initialization.
4927 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
4928 latter, instead of selecting with preprocessor conditionals.
4929
4930Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4931
4932 * configure.in: recognise all sparclite variants
4933
4934Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4935
4936 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
4937 accidentally changed to use subseg_change where it should have
4938 been subseg_new.
4939
6c5f9998
KR
4940Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4941
0bd77bc4
KR
4942 * expr.c (operand): If character other than comma or newline is a
4943 logical end-of-line character, use the newline case.
0cca30f3
KR
4944 From Eric Youngdale:
4945 (operand): Set X_add_number field for floating-point numbers.
4946 (operand): Treat zero byte as end-of-operand.
0bd77bc4 4947
6c5f9998
KR
4948 * configure.in (per-target): Look for with_bfd_assembler option.
4949 For now, only accept "no", until the merge is done.
4950
0cca30f3
KR
4951 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
4952 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
4953 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
4954 * read.c: Finish conversion to S_* macros in the VMS only
4955 parts of the program. Add "const" modifier to hex_value.
4956 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
4957 "ifdef OBJ_VMS".
4958 * expr.c: Add "const" modifier to hex_value.
4959 * symbols.c: Finish conversion to S_* macros in the VMS only
4960 parts of the program. Add "const" modifier to
4961 md_[long,short]_jump_size. Remove declaration of const_flag
4962 (which will be declared in obj-vms.h).
4963 * write.c: Add "const" modifier to md_[long,short]_jump_size.
4964 Fix arguments to VMS_write_object_file.
4965 * config-gas.com: New file. Script for VMS systems to set up the
4966 configuration to build gas for VMS, and create config.status.
4967 * make-gas.com: Redone to work with new scheme.
4968 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
4969 stabs directives.
4970 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
4971 will swap bytes if needed on a big endian system. Use throughout
4972 as needed.
4973 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
4974 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
4975 types of malformed stabs. Change parsing algorithm so that we are
4976 more certain of having all of the information that we need on hand.
4977 * obj-vms.c (final_forward_reference): New function, used to help
4978 resolve the data types of as many struct elements as possible
4979 when some part of the struct is not fully defined by the compiler.
4980 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
4981 stabs directives.
4982 * obj-vms.c (VMS_write_object_file): Define all vtable psects
4983 as symbols as well in the object file. Look for external functions
4984 that start with "__vt.", and turn them into variables, since the
4985 g++ compiler is incapable of doing this.
4986 * tc-vax.c: Add '1' option for backward compatibility with older GCC
4987 versions.
4988 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
4989 * input-scrub.c (as_where): Fix bug where as would crash if we did not
4990 have the name of the source file yet.
4991 * config/ho-vms.h: define HO_VMS, not HO_VAX.
4992
9d76a195
KR
4993Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
4994
4995 * read.c (s_data): Always use "data_section", since it'll map to
4996 SEG_DATA or SEG_E1 if needed.
4997 (s_lcomm): Likewise with bss_section.
4998 (s_fill): Use memset, not bzero.
4999
5000Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
5001
5002 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
5003 handling GDB symbol table data.
5004
5005 * config/obj-aout.h (segment_name): Delete definition.
5006 (seg_name): Delete declaration.
5007 * config/obj-bout.h (segment_name, seg_name): Ditto.
5008 * config/obj-vms.h (segment_name, seg_name): Ditto.
5009 * config/obj-coff.h (segment_name): Ditto.
5010 * config/obj-coffbfd.h (segment_name): Ditto.
5011
5012 * Changes for BFD_ASSEMBLER:
5013 * obj.h (obj_crawl_symbol_chain): Declare only if not
5014 BFD_ASSEMBLER.
5015 (obj_header_append, obj_pre_write_hook): Ditto.
5016 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
5017 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
5018 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
5019 otherwise, use seg_name array.
5020 (seg_name): Declare only if not BFD_ASSEMBLER.
5021 (section_alignment): Declare only if not BFD_ASSEMBLER.
5022 (big_section, reg_section, pass1_section, diff_section,
5023 absent_section, text_section, data_section, bss_section): If
5024 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
5025 mapping to segT enum values.
5026 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
5027 if these are used or defined, if BFD_ASSEMBLER.
5028 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
5029 subseg_new split into two functions.
5030 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
5031
5032 * as.h (volatile): Don't define if already defined.
5033 (had_errors, had_warnings): Provide prototypes for ANSI C even if
5034 NO_STDARG.
5035 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
5036 declare with format attribute for -Wformat checking.
5037
85825401
ILT
5038Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
5039
5040 * app.c, config/tc-*.c: Don't include read.h, since it is already
5041 included by as.h.
5042
5043 * These are based on patches from Minh Tran-le
5044 <mtranle@paris.intellicorp.com>.
5045 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
5046 obj_format coffbfd and gas_target i386coff for target.
5047 (i[34]86-*-isc*): New host (uses sysv).
5048 * config/i386aix.mt: Removed (no longer used).
5049 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
5050 (MINUS_G): Removed.
5051 (LDFLAGS): Added, defined as -shlib.
5052 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
5053 * config/te-sco386.h (LOCAL_LABEL): Don't define.
5054 (DOT_LABEL_PREFIX): Define.
5055 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
5056 name rather than L0\001.
5057 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
5058 local_bss_counter.
5059 * symbols.c, symbols.h (local_bss_counter): Removed.
5060 * write.c (write_object_file): bss no longer uses
5061 local_bss_counter. Pass correct data and bss size to
5062 VMS_write_object_file.
5063 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
5064 argument, rather than using local_bss_counter.
5065 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
5066 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
5067 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
5068 (size_section): Restored sanity check.
5069 (do_relocs_for): Base section address on s_paddr rather than
5070 computing it. Adjust a29k R_IHIHALF special case to account for
5071 section paddr (used to require paddr to be zero). If there are no
5072 reclos, set s_relptr to 0. Set relocation size in object_headers.
5073 (fill_section): Always set s_vaddr here, removing
5074 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
5075 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
5076 Set STYP_INFO for .comment.
5077 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
5078 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
5079 (crawl_symbols): Handle 8 character section name correctly. Use
5080 H_{SET,GET}_* macros.
5081 (do_linenos_for): Set lineno size in object_headers.
5082 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
5083 set s_vaddr here. If string_byte_count remains 4, set it back to
5084 0, and only write strings out if there are some. Call
5085 fill_section before do_relocs_for and do_linenos_for.
5086 (obj_coff_section): Handle optional quoted second argument giving
5087 section characteristics.
5088 (obj_coff_bss): Added to handle .bss.
5089 (obj_coff_ident): Added to handle .ident (puts string in .comment
5090 section).
5091 (obj_coff_lcomm): Put common symbols in .bss, not .data.
5092 (fixup_mdeps): Change to segment. Call frag_wane after
5093 md_convert_frag.
5094 (fixup_segment): Explicitly check S_IS_COMMON before making 386
5095 adjustment (already happened only for common symbols, but this is
5096 clearer).
5097 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
5098 * config/tc-i386.c (s_bss): Don't use if I386COFF.
5099 (md_pseudo_table): Ignore .optim and .noopt.
5100 (tc_coff_sizemachdep): New function.
5101 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
5102 compatibility.
5103 (LOCAL_LABEL): Removed definition.
5104 (DOT_LABEL_PREFIX): Defined.
5105
4539aa02
KR
5106Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
5107
6d331d71
KR
5108 * app.c (app_push): Use memcpy, not bcopy.
5109 (do_scrub_next_char): For \", return " not '.
5110 (symbol_chars): Now const.
5111
4539aa02
KR
5112 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
5113 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
5114
5115 * config/obj-coff.h: Don't use #elif.
5116
5117 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
5118 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
5119
3eb802b5
ILT
5120Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
5121
5122 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
5123 already defined.
5124
be06bdcd
SC
5125Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5126
5127 * app.c (do_scrub_begin): allow single quote strings if so
5128 configured.
5129
5130 * config/*z8k*: checkpoint
5131
5132Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
5133
5134 * read.c (read_a_source_file): avoid calling xmalloc (0).
5135
016e0d42
ILT
5136Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
5137
5138 * listing.c: Call xmalloc, not malloc; don't declare malloc.
5139
5140 * Changes to support SCO 3.2v4:
5141 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
5142 SEG_BSS, fill with NOP_OPCODE.
5143 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
5144 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
5145 using ZERO_BASED_SEGMENTS.
5146 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
5147 never set segment address for SEG_E2 (.bss) and don't write out
5148 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
5149 (obj_coff_endef): Don't merge labels or symbols awaiting forward
5150 definitions, and don't merge tags with non-tags. Check for .bf
5151 rather than just checking whether the second character is b and
5152 the third character is f.
5153 (obj_coff_val): gcc can generate values which we don't handle
5154 correctly; discard information for now, since it only affects the
5155 debugging information.
5156 (tag_find_or_name): Don't insert tags in the symbol table.
5157 (yank_symbols): Don't merge labels.
5158 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
5159 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
5160 set segment address if ZERO_BASED_SEGMENTS.
5161 (obj_coff_section): Accept and ignore a trailing quoted string, as
5162 used in AT&T i386 syntax.
5163 (fixup_segment): Take segment as argument. On the i386, adjust PC
5164 relative addends by the segment vaddr.
5165 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
5166 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
5167 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
5168
db33220f
KR
5169Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
5170
016e0d42
ILT
5171 * config/obj-coffbfd.c: Include libcoff.h.
5172
db33220f
KR
5173 * version.c: Now version 1.93.
5174
dde624ef
KR
5175Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
5176
db33220f
KR
5177 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
5178 power-of-two alignment for .align.
5179
dde624ef
KR
5180 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
5181 and leave everything else alone.
5182
5183Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5184
5185 * Makefile.in (as.new): Don't bother saving as.old.
5186
5187 * write.c: Conditionalize on OBJ_VMS, not VMS.
5188 (magic_number_for_object_file): Don't define if OBJ_VMS.
5189
5190 * config/obj-vms.c: Changes for traditional C.
5191
7f2cb270
KR
5192Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
5193
5194 * config/ho-generic.h (malloc, realloc): Declare.
5195
5196 * Lots of comment/whitespace changes.
5197
5198 * write.h (struct fix): Some fields reordered, narrowed.
5199
5200 * read.c (MASK_CHAR): Define using C types, not magic number.
5201
5202 * as.c, input-file.c: Deleted some unused code.
5203
5204 * app.c, as.h: Doc fix.
5205
5206 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
5207
5208 * as.h (xmalloc): Argument is long.
5209
5210 * xmalloc.c (error): Remove declaration; as.h takes care of it.
5211
0cca30f3
KR
5212 * doc/as.texinfo: Regrouped documentation of some command-line
5213 options. Updated options documentation for m68k. Some minor
5214 wording/punctuation changes.
5215
7f2cb270
KR
5216Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5217
5218 * configure.in: Accept target OS "vms".
5219
5220 * symbols.c: Merged ANSI and non-ANSI function decls, using
5221 PARAMS macro.
5222
5223 * xmalloc.c: Just include as.h, don't bother trying to figure out
5224 other header files.
5225
5226 * strstr.c, strerror.c: Deleted.
5227 * Makefile.in: Deleted references.
5228
5229 * config/tc-ns32k.c: Don't include header file for string
5230 declarations; leave that to ho-*.h.
5231
5232Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
5233
5234 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
5235 imported from FSF sources.
5236
5237 * messages.c (strerror): Declare unconditionally.
5238
5239 * as.h: Delete alloca and register definitions.
5240
5241 * config/atof-ieee.c (mask): Now const.
5242
5243 * obstack.c, obstack.h: Deleted.
5244
5245 * as.h (flag_readonly_data_in_text): New flag.
5246 * as.c (main): Set it for -R.
5247
5248 * as.h (flag_suppress_warnings): New flag.
5249 * as.c (main): Set it for -W.
5250 * messages.c (as_warn): Check it instead of flagseen['W'].
5251
5252 * as.h (flag_always_generate_output): New flag.
5253 * as.c (main): Set it for -Z.
5254
5255 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
5256 * config/tc-a29k.h: Ditto.
5257 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
5258 macros.
5259
5260 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
5261 macro.
5262 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
5263 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
5264 write.h: Likewise.
5265 * read.c: Likewise.
5266
5267 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
5268 xrealloc from xrealloc.c.
5269 * xrealloc.c: Deleted.
5270 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
5271
5272 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
5273 or vms ho- files.
5274
5275 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
5276
5277 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
5278 don't initialize it with NULL.
5279
5280 * config/ho-vax.h (M_VAX): Deleted; was unused.
5281
5282 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
5283 New files imported from FSF version, contributed by Eric Youngdale.
5284 * README-vms-dbg, config/vms: Deleted.
5285
5286 * ChangeLog, config/ChangeLog: Merged.
5287
5288 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
5289 version.
5290
5291 * input-file.c (input_file_open): Eliminate call to setvbuf.
5292 [USG] (setbuffer): Deleted macro.
5293
6efd877d
KR
5294Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
5295
5296 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 5297 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
5298
5299 * configure.in: No te-386bsd.h file exists; don't try to use it.
5300
7f2cb270
KR
5301 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
5302
5303 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
5304 could be doing emulation.
5305
0cca30f3 5306Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 5307
0cca30f3
KR
5308 z8000 documentation
5309 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
5310 all modified.
5311
6efd877d
KR
5312Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
5313
5314 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
5315
5316 * subsegs.h: add extern to segment_info declaration.
5317
5318 * read.h: added extern declarations for comment_chars,
5319 line_comment_chars, and line_separator_chars.
5320 read.c, app.c: removed definitions of comment_chars,
5321 line_comment_chars, and line_separator_chars.
5322
7f2cb270
KR
5323 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
5324 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
5325 the register name.
5326 (insert_reg): put REGISTER_PREFIX before register names before
5327 putting them in the symbol table.
5328 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
5329 M68KCOFF.
5330
5331 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
5332 section.
5333
5334 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
5335 comment_chars, line_comment_chars and line_seperator_chars
5336 consistently const, and always initialized them. Included read.h.
5337
5338Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
5339
5340 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
5341 constant will not fit in an immediate field.
5342 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
5343
5344Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
5345
5346 * obj-coff.c (callj_table): Delete global variable.
5347 (obj_emit_relocations): Define it locally here, and only if
5348 TC_I960 is defined.
5349
5350 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
5351 (m68k_ip): Don't warn about bignum used as float bit-pattern.
5352
5353 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
5354 with a single set using PARAMS macro.
5355
5356 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
5357 of 2.
5358
5359 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
5360
5361 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
5362 so widening works consistently.
5363
6efd877d
KR
5364Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
5365
5366 * version.c: Put conditional "const" before version_string, not
5367 before dummy function for VMS. Now version 1.91.03.
5368
5369 * app.c (do_scrub_next_char): Need double-\ before `000' to show
5370 printed rep of null character.
5371
7f2cb270
KR
5372Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
5373
5374 * obj-coffbfd.c (write_object_file): check return value of
5375 bfd_close_all_done.
5376
559d9aac
ILT
5377Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
5378
7f2cb270
KR
5379 * Support for i386-sysv.
5380 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
5381 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
5382 be used to set them all to zero as was done before.
5383 (fill_section): segment addresses now set in write_object_file.
5384 (fill_section): Don't set STYP_NOLOAD for .bss section.
5385 (fixup_segment): 386 uses strange common symbol format.
5386 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
5387 compatibility with SVR3.2 linker.
6efd877d
KR
5388 * configure.in: i386-sysv and i386-sco use coffbfd.
5389
559d9aac
ILT
5390 * app.c (do_scrub_next_char): discard whitespace after a label.
5391
0f8b9790
DZ
5392Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5393
5394 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
5395 hosts, use the sysv configuration for solaris2
5396
7f2cb270
KR
5397Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5398
132239bf 5399 fix i960+non-bfd coff bit rot.
7f2cb270
KR
5400 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
5401 support for C source listings. (obj_coff_endef): look in the right
5402 part of the symbol for the symbol name
5403
5404 * tc-m68k.c (get_num): make it work for all segments, not just the
5405 first three.
5406
984cf2d7
ME
5407Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
5408
5409 * configure.in: recognize i386-*-bsd emulation.
5410
5411Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5412
5413 * configure.in: use the cpu-vendor-os triple for host and target
5414
7f2cb270
KR
5415Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5416
5417 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
5418 * tc-z8k.c: lots of bug fixes
5419
5420Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
5421
5422 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
5423 #elif, since it is not supported by old compilers.
5424 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
5425 couple of expressions in tc-m68k.c.
5426
984cf2d7
ME
5427Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5428
5429 * read.c (cons): If NO_RELOC is defined, use it.
5430
7f2cb270
KR
5431 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
5432
5433Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
5434
5435 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
5436 local labels to start with a .) and set REGISTER_PREFIX to %.
5437 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
5438
5a0fc1d4
JG
5439Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
5440
5441 * messages.c: Comment changes.
5442
4959cb7b
KR
5443Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
5444
5445 * as.h: Test if __STDC__ is defined only, don't test its value.
5446 * messages.c: If __STDC__ is not defined, define NO_STDARG.
5447
5e9d510e
BK
5448Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
5449
5450 * listing.c (debugging_pseudo): Add stabs and stabn as things to
5451 ignore.
5452
7f2cb270
KR
5453Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
5454
5455 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
5456 sections starting from zero, rather than making them consecutive.
5457 This makes subsequent reloc calculations easier, esp if the object
5458 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
5459 allocate lcomm in .data rather than in .bss. It seems that some
5460 tools can't cope with a non-zero sized bss before linkage.
132239bf 5461
7f2cb270
KR
5462Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5463
5464 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
5465 throughout. That enum no longer means what we thought it meant.
5466
5467 * tc-m68k.c (md_assemble, md_parse_option): Handle new
5468 "-mno-688[58]1" options.
5469
5470 * tc-m68k.c: Added CPU32 support.
5471
5472Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5473
5474 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
5475
569dac15
JW
5476Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
5477
5478 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
5479 Change LIBDEPS dependence to LIBS.
5480
efbfb612
ILT
5481Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
5482
5483 * Makefile.in (install): if $(tooldir) exists, install as in
5484 $(tooldir)/bin.
5485
987b1491
ILT
5486Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
5487
ca5e9d49
ILT
5488 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
5489 .word is < -32768 or > 32767. The -J flag causes the error to be
5490 ignored. This is to catch over-sized switches generated by gcc on
5491 systems which don't support the broken .word hack.
5492 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
5493 write.c (fixup_segment): check for signed .word overflow if
5494 WARN_SIGNED_OVERFLOW_WORD.
5495
987b1491
ILT
5496 * write.c (fixup_segment): fixed missing parens in expression
5497 checking for byte or word overflow.
5498
7f2cb270
KR
5499 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
5500 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
5501 WARN_SIGNED_OVERFLOW_WORD.
5502
5503 * obj-coffbfd.c (fixup_segment): fixed missing parens in
5504 expression checking for byte or word overflow.
5505
5506Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5507
5508 Support for i386 coff
132239bf 5509 * obj-coffbfd.h : added stuff
7f2cb270
KR
5510 * tc-i386.c (tc_coff_fix2rtype): new function
5511 * tc-i386.h : new coff defines
5512
b1520b1f
ILT
5513Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
5514
5515 * input-scrub.c (input_scrub_push): call input_file_begin, not
5516 input_scrub_begin.
5517 messages.c (as_perror): print ": " between the passed in error and
5518 the strerror, like perror does.
5519
b53ccaac
ILT
5520Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
5521
5522 * Makefile.in: use gas_target instead of modifying target_cpu.
5523 From Steve Chamberlain:
5524 Makefile.in: Handle m68*-*-coff*.
5525 read.c, read.h: add mult argument to s_space
5526
7f2cb270
KR
5527 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
5528 Motorola and MIT syntax; gas can now assemble either type of
5529 file.
5530 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
5531 From Steve Chamberlain:
5532 m68kcoff.mt: for m68k COFF.
5533 obj-coffbfd.c: (fixup_mdeps) added
5534 (size_section) removed bad sanity check
5535 (fill_section) added rs_machine_dependent case
5536 (write_object_file) call fixup_mdeps
5537 (fixup_segment) set fx_subsy to 0.
5538 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
5539 handle m68k.
5540 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
5541 pseudo ops.
5542
db4d20e5
KR
5543Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5544
5545 * Makefile.in (LIBS): Include opcode library.
5546
e53ab768
KR
5547Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
5548
5549 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
5550 including zero are accepted, pass +0.0.
5551
7e10f53c
ILT
5552Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
5553
5554 * Makefile.in: map "as" through program_transform_name when
5555 installing.
5556
0cca30f3
KR
5557 * doc/Makefile.in: map "as" through program_transform_name when
5558 installing.
5559
b0952e12
JW
5560Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
5561
5562 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
5563
7f2cb270
KR
5564Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
5565
5566 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
5567 tc-i960.c (md_ri_to_chars): Always output bout object file in
5568 little endian byte order (used to use endianness of host).
5569
b2f221a9
KR
5570Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5571
5572 * config/tc-m68k.c (init_table): Now const. Always include 68851
5573 data, so that "bc" is available to 68040 cache instructions.
5574 Added "tt0", "tt1", and 68ec030 variants.
5575 (md_assemble): Complain if 68000 (only) and 68881 are specified.
5576 (enum _register): Added TT0, TT1.
5577 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
5578 line number correctly in "internal error" messages. Don't print
5579 architecture-mismatch message for operand errors.
5580
5581 From Colin Smith (colin@wrs.com):
5582 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
5583 than install_operand.
5584
ab737e51
SC
5585Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5586
5587 * listing.c (buffer_line): rewind to the start of include
5588 files, they might be included twice.
5589
7f2cb270
KR
5590 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
5591
7121231f
ILT
5592Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
5593
5594 * Makefile.in: defined TARGET_CPU for C code so that it can choose
5595 one element of a family.
5596
7f2cb270
KR
5597 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
5598
5599 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
5600 so that we can assemble hand-written libgcc code.
5601
4772861e
KR
5602Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
5603
5604 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
5605 has already been formatted (but may still contain %-characters).
5606 (as_bad): Likewise.
5607
7f2cb270
KR
5608Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
5609
5610 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
5611 written with indirection on the last two operands, which can be
5612 either data or address registers. Added a new operand type 'r'
5613 which accepts either register type. Added '(' to notend stuff in
5614 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
5615
09952cd9
KR
5616Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
5617
5618 * as.h (enum _relax_state): Start off at one, not zero, to better
5619 catch uninitialized-variable errors.
5620 (linkrelax): Declare new variable.
5621
5622 * messages.c (warning_count, error_count): Default initializer is
5623 sufficient.
5624
5625 * write.c: Merged some declarations, using PARMS macro.
5626 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
5627 data_last_frag): No longer static.
5628 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
5629 defined, call it. Change segments before calling fixup_segment.
5630 (relax_align): If linkrelax, provide extra padding.
5631
5632 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
5633 their not having symbols associated.
5634
5635 * tc-i960.c (norelax, instrument_branches): Default initializer is
5636 sufficient.
5637 (linkrelax): Delete variable definition.
5638 (mem_fmt): Call fix_new with NO_RELOC.
5639 (tc_bout_fix_to_chars): Handle alignment relocs.
5640 (i960_handle_align): New function.
5641 * tc-i960.h (linkrelax): Delete declaration.
5642 (HANDLE_ALIGN): New macro; calls i960_handle_align.
5643 (NEED_FX_R_TYPE, NO_RELOC): New macros.
5644
a457f4d9
KR
5645Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
5646
5647 * config/sparc.mt: New file. Grab sparc opcode table from bfd
5648 library.
5649
4b857710
ILT
5650Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
5651
5652 * Makefile.in: always create installation directories. Removed
5653 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
5654 FLAGS_TO_PASS to recursive makes.
5655
0cca30f3
KR
5656 * doc/Makefile.in: always create installation directories.
5657
f7e9bc5a
SC
5658Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5659
5660 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
5661 being used with args swapped, causing occasional lossage when
5662 refilling buffers after an include file.
5663
c1c28543
KR
5664Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
5665
5666 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
5667 version. Discard bogus DONTDEF version.
5668 (as_warn, as_bad, as_fatal): Likewise.
5669
2e20e59a
KR
5670Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
5671
5672 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
5673 selected architecture, print a message saying so and listing what
5674 processors support it, rather than saying "operands mismatch".
5675
c8c7e0bf
KR
5676Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
5677
5678 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
5679
5680 * config/ho-rs6000.h (M_RS6000): Don't define it.
5681 (free): Declare it.
5682 (BROKEN_ASSERT): Define it if not __STDC__.
5683
7f2cb270
KR
5684Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
5685
5686 * sparc.mt: New file.
5687
5688Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
5689
5690 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
5691 if TN_SUN3; otherwise align to 2**N-byte bounary.
5692
7fd3560a
SC
5693Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5694
5695 * read.c (s_fill): make the .fill size clamped error a warn and
5696 fix bug where 0's were always placed.
5697
7f2cb270
KR
5698 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
5699 two bytes of any constant with 0xff:
5700
62594bd7
SC
5701Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5702
5703 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 5704 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 5705
7f2cb270
KR
5706Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
5707
5708 * tc-m68k.c (try_index): Error if index scaling specified and
5709 assembling for an older CPU than a 68020.
5710
680227f3
KR
5711Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
5712
5713 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
5714 fx_offset into account.
5715
c51ccfd5
KR
5716Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
5717
5718 * configure.in (mips host): Accept "ultrix" with version number.
5719
5720 * expr.c (floating_constant): Separate "=-" to avoid confusing
5721 ancient or broken compilers.
5722
5723 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
5724 processor/opcode mismatch, so reword the error message.
5725 (md_assemble): If no CPU has been set (even if FPU/PMMU
5726 characteristics have been), default to 68020. Don't need extra
5727 quotes around error string.
5728
14f1fc24
JW
5729Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
5730
5731 * read.c (potable): Revert sac's incorrect change made Jul 13.
5732 Align really is supposed to be ptwo not nbytes.
5733
5734Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
5735
5736 * Makefile.in: _Do_ include libiberty. (from sef)
5737
5738Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
5739
5740 * expr.c (integer_constant): Handle "0f" and "0b" label references
5741 properly.
5742
462088b8
SC
5743Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5744
5745 * write.c (fixup_segment): if relaxing, don't do anything.
5746 * config/obj-bout.[ch] : maintain the a_relaxable file header info
5747 * config/tc-i960.c: new option -linkrelax
5748
5749Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5750
5751 * expr.c (expr): allow SEG_BSS in expressions
5752 * read.c (potable): align should be nbytes, not ptwo!
5753 * write.c (write_object_file): extra glue for new bss attributes
5754 (relax_segment): SEG_BSS is ok now
5755 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
5756
7f2cb270
KR
5757Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
5758
5759 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
5760
462088b8
SC
5761Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
5762
5763 * configure.in: recognize m680x0 as having sun3 emulation mode for
5764 vxworks environment.
5765
5766
0b0b5dba
DHW
5767Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
5768
5769 * Makefile.in: Add program_suffix (parallel to program_prefix)
5770
7c2d4011
SC
5771Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5772
5773 * app.c (process_escape): new function to handle escapes the right
5774 way, (do_scrub_next_char): use new function
5775 * cond.c (s_ifdef): do ifdef/ifndef right
5776 * read.c (s_fill): make the , expressions optional like the doc
5777 says
5778 * config/tc-h8300.[ch]: better warnings
5779
90d49457
SC
5780Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5781
65bfcf2e
SC
5782 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
5783 as data0_frchainP
5784
5785 * write.c (write_object_file): various changes to handle data in
132239bf 5786 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 5787
7f2cb270
KR
5788 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
5789 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
5790 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
5791 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
5792 it into SEG_BSS
462088b8 5793
f8701a3f
SC
5794Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5795
5796 * expr.c(expr): allow SEG_REGISTER in expressions.
5797 * read.c(pseudo_set): register expressions can be the source of a
5798 set.
5799 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
5800 goto SEG_TEXT (if a.out)
5801 * write.c (write_object_file): If a.out don't use the old way for
5802 -R.
5803 * config/obj-a.out (s_sect): complain if the user tries to use a
5804 subsegment with a value which might interfere with out -R hackery.
5805 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
5806 rather than use ugly if tree. (init_regtable): insert register
5807 names into symbol table.
5808
ebfb4167
MT
5809Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
5810
5811 * write.c (write_object_file): keep the fix_tail clean, which
5812 fixes a bug in -R where relocations were being lost.
5813
5814Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
5815
5816 * configure.in: recognize m680x0 as having sun3 emulation mode for
5817 vxworks environment.
5818
5819Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
5820
5821 * configure.in: recognize m680x0 as an m68k
5822
dfd53fe9
JW
5823Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
5824
5825 * configure.in: Recognize sparclite as a sparc variant.
5826
7f2cb270
KR
5827 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
5828 -Asparclite flag.
5829
d312e231
SC
5830Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5831
5832 * config/tc-a29k.c: lint
5833 * listing.c, expr.c: patches from Andrew Smith
5834
0cca30f3
KR
5835Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
5836
5837 * doc/Makefile.in: use m4 rather than gm4.
5838
7f2cb270
KR
5839Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5840
5841 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
5842 calc the base of relocs correctly.
5843 * tc-a29k.c (parse_operand): allow expressions to be in any section.
5844
d312e231
SC
5845Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
5846
5847 * as.c, write.c: use -K rather than -k for the broken word warning
5848 option.
5849
fa493b93
RP
5850Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
5851
5852 * Makefile.in: do not print recursion lines.
5853
d96c09ed
RP
5854Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
5855
5856 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
5857
5858Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
5859
5860 * write.c (write_object_file): For b.out format, round up section
5861 start addresses to match required alignment.
5862
81484684
KR
5863Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
5864
5865 * Makefile.in (install): Install into $(tooldir)/bin, since that's
5866 where gcc looks for it.
5867
3876b4c5
SEF
5868Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
5869
5870 * Makefile.in: Changed some lines to be less confusing for some
5871 makes.
5872
5873 * input-file.c: Conditionalize on _IOFBF, not VMS.
5874
5875 * read.c, write.c: Change a series of ifdef/elif to
5876 ifdef/else/ifdef etc.
5877
5878Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
5879
5880 * symbols.c (fb_label_init): fix sizeof to memset.
5881
95a925b8
RP
5882Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
5883
3876b4c5
SEF
5884 * Makefile.in: install the man page.
5885
95a925b8
RP
5886 * Makefile.in: pass down MAKEINFO explicitly on info.
5887
0cca30f3
KR
5888 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
5889
5d53038b
SC
5890Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
5891
5892 * flonum-const.c: renamed flonum-konst.c to stop dos name
5893 conflict.
5894
7f2cb270
KR
5895Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
5896
5897 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
132239bf 5898 tc-m68k.h to te-sun3.h.
7f2cb270 5899
8c1b25e4
RP
5900Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
5901
5902 * configure.in: vxworks68 gets te-sun3.h.
5903
5904 * expr.c: remove limitation that local_labels_dollar or
5905 local_labels_fb must be < 10.
5906
5907 * symbols.c: remove local_labels_dollar, replace with a function
5908 interface for a sparse array. All users adjusted.
5909
7f2cb270
KR
5910 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
5911
0cca30f3
KR
5912Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
5913
5914 * doc/Makefile.in: commented out line for building as-all.texinfo.
5915 This is temporary.
5916
5917 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
5918
8c1b25e4
RP
5919Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
5920
5921 * Makefile.in: added check target.
5922
5923Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
5924
5925 * Makefile.in: added tooldir and program_prefix.
5926
5927Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
5928
5929 * write.{c,h} (fix_new): Make these declarations consistent.
5930
1651b22d
MT
5931Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
5932
5933 * Makefile.in (strerror.o): Add rule so that broken Sun make can
5934 work in subdirs.
5935
5373c439
SC
5936Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
5937
5938 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
5939
5940 * expr.c (operand): if can't work out what sort of operand it is,
5941 then look through FLT_CHARS for a hint.
5942
8c1b25e4
RP
5943Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
5944
5945 * Makefile.in, configure.in: removed traces of namesubdir,
5946 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
5947 copyrights to '92, changed some from Cygnus to FSF.
5948
0cca30f3
KR
5949 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
5950 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
5951 copyrights to '92, changed some from Cygnus to FSF.
5952
f24f7577
SC
5953Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
5954
14d3e47b
SC
5955 * expr.c: If an expression is single comma, then return with
5956 SEG_ABSENT rather than an error - since the sparc front end does
132239bf 5957 really strange things with things like fbge,a
14d3e47b 5958
f24f7577
SC
5959 * as.h: include bfd.h if using many sections
5960 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
5961 local labels didn't work.
5962 * listing.c (list_symbol_table): don't core dump when there's no
5963 symbol there.
5964 * write.c, write.h: call fix_new with the right number of args on
5965 the H8.
5966 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
5967 errors nices
5968
c593cf41
SC
5969Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
5970
5971 * app.c: MRI compatibility - allow single quote to start a string.
5972 * as.c: fix typo recently introduced.
5973 * as.h : Don't include aout/reloc.h - it's not right for COFF!
5974 * expr.c: Much rewriting, to accomodate MRI syntax for
5975 expressions. Also easier to read now.
5976 * listing.c: Put back defuns
5977 * read.c: modified to accept MRI syntax, put back listing pseudo
5978 ops so that an assembler built with NO_LISTING ignores list ops
5979 rather than pukes.
5980 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
5981 machine is a SPARC or a 29K.
5982 * config/obj-aout.c: added s_sect pseudo op
5983 * config/obj-coffbfd.c: lints, set the filehdr flags right and
5984 fill in the timestamp.
5985 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
5986 anymore, define all the relocs which the tc-<x> bit will use so we
5987 can translate from them to the coff types.
5988 * config/tc-a29k.c: reloc_type isn't ane enum any more
5989 * config/tc-m68k.c: Added NO_RELOC definition.
5990
2d97273c
RP
5991Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
5992
c593cf41
SC
5993 * Makefile.in: put header files before C source for TAGS; remove
5994 references to non-existent syscalls.h.
5995
2d97273c
RP
5996 * read.c, write.c subsegs.c: back out the .bss changes.
5997
7f2cb270
KR
5998 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
5999
6000 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
6001
6002 * a.out.h: removed.
6003
6d5460ab
RP
6004Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
6005
6006 * symbols.c (local_label_name): symbols now start with ^A.
6007
6008 * read.c, subsegs.c, write.c obj-coff.c: added handling of
6009 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
6010 generate these sections. .align: will use NOP_OPCODE or 0
6011 for padding. This is just for being nice to the
6012 disassembler.
6013
6014 * expr.c (operand): changed to generate local label "\001L0"
6015 starting with a ^A so that it is recognized as a local label.
6016
6017 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
6018
7f2cb270
KR
6019 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
6020 i/o opcodes - inb, inw, outb and outw. string manipulation with
6021 att syntax - scmp, slod, smov, ssca, ssto.
6022
6023 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
6024 to just after .file .
6025
6026 In obj_crawl_symbol_chain() where it tries to put the external
6027 symbols apart, with the condition:
6028 (!S_IS_DEFINED(symbolP) &&
6029 !S_IS_DEBUG(symbolP) &&
6030 !SF_GET_STATICS(symbolP))
6031 it was moving too many symbols out. So I switch it back to the
6032 condition:
6033 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
6034
6035 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
6036 so that we don't use the F_RELFLG which make the linker complain
6037 that somebody has stripped the relocation info.
6038
6039 Also, the AIX ld program require that the relocation table
6040 is sorted by r_vaddr like the standard ATT assembler does.
6041
6042 [he also changed the sizeof(struct ...)'s into the coff
6043 style FOOSZ macros. I'm not sure this is right, but I can't
6044 remember why. xoxorich.]
6045
d6e344db
RP
6046Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
6047
6048 * Makefile.in, configure.in, doc: use the doc. Build it, install
6049 it, clean it, etc.
6050
eb9eacd3
RP
6051Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
6052
aa3782d2
RP
6053 * read.c: white space and comments only.
6054
f816adbc
RP
6055 * configure.in: use the new atof-ns32.c for ns32k.
6056
eb9eacd3
RP
6057 * write.c: comment change only.
6058
7f2cb270
KR
6059 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
6060 aren't yet integrated.
6061
6062 * tc-i860.[hc]: blew off the dust. Something must still be done
6063 about conflicting relocation types.
6064
6065 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
6066 real thing.
6067
6068 * tc-i960.c, tc-sparc.c: white space and comments only.
6069
6070 * tc-a29k.h: delete duplicate macro definition.
6071
6072 * new file atof-ns32k.c copied from hack's last unreleased gas.
6073
542e1629 6074Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 6075
eb9eacd3
RP
6076 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
6077 rather than abort.
132239bf 6078
542e1629
RP
6079 * nearly everything. flush ChangeLog, package as gas-1.92.1.
6080 ChangeLog's prior to this are sketchy at best. I have logs.
6081 They just aren't ChangeLogs.
This page took 0.383045 seconds and 4 git commands to generate.