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