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