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