write.c changes, Makefile.in version update
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
648acaa0
KR
1Wed Sep 28 14:56:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
2
3 * expr.c (make_expr_symbol): No longer static. Use symbol_create,
4 not symbol_new, for symbols holding expression values.
5 * expr.h (make_expr_symbol): Move declaration here.
9ff0f5ef
KR
6 * write.c (fix_new_exp): Handle O_add by creating an
7 expression-valued symbol, and calling fix_new_exp recursively.
8 (adjust_reloc_syms): If a fixup's symbol value is a sum of an
9 undefined symbol and a constant, fold the constant into the fixup,
10 and refer to the undefined symbol directly. Then process the
11 fixup again from scratch.
12 (write_object_file): Before calling adjust_reloc_syms, make a pass
13 through the symbol list trying to resolve values.
14
15 * write.c (print_fixup): New routine, for debugging.
16 (write_relocs): Call bfd_install_relocation. Deleted various
17 hacks for working around problems with bfd_perform_relocation.
18
19 * Makefile.in (VERSION): Update to 2.4.90.
648acaa0 20
7b777690
ILT
21Wed Sep 28 11:50:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
22
3f42c69e
ILT
23 * config/tc-mips.c: Include subsegs.h.
24 (md_apply_fix): If an unconditional b or bal overflows, and we are
25 not assembling PIC code, replace it with a j or jal.
26
7b777690
ILT
27 * config/tc-mips.c (md_apply_fix): Correct branch overflow test.
28 Use as_bad_where and as_warn_where rather than as_bad and as_warn.
29
30Mon Sep 26 17:15:59 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
31
32 * write.c (write_relocs): Add file name and line number to
33 as_fatal calls. Handle bfd_reloc_overflow case specifically when
34 RELOC_EXPANSION_POSSIBLE.
35
36Fri Sep 23 16:11:28 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
37
38 * as.h (USE_STDARG, USE_VARARGS): Define one or neither of these
39 here. Use them for deciding which PRINTF*LIKE macro definitions
40 to use.
41 * messages.c: Use them, instead of NO_STDARG, NO_VARARGS.
42 [!USE_STDARG && !USE_VARARGS] (va_alist, va_dcl, ...): Provide
43 default definitions matching what we were doing before.
44 (as_tsktsk): Remove the non-stdarg, non-varargs version, and
45 always use the varargs form if not using stdarg. It's safe to
46 always use vfprintf, because libiberty will provide it if the
47 native system doesn't. Also, always make format be const.
48 (as_warn, as_warn_where, as_bad, as_bad_where, as_fatal): Ditto.
49
144659ab
ILT
50Fri Sep 23 14:42:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
51
52 * config/tc-mips.c (load_register): Always use addiu when adding a
53 constant to $zero--no need to use daddiu.
54 (macro): Hack the -mips3 overflow tests to not fail when offsetT
55 is only 32 bits.
56
57 * symbols.h (copy_symbol_attributes): Declare.
58
59Thu Sep 22 21:58:24 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
60
61 * listing.c: Bugfixes based in part on patches from Paul
62 Kranenburg.
63 (listing_newline): Check filename as well as line number when
64 deciding whether to record it.
65 (list_symbol_table) [S_IS_REGISTER]: Check that S_IS_REGISTER is
66 false (if defined) as well as checking for reg_section.
67 (listing_listing): Iterate fetching lines while line number is too
68 low, and we haven't run off the end of the input file.
69
70 * config/vms-conf.h: Changed HAVE_DELETE to HAVE_REMOVE.
71
bdaa198a
KH
72Thu Sep 22 13:39:10 1994 Kung Hsu (kung@x1.cygnus.com)
73
74 * ecoff.c (ecoff_generate_asm_lineno): check if
75 current_stabs_filename is NULL before strcmp.
cacd15c4 76 * read.c (read_a_source_file): fix a bug in generate_asm_lineno
bdaa198a
KH
77 checking.
78
8068b96a
KR
79Wed Sep 21 18:17:35 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
80
81 * config/ho-*.h: Now-unused files deleted.
82
83 * symbols.c (copy_symbol_attributes): New function. Copies BFD
84 symbol flags and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
85 (resolve_symbol_value, case O_symbol): Call it, if X_add_number is
86 zero. Don't call obj_frob_forward_symbol.
87 * read.c (pseudo_set): Call copy_symbol_attributes, but only if
88 X_add_number is zero.
89 * config/obj-elf.h (obj_frob_forward_symbol): Deleted.
90
144659ab
ILT
91 * config/tc-i960.c: Lots of whitespace, comment reformatting,
92 using GNU indent.
93 (strchr): Don't declare.
94 [BFD_ASSEMBLER]: Don't compile md_convert_frag,
95 md_estimate_size_before_relax, md_ri_to_chars,
96 md_create_short_jump, md_create_long_jump.
97 (brtab_emit): Use data_section, not SEG_DATA.
98
cacd15c4 99 Mon Sep 19 17:14:44 1994 Pat Rankin (rankin@eql.caltech.edu)
8068b96a
KR
100
101 * config/vms-conf.h: new file, manually derived from conf.in.
102 * config-gas.com: use it, and eliminate obsolete "host.h".
103
3af9783a
ILT
104Wed Sep 21 11:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
105
87bbf920
ILT
106 * config/tc-ppc.c (ppc_current_block): New static variable.
107 (ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
108 ppc_current_block. Don't move around any stab symbol, just those
109 for common symbols.
110 (ppc_bs): Set ppc_current_block.
111 (ppc_es): Clear ppc_current_block.
112 (ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
113 from the csect of the enclosing block.
114
3af9783a
ILT
115 * config/tc-mips.c (insns_since_cache_access): Remove.
116 (append_insn): Remove setting of insns_since_cache_access, and
117 special 4600 handling; it turns out not to be required.
118
e8d4d475
ILT
119Tue Sep 20 16:13:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
120
121 * config/tc-mips.c (md_shortopts): Remove E.
122 (md_longopts): Add EB and EL.
123 (md_parse_option): Handle -EB and -EL as separate options, rather
124 than as a single -E option with an argument.
125
8268e3ec
JL
126Mon Sep 19 12:42:05 1994 Jeff Law (law@snake.cs.utah.edu)
127
128 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions
129 involving global symbols too.
130
eb3028aa
KR
131Mon Sep 19 12:12:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
132
133 * as.h: Test NEED_DECLARATION_*, not NEED_*_DECLARATION.
134
135 * configure.in: Test for remove, not delete. Fix cross-assembler
136 test.
137 * as.h: Test HAVE_REMOVE, not HAVE_DELETE; define unlink to
138 remove, not delete.
139
35e70f58
KR
140 * read.c (pseudo_set, case O_symbol): If
141 OBJ_COPY_SYMBOL_ATTRIBUTES is defined, invoke it.
142 [BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
143 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
144
145 Wed Aug 10 19:15:30 1994 Pat Rankin (rankin@eql.caltech.edu)
146
147 * config/obj-vms.h (DSG_S_C_UBITU, DST_K_VFLAGS_DSC, DST_K_TS_ATOM,
148 many others): new macros; values obtained from "DSTRECRDS.SDL".
149 * config/obj-vms.h (various): use them.
150 (USE_BITSTRING_DESCRIPTOR): new macro, for selecting bitfield
151 representation (only enum bitfields can avoid being bitstrings).
152 (bitfield_suffix, setup_basic_type): new routines.
153 (VMS_typedef_parse): use them. Now recognize bitfields of all
154 integral types, not just type `int'. Caveat: the representation
155 used for bitfields still does not work for objects placed in
156 registers, and gcc's optimizer sometimes puts small structs there.
157
158 Tue Jun 14 17:31:44 1994 Pat Rankin (rankin@eql.caltech.edu)
159
160 * read.c (s_text) [#if OBJ_VMS]: clear the IN_DEFAULT_SECTION
161 bit from const_flag.
162 * config/obj-vms.h (IN_DEFAULT_SECTION): define this macro.
163 (tc_frob_label): define this to call vms_check_for_special_label,
164 and declare the latter.
165 * config/obj-vms.c (vax_g_doubles): declare this file-scope
166 variable.
167 (const_flag): initialize to IN_DEFAULT_SECTION instead of 0.
168 (vms_check_for_special_label): new routine (tc_frob_label).
169 (VMS_TBT_Routine_End): don't bother checking for `gcc_compiled.'
170 and `gcc2_compiled.' labels; they won't reach here any more.
171 (VMS_typedef_parse) [case 'r']: for types `double' and `complex
172 double', use `vax_g_doubles' flag to select type of double.
173 (VMS_write_object_file) [traceback setup]: don't pass symbols
174 with the IN_DEFAULT_SECTION attribute to the TBT_Routine_Begin
175 and TBT_Routine_End functions.
176
177 Mon Jun 6 20:52:20 1994 Pat Rankin (rankin@eql.caltech.edu)
178
179 * config/obj-vms.c (VMS_TBT_Routine_End): cache the result of
180 S_GET_VALUE() to avoid many repeated function calls.
181 (VMS_Check_For_Main) [#if HACK_DEC_C_STARTUP]: capitalize
182 _C$MAIN_ARGS in advance, in case -h3 (leave symbol name as-is)
183 gets requested. [All the HACK_DEC_C_STARTUP code appears to
184 be obsolete; gcc does it automatically for vms target. It's
185 also misnamed, because it is for the "VAX C" run-time library,
186 not the newer "DEC C" one which has much different startup code.]
187 {various}: use `S_SET_xxx(symbol,new_value)' rather than
188 `S_GET_xxx(symbol) = new_value'.
189
d1578de3
ILT
190Mon Sep 19 12:05:03 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
191
192 * config/obj-coff.c (c_dot_file_symbol): Use bfd_abs_section_ptr,
193 not &bfd_abs_section.
194
e3683042
ILT
195Thu Sep 15 18:36:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
196
197 * expr.c (clean_up_expression): Use addressT, not bfd_vma.
198
75c28b49
JL
199Tue Sep 13 20:05:47 1994 Jeff Law (law@snake.cs.utah.edu)
200
fcacfef6
JL
201 * expr.c (expr): Don't reduce the difference of two symbols in the
202 same frag if the symbols are not in normal sections.
203
75c28b49
JL
204 * config/obj-som.h (S_SET_OTHER, S_SET_TYPE): Delete a.out crud.
205 (S_SET_DESC, S_GET_OTHER, S_GET_TYPE, S_GET_DESC): Likewise.
206 (obj_attach_unwind_info): Do not define. Not needed anymore.
207 * config/tc-hppa.c: Delete whitespace at EOL.
208 (struct hppa_fix_struct): Delete fx_unwind field and all references.
209 (fix_new_hppa): Last arg is now a pointer to an int. Do not
210 call obj_attach_unwind_info anymore. For SOM R_ENTRY and R_EXIT
211 fixups, store 32bits of unwind information in the fx_addnumber
212 field of the fixup.
213 (md_assemble, pa_entry, process_exit, pa_procend): For SOM R_ENTRY
214 and R_EXIT fixups, pass a NULL pointer to fix_new_hppa, and a
215 pointer to 32 bits of unwind info.
216 (tc_gen_reloc): For SOM R_ENTRY and R_EXIT fixups, set the symbol
217 pointer to the dummy symbol; set the addend field to fx_addnumber.
218 (pa_comm, pa_equ, pa_type_args, pa_import): Use bfd_XXX_section_ptr
219 rather than &bfd_XXX_section.
220
26f4447a
KR
221Tue Sep 13 21:15:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
222
d7152d07
KR
223 * config/tc-i386.c (md_apply_fix_1): For GOTPC relocs, decrement
224 value by one; discard adjustments previously being made. From
225 Eric Youngdale.
226
26f4447a
KR
227 VMS- and Vax-related changes from Pat Rankin:
228 * Makefile.in (VMS_OTHER_OBJS): add concat, getopt, and getopt1.
229 * vmsconf.sh: no longer have make-gas.com echo text about needing
230 to modify the gcc-vms driver when intending to use with gcc 1.x.
231 * as.c (parse_options): suppress 'v' from std_short_options and
232 eliminate VMS-specific conditional initialization;
233 [default case]: check for '-v' if md_parse_options doesn't recognize
234 an option;
235 [default case, #if VMS]: check for filename argument when '-v' seen;
236 [case 'v']: delete.
237 * config/tc-vax.c (md_assemble): don't rely on `this_add_number'
238 for O_big literal operands (double floats and long long ints);
239 [VMS, md_shortopts]: add second colon after 'v';
240 (md_parse_options) [VMS, case 'v']: check for argument, so
241 caller can handle `-v' w/o arg.
242
a9898563
SC
243Tue Sep 13 16:45:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
244
245 * config/obj-coff.c (do_relocs_for): If TC_KEEP_FX_OFFSET
246 is defined, put the tx_offset into the r_offset.
247 * config/tc-sh.c (line_comment_chars): Add #
248 (tc_reloc_mangle): Deleted.
249 * config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
250 (TC_RELOC_MANGLE): Delete.
251
28d3e4a3
KR
252Tue Sep 13 16:20:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
253
b9419dd2
KR
254 * flonum-konst.c: Change preprocessor tests of HO_VMS to just VMS.
255 * hex-value.c: Ditto.
256 * config/obj-vms.c: Ditto.
257
460531da
KR
258 * config/tc-sparc.c (sparc_ip): Replace as_bad/exit sequence with
259 a call to as_fatal.
260 * config/tc-i860.c (i860_ip): Ditto.
261 * config/tc-hppa.c (pa_ip): Ditto.
262 * config/tc-alpha.c (alpha_ip): Ditto.
263 * as.c (parse_args): Ditto.
264
265 * config/tc-mips.c (mips_ip): Replace as_warn/exit sequence with a
266 call to as_fatal.
267
268 * write.c (write_contents): Use EXIT_FAILURE.
269 * output-file.c (output_file_create, output_file_close,
270 output_file_create, output_file_close): Ditto.
271 * messages.c (as_fatal): Ditto.
272 * config/obj-som.c (obj_som_version, obj_som_copyright): Ditto.
273 * config/obj-ieee.c (write_object_file): Ditto.
274 * config/obj-coff.c (write_object_file): Ditto.
275 * config/tc-vax.c (main): Use EXIT_SUCCESS.
276 * config/tc-m68k.c (main): Ditto.
277
278 * hash.c (main): Pass a value to exit().
279
280 * as.h (EXIT_SUCCESS, EXIT_FAILURE): Moved here.
281 * as.c: ...from here.
282 (parse_args): Use them always.
283 (main): Use exit rather than return.
284
28d3e4a3
KR
285 * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall):
286 Rewrite handling of program_transform_name.
287
b9419dd2
KR
288 * configure.in: Test for functions unlink and delete.
289 * as.h: If unlink isn't available but delete is, define unlink to
290 be delete.
28d3e4a3
KR
291
292 Update for autoconf 1.118:
293 * gdbinit.in: New file, created from old .gdbinit.
294 * .gdbinit: Deleted.
295 * aclocal.m4 (GAS_GDBINIT): Deleted.
296 * configure.in: Don't use it. Instead, generate .gdbinit from
297 gdbinit.in. Don't substitute cpu_type, obj_format, emulation,
298 atof. Switched order of AC_LINK_FILES arguments. Use AC_PREREQ
299 to ensure that older versions of autoconf aren't used.
300 * Makefile.in: Added @configure_input@ line.
301 (configure): Deleted rule.
302
430a3997
ILT
303Tue Sep 13 12:08:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
304
305 * config/obj-coff.c (fixup_segment): After handling the difference
306 of two symbols from the same segment, set fx_subsy to NULL, to
307 satisfy existing TC_COUNT_RELOC macros.
308
e23b25ec
KR
309Tue Sep 13 01:47:08 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
310
311 * aclocal.m4 (GAS_GDBINIT): New macro.
312 * configure.in: Use it.
313 * configure: Regenerated.
314
c570d361
KR
315Mon Sep 12 20:56:38 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
316
317 * .gdbinit (pe, ps): Define new commands.
318 * symbols.c (indent_level): New static variable.
319 (indent, print_expr_1, print_symbol_value_1, print_symbol_value,
320 print_expr): New functions.
321
322 * Makefile.in (config-stamp): Add a "this file generated by make"
323 message to config.h.
324
325 PIC implementation for i386-linux, based on code from Eric
326 Youngdale and Paul Kranenburg, with some work of my own:
327
328 * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup
329 before processing same-section pcrel relocations.
330 (TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
331
332 * expr.c (make_expr_symbol): If operator is O_symbol and
333 X_add_number is zero, just return the symbol. If operator is
334 O_constant, resolve the symbol's value before returning.
335 (operand): Permit use of "[]" for grouping.
336 (clean_up_expression): For difference of two symbols in the same
337 frag, add the difference of their offsets into X_add_number.
338 (expr): Reduce difference of two symbols in same frag to their
339 difference.
340
341 * config/tc-i386.c (TC_RELOC): New macro.
342 (struct _i386_insn): New field disp_reloc.
343 (GOT_symbol): New variable.
344 (operand_special_chars): Added square-brackets and at-sign.
345 (reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not
346 NO_RELOC, just return it.
347 (reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
348 (BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More
349 dummy macros.
350 (tc_i386_fix_adjustable): New function. Returns zero if symbol in
351 fixup is not local, to prevent relocations against externals from
352 being dropped.
353 (md_assemble): Initialize disp_reloc field to NO_RELOC. Pass
354 disp_reloc field to reloc() function, and use TC_RELOC to generate
355 value to pass to fix_new_exp.
356 (md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC
357 reloc.
358 (i386_operand): Initialize disp_reloc field to NO_RELOC. Handle
359 @GOTOFF, @PLT, @GOT operands. For GOTOFF relocations with local
360 symbols, force generation of the section symbol.
361 (md_estimate_size_before_relax): If GOT_symbol exists, decide
362 we're generating PIC code, and convert relocations against
363 undefined symbols from PCREL to PLT32.
364 (md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking
365 relocs.
366 (md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set
367 and return GOT_symbol if it matches.
368 (F, MAP): Move macro definitions outside function.
369 (tc_gen_reloc): Only switch on size and pcrel if code wasn't
370 already supplied as PLT32. GOT32, GOTOFF, or GOTPC. Convert
371 BFD_RELOC_32 using GOT_symbol into GOTPC.
372 * config/tc-i386.h (TC_RELOC, tc_fix_adjustable,
373 TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): New
374 macros.
375 (NEED_FX_R_TYPE): Define.
376 (LOCAL_LABEL): Accept ".X" prefix too.
377 (GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
378
1b434ced
ILT
379Mon Sep 12 17:51:39 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
380
1779d515
ILT
381 * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
382 reportedly to be used on Irix 6.
383
c1444ec4
ILT
384 * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
385 (s_mips_globl): New static function; needed for Irix 5 support.
386 * ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
387 external symbol with no type, set the type to st_Proc rather than
388 st_Global. Don't set the index of an external st_Proc or
389 st_StaticProc symbol unless it is also a local symbol.
390
1b434ced
ILT
391 * read.c (read_a_source_file): The second argument to as_where is
392 unsigned int *, not int *.
393
326d16ca
KH
394Thu Sep 8 17:18:24 1994 Kung Hsu (kung@mexican.cygnus.com)
395
396 * config/obj-ecoff.h : Change names to OBJ_GENERATE_ASM_LINENO,
397 and generate_asm_lineno.
398 * config/obj-elf.h : ditto.
399 * read.h : ditto.
400 * read.c (read_a_source_file): if no file when inst is read, set
401 generate_asm_lineno to true.
402 * ecoff.h : change name to generate_asm_lineno and add function
403 ecoff_no_current_file.
404 * ecoff.c : change name to generate_asm_lineno.
405 * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate
406 ecoff style line for asm file.
407
eb4fd16f
ILT
408Thu Sep 8 19:43:49 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
409
410 * config/obj-coff.c (size_section): Do an fprintf to stderr rather
411 than a printf.
412 (fixup_segment): Use as_bad_where rather than as_bad.
413
20c9d49a
SC
414Wed Sep 7 17:21:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
415
eb4fd16f
ILT
416 * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing
417 nothing becomes macro doing nothing.
20c9d49a 418
bf111c9f
KR
419Wed Sep 7 19:10:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
420
353acf31
KR
421 * Makefile.in (Makefile): Depend on config.status.
422 (config.status): Run config.status from . instead of srcdir.
423
72373532
KR
424 * config/tc-i386.c (tc_gen_reloc): Use bfd_get_reloc_code_name to
425 display the name of the relocation type that couldn't be handled.
426 * config/tc-sparc.c (tc_gen_reloc): Likewise.
427 * config/tc-alpha.c (tc_gen_reloc): Likewise. Deleted abort call
428 after call to as_fatal.
429
430 * configure.in (i386-*-linux*): Don't set bfd_gas.
431
432 * Makefile.in (CC_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET,
433 install, uninstall): Don't use "brokensed" hack any more, the new
434 autoconf code should never let program_transform_name be empty.
435
bf111c9f
KR
436 Update for autoconf beta 1.112:
437 * aclocal.m4 (GAS_CHECK_DECL_NEEDED, GAS_WORKING_ASSERT): New
438 macros.
439 * configure.in: Use them. Use AC_ARG_PROGRAM (now provided by
440 autoconf) instead of my hacked-up AC_PROGRAM_TRANSFORM_NAME. Move
441 test for CROSS_COMPILE just before AC_FUNC_ALLOCA, and emit a
442 message to try to ease confusion about autoconf's
443 "cross-compiling" message.
444 * acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_FREE,
445 NEED_DECLARATION_ERRNO): Renamed from NEED_*_DECLARATION.
446 * configure, conf.in: Regenerated.
447
c8570de8
ILT
448Wed Sep 7 12:49:55 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
449
450 * configure.in: Check ${host} and ${target} rather than
451 ${host_canon} and ${target_canon}.
452 * configure: Likewise.
453
8c63448a
ILT
454Tue Sep 6 11:42:38 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
455
456 * config/tc-mips.c (mips_cpu): New static variable.
457 (insns_since_cache_access): New static variable.
458 (md_begin): Set mips_cpu as well as mips_isa.
459 (append_insn): If mips_cpu is 4600, require four nop instructions
460 between an instruction which accesses the cache and certain CACHE
461 instructions. Keep track of the number of instructions seen since
462 an instruction which accesses the cache.
463 (md_parse_option): Set mips_cpu as well as mips_isa.
464
a5a2f156
KR
465Mon Sep 5 07:09:00 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
466
467 * doc/Makefile.in (VPATH): Define using @srcdir@.
468 (prefix, program_transform_name, exec_prefix): Use autoconf style
469 @-substitutions.
470
8c63448a 471Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
318b02b6
KR
472
473 * config/ho-riscix.h, config/tc-arm.c, config/tc-arm.h: New files
474 * configure.in: Recognize the arm.
475
3ffbc907
ILT
476Fri Sep 2 16:05:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
477
478 * ecoff.c (add_file): Don't try to generate line numbers if the
479 symbol table has been frozen.
480
481Thu Sep 1 19:48:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
482
483 * aclocal.m4 (AC_PROG_CC): Use AC_DEFUN, and omit AC_PROVIDE.
484
485 * configure.in: Handle user-specified bfd-assembler option with
486 separate variable from preferred configuration, until the two are
487 resolved. Indicate bfd_gas=preferred for linux a.out. Use
488 AC_PROGRAM_TRANSFORM_NAME, for which a patch has been sent to djm.
489 * Makefile.in (target_alias, program_transform_name): Define,
490 using autoconf @-substitutions.
491
fb589130
KR
492Wed Aug 31 17:43:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
493
7f64fd4e
KR
494 * atof-generic.c: Deleted alloca handling here.
495
fb589130
KR
496 * Makefile.in (prefix, exec_prefix): Use @-subtitutions.
497
498 * aclocal.m4 (AC_OUTPUT_LINKS): Deleted redefinition, since
499 autoconf 1.109 has this fixed.
500 * configure.in: Don't change quote characters around AC_MSG_ERROR
501 invocation. Don't use AC_HEADER_STDC, since it requires running a
502 program. Cache NEED_*_DECLARATION values.
503 * configure, conf.in: Regenerated with a modified autoconf 1.109.
504
c7072f56
KR
505 * as.h (volatile): Don't test or define here; not needed.
506 (alloca): Replace alloca-conf.h inclusion with code recommended in
507 autoconf documentation. Include config.h first.
508
bdee23af
ILT
509Wed Aug 31 11:20:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
510
511 * config/obj-coff.h (S_IS_DEFINED): Absolute symbols are defined
512 also.
513
514 * configure.in, configure: Initialize bfd_gas to no.
515
a48f997a
KR
516Tue Aug 30 19:31:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
517
518 * as.h: Include alloca-conf.h from "libiberty", not
519 "../libiberty".
520
0c49642d
ILT
521Mon Aug 29 16:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
522
523 * config/tc-ppc.c (md_apply_fix): Don't generate a reloc when a
524 symbol is used as an offset into a CSECT that is not a TOC. These
525 types of loads are generated by gcc -mminimal-toc.
526
65ad84c1
KR
527Sun Aug 28 13:22:52 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
528
e9296bdb
KR
529 * as.h (flag_*): Added comments describing meanings of some of
530 these variables.
531 (struct frag): Add some comments about the ns32k-specific fields
532 and why they're here.
533 (SIZEOF_STRUCT_FRAG): Cast addresses to char*, not int.
534 (flag_print_statistics): Declare.
535
536 * as.c (parse_args): Set flag_print_statistics instead of
537 statistics_flag. Options array is now const. Added new option
538 "dump-config"; if specified, print TARGET_ALIAS, TARGET_CANONICAL,
539 TARGET_CPU, TARGET_OBJ_FORMAT, and TARGET_FORMAT, if defined.
540 (main): Change test to check flag_print_statistics.
541 (statistics_flag): Deleted.
542
c72aa0e2
KR
543 * frags.c (frag_variant): Removed PCREL_ADJUST and BSR arguments.
544 Always initialize them to zero.
545 * frags.h (frag_variant): Fixed prototype.
546 * config/tc-i960.c (get_cdisp): Don't pass the extra zero args.
547 * config/tc-ns32k.c (convert_iif): Don't pass the arguments; cache
548 the value of frag_now and fill in the fields later.
549
65ad84c1
KR
550 * Makefile.in (distclean, realclean): Remove new
551 configure-generated files.
552
aaeee550
KR
553Sat Aug 27 20:26:12 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
554
b11fb939
KR
555 Conversion to autoconf:
556 * acconfig.h, aclocal.m4: New files.
557 * configure.in: Rewritten (except for some target-specific code)
558 for autoconf.
559 * conf.in, configure: New files, generated from the above.
560 * Makefile.in: Changed magic sequence indicating insertion of
561 makefile fragments.
562 (VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions
563 from configure.
564 (LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
565 (config.status, configure): Rewrite rules.
566 (config-stamp): Depend on conf. Skip variables that configure is
567 now substituting itself.
568 (*.o dependencies): Deleted host.h.
569 (distclean, realclean): Don't delete host.h.
570 * as.c: Don't include stdio.h, string.h, sys/types.h. Include
571 signal.h after as.h.
572 * as.h: Include alloca-conf.h first. Include ctype.h, string.h,
573 strings.h, stdlib.h, unistd.h, sys/types.h, fopen-bin.h,
574 fopen-same.h, as suggested by autoconf test results.
575 [BROKEN_ASSERT]: Don't include assert.h.
576 (strdup): Declare.
577 (volatile, const): Define if not __STDC__ and not already defined.
578 (malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
579 (free) [NEED_FREE_DECLARATION]: Declare.
580 * gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't
581 include host.h.
582 (malloc) [NEED_MALLOC_DECLARATION]: Declare.
583 * messages.c: Include as.h first. Include errno.h only if
584 HAVE_ERRNO_H. If HAVE_VARARGS_H and not __STDC__, undefine
585 HAVE_STDARG_H. Set NO_STDARG and NO_VARARGS as appropriate.
586 * doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM,
587 INSTALL_DATA): Use autoconf @-substitutions.
588
27bf48ec
KR
589 * input-file.c: Don't include assert.h here, 'cause as.h already
590 includes it.
591
aaeee550
KR
592 * config/tc-alpha.c: Added various prototypes for static
593 functions.
594 (in_range): New function, tests whether a value can fit in an
595 N-bit field.
596 (build_mem, build_operate_n): New functions for constructing
597 opcode values.
598 (emit_sll_n, emit_ldah_num, emit_addq_r, emit_lda_n): New
599 functions for emitting single instructions, no longer requiring a
600 recursive call to md_assemble.
601 (emit_add64): New function for expanding a REG:=REG+CONST
602 operation into one or more instructions, to handle wide constants.
603 (clear_insn): New variable.
604 (md_begin): Fill it in with zeros and BFD_RELOC_NONE values.
605 (alpha_ip): Use it to initialize local variable insns.
606 (alpha_ip, label "immediate" and cases 'P', 'G'): Use emit_add64
607 for calculations.
608
6668a062
KR
609Fri Aug 26 14:46:15 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
610
611 * subsegs.c (section_symbol): Reverse still-wrong test of
612 EMIT_SECTION_SYMBOLS.
613
8ef75e2c
KR
614 * write.c (BFD_FAST_SECTION_FILL): Always define.
615 (write_contents): If fill_size is 1, use memset instead of looping
616 calling memcpy.
617
904b6037
ILT
618Wed Aug 24 12:46:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
619
20ae2fb8
ILT
620 * config/tc-mips.h (LOCAL_LABEL): Define as 0, for compatibility
621 with native MIPS assembler.
622 * configure.in (mips-*-irix*): Don't set emulation.
623 * config/te-irix.h: Remove.
624
fd4f335c
ILT
625 * ecoff.c (ecoff_symbol_new_hook): Don't add a new file if we
626 haven't seen any input files yet.
627 * config/tc-alpha.c (md_begin): Just call symbol_create, rather
628 than calling symbol_new and then removing the symbol from the
629 list.
630
a2a1a548
ILT
631 * as.c (main): Move a inside the #if 0 block which uses it.
632 * ecoff.c (current_stabs_filename): Make const.
633 * frags.h (frag_align_pattern): Declare.
634 * gasp.c (new_file): Cast isp to long, and use %ld to print it.
635 * config/tc-alpha.h (md_operand): Add cast to void.
636 (alpha_do_align): Declare argument types.
637 (tc_get_register): Declare.
638 (alpha_frob_ecoff_data): Declare.
639 * config/tc-alpha.c: Include <ctype.h>.
640 (s_mask): Don't declare; does not exist.
641 (line_comment_chars): Remove /* from descriptive comment.
642 (tc_get_register): Remove unused local reg.
643 (tc_gen_reloc): Don't bother to compare unsigned to zero.
644 (s_base): Correct warning to actually print register number.
645 (md_begin): Remove unused locals retval, lose, and i.
646 (alpha_fix_adjustable): Move default case inside switch to avoid
647 warning.
648 (load_symbol_address): Remove unused locals reloc_addr, p, sym,
649 and addend.
650 (emit_byte_manip_r): Declare types for all arguments.
651 (emit_extract_r, emit_insert_r, emit_mask_r): Likewise.
652 (emit_sign_extend, emit_bis_r, s_proc): Likewise.
653 (alpha_ip): Use sprint_value to print offsetT value. Remove
654 unused local size. Remove unused label get_macro.
655 (alpha_do_align): Make fill const.
656 (md_apply_fix): Remove unused label check_zov.
657
904b6037
ILT
658 * configure.in: Recognize i586 as a synonym for i[34]86.
659
660Tue Aug 23 12:32:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
661
662 * config/obj-coff.c (c_line_new): Change line_number argument from
663 unsigned short to int so that the type in the prototype matches
664 the promoted type in the definition.
665 (stack_delete): Comment out; not used.
666 * config/obj-coff.h (tc_coff_symbol_emit_hook): Declare if not
667 BFD_ASSEMBLER, not if BFD_ASSEMBLER. Declare argument type.
668 * config/tc-m68k.h (tc_coff_sizemachdep): Declare.
669 * config/tc-m68k.c (tc_coff_symbol_emit_hook): Add ignored
670 argument.
671
2cffb4f4
JL
672Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
673
f3b70679
JL
674 * gas/config/tc-hppa.c (pa_comm): Set sy_frag for the common
675 symbol to the zero address frag.
2cffb4f4 676
101fbf7e
ILT
677Fri Aug 12 17:51:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
678
679 * config/tc-mips.c (md_begin): Drop "el" from the end of
680 TARGET_CPU. Check for mips64orion.
681
a1dafd55
SG
682Tue Aug 9 19:43:45 1994 Stu Grossman (grossman@cygnus.com)
683
684 * configure.in: Recognize ppc-*-netware.
685 * config/te-ppcnw.h: New file to support Power-PC/Netware
686 configurations. Currently, it just enables the use of backslash
687 escapes in string directives.
688
55933a58
ILT
689Tue Aug 9 11:12:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
690
8e479636
ILT
691 * config/tc-ppc.c (ppc_stabx): Call expression directly, rather
692 than via pseudo_set. If expression is a symbol, move stab symbol
693 to just after symbol from expression.
694
c9a89891
ILT
695 * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
696 zero. Undoes change of June 4, 1993.
697
55933a58
ILT
698 * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
699 orion.
700
701Mon Aug 8 16:28:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
702
703 * as.h: Remove FOPEN_WB patch of Aug 6.
704 * configure.in: Configure for ho-go32 correctly.
705 * config/ho-go32.h: Fix copyright.
706
1503edcc
JL
707Mon Aug 8 11:59:51 1994 Jeff Law (law@snake.cs.utah.edu)
708
709 * gas/config/tc-hppa.c (md_pseudo_table): Delete redundant
710 upper-case versions of the pseudo-ops.
711
2cd14ddc
ILT
712Mon Aug 8 13:42:16 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
713
714 * config/tc-sparc.c (md_apply_fix): If we are going to generate a
715 non PC relative reloc, don't put the addend in the object file.
716
6670b7f3
SC
717Sat Aug 6 01:15:02 1994 Steve Chamberlain (sac@jonny.cygnus.com)
718
719 * as.h: If FOPEN_WB is not defined, do the right thing in a go32
720 environment.
721
722Mon Jul 11 11:34:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
723
724 * config/tc-h8300.c (pint): New function for handling varying
725 size of int pseudo op.
726 * doc/as.texinfo: Fix typo describing .h8300h pseduop.
727
363d6150
JL
728Mon Aug 1 02:40:43 1994 Jeff Law (law@snake.cs.utah.edu)
729
fbf71886
JL
730 * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
731 field in the space chain.
732
363d6150
JL
733 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
734 hppa_gen_reloc_type.
735
5e0a90a8
KR
736Thu Jul 28 15:45:37 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
737
738 * config/tc-sparc.c (sparc_ip): Check more carefully for
739 conflicting architectures.
740 (md_parse_option) [NO_V9]: Complain if v9 was selected.
741 (md_show_usage): Derive architecture list in usage message from
742 architecture_pname array.
743 (cypress): Macro deleted.
744 (op_hash): Don't initialize.
745 (s_common): Use bfd_und_section_ptr instead of bfd_und_section.
746
747 * config/tc-sparc.c (BSR): New function.
748 (sparc_ip): Use it for right-shift operations of 32 bits or more.
749
750 * config/tc-sparc.c (sparc_ip): Implement new operand type 'x'.
751
39792caf
KR
752Tue Jul 26 18:21:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
753
754 * config/obj-coff.h: Moved common includes and TARGET_FORMAT
755 definitions together.
756 (WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD,
757 OBJ_COFF_OMIT_OPTIONAL_HEADER, BFD_HEADERS, BFD) [!BFD_ASSEMBLER]:
758 Moved these definitions to the start of the file, before the
759 includes.
760 (SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always
761 define these.
762 (S_GET_ZEROES): Deleted.
763 (S_SET_ZEROES): Moved to obj-coff.c.
764
765 * config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted
766 forward declarations.
767 (obj_pseudo_table): Moved to one version end of file,
768 conditionalized internally.
769 (stack typedef, stack_init, stack_delete, stack_push, stack_pop,
770 tag_hash, tag_init, tag_insert, tag_find, tag_find_or_make): Moved
771 to one combined version at top of file, unconditional. Deleted
772 forward declarations.
773 (s_get_name): Moved one copy of declarations to start of file.
774 (def_symbol_in_progress): Ditto. Don't initialize.
775 (S_SET_ZEROES): Moved here from obj-coff.h.
776 (write_object_file): If TC_COFF_SET_MACHINE is defined, call it on
777 the file headers.
778
779 * config/obj-coff.c (seg_info_off_by_4): Now const and static.
780 (SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
781 (previous_file_symbol, def_symbol_in_progress, symbol_externP,
782 symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't
783 bother explicitly initializing to zero value.
784
785 * config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME
786 and SF_GET_CALLNAME instead of the TC_S_IS_ versions.
787
10db66ec
KR
788 * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls
789 tc_headers_hook.
790
791 * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX
792 was used previously.
793 (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.
794
795 * config/tc-i960.c (po_hash): Declaration deleted.
796 (next_object_file_charP): Ditto.
797 (regnames, aregs, coj): Now const.
798 (parse_memop): Static array def_scale now const.
799 (md_begin): Cast away const when passing hash routines addresses
800 of values in regnames or aregs.
801 (md_longopts): Added "link-relax" and "no-relax" hyphenated forms.
802 Continue to accept one-word forms.
803 (struct tabentry, arch_tab): Moved to top level from inside
804 md_parse_option. Now const.
805 (md_show_usage): Use arch_tab to generate usage message. Print
806 hyphenated forms of relax options.
807
808 * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
809 TC_S_FORCE_TO_*): Moved from here...
810 * config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff
811 to test OBJ_AOUT and OBJ_BOUT directly.
812
813 * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ,
814 M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F,
815 {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*):
816 Macros deleted.
817
818 start-sanitize-i960xl
819 * config/tc-i960.c (ARCH_XL): Define.
820 (arch_tab): Include XL.
821 (targ_has_sfr, targ_has_iclass): Handle XL.
822 (tc_headers_hook): Set flags to F_I960XL for i960XL.
823 end-sanitize-i960xl
824
39792caf
KR
825Fri Jul 15 15:36:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
826
827 * subsegs.c (section_symbol): Had last change backwards.
828
3b6d6f71
KR
829Thu Jul 14 13:21:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
830
462ab71d
KR
831 * config/atof-ns32k.c: Deleted.
832
3b6d6f71
KR
833 * config/obj-aout.c (obj_aout_frob_symbol): Use
834 bfd_ind_section_ptr and bfd_und_section_ptr.
835
836 * subsegs.c (subseg_set_rest): Compare segT values directly,
837 without casting to int first.
838
259e35d4
KR
839 * config/tc-ns32k.c (md_begin): Return value from hash_insert
840 should be pointer to const. Don't call exit explicitly after
841 calling as_fatal; it won't return.
842 (convert_iif): Make local variable j be pointer to bit_fixS, since
843 that's how it's used.
844 (encode_operand, case 'b'): Ignore sprintf return value. Don't try
845 converting freeptr to int and back.
846
847 Merged in NS32K support update from Ian Dall (dall@hfrd.dsto.gov.au):
848
849 * config/te-pc532mach.h: New file. pc532-mach target emulation.
850
851 * config/te-netbsd532.h: New file. Netbsd532 target emulation.
852
853 * config/tc-ns32k.h: Add definition of NOP_OPCODE.
854
855 * config/tc-ns32k.h: Add prototype for fix_new_ns32k_exp.
856
857 * config/tc-ns32k.h: Add BFD_ASSEMBLER support.
858
859 * config/tc-ns32k.c (tc_gen_reloc): New function for BFD_ASSEMBLER.
860
861 * config/tc-ns32k.c (fix_new_ns32k_exp): Get reloc type
862 differently for BFD_ASSEMBLER.
863
864 * config/tc-ns32k.c (md_estimate_size_before_relax): Get reloc
865 type differently for BFD_ASSEMBLER.
866
867 * config/tc-ns32k.c (md_create_long_jump): Size of opcode is one
868 not 2.
869
870 * config/tc-ns32k.c (md_convert_frag): Code for the BFD_ASSEMBLER
871 case. Also use smart md_pcrel_adjust function.
872
873 * config/tc-ns32k.c (md_apply_fix): Code for the BFD_ASSEMBLER
874 case. Also use smart md_fix_pcrel_adjust function.
875
876 * config/tc-ns32k.c (md_fix_pcrel_adjust): New function which can
877 find offset from opcode to operand even if in another frag
878 and in the presence of relaxing.
879
880 * config/tc-ns32k.c (md_pcrel_adjust): New function which can
881 find offset from opcode to operand even if in another frag
882 and in the presence of relaxing.
883
884 * config/tc-ns32k.c (md_number_to_disp): Check ranges properly.
885
886 * config/tc-ns32k.c (md_atof): use atof_ieee instead of special
887 atof_ns32k.
888
889 * config/tc-ns32k.c (reloc): New (static) function for
890 BFD_ASSEMBLER.
891
892 * config/tc-ns32k.c (convert_iif): More correct pc relative code.
893 md_relax must be able to find opcode address even if in another frag.
894
895 * config/tc-ns32k.c: More extensive comments.
896
897 * config/tc-ns32k.c (encode_operand): Support new operand classes I
898 and Z. Drop Q.
899
900 * config/tc-ns32k.c (fix_new_ns32k_exp): new function and
901 corresponding prototype.
902
903 * config/tc-ns32k.c: make 32532 default machine instead of 32032.
904
905 * config/tc-ns32k.c: include opcode/ns32k.h after as.h
906
907 * aout_gnu.h: r_disp needs to be 2 bits for TC_NS32K
908
909 * write.h: fx_im_disp needs to be 2 bits big for TC_NS32K
910
911 * write.c (relax_segment): Use TC_PCREL_ADJUST macro (if defined)
912 instead of adding pcrel_adjust.
913
914 * write.c (write_object_file): Adjust to_addr for the
915 BROKEN_DOT_WORD feature for the BFD_ASSEMBLER case.
916
917 * write.c (write_object_file): Use TC_CONS_FIX_NEW if it is defined.
918
919 * write.c (write_contents): Add code (currently if
920 BFD_FAST_SECTION_FILL is defined) to make large fills a lot faster.
921
922 * configure.in: Remove ns32k from special FP list. All the ns32k
923 series use ieee float.
924
925 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd targets
926
927 * as.h: include expr.h before targ-env.h. Some target dependent file
928 want to use expr structures.
929
4ac7a9e4
ILT
930Wed Jul 13 14:49:05 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
931
932 * config/tc-m68k.c (m68k_ip): Change rp to be a const pointer.
933 (md_parse_option): Clear cpu field of current_architecture before
934 setting a new cpu type. Clear no_68881 for m68881 or m68882.
935 Clear no_68851 for m68851.
936
6b510a40
KR
937Tue Jul 12 21:27:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
938
939 * config/ho-sysv.h (realloc): Declare.
940
3c498933
KR
941 * symbols.c (symbol_create): New function, most of the guts of the
942 old symbol_new function.
943 (symbol_new): Now just checks symbol_table_frozen, calls
944 symbol_create, and enters the symbol into the symbol table.
945 * subsegs.c (section_symbol): If EMIT_SECTION_SYMBOLS is not true,
946 and the symbol table is frozen, call symbol_create instead of
947 symbol_new.
948 * symbols.h (symbol_create, symbol_table_frozen): Declare.
949
950 * symbols.c (symbol_clear_list_pointers): Always a function now.
951 * struc-symbol.h (symbol_clear_list_pointers): Deleted macro
952 version.
953
954 * symbols.c (debug_verify_symchain): New macro, defined to be
955 verify_symbol_chain or a cast to void, depending on DEBUG_SYMS.
956 (many functions): Invoke debug_verify_symchain unconditionally.
957
a85cd289
KH
958Tue Jul 12 12:06:42 1994 Kung Hsu (kung@x1.cygnus.com)
959
960 * config/obj-ecoff.h: change calling interface of
961 OBJ_GENERATE_ASM_LINE_STAB.
962 * config/obj-elf.h: ditto.
963 * read.c (read_a_source_file): ditto.
964 * ecoff.h: change calling interface of
965 ecoff_generate_asm_line_stab.
966 * ecoff.c (add_file): record of filename to handle case of include
967 files, also change default built-in type from int to void for
968 asm file.
969 * ecoff.c (ecoff_generate_asm_line_stab): handle case of include
970 files.
971
51d8e5ae
ILT
972Mon Jul 11 17:20:23 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
973
974 * config/tc-mips.c (macro): In case M_LA_AB, SVR4_PIC, large
975 constant, and case ldd_std, set mips_optimize to 2 temporarily to
976 avoid inserting an unexpected nop instruction.
977
64d527f7
ILT
978Sat Jul 9 00:05:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
979
980 * ecoff.c (ecoff_build_lineno): Handle count correctly for last
981 line number.
982
6f15d409
SC
983Fri Jul 8 15:22:07 1994 Steve Chamberlain (sac@jonny.cygnus.com)
984
6670b7f3 985 * gasp.c (process_pseudo_op): Pass right args to do do_aif.
6f15d409
SC
986 (get_any_string): New arg 'pretend_quote'.
987 (get_and_process, do_formals, macro_expand, do_sdata,
988 process_pseudo_op): Use new arg.
989
daad3bbf
KH
990Fri Jul 8 12:23:44 1994 Kung Hsu (kung@mexican.cygnus.com)
991
992 * config/obj-ecoff.h: define macro OBJ_GENERATE_ASM_LINE_STAB.
993 * config/obj-elf.h: ditto.
994 * read.c (read_a_source_file): generate line stabs for asm file.
995 * read.h: add extern generate_asm_line_stab.
996 * ecoff.h : add prototype for ecoff_generate_asm_line_stab().
997 * ecoff.c (add_file): if there's no filename provided, set switch
998 to generate line stabs for .s file.
999 * ecoff.c (add_procedure): add stabs symbol for .ent directive.
1000 * ecoff.c (generate_ecoff_stab): creates an artificial stabs.
1001 * ecoff.c (generate_asm_line_stab): generate a artifitial label
1002 for each line and generate a stabn for the line.
1003
13d9fd33
SC
1004Thu Jul 7 17:04:03 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1005
1006 * gasp.c (get_any_string): Cope with getting a string with an
1007 alternate base specifier.
1008 (do_aif, do_aelse): Only enable output if expression is true and previous
1009 level was on.
1010 (chartype_init): Add BASEBIT chartype.
1011 (process_pseudo_op): Notice nesteed AIFs.
1012
1013Thu Jul 7 12:30:22 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1014
1015 * h8300.c (do_a_fix_imm): Code for 2 bit reloc type using in trapa
1016 insn. (fix pr 5165, 5174)
1017
8fd04cba
JL
1018Thu Jul 7 11:31:32 1994 Jeff Law (law@snake.cs.utah.edu)
1019
13d9fd33
SC
1020 * config/tc-hppa.c (R_DLT_REL): If it isn't defined, then define
1021 to an appropriate value to avoid losing on old hpux systems.
1022
8fd04cba
JL
1023 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions for
1024 symbols in DLT relative relocs.
1025 (tc_gen_reloc): Zero out the addend field for DLT relative relocs.
1026
8882a587
ILT
1027Wed Jul 6 01:07:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1028
1029 * config/tc-ppc.c (ppc_tc): If not OBJ_COFF, force TOC entry to
1030 align to a four byte boundary.
1031
4174e052
KR
1032Tue Jul 5 15:42:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1033
1034 * config/tc-alpha.c (load_expression): Handle 32-bit addends.
1035 (gpdisp_hi16_howto): Now points to const.
1036 (load_insn_table, alpha_ip): Fix uses of const.
1037
10f67315
KR
1038 * doc/internals.texi: Updates to COFF description. Added "@end
1039 defmac" as needed, and some extra heading and "@bye" so it'll
1040 format as a separate document.
1041
bcb62abf
ILT
1042Tue Jul 5 13:54:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1043
1044 * config/obj-elf.h (S_GET_ALIGN, S_SET_ALIGN): Define.
1045 * config/obj-elf.c (obj_elf_common): Set alignment of common
1046 symbol.
1047 * config/tc-sparc.c (s_common): If OBJ_ELF, set alignment of
1048 common symbol.
1049
655f3ef4
JL
1050Mon Jul 4 18:29:43 1994 Jeff Law (law@snake.cs.utah.edu)
1051
1052 * config/tc-hppa.c (is_complex): New macro.
1053 (cons_fix_new_hppa): "Handle" complex expressions.
1054
1055Fri Jul 1 00:48:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1056
1057 * config/obj-coff.c (write_object_file): Set s_align field from
1058 section_alignment array.
1059
04f0c2e3
KR
1060Thu Jun 30 15:05:28 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1061
1062 * write.c (write_object_file): Use bfd_com_section_ptr.
1063 * as.h (absolute_section, undefined_section): Use new BFD macros
1064 bfd_abs_section_ptr and bfd_und_section_ptr.
1065
f2554579
ILT
1066Thu Jun 30 14:36:37 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1067
1068 * config/tc-mips.c (macro): For M_LI_SS, decide how to handle it
1069 based on contents of imm_expr and offset_expr, rather than
1070 mips_pic. For M_LI_DD, decide how to handle it based on segment
1071 name of offset_expr, rather than mips_pic.
1072 (mips_ip): If g_switch_value < 4, use immediate values for 'l'.
1073 If g_switch_value < 8, use .rdata rather than .lit for 'L'.
1074
6f0b87c3
SS
1075Wed Jun 29 17:30:46 1994 Stan Shebs (shebs@andros.cygnus.com)
1076
1077 * as.c (show_usage): Break long string into shorter ones.
1078 (parse_args): Add -v, prints version id and continues.
1079 * config/tc-mips.c (md_show_usage): Break long string.
1080
1081Mon Jun 27 09:47:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
1082
1083 * config/tc-i386.c (md_parse_option): Handle "-V" and "-Q" if
1084 OBJ_ELF is defined.
1085
f488a4d6
SS
1086Sun Jun 26 16:30:48 1994 Stan Shebs (shebs@andros.cygnus.com)
1087
1088 * as.c (main) [HOST_SPECIAL_INIT]: New hook, for host-specific
1089 initialization.
1090
1f12ae43
JL
1091Wed Jun 22 00:24:55 1994 Jeff Law (law@snake.cs.utah.edu)
1092
1093 * config/tc-hppa.h (obj_frob_symbol): Define for OBJ_ELF.
1094 More gas/bfd lossage exposed by the new linker code.
1095
dff770c8
ILT
1096Tue Jun 21 11:32:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1097
1f12ae43
JL
1098 * subsegs.c (subseg_change): Clear seginfo after allocating it.
1099 (subseg_get): Pass actual size of seginfo to memset.
1100
dff770c8
ILT
1101 * subsegs.c (abs_seg_info, und_seg_info): Define if BFD_ASSEMBLER.
1102 (subseg_change): Store seg_info for bfd_abs_section_ptr in
1103 abs_seg_info, and store seg_info for bfd_und_section_ptr in
1104 und_seg_info.
1105 (subseg_get): Likewise. Also, don't set output_section if it is
1106 already set.
1107 (seg_info): Define as function.
1108 * subsegs.h (seg_info): Declare as function rather than defining
1109 as macro.
1110 * write.c (relax_and_size_seg): Call seg_info rather than
1111 bfd_get_section_userdata.
1112
e0b36f18
KR
1113Mon Jun 20 16:30:54 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1114
639c820d
KR
1115 * configure.in (ppc-*-elf*): New target, like -sysv4*.
1116
e0b36f18
KR
1117 * expr.c (operand): If "0f" is followed by '\0', don't do eol
1118 checks.
1119
256816ca
ILT
1120Mon Jun 20 15:17:43 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1121
1122 * ecoff.c (ecoff_build_aux): Call swap_tir_out and swap_rndx_out
1123 via backend pointer, not directly.
1124
de442a3c
ILT
1125Fri Jun 17 18:05:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1126
1127 * Makefile.in (config-stamp): Make sure there is at least one
1128 element in the for loop.
1129
0e68b3bc
JL
1130Fri Jun 17 11:01:04 1994 Jeff Law (law@snake.cs.utah.edu)
1131
239f16dd
JL
1132 * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy.
1133
0e68b3bc
JL
1134 * config/tc-hppa.h (elf_hppa_final_processing): Declare.
1135
5ee93e0a
KR
1136Wed Jun 15 20:44:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1137
286272fb
KR
1138 * as.c (parse_args): Cast xmalloc return value.
1139
5ee93e0a
KR
1140 * Makefile.in (config-stamp): If $(defs) contains multiple words,
1141 emit a #define line for each.
1142 * configure.in: For sparc64 target, use sparc cpu files and add
1143 sparcv9 to extra_defs. No longer treat sparc64-*-aout* specially.
1144
1145 * config/tc-sparc.c (membar_masks): Now static and const.
1146 (md_show_usage) [!NO_V9]: Add -Av9 to usage message.
1147 (current_architecture) [sparcv9]: Initialize to v9.
1148 (md_begin) [sparcv9]: Don't bother changing it unconditionally
1149 here.
1150 (s_reserve): Don't pass unexpected argument to as_bad with
1151 bad-segment message.
1152
1153 * as.h (bfd_alloc_by_size_t) [BFD_ASSEMBLER]: Declare.
1154
1155 * config/atof-ieee.c (int_to_gen): Commented out unused routine.
1156
1157 * config/tc-vax.c (md_assemble): Removed check of operand section.
1158
1159 Fri Jun 3 17:25:08 1994 Pat Rankin (rankin@eql.caltech.edu)
1160
1161 * config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
1162 these new VMS symbol-type macros for `complex float' and
1163 `complex double' support. Their values come from the existing
1164 DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
1165 (DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
1166 REAL8 and COMPLX8; not used yet, because gcc outputs the same
1167 .stabs for `double' regardless of whether `-mg' is used.
4174e052 1168 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
5ee93e0a
KR
1169 for gcc2's predefined types "complex float", "complex double",
1170 and "complex long double" (identical to complex double).
1171
36a87ad7
ILT
1172Wed Jun 15 12:32:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1173
0e35ba9b
ILT
1174 * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
1175 section symbol, not C_LABEL.
1176
adf05987
ILT
1177 * config/tc-mips.c (mips_ip): Permit a modifier in 'o' case, and
1178 permit non constant expressions in 'u' case. Lets ``lui
1179 $8,%hi(foo); lw $8,%lo(foo)($8)'' work correctly.
36a87ad7 1180
a5183648
ILT
1181Mon Jun 13 12:08:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1182
1183 * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
1184 to put a common symbol in a set.
1185
02d4e923
ILT
1186Sat Jun 11 16:41:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1187
1188 Add weak symbols as an extension to a.out.
1189 * read.c (pseudo_set): Only preserve external bit for OBJ_AOUT and
1190 OBJ_BOUT if not BFD_ASSEMBLER.
1191 * config/aout_gnu.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB):
1192 Define as in ../include/aout/aout64.h.
1193 * config/obj-aout.h (OBJ_SYMFIELD_TYPE): If not BFD_ASSEMBLER,
1194 define as char.
1195 (S_GET_WEAK, S_SET_WEAK): Define if not BFD_ASSEMBLER.
1196 * config/obj-aout.c (obj_pseudo_table): Add "weak".
1197 (obj_emit_symbols): Adjust type of weak symbols.
1198 (obj_aout_weak): New static function.
1199
726672c5
ILT
1200Fri Jun 10 13:48:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1201
7b1e07b4
ILT
1202 * config/obj-elf.c (obj_elf_section): Don't set any flags based on
1203 the type of a special section.
1204
726672c5
ILT
1205 * config/ho-sunos.h: Include <stdlib.h>. Don't declare malloc,
1206 realloc, free, or atol.
1207
0b3d0999
BC
1208Wed Jun 8 06:28:37 1994 Bill Cox (bill@cygnus.com)
1209
1210 * Makefile.in (check): Delete as.new dependency, so that
1211 regression test doesn't trigger an assembler build.
1212
daa7e184
ILT
1213Tue Jun 7 13:33:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1214
1215 * Makefile.in (mostlyclean, realclean): New targets.
1216 * doc/Makefile.in, testsuite/Makefile.in: Likewise.
1217
d2c71068
ILT
1218Mon Jun 6 13:10:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1219
1220 * config/tc-mips.c (RDATA_SECTION_NAME): Define.
1221 (macro): Correct M_LI_SS SVR4_PIC/EMBEDDED_PIC case. After M_LI_D
1222 or M_L_DOB or label dob, force a new frag to avoid getting
1223 confused in tc_gen_reloc.
1224 (mips_ip): Use RDATA_SECTION_NAME, not .rdata.
1225 (s_change_sec): Likewise.
1226
1fbfe108
ILT
1227Fri Jun 3 23:35:36 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1228
1229 * read.c (emit_expr): Use memset to zero out memory, rather than
1230 going through md_number_to_chars. This permits handling symbolic
1231 arguments when the size is larger than sizeof (valueT), if
1232 TC_CONS_FIX_NEW is prepared to handle the case (as it is on MIPS).
1233
f3d817d8
DM
1234Fri Jun 3 12:50:13 1994 David J. MacKenzie (djm@rtl.cygnus.com)
1235
baed44cd
DM
1236 * as.c (show_usage), config/tc-alpha.c (md_show_usage),
1237 config/tc-mips.c (md_show_usage): Fix up messages.
1238
def66e24
DM
1239 * as.h: Replace flagseen with separate variables.
1240 * as.c (parse_args): Set them. Don't accept -1 option, or -v
1241 explicitly (it's a synonym for --version).
1242 * as.c, input-scrub.c, messages.c, read.c, symbols.c, write.c,
1243 config/obj-aout.c, config/obj-aout.h, config/obj-bout.c,
1244 config/obj-bout.h, config/obj-coff.c, config/obj-coff.h,
1245 config/obj-vms.c, config/tc-hppa.c, config/tc-i386.c,
1246 config/tc-i960.c, config/tc-m68k.c, config/tc-mips.c,
1247 config/tc-vax.c: Use the new flag variables instead of flagseen.
1248 * config/tc-vax.c [OBJ_VMS]: Recognize -+, -1, -v, and document in
1249 usage.
1250
f3d817d8
DM
1251 * as.c (show_usage): Remove target specific messages;
1252 instead, call md_show_usage.
1253 (parse_args): Use getopt_long_only. Take pointers to argc and
1254 argv.
1255 (main): Pass parse_args pointers.
1256 * as.h: Remove 3 variables that are redundant with flagseen.
1257 * as.c, messages.c: Change their users to use flagseen.
1258 Define getopt stuff.
1259 * tc.h: Update md_parse_option decl. Add md_show_usage decl.
1260 * config/tc-*.c: Add md_shortopts, md_longopts,
1261 md_longopts_size, md_show_usage. Change calling convention for
1262 md_parse_option. Remove md_parse_long_option.
1263 * config/tc-ns32k.c: Rename `struct option' to `struct ns32k_option'.
1264 * config/tc-i386.h: Don't define md_parse_option.
1265
ebd6f117
DM
1266Thu Jun 2 13:54:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
1267
1268 * as.c (show_usage): New function.
1269 (parse_args): Code moved from main.
1270 Recognize --help and --version.
1271 * config/tc-ns32k.h: Define TC_NS32K.
1272 * doc/as.texinfo: Document all of the target-independent command
1273 line options.
1274
314628f6
KR
1275Thu Jun 2 12:07:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1276
1277 * gasp.c (hash_new_table): Clear newly allocated table.
1278
1279 * config/tc-m68k.c (enum _register): Add 68060 control registers
1280 BUSCR and PCR.
1281 (last_movec_reg): New macro.
1282 (m68000_control_regs, m68010_control_regs, m68020_control_regs,
1283 m68040_control_regs, m68060_control_regs): New arrays.
1284 (control_regs): New pointer.
1285 (m68k_ip): Use control_regs instead of testing CPU every time.
1286 Use last_movec_reg too. In error messages, handle 68060, and
1287 print 68060 for mfloat, too.
1288 (m68k_init_after_args): Handle "68060". Use m68040up for making
1289 m68851 choice. Set control_regs.
1290 (md_parse_option): Handle "68060".
1291 * configure.in: Setting cpu_type, recognize m68060 too.
1292
1293 * config/obj-coff.c (fixup_segment) [!BFD_ASSEMBLER]
1294 [DIFF_EXPR_OK]: Do conversion to pc-relative for difference, even
1295 if pcrel is already set.
1296
1297 * read.c (potable): Add this_gcc_requires_the_gnu_assembler in all
1298 lower-case, in case we're ignoring case of opcodes in the input
1299 file.
1300
1301 * doc/as.texinfo (.section): Document as unavailable for a.out
1302 type formats.
1303
1304 * config/tc-alpha.c (machine): New variable.
1305 (load_insn): New macro.
1306 (load_insn_table): New function.
1307 (md_begin): Call load_insn_table, once for basic instructions and
1308 once for appropriate PAL instruction table.
1309 (md_parse_option): Set `machine' based on -m##### arguments.
1310 * config/alpha-opcode.h (alpha_pal21064_opcodes): Split out from
1311 alpha_opcodes.
1312 (alpha_pal21164_opcodes): New table.
1313 (NUM21064OPCODES, NUM21164OPCODES): New macros.
1314
1315 * configure.in (target i386-*-netbsd0.8): Use 386bsd emulation.
1316
1317 * doc/Makefile.in (install-info-gasp): Use $$dir when installing
1318 file.
1319
0221ddf7
ILT
1320Wed Jun 1 10:48:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1321
1322 * config/tc-mips.c (mips_ip): Force floating point values to be
1323 aligned correctly.
1324
488442d4 1325Fri May 27 10:05:53 1994 Ken Raeburn (raeburn@cygnus.com)
c06e55d9
KR
1326
1327 Merged in changes from gas-2.3 net release:
1328
1329 * Makefile.in (VERSION): Updated to cygnus-2.3.1.
1330
1331 * config/obj-vms.c: Replaced unchecked uses of malloc with
1332 xmalloc.
1333
1334 * listing.c (list_symbol_table): Only test BFD64, not
1335 BFD_ASSEMBLER too.
1336
314628f6
KR
1337 * config/obj-coff.c (fixup_segment) [BFD_ASSEMBLER]
1338 [DIFF_EXPR_OK]: Don't check pcrel, just convert it.
c06e55d9
KR
1339
1340 * config/obj-vms.c: Removed lots of extra semicolons after
1341 compound statements.
1342 (strchr): Don't declare here.
1343
1344 * config/ho-vax.h (realloc): Declare.
1345
1346 * config/ho-vms.h (strchr, strdup): Declare.
1347
1348 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Accept and ignore
1349 option `-q'.
1350
1351 Wed May 18 20:50:35 1994 Pat Rankin (rankin@eql.caltech.edu)
1352
1353 * config/obj-vms.h (DBG_S_C_SQUAD, DBG_S_C_UQUAD): define these
1354 new VMS symbol-type macros; signed and unsigned quadword integers,
1355 for `long long' support. Their values come from the existing
1356 DSC$K_DTYPE_QU and DSC$K_DTYPE_Q macros in <descrip.h>. The
1357 VMS debugger now recognizes `long long' variables correctly.
4174e052 1358 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
c06e55d9
KR
1359 for gcc2's predefined types "long double" (same as double, as
1360 per gcc's current state), "long long int", "long long unsigned
1361 int", and final `otherwise' case (to avoid uninitialized type
1362 and size fields). [caveat: predefined types "complex int",
1363 "complex float", "complex double", and "complex long double" are
1364 still missing.]
1365
1366 * config/ho-vms.h (EXIT_FAILURE): define as 0x10000002 instead
1367 of 0, because the latter indicates success rather than failure
1368 when passed to `exit' or return from `main' compiled by gcc2.
1369
1370 * config/obj-vms.c (array_suffix, generate_suffix): replace two
1371 hardcoded `0xa3's with macro DBG_S_C_ADVANCED_TYPE from obj-vms.h.
1372 (VMS_typedef_parse): eliminate redundant if-then-else when
1373 allocating new symbol entry and linking it to VMS_Symbol_type_list.
1374
1375 Tue May 17 20:47:31 1994 Pat Rankin (rankin@eql.caltech.edu)
1376
1377 * config/obj-vms.c (Write_VMS_MHD_Records): don't try to interpret
1378 the contents of the GAS_VERSION string when falling back to it for
1379 language processor identification.
1380
1381 * make-gas.com, vmsconf.sh (ENVIRON): fix misspelling of
1382 `psect_attr' in linker options.
1383
1384 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
1385
1386 * configure.bat: update to latest makefile.in
1387 * config/te-go32.h: [new] go32's environment
1388
a193acc0
ILT
1389Fri May 20 17:59:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1390
1391 * as.h: Don't declare parameters for strstr.
1392
f9c57637
ILT
1393Thu May 19 15:40:13 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1394
1395 * config/tc-sparc.c (md_section_align): Don't change the size if
1396 OBJ_ELF.
1397
ac7f7dfe
ILT
1398Wed May 18 13:08:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1399
1400 * Makefile.in (install): Redirect ln output to /dev/null. If ln
1401 fails on gasp, install gasp.new, not gasp.
1402
44e8d616
JL
1403Wed May 18 09:16:36 1994 Jeff Law (law@snake.cs.utah.edu)
1404
1405 * config/tc-hppa.c (pa_ip): Use R_HPPA_ABS_CALL, not R_HPPA for
1406 absolute calls.
1407
ee8b8346
JL
1408Tue May 17 12:50:46 1994 Jeff Law (law@snake.cs.utah.edu)
1409
1410 * config/tc-hppa.c (pa_parse_fp_cmp_cond): Report an error
1411 on a partial completer match.
1412
3315c7c7
JL
1413Mon May 16 12:03:49 1994 Jeff Law (law@snake.cs.utah.edu)
1414
1415 * config/tc-hppa.c: Change .hppa_unwind to .PARISC.unwind
1416 throughout code.
1417 (is_complex): Delete definition and support for complex relocation
1418 types.
1419 (tc_gen_reloc): Delete special unwind crud for ELF. Simplify and
1420 rewrite ELF code based on 94-02-02 PA ELF draft spec.
1421 (pa_build_unwind_subspace): Use standard PARISC_DIR32 relocs for
1422 the unwind descriptors.
1423
c794f0aa
SC
1424Fri May 6 14:13:15 1994 Steve Chamberlain (sac@cygnus.com)
1425
1426 * config/go32.mh: New makefile fragment for go32 crossing.
1427 * configure.in (host==go32): Use new fragment.
1428
2db90a63
ILT
1429Fri May 6 14:35:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1430
1431 * gasp.c: Include libiberty.h.
1432 (main): Remove unused variable i.
1433
1434 * config/tc-ppc.c (md_begin): When using -many, permit comparison
1435 instructions to appear multiple times in the opcode table.
1436
59232011
KR
1437Thu May 5 19:14:43 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1438
2db90a63
ILT
1439 * Makefile.in (VERSION): Update to 2.2.90.
1440
fbefddfb
KR
1441 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Don't permit additions
1442 to the symbol table if it's already been set in the output bfd.
1443 (symbol_begin) [! EMIT_SECTION_SYMBOLS] [RELOC_REQUIRES_SYMBOL]:
1444 Don't use bfd_abs_section.symbol for gas absolute symbol.
1445
59232011
KR
1446 * doc/Makefile.in (distclean, clean-dvi, clean-info): Delete gasp
1447 files too.
1448
6d41de19
ILT
1449Thu May 5 18:12:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1450
1451 * config/tc-mips.c (mips_emit_delays): Make call to
1452 mips_no_prev_insn unconditional.
1453
a139d99b
KR
1454Thu May 5 17:25:38 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1455
1456 * config/obj-coff*.*: Merged coffbfd versions into coff versions,
1457 with a single "#ifdef BFD_ASSEMBLER" controlling most of it for
1458 now. Deleted obj-coffbfd.* files.
1459 * configure.in: Always use obj-coff.* for COFF targets.
1460
9267b020
KR
1461Wed May 4 13:34:11 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1462
a139d99b
KR
1463 * config/te-dpx2.h (TARGET_FORMAT, REGISTER_PREFIX_OPTIONAL):
1464 Define.
1465 * configure.in (m68k-bull-sysv3*): Enable.
1466
9267b020
KR
1467 * config/coff_gnu.h: Deleted.
1468
9fc63ce0
ILT
1469Wed May 4 11:29:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1470
2237e240
ILT
1471 * config/tc-m68k.h (TARGET_FORMAT): If not TE_SUN3, define as
1472 "a.out-zero.big".
1473
9fc63ce0
ILT
1474 * config/obj-coffbfd.c (fixup_segment): Make common symbol and PC
1475 relative adjustments when TE_LYNX is defined as well as when
1476 TC_I386 is defined.
1477
a3547e53
KR
1478Wed May 4 02:29:21 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1479
3f048548
KR
1480 * as.h (strstr): Restore declaration.
1481 (subseg_get) [BFD_ASSEMBLER]: Declare.
1482
1483 * write.c (write_object_file): If obj_adjust_symtab is defined,
1484 invoke it. Then call set_symtab, and finally invoke *_frob_file
1485 hooks.
1486 * config/obj-coff.c (coff_adjust_symtab): Renamed from
1487 coff_frob_file.
1488 * config/obj-coff.h (coff_adjust_symtab): Changed declaration
1489 accordingly.
1490 (obj_adjust_symtab): Macro also changed.
1491
a3547e53
KR
1492 * configure.in (i386-*-gnu*): New target, handled like i386-mach.
1493
1494Tue May 3 21:04:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1495
1496 * config/obj-coff.h (TARGET_FORMAT) [TC_I960]: Select little
1497 endian version.
1498
1499 * config/obj-coffbfd.h (TARGET_FORMAT) [TC_I960]: Ditto.
1500
1501 * config/obj-coff.c (coff_frob_section): Round up the size of
1502 every section to a multiple of the alignment, so that BFD doesn't
1503 surprise us.
1504
1505 Eliminate many simple differences between the two COFF back ends:
1506
1507 * config/obj-coffbfd.c: Removed all uses of DEFUN and DEFUN_VOID.
1508 Made minor stylistic changes, deleted some register declarations.
1509 (stack_top): Deleted.
1510 (symbol_to_chars): Use absolute_section and reg_section instead of
1511 the corresponding SEG_* symbols.
1512 (obj_coff_endef, tag_find_or_make, fixup_segment): Likewise.
1513 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
1514 Moved to just after pseudo-op table. All functions now static.
1515 (stack_delete): Removed declaration.
1516 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
1517 after stack functions.
1518 * config/obj-coffbfd.h: Reordered some declarations and macros.
1519 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
1520 (stack typedef): Deleted.
1521 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
1522 (SYM_AUXENT): New macro.
1523 (SA_GET_*, SA_SET_*): Define in terms of SYM_AUXENT when feasible.
1524 (SF_GET_*, SF_SET_*): Define in terms of SF_GET when feasible.
1525 (SA_GET_SYM_TAGNDX, SA_GET_SYM_ENDNDX, SA_SET_SYM_TAGNDX,
1526 SA_SET_SYM_ENDNDX, object_headers typedef, data_section_header,
1527 text_section_header): Delete non-BFD_HEADERS versions, since we
1528 always define that symbol now.
1529
1530 * config/obj-coff.c (stack_top): Deleted.
1531 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
1532 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Change
1533 argument name from "ignored" to "ignore".
1534 (obj_coff_val): Use frag_now_fix.
1535 (obj_pseudo_table): Removed IGNORE_DEBUG version, since it doesn't
1536 get used.
1537 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
1538 Moved to just after pseudo-op table. All functions now static.
1539 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
1540 after stack functions.
1541 * config/obj-coff.h: Reordered some declarations and macros.
1542 Protected against multiple inclusions.
1543 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
1544 (stack typedef): Deleted.
1545 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
1546 (stdoutput): Deleted declaration.
1547 (TARGET_FORMAT) [TC_I386]: Don't define if already defined.
1548
1b96bdce
ILT
1549Mon May 2 17:09:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1550
1551 * subsegs.h (segment_info_type): Use fix_tail field even if
1552 BFD_ASSEMBLER.
1553 * subsegs.c (subseg_change): Initialize fix_tail field.
1554 (subseg_get): Likewise.
1555 * write.c (frags_chained): New static variable.
1556 (fix_new_internal): If frags_chained is set, use fix_root and
1557 fix_tail from seg_info (now_seg), rather than frchain_now.
1558 (chain_frchains_together_1): Set fix_tail field.
1559 (chain_frchains_together): Set frags_chained.
1560
17f0b355
KR
1561Thu Apr 28 01:39:15 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1562
1563 * config/tc-mips.c (s_option): Only refer to g_switch_* variables
1564 if GPOPT is defined.
1565 (s_abicalls): Ditto.
1566 (md_apply_fix): Cast char* to unsigned char* to avoid pointer
1567 mismatch.
1568
fa1a86f3
SC
1569Wed Apr 27 11:06:32 1994 Steve Chamberlain (sac@cygnus.com)
1570
1571 * configure.in (i386-*-go32): Uses coff now.
1572 * gasp.c (main): Now takes -D on command line.
1573 (show_usage): Describe new options.
1574
b46f83f2
KR
1575Tue Apr 26 17:10:30 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1576
1577 * listing.c (list_symbol_table): Print "NO DEFINED SYMBOLS" and
1578 "NO UNDEFINED SYMBOLS" if there aren't any, instead of displaying
1579 the header with an empty list.
1580
fb51366f
KR
1581 * config/obj-coffbfd.c (fill_section): Check COFF_NOLOAD_PROBLEM
1582 also before setting STYP_NOLOAD for .bss section.
1583
926ffe94
KR
1584 * config/tc-m68k.c (flag_reg_prefix_optional): New variable.
1585 Initialized to value of REGISTER_PREFIX_OPTIONAL, if defined, or
1586 zero.
1587 (m68k_reg_parse): If flag_reg_prefix_optional is set, permit
1588 register prefix to be absent.
1589 (m68k_ip_op): Accept `&' also for immediate constants.
1590 (insert_reg): Don't bother with (two!?) sanity checks of the
1591 symbol table when inserting each register.
1592 (m68k_parse_long_option): New function. Set
1593 flag_reg_prefix_optional if "register-prefix-optional" is passed.
1594 * config/tc-m68k.h (REGISTER_PREFIX): Always define if not already
1595 defined.
1596 (OPTIONAL_REGISTER_PREFIX): Don't define.
1597 (REGISTER_PREFIX_OPTIONAL): If not already defined, define as zero
1598 or one depending on M68KCOFF.
1599
1600 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
1601 * config/tc-m68k.c (DATA, ADDR, SP, FPREG, COPNUM, BAD, BAC):
1602 Define as macros instead of enumerators, since the Apollo compiler
1603 can't handle "enumVal1, enumVal2 = enumVal1" when defining an enum
1604 type.
1605 (make_pcrel_absolute) [NO_PCREL_RELOCS]: New function.
1606 (tc_coff_fix2rtype) [NO_PCREL_RELOCS]: Generate only R_RELBYTE,
1607 R_DIR16, and R_DIR32 relocs.
1608 * config/tc-m68k.h [TE_APOLLO] (COFF_MAGIC, COFF_AOUTHDR_MAGIC):
1609 Use Apollo versions.
1610 [TE_APOLLO] (OBJ_COFF_OMIT_OPTIONAL_HEADER): Undefine. That is,
1611 do include the optional header for Apollo target.
1612 (COFF_MAGIC): Don't define as MC68MAGIC if it's already defined.
1613
1614 * config/tc-m68k.h [TE_DELTA] (LEX_PCT): Define as 1, so that `%'
1615 can be used within a label name.
1616
1617 * config/tc-m68k.h (m68k_init_after_args): Declare.
1618 (tc_init_after_args): Define as m68k_init_after_args.
1619 * config/tc-m68k.c (m68k_init_after_args): New function,
1620 containing one-shot code from md_assemble. Added warning for
1621 combination of 68040 and 68851.
1622 (md_assemble): Startup-time code deleted.
1623
497c179a
ILT
1624Mon Apr 25 16:19:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1625
1626 * doc/Makefile.in (clean, distclean): Remove asconfig.texi.
1627
f38cd6ec
JL
1628Sun Apr 24 00:13:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1629
1630 * config/tc-hppa.c (pa_ip): 13 bit immediate constant (for break
1631 instruction) is unsigned.
1632
92867d8e
ILT
1633Fri Apr 22 17:58:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1634
1635 * config/obj-ecoff.c (ecoff_frob_file): Use bfd_ecoff_set_gp_value
1636 and bfd_ecoff_set_regmasks to set the GP value and the register
1637 masks, rather than using the now obsolete fake .reginfo section.
1638
e860dfd0
KR
1639Fri Apr 22 15:17:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1640
1641 * listing.c (list_symbol_table): Don't print register symbols as
1642 undefined.
1643
988238d3
KR
1644 * config/obj-coff.c (obj_symbol_new_hook): Don't need to strip
1645 underscores, since symbol_new will already have done it.
1646 * config/obj-coffbfd.c (obj_symbol_new_hook): Ditto.
1647
a926dd6a
KR
1648 * as.c (main): If tc_init_after_args is defined, invoke it after
1649 all arguments have been processed.
1650
1651 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
1652 * as.c (perform_an_assembly_pass) [TE_APOLLO]: Create .wtext
1653 section instead of .text. Call create_target_segments.
1654 * read.c (demand_copy_string): No longer static.
1655
6fdc26e6
ILT
1656Thu Apr 21 15:50:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1657
1658 * config/tc-mips.c (append_insn): Permit branches to be switched
1659 with the preceding instruction even if .set nobopt has been seen.
1660 .set nobopt actually controls whether to bring up an instruction
1661 from the branch target, which gas does not currently support.
1662
a6652b1c
KR
1663Wed Apr 20 18:46:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1664
71b4de6f
KR
1665 * config/obj-coff.h, config/obj-coff.c: Deleted all code used only
1666 when BFD_ASSEMBLER is not defined, and all conditionals relating
1667 to such code. No such targets remain.
1668
1669 Fixes for stabs-in-coff:
1670 * config/obj-coff.c: Include subsegs.h.
1671 (coff_frob_section): New function.
1672 (obj_coff_init_stab_section): New function.
1673 * config/obj-coff.h (obj_coff_init_stab_section,
1674 coff_frob_section): Declare.
1675 (obj_frob_section): New macro; uses coff_frob_section.
1676 (INIT_STAB_SECTION): New macro; uses obj_coff_init_stab_section.
1677
a6652b1c
KR
1678 * config/tc-sparc.c (md_section_align): Always round up to
1679 multiple of alignment power specified in bfd target vector.
d924d209
KR
1680
1681 * gasp.c: Include ctype.h.
1682
19990560
KR
1683Mon Apr 18 21:08:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1684
1685 * doc/Makefile.in, doc/as.texinfo: Renamed asdoc-config.texi to
1686 asconfig.texi.
1687
1688 * doc/Makefile.in (install-info-as, install-info-gasp): Get file
1689 names from source directory without pathname.
1690
1691 * config/obj-vms.c (VMS_write_object_file): While looking for
1692 register mask, skip empty fill frags caused by enabling listing
1693 output.
1694
1695 * config/ho-sysv.h: Include string.h.
1696
1697 * doc/internals.texi: New (well, recently added) file. Just added
1698 info on as_warn and friends.
1699
9de7c1fc
JL
1700Mon Apr 18 14:28:22 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1701
1702 * config/tc-hppa.c (pa_parse_space_stmt): Use the built-in
1703 defaults for defined, private, and spnum fields for the
1704 $TEXT$ and $PRIVATE$ spaces. Do not clobber spnum. Do
1705 not reset the segment if just updating a space.
1706 (pa_spaces_begin): Set BFD section flags for all built-in
1707 subspaces.
1708
e904716c
ILT
1709Fri Apr 15 10:51:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1710
37032d95
ILT
1711 * ecoff.c (first_proc_ptr): New static variable.
1712 (add_procedure): Set first_proc_ptr if it hasn't been set.
1713 (ecoff_build_lineno): If the first procedure does not start at
1714 address zero, insert a dummy line to compensate.
1715
e904716c
ILT
1716 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Make gasp.new
1717 as well as as.new.
1718
d6f98c55
KR
1719Thu Apr 14 15:12:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1720
1721 * expr.c (operand): Try to parse "0f" and "0b" sequences as
1722 floating point and binary numbers respectively; if it doesn't
1723 work, treat them as local labels.
1724
c92d9ee9
KR
1725 * Makefile.in: Make $(OBJS) depend on $(ALL_OBJ_DEPS).
1726 * configure.in: Set ALL_OBJ_DEPS in output Makefile.
1727
1728 Based on suggestions from <BAILEY@hmivax.humgen.upenn.edu>
1729 (Charles Bailey):
1730 * vmsconf.sh: In generated file, get ".obj" suffix right, build
1731 source files from other directories into objects in the current
1732 directory, and specify PSECT attributes explicitly to linker.
1733 Also added missing label.
1734 * Makefile.in (stamp-mk.com): Reference new variable
1735 VMS_OTHER_OBJS for list of non-local object files, instead of
1736 listing them here.
1737 (VMS_OTHER_OBJS): New variable, added more libiberty files.
1738 * make-gas.com: Regenerated.
1739
1740 * config/ho-vms.h (unlink): Define as delete.
1741
1742 * config-gas.com: Fix quoting on TARGET_CANONICAL definition.
1743 Delete files before creating them.
1744
1a69212c
ILT
1745Thu Apr 14 13:34:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1746
b3cd8555
ILT
1747 * Makefile.in (de-stage1, de-stage2, de-stage3): Use rm -f.
1748
1a69212c
ILT
1749 * config/tc-mips.h (DIFF_EXPR_OK): Define.
1750 * config/tc-mips.c (macro_build): Permit BFD_RELOC_PCREL_LO16 for
1751 certain cases of 'i', 'j' and 'o'. Change 'u' to take an
1752 argument, the reloc type.
1753 (load_register): Pass reloc type to macro_build for 'u'.
1754 (macro): Likewise. For M_LA_AB permit a difference expression
1755 when generating embedded PIC code between an arbitrary symbol and
1756 a symbol in the .text section.
1757 (mips_force_relocation): Force BFD_RELOC_PCREL_HI16_S and
1758 BFD_RELOC_PCREL_LO16 to be emitted.
1759 (md_apply_fix): Check that most relocs are not PC relative.
1760 Handle BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
1761 (tc_gen_reloc): Change #error to as_fatal. Handle
1762 BFD_RELOC_PCREL_LO16 and BFD_RELOC_PCREL_HI16_S.
1763
cc886e3d
SS
1764Tue Apr 12 18:25:13 1994 Stan Shebs (shebs@andros.cygnus.com)
1765
1766 * subsegs.c (subsegs_begin): Call memset with args in the correct
1767 order.
1768 (subseg_get): Clear newly allocated seginfo, set its pointer slots
1769 to NULL instead of 0.
1770
05210990
JL
1771Mon Apr 11 09:00:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1772
caed9e82
JL
1773 * config/tc-hppa.c (pa_procend): Handle case where label was
1774 defined after the .proc directive.
1775
05210990
JL
1776 * config/tc-hppa.c (pa_procend): Give an error if we encounter a
1777 procend for a procedure without a name.
1778
1c803e52
ILT
1779Thu Apr 7 14:28:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1780
1781 * config/tc-mips.c (macro): Pass NULL for expression argument to
1782 macro_build for nori case.
1783 (SWITCH_TABLE): Define.
1784 (mips_force_relocation): Force a relocation for a switch table
1785 entry.
1786 (md_apply_fix): Write switch table entry value into file.
1787 (tc_gen_reloc): Use BFD_RELOC_GPREL32 for a switch table entry,
1788 and set the addend to the difference between the reloc address and
1789 the subtrahend.
1790
0b503989
JL
1791Thu Apr 7 10:38:18 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1792
1793 * config/tc-hppa.h (elf_tc_symbol): Delete. No longer used.
1794 (elf_tc_make_sections): Likewise.
1795 (hppa_tc_make_sections, hppa_tc_symbol): Delete extern decls.
1796
1797 * config/tc-hppa.c (hppa_tc_make_sections): Delete function.
1798 (hppa_tc_symbol): Likewise.
1799
1800 * config/obj-elf.c (elf_frob_file): Delete elf_tc_symbol and
1801 elf_tc_make_sections stuff. It was there to support PA braindamage
1802 which has been fixed, and in the case of elf_tc_make_sections is
1803 redundant with elf_tc_final_processing.
1804
f39a73b1
JL
1805Wed Apr 6 20:48:30 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1806
1807 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
1808 manufacturer.
1809
f3645945
ILT
1810Tue Apr 5 15:48:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1811
1812 * config/tc-mips.c (mips_ip): For case 'o', when generating
1813 embedded PIC code, accept the difference between two local symbols
1814 as being constant.
1815 (mips_force_relocation): Only force a reloc to be generated for a
1816 PC relative fixup.
1817 (md_apply_fix): For BFD_RELOC_32 and BFD_RELOC_LO16, put the fixup
1818 value into the file if the fixup will not generate a reloc.
1819
03fcf1f8
KR
1820Tue Apr 5 11:14:14 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
1821
1822 * config/tc-sparc.c (s_reserve): If section passed isn't bss,
1823 don't spew remainder of input file in error message.
1824 (tc_gen_reloc): If bfd_reloc_type_lookup returns null, print error
1825 message with reloc type and try to process remainder of file.
1826
1827 * doc/Makefile.in (install-info-as, install-info-gasp): New
1828 targets, now explicitly checking $(srcdir) for info files.
1829 (install-info): Depend on both of them; do nothing more.
1830
79381848
JL
1831Mon Apr 4 17:06:04 1994 Jeffrey A. Law (law@cygnus.com)
1832
1833 * config/tc-hppa.c (tc_gen_reloc): Fix thinko in ELF version.
1834
1e147242
ILT
1835Mon Apr 4 12:39:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1836
1937a665
ILT
1837 * config/tc-ppc.c (ppc_insert_operand): Check PPC_OPERAND_SIGNED
1838 flag rather than signedp field. Only permit extended range if
1839 PPC_OPERAND_SIGNOPT flag is set and assembling in 32 bit mode.
1840 Based on patch from David Edelsohn (edelsohn@npac.syr.edu).
1841
1e147242
ILT
1842 * config/tc-ppc.c (ppc_size): New static variable.
1843 (ppc_arch): Check for PPC_OPCODE_PPC before PPC_OPCODE_POWER.
1844 (md_begin): If an instruction has a size specific flag set, only
1845 add it if we are assembling that size.
1846
7ab2e983
ILT
1847Thu Mar 31 16:51:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1848
1849 * config/tc-sparc.c (tc_gen_reloc): Add a gruesome hack to get
1850 cross section PC relative relocs right for COFF and ELF.
1851
75d20ac8
KR
1852Mon Mar 28 14:38:23 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1853
1854 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Always define.
1855 (OBJ_PROCESS_STAB): Don't define.
1856
57afabd0
ILT
1857Mon Mar 28 12:40:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1858
1859 * config/obj-aout.c (obj_aout_frob_symbols): Don't let BFD clobber
1860 the type of symbol set symbols which happen to be in the absolute
1861 or undefined section.
1862
882bdc69
ILT
1863Mon Mar 28 12:35:00 1994 David Edelsohn (edelsohn@npac.syr.edu)
1864
1865 * config/tc-ppc.c (md_parse_option): Add -mpwrx (POWER/2 aka
1866 RIOS2), -mpwr (POWER aka RIOS1), -mppc (PowerPC aka MPC603/604),
1867 and -many (all architectures).
1868
de3ffc7a
JL
1869Sun Mar 27 14:04:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1870
1871 * config/tc-hppa.c (tc_gen_reloc): Set addend for relocation
1872 involving a function symbol which is not a plabel to zero.
1873 (md_apply_fix): Never pass a function symbol to field_adjust.
1874
5b63f465
ILT
1875Fri Mar 25 17:35:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1876
645f842c
ILT
1877 * config/obj-aout.c (obj_aout_frob_symbol): If N_EXT is set for an
1878 N_INDR symbol, set BSF_EXPORT and clear BSF_LOCAL.
1879
5b63f465
ILT
1880 * config/tc-mips.c (append_insn): If EMBEDDED_PIC, don't swap a
1881 branch with an instruction that uses $at, in case the branch is
1882 later expanded.
1883 (macro): If EMBEDDED_PIC, case M_JAL_A may use $at.
1884 (md_pcrel_from): If not OBJ_AOUT, return 4 for an undefined symbol
1885 to make it pcrel_offset.
1886 (tc_gen_reloc): If not OBJ_AOUT, set the reloc addend to
1887 reloc->address; another gruesome hack to get gas reloc handling to
1888 do the right thing.
1889
11d7c064
KR
1890Thu Mar 24 21:29:29 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1891
1892 * config/tc-alpha.c (alpha_ip): Only set GP prolog size if using
1893 PV register.
1894 (T12): New macro.
1895 (emit_insn): New function.
1896 (md_assemble): Call it.
1897 (alpha_force_relocation): Handle BFD_RELOC_26, for call_pal
1898 instructions.
1899 (lituse_pending): New variable. Set by anything that generates a
1900 LITERAL reloc, cleared by anything that generates a LITUSE reloc,
1901 tested by code that might want to emit a LITUSE reloc.
1902 (emit_unaligned_io): New function. Currently calls md_assemble,
1903 but it should eventually be converted to generate the insn itself
1904 and call emit_insn directly.
1905 (emit_load_unal, emit_store_unal, emit_byte_manip_r,
1906 emit_extract_r, emit_insert_r, emit_mask_r, emit_sign_extend,
1907 emit_bis_r): Likewise.
1908 (alpha_ip, case 'I'): Handle with BFD_RELOC_23.
1909 (alpha_ip, label get_macro): Don't emit the final instruction if
1910 the opcode is zero.
1911 (alpha_ip, case 'B', subcase 'd'): New case, for subword and
1912 unaligned memory access macros.
1913 (md_apply_fix): Handle BFD_RELOC_26. Generate an error message if
1914 the value can't be resolved.
1915
1916Wed Mar 23 16:06:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1917
1918 * config/tc-mips.c (md_parse_option): For -membedded-pic, force
1919 the -G value to 0x7fffffff. For SVR4 PIC options, don't call
1920 bfd_set_gp_size here, it's done in md_begin. Don't permit -G with
1921 -membedded-pic.
1922 (mips_force_relocation): New function.
1923 (md_apply_fix): Set fixP->fx_done appropriately.
1924 (s_change_sec): For EMBEDDED_PIC, change .data and .rdata to
1925 .sdata.
1926 * config/tc-mips.h (TC_FORCE_RELOCATION): Define.
1927 (mips_force_relocation): Declare.
1928 (TC_HANDLE_FX_DONE): Define.
1929
e1b5066f
ILT
1930Tue Mar 22 13:58:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1931
d9aba805
ILT
1932 * config/tc-mips.c (enum mips_pic_level): New enum.
1933 (mips_pic): Change from int to enum mips_pic_level. Change all
1934 uses (0 becomes NO_PIC, 2 becomes SVR4_PIC).
1935 (load_address): Handle EMBEDDED_PIC.
1936 (macro): Handle EMBEDDED_PIC in all PIC cases.
1937 (md_parse_option): Accept -membedded-pic to use EMBEDDED_PIC. If
1938 OBJ_ELF, accept -KPIC and -call_shared to use SVR4_PIC and accept
1939 -non_shared to use NO_PIC (this is how the Irix 5 assembler
1940 works). Do not permit -G with SVR4_PIC.
1941 (s_abicalls): Warn if -G was used, and force -G 0.
1942 (tc_gen_reloc): Set reloc->addend to 0 for a PC relative reloc for
1943 anything but a.out, not just for ELF. For ECOFF, don't generate a
1944 BFD_RELOC_16_PCREL_S2 reloc unless using EMBEDDED_PIC.
1945
e1b5066f
ILT
1946 * config/obj-ecoff.h (obj_sec_sym_ok_for_reloc): Define to be 1.
1947
1948Sun Mar 20 16:31:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1949
1950 * config/tc-hppa.c (create_new_space): Use ints, not chars as
1951 parameters to avoid losing when compiling with HP CC.
1952 (create_new_subspace, update_subspace, fix_new_hppa): Likewise.
1953
1871f91a
KR
1954Sun Mar 20 14:43:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1955
c37f6138
KR
1956 * Makefile.in (config-stamp): If `defs' is defined, emit a
1957 preprocessor directive to create a macro named by this value into
1958 config.new; don't explicitly go for BFD_ASSEMBLER.
1959 * configure.in: Define `defs', not `BFDDEF'. Set it to
1960 MANY_SEGMENTS for any obj-coffbfd target.
1961 * config/obj-coffbfd.h (BFD_HEADERS, BFD): Define.
1962 * config/i386coff.mt (TDEFINES): Don't define BFD, MANY_SEGMENTS,
1963 or BFD_HEADERS.
1964 (LOCAL_LOADLIBES): Deleted.
1965 * config/m68kcoff.mt (TDEFINES): Don't define those macros.
1966 * config/m88kcoff.mt (TDEFINES): Ditto.
1967 * config/ebmon29k.mt: Deleted.
1968 * config/h8300hds.mt: Deleted.
1969 * config/ic960coff.mt: Deleted.
1970 * config/sparc.mt: Deleted.
1971 * config/h8300.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
1972 * config/h8500.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
1973 * config/sh.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
1974 * config/z8k.mt (LOCAL_LOADLIBES): Deleted.
1975 (TDEFINES): Don't define the coffbfd macros.
1976
1977 * Makefile.in: Insert makefile fragments before OBJS definition.
1978 (OBJS): Add $(TE_OBJS).
1979
3680de74
KR
1980 * config/obj-coff.c (obj_pseudo_table): Supply "section"
1981 unconditionally.
1982
1871f91a
KR
1983 * write.c (set_symtab): Define only if BFD_ASSEMBLER.
1984
c20c7506
JL
1985Sun Mar 20 12:06:05 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
1986
1987 * Makefile.in (STAGESTUFF): Add gasp.new.
1988
634233a3
KR
1989Fri Mar 18 20:09:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1990
1cf7548e
KR
1991 * write.c (symbol_table_frozen): New variable, to be set after
1992 bfd_set_symtab is called.
1993 (dump_section_relocs): Note whether a symbol is a section symbol
1994 or not.
1995 (adjust_reloc_syms): For now, always supply an absolute symbol for
1996 fixups without symbols but not yet `done'. Use section_symbol to
1997 get the symbol, instead of going directly for abs_symbol.
1998 (write_relocs) [DEBUG4]: Abort if any symbol referred to by a
1999 reloc is not a section symbol and is not in the symbol table.
2000 (set_symtab): New function, broken out from write_object_file.
2001 Counts symbol table instead of relying on an earlier count.
2002 (write_object_file): Call set_symtab, but do it after potentially
2003 invoking the *_frob_file macros. Don't bother counting symbols.
2004 Call symbol_remove, instead of expanding it in place. Moved the
2005 conditionalized `object_file_size' declaration down to
2006 conditionalized block where it's used. When using the absolute
2007 symbol for a fixup without a symbol, set sy_used_in_reloc.
2008 (write_object_file) [BFD_ASSEMBLER]: Call section_symbol to get
2009 the correct symbol for the absolute section.
2010
ec3c65e1
KR
2011 * subsegs.c (section_symbol): Use symbol_new instead of
2012 symbol_make, since we may want it to go into the symbol table.
2013 Make the new symbol have internal linkage. If
2014 obj_sec_sym_ok_for_reloc says it's okay, use the BFD section
2015 symbol with the newly created GAS symbol.
2016 (obj_sec_sym_ok_for_reloc): Default to always returning 0.
2017 * config/obj-aout.h (obj_sec_sym_ok_for_reloc) [BFD_ASSEMBLER]:
2018 New macro.
2019 * config/obj-elf.h (obj_sec_sym_ok_for_reloc): New macro.
2020
2021 * config/tc-sparc.c: Include subsegs.h.
2022 (in_signed_range): New function.
2023 (sparc_ip): Use it.
2024 (sparc_ip, case 'i'): Use BFD_RELOC_SPARC13, not _BASE13.
2025 (sparc_ip, label "immediate"): Reject constants for pcrel
2026 instructions only if the relocation type indicates a "call"
2027 instruction and the offset is within range of a "jmpl %g0". If
2028 it's not in range, use the absolute section symbol plus an offset.
2029 (md_apply_fix): Use in_signed_range. Combined _SPARC13 and
2030 _BASE13 cases.
2031 (tc_gen_reloc): Permit BFD_RELOC_SPARC13.
2032
1be3cf74
KR
2033 * config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
2034 MANY_SEGMENTS).
2035
634233a3
KR
2036 * configure.in: Eliminated all targets using obj-coff but not
2037 defining BFD_ASSEMBLER; I think all such targets that are
2038 supported will be matched by real CPU-OS combinations earlier in
2039 the case statement.
2040 (targets *-*-coff*, *-sysv*, *-*-sco*, *-*-sysv32): Deleted. Made
2041 some comments about the dpx2 configuration, but left it disabled,
2042 since it couldn't be reached before.
2043 (target a29k-amd-ebmonold): Deleted.
2044
49ccc555
JL
2045Thu Mar 17 13:36:09 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2046
2047 * config/tc-hppa.c (pa_import): Correctly handle importing of an
2048 already defined symbol.
2049
23dc1ae3
ILT
2050Wed Mar 16 17:11:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2051
614a3211
ILT
2052 * config/tc-mips.c (mips_ip): Only accept overly large values for
2053 the 'j' operand if there are no further alternatives for this
2054 instruction.
2055
d6e6bc1c
ILT
2056 * config/obj-coffbfd.c (adjust_stab_section): Initialize
2057 stabstrseg to SEG_UNKNOWN, not -1. After loop, check whether it
2058 is not SEG_UNKNOWN rather than checking whether it is >= 0.
2059
23dc1ae3
ILT
2060 * config/tc-mips.c (mips_align): Take new argument, label, and use
2061 it instead of global insn_label.
2062 (s_align, s_cons, s_float_cons, s_gpword): Save insn_label before
2063 call to mips_emit_delay and pass it to mips_align.
2064
2065Wed Mar 16 11:54:12 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2066
c38c91da
JL
2067 * config/tc-hppa.c (pa_equ): Handle both .reg and .equ correctly.
2068
f2ada910
JL
2069 * config/tc-hppa.c (pa_callinfo): Accept "millicode" as an
2070 argument to a .callinfo directive. Don't loop forever on errors.
2071
c38c91da 2072 * config/tc-hppa.c (pa_equ): Use pa_parse_number so that we can
23dc1ae3
ILT
2073 use pre-defined registers as arguments.
2074
954979ca
KR
2075Mon Mar 14 14:29:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2076
dbc529c4
KR
2077 * write.c (write_object_file): Check both S_IS_LOCAL and
2078 S_IS_EXTERNAL when deciding whether to discard a symbol.
2079
2080 * config-gas.com: Scan Makefile.in, not version.c, for current
2081 version number. Delete all versions of temp files when finished
2082 with them. Create config.h.
2083
2084 * config/obj-vms.c (VMS_Initialized_Data_Size): Cache symbol
2085 values to reduce number of lookups with S_GET_VALUE. Skip debug
2086 symbols to avoid "a really nasty bug". (From Holger Teutsch,
2087 holger@botbso.rhein-main.de.)
2088 (VMS_write_object_file): For "__vt.*" symbols, set S_GET_OTHER
2089 field. (Also from Holger Teutsch.) Watch for a would-be register
2090 mask that spans frags.
2091
2092 * config/obj-coffbfd.c (obj_coff_line): Set symbol lnno field with
2093 this_base, not line_base. (Patch from Andreas Arens,
2094 ari@obelix.av.rwth-aachen.de.)
2095
2096 * config/obj-aout.c (obj_crawl_symbol_chain): Retain symbols that
2097 look local if they're exported or undefined. Used to be done for
2098 i960 only.
2099
2100 * read.c (s_lcomm, s_comm): Print symbol name being redefined.
2101 Get it from the looked-up symbol, instead of using the string from
2102 the input stream, which is no longer null-terminated.
2103 (LEX_PCT): New macro, defaults to 0.
2104 (lex_type): Use it for `%'.
2105
2106 * config/tc-vax.c (md_parse_option): Handle `-h#' option for VMS.
2107 (vip_op): Now static, and returns void. Callers changed. Added
2108 forward decl.
2109 (vip): Ditto. Call as_fatal directly if a program bug is
2110 detected.
2111 (op_hash): Let default initialization suffice.
2112
954979ca
KR
2113 * Makefile.in (literal.o): Provide dependencies.
2114
2115 * configure.in: Set new makefile variable OPCODES_LIB.
2116 * Makefile.in (LIBS): Use it.
2117
2118 * Makefile.in (make-gas.com, stamp-mk.com): New targets.
2119 * vmsconf.sh: New file.
2120 * make-gas.com: Regenerated from new script.
2121
2122 * configure.in (sparc*-*-lynxos*): Handle any version number
2123 suffix after "lynxos". Set emulation to lynx.
2124
2125Mon Mar 14 11:30:49 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2126
2127 * config/obj-coff.c (obj_coff_section): Delete declaration.
2128
62ea7974
ILT
2129Fri Mar 11 22:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2130
2131 * config/tc-ppc.c (md_pcrel_from): Return 0 for undefined ELF
2132 symbols.
2133 (ppc_is_toc_sym): Change .toc to .got.
2134 (md_apply_fix): Change handling of ELF relocs.
2135 (tc_gen_reloc): Likewise.
2136
63ca2e81
KR
2137Fri Mar 11 17:42:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2138
2139 * config/obj-vms.c (Close_VMS_Object_File): Add comment pointing
2140 out some code that doesn't belong in this file.
2141
2142 * config/obj-vms.h: Include aout/stab_gnu.h.
2143 (N_GSYM, ..., N_LENG): Deleted.
2144 (NO_RELOC): Undefine before defining as part of enum reloc_type.
2145
2146 * config/tc-alpha.c: Add comment questioning need for all the
2147 characters in FLT_CHARS.
2148
2149 * as.c (main) [OBJ_VMS]: Don't call output_file_close.
2150
2151 * config/obj-ecoff.c (ecoff_frob_file): Set strict order for
2152 sections with recognized names, before computing VMA values.
2153
be22008b
ILT
2154Fri Mar 11 17:56:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2155
2156 * config/tc-mips.c (mips_ip): Accept numbers between 0x8000 and
2157 0xffff for 'j' to be compatible with MIPS assembler. These
2158 numbers are actually treated as negative.
2159
2c6db5a1
DE
2160Thu Mar 10 13:36:29 1994 Doug Evans (dje@canuck.cygnus.com)
2161
2162 * config/tc-sparc.h (LOCAL_LABEL): Local labels are .Lfoo.
2163
9e12fbbc
KR
2164Tue Mar 8 21:17:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2165
2166 * config/obj-coff.c: Minor formatting/stylistic changes, plus:
2167 (obj_coff_section): Declare.
2168 (obj_pseudo_table): Make it available only if MANY_SECTIONS.
2169 (obj_symbol_to_chars) [CROSS_COMPILE]: Some attemps to make this
2170 work. It still doesn't. It now fails to compile, instead of
2171 silently compiling to do nothing.
2172 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define only if
2173 MANY_SECTIONS.
2174 (OBJ_PROCESS_STAB) [! MANY_SECTIONS]: New macro, just emits
2175 warning.
2176
2177 Handle Alpha load-immediate-FP pseudo-instructions:
2178 * config/alpha-opcode.h (ldif, ldig, ldis, ldit): New patterns.
2179 * config/tc-alpha.c (lit8_sec, lit4_sec, lit8_sym, lit4_sym): New
2180 variables.
2181 (create_literal_section): New function.
2182 (create_lita_section): Now a macro.
2183 (get_lit8_offset, get_lit4_offset): New functions.
2184 (maybe_set_gp): New function.
2185 (select_gp_value): Call it.
2186 (load_expression): Preserve addend if symbol is a section symbol.
2187 (alpha_ip): Handle new operand type `F' for floating-point
2188 constants; store them in .lit{4,8} sections.
2189 (alpha_ip, case 'G'): Emit LITUSE relocations for symbol exprs.
2190
2191 * config/tc-i386.c (smallest_imm_type): Never return Imm1.
2192
2bac8c54
SC
2193Tue Mar 8 14:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2194
2195 * config/obj-coffbfd.c (w_strings): Only copy strings out if
2196 their symbols are going to be written.
2197
d16938f5
ILT
2198Tue Mar 8 11:49:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2199
2200 * messages.c (as_perror): Declare arguments const.
2201 * as.h (as_perror): Change declaration.
2202
8ea7f4e8
ILT
2203Mon Mar 7 16:08:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2204
2205 * config/tc-mips.c (load_address): When calling frag_grow, allow
2206 for the (up to) two nops which may be inserted by append_insn if
2207 mips_optimize is 0.
2208 (macro): Likewise.
2209
fa47b47e
DE
2210Thu Mar 3 11:37:55 1994 Doug Evans (dje@canuck.cygnus.com)
2211
2212 * config/atof-ieee.c (make_invalid_floating_point_number):
2213 Add cast to avoid warning from gcc.
2214
34b16850
JL
2215Wed Mar 2 10:31:01 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2216
fb338f1d
JL
2217 * config/tc-hppa.c: Add a few casts to make HP C compiler happy.
2218
2219 * config/obj-som.c (obj_som_version, obj_som_copyright): Be
2220 prepared
2221 to handle an error from bfd_som_attach_aux_hdr.
2222
34b16850
JL
2223 * config/tc-hppa.h: Wrap ELF specific decls inside an ifdef.
2224
994fde6d
KR
2225Mon Feb 28 15:03:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2226
2227 * config/tc-alpha.c (md_atof): Omit warning about FP values.
2228 (line_comment_chars): Add ! to list.
2229 (md_apply_fix): Do process 32- and 64-bit relocations.
2230
2231 * config/obj-coffbfd.c (obj_coff_lcomm): Put "#if 0" around the
2232 unused parts (most of the function).
2233 (obj_coff_init_stab_section): Cast alloca result.
2234
2235 * configure.in (i960-*-coff, i960-*-vxworks5.*): Use coffbfd, and
2236 gas_target ic960coff.
2237 * config/ic960coff.mt: New file.
2238 * config/obj-coffbfd.h [TC_I960]: Include coff/i960.h.
2239 (TARGET_FORMAT) [TC_I960]: Use coff-Intel-little.
2240 * config/te-ic960.h (CROSS_COMPILE): Don't undef this. We'll
2241 always build little-endian object files.
2242 * config/tc-i960.c (md_reloc_size): Don't define at all if BFD or
2243 BFD_ASSEMBLER is defined.
2244 (mem_fmt): Since COFF doesn't handle callx relocations yet, treat
2245 them like normal 32-bit relocations.
2246 (md_apply_fix): For callx relocations, store zero.
2247 (tc_bout_fix_to_chars): Store symbol index for all callx
2248 relocations, regardless of link-relax setting.
2249 (tc_coff_fix2rtype, tc_coff_sizemachdep): New functions.
2250 (i960_handle_align) [! OBJ_BOUT]: If link-relax option is
2251 selected, print an error message and clear it.
2252 * config/tc-i960.h (BFD_ARCH, COFF_FLAGS, COFF_MAGIC,
2253 TC_COUNT_RELOC, TC_COFF_FIX2RTYPE, TC_COFF_SIZEMACHDEP,
2254 tc_fix_adjustable): New macros.
2255 (tc_coff_fix2rtype, tc_coff_sizemachdep): Declare.
2256
e03095c9
JL
2257Fri Feb 25 20:56:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2258
2259 * config/tc-hppa.c (hppa_tc_symbol): Call PA ELF BFD version.
2260 (hppa_tc_make_sections): Likewise.
2261 (pa_build_symextn_section): Delete unused function.
2262 (hppa_tc_make_symextn_section): Likewise.
2263 (pa_export): Delete call to pa_build_symextn_section.
2264
2265 * config/tc-hppa.h (hppa_tc_symbol): Add extern decl.
2266 (elf_hppa_final_processing): Delete extern decl.
2267 (hppa_tc_symbol): Delete extern decl.
2268
3919ffeb
ILT
2269Fri Feb 25 13:15:31 1994 Ian Lance Taylor (ian@cygnus.com)
2270
2271 * config/obj-coffbfd.c (fill_section): Correct test for whether to
2272 fill a section (from Minh Tran-Le <TRANLE@intellicorp.com>).
2273
f95de5d9
KR
2274Thu Feb 24 11:30:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2275
3919ffeb
ILT
2276 * configure.in: Don't require version number for i386-*-mach.
2277
f95de5d9
KR
2278 * read.c (potable): Added ".this_GCC_requires_the_GNU_assembler",
2279 which is ignored by gas, but will cause other assemblers to choke.
2280 Intended for use by gcc ports that require gas instead of native
2281 assemblers.
2282
cb6af928
JL
2283Thu Feb 24 07:10:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2284
2285 * config/ho-hppaosf.h: Fix braino in test for ANSI-C.
2286
08c5812c
JL
2287Wed Feb 23 16:51:43 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2288
2289 * write.c (write_contents): Give the user a reasonable error
2290 message rather than "assertion failed" if bfd_set_section_contents
2291 fails.
2292
c9c45af1
KR
2293Tue Feb 22 10:07:32 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
2294
2295 * config/ho-mach3.h: New file.
2296
9eb5f4b8
ILT
2297Mon Feb 21 11:41:18 1994 Ian Lance Taylor (ian@cygnus.com)
2298
2e5fdb1d
ILT
2299 * ecoff.c (ecoff_build_debug): Don't set hdr->magic here. It is
2300 now set in bfd/ecofflink.c:ecoff_write_symhdr.
2301
9d90491e
ILT
2302 * config/obj-coffbfd.c (write_object_file): use bfd_get_error (),
2303 not bfd_error.
2304 * config/obj-elf.c (elf_frob_file): Likewise.
2305
2306 * read.c (s_lcomm): Use an alignment power of 3 for 8 byte .lcomm
2307 variables.
2308
c8d02404
ILT
2309 * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
2310
9eb5f4b8
ILT
2311 * read.c (read_a_source_file): Use correct arguments to memcpy
2312 (broken 19 Jul 1993). From kjd@pescadero.stanford.edu (Kenneth
2313 Duda).
2314
4d88d6dc
ILT
2315Sun Feb 20 18:01:54 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
2316
2317 * config/obj-coff.h (obj_coff_section): Declare.
2318 * config/obj-coff.c (obj_pseudo_table): For "section", use
2319 obj_coff_section.
2320 (obj_coff_section): Rewrite.
2321
741f4d66
KR
2322Fri Feb 18 14:16:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2323
9e0cbfbb
KR
2324 * configure.in (i386-*-mach3*): New target; uses BFD.
2325 * config/te-mach.h: New file.
2326 * config/obj-aout.c (obj_aout_frob_file): New function.
2327 * config/obj-aout.h (obj_aout_frob_file): Declare it.
2328 (frob_file): New macro.
2329 * config/tc-i386.c (md_apply_fix_1) [TE_Mach]: Don't adjust
2330 pcrel32 relocations.
2331 * config/tc-i386.h (TARGET_FORMAT) [TE_Mach]: Use a.out-mach3.
2332
741f4d66
KR
2333 * write.c (write_object_file): Removed register declarations.
2334
5e65fbc8
ILT
2335Thu Feb 17 16:25:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2336
254f8450 2337 Some support for PowerPC ELF.
5e65fbc8
ILT
2338 * configure.in: If cpu is powerpc*, use ppc.
2339 (ppc-*-sysv4*): Use object format elf.
2340 * config/tc-ppc.h: Only declare a number of things if OBJ_COFF is
2341 defined.
2342 (TARGET_ARCH): Make it call ppc_arch.
2343 (ppc_arch): Declare.
2344 (TARGET_FORMAT): Set based on OBJ_COFF or OBJ_ELF.
2345 (NO_STRING_ESCAPES): Define.
2346 (LOCAL_LABEL, FAKE_LABEL_NAME): Define for OBJ_ELF.
2347 * config/tc-ppc.c: Only define a number of functions of OBJ_COFF
2348 is defined.
2349 (md_pseudo_table): Most pseudo-ops are OBJ_COFF specific. Added
2350 OBJ_COFF specific "bi" and "ei".
2351 (md_parse_option): Fix handling of -u. Make -m601 set
2352 PPC_OPCODE_601. If OBJ_ELF, accept -V and -Q.
2353 (ppc_set_cpu): New function.
2354 (ppc_arch): New function.
2355 (md_begin): Call ppc_set_cpu.
2356 (ppc_insert_operand): For a signed operand accept an unsigned
2357 value, for IBM compatibility.
2358 (ppc_byte): Don't call stringer for strings; instead, treat two
2359 double quotes as a single double quote.
2360 (ppc_comm): Set sy_tc.output for a .lcomm symbol.
2361 (ppc_biei): New function.
2362 (ppc_tc): If not OBJ_COFF, ignore first argument.
2363 (ppc_fix_adjustable): Call as_bad_where, not as_bad.
2364 (ppc_is_toc_sym): New function.
2365 (md_apply_fix): Use ppc_is_toc_sym. Handle BFD_RELOC_16 and
2366 BFD_RELOC_8.
2367
f61b81b7
DM
2368Thu Feb 17 09:29:37 1994 David J. Mackenzie (djm@thepub.cygnus.com)
2369
2370 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_get_error and
2371 bfd_set_error and new error names.
2372
c25be7f4
KR
2373Tue Feb 15 20:23:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2374
2375 * configure.in: Support i960-vxworks versions > 5.0 as coff.
2376 Default is still bout if no version is specified.
2377
04bde70d
KR
2378 * atof-generic.c (atof_generic): Use switch and strcasecmp instead
2379 of large number of compares when looking for inf/nan values.
2380
b1237b9d
ILT
2381Fri Feb 11 13:13:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2382
2383 * config/tc-mips.c (macro): Do unaligned loads and stores
2384 correctly when big endian, and give errors on overflow rather than
2385 generating incorrect code.
2386
605e1d90
ILT
2387Thu Feb 10 11:24:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2388
2389 * as.c: Include libiberty.h.
2390
2391 * read.c (do_align): Don't define label just_record_alignment
2392 unless it might be used.
2393
2394 * as.c (main): If md_parse_long_option is defined, call it with a
2395 long option.
2396 * config/tc-mips.h (md_parse_long_option): Define.
2397 * config/tc-mips.c (mips_trap): New static variable.
2398 (md_begin): Report an error if mips_trap is set at ISA level 1.
2399 (macro): If mips_trap, use trap instructions instead of break
2400 instructions for overflow and divide by zero detection.
2401 (mips_parse_long_option): New function. Support --trap,
2402 --no-break, --break and --no-trap.
2403 * doc/as.texinfo: Document new options.
2404
2405 * read.c (potable): Add "zero".
2406 * config/tc-i386.c (md_pseudo_table): Remove "zero".
2407 * config/tc-m88k.c (md_pseudo_table): Likewise.
2408
6440d65c
KR
2409Thu Feb 10 01:24:27 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2410
2411 * config/tc-sparc.c (sparc_ip): Reject integer values for
2412 pc-relative operand fields. This forces "call 0" to become "jmpl
2413 %g0,%o7" with no relocations needed.
2414
ddb393cf
ILT
2415Wed Feb 9 13:08:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2416
d87c080e
ILT
2417 * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
2418 * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
2419
ddb393cf
ILT
2420 * app.c (do_scrub_next_char): If NO_STRING_ESCAPES is defined,
2421 don't treat backslash specially inside strings.
2422 * read.c (next_char_of_string): Likewise.
2423
66c774bb
SS
2424Wed Feb 9 09:42:45 1994 Stan Shebs (shebs@andros.cygnus.com)
2425
2426 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use memset
2427 instead of memcpy to zero the initial stab symbol, duh.
2428 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
2429 * config/obj-som.c (obj_som_init_stab_section): Ditto.
2430
356315fe
ILT
2431Tue Feb 8 17:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2432
2433 * write.c (fixup_segment): Use as_bad_where, not as_bad.
2434
2435 * subsegs.c (subseg_set_rest): Call memset with the arguments in
2436 the right order. Explicitly clear fix_root and fix_tail fields.
2437
df44a852
KR
2438Tue Feb 8 16:00:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2439
cfaf70e3
KR
2440 * config/obj-coff.c (coff_frob_symbol): For abs_symbol, set *punt
2441 and do nothing else.
2442
2443 * symbols.c (symbol_begin): Initialize value of abs_symbol
2444 properly.
2445
2446 * write.c (adjust_reloc_syms): Use abs_symbol instead of calling
2447 section_symbol.
2448
cafb569b
KR
2449 * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
2450 complaint from "gcc -Wall".
2451
7496639a
KR
2452 * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
2453
8a74b870
KR
2454 * config/tc-alpha.c (GP_ADJUSTMENT): Move definition to start of
2455 file.
2456 (tc_gen_reloc): Remove uninitialized variable `code', and code
2457 that tried to use it (incorrectly). For LITERAL reloc, set addend
2458 to negative of GP value.
2459 (load_symbol_address): Don't adjust return value by GP_ADJUSTMENT.
2460
df44a852
KR
2461 * write.c (write_relocs): Print some sensible error message if
2462 bfd_perform_relocation returns bfd_reloc_overflow.
2463
2464Mon Feb 7 15:49:24 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2465
2466 * configure.in (hppa*-*elf*): New configuration for PA ELF.
2467 (hppa*-*-osf*): Default object format is SOM.
2468
c3591adb
KR
2469Mon Feb 7 16:07:35 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2470
2d33b3aa
KR
2471 * config/tc-alpha.c (md_atof): Warn that floating-point values
2472 might not assemble properly.
2473
c3591adb
KR
2474 * configure.in (target alpha-*-osf*): Don't set "dev=yes" any
2475 more.
2476
2477 * config/tc-alpha.c (load_expression): Parenthesize operations in
2478 range checking, to avoid precedence questions.
fc6b54fd 2479
c3591adb
KR
2480 * config/tc-alpha.c (addr32): New static variable.
2481 (md_parse_option): Set it for "-32addr".
2482 (load_symbol_address): If addr32 is set, use ldl instead of ldq.
2483
2484 * atof-generic.c (atof_generic): Calculate maximum_useful_digits
2485 and more_than_enough_bits_for_digits in integer arithmetic, to
2486 eliminate the only sources of dependence on floating point
2487 support, which doesn't work yet on the Alpha.
2488
2489Mon Feb 7 03:56:05 1994 Ken Raeburn (raeburn@cambridge.cygnus.com)
fc6b54fd
KR
2490
2491 * ecoff.c (ecoff_build_debug) [TC_ALPHA]: Specify version stamp as
2492 0x30b for Alpha for now, until ".verstamp" is handled.
2493
2494 * literal.c (add_to_literal_pool): Use seginfo->frchainP, which
2495 actually refers to the literal pool section, rather than
2496 frchain_now, which refers to whatever section the assembler was
2497 in.
2498
2499 * write.c (fixup_segment): Only do range checking if size of fixup
2500 is smaller than word size. Otherwise, we always wind up with
2501 zeros.
2502
5facbfd4
KR
2503 * config/tc-alpha.c (md_section_align): Change second argument and
2504 return type to valueT, to agree with tc.h.
2505 (alpha_do_align): Local static array nop_pattern is now unsigned
2506 char, to avoid overflow warnings.
2507 * config/tc-alpha.h (md_section_align): Delete declaration.
2508
2509 * config/obj-ecoff.c (ecoff_frob_file): Ensure that ecoff_data for
2510 output bfd is non-null before indirecting through it.
2511
2512 * config/tc-alpha.c (alpha_frob_ecoff_data): Renamed from
2513 alpha_frob_file.
2514 * config/tc-alpha.h (tc_frob_file): Macro deleted.
2515 * config/obj-ecoff.c (ecoff_frob_file) [TC_ALPHA]: Call
2516 alpha_frob_ecoff_data, then fill in optional-header info with gp
2517 value and register masks.
2518
dc536cc0
JL
2519Sun Feb 6 16:13:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2520
f8693e71
JL
2521 * configure.in (hiux): Fixes from m-kasahr@sramhc.sra.co.JP.
2522
dc536cc0
JL
2523 * config/obj-som.c (obj_som_init_stab_section): Same change
2524 as coffbfd and elf below. Zero the initial stab symbol after
2525 allocating it.
2526
41b5ef0f
SS
2527Sat Feb 5 12:30:32 1994 Stan Shebs (shebs@andros.cygnus.com)
2528
2529 * config/obj-coffbfd.c (obj_coff_init_stab_section): Zero the
2530 initial stab symbol after allocating it.
2531 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
2532
fa4beb7e
JL
2533Sat Feb 5 11:53:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2534
2535 * config/tc-hppa.c (pa_ip): addb[tf] should only accept
2536 non-negated condition completers. Add support for addb pseudo-op
2537 which accepts both negated and non-negated completers.
2538
1c11ab0e
ILT
2539Sat Feb 5 00:15:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2540
2541 * configure.in (rs6000*): Use cpu_type ppc.
2542 (ppc-*-aix*): New target; use coff and force bfd_gas.
2543 * config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
2544 (RS/6000) support. At the moment, only XCOFF is supported.
2545
2546 * config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
2547 (S_SET_DATA_TYPE): Likewise.
2548 (coff_last_function): Renamed from local static last_functionP in
2549 coff_frob_symbol and made externally visible.
2550 (coff_frob_symbol): New local static set_end; use it to try to
2551 avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
2552 * config/obj-coff.h (S_SET_DATA_TYPE): Declare.
2553 (SA_SET_SYM_ENDNDX): Declare.
2554 (coff_last_function): Declare.
2555
2556 * expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
2557 equivalent to `.' to mean the current location.
2558
2559 * read.c (LEX_BR): If not defined, define as 0.
2560 (lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
2561
2562 * symbols.c (symbol_new): If tc_canonicalize_symbol_name is
2563 defined, call it with preserved_copy_of_name. If
2564 tc_symbol_new_hook is defined, call it on the new symbol.
2565 (symbol_find_base): If tc_canonicalize_symbol_name is defined,
2566 call it on a copy of the name argument.
2567
2568 * write.c (write_object_file): Simplified usage of obj_frob_symbol
2569 and tc_frob_symbol. Always call both if the symbol is going to be
2570 output.
2571
2572 * write.c (relax_segment): Use %ld rather than %d when printing
2573 fragP->fr_var, and cast it to long.
2574
2575 Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
2576 * subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
2577 fix_root and fix_tail.
2578 (segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
2579 field.
2580 * write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
2581 fix_tailP based on frchain_now, not seg_info (now_seg).
2582 (chain_frchains_together_1): Chain the subsegment relocs together.
2583 * subsegs.c (subseg_change): Don't clear fix_tail field.
2584 (subseg_get): Likewise.
2585 * literal.c (add_to_literal_pool): Look through the relocs via
2586 frchain_now, not seginfo.
2587
f85ad9d5
ILT
2588Thu Feb 3 23:07:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2589
2590 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
2591 ecoff_undefined to ecoff_extern_size.
2592 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
2593 * config/tc-mips.c (s_extern): Set ecoff_extern_size to the
2594 external symbol size, rathern than setting the symbol value.
2595 (md_estimate_size_before_relax): Check both ecoff_extern_size and
2596 symbol value to see if GP referencing can be used.
2597 * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
2598 ecoff_undefined.
2599 (ecoff_frob_symbol): Don't check ecoff_undefined.
2600 (ecoff_build_symbols): Get size of an undefined symbol from
2601 sym->ecoff_extern_size, not S_GET_VALUE (sym).
2602
b4bd2c92
JL
2603Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2604
2605 * Makefile.in: Avoid bug in losing hpux sed.
2606
1051c97f
ILT
2607Wed Feb 2 11:40:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2608
2609 * config/tc-mips.c (file_mips_isa): New static variable.
2610 (md_begin): Set it.
2611 (s_mipsset): Add support for .set mipN to set the ISA level.
2612
2613 * gasp.c (kinfo): Fully bracket initializer.
2614
f2cdeec4
KR
2615Tue Feb 1 19:28:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2616
2617 * gasp.c (malloc): Don't declare, since host.h or system header
2618 files may declare it differently.
2619
2620 * config/atof-ieee.c (int_to_gen): Now static.
2621
2622 * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
2623 ho-sysv.h. Based loosely on a patch from Minh Tran-Le.
2624
e2847e64
SC
2625Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2626
2627 * gasp.c: Include host.h.
2628
9cbf9e57
ILT
2629Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2630
8bbad6fd
ILT
2631 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
2632 warning, not an error.
2633
9cbf9e57
ILT
2634 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
2635 dot_bss_symbol): Don't define if BFD_ASSEMBLER.
2636 (obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
2637 arguments.
2638 (coff_line_base): Renamed from line_base. Changed all uses.
2639 (coff_add_linesym): Renamed from add_line_sym. Made non-static.
2640 Changed all uses.
2641 * config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
2642 (S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
2643 BFD_ASSEMBLER.
2644 (coff_line_base): Declare.
2645 (coff_add_linesym): Declare if BFD_ASSEMBLER.
2646 * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
2647 now takes more arguments.
2648
2abb453d
SS
2649Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
2650
2651 * as.c (statistics_flag): Renamed from quiet_flag.
2652 (main): Get statistics with --statistics instead of -noquiet.
2653
a5a4b5ac
SC
2654Mon Jan 31 07:19:30 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2655
2656 * Makefile.in: Support for Gnu ASsembler Preprocessor.
2657 * gasp.c: New file.
2658 * read.c (s_lcomm): Align lcomm data.
2659 * config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
2660 from different sections.
2661
7909261f
KR
2662Sun Jan 30 14:58:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2663
2664 * write.c (write_object_file): If tc_frob_file is defined, call it
2665 just before calling obj_frob_file.
2666 * config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
2667 (references changed), and made non-static.
2668 (getExpression): Return void.
2669 (select_gp_value): Abort if gp_value is non-zero. Delete call to
2670 non-existent bfd_set_gp_value.
2671 (alpha_validate_fix): Function deleted.
2672 (alpha_frob_symbol): Function deleted.
2673 (alpha_local_label): Function deleted.
2674 (alpha_frob_file): Renamed from alpha_end.
2675 * config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
2676 alpha_local_label, alpha_end): Declarations deleted.
2677 (alpha_gp_value, alpha_frob_file): Declare.
2678 (tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
2679 (LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
2680 (md_convert_frag): Simplified slightly.
2681 (tc_frob_file): New macro.
2682
2683 * read.c (do_align): New function, most of guts of s_align_*
2684 functions. Look for md_do_align macro, give it a chance to bypass
2685 all but recording of section alignment.
2686 (s_align_bytes, s_align_ptwo): Call do_align.
2687 (s_lcomm) [TC_ALPHA]: Align object to largest power of two that
2688 divides object size.
2689
2690 * frags.c (frag_align_pattern): New function.
2691 (frag_align): Rewrite for clarity.
2692
2693 * config/tc-vax.c (md_assemble): Handle O_constant expression.
2694 (vip_begin): Returns pointer to const char. Cast hash_insert arg
2695 to PTR to avoid compiler complaints about const.
2696 (md_begin): Local variable errtxt must point to const.
2697
2698 * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't
2699 bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
2700 the last has an existing host support file. Do handle vax-bsd and
2701 vax-ultrix targets.
2702
1f029792
ILT
2703Fri Jan 28 11:26:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2704
2705 * config/obj-coff.c (obj_coff_section_header_append): Do not
2706 declare if BFD_ASSEMBLER.
2707 (stack_pop): Correct test for stack underflow.
2708 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
2709 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
2710 type of ignored argument to avoid gcc warning.
2711 (align): Removed unused function.
2712
6221fe20
KR
2713Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2714
81f6013a
KR
2715 * config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
2716 files, based on port of gas-1.38 contributed by CMU, using a.out
2717 variant. Updated for gas-2.x and ECOFF. Floating-point constants
2718 are still broken, bootstrap testing incomplete.
2719
2720 * literal.c: Comment changes.
2721
2722 * listing.c (listing_source_file): Check for null listing_tail
2723 before indirecting through it.
2724
2725 * expr.h (struct expressionS): Added struct tag.
2726
2727 * as.h: If __GNUC__ and inline are both undefined, define inline
2728 away.
2729
2730 * write.c (cvt_frag_to_fill): Don't assume that fr_var for
2731 rs_align or rs_org frags will be 1.
2732 (relax_segment): For rs_align, if fr_var is not 1, complain if
2733 required padding is not a multiple of the size of the pad pattern.
2734 (fixup_segment): Leave gp-relative relocations alone. For pcrel
2735 relocations referring to the same segment, clear fx_pcrel when
2736 clearing fx_addsy.
2737 * as.h: Adjust comments on rs_align.
2738
6221fe20
KR
2739 * atof-generic.c: Some reformatting.
2740 (atof_generic): Be careful when mixing signed/unsigned values of
2741 different sizes.
2742
81f6013a
KR
2743 * write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
2744 Query the fx_done field instead of fx_addsy to see if the fixup
2745 still needs to be applied. Set fx_done and clear fx_addsy both,
2746 for now. If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
2747 will only clear fx_addsy, and set fx_done accordingly after
2748 returning.
2749 * config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
2750 * config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
2751 with no fx_addsy.
2752
2753 * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
2754 Deleted.
2755 (symbol_begin): Moved to end of file, so function inlining can
2756 work better.
2757 (fb_label_count, fb_label_max): Default C static initializers are
2758 sufficient.
2759 * symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
2760 Declarations deleted.
2761 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
2762 dot_bss_symbol): Defined here, static.
2763
2764 * config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
2765 including aout/aout64.h.
2766
2767 * write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
2768 don't write out a section symbol even if it's used in a
2769 relocation; assume relocations will handle section numbers
2770 somehow. Rename "punt_it" label to "punt_it_if_unused" to reflect
2771 it's true use.
2772 (EMIT_SECTION_SYMBOLS): Default to 1.
2773 (adjust_reloc_syms): Don't create a new symbol for an absolute
2774 reference; just use the absolute section symbol.
2775 (write_relocs): Make printout of reloc values dependent on flag
2776 DEBUG3, not DEBUG2.
2777 * config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
2778 * config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
2779
a57180ad
ILT
2780Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2781
ec7a69ea
ILT
2782 * read.c (lex_type): No longer make '{' a valid character for
2783 symbol names.
2784
fe920573
ILT
2785 * as.c (main): Print long values using %ld.
2786
a57180ad
ILT
2787 * messages.c (as_warn_internal): New static function.
2788 (as_warn, 3 versions): Use as_warn_internal.
2789 (as_warn_where, 3 versions): New function.
2790 * as.h (as_warn_where): Declare.
2791
ca7bd557
SS
2792Tue Jan 25 18:30:34 1994 Stan Shebs (shebs@andros.cygnus.com)
2793
2794 * as.c (quiet_flag): New flag.
2795 (main): If -noquiet given, display execution time and memory used.
2796
9dcf8057
JL
2797Tue Jan 25 15:53:11 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2798
2799 * doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
2800
f71babce
ILT
2801Mon Jan 24 19:18:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2802
2803 * ecoff.c (ecoff_frob_symbol): New function. Put undefined
2804 symbols of known size in the undefined section. Put small common
2805 symbols in a .scommon section.
2806 * ecoff.h (ecoff_frob_symbol): Declare.
2807 * config/obj-ecoff.h (obj_frob_symbol): Define.
2808 * config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
2809 obj_elf_frob_symbol): Removed unused functions.
2810 * config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
2811 unused macros.
2812 (obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
2813 of unused functions.
2814 (obj_frob_symbol): Define if ECOFF_DEBUGGING.
2815
2816 * tc-mips.c (g_switch_seen): New static variable.
2817 (md_parse_option): Set g_switch_seen for -G option.
2818 (s_option): If creating PIC code, force the GP size to be 0. Warn
2819 if -G switch used with a non-zero value.
2820
2821 * symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
2822 comparing against bfd_com_section.
2823
2ef7731d
KR
2824Mon Jan 24 14:12:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2825
2826 * read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
2827 section.
2828
7691379e
KR
2829Thu Jan 20 13:17:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2830
2831 * expr.c (operand): For floating point operand with unusual fp
2832 char from FLT_CHARS, preserve the character. Patch from Lisa
2833 Repka.
2834
eb8fd0e9
ILT
2835Wed Jan 19 23:15:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2836
2837 * config/tc-mips.c (md_pseudo_table): Add all data allocation
2838 pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
2839
d9420fc1
SC
2840Tue Jan 18 15:51:59 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2841
2842 * config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
2843 C_FCN assume .val has been set to .
2844
2f156c92
JL
2845Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2846
2847 * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
2848 confuses GDB for some unknown reason.
2849 * cofnig/obj-som.c: Likewise.
2850
19302e44
KR
2851Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2852
2853 * literal.c (add_to_literal_pool): Handle duplicates of values
2854 already written to literal pool.
2855
4bda835f
ILT
2856Tue Jan 18 17:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2857
2858 * config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
2859 with explicitly marked stabs through BFD: if a symbol marked
2860 N_UNDF | N_EXT is in the absolute section, move it to the
2861 undefined section; move a symbol marked N_INDR into
13655af6
ILT
2862 bfd_ind_section and set the BSF_INDIRECT flag; set the
2863 BSF_WARNING flag for a symbol makred N_WARNING.
4bda835f 2864
17ed84ed
ILT
2865Mon Jan 17 15:40:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2866
2867 * ecoff.h (ecoff_set_gp_prolog_size): Declare.
2868 * ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
2869
d0286a21
JL
2870Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2871
51517966
JL
2872 * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
2873 and 'f' template operand.
2874
d0286a21
JL
2875 * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
2876 and '2' in copr and sfu instruction templates.
2877
e7501ac7
JL
2878Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2879
2880 * as.h (subseg_force_new): Add prototype.
2881
d2550c72
DE
2882Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
2883
d307fed1
DE
2884 * app.c (do_scrub_next_char): Allow lines like " foolab :".
2885
d2550c72
DE
2886 * read.c (emit_expr): Fix computation of mask.
2887 * config/obj-elf.c (obj_elf_section): Fix loop termination test.
2888
d211303d
KR
2889Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2890
64270963
KR
2891 * ecoff.c (ecoff_set_gp_prolog_size): New function.
2892 (current_file_idx): New static variable.
2893 (add_file): Use and increment current_file_idx instead of indx
2894 parameter.
2895
ff4325cb
KR
2896 * struc-symbol.h (struct symbol): Make all bitfields unsigned.
2897
d211303d
KR
2898 * config/tc-i960.c (i960_validate_fix): Added argument
2899 add_symbolPP. Indirect through it to get "add_symbolP".
2900 * config/tc-i960.h (i960_validate_fix): Supply prototype.
2901 (TC_VALIDATE_FIX): Pass address of add_symbolP.
2902
2903 * configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
2904 (i386-*-netbsd0.8): New target, like 386bsd.
2905
2906 * configure.in: Set BFDDEF in Makefile to "define" or "undef".
2907 * Makefile.in (config.h): Protect against multiple inclusions.
2908 Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
2909 (ALL_CFLAGS): Omit $(BFDDEF).
2910 * as.h: Include config.h.
2911 (struct symbol): Added forward declaration.
2912 (add_to_literal_pool): Fix declaration.
64270963 2913 * as.c: Don't include config.h.
d211303d
KR
2914
2915 * literal.c (add_to_literal_pool): Take symbol and addend as
2916 arguments, instead of expression, for now. Fix calculation of
2917 offset to return.
2918
2919 * subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
2920 literal_pool_size.
2921
500828a0
JL
2922Thu Jan 13 12:14:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu
2923
2924 * subsegs.c (subseg_get): Accept new argument "force_new". If
2925 set then a new segment is always created. All callers changed.
2926 (subseg_force_new): New function. Similar to subseg_new, but
2927 always force a new segment to be created.
2928
2929 * config/obj-som.c (som_frob_file): Call adjust_code_sections
2930 for each section.
2931 (adjust_code_sections): New function. Adjusts the VMA for all the
2932 $CODE$ subspaces.
2933
2934 * config/tc-hppa.c (md_assemble): Also handle creating a fixup
2935 for the unwind descriptors if a function's label follows the
2936 .PROC and .ENTRY directives.
2937 (pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
2938 is done elsewhere. Don't create a fixup for the unwind
2939 descriptors if the function's label has not been defined yet.
2940 (pa_proc): For SOM, place each procedure within a new $CODE$
2941 subspace. Adjust the segment and frag for the associated
2942 function label if it exists.
2943
2944Wed Jan 12 22:05:33 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2945
2946 * config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
2947 (hppa_fix_new): Initialize segment field.
2948 (md_apply_fix): Do nothing for pc-relative fixup which involves
2949 crossing a segment boundary.
2950 (pa_procend): Undefine the current label after handling .PROC
2951 and .PROCEND directives.
2952 (dummy_symbol): Make type "symbolS *". Change references as
2953 appropriate.
2954
bbf7e43d
ILT
2955Wed Jan 12 13:29:31 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2956
2957 * read.c (read_a_source_file): Cast array argument to unsigned
2958 char.
2959 * write.c (adjust_reloc_syms): Remove unused variable symseginfo.
2960 (write_object_file): Don't define punt_it if it won't be used.
2961 (fixup_segment): Don't define skip if it won't be used.
2962
2963 * config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
2964 (mips_target_format): Declare.
2965 * config/tc-mips.c (mips_target_format): Define with appropriate
2966 default definition.
2967 (md_parse_option): If -EL or -EB is used, change byte_order and
2968 mips_target_format as appropriate.
2969
a1c91916
JL
2970Tue Jan 11 21:52:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2971
2972 * app.c (do_scrub_next_char): Another attempt to fix bugs
2973 dealing with labels without colons (for HPPA and MRI).
2974
44ce2f32
DE
2975Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
2976
fd4b7c25
KR
2977 * config/tc-sparc.c (sparc_ip): Truncate args to %hi/%lo to 32 bits.
2978
44ce2f32
DE
2979 * expr.c (integer_constant): Fix computation of too_many_digits.
2980 Variable digit_2 renamed to start. Fix check for whether number
2981 will fit in 32 bits.
2982 * read.c (emit_expr): Use valueT instead of long.
2983
af255ca0
ILT
2984Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2985
f34e27a1
ILT
2986 * config/obj-elf.c: If TC_MIPS, include elf/mips.h.
2987 (special_sections): Define.
2988 (obj_elf_special_section): Get default types and attributes from
2989 list of special sections.
2990 * config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
2991
4e76ae53
ILT
2992 * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
2993 sections to be close together.
2994
8197b589
ILT
2995 * config/tc-mips.c (macro): Corrected $at warnings in a couple of
2996 spots.
2997
af255ca0
ILT
2998 * listing.c (listing_prev_line): New function.
2999 * listing.c: Include subsegs.h.
3000 (listing_prev_line): New function.
3001 (calc_hex): Reset byte_in_frag to zero for each new frag.
3002 * config/tc-mips.c (append_insn): Call listing_prev_line after
3003 emitting nop instructions.
3004 * Makefile.in (listing.o): Depends upon subsegs.h.
3005
4047ff1d
JL
3006Mon Jan 10 09:52:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3007
3008 * config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
3009 here. Handle case where label may be defined after the .PROC.
3010 (pa_proc): It is not an error if the procedure's label isn't
3011 defined before the .PROC directive.
3012
6f1c6a67
KR
3013Sun Jan 9 04:43:30 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3014
3015 * config/te-netbsd.h: New file.
3016 * config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
3017 a.out-netbsd-386 for this configuration.
3018
fe4e3290
ILT
3019Fri Jan 7 17:38:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3020
3021 * ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
af255ca0 3022 with the associated stabs information.
fe4e3290
ILT
3023 (ecoff_build_symbols): Never set the type of stabs symbols to
3024 st_Global. Don't update the symbol index or ifd if the gas symbol
3025 is not the same as the ECOFF symbol (which is now the case for
3026 stabs symbols).
3027
917fae09
SS
3028Fri Jan 7 11:14:07 1994 Stan Shebs (shebs@andros.cygnus.com)
3029
3030 * config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
3031 splits the function.
3032 (macro2): New function, if LOSING_COMPILER defined.
3033
03a372ed
SC
3034Fri Jan 7 09:38:25 1994 Steve Chamberlain (sac@cygnus.com)
3035
3036 * config/obj-coffbfd.c (fill_section): Don't ever fill past the
3037 end of a section. (write_object_file): Temporary fix - setup
3038 stdoutput.
3039
fd0e2cf2
KR
3040Thu Jan 6 18:05:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3041
3042 * config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
3043 non-pcrel_offset relocations.
3044
13fe1379
ILT
3045Thu Jan 6 01:06:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3046
3047 * config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
3048 without .set noat.
3049
311ff8d6
KR
3050Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3051
2d29d89d 3052 * literal.c: New file.
d4aad2b4
KR
3053 * Makefile.in (REAL_SOURCES, OBJS): List it.
3054
3055 * as.h (DEBUG): Don't define.
3056 (struct expressionS, struct fix): Declare in case they're used in
3057 prototypes.
3058 (add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
2d29d89d 3059
311ff8d6
KR
3060 * config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
3061 in bfd.
3062
3063 * subsegs.c (subseg_get): New function. Creates segment if
3064 needed, returns pointer, but doesn't change current segment.
3065 (subseg_new): Use it.
3066
5a051773
SS
3067Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
3068
3069 * Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
3070 * config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
3071 * app.c, flonum.h, hex-value.c (const): Change #if to be more
3072 portable.
3073
fce98d63
RS
3074Tue Jan 4 22:11:34 1994 Rob Savoye (rob@darkstar.cygnus.com)
3075
3076 * config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
3077 micro-kernel.
3078
5a051773
SS
3079Thu Dec 30 15:27:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3080
3081 * write.c (write_relocs): bfd_perform_relocation now takes an
3082 additional argument, to return an error string (which we ignore).
3083
9314b3a1
KR
3084Wed Dec 29 14:37:26 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3085
3086 * write.h (struct fix): Field tc_fix_data should be type PTR, not
3087 void*, for compatibility with non-ANSI compilers. Added
3088 single-bit field "fx_done".
3089
45db9caf
TG
3090Sun Dec 26 14:31:47 1993 Torbjorn Granlund (tege@adder.cygnus.com)
3091
3092 * tc-hppa.c (pre_defined_registers): Convert to lower case.
3093 Delete spurious register names "%r4L", etc.
3094 (selector_table): Sort and convert to lower case.
3095 (cons_fix_new_hppa): `reloc_type' => `rel_type'.
3096 (pa_ip): Always use strcmp for non-text and strcasecmp for text.
3097 (reg_name_search): Rewrite to call strcasecmp only once per
3098 iteration.
3099 (pa_chk_field_selector): Rewrite to use binary search.
3100 (pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
3101 (pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
3102 sensitive comparisons.
3103 (pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
3104 (pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$". Use
3105 case sensitive comparison for all symbolic names.
3106 (pa_subspace): Canonicalize strncasecmp arg to lower case.
3107 (pa_subspace_start): Use case sensitive comparison for symbolic names.
3108
8b13fa4e
KR
3109Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3110
0a75cb6c
KR
3111 * write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
3112 symbol is present (i.e., relocation against absolute), create a
3113 phony local symbol, and use it in the reloc.
3114 (fixup_segment): When adjusting a reloc with an absolute symbol,
3115 have TC_FORCE_RELOCATION control clearing add_symbolP too.
3116 * config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
3117
3118 * symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
3119 and BSF_GLOBAL, since they're the same.
3120
d3e3010b
KR
3121 * as.c (main): Only invoke md_end if it's defined as a macro.
3122 * tc.h (md_end): Don't declare it.
3123 * config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
3124 anything.
3125 * config/tc-vax.c (vip_end): Deleted null function.
3126 * config/tc-mips.c (md_mips_end): Renamed from md_end.
3127 * config/tc-mips.h (md_mips_end): Declare.
3128 (md_end): New macro, calls md_mips_end.
3129
3130 * write.c (write_object_file): Don't close output file.
3131 * as.c (main): Close output file (if needed) after calling
3132 listing_print, which should be after calling write_object_file,
3133 which sets the frag addresses.
3134
3135 * config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
3136 obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
3137 obj_coff_val): Add unused int argument to satisfy prototypes; goes
3138 with Ian's 10 Sep changes.
3139 (S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
3140 S_SET_STORAGE_CLASS): Now function instead of macros.
3141 (obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
3142 (tag_insert): Local var ERROR_STRING is const. Use "const" not
3143 "CONST" for argument NAME. Fixed prototype.
3144 (coff_frob_symbol): Removed explicit "#if 1" directive. If
3145 S_IS_EXTERNAL, set storage class to C_EXT.
3146 (s_get_name): Use "const" not "CONST".
3147 * config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
3148 S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
3149 (obj_emit_lineno): Declare only for non-BFD_ASSEMBLER. For
3150 BFD_ASSEMBLER, define as macro that aborts.
3151 (obj_extra_stuff, tc_headers_hook): Declare only for
3152 non-BFD_ASSEMBLER.
3153 (coff_frob_symbol): Fix prototype.
8b13fa4e
KR
3154
3155Sun Dec 19 00:37:20 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3156
3157 * config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
3158 reversed.
3159
5ea18b5d
JL
3160Thu Dec 16 21:13:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3161
3162 * config/tc-hppa.c (md_begin): Initialize "dummy_label".
3163 (tc_gen_reloc, SOM version): For relocations which have no symbol,
3164 set sym_ptr_ptr to dummy_label. Avoids lossage in generic BFD code.
3165
a8a72d74
KR
3166Thu Dec 16 16:07:56 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3167
3168 * read.c (lex_type): No longer make '[' a valid character for
3169 symbol names.
3170
50f75add
KR
3171 * config/tc-vax.c (tc_aout_fix_to_chars): Local variable
3172 NBYTES_R_LENGTH now const.
3173
3174 * config/obj-*.c, config/tc-*.c: Omit superfluous "return"
3175 statements at ends of functions. Don't check for null return from
3176 hash_new, since it won't return at all if there's no memory
3177 available. Also, check for null return from hash_insert, rather
3178 than zero-length string, as success indicator.
3179
3180 * subsegs.c (section_symbol): New function.
3181 * subsegs.h (section_symbol): Declare.
3182 * write.c (adjust_reloc_syms): Use it.
3183
cf4aca57
KR
3184Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3185
7387c355
KR
3186 * Makefile.in (RUNTEST): New variable.
3187 (CHECKFLAGS): Pass it down.
3188
cf4aca57
KR
3189 * ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
3190 unused for now, but supplied by Alpha OSF1 compiler.
3191
3192 * as.h: Protect against multiple inclusions.
3193 (int_to_gen): Don't declare.
3194
3195 * config/atof-vax.c (atof_vax): NULL is not a valid character
3196 constant.
3197
551d2fd4
JL
3198Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3199
26da0351
JL
3200 * configure.in (hppa*-*-osf*): Do not consider this a developmental
3201 configuration.
3202
551d2fd4
JL
3203 * config/tc-hppa.c (md_apply_fix): Handle cases where no
3204 relocation will be emitted for 32bit formats.
3205
9d5a9b20
JL
3206Mon Dec 13 23:33:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3207
3208 * config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
3209 for any of the 'T' field selectors.
3210
2b5936ff
SC
3211Sat Dec 11 11:23:12 1993 Steve Chamberlain (sac@thepub.cygnus.com)
3212
3213 * config/tc-h8500.c (build_bytes): Get reloc type right for a
3214 %page operation. (md_assemble): Don't modify input_line_pointer.
3215 (mdcoff_sizemachdep): New function.
3216 * config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
3217 * config/tc-z8k.c (get_operand): Delete bogus check.
3218
a1328e79
KR
3219Wed Dec 8 16:31:51 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
3220
3221 * write.c (number_to_chars_*): Delete bogus range check.
3222
3223 * output-file.c (TARGET_ARCH): No default.
3224
ef7ce769
SC
3225Tue Dec 7 16:02:53 1993 Steve Chamberlain (sac@jonny.cygnus.com)
3226
3227 * config/tc-sh.c (md_convert_frag): Truncate disps before calling
3228 md_number_to_chars. (md_assemble): Don't modify
3229 input_line_pointer.
3230
67707031
DE
3231Mon Dec 6 11:49:03 1993 Doug Evans (dje@canuck.cygnus.com)
3232
3233 * config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
3234
dd2f509f
JL
3235Mon Dec 6 11:20:02 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3236
3237 * config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
3238 Breaks with the HP compilers.
3239
3240 * config/tc-hppa.c (struct call_info): Remove fields which were
3241 set but never used. Remove all code which sets those fields.
3242 (struct subspace_dictionary_chain): Likewise.
3243 (struct space_dictionary_chain): Likewise.
3244 (pa_desc): Delete useless function. Delete all references.
3245 (hppa_tc_make_sections): No need to count the number of symbols for
3246 the symbol extension section.
3247
7b624bf2
JL
3248Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3249
eb91665b
JL
3250 * config/obj-som.c (obj_som_version): Pass version string to
3251 SOM BFD backend.
3252 (obj_som_copyright): New function. Much like obj_som_version.
3253
3254 * config/tc-hppa.c (obj_copyright): Define as appropriate for
3255 SOM and ELF.
3256 (pa_copyright): Just a stub now.
3257
42ecb409
JL
3258 * config/obj-som.c (obj_read_begin_hook): Delete unused function.
3259 * config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
3260 (TARGET_SYMBOL_FIELDS): Delete. SOM isn't making use of them.
3261
4165dcc2
JL
3262 * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
3263 expansion due to rounding mode selectors. Handle R_[RDSN]_MODE
3264 relocations for selecting the current rounding mode.
3265
7b624bf2
JL
3266 * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
3267 e_rlsel field selectors.
3268
3269Fri Dec 3 18:33:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3270
3271 * config/obj-elf.h: If ECOFF_DEBUGGING, undef
3272 SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
3273 OBJ_PROCESS_STAB to call ecoff_stab.
3274 * config/obj-elf.c: Don't compile obj_elf_init_stab_section if
3275 INIT_STAB_SECTION is not defined.
3276
753dcbbd
JL
3277Fri Dec 3 10:56:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3278
3279 * config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
3280 (md_apply_fix_1): Rename to md_apply_fix. Fix argument decls.
3281 Fix comments in various places. Always return a value.
3282 Avoid dereferencing a NULL fx_addsy.
3283 (hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
3284
585635c7
JL
3285 Fri Dec 3 09:47:30 1993 Pete Hoogenboom (hoogen@cs.utah.edu)
3286
3287 * tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
3288 be either 0 or 2 (no static link or static link required). Always
3289 assume no static link.
3290
bfbfba45
KR
3291Thu Dec 2 11:52:21 1993 Ken Raeburn (raeburn@cygnus.com)
3292
3293 * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
3294 dependent on howto fields, not on format flavour.
3295
3296 * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
3297 defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
3298 macros are defined.
3299 * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
3300 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
3301 (sy_tc, sy_obj): Define so that the fields look like they used to,
3302 until all references get changed.
3303
3304 * write.c (fixup_segment): Lots of variables no longer register.
3305 Reordered some code for easier reading.
3306 * config/obj-coff.c (obj_coff_dim): dim_index no longer register.
3307 Deleted superfluous return statement.
3308 (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
3309 obj_coff_val, tag_init, tag_insert): Deleted superfluous return
3310 statement.
3311 (align, obj_coff_section): Deleted debugging printfs.
3312 * config/tc-i386.c (md_assemble): Discard some register decls.
3313 Use assignment rather than memcpy to copy template.
3314 (op_hash, reg_hash, prefix_hash): Default C initialization of
3315 statics is sufficient.
3316 * config/tc-sparc.c (print_insn): Array Reloc is now const, and
3317 points to const.
3318
3319 * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
3320 TE_LYNX; use coff-sparc otherwise.
3321 [USE_NATIVE_HEADERS]: Delete this code; it isn't used.
3322
3323 * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
3324 before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before
3325 returning. Remove some i960-coff-specific code.
3326 (TC_ADJUST_RELOC_COUNT): Default to doing nothing.
3327 * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
3328 (i960_validate_fix): Declare.
3329 (TC_VALIDATE_FIX): Define.
3330 * config/tc-i960.c (i960_validate_fix): New function.
3331
3332 * write.c (number_to_chars_littleendian): New function. Write out
3333 bytes in little endian order, doing size and range checking.
3334 (number_to_chars_bigendian): New function, similar.
3335 * write.h: Declare them.
3336 * config/tc-*.c (md_number_to_chars): Use them.
3337 * config/tc-vax.c (md_apply_fix): Ditto.
3338 * config/tc-i386.c (md_apply_fix): Ditto.
3339
3340 * config/obj-coff.c: Rearranged code for handling line number
3341 data.
3342 (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
3343 since the usage is different from non-BFD_ASSEMBLER case.
3344 (in_function, clear_function, set_function): New macros, to
3345 combine some of the functionality implemented in differnet ways in
3346 BFD_ASSEMBLER and non-... code. Used in other functions that used
3347 to check function_lineoff &c.
3348 (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
3349 one for not. Non-BFD_ASSEMBLER version now has temporary variable
3350 to contain char* pointer pointed to by char** argument. Always
3351 follow CROSS_COMPILE code; easier to read that way.
3352 (obj_coff_ln): Don't call add_lineno or c_line_new if appline is
3353 set.
3354 (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
3355 ".bf", it's been done elsewhere.
3356 (coff_frob_symbol): If ilne number data is pending, call
3357 add_linesym to flush it.
3358 (coff_frob_file): Don't do that here.
3359 * config/obj-coff.h (coff_frob_file): Declare.
3360 (obj_frob_file): Define, to call it.
3361
3362 * config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
3363 md_estimate_size_before_relax: Define them as macros calling
3364 as_fatal.
3365 * config/tc-sparc.c: Don't define them as functions.
3366
3367 * configure.in: Handle target alpha-*-osf*. (No cpu files yet.)
3368
0a8ae18f
JL
3369Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3370
3371 * Makefile (clean): Depend on clean-here.
3372
9a048e48
KR
3373Wed Dec 1 11:35:21 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
3374
3375 * config/ho-go32.h: Include fopen-bin.h.
3376 * as.h: If FOPEN_WB isn't defined, include fopen-same.h.
3377 * output-file.c (output_file_create): Use FOPEN_WB instead of "w".
3378 * input-file.c (input_file_open): Use FOPEN_RT instead of "r".
3379 * listing.c (file_info): Use FOPEN_RB instead of "rb".
3380 * read.c (s_include): Use FOPEN_RT instead of "r".
3381
3382 * stabs.c: Include obstack.h.
3383
3384 * tc.h (md_create_long_jump): Don't declare if it's already
3385 defined as a macro.
3386 (md_create_short_jump, md_estimate_size_before_relax): Ditto.
3387
3388 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
3389 of strerror. Clear bfd_error.
3390
3391 * config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
3392 defined.
3393
44c0de53
JL
3394Wed Dec 1 10:41:56 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3395
3396 * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
3397 (pa_process_exit, pa_procend): Call it for ELF objects.
3398
777ad64d
ILT
3399Wed Dec 1 12:10:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3400
3401 * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
4032d3f0
ILT
3402 case. See comment. From wilson@cygnus.com: for M_L_DAB, set
3403 coproc before doing goto ld.
777ad64d 3404
335d35c8
JL
3405Tue Nov 30 13:40:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3406
3407 * write.c (TC_FORCE_RELOCATION): Provide a default definition.
3408 (fixup_segment): Allow the target machine to specify that a
3409 relocation must be generated for a particular fixup. Remove
3410 #ifndef TC_HPPA hack.
3411
3412 * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.
3413
3414 * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
3415 be NULL. Only fixup_segment is supposed to do that.
3416 (hppa_force_relocation): New function.
3417
018f2bba
ILT
3418Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3419
c751ad19
ILT
3420 * Makefile.in (stabs.o): Added dependencies.
3421
018f2bba
ILT
3422 * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
3423
81413fa2
JL
3424Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3425
278cd007
JL
3426 * app.c (do_scrub_next_char): Output a TAB before any
3427 .app* directive.
3428
81413fa2
JL
3429 * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
3430 exists before trying to peek at its name.
3431 (pa_space): Do not call pa_align_subseg. See hppa/unsorted/align3.s
3432 for testcase.
3433 (pa_align_subseg): Delete unused/unwanted function.
3434
385ce433
JL
3435Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3436
3437 * read.c (read_a_source_file): Fix test for when to stick a colon
3438 on the end of a label. Make code conditional on either MRI or
3439 LABELS_WITHOUT_COLONS.
3440
3441 * app.c (do_scrub_next_char): If a line begins with whitespace, leave
3442 the single whitespace character alone. Eat all others.
3443
3444 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
3445
31a385d1
JL
3446Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3447
3448 * config/tc-hppa.c (pa_procend): Do not call process_exit.
3449 (exit_processing_complete): Delete unwanted variable and all
3450 references.
3451
c5953036
ILT
3452Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3453
3454 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
3455 Changed to not actually build the external symbol information, as
3456 that is now done by the ECOFF back end.
3457 (ecoff_build_debug): Changed accordingly.
3458 * ecoff.h (obj_ecoff_set_ext): Declare. obj-format.c function
3459 called by ecoff_setup_ext.
3460 * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
3461 set corresponding pointer to NULL. Don't set raw_size and
3462 raw_syments.
3463 (obj_ecoff_set_sym_index): Removed.
3464 (obj_ecoff_set_ext): New function.
3465 * config/obj-ecoff.h (obj_set_sym_index): Don't define.
3466 (obj_ecoff_set_sym_index): Don't declare.
3467 * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
3468 elf_set_index): New functions used for ECOFF_DEBUGGING.
3469 (elf_frob_file): Reworked ECOFF debug generation to use
3470 new functions in bfd/ecofflink.c.
3471
3472Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3473
3474 * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
3475 subspace for ELF. In the SOM world, the linker is responsible
3476 for creating the unwind subspaces.
3477
e0209756
ILT
3478Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3479
3480 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
3481 (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
3482 already set. Fixes .def var; .val external_var; .scl 3; .endef.
3483 (adjust_stab_section): Make static. Declare return type. Remove
3484 unused variables.
3485
3486 * config/tc-i386.h: Declare tc_coff_fix2rtype and
3487 tc_coff_sizemachdep.
3488
0669e047
KR
3489Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
3490
3491 * write.c (write_object_file): Disable obj_check_file_symbols
3492 hook; only back end using it wasn't using it correctly.
3493 (write_object_file): Always call obj_frob_symbol and
3494 tc_frob_symbol; always retain symbol if it's used by a relocation,
3495 regardless of what these routines indicate.
3496 * config/obj-coff.c (coff_frob_symbol): Renamed from
3497 coff_check_file_symbols.
3498 * config/obj-coff.h (obj_check_file_symbols): Deleted.
3499 (coff_frob_symbol): Declare.
3500 (obj_frob_symbol): Call it.
3501
3502 * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
3503 obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
3504 (c_section_header): Ditto. Delete superfluous return at end of
3505 function.
3506
3507 * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
3508 coff-sparc-lynx.
3509 (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
3510 too.
3511 (c_section_header): Rewrite prototype so that it contains no
3512 preprocessing directives. Don't declare it at all if
3513 BFD_ASSEMBLER.
3514
3515 * configure.in (sparc*-*-lynxos): New target, using coff and
3516 BFD_ASSEMBLER.
3517
3518 * stabs.c: New file.
3519 * Makefile.in (REAL_SOURCES, OBJS): List it.
3520 * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
3521 get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
3522 Moved to new file.
3523
3524 * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
3525 files.
3526
29cc5816
ILT
3527Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3528
3529 * configure.in (mips-*-irix5*): New target. Use elf and mips-big.
3530 * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
3531 (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
3532 pseudo-ops.
3533 (obj_read_begin_hook): If ECOFF_DEBUGGING, call
3534 ecoff_read_begin_hook.
3535 (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
3536 ecoff_symbol_new_hook.
3537 (obj_elf_init_stab_section): Cast alloca result.
3538 (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
3539 information and write it out into .mdebug section.
3540 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
3541 (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
3542 (ECOFF_DEBUGGING): Define if TC_MIPS.
3543 (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
3544 fields required by ECOFF.
3545 * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
3546 OBJ_ECOFF in many cases.
3547 (mips_any_noreorder): New variable.
3548 (mips_cprestore_offset): Initialize to -1.
3549 (mips_frame_reg): New variable.
3550 (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
3551 RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
3552 (md_pseudo_table): Handle "gpword" and "cpadd".
3553 (md_begin): Initialize ok to false. If OBJ_ELF, set alignment
3554 of text, data and bss sections to 4. Set alignment of
3555 .reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
3556 section.
3557 (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
3558 check.
3559 (append_insn, macro_build, macro_build_lui): Take place
3560 argument. Changed all callers.
3561 (append_insn): If appending a nop, don't emit one.
3562 (macro_build): Changed assertion for 'i', 'j', 'o' case.
3563 (gp_reference): Removed.
3564 (load_address): New function.
3565 (macro): If mips_noreorder is used, set mips_any_noreorder.
3566 Extensive changes to handle GP and PIC symbols differently.
3567 Build both possible code choices using a variant frag, and
3568 make a final decision at the end of assembly when all
3569 information is known. Added PIC support for all symbol
3570 references.
3571 (mips_ip): Don't permit anything but a number after $ for a
3572 coprocessor register. Don't use .lit4 or .lit8 sections when
3573 generating PIC code. If OBJ_ELF, set alignment of .lit4 or
3574 .lit8 section to 4.
3575 (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
3576 (s_change_sec): Set alignment of ELF .rodata or .sdata section
3577 to 4.
3578 (s_mipsset): If .set noreorder, set mips_any_noreorder.
3579 (s_cpload): Ignore .cpload if not generating PIC code. Warn
3580 if .cpload is not in noreorder section.
3581 (s_cprestore): Ignore .cprestore if not generating PIC code.
3582 (s_gpword, s_cpadd): New functions.
3583 (tc_get_register): Added frame argument; if true, set
3584 mips_frame_reg to return value. Changed all callers.
3585 (md_estimate_size_before_relax): Don't error out, but instead
3586 determine how much a frag should grow.
3587 (tc_gen_reloc): Return multiple relocs if appropriate, as
3588 determined by md_estimate_size_before_relax.
3589 (md_convert_frag): New function.
3590 (mips_elf_final_processing): Set ELF header flags based on
3591 mips_any_noreorder and mips_pic.
3592 * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
3593 (MAX_RELOC_EXPANSION): Define to be 3.
3594 (md_relax_frag): Define to be 0.
3595 (md_convert_frag): Don't define.
3596 (tc_get_register): Changed declaration.
3597
3598 * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
3599 support generating ECOFF debugging information for MIPS ELF
3600 targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
3601 handling of external symbols: it now always generates exactly
3602 those external symbols that are defined in the global symbol list.
3603 * Makefile.in (REAL_SOURCES): Added ecoff.c.
3604 (REAL_HEADERS): Added ecoff.h.
3605 (OBJS): Added ecoff.o.
3606 (ecoff.o): New target.
3607 * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
3608 Remaining code mostly just calls ecoff.c code.
3609 * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
3610 (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
3611 struct localsym.
3612 (obj_read_begin_hook, obj_symbol_new_hook): Define to call
3613 functions in ecoff.c.
3614 (ecoff_stab): Don't declare (now declared in ecoff.h).
3615 (obj_set_sym_index): Define.
3616 (obj_ecoff_set_sym_index): Declare.
3617
3618 * frags.h (frag_grow): Declare.
3619 * frags.c (frag_grow): Made non-static.
3620
3621 * write.c (is_dnrange): Do not define if md_relax_frag is defined.
3622 (relax_segment): If md_relax_frag is defined, use it to handle a
3623 frag of type rs_machine_dependent rather than looking through
3624 md_relax_table.
3625
3626 * read.c (read_a_source_file): If we find a bad pseudo-op,
3627 do a continue to go on to the next line rather than a break.
3628 Removed duplicate bad pseudo-op code which was never executed.
3629
3630 * read.c (s_lcomm): Do not require a comma after the name.
3631
3632 * subsegs.h (segment_info_type): Changed hadone field to bitfield.
3633 Added bss bitfield.
3634 * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
3635 * read.c (s_lcomm): Set bss flag for .sbss section if used.
3636 * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
3637 bss section. Set SEC_RELOC if there are any relocations, even for
3638 a zero size section.
3639
3640 * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
3641 data offset on reloc[0]->address rather than reloc[j]->address, so
3642 that multiple relocs can affect different memory locations.
3643
3644 * write.c (chain_frchains_together, relax_and_size_seg,
3645 adjust_reloc_syms, write_relocs): Make third argument PTR, not
3646 char *, to match definition of bfd_map_over_sections.
3647
3648 * app.c (do_scrub_next_char): Don't interpret a comment character
3649 as starting a CPP line directive unless it is a '#' and is the
3650 very first characters on the line (i.e., do not permit leading
3651 whitespace).
3652
3653 * messages.c (identify): Make file argument non-const, to match
3654 callers.
3655
c5e9ccd0
JL
3656Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3657
3658 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
3659
3660Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
3661
3662 * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
3663 * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
3664 relocs.
3665
4a1b59ef
JL
3666Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3667
3e330968 3668 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
3669 * config/obj-som.c (obj_som_version): Add missing ';'.
3670 (som_frob_file): Delete whitespace at EOL.
3671
f3b6e1f2
KR
3672Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
3673
3674 * Makefile.in (VERSION): Updated following 2.2 release.
3675
c5e9ccd0 3676Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
3677
3678 * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
3679 field selector, rather than an int. All uses of field selectors
3680 fixed.
3681 (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
3682 (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
3683 field.
3684
3685 Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
a721c80b
JL
3686
3687 * config/tc-hppa.c (pa_type_args): For .import statements,
3688 silently ignore attempt to change the symbol type for a function
f2eed884 3689 from ST_ENTRY to ST_CODE on .import.
a721c80b 3690
ca16b5e5
ILT
3691Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3692
3693 * write.h (fixS): Rename fx_callj field to fx_tcbit.
3694 * write.c, config/obj-coff.c, config/obj-coffbfd.c,
3695 config/tc-i960.c: Corresponding changes.
3696
48153d49
JL
3697Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3698
7420b02b
JL
3699 * Makefile.in (distclean): Delete config-stamp and config.h
3700
f41f3d72
JL
3701 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
3702 ANSI-C features.
3703
48153d49
JL
3704 * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
3705 Accept new argument "is_export". All callers changed. When
3706 processing a .export directive for a function, do not allow
3707 the user to set the type to "CODE", instead warn and set the
3708 type to "ENTRY".
3709
9226253a
ILT
3710Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3711
3712 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
3713 Lemon <mellon@pepper.ncd.com>).
3714 (mips_ip): Permit odd numbered floating point registers if -mips3.
48153d49 3715 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 3716
53087850
DE
3717Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
3718
3719 * configure.in: Remove h8300h, we have multilib now.
3720
5f8a3788
DHW
3721Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
3722
3723 * configure.in: Support generic netware as being ELF format.
3724 Recognise unixware if the user supplies it.
3725
163aac84
JL
3726Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3727
513f0471
JL
3728 * First cut at cleaning up PA instruction parsing.
3729 * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
3730 insn structure as an argument, and a pointer to a string. All
3731 callers changed. Always read any field selector here. Call
3732 evaluate absolute to get a return value.
3733 (evaluate_absolute): Addept pointer to insn structure as its
3734 argument. All callers changed.
3735 (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
3736 into an instruction and continuing the main pa_ip loop.
3737 (CHECK_FIELD): New macro for simple range checking of fields.
3738 (pa_ip): Delete unused variables. Use INSERT_FIELD_AND_CONTINUE
3739 and CHECK_FIELD. All immediate fields now pass through
3740 pa_get_absolute_expression which will also handle field selectors.
3741 Delete dead code. Simplify.
3742 (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
3743 applied are in range. Use bfd_put_32 rather than inserting each
3744 byte of the fixed instrution into the buffer ourselves.
3745
3e411021
JL
3746 * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
3747 it was PA specific and is no longer needed (it's now handled
3748 within the PA backend).
3749 * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
3750 * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
3751 a fixup is $global$ change it to NULL as $global$ is really only
3752 needed long enough to determine the base type of relocation to use.
3753
240cbc57
JL
3754 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
3755
163aac84
JL
3756 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
3757 for 'z' operands (target of ble branch).
3758
1cc248d2
JL
3759Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3760
18c4f112
JL
3761 * config/tc-hppa.c: (update_subspace): Fix type and name of last
3762 parameter. All callers fixed.
3763 (md_begin, pa_chk_field_selector, pa_entry): Lint.
3764
1cc248d2
JL
3765 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
3766 to default state after it's been used.
3767
88eb7ea6
JL
3768Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3769
3770 * config/obj-som.c (obj_som_init_stab_section): Change
3771 space/subspace sort keys for the stab sections so as to avoid
3772 bugs in the hp linker and pxdb.
3773
0f894895
JL
3774Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3775
3776 * write.c (chain_frchains_together): Update pointer to last
3777 frag for a segment in the seginfo structure.
3778
de074576
JW
3779Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
3780
3781 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
3782
3783Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
3784
3785 * write.c (fixup_segment): Handle conversion of subtraction to
3786 pc-relative addressing even if pc-relative flag is already set.
3787
3788 * config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
3789 declare either.
3790
3791 * doc/Makefile.in (distclean): Delete intermediate files from dvi
3792 build, but not the dvi or info files.
3793 * Makefile.in (clean-here): New target; cleans up current
3794 directory only.
3795 (distclean): Use it instead of clean.
3796
3797 * read.c (s_xstab): Don't use alloca.
3798
3799 * messages.c (identify): New routine; print message identifying
3800 following messages as coming from assembler.
3801 (as_show_where, as_bad_internal, as_bad_where): Call it.
3802 (as_fatal): Don't need to identify program any more.
3803
efe8ef02
ILT
3804Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3805
fd4b7c25
KR
3806 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
3807
efe8ef02
ILT
3808 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
3809 well as MIPS ECOFF.
3810 (get_stab_string_offset): Remove unused variable aligned.
3811
aa14e863
JL
3812Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3813
d6e524f3
JL
3814 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
3815 predefined register table.
3816 (pa_parse_number): Handle %rp in common register shortcut code.
3817 Consistently set return value to -1 for an error. Clean up error
3818 messages and only print them when "print_errors" is true. Handle
3819 empty string case like the HP assembler -- assume a value of
3820 zero.
3821
20cee6d8
JL
3822 * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
3823 standard hpux include files to pick up various function decls.
3824
aa14e863
JL
3825 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
3826 stdio.h. Delete bogus declaration of free. Get path to
3827 alloca-conf.h right.
3828
25270a1c
KR
3829Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
3830
3831 * expr.c (operand): Fix checks for characters following "0b" or
3832 "0f".
3833
f197d7eb
JL
3834Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3835
ff852e11
JL
3836 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
3837 so GAS can attach unwind descriptor information to a BFD symbol.
3838 * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
3839 descriptor information to the BFD symbol.
3840 (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
3841 they are simply markers. Make R_HPPA_UNWIND_* handling OBJ_ELF
3842 dependent.
3843 (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
3844 (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
3845 (pa_exit): Likewise, but built a R_HPPA_EXIT relocation. Do not
3846 build "end-of-function" symbols for SOM, they are not needed.
3847
a50e9b55
JL
3848 * config/tc-hppa.c (process_exit): Create temporary symbols with
3849 correct prefixes so they can be eliminated later.
3850
49fc68a1
JL
3851 * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
3852 (pa_callinfo): Insert framesize into the unwind information as
3853 soon as it's available.
3854 (pa_build_unwind_subspace): Do not insert framesize into the unwind
3855 information here.
3856
c43d56f7
JL
3857 * Add support for marker type relocations. These mark areas
3858 of interest to the linker. ENTRY/EXIT relocations for SOM are
3859 an example of marker relocations.
3860 * write.c (write_relocs): Instead of assuming size of a relocation
3861 is 4 bytes, pick up the size from relocation itself.
3862 (fixup_segment): Do not complain that a value is too small for
3863 marker relocations.
3864
009dc5e1
JL
3865 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
3866 * expr.c (operand): Set sy_used for any symbol used as an operand.
3867 (expr): Likewise for any symbol used in an expression.
3868 * config/tc-hppa.h (tc_frob_symbol): Define. Punt imported
3869 symbols which are never used and absolute symbols which local scope.
3870
f197d7eb
JL
3871 * config/obj-som.h (obj_frob_file): Define.
3872 * config/obj-som.c (obj_som_init_stab_section): Set alignment
3873 of stab sections. Make space for the special stab entry.
3874 (adjust_stab_sections): Adjust the special entry in the
3875 stabs section.
3876 (som_frob_file): New function. Simply calls adjust_stab_sections
3877 for each section.
3878
bca9cf0b
ILT
3879Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3880
3881 * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
3882 (mips_pic, mips_cprestore_offset): New static variables.
3883 (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
3884 Ignore .bgnb and .endb.
3885 (gp_reference): _gp_disp is never addressed off GP.
3886 (macro_build): Ignore macros while searching for insn. For cases
3887 i, j, and o, accept the reloc type as an argument rather than
3888 assuming BFD_RELOC_LO16. Don't try to convert BFD_RELOC_LO16 to
3889 BFD_RELOC_MIPS_GPREL. Added new case a.
3890 (set_at, load_register, macro): Changed calls to macro_build to
3891 pass new argument for i, j and o cases.
3892 (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A. These require
3893 special handling when generating SVR4 PIC code.
3894 (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
3895 rather than hard coded constants.
3896 (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
3897 BFD_RELOC_MIPS_CALL16.
3898 (s_option): Set mips_pic based on .option picN.
3899 (s_abicalls): New function; set mips_pic to 2.
3900 (s_cpload): New function; handle .cpload.
3901 (s_cprestore): New function; handle .cprestore.
3902
3903 * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
3904 .endb and .verstamp, setting them to s_ignore.
3905
d191a03c
JL
3906Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3907
47f45d66
JL
3908 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
3909 field. Define SUBSPACE_DEFINED accessor macro.
3910 (pa_subspace): Allow user to override subspace attributes for
3911 built-in subspaces. Set ssd_defined at the end of fcn -- that
3912 way the attributes can only be changed once. Pass newly allocated
3913 name to is_defined_subspace, not a pointer to the input line.
3914 Fix typo in space/subspace rework.
3915 (is_defined_subspace): Delete unused 2nd arg. All callers changed.
3916
3917 * config/tc-hppa.c (pa_import): If currently in the text segment
3918 and a symbol is imported without type information, set BSF_FUNCTION
3919 for the symbol.
20b39b6f
JL
3920 * write.c (relax_and_size_seg): Correct test to determine if
3921 the section's size was rounded up.
3922
e75acd68
JL
3923 * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
3924 can properly set all the SOM symbol types.
3925 * config/tc-hppa.c (pa_symbol_type): New enum to represent the
3926 symbol types which can be set from an IMPORT/EXPORT statement.
3927 (pa_export_args): Set the pa_symbol_type type based on arguments.
3928 If defined, call obj_set_symbol_type to pass this information on
3929 to the BFD backend.
3930
d191a03c
JL
3931 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
3932 stab section we make.
3933 (s_stab_generic): Likewise.
3934
12696e9c
JL
3935Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
3936
65a7f8a6
JL
3937 * Allow backends to override the value of the fake label.
3938 * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
3939 assume backends will define LOCAL_LABEL if anything other than
3940 'L' is used to denote a local label.
3941 (FAKE_LABEL_NAME): New macro. Defines the default name used for
3942 the "fake" label.
3943 * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
3944 and instead simply use the string defined by FAKE_LABEL_NAME.
3945 (operand): Likewise.
3946 * read.c (s_stab_generic): Likewise.
3947 * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
3948 known to be a local label.
3949 * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
3950 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
3951 * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
3952 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
3953 * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
3954 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
3955
6bc14195
JL
3956 Rework space/subspace handling in PA code to fully support
3957 SOM spaces/subspaces.
3958 * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
3959 to control the use of space/subspace name aliases.
3960 (update_subspace): Accept space chain entry for containing space
3961 as a new parameter. All callers changed.
3962 (pa_get_label): Use current_space rather than pa_segment_to_space.
3963 (pa_define_label): Likewise.
3964 (pa_undefine_label): Likewise.
3965 (md_begin): Change into the (possibly modified) text_section.
3966 (pa_parse_space_stmt): Create a new segment/space if create_flag
3967 is true, and the space name is not one of the two predefined spaces.
3968 (pa_subspace): Use current_space rather than a lookup via
3969 pa_segment_to_space. Reset BFD section flags as required by
3970 the .subspace directive. Likewise for the section alignment.
3971 Pass the current space to update_subspace and create_new_subspace.
3972 (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
3973 is true. When not using aliases, create a BFD section for each
3974 subspace encountered. When not using aliases replace the default
3975 text, data, and bss segments with new ones.
3976 (create_new_subspace): When not using aliases each subspace has a
3977 section/segment and subsegments are not needed, so set the subsegment
3978 to zero.
3979
548ea75b
JL
3980 * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
3981 obj_set_section_attributes to pass space attributes to the
3982 BFD backend.
3983 (create_new_space): Likewise.
3984 (create_new_subspace): Likewise for subspace attributes using
3985 obj_set_subsection_attributes.
3986 (update_subspace): Likewise for subspace attributes using
3987 obj_set_subsection_attributes.
3988
0f3b419c
JL
3989 * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
3990 for $TEXT$ and $PRIVATE$ from the default space structure.
3991
9a182533
JL
3992 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
3993 as appropriate for the given type.
3994
62f0841b
JL
3995 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
3996 SOM relocations.
3997
d56f45f5
JL
3998 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
3999 redefinition.
4000
3c87583d
JL
4001 * config/obj-som.[ch]: New files for SOM support. Note SOM
4002 support is not yet complete in GAS or BFD.
4003
12696e9c
JL
4004 * config/ho-hppabsd.h: Delete IO* macros, they are defined in
4005 stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
4006 and string.h.
4007
37ed805e
JL
4008Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4009
12696e9c
JL
4010 * Allow backends to override the section names used for embedded
4011 stabs support. Needed for SOM.
4012 * read.c (STAB_SECTION_NAME): Default the name of the stab section
4013 to ".stab".
4014 (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
4015 (get_stab_string_offset): Is now passed the full name for the
4016 stab string section rather than a name prefix. All references
4017 changed.
4018 (s_stab_generic): New argument for the stab string section name.
4019 all references changed.
4020 (s_xstab): Append "str" to the stab section name to get the
4021 stab string section name.
4022 * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
4023 to stab section name to get the stab string section name. Pass
4024 the full name of the stab string section to get_stab_string_offset.
4025 * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
4026
53c0b9e7
JL
4027 * config/tc-hppa.c (md_begin): Disable "-R" option to fold
4028 textand data segments. Warn user "-R" is unsupported on the
4029 PA.
37ed805e 4030
48ac0c90
JL
4031Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4032
d33ace2e
JL
4033 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
4034 .align and .ALIGN directives.
4035
48ac0c90
JL
4036 * config/tc-hppa.c (pa_space): Do not report an error for a .space
4037 directive which does not define a "well-known" space and does
4038 not include a space number as an argument.
4039
4040 * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
4041 "defined", "loadable", "code_only" and "space_index" fields.
4042 (pa_def_spaces): Correct initialization of the "spnum", "defined",
4043 and "private" fields.
4044
4045 * write.h (struct fix): Add new tc_fix_data field for the various
4046 backends to attach machine dependent fixup information to.
4047 * write.c (fix_new_internal): Initialize new tc_fix_data field.
4048 * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
4049 fx_next fields.
4050 (hppa_find_hppa_fix): Delete unnecessary function. Fix all
4051 callers to get HPPA fixup information from the tc_fix_data field
4052 in the GAS fixup.
4053 (hppa_fix_root): Delete unnecessary variable.
4054 (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
4055
4056 * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
4057 function. Fix all callers.
4058 (subspace_dictionary_chain): Delete unused ssd_start_sym field.
4059
4060 * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
4061 if a particular fixup is adjustable.
4062 * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
4063 perform the real work.
4064
4065 * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
4066 of OBJ_XXX conditionals.
4067 (MAX_RELOC_EXPANSION): Likewise.
4068
4069 * config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
4070 callers. Now returns log2 (N) for positive N which are an exact
4071 power of two or -1 for an error.
4072
4073 * config/tc-hppa.c (pa_callinfo): Range check values provided for
4074 ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
4075 inserting them into the unwind table.
4076
4077 * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
4078 (hppa_gen_reloc_type): New object format dependent macro.
4079 (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
4080 conditional. The code can (and will) be shared between SOM & ELF
4081 formats in the near future.
4082 (cons_fix_new_hppa, md_apply_fix_1): Likewise.
4083 (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
4084 (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
4085 specific call.
4086
4087 * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
4088 to bfd_und_section.
4089
4090 * config/obj-elf.h (obj_elf_version): Add extern prototype.
4091
4092 * configure.in (hppa-*-bsd*): New configuration.
4093 BFD is always used for GAS generating SOM objects.
4094
4095 * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
4096 adjustment is rejected by the target machine.
4097
4098 * config/tc-hppa.c (pa_big_cons): Delete function and its
4099 declaration. All callers changed to use pa_cons.
4100
4101 * write.c (fixup_segment): Fix indention and open/close brace
4102 problem.
4103
4104 From Pete Hoogenboom:
4105 * config/tc-hppa.c (md_atof): Return a NULL on success rather than
4106 an empty string.
4107
3515a504
JL
4108 * config/tc-hppa.c (pa_parse_space_stmt): Advance
4109 input_line_poitner when an invalid argument is encountered.
4110
6121fb06
ILT
4111Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4112
4113 * config/tc-a29k.c (md_begin): When opcodes are mashed together in
4114 the table, require that the one without bit 0x1000000 set come
4115 first. Require further that it be case 'b' or 'P'. The a29k
4116 opcode table already meets these constraints.
4117 (machine_ip): When handling case 'i' or 'A', make sure that the
4118 appropriate opcode really exists by looking at the next entry in
4119 the opcode table.
4120
56c96faa
ILT
4121Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4122
729f4bba
ILT
4123 * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
4124 fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
4125
007ff46b
ILT
4126 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
4127 after a .ent directive.
4128
d1ee509b
ILT
4129 * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
4130 between 32 and 63 for double shift instruction). Do & 0x1f rather
4131 than % 32.
4132 (printInsn): Handle '>'.
56c96faa 4133
fa20b8bf
ILT
4134Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4135
5694ad93
ILT
4136 * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
4137 number in the right place. Untested. Probably does not work for
4138 cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
4139
f3751617
ILT
4140 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
4141 an illegal offset of 0 or -1.
4142
fa20b8bf
ILT
4143 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
4144 section to a longword boundary.
4145
4da7942d
KR
4146Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
4147
4148 * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
4149
4150 From Jeff Law:
4151 * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
4152 HPPA_R_ADDEND.
4153
fd4b7c25
KR
4154Mon Oct 25 14:06:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4155
4156 * config/tc-sparc.c (sparc_ip): Fix up membar argument handling.
4157
24934035
SC
4158Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
4159
8e5afd4f
SC
4160 * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
4161 address. (md_assemble): Make error handling a bit more graceful.
4162 (md_apply_fix): Don't warn on non aligned displacement.
fd4b7c25 4163
24934035
SC
4164 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
4165 aspects of lda.
4166
84678d16
KR
4167Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4168
4169 * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
4170 as.info* even if they're in $(srcdir) (e.g., for FSF
4171 distributions).
4172
4173 * write.c (write_relocs): For relocs that are pc_relative and
4174 pcrel_offset and not partial_inplace, adjust reloc->addend to
4175 compensate for a bfd_perform_relocation bug.
4176
4177 * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
4178 * config/tc-sparc.c: Ditto.
4179 (tc_gen_reloc): Include fx_offset for pcrel fixups.
4180
52aa70b5
JW
4181Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
4182
4183 * tc-mips.c (md_pseudo_table): Add dword pseudo op.
4184
ab0751c8
DZ
4185Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4186
4187 * messages.c: replaced all variables called Format with 'format',
4188 for consistency throughout
4189
4190 * configure.in: handle mips*- instead of mips, mips*el for little
4191 endian configurations
4192
8efed14f
ILT
4193Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4194
4195 * input-scrub.c (physical_input_file, logical_input_file,
4196 physical_input_line, logical_input_line): Made static.
4197 (as_where): Return current file name and line number, don't print
4198 them out.
4199 * messages.c (as_show_where): New static function. Other
4200 functions use it instead of as_where.
4201 (as_bad_internal): New static function.
4202 (as_bad): Use as_bad_internal.
4203 (as_bad_where): New function, like as_bad but taking a file name
4204 and line number.
4205 * as.h (as_bad_where): Declare.
4206 (as_where): Change prototype for new arguments.
4207 * write.h (fixS): Added fields fx_file and fx_line.
4208 * write.c (fix_new_internal): Save file and line number in fix.
4209 (fixup_segment): Use as_bad_where, not as_bad.
4210 * input-file.c (f_in, file_name): Made static.
4211 * cond.c (struct file_line): Just use file and line fields.
4212 (s_else): Use as_where and as_bad_where, not get_file_line and
4213 set_file_line.
4214 (get_file_line, set_file_line): Removed.
4215 * listing.c (listing_newline): Use as_where.
4216 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
4217 * config/obj-ecoff.c (add_file): Use as_where.
4218 * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
4219 * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
4220 * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
4221
efa0c22e
KR
4222Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
4223
4224 * config/tc-m68k.h: Don't define REGISTER_PREFIX or
4225 OPTIONAL_REGISTER_PREFIX if either is already defined.
4226
4227 * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
4228
4229 * configure.in: Set bfd_gas for all sparc targets. Added facility
4230 for keeping or rejecting configurations still under development;
4231 default is to assume production environment, and reject configs
4232 still being worked on. Mark Elf configurations (except sparc and
4233 i386) as developmental. Deleted cases matching some generic names
4234 in favor of more specific names. (E.g., when we get Alpha
4235 support, we'll still only support VMS for Vax.)
4236
4237 * config/tc-sparc.h (md_end): New macro.
4238 * config/tc-sparc.c (md_end): Function deleted.
4239 (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
4240 version compiling. All sparc targets will use bfd now.
4241 * tc.h (md_end): Don't declare if it's defined as a macro.
4242
4243 Changes from Jeff Law and Peter Hoogenboom:
4244
4245 * read.c (next_char_of_string): Limit octal character constants to
4246 three digits.
4247
4248 * config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
4249 against placing additional object-file dependent code here. Warn
4250 against contaminating all of GAS with the internals of tc-hppa.c
4251 through inclusion of tc-hppa.h. Delete all forward declarations
4252 for functions only used within tc-hppa.c, likewise for structures,
4253 variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
4254 conditional code in a few small places.
4255
4256 * config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
4257 structures, global variables, forward declarations together.
4258 Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
4259 conditional code -- try to group conditional code together
4260 into a few places. Make all functions and variables which
4261 are only used within tc-hppa.c static. PARAMize all functions.
4262 Add comments to functions. Delete unused functions, variables,
4263 #defines, etc. Delete unused members within structures. Delete
4264 ldil;ble hacks -- it is believed they were installed to work
4265 around old gas bugs. Avoid using mixed case for local
4266 functions, variables, and structures. Fix formatting problems
4267 not found by GNU-indent. Add FIXME notices for things which
4268 should be worked on the near future. Delete lots of old
4269 useless (1.36 PA-SOM) code.
4270
4271 * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
4272 field of the fixS structure. Needed to build unwind
4273 descriptors correctly.
4274
4275 * write.c: (fixup_segment): Allow expressions such as
4276 sym1-sym2+const as long as sym2 is $global$.
4277
4278 * write.c (adjust_reloc_syms): Provide a hook so that a target
4279 cpu configuration can reject certain relocation reductions.
4280 * tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
4281 which do not involve function symbols.
4282
4283 * config/tc-hppa.h: Reindent with GNU-indent. Delete references
4284 to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
4285 STAB_FIXUP macro.
4286 * config/tc-hppa.c: Likewise.
4287
4288 * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
4289 of elf32_symbol_type.
4290 (pa_export_args): Likewise.
4291 (elf_hppa_final_processing): Likewise.
4292 (pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
4293 anymore?)
4294 (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
4295 ore.
4296
4297 * config/tc-hppa.c: (md_section_align): Align all sections to
4298 a multiple of the section alignment rather than always a
4299 multiple of 8.
4300
4301 * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
4302 bits are zero (eg they specify no relocations), then do not even
4303 bother adding their entries to thesymextn section.
4304
7766838e
ILT
4305Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4306
4307 * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
4308 option, which is used by the SunOS make default .s.o rule.
4309
fd4b7c25
KR
4310Wed Oct 20 12:26:33 1993 Ken Raeburn (raeburn@rover.cygnus.com)
4311
4312 * config/tc-sparc.c (sparc_ip, label "immediate"): Convert relocs
4313 operating on upper 32 bits of immediate constants to lower-half
4314 relocs with adjusted constants.
4315
dff60b7d
ILT
4316Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4317
4318 * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
4319 m68k_aout_machtype.
4320 * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
4321 (m68k_aout_machtype): New variable, if OBJ_AOUT.
4322 (md_assemble): Initialize m68k_aout_machtype based on
4323 current_architecture, if OBJ_AOUT.
4324 (md_parse_option): Remove obsolete reference to omagic.
4325
c17cd709
ILT
4326Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4327
dd3f1f76
ILT
4328 * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
4329 (s_option): Ignore .option O* and .option pic*.
4330 (s_ent): Skip whitespace between symbol and optional digit.
dff60b7d 4331 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 4332
54508138
ILT
4333 * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
4334 characters in state 6.
4335 * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
4336 hexidecimal digits.
4337
c17cd709
ILT
4338 * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
4339 for ELF by hacking around bizarre bfd_perform_relocation behaviour
4340 that I don't dare change.
4341
ad660eb1
ILT
4342Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
4343
4344 * config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
4345 call strchr for each character to see if it is a special char,
4346 instead add a second loop over special_chars. Set alignment
4347 of text, data and bss sections to 4.
4348 (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
4349 used again.
4350 (reloc): Don't return 8 and 16 bit non-PC relative relocations on
4351 ELF, since the ELF object format does not have these type of
4352 relocations. Change the abort into as as_bad and return
4353 BFD_RELOC_NONE to silence compiler warnings.
4354 (md_assemble): Keep track of the instruction size. Allow white
4355 space between the $ and the constant for compatibility with older
4356 gases and other assemblers.
4357 (i386_operand): Skip spaces between $ and expression.
4358 (tc_gen_reloc): Don't allow anything but 32 bit relocations on
4359 ELF. Convert abort into an as_bad and assert into as_fatal.
4360
132239bf
KR
4361Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4362
4363 * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
4364 sub_symbolP is in the current segment, convert to a PC-relative
4365 fixup and discard the symbol.
4366
b7cbb59f
ILT
4367Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4368
463b1851
ILT
4369 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
4370 for st_StaticProc just like st_Proc.
4371
b7cbb59f
ILT
4372 * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
4373 so that OBJ_BOUT doesn't forget to adjust all the fragments in the
4374 .bss section.
4375
f2a663d3
ILT
4376Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4377
4378 * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
4379 (mips_regmask_frag): New static variable, if OBJ_ELF.
4380 (md_begin): If OBJ_ELF, create .reginfo section and set
4381 mips_regmask_frag to a frag.
4382 (mips_elf_final_processing): New function, if OBJ_ELF. Set
4383 mips_regmask_frag to register mask information.
4384 * config/tc-mips.h (elf_tc_final_processing): New macro, defined
4385 if OBJ_ELF.
4386
99024047
KR
4387Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4388
2145a183
KR
4389 * messages.c (as_fatal): Use myname when printing messages.
4390
99024047
KR
4391 * config/tc-i960.c (md_begin): Use null pointer, not empty string,
4392 as initial "return" value in case hashing isn't needed.
4393
4394 * config/tc-a29k.c (md_atof): Return null, not empty string, on
4395 success.
4396 * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
4397 config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
4398 config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
4399 config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
4400
4401Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
4402
4403 fix for pr 3571
4404 * config/tc-h8300.c (get_specific): Special action if 8 bit
4405 address seen. (check_operand): Don't complain if truncating top
4406 bits of an 8 bit address. (build_bytes): Allow an immediate and
4407 an absolute in the same insn.
4408
f37449aa
ILT
4409Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4410
4411 * write.c (write_contents): Don't crash if seginfo is NULL.
4412
4413 * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
4414 by modifying .reginfo section, not by directly modifying BFD
4415 backend data.
4416
fec552ce
DZ
4417Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4418
4419 * config/ho-sunos.h: remove extern time declaration
4420
8d3be803
KR
4421Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4422
4423 * messages.c (as_fatal): Do mention that it's the assembler that
4424 got the fatal error.
4425
88225433
ILT
4426Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4427
1aa6938e
ILT
4428 * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
4429 hold register masks.
4430 (md_begin): Initialize them to zero.
4431 (append_insn): Update mips_gprmask and mips_cprmask. Also add
4432 register variables pinfo and prev_pinfo.
4433 * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
4434 * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
4435 and cprmask from mips_gprmask and mips_cprmask.
4436
88225433
ILT
4437 * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
4438 * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
4439 (various): Change all references to GP references to apply if
4440 GPOPT, not if OBJ_ECOFF.
4441 (s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
4442 instead of .rdata. If OBJ_ELF, set section flags for .rodata and
4443 .sdata sections.
4444 (s_frame, s_loc, s_mask): Comment out entire functions, rather
4445 than just body. They're not used anyhow.
4446 * configure.in: Set cpu_type to mips for mips*. Accept
4447 mips-*-elfl* and mips-*-elf*.
4448
17a0da33
ILT
4449Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
4450
4451 * config/obj-elf.c (obj_elf_common): Allow the alignment field to
4452 not be specified.
4453
80aab579
ILT
4454Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4455
abdad6bc
ILT
4456 * config/tc-mips.c (cons_fix_new_mips): New function. Turn
4457 BFD_RELOC_64 into BFD_RELOC_32.
4458 * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
4459 (cons_fix_new_mips): Declare.
4460
80aab579
ILT
4461 Changes to let cons handle bignums like general expressions.
4462 * expr.h (expressionS): New field X_unsigned.
4463 * expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
4464 unary minus case.
4465 (expr) Fix typo resultP to right if missing operand. Set
4466 X_unsigned to 1 when building new expression.
4467 * read.c (potable): Make "octa" and "quad" call cons, not
4468 big_cons.
4469 (cons): Handle bignums. If given an O_constant (small integer) to
4470 fill a big space, turn it into a bignum.
4471 (parse_bitfield_cons): Set X_unsigned field.
4472 (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
4473 Removed.
4474 * read.h (big_cons): Remove prototype.
4475 * symbols.c (resolve_symbol_value): Don't give a warning if a
4476 symbol in expr_section can not be resolved.
4477 (S_SET_VALUE): Clear X_unsigned.
4478 * write.c (write_object_file): If resolve_symbol_value failed on a
4479 symbol we are writing out, give a warning.
4480 * config/tc-h8500.c (parse_reglist): Set X_unsigned.
4481 * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
4482 call pa_cons, not pa_big_cons.
4483 (pa_big_cons): Remove.
4484 * config/tc-hppa.h (pa_big_cons): Remove declaration.
4485 * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
4486 not big_cons.
4487
4488Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
4489
4490 * doc/as.texinfo (Copying): new node, to handle the recent changes
4491 in the texinfo/gpl.texinfo file
4492
4f5666c5
ILT
4493Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4494
4495 * read.c (big_cons): Handle "0" correctly.
4496
4497 * config/tc-mips.c (md_begin): Set target_big_endian correctly.
4498
8208ab5a
KR
4499Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4500
4501 * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
4502 have pc-relative fixup.
4503 (md_parse_option): Move "-k" case down near "-pic" case.
4504
31909d40
KR
4505 * configure.in: Alphabetize list of cpu type alternatives. Enable
4506 OS values of "linux*elf*" and "linux*coff*" to select those
4507 formats, with linux emulation. Don't bother checking for upper-
4508 or mixed-case versions of "ose".
4509
8208ab5a
KR
4510Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
4511
4512 * config/z8k.c (md_pseudo_table): add "unseg".
4513
6cc87fbb
RP
4514Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
4515
4516 * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
4517 found while extending the dissassembler.
4518
8f3956b3
SS
4519Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
4520
4521 * configure.in: Split i386 LynxOS out from other coff targets,
4522 add a specific Lynx emulation.
4523 Add m68k LynxOS target.
4524 * config/tc-i386.c: Define specific Lynx target format.
4525 * config/tc-m68k.c: Define specific Lynx target format.
4526 * config/te-lynx.h: New file.
4527
4528 * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
4529 "coff-{i386,m68k}" if TARGET_FORMAT already defined.
4530 (INIT_STAB_SECTION): Define.
4531 * config/obj-coffbfd.c: Include <time.h>.
4532 (write_object_file): Look for .stab sections and call
4533 adjust_stab_section.
4534 (adjust_stab_section): New function, fills in the first symbol
4535 of a stab section with number of symbols and string table size.
4536 (obj_coff_init_stab_section): New function, creates the initial
4537 symbol for a stab section.
4538
43029a8f
KR
4539Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4540
4541 * config/atof-vax.c (md_atof): Return null on success instead of
4542 empty string.
4543 * config/atof-tahoe.c (md_atof): Ditto.
4544 * read.c (float_cons): Expect a null pointer for success, not an
4545 empty string.
4546
4547 * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
4548 on success, instead of empty string. All callers changed.
4549
4550 * config/tc-vax.c: Use PARAMS in declarations.
4551 (vip_op): Use NULL instead of empty string for success in error
4552 and warning fields.
4553
b7318ac4
KR
4554Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4555
b9790da8
KR
4556 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
4557 in different defined segments.
4558
b7318ac4 4559 * write.c (relax_segment): Localize "aim" variable. If
132239bf 4560 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
4561 (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
4562 segment, convert to a PC-relative fixup and discard the symbol.
4563
4564 * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
4565 (md_parse_option) [TE_SUN3]: Set it for "-k".
4566 (m68k_ip): Generate proper fixup for mode 7.3.
4567 * config/tc-m68k.h (DIFF_EXPR_OK): Define.
4568
c996b199
KR
4569Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4570
4571 * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
4572 earlier in the file.
4573 (insop, add_exp): Now defined as functions, for readability.
4574 (insop): Now takes two arguments; callers changed.
4575
6d6b97b7
RP
4576Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
4577
58f3e8a9
RP
4578 * config/tc-m88k.c (get_o6): new function.
4579 (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
4580 get_vec9, getval, get_pcr, calcop, match_name): make static and
4581 prototype.
4582 (s_file): remove extraneous forward decl.
4583 (md_begin): add const to retval decl.
4584 (calcop): cope with instructions without arguments. Handle 'o'
4585 type argument, the o6 field of the prot insn.
4586 (md_estimate_size_before_relax): return a dummy value.
4587
6d6b97b7
RP
4588 * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
4589 in bits 10 through 7. flt.[dxs]s requires an r register in the
4590 second argument. New instruction lda.x. New instruction muls
4591 (alias for mul).
4592
4593Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4594
4595 * Makefile.in (distclean): Recurse like clean.
4596 * doc/Makefile.in (distclean): New target.
4597
4598 * config/tc-mips.c (md_begin): Set BFD architecture and machine
4599 based on MIPS ISA level.
4600
4601Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4602
4603 * as.c (main): "exhausted", not "exhuasted".
4604
4605 * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
4606 * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
4607 (write_object_file): Never strip symbols with sy_used_in_reloc
4608 set.
4609
4610 * config/obj-elf.c (obj_elf_section): Rewrote to handle both
4611 Solaris and SVR4 style .section pseudo-ops.
4612 (obj_elf_ident): Set SEC_READONLY for .comment section.
4613 * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
4614 generating a reloc, don't apply a fix.
4615
6110df28
KR
4616Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4617
4618 * config/obj-coffbfd.c (relax_align): Now static.
4619
9bd0d649
ILT
4620Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4621
4622 * read.c (get_stab_string_offset): Make non-static. Make
4623 arguments const. Don't align strings to 4 byte boundaries.
4624 * read.h: Declare get_stab_string_offset.
4625 * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
4626 SEC_LOAD for progbits section.
4627 (obj_elf_init_stab_section): New function.
4628 (adjust_stab_sections): Add casts to avoid warnings.
4629 * config/obj-elf.h (INIT_STAB_SECTION): Call
4630 obj_elf_init_stab_section.
4631 (OBJ_PROCESS_STAB): Removed definition.
4632
80903ca6
ILT
4633Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4634
4635 * config/obj-elf.h (S_GET_SIZE): Define.
4636 (obj_frob_forward_symbol): Define.
4637 * config/tc-i386.c (line_comment_chars): Initialize in all cases.
4638
13998021
ILT
4639Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4640
9bd0d649 4641 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
4642 RELOC_EXPANSION_POSSIBLE.
4643 * config/obj-elf.c (obj_elf_section): Only set flags when first
4644 creating the section.
4645
4646Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4647
4648 * config/tc-mips.c (append_insn): Don't swap a trap instruction
4649 with a branch.
4650
4f0bccc7
ILT
4651Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4652
90397ff8
ILT
4653 * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
4654 set previous_section and previous_subsection and then call s_data
4655 and s_text, respectively.
4656 (obj_pseudo_table): Add data and text.
4657 (obj_elf_section): Add SEC_LOAD to default initialization of
4658 flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
4659 SEC_ALLOC for "alloc" string. Don't bother trying to find the
4660 section; just use subseg_new.
4661
4f0bccc7
ILT
4662 * read.c (change_to_section): Removed. This is now done by
4663 subseg_new.
4664 (get_stab_string_offset): Rearranged somewhat. Create the section
4665 using subseg_new. Store the string index in seg_info, rather than
4666 in a static variable. Force the first string to be empty. Use
4667 frag_more rather than FRAG_APPEND_1_CHAR.
4668 (s_stab_generic): Rewrote.
4669 * subsegs.h (segment_info_type): Added stabu union.
4670 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
4671 * config/obj-aout.c: Don't include aout/stab_gnu.h.
4672 (obj_aout_stab, obj_aout_desc): Removed.
4673 (obj_pseudo_table): Removed desc and stabX entries.
4674 * config/obj-bout.c: Same changes as config/obj-aout.c.
4675 * config/obj-bout.h (S_SET_TYPE): Define.
4676 (tc_bout_fix_to_chars): Declare.
4677 * config/obj-coff.c (obj_coff_stab): Removed.
4678 (obj_pseudo_table): Removed desc and stabX entries.
4679 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
4680 * config/obj-coffbfd.c (current_stab_symbol): Removed.
4681 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
4682 n_other, n_desc and n_value fields.
4683 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
4684 (MAKE_STAB_SYMBOL): Removed.
4685 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
4686 Changed arguments and removed parsing code.
4687 (obj_pseudo_table): Removed stabX entries.
4688 * config/obj-ecoff.h (ecoff_stab): Declare.
4689 (OBJ_PROCESS_STAB): Define.
4690 * config/obj-elf.c: Don't include aout/stab_gnu.h.
4691 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
4692 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
4693 Removed.
4694 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
4695 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
4696 set SEC_LOAD for .note section.
4697 (adjust_stab_sections): Get frag pointer from seg_info, rather
4698 than looking through frags.
4699 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
4700 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
4701 Define.
4702 * config/obj-vms.c (obj_aout_stab): Removed.
4703 (obj_pseudo_table): Removed stabX entries.
4704 * config/obj-vms.h (S_SET_TYPE): Define.
4705
4706 * as.h: Declare listing.
4707 * read.c: Don't declare listing.
4708 (emit_expr): Cast fix_new_exp argument.
4709 (parse_bitfield_cons): Correct printf format.
4710 * symbols.c (symbol_new): Add cast to avoid warning.
4711 * write.h: Declare text_last_frag and data_last_frag.
4712 * config/obj-bout.c (obj_bout_line): Added dummy argument.
4713 * config/obj-coffbfd.c: Add some casts to avoid warnings.
4714 * config/tc-a29k.c: Likewise.
4715 * config/tc-i960.c: Likewise. Also fully bracket structure
4716 initializations, fix printf formats, and remove unused variables.
4717
604633ae
ILT
4718Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4719
4720 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
4721 * struc-symbol.h: Declare verify_symbol_chain and
4722 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
4723 * symbols.c (verify_symbol_chain): Removed useless expression.
4724 * write.c (headers, the_object_file): Only use if not
4725 BFD_ASSEMBLER and not BFD.
4726 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
4727 not BFD.
4728 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
4729 not OBJ_AOUT).
4730 * write.h: Declare relax_segment.
4731 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
4732 static.
4733 (stack_top): Commented out, since it's not used.
4734 Fixed up pseudo-op functions to take an ignored int argument.
4735 (size_section): Added default BAD_CASE to switch.
4736 Changed bzero calls to memset.
4737 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
4738 (s), not on s itself.
4739 * config/tc-a29k.c (s_use): Take ignored int argument. Only
4740 define if OBJ_COFF is not defined.
4741 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
4742 argument signed again.
4743 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
4744 argument.
4745 (m68k_ip): Fully bracket initialization of archs.
4746 Correct several formats for __LINE__ to be %d rather than %s.
4747 (init_table): Fully bracket initialization.
4748 Cast values larger than 0x7f assigned to fr_opcode to char.
4749
4750 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
4751 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
4752 section name, and subseg_set always takes a segT. Changed all
4753 callers as appropriate.
4754 * config/obj-coffbfd.c (change_to_section): Renamed to
4755 obj_coff_add_segment. Corrected. Made callers use subseg_new.
4756 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
4757 Define.
4758
54e3e909
DE
4759Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
4760
4761 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
4762
58d4951d
ILT
4763Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4764
4765 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
4766
4767 Gcc lint.
54e3e909 4768 * Added a number of casts to function calls.
58d4951d
ILT
4769 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
4770 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
4771 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
4772 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
4773 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
4774 (obj_elf_section), config/tc-i386.c (parse_register),
4775 config/tc-sparc.c (isoctal, s_proc): Cast char
4776 array indices to unsigned char.
54e3e909
DE
4777 * app.c (process_escape): Make static. Add prototype. Change
4778 argument from char to int.
58d4951d
ILT
4779 * as.c: Include output-file.h for prototypes. Comment out unused
4780 function got_sig.
4781 * Makefile.in (as.o): Depend on output-file.h.
4782 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
4783 (pseudo_typeS): Add prototype to poc_handler field.
4784 (print_version_id): Add prototype.
4785 (xmalloc, xrealloc): Change size arguments to unsigned long.
4786 (do_scrub_next_char): Add prototypes for function arguments.
4787 (had_errors, had_warnings, scrub_from_file): Remove duplicate
4788 declarations.
4789 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 4790 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
4791 * expr.c (floating_constant, integer_constant): Make static. Add
4792 prototypes.
4793 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 4794 * frags.h: Add prototype for frag_init.
54e3e909
DE
4795 * hash.h, hash.c: Change hash values from char * to PTR, make hash
4796 strings const, make returned error strings const char *. Added
4797 prototypes for functions.
4798 * input-file.h, input-file.c (input_file_buffer_size): Return
4799 unsigned int.
4800 * input-scrub.c (buffer_length): Make unsigned.
4801 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
4802 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
4803 long and use %lx. Print name of segment rather than address of
4804 structure.
54e3e909
DE
4805 (listing_list, listing_title): Change argument to int.
4806 (listing_eject, listing_flags, listing_psize): Add int argument.
4807 * listing.h: Corresponding declaration changes.
4808 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
4809 shadowing.
58d4951d 4810 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
4811 offsetT. Add prototype for next_char_of_string. Various
4812 prototype changes.
58d4951d 4813 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
4814 (pobegin): Make errtxt const. Make new_length, tmp_len and num
4815 unsigned.
4816 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
4817 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
4818 Change all callers.
58d4951d
ILT
4819 (s_comm): Change temp from valueT to offsetT. Cast to long when
4820 printing and use %ld (only for error messages anyhow).
54e3e909
DE
4821 (s_long, s_int): Remove unused functions.
4822 (cons): Change argument to int.
58d4951d
ILT
4823 (emit_expr): Use %lx when printing longs.
4824 (get_absolute_expression): Return offsetT, not long.
4825 (get_stab_string_offset): Comment out unless
4826 SEPARATE_STAB_SECTIONS.
4827 (s_stab_generic): Remove unused offset. Define seg_is_new only
4828 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 4829 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 4830 * symbols.c: Remove nested comment.
54e3e909 4831 (symbol_new): Rename value to valu.
58d4951d 4832 (colon): Use %ld and cast to long in error message.
54e3e909
DE
4833 * symbols.h: Remove duplicate verify_symbol_chain declaration.
4834 * tc.h: Remove unused md_emit_relocations declaration.
4835 (tc_gen_reloc): Add declaration.
58d4951d
ILT
4836 * write.c (cvt_frag_to_fill): Change first argument name depending
4837 on BFD_ASSEMBLER.
54e3e909
DE
4838 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
4839 declarations. Make n unsigned.
4840 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
4841 to f to avoid shadowing.
58d4951d
ILT
4842 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
4843 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 4844 punt_it if they will be used. Make i and n unsigned.
58d4951d 4845 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 4846 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
4847 * config/obj-aout.h: Remove nested comment. Add prototype for
4848 obj_aout_frob_symbol.
54e3e909
DE
4849 (obj_aout_line, obj_aout_desc): Add int argument.
4850 * config/obj-ecoff.c: Changed build routines to use an unsigned
4851 offset.
4852 (add_string): Make len unsigned long.
58d4951d
ILT
4853 (obj_ecoff_stab): Use %lu in error message.
4854 * config/obj-elf.c (obj_elf_common): Comment out unused label
4855 allocate_bss.
4856 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
4857 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
4858 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
4859 obj_elf_line, obj_elf_previous): Add int argument.
4860 (obj_elf_write_symbol_p): Make static.
4861 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
4862 * config/tc-hppa.h: Remove declarations of functions declared in
4863 read.h.
54e3e909
DE
4864 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
4865 (s_bss): Add int argument.
4866 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
4867 (dummy): Remove unused function.
4868 (md_assemble): Rename local o to op to avoid shadowing.
4869 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
4870 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
4871 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
4872 %ld in error messages.
54e3e909
DE
4873 * config/tc-sparc.c: Remove duplicate declarations.
4874 (getExpression): Rewrite condition to avoid empty conditional
4875 body.
4876 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
4877 argument.
58d4951d 4878
892a3ff1
KR
4879Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4880
4881 Changes from Jeff Law:
4882
4883 * config/tc-hppa.c (md_assemble): Fix typo.
132239bf 4884 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
4885 unsigned values being < 0, it can't happen.
4886 (is_same_frag): Return a value in recursive call case.
4887 (pa_callinfo): Delete unused variables and labels.
4888 (pa_comm): Likewise.
4889 (pa_copyright): Likewise.
4890 (pa_export): Likewise.
4891 (pa_import): Likewise.
4892 (pa_param): Likewise.
4893 (pa_space): Likewise.
4894 (pa_subspace): Likewise.
4895
abdd08c9
ILT
4896Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4897
4898 * read.c (get_stab_string_offset, s_stab_generic): If
4899 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
4900
414b2c8f
ILT
4901Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4902
4903 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
4904 default flag values.
4905
4064305e
SS
4906Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
4907
1531386b
SS
4908 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
4909
4064305e
SS
4910 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
4911 various stab-related directives.
4912 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
4913 * write.c: (merge_data_into_text): Fix ifdef tangle.
4914 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
4915 for stab reader to use.
4916 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
132239bf 4917 stab reader, macros to access.
4064305e 4918
81b407c9
KR
4919Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4920
fd4b7c25
KR
4921 * config/obj-elf.h (elf_symbol): No longer special-cased on
4922 sparcv9, since elf_symbol_type is now independent of size.
4923
81b407c9
KR
4924 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
4925
4926 * config/tc-hppa.h (struct default_subspace_dict, struct
4927 default_space_dict): Field "sort" is now unsigned char.
4928
4929 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
4930 columns for easier reading.
4931 (bcmp, index): Deleted USG-specific definitions. Should be dealt
4932 with in ho-*.h, or in libiberty. Changed mention of index to
4933 strchr.
4934 (label_symbolP, label_symbol_defined, callinfo_found,
4935 within_entry_exit, exit_processing_complete, within_procedure,
4936 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
4937 label_symbols_rootP, pa_get_label, pa_label_is_defined,
4938 pa_undefine_label): Now static.
4939 (movers): Now const, in addition to pointing to const data.
4940 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
4941 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
4942 Delete declarations.
4943
4944 Merged more changes from Jeff Law and Pete Hoogenboom:
4945
4946 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
4947 entries for .stab and .stabstr.
4948
4949 * config/obj-elf.c: (elf_stab_symbol_string): Set the
4950 SEC_LOAD attribute for the .stabstr section.
4951 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
4952 .stab section.
4953 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
4954 (obj_elf_stab_generic): Incorrect byte count on call to
4955 md_number_to_chars function.
4956
4957 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
4958 argument relocation bits too.
4959
4960 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
4961 characters which should appear unaltered in the output string (for
4962 example an escaped double-quote).
4963
4964 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
4965 initialize name.
4966 (pa_parse_neg_cmpsub_cmpltr): Likewise.
4967 (pa_parse_nonneg_add_cmpltr): Likewise.
4968 (pa_parse_neg_add_cmpltr): Likewise.
4969
4970 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
4971 for now.
4972 (cons_fix_new_hppa): Likewise.
4973 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
4974 prototype.
4975
4976 * config/tc-hppa.c: Include libhppa.h.
4977
132239bf 4978 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
4979 found in libhppa.h.
4980
4981 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
4982 OBJ_ELF conditionals.
4983 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
4984 on the PA.
4985
1849d646
ILT
4986Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4987
ff3a5c18
ILT
4988 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
4989 (macro): Use "z,s,t" for div instructions to match corresponding
4990 change in opcode table.
4991 (mips_ip): Added 'z'--must be zero register.
1849d646 4992
e96d50d0
KR
4993Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4994
4995 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
4996 tc_gen_reloc correctly.
4997
4998 * configure.in: Use "case" instead of "if" when possible. Rewrote
4999 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
5000
56607c4e
RP
5001Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5002
5003 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
5004 section type of data. 'd' seems to be used for m88k.
5005
5006Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5007
5008 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
5009 s_mips_space): Set insn_label to NULL to avoid changing it at the
5010 next .align statement.
5011 (append_insn): Don't swap jal with instruction that sets the
5012 register that jal sets.
5013
37d719bb
RP
5014Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5015
5016 * configure.in: recognize m88110.
5017
28344993
KR
5018Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5019
5020 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
5021 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
5022 not be on for .hppa_unwind.
5023 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
5024 (pa_param): New function to handle .PARAM directives.
5025 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
5026 functions. Handle '|' for movb; allow movb,n.
5027 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
5028 version. Handle cases where no completer exists for
5029 comb,n or addb,n.
132239bf 5030 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
5031 completer exists for comb,n or addb,n. Make logic
5032 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
5033 (pa_parse_nonneg_add_cmpltr): Likewise.
5034 (pa_parse_neg_add_cmpltr): Likewise.
5035 * tc-hppa.h (pa_param): Declare.
5036
5037Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5038
5039 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
5040 Added forward declaration.
5041
5042 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
5043
5044 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
5045 call to elf_tc_make_sections.
5046 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
5047 attribute.
5048
5049 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
5050 handle symbol extension sections.
5051
5052 * config/tc-hppa.c (pa_build_symextn_section): New function to
5053 create a symbol extension section.
5054 (pa_export_args): Make call to pa_build_symextn_section.
5055 (hppa_tc_symbol, hppa_tc_make_sections,
5056 hppa_tc_make_symextn_section): New functions.
5057 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
5058 macros.
5059
5060 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
5061 BFD_ASSEMBLER branch as well.
5062
5063 * config/tc-hppa.h: If ELF is the target object format, define
5064 some ELF- and hppa-specific types and constants.
5065
5066 * config/tc-hppa.c (getExpression): Fix a typo.
5067
5068 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
5069 if a `=' is part of an instruction.
5070 (read_a_source_file): Handle case where end-of-line markers are
5071 also used within instructions.
5072 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
5073
5074 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
5075 out-of-range branches/'calls using "bl" or calls which may need
5076 argument relocation stubs. Do not need/keep relocations for
5077 conditional branches.
5078 (elf_hppa_final_processing): Fix calculation of function size.
5079
5080 * config/obj-elf.c (obj_elf_version): Mark .note section as
5081 READONLY.
5082
5083 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
5084 address of exp, to expression.
5085 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
5086 (md_apply_fix_1): Delete unwanted comments.
5087 (process_exit): Symbols marking the end of a function are always
5088 BSF_LOCAL.
5089
5090 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
5091 (pa_space): Declare and initialize gdb_section.
5092
5093 * config/obj-elf.c (elf_frob_file): Change
5094 elf_tc_final_processing_hook to elf_tc_final_processing.
5095
5096 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
5097 argument type declarations.
5098 (getExpression): Fix typo.
5099 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
5100 (elf_hppa_final_processing): Likewise. Name changed from
5101 elf_hppa_final_processing_hook.
5102 (start_symbol_root, start_symbol_last): Deleted.
5103
5104 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
5105
5106 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
5107 avoid changing include ordering.
5108
5109 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
5110
6e8dda9c
ILT
5111Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5112
5113 * config/tc-mips.c (set_at): Added unsignedp argument. Use
5114 load_register.
5115 (set_at_unsigned): Removed; changed callers to use set_at.
5116 (load_register): Removed unused ip argument. Changed callers.
5117 (append_insn): Don't swap branch and branch likely.
5118 (macro_build): Handle 'u'.
5119 (load_register): Handle 64 bit constants.
5120 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
5121 support 64 bit constants.
5122 (mips_ip): Use hex constants in range checks for clarity.
5123 (md_number_to_chars): Support 8 byte values.
5124
1e35cd8f
RP
5125Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5126
5127 * config/tc-m88k.h: updated copyrights.
5128 (TC_CONS_RELOC): declare to be RELOC_32.
5129
8358c818
ILT
5130Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5131
5132 * config/tc-mips.c (mips_isa): New static variable.
5133 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
5134 check macros. Set text alignment and GP size here.
5135 (md_assemble): Don't set text alignment and GP size here.
5136 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
5137 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
5138 a NOP after a branch likely.
5139 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
5140 >= 2.
5141 (macro): Support r6000 and r4000 macros.
5142 (mips_ip): Check insn ISA level against mips_isa before using it.
5143 Added 'x' case for ignored register.
5144 (md_parse_option): Handle -mipsN and -mcpu=XX.
5145
c8d4cda1
KR
5146Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5147
5148 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
5149
5150Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5151
5152 * config/tc-sparc.c (s_local): Function moved and renamed...
5153 * config/obj-elf.c (obj_elf_local): ...to here.
5154 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
5155 (obj_pseudo_table): Move handling of ".local".
5156
5157 * tc.h (md_parse_option): Don't declare if defined as a macro.
5158
5159 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
5160 BFD_RELOC_NONE.
5161 (md_parse_option): New macro, converted from function.
5162 * config/tc-i386.c (md_parse_option): Function deleted.
5163 (comment_chars) [OBJ_ELF]: Include "/".
5164 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
5165 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
5166 warning.
5167 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
5168 Call reloc for fix_new type, or use correct enumerator, instead of
5169 always using NO_RELOC.
5170 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
5171 tests for valid section.
5172 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
5173 address.
5174 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
5175 symbol, compensate for location of reloc.
5176 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
5177 to return zero.
5178
4915cac0
KR
5179Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5180
5181 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
5182 (obj_elf_weak): New function.
5183 (obj_pseudo_table): Handle ".weak".
5184 (obj_elf_section): If section directive includes a string, ignore
5185 it for now. Accept "progbits" flag.
5186 (obj_elf_type): Accept `@' before flag name.
5187
5188 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
5189 condition.
5190 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
5191 than checking for bfd_com_section directly.
5192 (fixup_segment): Simplify range check.
5193 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
5194 test.
5195
5196 * symbols.h (S_SET_WEAK): Declare.
5197 * symbols.c (S_SET_WEAK): New function.
5198 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
5199 it's not a separate flag any more. Clear BSF_WEAK.
5200
5201 * read.c (potable): Treat "string" like "asciz".
5202
19ed8960
ILT
5203Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5204
5205 * config/tc-mips.c (append_insn): Don't swap branch instructions
5206 if .set nobopt or .set volatile.
5207 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
5208 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
5209 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
5210 * config/obj-ecoff.c: Renamed some variables to avoid shadow
5211 warnings.
5212
ae8c28f8
DZ
5213Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5214
19ed8960
ILT
5215 * config/obj-coff.h (S_IS_COMMON): add missing backslash
5216
ae8c28f8
DZ
5217 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
5218
0aa07269
ILT
5219Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5220
5221 * config/tc-mips.c (mips_ip): Suggested by
5222 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
5223 names for 'E' and 'G' argument types (coprocessor registers) and
5224 don't warn if $1 is used on the coprocessor.
ae8c28f8 5225 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
5226
5227Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
5228
5229 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
5230 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
5231 BFD_RELOC_16.
5232 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
5233
6a9cf6fa
KR
5234Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5235
5236 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
5237 defined or BFD is not.
5238 (relax_and_size_all_segments): Declare local variable fragP.
5239
b114e492
KR
5240Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5241
5242 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
5243 bytes with real values, not zeros.
5244
ac32a7e7
ILT
5245Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5246
3d2330f8
ILT
5247 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
5248 targets, using ecoff and mips-big.
5249
ac32a7e7
ILT
5250 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
5251 Johnson): Added case for 'C' for coprocessor instruction codes.
5252
273aa947
KR
5253Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5254
fd4b7c25
KR
5255 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): Fill in
5256 bytes with real values, not zeros.
5257 (md_pseudo_table): Call cons for .uaxword.
5258
b114e492
KR
5259 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
5260
273aa947
KR
5261 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
5262
b114e492
KR
5263 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
5264 for verifying symbol chain.
5265 (merge_data_into_text, relax_and_size_all_segments): New
5266 functions, split out from write_object_file.
5267
273aa947
KR
5268Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5269
5270 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
5271 debug section is new, allocate an extra 12 bytes at its start. If
5272 ".stabs" type is N_SO, fill in filename symbol field of that first
5273 entry. Return early if "goof", to simplify later code slightly.
5274 (adjust_stab_sections): New function.
5275 (elf_frob_file): Apply adjust_stab_sections to each section.
5276
5277 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
5278 static.
5279 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
5280 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
5281 and "popsection", and call cons for "uaword" and "uahalf".
5282
5283 * config/obj-elf.c (obj_elf_version): Use English in error
5284 messages.
5285
4573d186
ILT
5286Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
5287
5288 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
5289 swapping routines and external structure sizes via the
5290 ecoff_backend information. No longer includes coff/mips.h.
5291
b4703fa6
ILT
5292Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5293
4c7ff23d
ILT
5294 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
5295 and in hash_ptr->string.
5296
b4703fa6
ILT
5297 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
5298 file name is not seen.
5299
fd4b7c25
KR
5300Mon Aug 2 11:51:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5301
5302 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): New case,
5303 parallel to BFD_RELOC_32.
5304 (tc_gen_reloc): Accept BFD_RELOC_64.
5305
ced16de6
ILT
5306Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
5307
5308 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
5309
5310 * expr.c (operand): Make return value simply depend on contents of
5311 returned expression.
5312
b4703fa6
ILT
5313Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5314
5315 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
5316
0ccc65ec
DZ
5317Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5318
5319 * config/ho-sunos.h: remove some old function decls that conflict
5320 w/ ANSI, and which weren't needed anyway
5321
5322Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5323
5324 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
5325 and disabled since it breaks Ian's new symbol-value code.
5326
5327 * expr.c (integer_constant): Accept more digits if BFD64.
5328
7fe17970
ILT
5329Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5330
5331 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
5332 expect a bignum, turn it into a bignum. Output extra zeroes
5333 before a short bignum, rather than after.
5334
0c2734c3
KR
5335Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5336
5337 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
5338 on DEBUG_SYMS, not DEBUG.
5339 (symbol_remove): Likewise.
5340 (symbol_insert): Likewise.
5341
4fe45d22
ILT
5342Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
5343
5344 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
5345 (append_insn): If mips_optimize == 0, always insert NOP
5346 instructions. If mips_optimize < 2, don't swap branches.
5347 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 5348
de9310b9
RP
5349Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5350
5351 * Makefile.in (clean): if testsuite does not exist, then skip it.
5352
5353Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5354
5355 * config/tc-mips.c (prev_insn_unreordered,
5356 prev_prev_insn_unreordered): New static variables.
5357 (append_insn): Don't swap branch instruction if
5358 prev_prev_insn_unreordered (see comment).
5359 (mips_no_prev_insn): Clear the unreordered variables.
5360 (s_mipsset): When turning on reordering, set the unreordered
5361 variables.
5362
7767e7e9
KR
5363Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5364
5365 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
5366 are also magic, and have special default flag settings.
5367 (obj_elf_frob_symbol): Since the return value from this function
5368 isn't used, don't bother calling obj_elf_write_symbol_p, since it
5369 doesn't accomplish anything else.
5370
5371 * config/tc-sparc.c (md_section_align): Round up section size only
5372 for a.out format.
5373
5374 * symbols.c: Don't define DEBUG by default.
5375
88b457e5
ILT
5376Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
5377
2a2d3d08
ILT
5378 * write.c (fix_new_exp): Handle a O_uminus expression.
5379
e979ea04
ILT
5380 * expr.c (expr): Don't let absolute_section override
5381 undefined_section for the return value.
5382
cf897ce2
ILT
5383 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
5384 pseudo-op with a poc_handler field of NULL, ignore it and treat it
5385 as an instruction instead.
5386 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
5387 poc_handler field.
5388
88b457e5
ILT
5389 * config/tc-h8500.c (md_begin): Use a local variable when
5390 initializing md_relax_table to avoid warnings about modifying a
5391 supposedly const data structure.
5392
88e12460
BK
5393Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
5394
5395 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
5396 is defined.
5397
86a6ada2
FF
5398Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
5399
5400 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
5401 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
5402 case to set obj_format=elf. Must go before i386-*-sysv* case that
5403 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
5404 *-*-solaris case, and move to before *-sysv* case that wants to
5405 set obj_format to coff.
5406 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
5407 'exp->X_op'.
5408 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
5409 BFD_ASSEMBLER case.
5410
8ff6f40e
ILT
5411Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5412
2c5c299f
ILT
5413 * config/obj-aout.c: Include aout/aout64.h.
5414 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
5415 symbol, so that BFD doesn't tamper with the type.
5416
8ff6f40e
ILT
5417 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
5418 up opcodes as pseudo-ops even if they don't start with '.'.
5419 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
5420 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
5421 handling.
5422 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
5423 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
5424 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
5425 r_offset field of the reloc to the fixup offset.
5426 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
5427 * doc/as.texinfo: Minor updates.
5428
5ac34ac3
ILT
5429Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5430
5431 * Extensive changes to permit symbols to contain any expression
5432 type and to delay the computation of the expression until the
5433 value is actually needed. This permits setting symbols to values
5434 calculated based on object code size. Expressions were changed to
5435 no longer be in a section, to stop the overloading of segment and
5436 expression type that previously occurred.
5437
5438 * as.c (big_section, pass1_section, diff_section, absent_section):
5439 Removed.
5440 (expr_section): Added (used for dummy symbols which hold
5441 intermediate expression values).
5442 (perform_an_assembly_pass): Create expr_section, do not create the
5443 sections now removed.
5444 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
5445 SEG_DIFFERENCE. Added SEG_EXPR.
5446 (SEG_NORMAL): Corresponding changes.
5447 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
5448 * write.c (write_object_file): Ditto.
5449 * config/obj-aout.c (seg_N_TYPE): Ditto.
5450 * config/obj-bout.c (seg_N_TYPE): Ditto.
5451 * config/obj-coff.c (seg_N_TYPE): Ditto.
5452 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
5453 * config/obj-vms.c (seg_N_TYPE): Ditto.
5454
5455 * expr.h (operatorT): Moved in from expr.c, added some values.
5456 (expressionS): Added X_op field, removed X_seg field; renamed
5457 X_subtract_symbol to X_op_symbol.
5458 * expr.c: Extensive changes to assign expression types rather than
5459 sections and to simplify the parsing.
5460 * write.c (fix_new_internal): New static function.
5461 (fix_new): Removed sub_symbol argument.
5462 (fix_new_exp): New function, takes expression argument.
5463 * write.h: Prototype changes for fix_new and fix_new_exp.
5464 * cond.c (s_if): Changed accordingly.
5465 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
5466 parse_repeat_cons, get_segmented_expression,
5467 get_known_segmented_expression, get_absolute_expression): Ditto.
5468 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
5469 Ditto.
5470 * write.c (write_object_file): Ditto.
5471 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
5472 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
5473 obj_coff_endef, yank_symbols): Ditto.
5474 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
5475 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
5476 print_insn, md_operand): Ditto.
5477 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
5478 do_a_fix_imm, build_bytes): Ditto.
5479 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
5480 get_specific, check, insert, md_convert_frag): Ditto.
5481 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
5482 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
5483 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
5484 process_exit): Ditto.
5485 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
5486 is_complex): Ditto.
5487 * config/tc-i386.c (pe, md_assemble, i386_operand,
5488 md_estimate_size_before_relax, md_create_long_jump): Ditto.
5489 * config/tc-i860.c (md_assemble, getExpression, print_insn):
5490 Ditto.
5491 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
5492 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
5493 i960_handle_align): Ditto.
5494 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
5495 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
5496 md_estimate_size_before_relax, md_create_long_jump, get_num):
5497 Ditto.
5498 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
5499 md_create_short_jump, md_create_long_jump): Ditto.
5500 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
5501 macro_build, macro, my_getExpression): Ditto. Also removed
5502 get_optional_absolute_expression; just use get_absolute_expression
5503 instead.
5504 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
5505 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
5506 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
5507 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
5508 Ditto.
5509 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
5510 print_insn): Ditto.
5511 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
5512 tip_op, md_assemble): Ditto.
5513 * config/tc-vax.c (seg_of_operand, md_assemble,
5514 md_estimate_size_before_relax, md_create_long_jump): Ditto.
5515 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
5516
84873870
DZ
5517Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5518
5519 * configure.in: i386-lynx is the same as i386-coff
5520
623d6e9a
KR
5521Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
5522
5523 * config/obj-elf.c (obj_elf_previous): New function.
5524 (previous_section, previous_subsection): New vars.
5525 (obj_elf_section): Save current place in case DWARF code wants us
5526 to pop back to it. Handle unquoted section name as well as quoted
5527 section name. Don't crash on invalid strings.
5528 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
5529 "4byte".
5530
5531 * config/obj-elf.h: Don't include struc-symbol.h.
5532 (obj_elf_frob_symbol): Declare arg as struct symbol *.
5533
5534 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
5535 "L" or "_.L_".
5536
5537 * write.c (write_relocs): New function, split off from
5538 write_contents. Use memset instead of bzero.
5539 (write_object_file): Apply write_relocs to each section before
5540 applying write_contents.
5541
5542 * read.c (read_begin): Call obstack_begin with values closer to 1K
5543 multiples.
5544 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
5545 bcopy.
5546
ffffc8fb
ILT
5547Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5548
ce2ad89a
ILT
5549 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
5550 calculating opP->isiz; this permits the expression size to be
5551 determined as well, later on.
5552
ffffc8fb
ILT
5553 * expr.c (clean_up_expression): Don't cancel the subtraction of
5554 undefined symbols.
5555
5556 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
5557 switch to text section rather than data section.
5558
9d4dfbf3
KR
5559Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5560
5561 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
5562 expression (to take the pc-rel instruction itself into account)
5563 before using the expression, instead of after.
5564
04acd059
ILT
5565Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
5566
1e9cf565
ILT
5567 * read.c (float_cons): Simplified parsing logic. If
5568 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
5569
5570 * symbols.c (colon): Rather than a special case for TC_HPPA,
5571 use new macro tc_frob_label.
5572 * config/tc-hppa.h (tc_frob_label): Define.
5573
5574 * config/tc-mips.c: Many changes to support simple assembler
5575 optimization.
5576 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
5577 prev_insn_valid, prev_insn_frag, prev_insn_where,
5578 prev_insn_fixp, prev_insn_is_delay_slot): New static
5579 variables.
5580 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
5581 mips_align, s_stringer, s_mips_space): New static functions.
5582 (mips_define_label): New global function.
5583 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
5584 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
5585 or 'd'. For "space" call s_mips_space.
5586 (md_begin): Call mips_no_prev_insn.
5587 (append_insn): Only insert necessary NOP instructions.
5588 (macro): Call mips_emit_delays before setting mips_noreorder.
5589 Increment and decrement mips_noreorder rather than using
5590 save_reorder_condition. Don't bother to use noreorder in
5591 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
5592 (md_atof): Handle floating point numbers correctly for both
5593 big and little endian targets.
5594 (s_align, s_cons): Call mips_align rather than frag_align.
5595 (s_change_seg, s_cons): Call mips_emit_delays.
5596 (s_float_cons): Let float_cons do the work.
5597 (s_mipsset): Call mips_emit_delays when setting noreorder.
5598 * config/tc-mips.h (tc_frob_label): Define to be
5599 mips_define_label.
5600
04acd059
ILT
5601 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
5602 ecoff_frob_files): Consistently use S_GET_VALUE rather than
5603 bfd_asymbol_value. Warn if taking difference of symbols in
5604 different segments.
5605
c978e704
ILT
5606Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5607
5276e361
ILT
5608 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
5609 with a warning.
5610
2368ec63
ILT
5611 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
5612 by md_pcrel_from if we are relocating against a symbol (we still
5613 need md_pcrel_from for a PC relative relocation within the same
5614 file).
5615 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 5616 (omagic): Removed unused variable.
2368ec63 5617
c978e704
ILT
5618 * Preliminary support for m88k-coff.
5619 * configure.in (m88k-*-coff*): New target. Use coffbfd and
5620 m88kcoff.
5621 * config/m88kcoff.mt: New file.
5622 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
5623 (pseudo_set): Handle difference of symbols in different fragments
5624 by saving the entire expression as the value of the symbol.
5625 * symbols.c (resolve_symbol_value): Resolve difference
5626 expressions.
5627 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
5628 "sdef" as a synonym for "def".
5629 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
5630 TARGET_FORMAT.
5631 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
5632 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
5633 m88k port up to date, and to add COFF support.
5634
85051959
ILT
5635Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5636
5868b1fe
ILT
5637 * Removed sy_forward and replaced it with an undefined expression
5638 as the value of a symbol.
5639 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
5640 sy_resolved and sy_resolving single bit fields.
5641 * symbols.c (symbol_new): Don't initialize sy_forward field.
5642 (resolve_symbol_value): New function to adjust symbol value by
5643 fragment address, using recursion to resolve forward symbols.
5644 * symbols.h: Added prototype for new function.
5645 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
5646 expression rather than setting symbolP->sy_forward.
5647 * write.c (write_object_file): Use resolve_symbol_value on
5648 symbols, keeping the common case (the old behaviour) inline.
5649 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
5650 handling (subsumed by write.c change).
5651 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
5652 sy_value rather than sy_forward.
5653 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
5654 expression segment rather than sy_forward.
5655 (yank_symbols): Use resolve_symbol_value.
5656 (crawl_symbols): Removed extra pass over symbols.
5657 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
5658 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
5659 symbols which handled sy_forward; use resolve_symbol_value
5660 instead.
5661 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
5662 Define.
5663 * config/obj-elf.c (obj_elf_stab_generic): Check expression
5664 segment rather than sy_forward.
5665 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
5666 sy_forward; do initialize sy_resolved and sy_resolving.
5667 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
5668
85051959
ILT
5669 * Changes to keep a full expression as the value of a symbol, not
5670 just a longword:
5671 * struc-symbol.h: New field sy_value.
5672 * as.h: Include expr.h before struc-symbol.h.
5673 * expr.h: Use struct symbol rather than symbolS.
5674 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
5675 of sy_value field; compile unconditionally, not just if
5676 BFD_ASSEMBLER.
5677 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
5678 * write.c (write_object_file): Set BFD symbol value to gas symbol
5679 value.
5680 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
5681 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
5682 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
5683 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
5684 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
5685 S_GET_VALUE rather than ost_entry.n_value.
5686 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
5687 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
5688 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
5689 using S_GET_VALUE--don't assume it is already set.
5690 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
5691 symbol value.
5692 * config/obj-vms.c (various): Don't assign directly to
5693 S_GET_VALUE; use S_SET_VALUE instead.
5694
b50401c9
DE
5695Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
5696
fd4b7c25
KR
5697 * configure.in: Make sparc64-*-aout* use bfd gas.
5698
b50401c9
DE
5699 * configure.in: Recognize h8300h.
5700
489a93f3
SC
5701Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
5702
5703 * config/tc-h8500.c (line_comment_chars): Add hash.
5704 (parse_exp, skip_colonthing, build_bytes): Add support for
5705 R_H8500_HIGH16 relocation type.
5706
5d4ef296
KR
5707Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
5708
5709 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
5710 attribute name. Handle `execinstr' attribute.
5711
99c24539
ILT
5712Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
5713
5714 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
5715 there is another alternative for the instruction.
5716
ec1c752b
RP
5717Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
5718
5719 * doc/as.texinfo: updates for H8/300H
5720
d358969d
ME
5721Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
5722
5723 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
5724 md_number_to_chars, md_section_align): Adjusted to use valueT,
5725 addressT, to match tc.h.
5726
ff4cac38
KR
5727Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5728
5729 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 5730 independent of format.
ff4cac38 5731
42206996
DE
5732Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
5733
5734 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
5735
e9baeb46
DZ
5736Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
5737
5738 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
5739 build; also recognize h8300-*-coff
5740
76c64db0
ILT
5741Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
5742
e154ecf4
ILT
5743 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
5744 core just because somebody uses a label before it is defined.
5745
76c64db0
ILT
5746 * config/mips-opcode.h: Moved to opcode/mips.h.
5747 * config/tc-mips.c: Include opcode/mips.h rather than
5748 mips-opcode.h.
5749 (append_insn): An extra NOP is only needed after instructions
5750 which set HI or LO, not after instructions which read it.
5751 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
5752 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
5753 * config/tc-mips.h (struct mips_opcode): Don't define.
5754 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
5755 Set to $(srcdir)/../include/opcode/mips.h.
5756
5757 Get the MIPS assembler up to speed with other gas changes:
5758
5759 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
5760 Removed; don't change the symbol value.
5761 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
5762 bfd_asymbol_value rather than S_GET_VALUE to include section
5763 vma in symbol value.
5764 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
5765 doesn't output them. Set the vma of sections.
5766 * config/obj-ecoff.h: Don't define obj_frob_symbol.
5767 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
5768 longer necessary.
5769 (various): use valueT rather than long.
5770
e28e0b95
KR
5771Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5772
fd4b7c25
KR
5773 * config/tc-sparc.h (ENV64): Define for v9.
5774
5775 * config/tc-sparc.c (s_xword): For numbers, call big_cons.
5776 (sparc_ip, md_apply_fix, tc_gen_reloc): Handle some sparc64
5777 relocation types.
5778 (md_number_to_chars): Handle 8-byte value.
5779
5780 * config/obj-elf.h (elf_symbol): For v9, use 64-bit symbol type.
5781
e28e0b95
KR
5782 * as.h (valueT): Typedef moved here.
5783 * struc-symbol.h (valueT): ...from here.
5784 * write.c (write_object_file): Locals from_addr, to_addr,
5785 table_addr are now addressT. Supply prototype for bfd_alloc for
5786 now.
5787 (fixup_segment): Local add_number is now valueT. Correct some
5788 range-checking bugs.
5789 (relax_align): Type `int' should be sufficient for the exponent.
5790 (fix_new): Argument offset is type offsetT. Locals size and
5791 newsize are type valueT.
5792 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
5793 type valueT.
5794 (fix_new): Fix prototype.
5795 * symbols.c (symbol_new): Symbol value is type valueT.
5796 (S_SET_VALUE, S_GET_VALUE): Likewise.
5797 (S_IS_*): Specify int return type explicitly.
5798 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
5799 prototypes.
5800 * read.c (s_comm): Values read are type valueT.
5801 * expr.h (expressionS): Field X_add_number is an offsetT.
5802 * tc.h (md_create_long_jump, md_create_short_jump,
5803 md_section_align): Addresses are now type addressT.
5804 (md_number_to_chars, md_apply_fix): Pass value as valueT.
5805 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
5806 md_number_to_chars, md_section_align): Adjusted.
5807 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
5808 gcc shut up.
5809 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
5810 md_section_align): Adjusted.
5811
5812 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
5813 format.
5814 (s_common): Handle Solaris-2 version.
5815
5816 * config/ho-generic.h (free): Returns void if __STDC__.
5817
5818 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
5819 elf_file_symbol): Declare.
5820
5821 * expr.c (floating_constant, integer_constant): Now return void.
5822
5823Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
5824
5825 * configure.in: Match on sparc*-fujitsu-none rather than
5826 sparclite*-fujitsu-none.
5827
267389df
ILT
5828Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
5829
5830 * read.c (cons): Conditionalize parsing of expression. Move
5831 putting value into object file into separate function. Separate
5832 out MRI and WANT_BITFIELDS cases into separate functions.
5833 (emit_expr): New function to write data into object file.
5834 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
5835 processor types.
5836 (parse_bitfield_cons): New function to parse bitfield expressions
5837 as used by i960 assemblers. Only compiled if
5838 BITFIELD_CONS_EXPRESSIONS is defined.
5839 (parse_mri_cons): New function to parse MRI style strings. Only
5840 compiled if MRI is defined.
5841 (parse_repeat_cons): New function to parse repeat counts. Only
5842 compiled if REPEAT_CONS_EXPRESSIONS is defined.
5843 * read.h (emit_expr): Added declaration of new function.
5844 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
5845 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
5846 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
5847 parse a HPPA expression, rather than special case in cons
5848 function.
5849 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
5850 than special case in emit_expr function.
5851 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
5852 Define to use new functions from tc-hppa.c.
5853 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
5854 (WANT_BITFIELDS): Removed; now obsolete.
5855 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
5856 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
5857 NS32K fixup, rather than special case in emit_expr function.
5858 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
5859 cons_fix_new_ns32k. Also use PARAMS rather than checking
5860 __STDC__.
5861 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
5862
5863 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
5864 Don't core dump if gas has no information about a section.
5865
5866Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5867
fd4b7c25
KR
5868 * config/tc-sparc.c (md_begin): If sparcv9 is defined, reset
5869 current_architecture to v9 automatically.
5870
5871 * config/tc-sparc.h (TARGET_FORMAT): Use elf64-sparc for v9.
5872
5873 * config/tc-sparc64.h, config/tc-sparc64.c: New files.
5874 * configure.in: Use sparc64 cpu files for v9, and default to elf
5875 format.
5876
267389df
ILT
5877 * write.c (relax_and_size_seg): Always fully process a section.
5878 Section size is last frag's (vm)address plus its size. If no
5879 relocations are present, force SEC_RELOC flag clear.
5880 (dump_section_relocs): New debugging routine.
5881 (adjust_reloc_syms): New routine, broken out from write_contents.
5882 Don't adjust relocs that are already relative to section symbol.
5883 Look for obj_fix_adjustable macro to know what else to skip,
5884 instead of obj_write_symbol. Look for section symbol stored in
5885 section information.
5886 (write_object_file): Map adjust_reloc_syms over all sections.
5887 (write_contents): Clear SEC_RELOC flag if no relocations are
5888 found.
5889
5890 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
5891 keep it quiet.
5892
5893 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
5894
e28e0b95
KR
5895Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5896
5897 * Makefile.in (all, dvi, info, install-info, clean-info): do not
5898 echo recursion lines.
5899 (install-info, clean-info): collapse into the dvi and info rule.
5900
fd4b7c25
KR
5901Fri Jun 25 10:47:24 1993 Doug Evans (dje@canuck.cygnus.com)
5902
5903 * config/tc-sparc.c (sparc_ip): Remove support for %d/%q fp regs.
5904 All fp regs are now specified as %f.
5905 (priv_reg_table): fpq -> fq.
5906
267389df
ILT
5907Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
5908
5909 * as.h (strstr): Disable declaration for now.
5910 (fprint_value, sprint_value): Declare.
5911
5912 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
5913 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
5914
5915 * expr.c (expr_part): Made sanity checks a.out-specific.
5916 (expr): Disabled sanity checks.
5917
5918 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
5919 section symbol.
5920 * subsegs.c (subseg_change): Initialize section symbol pointer
5921 when setting up a new section.
5922
5923 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
5924 field back at gas symbol structure.
5925
5926 * symbols.c (colon): Cast obstack_next_free value to char* before
5927 doing arithmetic on it.
5928 * subsegs.c (subseg_new_rest): Likewise.
5929 * as.h (frag_now_fix): Likewise.
5930
5931 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
5932 calling bfd_make_section_old_way directly, and call subseg_set
5933 instead of subseg_change. Now returns void.
5934 (obj_elf_write_symbol): Only check local symbols for now.
5935 (elf_stab_symbol): Now static and void, and disabled until it
5936 works completely.
5937 (obj_elf_size): For expression values, fail silently for now.
5938 (obj_symbol_new_hook): Do nothing.
5939
5940 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
5941 relocation.
5942 (s_local) [OBJ_ELF]: New function.
5943 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
5944 (s_common): Rearrange to handle Solaris .common pseudo, which may
5945 sometimes use bss space instead of common.
5946 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
5947
a8285504
DZ
5948Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5949
5950 * configure.in: set host config to hpux for hppa*-hp-hpux
5951
267389df
ILT
5952Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
5953
5954 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
5955
5956Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
5957
5958 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
5959 * config/obj-aout.c (s_sect): Do it here.
5960
5961 * as.h (BAD_CASE): Don't make some lame compilers think we want
5962 substitution inside strings.
5963
5964 * as.c (print_version_id): New function, split off from main.
5965 (main): Call it.
5966 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
5967 for -V. Ignore -Q and -s options for now.
5968
a8285504
DZ
5969Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
5970
5971 * Makefile.in: make installation & builds work again for crosses
5972
267389df
ILT
5973Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
5974
5975 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
5976 symbol values correctly.
5977
5978 * write.c (write_object_file): Deleted unused variables.
5979 (fixup_segment): Use sprint_value.
5980
5981 * messages.c (sprint_value, fprint_value): New routines.
5982
5983 * config/obj-elf.c (elf_stab_symbol): Now returns void.
5984 (obj_elf_stab_generic): Fix typo in logic.
5985
5986 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
5987
5988 * as.h (addressT, offsetT): New types, using BFD types if
5989 available.
5990 (relax_addressT, struct frag): Use them.
5991 * struc-symbol.h (valueT, struct broken_word): Likewise.
5992
5993 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
5994 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
5995
9126738c 5996Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 5997
9126738c
DZ
5998 * Makefile.in: canonicalize install.sh; for use within
5999 this directory (and subdirs)
6000
267389df
ILT
6001Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
6002
6003 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
6004 specified, should have both S1 and S2 fields identical
6005 If only finding the problem was as fast as fixing the bug !!!!
6006
6007Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6008
6009 * write.c (write_contents): Do write out non-loadable sections.
6010 Debug sections can fall in this category.
115147fb 6011
267389df
ILT
6012 * read.c (s_app_file): Call elf_file_symbol for ELF files.
6013 * config/obj-elf.c (elf_file_symbol): New function.
6014
6015 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
6016 added argument to specify section base name.
6017 (obj_elf_stab_generic): Renamed from ..._stab. New argument
6018 specifies section base name.
6019 (obj_elf_stab): New function, calls obj_elf_stab_generic with
6020 ".stab" as section base name.
6021 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
6022 (obj_elf_type): Handle "object". Use bitwise-or to merge in
6023 symbol flags rather than simply replacing, so global/local flags
6024 are preserved.
6025 (obj_elf_ident): Rewrite.
115147fb 6026
a00ee522
DZ
6027Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6028
6029 * Makefile.in: remove parentdir support; use INSTALL_XFORM
6030
6031Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
6032
6033 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
6034 for any a.out target, not just Linux and 386BSD.
6035 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
6036 target.
6037
267389df
ILT
6038Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6039
6040 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
6041 don't exist or duplicate other inclusions.
6042
6043 * config/tc-vax.h (NO_RELOC): Define.
6044
fd4b7c25
KR
6045Mon Jun 7 09:55:03 1993 Doug Evans (dje@canuck.cygnus.com)
6046
6047 * config/tc-sparc.c (sparc_ip): Fix parsing of asi number.
6048 Fix error message.
6049
267389df
ILT
6050Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
6051
6052 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
6053 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
6054 char to reg_prefix instead of to 'r'.
6055 (calcop): Change calls to get_reg.
6056 (calcop): Handle new case 'x' to set reg_prefix.
6057 (calcop): Set reg_prefix to 'r' after each call to get_reg.
6058 (cmpslot): Add 88110 conditions.
6059
6060 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
6061
6062 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
6063 before returning.
6064
6065 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
6066 adjacent; mov.s and mov.d swapped.
6067 (m88k_opcodes): Fix typo `r2' -> `2'.
6068
a00ee522
DZ
6069Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
6070
6071 * config/h8300.c: Support for H8/300-H opcodes.
6072
6073 * config/obj-coffbfd.c (w_strings): String table length is 4
6074 bytes, no matter what the host int size is.
6075
6076 * configure.in (alpha-*-osf*): New.
6077
68ad4c92
ILT
6078Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
6079
47fcc4f5
ILT
6080 * configure.in (mips-*-ecoffl*): New target; use ecoff and
6081 mips-lit.
6082 (mips-*-ecoff*): Added trailing '*'.
6083
68ad4c92
ILT
6084 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
6085 first FDR in a file to be zero.
6086
75776695
KR
6087Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6088
b7067d7f
KR
6089 * Makefile.in (VERSION): Jump to 2.1.4.
6090
75776695
KR
6091 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
6092
6093 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
6094 ECOFF format.
6095
6096Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6097
6098 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
6099 separate '851 mmu.
6100
6101 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
6102 and routine names. Assuming 32 bits for now.
6103
6104 * config/obj-elf.c (elf_frob_file): Look for macro
6105 elf_tc_final_processing_hook, instead of assuming a function
6106 always exists.
6107 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
6108 tc_final_processing_hook.
6109 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
6110
6111 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
6112 moved here from obj-elf.h.
6113 * config/obj-elf.h: Don't include CPU-specific header files.
6114
6115Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
6116
6117 * configure.in: configurations should match on 'hppa*' not 'hppa'.
6118
6119 * read.c: Add support for HPPA assembly language syntax (denoted
6120 with '#ifdef TC_HPPA').
6121
6122 * symbols.c: Add support for HPPA assembly language syntax (denoted
6123 with '#ifdef TC_HPPA').
6124
6125 * write.c (write_contents): Add support for HPPA-style
6126 relocations.
6127
6128 * config/obj-elf.c: Stab symbols weren't written properly.
6129 (obj_elf_version):
6130 (obj_elf_desc):
6131 (obj_elf_write_symbol):
6132 (obj_elf_write_symbol_p):
6133 (obj_elf_frob_symbol):
6134 (elf_stab_symbol):
6135 (elf_frob_file):
6136
6137 * config/tc-hppa.c: Support for HPPA symbol extension sections.
6138 Remove some unused code. Support for HPPA assembly language
6139 syntax.
6140
6141 * app.c:
6142
6143 * symbols.c:
6144
6145 * config/obj-elf.h:
6146 (obj_write_symbol):
6147 (obj_frob_file):
6148 (elf_tc_symbol):
6149 (elf_tc_make_sections):
6150
6151 * config/tc-hppa.h:
6152
6153Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6154
6155 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
6156 hash_new will have succeeded if it returns.
6157 * config/tc-a29k.c (md_begin): Likewise.
6158
6159 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
6160 const.
6161 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
6162 gcc.
6163 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
6164
6165 * expr.c: Delete register declarations; gcc ignores them anyways.
6166
6167Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6168
6169 * hash.c (hash_new): Use xmalloc, since many callers don't check
6170 for failure.
6171
49864cfa
KR
6172Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6173
6174 * frags.c (zero_address_frag, bss_address_frag): These are
6175 external.
6176
6177 * tc.h (md_reloc_size): This is const.
6178 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
6179 (md_reloc_size): Now const.
6180
6181 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
6182 trailing commas.
6183 * as.h (enum _segT): Ditto.
6184
6185 * struc-symbol.h (N_TYPE_seg): This should be const.
6186
6187Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
6188
6189 * config/obj-ecoff.c (add_file): Cast file_name to char * in
6190 listing_source_file call.
6191
6192 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
6193 of subseg_new call to eliminate const attribute.
6194 (obj_elf_stab): Ditto.
6195 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
6196
6197 * read.c (s_align_bytes): Properly record alignment.
6198
6199 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
6200 for the prototype/no prototype macro.
6201
6202 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
6203 void.
6204
6205 * as.h (relax_stateT enum): Delete trailing comma.
6206
9a7d824a
ILT
6207Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
6208
6209 * app.c (do_scrub_begin): Let line_comment_chars override
6210 comment_chars.
6211 (do_scrub_next_char): If a line comment character is not at the
6212 start of a line, treat it as a comment character if it is one.
6213 For a CPP line comment use pseudo-op .appline rather than .line.
6214 * input-scrub.c (logical_input_line): Make int rather than
6215 unsigned.
6216 (input_scrub_push, input_scrub_begin): Initialize
6217 logical_input_line to -1 rather than 0.
6218 (bump_line_counters): Increment logical_input_line.
6219 (new_logical_line): If line_number is -2, decrement
6220 logical_input_line.
6221 (as_where): Use logical_input_line even if it is 0.
6222 * read.h (s_app_file prototype): Now takes an int argument.
6223 * read.c (potable): Make .appfile call s_app_file with 1. New
6224 .appline pseudo-op calls s_app_line.
6225 (s_app_file): If .appfile, call new_logical_line with -2 to
6226 account for newline inserted by do_scrub_next_char. If listing,
6227 call listing_source_file.
6228 (s_app_line): New function to handle fake pseudo-op .appline.
6229 * config/obj-coff.c (obj_pseudo_table): Make .appline call
6230 obj_coff_ln.
6231 (obj_coff_ln): Added argument to indicate whether .appline.
6232 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
6233 obj_coff_ln.
6234 (obj_coff_ln): Added argument to indicate whether .appline.
6235 * config/tc-mips.c (s_file): Pass argument to s_app_file.
6236
61f14fb0
ILT
6237Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
6238
6239 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
6240
6241Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6242
6243 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
6244 invalid values.
6245
6eef4543
SC
6246Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
6247
6248 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
6249 relocations correctly.
6250
f8f61478
KR
6251Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6252
6eef4543
SC
6253 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
6254 it's wrong.
6255
f8f61478
KR
6256 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
6257 if value is out of range.
6258
6259 Patch from Minh Tran-Le:
6260 * config/tc-i386.c (i386_operand): For in/out port register used
6261 as base reg, include InOutPortReg in operand type.
6262 (MATCH): Accept overlap value of InOutPortReg.
6263
6264Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
6265
6266 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
6267 Add calls to listing routines to produce combined source/assembler
6268 listings.
6269 (obj_ecoff_stab): Create a file pointer if none used yet.
6270 (ecoff_frob_file): Set symcount to correct value.
6271
6272Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6273
6274 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
6275 release.
6276
6277 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
6278 Define in terms of constants, not C structure sizes.
6279
6280 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
6281
6282Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6283
6284 * config/obj-aout.c (obj_header_append): Don't define if it's
6285 defined as a macro.
6286 * config/obj-hp300.h (obj_header_append): Define it as a macro.
6287 * config/obj-hp300.c (hp300_header_append): New function.
6288
6289 * Makefile.in (distclean): Don't bother cleaning up doc files;
6290 they aren't going to be in this directory.
6291
204ff785
ILT
6292Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
6293
f8f61478
KR
6294 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
6295 symbols.
6296
204ff785
ILT
6297 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
6298 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
6299
65824763
KR
6300Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6301
204ff785
ILT
6302 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
6303 initialization.
6304
65824763
KR
6305 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
6306
21bb48b9
ILT
6307Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
6308
6309 * config/tc-mips.c (macro): Correct floating point double word
6310 loads and stores for big endian target.
6311
e7c2f943
KR
6312Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6313
6314 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
6315 calls. Deleted some unused code.
6316 * config/obj-coff.c: Likewise.
6317
6318 ELF support, mostly contributed by Utah:
6319 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
6320 obj_elf_type): Rewrite.
6321 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
6322 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
6323 New functions.
6324 (obj_elf_ident): Dummy.
6325 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
6326 TARGET_SYMBOL_FIELDS): New macros.
6327 (gdb_section): New variable decl.
6328
6329 * config/tc-i386.c (md_atof): Return zero, not empty string, on
6330 success.
6331
6332 BFD_ASSEMBLER conditional changes:
6333 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
6334 Don't define these.
6335 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
6336 (fetch_coff_debug_section): Ditto.
6337 (obj_coff_endef): Call fetch_coff_debug_section.
6338 (struct line_no): New type.
6339 (c_symbol_merge): New way for copying aux fields.
6340 (c_dot_file_symbol): Put symbol in absolute section, and set flag
6341 BSF_DEBUGGING.
6342 (function_lineoff): New symbol.
6343 (function_lineoff, text_lineno_number, our_lineno_number,
6344 lineno_lastP): Don't define.
6345 (c_line_new): Don't define.
6346 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
6347 placeholders, until
6348 line-number recording gets implemented.
6349 (obj_new_symbol_hook): New code for handling aux fields.
6350 (add_lineno, add_linesym): New functions.
6351 (obj_coff_ln): Call add_lineno, not c_line_new.
6352 (obj_coff_endef): New code for handling symbol names. New lineno
6353 code. Look for section name "*DEBUG*" for debugging section.
6354 (align, coff_check_file_symbols, obj_coff_section,
6355 coff_frob_file): New functions.
6356 * config/obj-coff.h: Reordered some includes.
6357 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
6358 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
6359 define these.
6360 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
6361 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
6362 aux entries. Most SA_* macros now use it unconditionally.
6363 (S_*): Use `bsym' field, and access BFD private data.
6364 (SF_*): Use `sy_flags' symbol field for most of these.
6365 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
6366 define.
6367 (*_section_header): Don't define.
6368 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
6369 interface.
6370 (tc_gen_reloc) [I386COFF]: New function.
6371 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
6372 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
6373 macros.
6374
6375 * config/obj-coff.c (stack_init): Don't do assignments inside
6376 conditions.
6377 (obj_coff_def): Simplified handling of symbol name a bit.
6378 (tag_insert): Name argument is now pointer to CONST.
6379 (obj_crawl_symbol_chain): Commented out.
6380
6381 * config/obj-coff.h: Use PARAMS macro in prototypes.
6382
6383 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
6384 through frchainP pointer if it is null.
6385
6386 * configure.in: Warn if BFD mode is explicitly turned off but is
6387 required by specified target.
6388 (mips ecoff targets): Don't need to set bfd_gas here; it gets
6389 taken care of later.
6390
6391 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
6392 field.
6393 (yank_symbols): Merge symbols only if sy_forward is null.
6394
6395 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
6396 defined.
6397
6398 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
6399 pointer.
6400 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
6401
6402 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
6403 with "." is a local label.
6404
6405 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
6406 files.
6407
6408 * config/te-linux.h, config/te-386bsd.h: New config files.
6409 * configure.in (i386-*-linux, i386-*-bsd): Use them.
6410 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
6411 environment.
6412 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
6413
5d6cfa60
ILT
6414Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
6415
6416 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
6417 to want it that way.
6418 (ecoff_build_symbols): Turn local st_Proc symbols into
6419 st_StaticProc symbols. Set index field of external st_Proc and
6420 st_staticProc symbols correctly.
6421 * config/tc-mips.h (NO_LISTING): Don't define. People might want
6422 listings.
6423
e7c2f943
KR
6424Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6425
6426 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
6427 files.
6428 * configure.in (m68k-*-hpux): Use them.
6429
6430 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
6431 defined, otherwise zero.
6432
6433 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
6434
5d6cfa60
ILT
6435Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6436
6437 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
6438 address space number.
6439
6440Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6441
6442 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
6443
6444 * config/tc-a29k.c: Include ctype.h.
6445 (define_some_regs): Added special-purpose registers for 29050.
6446
e7c2f943
KR
6447 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
6448
6449 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
6450 (change_to_section): Set it here instead.
6451
a1387260
ILT
6452Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
6453
6454 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
6455 hasn't been seen yet.
6456 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
6457
4a1bbbe7
SC
6458Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6459
6460 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
6461 SH.
6462
be2f6bd6
ILT
6463Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
6464
6465 * expr.c (operand): Fix unary plus operator (previously was the
6466 same as '~' operator!).
6467
6468Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6469
6470 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
6471 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
6472 obj_check_file_symbols if defined. Call verify_symbol_chain_2
6473 instead of open-coding it. Fix some bugs in patching up symbol
6474 chain.
6475 (relax_segment): Make some code we "ought to be able to" use for
6476 all targets no longer conditionalized on ns32k target; instead, do
6477 it always, and if the appropriate conditions fail, abort.
6478
6479 * symbols.c (DEBUG): Enabled.
6480 (symbol_new): Make sure bfd_make_empty_symbol works.
6481 (verify_symbol_chain_2): New funcion; takes one symbol as
6482 argument, anywhere in the chain.
6483 (dollar_label*): Use default initializers.
6484
6485 * as.c (perform_an_assembly_pass): Call md_begin here...
6486 (main): ...and not here.
6487
6488 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
6489 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
6490
6491 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
6492 (add_fix, add_frag): Now functions instead of macros.
6493 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
6494 s_data1, s_data2, s_bss): Use new *_section names, for
6495 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
6496 to handle non-integral segT.
6497 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
6498 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
6499 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
6500 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
6501 md_apply_fix_2; new md_apply_fix definition varies interface
6502 depending on BFD_ASSEMBLER.
6503 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
6504 names.
6505
6506 * config/obj-vms.c: Include config.h.
6507 (version_string): Delete declaration.
6508 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
6509 (vms_resolve_symbol_redef): New function, taken from VMS code in
6510 symbols.c.
6511 (_doprnt): Deleted.
6512 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
6513 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
6514 VMS_Psect_Spec): Fixed to compiler under traditional C.
6515 * config/obj-vms.h: Use PARAMS macro.
6516 (vms_resolve_symbol_redef): Declare.
6517 (RESOLVE_SYMBOL_REDEFINITION): New macro.
6518 * symbols.c (colon): Remove some VMS-specific code, look for
6519 RESOLVE_SYMBOL_REDEFINITION macro instead.
6520
6521 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
6522 instructions.
6523
6524 * config/tc-i386.c: Reordered some functions so inlining might
6525 work. Use PARAMS in function declarations.
6526 (reloc): New routine.
6527 (md_assemble): Rearrange switch statements to work with
6528 non-integral segT.
6529
6530 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
6531 SYMBOLS_NEED_BACKPOINTERS before defining it.
6532
6533 * subsegs.c (subseg_new_rest): Now static.
6534
6535 * read.c (pseudo_set): Better error message for difference of
6536 symbols in different frags.
6537
6538 * Makefile.in (check): Pass down some new variables, indicating
6539 pathname or program name for cc, nm, objdump.
6540
6541 * as.h (OUTPUT_FLAVOR): New macro.
6542 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
6543
6544 * configure.in: Initialize bfd_gas properly. Warn that ELF
6545 support is incomplete.
6546
6547Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6548
6549 * read.c (float_cons): Accept null pointer return from md_atof.
6550 * config/tc-m68k.c (md_atof): Return null for success.
6551 * config/tc-sparc.c (md_atof): Ditto.
6552
97a6070c
RP
6553Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6554
6555 * doc/as.texinfo: formatting and comment cleanups; show SPARC
6556 alternative options in same style as other machines; simplify some
6557 conditional use; include GPL as separate file (from texinfo dir)
6558
6559 * doc/Makefile.in: (as.info) include directory containing GPL in
6560 makeinfo search path
6561
6562 * doc/h8.texi: new file; conditional settings for GAS manual
6563 on Hitachi chips
6564
6565Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6566
6567 * doc/as.texinfo: mention SPARC architecture options.
6568
be2f6bd6
ILT
6569Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
6570
6571 * configure.in: Rearranged whitespace in per-host/per-target
6572 sections. Added hooks for dropping in HPPA support (not included
6573 yet). Separate out overrides of variables based on target format
6574 and bfd-gas selection from actual target-specific commands. Add
6575 error message for recognized but unsupported format name.
6576
349f20de
ILT
6577Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
6578
6579 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 6580 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
6581 want that.
6582
5316696f
DZ
6583Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6584
6585 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
6586 $(srcdir)/as.texinfo explicitly in several places
6587
8ac18b21
RP
6588Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6589
132239bf 6590 * doc/Makefile.in: update dvi, clean targets for new source
8ac18b21
RP
6591 file structure
6592
d565311f
ILT
6593Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
6594
6595 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
6596 rather than undefining know.
8ac18b21 6597 * configure.in: Match ultrix*, not just ultrix.
d565311f 6598
0742a6fd
RP
6599Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
6600
6601 * doc/as.texinfo: converted conditional markup to use new
6602 Texinfo facilities, avoiding m4.
6603
6604 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
6605
6606 * doc/Makefile.in: recast doc configuration to use a link to an
6607 included texinfo file.
6608
6609 * doc/all.texi: settings for generic form of documentation.
6610
6611Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
6612
6613 * read.c (cons): Zero out frag when creating reloc.
6614
367fc835
ILT
6615Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
6616
84e4920f
ILT
6617 * config/tc-mips.c (gp_reference): Certain magic symbols can never
6618 be referenced off the GP register.
6619
367fc835
ILT
6620 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
6621 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
6622 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
6623
6624 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
6625 definition from other MIPS targets.
6626 * configure.in (mips-*-irix): Use emulation irix.
6627
dd4227d3
SC
6628Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6629
6630 * config/tc-h8500.c: Get relax size of branch instructions right,
6631 (get_operand): Parse @sp+ correctly.
6632
be2f6bd6
ILT
6633Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6634
6635 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
6636 COFF section header field.
6637
6638 * configure.in: Print error message if host or target is not
6639 supported.
6640
6641 * configure.in: If with-bfd-assembler, use obj-coff instead of
6642 obj-coffbfd.
6643
6644 * config/ho-generic.h: Include string.h.
6645
ed364bb6
ILT
6646Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
6647
0433135d
ILT
6648 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
6649 '$' as local, for any object file format.
6650
477b4b04
ILT
6651 * config/tc-mips.c (macro): Optimizations to branching code and a
6652 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
6653 Campbell).
6654
ed364bb6
ILT
6655 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
6656 * configure.in (mips-sgi-irix*): Set gas_host to irix.
6657
670a50eb
ILT
6658Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
6659
6660 * subsegs.c (subseg_new): Set output_section of new section.
6661 * as.c (perform_an_assemly_pass): Don't set output_section here.
6662 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
6663 since it has additional sections.
6664 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
6665 not bss_section.
6666 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
6667 ecoff_undefined field.
6668 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
6669 ecoff_undefined field.
6670 (add_file): If using stabs, just output a stabs symbol rather than
6671 creating a new fdr.
6672 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
6673 it with get_absolute_expression, rather than skipping it by hand.
6674 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
6675 than ECOFF line number information.
6676 (obj_ecoff_stab): Accept non-zero values for stabs line number.
6677 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
6678 to small, undefined and/or readonly sections if appropriate.
6679 Don't output symbol names containing \001 characters.
6680 (ecoff_frob_file): Make sure at least one fdr is output.
6681 * config/tc-mips.h: Define TC_MIPS.
6682 * config/tc-mips.c (g_switch_value): New static variable.
6683 (md_assemble): Set gp size of output BFD.
6684 (gp_reference): New function; returns 1 if expression can be
6685 accesssed via gp. Always returns 0 if not using ECOFF.
6686 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
6687 possible.
6688 (macro): Generate sequences using gp if possible.
6689 (md_parse_option): Ignore -EL and -EB. Parse -G.
6690 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
6691 (s_change_sec): Handle .rdata and .sdata for ECOFF.
6692 (s_extern): Mark symbol as external. Set ecoff_undefined field.
6693
2b1b5697
KR
6694Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6695
670a50eb
ILT
6696 * output-file.c (output_file_create): Don't call as_perror for
6697 filename rejected by application.
6698
6699 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
6700 the output file.
6701
4b061a2a
KR
6702 * doc/as.texinfo: Don't use @value in node names for the moment;
6703 references don't appear to work right.
6704
4478def8
KR
6705 * as.h (const, volatile): Put these definitions back, and use
6706 them.
6707
2b1b5697
KR
6708 * doc/as.texinfo: First pass at using new texinfo features --
6709 variables, conditional tests. Far from complete.
6710
6711Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6712
6713 * read.c: Temporary hack to handle some 64-bit constants. This
6714 should be redone later.
6715 (target_big_endian): Declare.
6716 (big_cons): If it's set, reverse order of bytes being copied.
6717 * config/tc-sparc.c (md_begin): Set target_big_endian.
6718
6719 * read.c (s_ignore): Delete declaration of is_end_of_line.
6720
6721 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
6722 forward pointers properly.
6723
e02eaa59
SC
6724Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6725
6726 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
6727 wasn't being stored into scnhdr.
6728 * config/obj-coffbfd.h: Add prototype of s_get_segment.
6729 * read.c (TC_START_LABEL): Default definition.
6730 (read_a_source_file): Use TC_START_LABEL macro to work out
6731 if a label has been seen.
6732
543d88e4
ILT
6733Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
6734
c39b3eba
ILT
6735 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
6736 the bottom (make expands variables in dependencies when the
6737 dependencies are read, not when they are used).
6738
543d88e4
ILT
6739 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
6740 a29k .bss section; the mondfe program doesn't like it.
6741
2b1b5697
KR
6742Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
6743
6744 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
6745 const.
6746 (current_architecture): Don't need initializer.
6747
6748Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6749
6750 * doc/none.m4: Define Z8000.
6751 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
6752 texinfo file before recreating it.
6753 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
6754 this directory.
6755 (srcdir): Delete second, bogus definition.
6756 (as.info): Look for as-*.texinfo in current directory rather than
6757 in $(srcdir).
6758 (as.dvi): Ditto.
6759 (dvi): New rule.
6760 * doc/configure.in: Create links to all as-*.texinfo files in the
6761 source directory, if that's not the current directory.
6762
6763 * configure.in (per-host): Accept MIPS host with BSD version
6764 number.
6765 (per-target): Classify i486 as i386. Use generic cpu_type instead
6766 of target_cpu in selecting format etc.
6767
6768 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
6769 * read.c (potable): Change .app-file to .appfile.
6770
6771 * config/ho-decstatn.h: Renamed from ho-decstation.h.
6772 * configure.in: Adjusted.
6773
6774 * config/obj-bfd-sunos.*: Unused; deleted.
6775
6776 * Makefile.in (version.c, vers-stamp): Deleted.
6777 (config.h): Define GAS_VERSION.
6778 * as.c (version_string): Deleted declaration.
6779 (main): Look for GAS_VERSION instead.
6780
6781 * doc/as.texinfo: Updated description of -a* (listing) options,
6782 and describe how to pass them through from gcc.
6783
6784 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
6785 process relocs if there aren't any relocs to process. Avoids
6786 malloc/free bug on SCO too.
6787
6788 * as.h: Move local include files below system include files, to
6789 avoid some redefinition complaints on some systems.
6790 (const, volatile): Don't need these conditionally defined if we
6791 use CONST and VOLATILE from ansidecl.h.
6792 (seg_name): Use CONST, not const.
6793
543d88e4
ILT
6794Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
6795
6796 * config/tc-mips.c: Reindented to GNU standards.
6797
2c19a57c
ILT
6798Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
6799
61001d96
ILT
6800 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
6801 (fixup_segment): Add a29k special case; the linker is not prepared
6802 to see a segment offset here.
6803
2c19a57c
ILT
6804 * app.c (do_scrub_next_char): Added new state, 10, modifying state
6805 9 to only keep a space in between identifier characters.
6806
afcc637a
DZ
6807Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
6808
2d4bef5e
DZ
6809 * Makefile.in: add dvi target; as-$(config).texinfo might live in
6810 srcdir, might be in objdir.
afcc637a
DZ
6811
6812 * doc/Makefile.in: dvi depends on as.dvi
6813
80c8fd72
DZ
6814Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6815
6816 * Makefile.in: add installcheck target
6817
fd4b7c25
KR
6818Mon Mar 22 16:25:57 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
6819
6820 * config/tc-sparc.c (sparc_ip): Add support for membar mask names.
6821 Add missing colons in prefetch error messages. Add support for
6822 ASI names.
6823
1369949e
ILT
6824Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
6825
6826 * config/tc-mips.c (macro): Use $AT for any floating point load.
6827
63cdddad
KR
6828Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
6829
6830 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
6831 bignums, but don't emit error message.
6832
69498fa2
JW
6833Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
6834
6835 * Makefile.in (targ-cpu.o): Depend on config.h.
6836
f6a91cc0
ILT
6837Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
6838
6839 * app.c (do_scrub_next_char): Added new state, 9, to avoid
6840 dropping a space immediately following an identifier.
6841 * expr.c, write.c: Rewrote assert expressions to not use multiple
6842 lines; I don't think that can be done portably.
6843 * config/tc-mips.c (macro): Use $AT if target register is zero in
6844 load instruction, which it can be for a floating point load.
6845
a36f6645
ILT
6846Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
6847
3d3c5039
ILT
6848 * write.c (write_contents): Compute the relocs before writing out
6849 the section contents.
6850 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
6851 symbol table and values right.
6852 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
6853 with $L is local.
6854 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
6855 by the section vma.
6856
6857 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
6858 z8k-opc.h, not z8k.h.
6859
a36f6645
ILT
6860 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
6861 symbol.
6862
2a697fa4
DZ
6863Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6864
6865 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
6866
f2f7d044
ILT
6867Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
6868
6869 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
6870 to be on a single line.
6871
ed099874
KR
6872Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6873
6874 * Makefile.in (config.h): Create file, writing out definitions of
6875 target cpu, alias, and canonical name.
6876 (ALL_CFLAGS): No longer define TARGET_CPU.
6877
6878 * Makefile.in (check): Print a message, instead of quitting
6879 silently.
6880
6881 * as.c (main): Don't catch any signals, for now.
6882
6883 * version.c: Deleted.
6884 * Makefile.in: Generate it, putting in only the version number
6885 itself.
6886 (VERSION): New variable.
6887 * as.c: Include config.h.
6888 (main): Reformatted version string. Include target alias. Don't
6889 print if not requested (i.e., unknown -v argument).
6890
6891 * as.c (stralloc): Deleted.
6892 (main): Call strdup instead.
6893
6894 * configure.in: Handle all 68300 series chips.
6895 * config/tc-m68k.c: Include config.h.
6896 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
6897 series cpus as defaults.
6898 (md_parse_option): Accept some m68300 series CPUs as defaults.
6899
6900Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6901
6902 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
6903 not already defined.
6904 (main, got_sig): Use them.
6905 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
6906 values.
6907
6908Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
6909
6910 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
6911 support.
6912
6913 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
6914 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
6915 (struct loc, struct proc, struct file): Moved to tc-mips.c within
6916 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
6917 * config/tc-mips.c: Rearranged for ECOFF support. Added
6918 prototypes for all static functions. Moved existing minimal
6919 debugging format support info #ifndef OBJ_ECOFF blocks.
6920 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
6921 does not support a non sign extended high 16 bits reloc. Adjusted
6922 all callers accordingly.
6923 (tc_get_register): Renamed from get_register, and made non-static.
6924
6925 * config/mips-big.mt, config/mips-lit.mt: New files. Define
6926 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
6927 respectively.
6928 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
6929 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
6930 obj_format ecoff and gas_target mips-lit or mips-big.
6931
c5d4bc88
KR
6932Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
6933
6934 * version.c: Bump to version 2.0.1.
6935
fefba3a5
ILT
6936Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
6937
6938 * write.c (chain_frchains_together): Check that seg_info (section)
6939 is not NULL.
6940 (write_object_file): Call obj_frob_file after setting the symbols,
6941 not before.
6942
2b1b5697
KR
6943Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
6944
6945 * Version 2.0 released.
6946
fefba3a5
ILT
6947Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6948
6949 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
6950
6951Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
6952
6953 * read.h: Define stringer here.
6954 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
6955 places.
6956
bf449293
SC
6957Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
6958
6959 * read.c (s_space): Multiply repeat count by mult, not fill.
6960
9471a360
KR
6961Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
6962
6963 * read.c: Include ctype.h.
6964
1101551c
KR
6965Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6966
6967 Patches from Eric Youngdale:
6968 * make-gas.com: Find obstack.obj if it's not in the current
6969 directory.
6970 * read.c (s_ignore): Don't declare is_end_of_line. It's
6971 redundant, and triggers a VMS gcc compiler bug.
6972
6973 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
6974 current segment as an argument. (Ignored in all cases but VMS.)
6975 All callers and definitions changed.
6976
5e4cddb7
ILT
6977Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
6978
6979 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
6980 case compile again.
6981
f3ca2a64
KR
6982Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
6983
6984 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
6985 so "~0x80" won't be rejected.
6986
6987 * config/obj-elf.c: No longer include elf/reloc.h.
6988 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
6989 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
6990 routines.
6991 (obj_elf_xstab): New routine.
6992 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
6993 argument to s_ignore. Put "#if 0" around unused code.
6994 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
6995 Call elf_xstabs for .stabs and .xstabs operators.
6996
6997 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
6998
6999 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
7000 present.
7001
7002 * configure.in: mips-bsd configuration was missing format spec.
7003 Should use aout.
7004
7005 * Makefile.in (Makefile): Depends on configure.in.
7006
7007 * config/tc-mips.c (append_insn): Don't check for alignment of
7008 frag in memory; alignment of instructions in section is a separate
7009 matter.
7010
7011 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
7012 C availability.
7013
7014 * listing.h: Always provide function declarations, not macros, so
7015 pcc won't lose.
7016
7687d89b
JG
7017Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
7018
7019 * CONTRIBUTORS: Update Gilmore entry.
7020
fd4b7c25
KR
7021Mon Mar 1 12:03:16 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
7022
7023 * config/tc-sparc.c (sparc_ip): Correctly assemble prefetch
7024 instructions. Accept integer prefetch function numbers.
7025
7687d89b
JG
7026Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7027
fd4b7c25
KR
7028 * config/tc-sparc.c (s_xword): Now call big_cons, so large
7029 constants are accepted, but symbolic values are not. GCC will not
7030 generate the latter currently.
7031
7687d89b
JG
7032 * frags.c (frag_init): New function.
7033 (zero_address_frag, bss_address_frag): Now initialized at run
7034 time.
7035 * as.c (main): Call frag_init.
7036
160b7f0f
ILT
7037Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
7038
7039 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
7040 Don't unget ch2 if we didn't get it.
7041
0cca30f3
KR
7042Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7043
7044 * doc/Makefile.in (TEXIDIR): Updated for new layout.
7045
7046 * config/tc-sparc.c (s_common): Add support for ELF version.
7047 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
7048 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
7049 New macros.
7050 (md_convert_frag): New macro.
7051
7052 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
7053 symbol, fix the offset so "+2" isn't required.
7054
7055 * config/tc-i960.c (line_comment_chars, line_separator_chars):
7056 Define as common/bss.
7057 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
7058 initializers are sufficient.
7059
7060 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
7061 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
7062 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
7063 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
7064 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
7065 "IGNORE_DEBUG" conditional, since both branches are identical.
7066 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
7067 referencing symbol structure members.
7068 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
7069
7070 * as.h (struct frag): Reordered a couple of fields for better
7071 packing.
7072
7073 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
7074 section info.
7075 (write_contents) [BFD_ASSEMBLER]: New function.
7076 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
7077 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
7078 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
7079 (fixup_segment): Make sure common-section symbols get treated the
7080 same as undefined symbols.
7081 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
7082 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
7083 section info.
7084 * write.h (fix_new): Update prototype.
7085
7086 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
7087 md_section_align, md_undefined_symbol): Don't provide prototypes
7088 if these are defined as macros.
7089 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
7090 section passed.
7091
7092 * symbols.c (symbol_new): Argument NAME is now pointer to const.
7093 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
7094 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
7095 BFD symbol.
7096 (colon): Display other/desc fields of redefined symbol only if
7097 S_GET_OTHER and S_GET_DESC are defined.
7098 (symbol_make): Argument NAME is now pointer to const.
7099 (symbol_find, symbol_find_base): Likewise.
7100 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
7101 * symbols.h: Fix prototypes for new const arguments. Add
7102 prototypes for BFD_ASSEMBLER S_* functions.
7103
7104 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
7105 for changing to an existing section.
7106 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
7107 called by subseg_new and subseg_set.
7108 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
7109 given section name and subseg number.
7110 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
7111 new section/subsection.
7112
7113 * read.c: Don't include ctype.h.
7114 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
7115 for now; should be machine-dependent.
7116
7117 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
7118 targets, forcing BFD use.
7119
7120Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7121
7122 * config/tc-sparc.c: Use PARAMS macro for static function
7123 declarations. Use BFD_RELOC_ macros everywhere, with
7124 compatibility macros declared for non-BFD mode.
7125 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
7126 instead of enum reloc_type.
7127 (emit_sparc_reloc): Commented-out function deleted.
7128 (md_convert_frag): Deleted.
7129 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
7130 (md_apply_fix): Changed calling sequence (conditionally) for BFD
7131 version.
7132 * config/tc-sparc.h (md_convert_frag): New macro.
7133
7134 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
7135 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
7136 of referencing fields directly.
7137
7138 * write.c (cvt_frag_to_fill): New function; extracted from
7139 write_object_file.
7140 (write_object_file) [! BFD_ASSEMBLER]: Call it.
7141 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
7142 and set its size and flags.
7143
7144 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
7145 fields with BFD equivalents. Turn on back-pointers, and add
7146 target-specific fields at end.
7147
7148Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
7149
7150 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
7151 (write_object_file): Set it here instead, so that fixup_segment
7152 can see the correct value.
7153
7154Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7155
7156 * write.c (write_object_file): Check for errors and warnings and
7157 bail out before processing contents.
7158 (chain_frchains_together_1): New function, does most of the work
7159 of remove_subsegs.
7160 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
7161 (remove_subsegs) [! BFD]: Call it.
7162 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
7163 structures and routines.
7164
7165 * config/obj-elf.*: New files.
7166
7167 * config/mips.mt, config/rs6000.mt: Deleted.
7168
7169 * config/h8300.mt: Don't specify compiler here.
7170
7687d89b 7171 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
7172 not the h8300 one.
7173 * config/tc-z8k.h: Comment fix.
7174
7175 * write.c: Reordered some functions for better inlining.
7176 (fixup_segment): Linkrelax code is no longer conditional on
7177 TC_I960.
7178
7179Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7180
7181 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
7182 obj-coffbfd.h}: support for the H8/500
7183
7184Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7185
7186 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
7187 * write.c (write_object_file): Not here.
7188 (fix_new): Initialize fx_addnumber.
7189
7190 * listing.c: Don't include target-cpu.h explicitly, since as.h
7191 includes it.
7192
7193Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7194
7195 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
7196 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
7197 (struct fix): Reordered fields for compactness and efficiency.
7198 Converted some logical fields to 1-bit fields.
7199
7200 * config/obj-aout.h: Use PARAMS.
7201 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
7202 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
7203
7204 * read.c: Don't include listing.h; as.h includes it. Removed
7205 DONTDEF code.
7206 [BFD_ASSEMBLER]: Include subsegs.h.
7207 (old_buffer, new_broken_words): Default initialization is
7208 sufficient.
7209
7210 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
7211 to 0, define stdoutput.
7212 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
7213 Call bfd_set_arch_mach.
7214 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
7215 bfd_close_all_done. Call bfd_perror on failure.
7216 (output_file_append) [BFD_ASSEMBLER]: Don't define.
7217
7218 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
7219
7220 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
7221 if not MANY_SEGMENTS. Define new field bfd_section if
7222 BFD_ASSEMBLER.
7223 (seg_info): New macro.
7224
7225 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
7226 variables, and some irrelevant comments.
7227
7228 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
7229 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
7230 * configure.in: Permit --with-bfd-assembler now, with a warning.
7231 Variable need_bfd is now a boolean, as is new variable bfd_gas.
7232 Set BFDDEF and BFDLIB in Makefile when appropriate.
7233
7234 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
7235 (main): Refer to flag_always_generate_output instead of
7236 flagseen['Z'].
7237
7238 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
7239 (*_section) [BFD_ASSEMBLER]: Define them.
7240 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
7241 set section flags when appropriate.
7242 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
7243 section is not absolute, undefined, or an assembler internal one.
7244 (absolute_section, undefined_section): Always define.
7245 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
7246 switch statements into if-else trees.
7247 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
7248 SEG_BSS and SEG_DATA.
7249
7250 * as.h (frag_now_fix): New macro.
7251 * symbols.c (colon): Use it.
7252
7253Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
7254
7255 * config/tc-mips.c: Added mips support for mips-dec-bsd.
7256 * config/tc-mips.h: Added mips support for mips-dec-bsd.
7257 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
7258 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
7259 * configure.in: Added mips support for mips-dec-bsd.
7260 * atof-generic.c: Define TRUE and FALSE if not defined.
7261
7262Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7263
7264 * version.c: Bumped version number to 1.93.05.
7265
7266Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7267
7268 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
7269 (obj_emit_lineno): Don't need return at end of void function.
7270 (obj_symbol_new_hook): Ditto.
7271
7272 * config/tc-m68k.c: Removed some unused code.
7273 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
7274
7275 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
7276 offset field is set.
7277
7278Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7279
fd4b7c25
KR
7280 * config/tc-sparc.c (sparc_ip): For %uhi and %ulo, if not
7281 ENV64, emit no reloc.
7282 (md_pseudo_table): For ".xword", call s_xword.
7283 (s_xword): New function.
7284
0cca30f3
KR
7285 * config/tc-sparc.c (architecture_requested, warn_on_bump,
7286 md_relax_table): Use default zero initialization.
7287 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
7288 latter, instead of selecting with preprocessor conditionals.
7289
7290Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7291
7292 * configure.in: recognise all sparclite variants
7293
7294Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7295
7296 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
7297 accidentally changed to use subseg_change where it should have
7298 been subseg_new.
7299
6c5f9998
KR
7300Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7301
0bd77bc4
KR
7302 * expr.c (operand): If character other than comma or newline is a
7303 logical end-of-line character, use the newline case.
0cca30f3
KR
7304 From Eric Youngdale:
7305 (operand): Set X_add_number field for floating-point numbers.
7306 (operand): Treat zero byte as end-of-operand.
0bd77bc4 7307
6c5f9998
KR
7308 * configure.in (per-target): Look for with_bfd_assembler option.
7309 For now, only accept "no", until the merge is done.
7310
0cca30f3
KR
7311 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
7312 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
7313 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
7314 * read.c: Finish conversion to S_* macros in the VMS only
7315 parts of the program. Add "const" modifier to hex_value.
7316 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
7317 "ifdef OBJ_VMS".
7318 * expr.c: Add "const" modifier to hex_value.
7319 * symbols.c: Finish conversion to S_* macros in the VMS only
7320 parts of the program. Add "const" modifier to
7321 md_[long,short]_jump_size. Remove declaration of const_flag
7322 (which will be declared in obj-vms.h).
7323 * write.c: Add "const" modifier to md_[long,short]_jump_size.
7324 Fix arguments to VMS_write_object_file.
7325 * config-gas.com: New file. Script for VMS systems to set up the
7326 configuration to build gas for VMS, and create config.status.
7327 * make-gas.com: Redone to work with new scheme.
7328 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
7329 stabs directives.
7330 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
7331 will swap bytes if needed on a big endian system. Use throughout
7332 as needed.
7333 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
7334 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
7335 types of malformed stabs. Change parsing algorithm so that we are
7336 more certain of having all of the information that we need on hand.
7337 * obj-vms.c (final_forward_reference): New function, used to help
7338 resolve the data types of as many struct elements as possible
7339 when some part of the struct is not fully defined by the compiler.
7340 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
7341 stabs directives.
7342 * obj-vms.c (VMS_write_object_file): Define all vtable psects
7343 as symbols as well in the object file. Look for external functions
7344 that start with "__vt.", and turn them into variables, since the
7345 g++ compiler is incapable of doing this.
7346 * tc-vax.c: Add '1' option for backward compatibility with older GCC
7347 versions.
7348 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
7349 * input-scrub.c (as_where): Fix bug where as would crash if we did not
7350 have the name of the source file yet.
7351 * config/ho-vms.h: define HO_VMS, not HO_VAX.
7352
9d76a195
KR
7353Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
7354
7355 * read.c (s_data): Always use "data_section", since it'll map to
7356 SEG_DATA or SEG_E1 if needed.
7357 (s_lcomm): Likewise with bss_section.
7358 (s_fill): Use memset, not bzero.
7359
7360Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7361
7362 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
7363 handling GDB symbol table data.
7364
7365 * config/obj-aout.h (segment_name): Delete definition.
7366 (seg_name): Delete declaration.
7367 * config/obj-bout.h (segment_name, seg_name): Ditto.
7368 * config/obj-vms.h (segment_name, seg_name): Ditto.
7369 * config/obj-coff.h (segment_name): Ditto.
7370 * config/obj-coffbfd.h (segment_name): Ditto.
7371
7372 * Changes for BFD_ASSEMBLER:
7373 * obj.h (obj_crawl_symbol_chain): Declare only if not
7374 BFD_ASSEMBLER.
7375 (obj_header_append, obj_pre_write_hook): Ditto.
7376 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
7377 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
7378 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
7379 otherwise, use seg_name array.
7380 (seg_name): Declare only if not BFD_ASSEMBLER.
7381 (section_alignment): Declare only if not BFD_ASSEMBLER.
7382 (big_section, reg_section, pass1_section, diff_section,
7383 absent_section, text_section, data_section, bss_section): If
7384 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
7385 mapping to segT enum values.
7386 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
7387 if these are used or defined, if BFD_ASSEMBLER.
7388 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
7389 subseg_new split into two functions.
7390 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
7391
7392 * as.h (volatile): Don't define if already defined.
7393 (had_errors, had_warnings): Provide prototypes for ANSI C even if
7394 NO_STDARG.
7395 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
7396 declare with format attribute for -Wformat checking.
7397
85825401
ILT
7398Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
7399
7400 * app.c, config/tc-*.c: Don't include read.h, since it is already
7401 included by as.h.
7402
7403 * These are based on patches from Minh Tran-le
7404 <mtranle@paris.intellicorp.com>.
7405 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
7406 obj_format coffbfd and gas_target i386coff for target.
7407 (i[34]86-*-isc*): New host (uses sysv).
7408 * config/i386aix.mt: Removed (no longer used).
7409 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
7410 (MINUS_G): Removed.
7411 (LDFLAGS): Added, defined as -shlib.
7412 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
7413 * config/te-sco386.h (LOCAL_LABEL): Don't define.
7414 (DOT_LABEL_PREFIX): Define.
7415 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
7416 name rather than L0\001.
7417 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
7418 local_bss_counter.
7419 * symbols.c, symbols.h (local_bss_counter): Removed.
7420 * write.c (write_object_file): bss no longer uses
7421 local_bss_counter. Pass correct data and bss size to
7422 VMS_write_object_file.
7423 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
7424 argument, rather than using local_bss_counter.
7425 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
7426 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
7427 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
7428 (size_section): Restored sanity check.
7429 (do_relocs_for): Base section address on s_paddr rather than
7430 computing it. Adjust a29k R_IHIHALF special case to account for
7431 section paddr (used to require paddr to be zero). If there are no
7432 reclos, set s_relptr to 0. Set relocation size in object_headers.
7433 (fill_section): Always set s_vaddr here, removing
7434 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
7435 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
7436 Set STYP_INFO for .comment.
7437 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
7438 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
7439 (crawl_symbols): Handle 8 character section name correctly. Use
7440 H_{SET,GET}_* macros.
7441 (do_linenos_for): Set lineno size in object_headers.
7442 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
7443 set s_vaddr here. If string_byte_count remains 4, set it back to
7444 0, and only write strings out if there are some. Call
7445 fill_section before do_relocs_for and do_linenos_for.
7446 (obj_coff_section): Handle optional quoted second argument giving
7447 section characteristics.
7448 (obj_coff_bss): Added to handle .bss.
7449 (obj_coff_ident): Added to handle .ident (puts string in .comment
7450 section).
7451 (obj_coff_lcomm): Put common symbols in .bss, not .data.
7452 (fixup_mdeps): Change to segment. Call frag_wane after
7453 md_convert_frag.
7454 (fixup_segment): Explicitly check S_IS_COMMON before making 386
7455 adjustment (already happened only for common symbols, but this is
7456 clearer).
7457 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
7458 * config/tc-i386.c (s_bss): Don't use if I386COFF.
7459 (md_pseudo_table): Ignore .optim and .noopt.
7460 (tc_coff_sizemachdep): New function.
7461 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
7462 compatibility.
7463 (LOCAL_LABEL): Removed definition.
7464 (DOT_LABEL_PREFIX): Defined.
7465
4539aa02
KR
7466Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
7467
6d331d71
KR
7468 * app.c (app_push): Use memcpy, not bcopy.
7469 (do_scrub_next_char): For \", return " not '.
7470 (symbol_chars): Now const.
7471
4539aa02
KR
7472 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
7473 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
7474
7475 * config/obj-coff.h: Don't use #elif.
7476
7477 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
7478 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
7479
3eb802b5
ILT
7480Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
7481
7482 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
7483 already defined.
7484
be06bdcd
SC
7485Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7486
7487 * app.c (do_scrub_begin): allow single quote strings if so
7488 configured.
7489
7490 * config/*z8k*: checkpoint
7491
7492Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
7493
7494 * read.c (read_a_source_file): avoid calling xmalloc (0).
7495
016e0d42
ILT
7496Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
7497
7498 * listing.c: Call xmalloc, not malloc; don't declare malloc.
7499
7500 * Changes to support SCO 3.2v4:
7501 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
7502 SEG_BSS, fill with NOP_OPCODE.
7503 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
7504 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
7505 using ZERO_BASED_SEGMENTS.
7506 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
7507 never set segment address for SEG_E2 (.bss) and don't write out
7508 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
7509 (obj_coff_endef): Don't merge labels or symbols awaiting forward
7510 definitions, and don't merge tags with non-tags. Check for .bf
7511 rather than just checking whether the second character is b and
7512 the third character is f.
7513 (obj_coff_val): gcc can generate values which we don't handle
7514 correctly; discard information for now, since it only affects the
7515 debugging information.
7516 (tag_find_or_name): Don't insert tags in the symbol table.
7517 (yank_symbols): Don't merge labels.
7518 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
7519 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
7520 set segment address if ZERO_BASED_SEGMENTS.
7521 (obj_coff_section): Accept and ignore a trailing quoted string, as
7522 used in AT&T i386 syntax.
7523 (fixup_segment): Take segment as argument. On the i386, adjust PC
7524 relative addends by the segment vaddr.
7525 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
7526 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
7527 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
7528
db33220f
KR
7529Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
7530
016e0d42
ILT
7531 * config/obj-coffbfd.c: Include libcoff.h.
7532
db33220f
KR
7533 * version.c: Now version 1.93.
7534
dde624ef
KR
7535Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
7536
db33220f
KR
7537 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
7538 power-of-two alignment for .align.
7539
dde624ef
KR
7540 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
7541 and leave everything else alone.
7542
7543Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7544
7545 * Makefile.in (as.new): Don't bother saving as.old.
7546
7547 * write.c: Conditionalize on OBJ_VMS, not VMS.
7548 (magic_number_for_object_file): Don't define if OBJ_VMS.
7549
7550 * config/obj-vms.c: Changes for traditional C.
7551
7f2cb270
KR
7552Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7553
7554 * config/ho-generic.h (malloc, realloc): Declare.
7555
7556 * Lots of comment/whitespace changes.
7557
7558 * write.h (struct fix): Some fields reordered, narrowed.
7559
7560 * read.c (MASK_CHAR): Define using C types, not magic number.
7561
7562 * as.c, input-file.c: Deleted some unused code.
7563
7564 * app.c, as.h: Doc fix.
7565
7566 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
7567
7568 * as.h (xmalloc): Argument is long.
7569
7570 * xmalloc.c (error): Remove declaration; as.h takes care of it.
7571
0cca30f3
KR
7572 * doc/as.texinfo: Regrouped documentation of some command-line
7573 options. Updated options documentation for m68k. Some minor
7574 wording/punctuation changes.
7575
7f2cb270
KR
7576Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7577
7578 * configure.in: Accept target OS "vms".
7579
7580 * symbols.c: Merged ANSI and non-ANSI function decls, using
7581 PARAMS macro.
7582
7583 * xmalloc.c: Just include as.h, don't bother trying to figure out
7584 other header files.
7585
7586 * strstr.c, strerror.c: Deleted.
7587 * Makefile.in: Deleted references.
7588
7589 * config/tc-ns32k.c: Don't include header file for string
7590 declarations; leave that to ho-*.h.
7591
7592Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
7593
7594 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
7595 imported from FSF sources.
7596
7597 * messages.c (strerror): Declare unconditionally.
7598
7599 * as.h: Delete alloca and register definitions.
7600
7601 * config/atof-ieee.c (mask): Now const.
7602
7603 * obstack.c, obstack.h: Deleted.
7604
7605 * as.h (flag_readonly_data_in_text): New flag.
7606 * as.c (main): Set it for -R.
7607
7608 * as.h (flag_suppress_warnings): New flag.
7609 * as.c (main): Set it for -W.
7610 * messages.c (as_warn): Check it instead of flagseen['W'].
7611
7612 * as.h (flag_always_generate_output): New flag.
7613 * as.c (main): Set it for -Z.
7614
7615 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
7616 * config/tc-a29k.h: Ditto.
7617 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
7618 macros.
7619
7620 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
7621 macro.
7622 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
7623 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
7624 write.h: Likewise.
7625 * read.c: Likewise.
7626
7627 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
7628 xrealloc from xrealloc.c.
7629 * xrealloc.c: Deleted.
7630 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
7631
7632 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
7633 or vms ho- files.
7634
7635 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
7636
7637 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
7638 don't initialize it with NULL.
7639
7640 * config/ho-vax.h (M_VAX): Deleted; was unused.
7641
7642 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
7643 New files imported from FSF version, contributed by Eric Youngdale.
7644 * README-vms-dbg, config/vms: Deleted.
7645
7646 * ChangeLog, config/ChangeLog: Merged.
7647
7648 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
7649 version.
7650
7651 * input-file.c (input_file_open): Eliminate call to setvbuf.
7652 [USG] (setbuffer): Deleted macro.
7653
6efd877d
KR
7654Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
7655
7656 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 7657 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
7658
7659 * configure.in: No te-386bsd.h file exists; don't try to use it.
7660
7f2cb270
KR
7661 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
7662
7663 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
7664 could be doing emulation.
7665
0cca30f3 7666Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 7667
0cca30f3
KR
7668 z8000 documentation
7669 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
7670 all modified.
7671
6efd877d
KR
7672Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
7673
7674 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
7675
7676 * subsegs.h: add extern to segment_info declaration.
7677
7678 * read.h: added extern declarations for comment_chars,
7679 line_comment_chars, and line_separator_chars.
7680 read.c, app.c: removed definitions of comment_chars,
7681 line_comment_chars, and line_separator_chars.
7682
7f2cb270
KR
7683 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
7684 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
7685 the register name.
7686 (insert_reg): put REGISTER_PREFIX before register names before
7687 putting them in the symbol table.
7688 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
7689 M68KCOFF.
7690
7691 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
7692 section.
7693
7694 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
7695 comment_chars, line_comment_chars and line_seperator_chars
7696 consistently const, and always initialized them. Included read.h.
7697
7698Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
7699
7700 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
7701 constant will not fit in an immediate field.
7702 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
7703
7704Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
7705
7706 * obj-coff.c (callj_table): Delete global variable.
7707 (obj_emit_relocations): Define it locally here, and only if
7708 TC_I960 is defined.
7709
7710 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
7711 (m68k_ip): Don't warn about bignum used as float bit-pattern.
7712
7713 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
7714 with a single set using PARAMS macro.
7715
7716 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
7717 of 2.
7718
7719 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
7720
7721 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
7722 so widening works consistently.
7723
6efd877d
KR
7724Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
7725
7726 * version.c: Put conditional "const" before version_string, not
7727 before dummy function for VMS. Now version 1.91.03.
7728
7729 * app.c (do_scrub_next_char): Need double-\ before `000' to show
7730 printed rep of null character.
7731
7f2cb270
KR
7732Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
7733
7734 * obj-coffbfd.c (write_object_file): check return value of
7735 bfd_close_all_done.
7736
559d9aac
ILT
7737Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
7738
7f2cb270
KR
7739 * Support for i386-sysv.
7740 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
7741 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
7742 be used to set them all to zero as was done before.
7743 (fill_section): segment addresses now set in write_object_file.
7744 (fill_section): Don't set STYP_NOLOAD for .bss section.
7745 (fixup_segment): 386 uses strange common symbol format.
7746 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
7747 compatibility with SVR3.2 linker.
6efd877d
KR
7748 * configure.in: i386-sysv and i386-sco use coffbfd.
7749
559d9aac
ILT
7750 * app.c (do_scrub_next_char): discard whitespace after a label.
7751
0f8b9790
DZ
7752Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7753
7754 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
7755 hosts, use the sysv configuration for solaris2
7756
7f2cb270
KR
7757Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7758
132239bf 7759 fix i960+non-bfd coff bit rot.
7f2cb270
KR
7760 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
7761 support for C source listings. (obj_coff_endef): look in the right
7762 part of the symbol for the symbol name
7763
7764 * tc-m68k.c (get_num): make it work for all segments, not just the
7765 first three.
7766
984cf2d7
ME
7767Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
7768
7769 * configure.in: recognize i386-*-bsd emulation.
7770
7771Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7772
7773 * configure.in: use the cpu-vendor-os triple for host and target
7774
7f2cb270
KR
7775Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7776
7777 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
7778 * tc-z8k.c: lots of bug fixes
7779
7780Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
7781
7782 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
7783 #elif, since it is not supported by old compilers.
7784 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
7785 couple of expressions in tc-m68k.c.
7786
984cf2d7
ME
7787Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7788
7789 * read.c (cons): If NO_RELOC is defined, use it.
7790
7f2cb270
KR
7791 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
7792
7793Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
7794
7795 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
7796 local labels to start with a .) and set REGISTER_PREFIX to %.
7797 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
7798
5a0fc1d4
JG
7799Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
7800
7801 * messages.c: Comment changes.
7802
4959cb7b
KR
7803Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
7804
7805 * as.h: Test if __STDC__ is defined only, don't test its value.
7806 * messages.c: If __STDC__ is not defined, define NO_STDARG.
7807
5e9d510e
BK
7808Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
7809
7810 * listing.c (debugging_pseudo): Add stabs and stabn as things to
7811 ignore.
7812
7f2cb270
KR
7813Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
7814
7815 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
7816 sections starting from zero, rather than making them consecutive.
7817 This makes subsequent reloc calculations easier, esp if the object
7818 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
7819 allocate lcomm in .data rather than in .bss. It seems that some
7820 tools can't cope with a non-zero sized bss before linkage.
132239bf 7821
7f2cb270
KR
7822Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7823
7824 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
7825 throughout. That enum no longer means what we thought it meant.
7826
7827 * tc-m68k.c (md_assemble, md_parse_option): Handle new
7828 "-mno-688[58]1" options.
7829
7830 * tc-m68k.c: Added CPU32 support.
7831
7832Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7833
7834 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
7835
569dac15
JW
7836Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
7837
7838 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
7839 Change LIBDEPS dependence to LIBS.
7840
efbfb612
ILT
7841Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
7842
7843 * Makefile.in (install): if $(tooldir) exists, install as in
7844 $(tooldir)/bin.
7845
987b1491
ILT
7846Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
7847
ca5e9d49
ILT
7848 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
7849 .word is < -32768 or > 32767. The -J flag causes the error to be
7850 ignored. This is to catch over-sized switches generated by gcc on
7851 systems which don't support the broken .word hack.
7852 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
7853 write.c (fixup_segment): check for signed .word overflow if
7854 WARN_SIGNED_OVERFLOW_WORD.
7855
987b1491
ILT
7856 * write.c (fixup_segment): fixed missing parens in expression
7857 checking for byte or word overflow.
7858
7f2cb270
KR
7859 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
7860 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
7861 WARN_SIGNED_OVERFLOW_WORD.
7862
7863 * obj-coffbfd.c (fixup_segment): fixed missing parens in
7864 expression checking for byte or word overflow.
7865
7866Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7867
7868 Support for i386 coff
132239bf 7869 * obj-coffbfd.h : added stuff
7f2cb270
KR
7870 * tc-i386.c (tc_coff_fix2rtype): new function
7871 * tc-i386.h : new coff defines
7872
b1520b1f
ILT
7873Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
7874
7875 * input-scrub.c (input_scrub_push): call input_file_begin, not
7876 input_scrub_begin.
7877 messages.c (as_perror): print ": " between the passed in error and
7878 the strerror, like perror does.
7879
b53ccaac
ILT
7880Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
7881
7882 * Makefile.in: use gas_target instead of modifying target_cpu.
7883 From Steve Chamberlain:
7884 Makefile.in: Handle m68*-*-coff*.
7885 read.c, read.h: add mult argument to s_space
7886
7f2cb270
KR
7887 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
7888 Motorola and MIT syntax; gas can now assemble either type of
7889 file.
7890 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
7891 From Steve Chamberlain:
7892 m68kcoff.mt: for m68k COFF.
7893 obj-coffbfd.c: (fixup_mdeps) added
7894 (size_section) removed bad sanity check
7895 (fill_section) added rs_machine_dependent case
7896 (write_object_file) call fixup_mdeps
7897 (fixup_segment) set fx_subsy to 0.
7898 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
7899 handle m68k.
7900 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
7901 pseudo ops.
7902
db4d20e5
KR
7903Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7904
7905 * Makefile.in (LIBS): Include opcode library.
7906
e53ab768
KR
7907Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
7908
7909 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
7910 including zero are accepted, pass +0.0.
7911
7e10f53c
ILT
7912Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
7913
7914 * Makefile.in: map "as" through program_transform_name when
7915 installing.
7916
0cca30f3
KR
7917 * doc/Makefile.in: map "as" through program_transform_name when
7918 installing.
7919
b0952e12
JW
7920Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
7921
7922 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
7923
7f2cb270
KR
7924Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
7925
7926 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
7927 tc-i960.c (md_ri_to_chars): Always output bout object file in
7928 little endian byte order (used to use endianness of host).
7929
b2f221a9
KR
7930Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7931
7932 * config/tc-m68k.c (init_table): Now const. Always include 68851
7933 data, so that "bc" is available to 68040 cache instructions.
7934 Added "tt0", "tt1", and 68ec030 variants.
7935 (md_assemble): Complain if 68000 (only) and 68881 are specified.
7936 (enum _register): Added TT0, TT1.
7937 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
7938 line number correctly in "internal error" messages. Don't print
7939 architecture-mismatch message for operand errors.
7940
7941 From Colin Smith (colin@wrs.com):
7942 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
7943 than install_operand.
7944
ab737e51
SC
7945Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
7946
7947 * listing.c (buffer_line): rewind to the start of include
7948 files, they might be included twice.
7949
7f2cb270
KR
7950 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
7951
7121231f
ILT
7952Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
7953
7954 * Makefile.in: defined TARGET_CPU for C code so that it can choose
7955 one element of a family.
7956
7f2cb270
KR
7957 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
7958
7959 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
7960 so that we can assemble hand-written libgcc code.
7961
4772861e
KR
7962Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
7963
7964 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
7965 has already been formatted (but may still contain %-characters).
7966 (as_bad): Likewise.
7967
7f2cb270
KR
7968Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
7969
7970 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
7971 written with indirection on the last two operands, which can be
7972 either data or address registers. Added a new operand type 'r'
7973 which accepts either register type. Added '(' to notend stuff in
7974 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
7975
09952cd9
KR
7976Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
7977
7978 * as.h (enum _relax_state): Start off at one, not zero, to better
7979 catch uninitialized-variable errors.
7980 (linkrelax): Declare new variable.
7981
7982 * messages.c (warning_count, error_count): Default initializer is
7983 sufficient.
7984
7985 * write.c: Merged some declarations, using PARMS macro.
7986 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
7987 data_last_frag): No longer static.
7988 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
7989 defined, call it. Change segments before calling fixup_segment.
7990 (relax_align): If linkrelax, provide extra padding.
7991
7992 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
7993 their not having symbols associated.
7994
7995 * tc-i960.c (norelax, instrument_branches): Default initializer is
7996 sufficient.
7997 (linkrelax): Delete variable definition.
7998 (mem_fmt): Call fix_new with NO_RELOC.
7999 (tc_bout_fix_to_chars): Handle alignment relocs.
8000 (i960_handle_align): New function.
8001 * tc-i960.h (linkrelax): Delete declaration.
8002 (HANDLE_ALIGN): New macro; calls i960_handle_align.
8003 (NEED_FX_R_TYPE, NO_RELOC): New macros.
8004
a457f4d9
KR
8005Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
8006
8007 * config/sparc.mt: New file. Grab sparc opcode table from bfd
8008 library.
8009
4b857710
ILT
8010Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
8011
8012 * Makefile.in: always create installation directories. Removed
8013 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
8014 FLAGS_TO_PASS to recursive makes.
8015
0cca30f3
KR
8016 * doc/Makefile.in: always create installation directories.
8017
f7e9bc5a
SC
8018Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8019
8020 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
8021 being used with args swapped, causing occasional lossage when
8022 refilling buffers after an include file.
8023
c1c28543
KR
8024Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
8025
8026 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
8027 version. Discard bogus DONTDEF version.
8028 (as_warn, as_bad, as_fatal): Likewise.
8029
2e20e59a
KR
8030Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
8031
8032 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
8033 selected architecture, print a message saying so and listing what
8034 processors support it, rather than saying "operands mismatch".
8035
c8c7e0bf
KR
8036Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
8037
8038 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
8039
8040 * config/ho-rs6000.h (M_RS6000): Don't define it.
8041 (free): Declare it.
8042 (BROKEN_ASSERT): Define it if not __STDC__.
8043
7f2cb270
KR
8044Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
8045
8046 * sparc.mt: New file.
8047
8048Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
8049
8050 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
8051 if TN_SUN3; otherwise align to 2**N-byte bounary.
8052
7fd3560a
SC
8053Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8054
8055 * read.c (s_fill): make the .fill size clamped error a warn and
8056 fix bug where 0's were always placed.
8057
7f2cb270
KR
8058 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
8059 two bytes of any constant with 0xff:
8060
62594bd7
SC
8061Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8062
8063 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 8064 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 8065
7f2cb270
KR
8066Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
8067
8068 * tc-m68k.c (try_index): Error if index scaling specified and
8069 assembling for an older CPU than a 68020.
8070
680227f3
KR
8071Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
8072
8073 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
8074 fx_offset into account.
8075
c51ccfd5
KR
8076Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
8077
8078 * configure.in (mips host): Accept "ultrix" with version number.
8079
8080 * expr.c (floating_constant): Separate "=-" to avoid confusing
8081 ancient or broken compilers.
8082
8083 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
8084 processor/opcode mismatch, so reword the error message.
8085 (md_assemble): If no CPU has been set (even if FPU/PMMU
8086 characteristics have been), default to 68020. Don't need extra
8087 quotes around error string.
8088
14f1fc24
JW
8089Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8090
8091 * read.c (potable): Revert sac's incorrect change made Jul 13.
8092 Align really is supposed to be ptwo not nbytes.
8093
8094Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
8095
8096 * Makefile.in: _Do_ include libiberty. (from sef)
8097
8098Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
8099
8100 * expr.c (integer_constant): Handle "0f" and "0b" label references
8101 properly.
8102
462088b8
SC
8103Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8104
8105 * write.c (fixup_segment): if relaxing, don't do anything.
8106 * config/obj-bout.[ch] : maintain the a_relaxable file header info
8107 * config/tc-i960.c: new option -linkrelax
8108
8109Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8110
8111 * expr.c (expr): allow SEG_BSS in expressions
8112 * read.c (potable): align should be nbytes, not ptwo!
8113 * write.c (write_object_file): extra glue for new bss attributes
8114 (relax_segment): SEG_BSS is ok now
8115 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
8116
7f2cb270
KR
8117Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
8118
8119 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
8120
462088b8
SC
8121Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
8122
8123 * configure.in: recognize m680x0 as having sun3 emulation mode for
8124 vxworks environment.
8125
8126
0b0b5dba
DHW
8127Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
8128
8129 * Makefile.in: Add program_suffix (parallel to program_prefix)
8130
7c2d4011
SC
8131Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8132
8133 * app.c (process_escape): new function to handle escapes the right
8134 way, (do_scrub_next_char): use new function
8135 * cond.c (s_ifdef): do ifdef/ifndef right
8136 * read.c (s_fill): make the , expressions optional like the doc
8137 says
8138 * config/tc-h8300.[ch]: better warnings
8139
90d49457
SC
8140Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8141
65bfcf2e
SC
8142 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
8143 as data0_frchainP
8144
8145 * write.c (write_object_file): various changes to handle data in
132239bf 8146 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 8147
7f2cb270
KR
8148 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
8149 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
8150 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
8151 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
8152 it into SEG_BSS
462088b8 8153
f8701a3f
SC
8154Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8155
8156 * expr.c(expr): allow SEG_REGISTER in expressions.
8157 * read.c(pseudo_set): register expressions can be the source of a
8158 set.
8159 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
8160 goto SEG_TEXT (if a.out)
8161 * write.c (write_object_file): If a.out don't use the old way for
8162 -R.
8163 * config/obj-a.out (s_sect): complain if the user tries to use a
8164 subsegment with a value which might interfere with out -R hackery.
8165 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
8166 rather than use ugly if tree. (init_regtable): insert register
8167 names into symbol table.
8168
ebfb4167
MT
8169Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
8170
8171 * write.c (write_object_file): keep the fix_tail clean, which
8172 fixes a bug in -R where relocations were being lost.
8173
8174Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
8175
8176 * configure.in: recognize m680x0 as having sun3 emulation mode for
8177 vxworks environment.
8178
8179Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
8180
8181 * configure.in: recognize m680x0 as an m68k
8182
dfd53fe9
JW
8183Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8184
8185 * configure.in: Recognize sparclite as a sparc variant.
8186
7f2cb270
KR
8187 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
8188 -Asparclite flag.
8189
d312e231
SC
8190Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8191
8192 * config/tc-a29k.c: lint
8193 * listing.c, expr.c: patches from Andrew Smith
8194
0cca30f3
KR
8195Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8196
8197 * doc/Makefile.in: use m4 rather than gm4.
8198
7f2cb270
KR
8199Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8200
8201 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
8202 calc the base of relocs correctly.
8203 * tc-a29k.c (parse_operand): allow expressions to be in any section.
8204
d312e231
SC
8205Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
8206
8207 * as.c, write.c: use -K rather than -k for the broken word warning
8208 option.
8209
fa493b93
RP
8210Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
8211
8212 * Makefile.in: do not print recursion lines.
8213
d96c09ed
RP
8214Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8215
8216 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
8217
8218Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
8219
8220 * write.c (write_object_file): For b.out format, round up section
8221 start addresses to match required alignment.
8222
81484684
KR
8223Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
8224
8225 * Makefile.in (install): Install into $(tooldir)/bin, since that's
8226 where gcc looks for it.
8227
3876b4c5
SEF
8228Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
8229
8230 * Makefile.in: Changed some lines to be less confusing for some
8231 makes.
8232
8233 * input-file.c: Conditionalize on _IOFBF, not VMS.
8234
8235 * read.c, write.c: Change a series of ifdef/elif to
8236 ifdef/else/ifdef etc.
8237
8238Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
8239
8240 * symbols.c (fb_label_init): fix sizeof to memset.
8241
95a925b8
RP
8242Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
8243
3876b4c5
SEF
8244 * Makefile.in: install the man page.
8245
95a925b8
RP
8246 * Makefile.in: pass down MAKEINFO explicitly on info.
8247
0cca30f3
KR
8248 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
8249
5d53038b
SC
8250Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8251
8252 * flonum-const.c: renamed flonum-konst.c to stop dos name
8253 conflict.
8254
7f2cb270
KR
8255Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
8256
8257 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
132239bf 8258 tc-m68k.h to te-sun3.h.
7f2cb270 8259
8c1b25e4
RP
8260Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
8261
8262 * configure.in: vxworks68 gets te-sun3.h.
8263
8264 * expr.c: remove limitation that local_labels_dollar or
8265 local_labels_fb must be < 10.
8266
8267 * symbols.c: remove local_labels_dollar, replace with a function
8268 interface for a sparse array. All users adjusted.
8269
7f2cb270
KR
8270 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
8271
0cca30f3
KR
8272Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8273
8274 * doc/Makefile.in: commented out line for building as-all.texinfo.
8275 This is temporary.
8276
8277 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
8278
8c1b25e4
RP
8279Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
8280
8281 * Makefile.in: added check target.
8282
8283Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8284
8285 * Makefile.in: added tooldir and program_prefix.
8286
8287Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
8288
8289 * write.{c,h} (fix_new): Make these declarations consistent.
8290
1651b22d
MT
8291Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
8292
8293 * Makefile.in (strerror.o): Add rule so that broken Sun make can
8294 work in subdirs.
8295
5373c439
SC
8296Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
8297
8298 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
8299
8300 * expr.c (operand): if can't work out what sort of operand it is,
8301 then look through FLT_CHARS for a hint.
8302
8c1b25e4
RP
8303Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
8304
8305 * Makefile.in, configure.in: removed traces of namesubdir,
8306 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
8307 copyrights to '92, changed some from Cygnus to FSF.
8308
0cca30f3
KR
8309 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
8310 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
8311 copyrights to '92, changed some from Cygnus to FSF.
8312
f24f7577
SC
8313Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8314
14d3e47b
SC
8315 * expr.c: If an expression is single comma, then return with
8316 SEG_ABSENT rather than an error - since the sparc front end does
132239bf 8317 really strange things with things like fbge,a
14d3e47b 8318
f24f7577
SC
8319 * as.h: include bfd.h if using many sections
8320 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
8321 local labels didn't work.
8322 * listing.c (list_symbol_table): don't core dump when there's no
8323 symbol there.
8324 * write.c, write.h: call fix_new with the right number of args on
8325 the H8.
8326 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
8327 errors nices
8328
c593cf41
SC
8329Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
8330
8331 * app.c: MRI compatibility - allow single quote to start a string.
8332 * as.c: fix typo recently introduced.
8333 * as.h : Don't include aout/reloc.h - it's not right for COFF!
8334 * expr.c: Much rewriting, to accomodate MRI syntax for
8335 expressions. Also easier to read now.
8336 * listing.c: Put back defuns
8337 * read.c: modified to accept MRI syntax, put back listing pseudo
8338 ops so that an assembler built with NO_LISTING ignores list ops
8339 rather than pukes.
8340 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
8341 machine is a SPARC or a 29K.
8342 * config/obj-aout.c: added s_sect pseudo op
8343 * config/obj-coffbfd.c: lints, set the filehdr flags right and
8344 fill in the timestamp.
8345 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
8346 anymore, define all the relocs which the tc-<x> bit will use so we
8347 can translate from them to the coff types.
8348 * config/tc-a29k.c: reloc_type isn't ane enum any more
8349 * config/tc-m68k.c: Added NO_RELOC definition.
8350
2d97273c
RP
8351Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
8352
c593cf41
SC
8353 * Makefile.in: put header files before C source for TAGS; remove
8354 references to non-existent syscalls.h.
8355
2d97273c
RP
8356 * read.c, write.c subsegs.c: back out the .bss changes.
8357
7f2cb270
KR
8358 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
8359
8360 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
8361
8362 * a.out.h: removed.
8363
6d5460ab
RP
8364Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
8365
8366 * symbols.c (local_label_name): symbols now start with ^A.
8367
8368 * read.c, subsegs.c, write.c obj-coff.c: added handling of
8369 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
8370 generate these sections. .align: will use NOP_OPCODE or 0
8371 for padding. This is just for being nice to the
8372 disassembler.
8373
8374 * expr.c (operand): changed to generate local label "\001L0"
8375 starting with a ^A so that it is recognized as a local label.
8376
8377 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
8378
7f2cb270
KR
8379 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
8380 i/o opcodes - inb, inw, outb and outw. string manipulation with
8381 att syntax - scmp, slod, smov, ssca, ssto.
8382
8383 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
8384 to just after .file .
8385
8386 In obj_crawl_symbol_chain() where it tries to put the external
8387 symbols apart, with the condition:
8388 (!S_IS_DEFINED(symbolP) &&
8389 !S_IS_DEBUG(symbolP) &&
8390 !SF_GET_STATICS(symbolP))
8391 it was moving too many symbols out. So I switch it back to the
8392 condition:
8393 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
8394
8395 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
8396 so that we don't use the F_RELFLG which make the linker complain
8397 that somebody has stripped the relocation info.
8398
8399 Also, the AIX ld program require that the relocation table
8400 is sorted by r_vaddr like the standard ATT assembler does.
8401
8402 [he also changed the sizeof(struct ...)'s into the coff
8403 style FOOSZ macros. I'm not sure this is right, but I can't
8404 remember why. xoxorich.]
8405
d6e344db
RP
8406Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
8407
8408 * Makefile.in, configure.in, doc: use the doc. Build it, install
8409 it, clean it, etc.
8410
eb9eacd3
RP
8411Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
8412
aa3782d2
RP
8413 * read.c: white space and comments only.
8414
f816adbc
RP
8415 * configure.in: use the new atof-ns32.c for ns32k.
8416
eb9eacd3
RP
8417 * write.c: comment change only.
8418
7f2cb270
KR
8419 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
8420 aren't yet integrated.
8421
8422 * tc-i860.[hc]: blew off the dust. Something must still be done
8423 about conflicting relocation types.
8424
8425 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
8426 real thing.
8427
8428 * tc-i960.c, tc-sparc.c: white space and comments only.
8429
8430 * tc-a29k.h: delete duplicate macro definition.
8431
8432 * new file atof-ns32k.c copied from hack's last unreleased gas.
8433
542e1629 8434Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 8435
eb9eacd3
RP
8436 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
8437 rather than abort.
132239bf 8438
542e1629
RP
8439 * nearly everything. flush ChangeLog, package as gas-1.92.1.
8440 ChangeLog's prior to this are sketchy at best. I have logs.
8441 They just aren't ChangeLogs.
33e61c95
ILT
8442
8443\f
8444Local Variables:
de442a3c
ILT
8445mode: indented-text
8446left-margin: 8
8447fill-column: 74
33e61c95
ILT
8448version-control: never
8449End:
This page took 0.526586 seconds and 4 git commands to generate.