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