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