* somread.c (check_strange_names): Filter names emitted by the HP
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
3f81f3cf
MM
1Fri Mar 3 16:26:19 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2
3 * tc.h (md_apply_fix3): If MD_APPLY_FIX3 is defined, declare
4 md_apply_fix3.
5
6 * write.c (fixup_segment): If MD_APPLY_FIX3 is defined, call
7 md_apply_fix3 with the normal 2 arguments and the current segment
8 pointer instead of md_apply_fix.
9
10 * config/tc-ppc.h (MD_APPLY_FIX3): Define.
11
12 * config/tc-ppc.c (ppc_elf_validate_fix): Warn if -mrelocatable
13 and a non PC relative relocation that isn't in the .got2 segment
14 was performed.
15 (md_apply_fix3): Rename from md_apply_fix and take segment pointer
16 as third argument. If ELF object format, call ppc_elf_validate_fix
17 for normal relocations.
18 (md_parse_option): If ELF object format, recognize the
19 -mrelocatable switch.
20
21Thu Mar 2 16:34:44 1995 Ian Lance Taylor <ian@cygnus.com>
22
23 * config/tc-i386.h (AOUT_MACHTYPE): Define as 100, not 0.
24
33d8f469
KR
25Tue Feb 28 18:29:27 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
26
27 * config/tc-arm.c, config/tc-arm.h (md_operand): Replaced empty
28 function in .c file with empty macro in .h file.
29 * config/tc-h8500.*, config/tc-hppa.*, config/tc-i386.*,
30 config/tc-i860.*, config/tc-i960.*, config/tc-ns32k.*,
31 config/tc-ppc.*, config/tc-sh.*, config/tc-sparc.*,
32 config/tc-tahoe.*, config/tc-vax.*, config/tc-w65.*,
33 config/tc-z8k.*: Ditto.
34start-sanitize-rce
35 * config/tc-rce.*: Ditto.
36end-sanitize-rce
37
38 * read.c (s_app_line): Ignore non-positive line numbers.
39
0877841d
ILT
40Tue Feb 28 15:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
41
42 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust PLT or
43 GOT relocs either.
44
d2c02060
KH
45Mon Feb 27 13:03:41 1995 Kung Hsu <kung@mexican.cygnus.com>
46
47 * configure.in: add a29k-*-vxworks configuration.
48
7811254c
ILT
49Fri Feb 24 14:41:15 1995 Ian Lance Taylor <ian@cygnus.com>
50
d2c02060
KH
51 * config/tc-mips.c (load_register): Take dbl argument to determine
52 handling of signed 32 bit values in 64 bit modes. Change all
53 callers.
54 (macro): Handle M_DLI and M_DLA_AB.
7811254c 55
e386acc8
JL
56Wed Feb 22 23:10:56 1995 Jeff Law (law@snake.cs.utah.edu)
57
58 * config/tc-hppa.c (md_apply_fix): Don't subtract the value of the
59 add symbol if it's a common symbol (the value of a common symbol
60 is its size, not a value in the traditional sense).
61
546f5536
ILT
62Wed Feb 22 21:12:28 1995 Ian Lance Taylor <ian@cygnus.com>
63
64 * config/tc-mips.c (append_insn): If listing_prev_line is called,
65 call frag_grow to make sure there is still room for a variant.
66
7a3761e1
ILT
67Fri Feb 17 14:50:08 1995 Ian Lance Taylor <ian@cygnus.com>
68
61420a20
ILT
69 * config/tc-mips.c (md_pseudo_table): Add 2byte, 4byte and 8byte
70 if OBJ_ELF. From gary@Intrepid.COM (Gary Funck).
71
7a3761e1
ILT
72 * config/obj-elf.c (elf_frob_symbol): Warn if a symbol is both
73 weak and common.
74 * config/obj-aout.c (obj_aout_frob_symbol): Likewise.
75
5836732b
MM
76Fri Feb 17 12:43:47 1995 Michael Meissner <meissner@tiktok.cygnus.com>
77
78 * config/tc-ppc.c (md_pseudo_table): Don't redefine byte under
79 ELF.
80 (ppc_elf_cons): Don't support @pcrel any more, since DIFF_EXPR_OK
81 allows the normal expressions to generate it.
82 (md_apply_fix): Convert BFD_RELOC_32 with pcrel bit set into
83 BFD_RELOC_32_PCREL. Abort if either BFD_RELOC_16 or BFD_RELOC_8
84 need PC relative relocations.
85
86 * config/tc-ppc.h (DIFF_EXPR_OK): Define to allow PC relative
87 expressions to be handled.
88
b8ed3de3
DE
89Thu Feb 16 14:30:13 1995 Doug Evans <dje@cygnus.com>
90
91 * expr.c (operand): Move md_operand handling to default case
92 (so it works).
93
efc538ba
ILT
94Wed Feb 15 16:08:47 1995 Jason Molenda <crash@cygnus.com>
95
96 * config/tc-h8500.c (tc_coff_symbol_emit_hook): Add ignored
97 parameter, to match prototype.
98
4a6b2f8b
MM
99Wed Feb 15 15:07:00 1995 Michael Meissner <meissner@tiktok.cygnus.com>
100
101 * config/tc-ppc.c (md_pseudo_table): If ELF, go to ppc_elf_cons
102 instead of cons.
103 (md_show_usage): Show all of the PowerPc options.
104 (ppc_elf_suffix): New function to recognize ELF suffixes that
105 specify a relocation, such as @GOT.
106 (ppc_elf_cons): Replacement for the standard cons function that
107 knows about the ELF suffixes.
108 (ppc_fixup): Add reloc field to hold non-standard relocation.
109 (md_assemble): Handle ELF suffixes like @GOT.
110 (md_create_short_jump): Dummy in case WORKING_DOT_WORD is not
111 defined.
112 (md_create_long_jump): Ditto.
113 (md_short_jump_size): Ditto.
114 (md_long_jump_size): Ditto.
115 (md_apply_fix): Handle BFD_RELOC_32_PCREL, BFD_RELOC_LO16,
116 BFD_RELOC_HI16, BFD_RELOC_HI16_S, BFD_RELOC_PPC_TOC16, and
117 BFD_RELOC_16 relocations. If relocation can not be found, print
118 the decimal value of the relocation.
119
b2b8c24e
ILT
120Wed Feb 15 11:46:02 1995 Ian Lance Taylor <ian@cygnus.com>
121
49ad0c4c
ILT
122 * config/tc-mips.c (md_apply_fix): Accept BFD_RELOC_16, for
123 DWARF. From gary@Intrepid.COM (Gary Funck).
124
adcf2b9d
ILT
125 * config/tc-mips.c (macro): Handle M_U{L,S}D[_A] (unaligned double
126 loads and stores).
127
128 * config/tc-i386.c (tc_i386_fix_adjustable): Do adjust global
129 symbols if OBJ_AOUT.
130
b2b8c24e
ILT
131 * config/tc-mips.c (macro): Don't use the target register as a
132 base register when building the address for M_L{W,D}{L,R}_AB.
133
08b7351f
ILT
134Mon Feb 13 14:44:32 1995 Ian Lance Taylor <ian@cygnus.com>
135
b2b8c24e
ILT
136 * config/tc-mips.c (KT0, KT1): Define.
137 (mips_ip): Recognize $kt0 and $kt1 as register names.
138
08b7351f
ILT
139 * config/tc-sparc.h (tc_fix_adjustable): Define if OBJ_ELF.
140 * config/tc-sparc.c (md_apply_fix): If OBJ_ELF, subtract out the
141 value of a defined symbol; the value was added in by
142 fixup_segment. This was previously corrected, if the reloc was
143 changed to be against a section symbol, in tc_gen_reloc.
144
145start-sanitize-arc
146Mon Feb 13 10:02:35 1995 Doug Evans <dje@canuck.cygnus.com>
147
148 * config/tc-arc.h (TC_PARSE_CONS_EXPRESSION): Define.
149 (TC_CONS_FIX_NEW): Define.
150 * config/tc-arc.c (get_arc_exp_operand_type): New function.
151 (init_opcode_tables): Insert registers into global symbol table.
152 (md_assemble): Call `expression' to parse all expressions.
153 Call `get_arc_exp_operand_type'.
154 (md_operand): Recognize %st(foo).
155 (arc_parse_cons_expression): New function.
156 (arc_cons_fix_new): New function.
157 (md_apply_fix): Handle new reloc BFD_RELOC_ARC_B26.
158end-sanitize-arc
159
e13a80f7
ILT
160Fri Feb 10 14:04:04 1995 Ian Lance Taylor <ian@cygnus.com>
161
162 * config/tc-i386.c (tc_i386_fix_adjustable): Use S_IS_EXTERN
163 rather than !S_IS_LOCAL.
164
2ec8f45e
DE
165start-sanitize-arc
166Thu Feb 9 17:44:29 1995 Doug Evans <dje@canuck.cygnus.com>
167
168 * config/tc-arc.c (md_pseudo_table): Add .cpu.
169 (comment_chars): Add ';'.
170 (arc_mach_type, mach_type_specified, cpu_tables_init_p): New globals.
171 (md_parse_option): Delete support for -mmult. Add -mcpu=xxx.
172 (md_begin): Current ARCs are little endian.
173 Call bfd_set_arch_mach to set the cpu type.
174 (init_opcode_tables): New function.
175 (md_begin): Ignore suffixes and registers not supported by cpu.
176 (md_assemble): Initialize opcode tables here.
177 Ignore opcodes not supported by selected cpu.
178 Always ask for more memory in one piece.
179 (arc_cpu): New function.
180 (md_numbers_to_chars): Support both endians (will probably be needed
181 eventually anyway).
182 (md_apply_fix): Likewise.
183 * config/tc-arc.h (LOCAL_LABEL): Delete "_.L_", gcc works around
184 dwarfout.c quirk.
185end-sanitize-arc
186
79c4bb34
ILT
187Thu Feb 9 18:16:34 1995 Ian Lance Taylor <ian@cygnus.com>
188
189 * config/tc-i386.c (md_assemble): Adjust conditions for changing
190 BFD_RELOC_32 to BFD_RELOC_386_GOTPC to handle a switch in frags.
191 Patch originally from Rob Ryan <robr@cmu.edu>.
192
193 * config/tc-i386.c: Include subsegs.h.
194 (tc_i386_fix_adjustable): Declare return value.
195 (i386_operand): Don't use an assignment directly as a condition.
196
e6d31135
JL
197Thu Feb 9 10:37:13 1995 Jeff Law (law@snake.cs.utah.edu)
198
199 * config/tc-hppa.c (md_apply_fix): In some cases subtract the
200 value of the add symbol from valp. Offsets braindamage in the
201 "machine independent" fixup_segment.
202
15f146be
KR
203Wed Feb 8 18:51:23 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
204
e10c7dfc
KR
205 * messages.c (as_abort): New function.
206 * as.h (as_abort): Declare it.
207 (abort): New macro.
208
15f146be
KR
209 Thu Jan 19 18:10:05 1995 Pat Rankin (rankin@eql.caltech.edu)
210
211 * config/vms-conf.h (HAVE_UNISTD_H): define it unconditionally.
212 * config-gas.com: test for availability of <unistd.h>; create a
213 rudimentary one if necessary.
214
06c08e9a
MM
215Tue Feb 7 13:34:46 1995 Michael Meissner <meissner@tiktok.cygnus.com>
216
217 * configure.in: Add powerpc-*-eabi support, which is the same as
218 powerpc-*-elf.
219 (configure): Rebuild with autoconf.
220
c54c7aac
KR
221Mon Feb 6 03:37:00 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
222
223 Changes from Bryan Ford <baford@schirf.cs.utah.edu> for i386
224 16-bit and msdos support:
225 * config/tc-i386.c (flag_16bit_code): New variable.
226 (set_16bit_code_flag): New function.
227 (md_pseudo_table): Added entries "code16" and "code32".
228 (md_assemble): Ensure that correct data-size prefixes get emitted,
229 based on the current mode. Ensure that 32-bit addressing will
230 always be done. Move segment-prefix handling code. (Why?) Use
231 16-bit jumps for 16-bit code, 32-bit jumps for 32-bit code.
232 * config/tc-i386.h (MAX_PREFIXES): Bump to 5.
233 (Data16, Data32): Define.
234 * doc/as.texinfo (i386-16bit): New node.
235 * configure.in (i386-*-msdos*): New target, using a.out format.
236 * configure: Regenerated.
237
e2bf6880
KR
238Thu Feb 2 15:21:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
239
240 * config/tc-m68k.c (cpu32_control_regs): New macro.
241 (m68k_init_after_args): Use it, for cpu32 processors.
242
b003a2d9
KR
243 Tue Jan 31 17:20:45 1995 Pat Rankin (rankin@eql.caltech.edu)
244
245 * config/obj-vms.c (vms_tir_stack_psect): new routine;
246 (VMS_Set_Data, VMS_Set_Psect, VMS_Store_PIC_Symbol_Reference,
247 VMS_TBT_Routine_Begin, VMS_TBT_Line_PC_Correlation): use it;
248 (VMS_Global_Symbol_Spec, VMS_Procedure_Entry_Pt): treat
249 Psect_Number as `unsigned'.
250
251 Thu Jan 26 17:06:28 1995 Pat Rankin (rankin@eql.caltech.edu)
252
253 * config/obj-vms.c: performance tuning.
254 (VMS_Symbol_type_list): convert from single list head to small
255 array of list heads;
256 (SYMTYP_HASH): new macro for accessing VMS_Symbol_type_list[];
257 (find_symbol, setup_basic_type, VMS_typedef_parse): use it;
258 (VMS_RSYM_Parse): move S_GET_VALUE() inside switch to avoid
259 calling it for uninteresting cases.
260
b4682e51
JL
261Wed Feb 1 23:52:45 1995 Jeff Law (law@snake.cs.utah.edu)
262
263 * config/tc-hppa.c (md_apply_fix): Go ahead and call
264 hppa_field_adjust to get a new value for R_DATA_ONE_SYMBOL
265 relocations in SOM.
266 (hppa_fix_adjustable): Refine somewhat.
267
e2bf6880
KR
268Fri Jan 27 21:29:53 1995 Michael Meissner <meissner@tiktok.cygnus.com>
269
270 * config/tc-ppc.h (NO_STRING_ESCAPES): Don't define if we are
271 using ELF.
272
a18a0f22
KR
273Thu Jan 26 19:03:42 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
274
275 * config/tc-h8300.c (get_specific): Add parens around | inside &.
276 (skip_colonthing): Set L_8 if ":8" is specified.
277
76e30835
ILT
278Thu Jan 26 18:38:01 1995 Ian Lance Taylor <ian@cygnus.com>
279
280 * config/tc-ppc.c (md_begin): Permit mfdec to be duplicated on the
281 601. Check that the error return from hash_insert is "exists".
282
da8fa3ba
MM
283Thu Jan 26 11:35:33 1995 Michael Meissner <meissner@cygnus.com>
284
285 * configure: Add support for configuring powerpc-*-eabi.
286
287 * config/tc-ppc.c (GOT_symbol): Define if object format is ELF.
288
289 * config/tc-ppc.h (GLOBAL_OFFSET_TABLE_NAME): Define if object
290 format is ELF and not defined to be "_GLOBAL_OFFSET_TABLE_".
291
8d9a1cce
JW
292Wed Jan 25 16:23:13 1995 Jim Wilson <wilson@chestnut.cygnus.com>
293
294 * tc-sh.c (little): Add argument IGNORE to avoid compiler warnings.
295 (md_pseudo_table): Add space for consistent formatting.
296 (COND8_RANGE, COND12_RANGE): Delete unused macros.
297 (COND8_F, COND8_M, COND12_F, COND12_M, UNCOND12_F, UNCOND12_M):
298 Correct minimum and maximum branch offsets. Add comments explaining
299 why these numbers are correct.
300
1eeb357e
ILT
301Wed Jan 25 15:32:09 1995 David Edelsohn <edelsohn@mhpcc.edu>
302
303 * config/tc-ppc.c (md_parse_option): Accept mpwr2 as a synonym for
304 mpwrx; mppc32, m603, and m604 as synonyms for mppc; and mppc64 and
305 m620 for PowerPC64 mode.
306 (ppc_symbol_new_hook): Add T0 as synonym for TC0 suffix.
307
f2224fe2
KR
308Tue Jan 24 16:44:23 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
309
310 * config/tc-vax.c (vip): Introduce new ptr-to-const local variable
311 for scanning operand string.
312
313 Sat Jan 21 17:50:38 1995 Pat Rankin (rankin@eql.caltech.edu)
314
315 * config/vax-inst.h (struct vop, fields `vop_warn', `vop_error'):
316 make them pointers to const char;
317 (struct vit, field `vit_error'): ditto.
318 * config/atof-vax.c (md_atof): rename local `littlenum_pointer'
319 to `littlenumP' to avoid shadowing file scope variable.
320 * config/tc-vax.c (vip_begin, vip_op_defaults, vip_op_1): make
321 string arguments be pointers to const char;
322 (vip): make `alloperr' const char *;
323 (vip_op): make `err' and `wrn' const char *; rename `access' to
324 `access_mode' to avoid shadowing library function.
325 * config/obj-vms.c (`symbol_name'): make it const char *;
326 (get_struct_name): cast one use of `symbol_name' to char *
327 [caller guarantees that it won't modify the pointer's target];
328 (PUT_COUNTED_STRING): use pointer to const char;
329 (VMS_typedef_parse): make `pnt2' const char *;
330 (Write_VMS_MHD_Records): make `cp' const char *;
331 (VMS_Modify_Psect_Attributes, array `Attributes'): make const,
332 and make field `Name' pointer to const char;
333
334 * as.h (`seg_name[]' declaration): pointers to const char;
335 (struct _pseudo_type, field `poc_name'): pointer to const char.
336 * subsegs.c (`seg_name[]' definition): ditto;
337 * hash.c (hash_ask): rename argument `access' to `access_type'
338 to avoid shadowing library function.
339 * write.c (variable `the_object_file'): move from file scope
340 to block scope within write_object_file(); free it after use;
341 (fixup_segment): conditionally exclude it for OBJ_VMS.
342 (cvt_frag_to_fill): rename argument `headers' to `headersP'
343 to avoid shadowing file scope variable.
344
359bb9a3
JL
345Mon Jan 23 21:42:39 1995 Jeff Law (law@snake.cs.utah.edu)
346
347 * config/tc-hppa.c (pa_ip, case 'D'): Fix typo which caused
348 miscompilation of "diag" instructions.
349
73433384
KR
350Mon Jan 23 15:51:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
351
352 * configure: Regenerated.
353
354 * config/tc-mips.c: Include libiberty.h.
355
eb10ff23
ILT
356Mon Jan 23 14:07:58 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
357
9cc7c60b
ILT
358 * config/tc-sh.h (tc_init_after_args): Don't define.
359 * config/tc-sh.c (md_begin): Remove unused variable table.
360 (md_assemble): Remove unused variable p.
361 (md_convert_frag): Cast fr_address to unsigned long for printf.
362 (md_apply_fix): Use as_warn_where rather than as_warn.
363 (sh_init_after_args): Remove empty function.
364
eb10ff23
ILT
365 * configure.in (i386-*-gnu*elf*): New target.
366
be7571b6
ILT
367Sat Jan 21 19:02:23 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
368
369 * hash.c (hash_ask): If we find the slot after wrapping around,
370 break out of the loop. Fixes bug in Jan 18 change.
371
b2683e09
KR
372Fri Jan 20 17:07:31 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
373
374 * hash.c (hash_code): Undo last change.
375
8e86815b
KR
376Thu Jan 19 14:49:47 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
377
11618ce8
KR
378 * config/tc-alpha.c (alpha_ip): Initialize local variables to keep
379 gcc quiet.
380 (gpdisp_hi16_howto): Don't use "const" with reloc_howto_type.
381 (in_range_signed): Add parens around subtraction inside shift.
382 * gasp.c (do_data): Initialize local variable "opname".
383 (istrue): Provide a default case to set "res" and keep "gcc -Wall"
384 quiet.
385 * write.c (write_contents): Deleted unused variable.
386 (print_symbol_value_1): Declare.
387 * hash.c (hash_ask): Delete disabled non-strcmp version of the
388 code, and automatic variables used only in those sections.
389 * write.c (chain_frchains_together_1): Only define local variable
390 "prev_fix" if BFD_ASSEMBLER.
391 * flonum-konst.c (dummy1): Return void.
392 * config/tc-vax.c (md_assemble): Remove two comparisons of
393 unsigned numbers versus zero.
b2683e09
KR
394 * as.h (bcopy): If neither memcpy nor bcopy is defined as a macro,
395 define to use memcpy.
11618ce8
KR
396
397 * config/tc-alpha.c, config/alpha-opcode.h: Revert 2 June changes.
398 Turns out we never got the assignment done after all.
399
8e86815b
KR
400 Cleanup of VAX and VMS code, from Pat Rankin:
401 * config/obj-vms.c: Changed exported function names to lower case.
402 (Changed call sites in write.c.) Declare VMS system function
403 names used, conditional on actually being on VMS. Changed many
404 functions that returned no useful value to now be declared to
405 return void. Removed many unused variables. Supply missing
406 return statements or values. Supply `default' case in switch
407 statements. Ensure local variables get initialized.
408 * config/tc-vax.c: Minor changes to silence "gcc -Wall".
409 * config/obj-vms.h, config/tc-vax.h: Added some missing
410 declarations.
411
29c8d82c
KR
412Wed Jan 18 13:49:26 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
413
fca2796a
KR
414 * atof-generic.c (flonum_print) [TRACE]: New function.
415 (atof_generic) [TRACE]: Print multiplier before multiplication,
416 and print multiplication result before and after copy.
417
418 * flonum-mult.c (flonum_multip): Avoid sign extension problems
419 around multiplication operation.
420
421 * atof-generic.c (ASSUME_DECIMAL_MARK_IS_DOT): Define.
422 (atof_generic) [ASSUME_DECIMAL_MARK_IS_DOT]: Check for '.'
423 explicitly instead of calling strchr.
424
29c8d82c
KR
425 * config/tc-sparc.c (sparc_ip): When scanning successive opcode
426 table entries, check names for pointer equality before doing
427 string comparisons.
428
429 * hash.c (hash_ask): Call strcmp instead of expanding it inline.
430 (hash_code): Replaced with a version from bfd.
431
432 * config/obj-coff.c (write_object_file): If COFF_FLAGS isn't
433 defined, default it to zero.
434
96d1566d
ILT
435Wed Jan 18 12:16:07 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
436
6ece68f0
ILT
437 * write.c (fix_new_internal): Clear fx_bsr on those targets which
438 use it.
439
96d1566d
ILT
440 * expr.c (operand): Parenthesize && within ||.
441 * listing.c (listing_newline): Likewise.
442 (list_symbol_table): Use %lu to print sizeof.
443 * symbols.c: Comment out unused function indent.
444 (print_symbol_value_1): Cast pointer to unsigned long for printf.
445 * config/obj-coff.c (do_relocs_for): Only declare symbol_ptr if it
446 will be used.
447 * config/tc-h8300.c (md_begin): Remove unused variable reg.
448 (get_operand): Declare type of parameter direction. Remove unused
449 variable size.
450 (get_specific): Fix comment to avoid nested comments.
451 (check_operand): Cast X_add_number to unsigned long for printf.
452 (build_bytes): Remove unused local variables output_ptr, part, and
453 high.
454 (build_bytes): Cast X_add_number to unsigned long for printf.
455 (clever_message): Remove unused variable scan.
456 (md_assemble): Remove unused variable i.
457 (tc_coff_sizemachdep): Remove unused function.
458 * tc-h8300.h (tc_reloc_mangle): Declare.
459
23f61eaa
ILT
460Tue Jan 17 10:58:06 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
461
462 * config/tc-mips.c (mips_4650): New static variable.
463 (md_begin): Handle a cpu string of "4650". If mips_4650 was not
464 initialized, set it to 0.
465 (append_insn): Don't insert nops around HI and LO on a 4650.
466 (mips_emit_delays): Likewise.
467 (mips_ip): Use INSN_ISA mask to check ISA of instruction. Check
468 for INSN_4650.
469 (md_longopts): Add m4650 and no-m4650.
470 (md_parse_option): Handle mips-cpu=4650. Handle -m4650 and
471 -no-m4650.
472 * doc/as.texinfo: Document new MIPS options.
473
a11a8d55
SC
474Sat Jan 14 23:48:13 1995 Steve Chamberlain <sac@jonny>
475
476 * config/tc-w65.c, config/tc-w65.h, config/w65.mt: Newfiles.
477 * config/obj-coff.h: Cope with w65.
478 * configure, configure.in: Recognize w65.
479
3a762a0b
KR
480Thu Jan 12 17:56:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
481
20323565
KR
482 * app.c (do_scrub_next_char) [__GNUC__ && __OPTIMIZE__]: If `get'
483 function is scrub_from_file, call scrub_from_file directly, and
484 get gcc's inlining capability into the act.
485
3a762a0b
KR
486 * Makefile.in (VMS_OTHER_OBJS): Add ../libiberty/hex.o.
487 (OBJS): Delete hex-value.o.
488 (REAL_SOURCES): Delete hex-value.c.
489 (hex-value.o): Delete dependencies.
490 * hex-value.c: Deleted.
491 * as.c (main): Call hex_init.
492 * expr.c, config/tc-mips.c: Include libiberty.h. Replace
493 hex_value array references with hex_* macros.
494
c01ebe2a
KR
495Wed Jan 11 17:51:38 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
496
3a762a0b
KR
497 * config/tc-h8300.h (COFF_FLAGS): Don't define.
498 * config/tc-h8500.h (COFF_FLAGS), config/tc-sh.h (COFF_FLAGS),
499 config/tc-z8k.h (COFF_FLAGS): Ditto.
500start-sanitize-rce
501 * config/tc-rce.h (COFF_FLAGS): Ditto.
502end-sanitize-rce
503
504 * config/obj-coff.c (KEEP_RELOC_INFO): Make sure it's always
505 defined.
506
c01ebe2a
KR
507 * config/tc-m68k.c (m68k_ip, cases AOFF and AINDEX): Don't
508 generate 68020 addressing modes for a 68000 processor.
509 (md_estimate_size_before_relax, cases PCREL and PCLEA): Ditto.
510
7a55f462
KR
511Tue Jan 10 13:34:14 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
512
513 * config/obj-coff.c (write_object_file): Don't treat h8300 and z8k
514 specially with regard to fixups.
515
aac4d5a7
KR
516Mon Jan 9 16:22:28 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
517
483971bd
KR
518 * config/tc-mips.c (RELAX_RELOC1, RELAX_RELOC2): Cast values to
519 bfd_vma before subtracting.
520
aac4d5a7
KR
521 * config/obj-coff.c (size_section): Handle rs_space like rs_fill,
522 but make sure fr_symbol is null.
523 (fill_section): Ditto.
524
1113140a
ILT
525Sun Jan 8 16:14:19 1995 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
526
527 * config/tc-mips.c (mips_ip): Fix handling of floating point
528 values when GPOPT is not defined.
529
2a6978af
KR
530Fri Jan 6 16:59:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
531
532 * gasp.c: Include string.h. Put config.h before other includes.
533
71f9b3c0
KR
534 * config/tc-alpha.c (alpha_ip): Delay calls to emit_add64 until
535 after any remaining operands are also known to match.
536
f949f7b8
KR
537Fri Dec 30 18:21:41 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
538
539 * listing.c (list_symbol_table): Build a format string based on
540 the size of the value to be printed, as long as "unsigned long" is
541 at least as wide, after handling the special case of 4-byte
542 values.
543
84951544
KR
544 * Makefile.in (dependencies): Make $(OBJS) depend on as.h and
545 everything it includes. Delete those files from per-file
546 dependencies.
547
cd3b81bd
KR
548 * as.h (relax_substateT): Now defined to be unsigned int.
549 (relax_stateT): Separate typedef from enum definition.
550 (enum _relax_state): Reordered for better punctuation. Added new
551 values rs_align_code and rs_space.
552 (lineno, struct lineno_struct): Unused, deleted.
553
554 * as.h: No longer include assert.h.
555 (as_assert): Declare.
556 (assert): New definition, calls as_assert longer needed.
557 (__PRETTY_FUNCTION__): Provide default for older versions of gcc.
558 * messages.c (as_assert): New function.
559 * gdbinit.in: Put a breakpoint there.
560
561 * read.c (s_space): Rewrite to handle general expressions.
562 Generate rs_space frags for non-constant values.
563 * write.c (cvt_frag_to_fill): Treat rs_align_code and rs_space
564 like rs_align and rs_org. Verify that fr_offset is non-negative,
565 and force frag type to rs_fill only after assertion checks.
566 (relax_segment): Treat rs_align_code like rs_align. Treat
567 rs_space like rs_org in the first switch; in the second, force the
568 operand to a constant, and use it for the growth size.
569
582d2a4d
JL
570Wed Dec 28 20:57:37 1994 Jeff Law (law@snake.cs.utah.edu)
571
572 * config/tc-hppa.c (pa_subspace): For sections with the ZERO
573 attribute, set the "bss" field in the appropriate seginfo structure.
574
4a9c666e
KR
575Wed Dec 28 15:01:01 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
576
577 * subsegs.h: Include obstack.h.
578
579Tue Dec 27 18:16:04 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
580
581 * as.h (struct frag): Enable align* components now.
582
7e2283d4
KR
583Tue Dec 20 14:56:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
584
87e48495
KR
585 * frags.c (frag_init): Call obstack_begin on `frags'.
586 * subsegs.c (subsegs_begin): Don't do it here.
587 * as.c (main): Call frag_init before subsegs_begin.
588
589 * frags.c (frag_append_1_char): New function.
590 * frags.h (frag_append_1_char): Declare it.
591 (FRAG_APPEND_1_CHAR): Call it. Old definition is commented out
592 for now.
593
594 * as.h (struct frag): Added (but commented out) new fields for
595 tracking current alignment.
596 (frag_now_fix): Changed macro to function declaration.
597 * frags.c (frag_now_fix): Define function here.
598 (frag_new): Use it instead of accessing `frags' directly.
599 * frags.h (frags): Change comment to indicate it shouldn't be
600 accessed directly.
601 * subsegs.h (struct frchain): New field frch_obstack, intended to
602 eventually replace global `frags' obstack.
603 * subsegs.c (subseg_set_rest): Use frag_now_fix instead of
604 accessing `frags' directly. Initialize fields of new frchainS
605 explicitly instead of with memset.
606 * config/obj-coff.c (obj_coff_ln) [!BFD_ASSEMBLER]: Use
607 frag_now_fix.
608 * config/tc-mips.c (s_loc), config/obj-vms.c
609 (vms_resolve_symbol_redef), symbols.c (colon): Likewise.
610
9ad5755f
KR
611 * config/tc-m68k.c (md_apply_fix_2): Use offsetT and addressT
612 instead of long and unsigned long.
613 (md_apply_fix): Cast value before passing it.
614
d675782a
KR
615 * config/obj-aout.h, config/obj-coff.c, config/obj-elf.h,
616 config/obj-som.h, config/tc-h8500.c, config/tc-hppa.c,
617 config/tc-hppa.h, config/tc-sh.c, config/tc-z8k.c: Don't rely on
618 use of ".." when including header files.
619start-sanitize-rce
620 * config/tc-rce.c: Ditto.
621end-sanitize-rce
622
623 * config/obj-coff.c (fixup_segment): Reformat condition in an `if'
624 statement.
625
7e2283d4
KR
626 * Makefile.in (SUBDIR_INCLUDES): Deleted.
627
972b2401
ILT
628Tue Dec 20 13:40:36 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
629
630 * config/obj-coff.h: Include bfd/libcoff.h, not libcoff.h.
631
632start-sanitize-arc
633Tue Dec 20 09:10:40 1994 Doug Evans <dje@canuck.cygnus.com>
634
635 * config/tc-arc.c: Delete lots of sparc pseudo-ops.
636end-sanitize-arc
637
847a01cd
ILT
638Mon Dec 19 16:53:36 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
639
640 * config/tc-mips.c (load_register): Rewrite to handle O_big 64 bit
641 constants.
642 (mips_ip): Accept O_big constants in case 'I'. Change case
643 'i'/'j' to treat an O_big constant as an out of range value.
644
60937ce7
JL
645Mon Dec 19 14:15:07 1994 Jeff Law (law@snake.cs.utah.edu)
646
b8f7596c
JL
647 * config/tc-hppa.c (pa_subspace): Make sure SEC_HAS_CONTENTS is
648 clear for a section with the "ZERO" attribute.
649
60937ce7
JL
650 * Reduce useless symbols for ELF in an attempt to make smaller
651 objects and speed up the linker.
652 * config/tc-hppa.c (struct call_info): Replace end_symbol field
653 with a size field.
654 (hppa_elf_mark_end_function): Delete unneeded function.
655 (pa_build_unwind_subspace): For the 2nd unwind relocation, use
656 the function symbol + function size instead of a special symbol
657 for the end of the function.
658 (process_exit): Compute the function size here. Don't call
659 hppa_elf_mark_end_of_function anymore.
660 (pa_procend): Likewise.
661 (hppa_fix_adjustable): Only reject 32bit relocations for SOM.
662 (elf_hppa_final_processing): Simplify.
663
88cc1324
DE
664start-sanitize-arc
665Mon Dec 19 12:57:09 1994 Doug Evans <dje@canuck.cygnus.com>
666
667 * config/tc-arc.c (arc_insert_operand): Change reg parm to pointer
668 to table entry. All callers changed.
669 (md_shortopts): New argument -mmult.
670 (md_parse_option): Recognize it.
671 (md_show_usage): Print it.
672 (md_begin): If -mmult, say we have the new multiply and shift insns.
673 (md_assemble): Fix reloc generation for 32 bit immediate values.
674 Clean up modifier handling. Try next insn if fake operand says there's
675 an error. Update to new syntax of insertion/extraction fns.
676 Recognize predefined aux regs. Don't abort if insertion fn missing.
677end-sanitize-arc
678
703139a8
KR
679Mon Dec 19 13:49:07 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
680
5cda0c7a
KR
681 * configure.in: Recognize mips-sony-bsd and mips-dec-bsd, but
682 reject other vendors until we can be sure we're consistent with
683 bfd.
684
703139a8
KR
685 * config/obj-vms.c (Create_VMS_Object_File): Instead of formatting
686 a buffer to pass to `error', just call `as_fatal' directly.
687 (VMS_Psect_Spec): Ditto.
688 (VMS_TBT_Module_Begin, VMS_TBT_Source_File, gen1,
689 VMS_typedef_parse, VMS_LSYM_Parse, VMS_Emit_Globalvalues): Call
690 as_tsktsk instead of printf.
691 (VMS_TBT_Module_Begin, VMS_TBT_Line_PC_Correlation,
692 VMS_TBT_Source_File, VMS_TBT_Source_Lines,
693 VMS_Store_Repeated_Data, VMS_Check_For_Main): Use explicit
694 integers rather than sizeof expressions using basic integer types,
695 in case host and target aren't the same. Use memcpy or COPY_*
696 macros instead of possibly unaligned word or longword assignment.
697
698 * config/obj-vms.h (OBJ_SYMFIELD_TYPE): New macro.
699 * config/obj-vms.c (VMS_Store_PIC_Symbol_Reference,
700 VMS_Check_For_Main, VMS_write_object_file): Use sy_obj instead of
701 forcing sy_number to hold a pointer.
702
b63defaa
KR
703Fri Dec 16 14:40:16 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
704
d6905776
KR
705 * config/tc-sh.c (md_begin): Don't fill in md_relax_table here.
706 (md_relax_table): Use static initialization.
707
091f3a62
KR
708 * config/tc-h8300.c (parse_exp, get_operands, clever_message,
709 md_assemble, tc_crawl_symbol_chain, md_undefined_symbol,
710 tc_headers_hook, md_operand, md_number_to_chars): Don't use DEFUN.
711
b63defaa
KR
712 * Makefile.in (CHECKFLAGS): Don't pass AS_FOR_TARGET,
713 CC_FOR_TARGET, OBJDUMP_FOR_TARGET, NM_FOR_TARGET; they're not
714 used.
715 (AS_FOR_TARGET, CC_FOR_TARGET, OBJDUMP, OBJDUMP_FOR_TARGET, NM,
716 NM_FOR_TARGET): Don't define.
717 (VMS_OTHER_OBJS): Add xmalloc.o and xexit.o from libiberty.
718 (tooldir): Use exec_prefix, not libdir.
719
719153bf
SS
720Fri Dec 16 11:07:10 1994 Stan Shebs <shebs@andros.cygnus.com>
721
254603ca
SS
722 * config/obj-coff.h: Include libcoff.h, not ../bfd/libcoff.h.
723
719153bf
SS
724 * as.h: Include progress.h.
725 * as.c (main): Call START_PROGRESS and END_PROGRESS.
726 (main, perform_an_assembly_pass): Call PROGRESS.
727
0141b6c2
ILT
728Fri Dec 16 00:46:08 1994 Ian Lance Taylor <ian@tweedledumb.cygnus.com>
729
730 * write.c (adjust_reloc_syms): Use bfd_is_und_section and
731 bfd_is_abs_section rather than comparing against &bfd_und_section
732 and &bfd_abs_section.
733
8b1f3552
JW
734Thu Dec 15 15:27:14 1994 Jim Wilson <wilson@chestnut.cygnus.com>
735
736 * config/tc-sh.c (md_begin): Use a local variable when
737 initializing md_relax_table to avoid errors about modifying a
738 const data structure.
739
7ac36f64
ILT
740Tue Dec 13 15:42:27 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
741
742 * config/tc-ppc.c (tc_gen_reloc): Remove OBJ_ELF hack which
743 appears to no longer be needed.
744
6baef6d2
ILT
745Tue Dec 13 08:04:15 1994 Ian Lance Taylor <ian@cygnus.com>
746
747 * config/tc-mips.c (macro_build): Accept BFD_RELOC_PCREL* without
748 requiring that the X_op_symbol be in the text_section.
749 (macro): Change the test for a legel expression difference to
750 correspond to changes in pseudo_set in read.c.
751
bd869652
KR
752Fri Dec 9 21:04:17 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
753
a55774a1
KR
754 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Use
755 bfd_install_relocation.
756
3504635a
KR
757 * ecoff.c (ecoff_set_gp_prolog_size): If there is no current
758 routine, just return.
759
bd869652
KR
760 * config/tc-alpha.c (alpha_ip, case 'B', subcase 'c'): Use opcode
761 value from pattern instead of assuming jsr.
762 * config/alpha-opcode.h (jmp): Add a "1,Bc" form.
763
4181c985
KR
764Thu Dec 8 17:48:25 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
765
b8f52750
KR
766 * Makefile.in (NM_FOR_TARGET): Use ../binutils/nm.new, not just
767 plain nm.
768
4181c985
KR
769 * configure.in (ns32k-pc532-mach*): Select correct emulation.
770 (mips-sony-bsd*): Use ecoff.
c5745996 771 (mips-*-gnu*): New target, using aout format, from Roland McGrath.
4181c985
KR
772 * configure: Regenerated.
773
6ea93cc9
DE
774start-sanitize-arc
775Tue Nov 29 18:12:22 1994 Doug Evans <dje@canuck.cygnus.com>
776
777 * configure.in (arc-*-elf*): Recognize.
778 * configure: "regenerated".
4181c985 779 * config/tc-arc.c, config/tc-arc.h, config/arc.mt: New files.
6ea93cc9
DE
780end-sanitize-arc
781
75af551f
KR
782Tue Nov 29 13:58:10 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
783
d2a0c9f9
KR
784 Use libiberty version of xmalloc:
785 * Makefile.in (REAL_SOURCES): Delete xmalloc.c.
786 (OBJS): Delete xmalloc.o.
787 (xmalloc.o): Delete dependencies.
788 * as.c (main): Call xmalloc_set_program_name once program name is
789 known.
790
75af551f
KR
791 * config/tc-alpha.c (in_range_signed, in_range_unsigned): New
792 routines, split from in_range.
793 (in_range): Deleted. All calls changed to in_range_*signed.
794 (create_lita_section): Macro deleted. Single use expanded in
795 place.
796 (alpha_ip): Handle `t' and `8' operand types.
797 (md_apply_fix): Handle BFD_RELOC_12_PCREL. Print name of
798 unhandled relocation types.
799 * config/alpha-opcode.h: Added HALT and DRAINA. Disabled MOVI,
800 since it doesn't work, and isn't supported by the native
801 assembler.
802
803 * input-scrub.c: Change wording of a comment to avoid interference
804 with Cygnus source-control tools.
805
806 * as.h (errno) [NEED_DECLARATION_ERRNO]: Declare.
807
808 * config/tc-m68k.c (init_table): List buscr and pcr control
809 registers.
810 (m68k_ip, case 'J'): Handle them.
811
23c17fea
KR
812 Delete signal handler code. It's been disabled since March 1993
813 without complaints.
814 * as.c: Don't include signal.h.
815 (got_sig): Unused function deleted, declaration deleted.
816 (SIGTY): Macro deleted.
817 (main): Deleted disabled code for establishing signal handler.
818
4181c985 819start-sanitize-rce
75af551f
KR
820 Tiemann should've noted something like this:
821 * config/tc-rce.c, config/tc-rce.h: New files.
822 * as.c (main) [TC_RCE]: Call dump_literals.
823 * configure.in: Handle rce-*-aout.
824 * configure: Regenerated.
4181c985 825end-sanitize-rce
75af551f 826
326fe1a3
DE
827Mon Nov 28 11:37:35 1994 Doug Evans <dje@canuck.cygnus.com>
828
829 * app.c (do_scrub_next_char): Insert missing newline at end of file
830 like warning says we do.
831
e07f8926
JL
832Mon Nov 28 00:11:15 1994 Jeff Law (law@snake.cs.utah.edu)
833
834 * config/tc-hppa.h (pa_check_eof): Declare new extern function.
835 (tc_frob_file): Define to call pa_check_eof.
836
837 * config/tc-hppa.c (pa_check_current_space_and_subspace): New
838 function to verify the current space and subspace are reasonable.
839 Call for the appropriate pseudo-ops and before instruction parsing.
840 (pa_check_eof): New function to verify enter/exit and proc/procend
841 pairs match at EOF.
842 (pa_code): Simplify.
843
844 * config/obj-som.c: Delete #if 0 code.
845
3f67e000
SC
846Wed Nov 23 19:36:09 1994 Steve Chamberlain (sac@jonny.cygnus.com)
847
3f81f3cf
MM
848 * config/obj-coff.h (TARGET_FORMAT): Select between coff-shl and
849 coff-sh.
3f67e000
SC
850 * config/sh.mh (TARG_CPU_DEPENDENTS): Get it right.
851 * config/tc-sh.c (little): New function.
852 (md_parse_option): Notice new option.
853 (build_relax, build_Mytes, md_atof, md_convert_frag, md_apply_fix):
854 Cope with little endian data.
855 * config/tc-sh.h (COFF_MAGIC, LISTING_HEADER): Endian dependent.
856
32c7d5d8
JL
857Wed Nov 23 10:54:38 1994 Jeff Law (law@snake.cs.utah.edu)
858
859 * config/tc-hppa.c (tc_gen_reloc, ELF variant): Revert last
860 change. The real bug was in bfd/elfcode.h and has been fixed.
861
740e5428
JL
862Tue Nov 22 23:31:20 1994 Jeff Law (law@snake.cs.utah.edu)
863
864 * config/tc-hppa.c (tc_gen_reloc, ELF variant): Add section->vma
865 to the relocation's offset.
866
aa30c7ee
SC
867Tue Nov 22 14:37:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
868
869 * Makefile.in (INSTALL_XFORM): Fix typo.
870
3a443b1e
C
871Tue Nov 22 10:23:25 1994 J.T. Conklin <jtc@rtl.cygnus.com>
872
873 * config/tc-alpha.c (s_alpha_set): Ignore the .set (no)move and
874 .set (no)volatile directives.
875
e67b3aa3
JL
876Tue Nov 15 21:44:13 1994 Jeff Law (law@snake.cs.utah.edu)
877
3a443b1e
C
878 * config/tc-hppa.c (pa_subspace): Make sure to always reset
879 current_subspace.
880 (pa_text, pa_data): Likewise.
881
e67b3aa3
JL
882 * config/tc-hppa.c (pa_align): New function. Aligns the current
883 offset within the current subspace along with updating the
884 alignment of the subspace itself.
885 (pa_subspace): Default alignment to one byte rathern than zero
886 bytes to avoid setting alignment to log2(0).
887 (md_pseudo_table): Use pa_alignment for .align.
888
8de6b5f8
KR
889Tue Nov 15 15:24:45 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
890
891 * messages.c (as_fatal): Always put a space after "fatal error:"
892 when printing message.
893
1a9a95bb
JL
894Tue Nov 15 11:10:43 1994 Jeff Law (law@snake.cs.utah.edu)
895
896 * config/tc-hppa.h (obj_frob_symbol): Delete.
897 (tc_frob_symbol): Make definition conditional on OBJ_SOM or
898 OBJ_ELF. For ELF subtract out symbol->section->vma for non common
899 symbols.
900
757d4129
KR
901Wed Nov 9 14:53:03 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
902
903 * config/te-delta.h: New file, derived from te-sysv32.h.
904
642b6186
ILT
905Wed Nov 9 11:52:44 1994 Ian Lance Taylor (ian@cygnus.com)
906
907 * config/tc-ppc.c (ppc_bf): Always set coff_line_base.
908
f4c01c95
KR
909Mon Nov 7 01:58:49 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
910
642b6186
ILT
911 * Makefile.in (VERSION): Bump to 2.5.3.
912
3e7acf98
KR
913 * configure.in: Compare generic cpu name against "sparc", not
914 "sparc*", since sparc variants should be changed to "sparc".
915 * configure: Regenerated with autoconf 2.1.
916
f4c01c95
KR
917 * config/tc-a29k.c (octal, toHex): Variables deleted.
918 (isoctal): Macro deleted.
919 (md_begin): Don't initialize them.
920 (machine_ip, case 'P'/'A'): For absolute operand, generate an
921 error message if it's out of range.
922 (md_apply_fix, case RELOC_JUMPTARG): Check range for PC-relative
923 jumps.
924 (md_apply_fix): Delete code inside "#if 0".
925
5b162d37
KR
926Thu Nov 3 20:20:40 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
927
b4123234
KR
928 * config/go32.mh: Unused file deleted.
929
5b162d37
KR
930 * read.c (get_absolute_expression): Indicate that the error may
931 merely be that the expression can't currently be reduced.
932
0cb42d6f
C
933Thu Nov 3 16:09:59 1994 J.T. Conklin (jtc@rtl.cygnus.com)
934
935 * config/tc-m68k.h (TARGET_FORMAT): If TE_NetBSD define as
936 "a.out-m68k-netbsd".
937 * config/tc-sparc.h (TARGET_FORMAT): If TE_NetBSD define as
938 "a.out-sparc-netbsd".
939
940 * config/te-nbsd.h: New file, NetBSD target emulation
941 * config/te-netbsd.h: Removed.
942 * configure.in (i[345]86-*-netbsd*,m68*-*-netbsd*,sparc*-*-netbsd*):
943 Set bfd_gas. Use nbsd emulation.
944
f2889110
KR
945Thu Nov 3 17:44:47 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
946
947 Changes from net 2.5.2 release branch:
948
949 * configure.in: Put AC_DEFINE(sparcv9) on its own line, so that
950 the shell variable settings associated with it are permanent. For
951 CPUs requiring bfd_gas=yes, select it based on CPU only, not
952 individual target names. Handle m68k-hp-hpux*, not just -hpux.
953
954 * config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument
955 to match prototype in obj-coff.h.
956
957 * configure.in: Skip tests for defining WANT_FOPEN_BIN and
958 IBM_COMPILER_SUX.
959 * acconfig.h: Deleted them.
960 * configure, conf.in: Rebuild with autoconf 2.0.
961 * config/go32.cfg, config/vms-conf.h: Updated.
962
963 * config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
964 IBM_COMPILER_SUX version of code, with comments indicating why.
965
966 * listing.c (file_info): Use text mode when opening file for read.
967 Use "r" directly, no macro.
968 * input-file.c (input_file_open): Don't use FOPEN_RT, just use
969 "r".
970 * read.c (s_include): Ditto.
971 * output-file.c (output_file_create): Try both "wb" and "w", don't
972 bother with FOPEN_* macros.
973 * as.h: Don't include fopen-*.h.
974
975 * config/alpha-opcode.h: Make "ret" with no operands equivalent to
976 "ret zero,(ra)", to match OSF1 and to be consistent with both
977 one-operand forms.
978
979 Patches from DJ Delorie:
980 * as.h (alloca): undef alloca before defining it just in case
981 * config/go32.cfg: new file for autoconf values
982 * config/te-go32.h: new file
983 * configure.bat: new for autoconf
984
985 * config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had =
986 for ==.
987
988 * configure.in: If target_frag doesn't exist, use /dev/null.
989
990 * as.c (parse_args): For non-VMS systems, re-add `v' to
991 std_shortopts. Add "verbose" to list of long options.
992
993 * write.c (adjust_reloc_syms): When generating an absolute section
994 symbol as a placeholder, don't mark it as used in a relocation
995 entry, here.
996
997 * Makefile.in (comparison): Compare using makefile code from gcc,
998 stripped down to discard subdir stuff and adapted to give a
999 non-zero exit status if either file differs.
1000
a2c49209
ILT
1001Thu Nov 3 15:43:02 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1002
1003 * config/tc-mips.c (load_address): Fix RELAX_ENCODE arguments for
1004 NO_PIC case.
1005
2622a6c2 1006Tue Nov 1 16:10:59 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
da15a93e
ILT
1007
1008 * config/tc-mips.c (s_change_sec): If not GPOPT, don't permit
1009 switching to the readonly data section.
2622a6c2
ILT
1010
1011 * ecoff.c (ecoff_directive_type): Fix warning message.
1012
ec11c09c
JL
1013Sun Oct 30 00:57:35 1994 Jeff Law (law@snake.cs.utah.edu)
1014
1015 * config/tc-hppa.c (pa_proc): Delete disabled code to put each
1016 proc in its own subspace, we're not going to use it.
1017
4bb0cc41
ILT
1018Tue Oct 25 14:44:33 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1019
94b68f04
ILT
1020 * config/tc-mips.c (macro): Ensure that mips2 case of M_LI_DD in
1021 .rdata does not become a variant frag.
1022
4bb0cc41
ILT
1023 * config/tc-mips.c (mips_cpu): Initialize to -1.
1024 (md_begin): Don't mips_cpu if it was already set.
1025 (md_parse_option): For -mipsN, don't set mips_cpu if it was
1026 already set. For -mcpu=, just set mips_cpu, not mips_isa.
1027
9da4c5d1
ILT
1028Fri Oct 21 20:42:29 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1029
1030 * config/tc-mips.c (md_pseudo_table): If OBJ_ELF, handle .section.
1031 (s_elf_section): New static function.
1032 * ecoff.c (ecoff_build_symbols): Don't abort if we don't recognize
1033 the section when setting the storage class; default to sc_Data.
1034
e443a021
JL
1035Thu Oct 20 00:43:38 1994 Jeff Law (law@snake.cs.utah.edu)
1036
1037 * config/tc-hppa.c (md_apply_fix): Set new_val to 8 for all
1038 fixups to branch instructions (not just pc-relative ones) which
1039 will generate SOM relocations.
1040
030915dc
ILT
1041Wed Oct 19 13:41:56 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1042
1043 * config/tc-a29k.c: Include ctype.h with angle brackets.
1044 (define_some_regs): Add new special register names defined on the
1045 29040.
1046 (parse_operand): Add argument opt. If non-zero, don't warn about
1047 a missing operand.
1048 (machine_ip): If handling argument type 'I', pass opt as non-zero
1049 to parse_operand. Handle new optional operand type 'I'.
1050 (md_undefined_symbol): Handle special register names (srNN).
1051
683f4743
ILT
1052Tue Oct 18 00:45:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1053
1054 * write.c (renumber_sections): New static BFD_ASSEMBLER function.
1055 (write_object_file): Call it after removing gas created sections.
1056
f10a96cb
ILT
1057Mon Oct 17 18:06:05 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1058
62d39689
ILT
1059 * symbols.c (symbol_create): Use udata.p, not just udata.
1060 * config/obj-elf.c (obj_ecoff_set_ext): Likewise.
1061 (elf_get_extr): Likewise.
1062
f10a96cb
ILT
1063 * read.c (read_a_source_file): The second argument to as_where is
1064 unsigned int *, not int *.
1065
1066Mon Oct 17 02:26:32 1994 Jeff Law (law@snake.cs.utah.edu)
1067
1068 * config/tc-hppa.c: Eliminate all uses of fx_addnumber.
1069 (tc_gen_reloc): Simplify. It's no longer necessary to set a
1070 reloc's addend field to zero for function symbols.
1071 (md_apply_fix): Simplify. For fixups which will require a SOM
1072 reloc, just clear out the necessary bits in the output file.
1073
2d928291
KR
1074Fri Oct 14 19:06:46 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1075
1076 * Makefile.in (BISON): Use bison -y, not bison.
1077
1078Thu Oct 13 19:22:54 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1079
1080 * Makefile.in (VERSION): Updated to 2.5.
1081 (clean-here): Delete stamp-mk.com.
1082 (distclean): Delete .gdbinit.
1083 * Version 2.5 released.
1084
ba49e48d
KR
1085Wed Oct 12 20:30:51 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1086
1087 * config/te-nbsd532.h: Renamed from te-netbsd532.h.
1088 * configure.in, configure: Adjusted.
1089
4992dbc9
C
1090Wed Oct 12 16:33:38 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
1091
1092 * config/cplus-dem.c: Removed. It isn't used. Even if it was,
1093 it's better to use the one in libiberty.
1094
2cc0357f
KR
1095Wed Oct 12 18:48:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1096
1097 * symbols.c (resolve_symbol_value, case O_symbol): Undo last
1098 change; it breaks the rs6000 support, and doesn't seem to be
1099 needed.
1100
eab55c1c
C
1101Wed Oct 12 11:56:50 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
1102
1103 * config/tc-i386.h,te-netbsd532.h (TARGET_FORMAT): Changed to
1104 a.out-<arch>-netbsd to match corresponding changes in BFD.
1105
f0b556a2
ILT
1106Wed Oct 12 11:06:11 1994 Ian Lance Taylor (ian@cygnus.com)
1107
1108 * config/tc-ppc.c (ppc_fix_adjustable): Resolve symbol values
1109 rather than explicitly adding the frag address.
1110 * config/obj-coff.c (coff_frob_symbol): Add a zero entry to mark
1111 the end of the line numbers; this replaces the zero entry which
1112 used to be added by coff_add_linesym, removed Oct 7.
1113 (coff_adjust_section_syms): Ignore sections with no seginfo.
1114
3256c4b5
KR
1115Wed Oct 12 01:41:37 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1116
1117 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Create a
1118 "stage" symlink to the appropriate stage* directory, and use it
1119 instead in the -B options.
1120 (comparison): Revert yesterday's change.
1121
15dc8a20
KR
1122Tue Oct 11 16:48:11 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1123
1124 * config/tc-sparc.c (tc_gen_reloc): For non-a.out relocations, if
1125 pc-relative, use fx_offset only, ignore address of relocation.
1126
c8caa6c5
ILT
1127Tue Oct 11 15:24:00 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1128
1129 * config/tc-mips.c (mips_ip): Don't use S_IS_LOCAL when checking
1130 for an embedded PIC switch expression, since the definition of
1131 S_IS_LOCAL was changed.
1132
6d60424f
KR
1133Tue Oct 11 15:05:11 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1134
1135 * Makefile.in (comparison): When comparing as.new or gasp.new, try
1136 running the binary through sed to avoid differences due to
1137 "stage1" or "stage2" having been written into the binary.
1138
15a90f75
KR
1139Sat Oct 8 01:48:04 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1140
1141 ELF symbol size handling, based on code from Eric Youngdale:
1142 * config/obj-elf.h (OBJ_SYMFIELD_TYPE): New macro. Adds an
1143 expression pointer to the symbol structure, used for `size'
1144 expressions that couldn't be reduced to constants when initially
1145 processed.
1146 (elf_frob_symbol): Declare.
1147 (obj_frob_symbol): Call elf_frob_symbol always, rather than
1148 ecoff_frob_symbol only if ECOFF_DEBUGGING defined.
1149 * config/obj-elf.c (obj_symbol_new_hook): Deleted unused code.
1150 Clear sy_obj field.
1151 (obj_elf_size): Deleted unused code. If size is non-reducible
1152 expression, allocate some storage for the sy_obj field and copy
1153 the expression.
1154 (elf_frob_symbol): New function. Computes sizes, calls
1155 ecoff_frob_symbol if appropriate.
1156
1157 * write.c (fixup_segment): For i386 elf and coff (for now), don't
1158 add in value of symbol from another defined section of the file.
1159
ecee4027
KR
1160Fri Oct 7 17:54:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1161
1162 * config/tc-m88k.h (TC_KEEP_FX_OFFSET): Define.
1163 * config/obj-coff.c (do_relocs_for): Test only TC_KEEP_FX_OFFSET,
1164 rather than both it and TC_M88K.
1165 (coff_adjust_section_syms): New function.
1166 (coff_frob_section): For non-empty sections, create aux entry for
1167 the section symbol, indicating the size.
1168 (n_line_nos): New variable.
1169 (add_lineno): Increment it.
1170 (coff_add_linesym): Increment n_line_nos, don't call add_lineno.
1171 (coff_frob_file): New function; map coff_adjust_section_syms over
1172 sections.
1173 (obj_coff_line): Only reset line_base for .bf symbols.
1174 * config/obj-coff.h (coff_adjust_section_syms, coff_frob_file):
1175 Declare.
1176 (obj_frob_file): New macro.
1177
1178 * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Renamed from
1179 obj_frob_forward_symbol, and rewritten for new parameter list.
1180
1181 Mon Oct 3 21:02:38 1994 Pat Rankin (rankin@eql.caltech.edu)
1182
1183 * config/obj-vms.h (S_IS_LOCAL): fix obsolete flagseen[] reference.
1184
1185Wed Oct 5 11:49:26 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
1186
1187 * config/obj-ecoff.c (obj_pseudo_table): Accept .esize and .etype
1188 as synonyms for .size and .type.
1189
b2d7b325
ILT
1190Wed Oct 5 00:08:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
1191
1192 * config/obj-coff.c (coff_frob_section): Remove assert about
1193 section alignment.
1194 * config/tc-sparc.c (md_section_align): Use section alignment, not
1195 xvec align_power_min field.
1196
dc87e0ce
KR
1197Fri Sep 30 19:05:20 1994 Pat Rankin (rankin@eql.caltech.edu)
1198
1199 * vmsconf.sh (make-gas.com): handle DCL verification to enable
1200 sensible feedback to the user while gas is being built.
1201
76a390e2
KR
1202Fri Sep 30 16:23:31 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1203
13a336c4
KR
1204 * Makefile.in (DISTSTUFF): New variable, listing only make-gas.com
1205 for now.
1206 (diststuff): New target; builds DISTSTUFF.
1207 (realclean): Separate target, depend on clean and distclean, then
1208 delete DISTSTUFF.
dc87e0ce
KR
1209 * make-gas.com: Deleted.
1210
76a390e2
KR
1211 * config/tc-i386.c (i386_validate_fix) [BFD_ASSEMBLER]: New
1212 function. Converts reloc for "foo-GOT" to BFD_RELOC_386_GOTOFF
1213 reloc for "foo".
1214 (i386_operand): Don't look up section symbol for
1215 undefined_section.
1216 (reloc): Always permit return of 8- and 16-bit relocation types.
1217 Add a space after "pc-relative" in the error message.
1218 (tc_i386_fix_adjustable) [BFD_ASSEMBLER]: Reject
1219 BFD_RELOC_386_GOTOFF relocs.
1220 (i386_operand): For any GOTOFF reloc, convert it to a BFD_RELOC_32
1221 with a "foo-GOT" value.
1222 * config/tc-i386.h (i386_validate_fix): Declare it.
1223 (TC_VALIDATE_FIX): New macro -- call it.
1224 (NOP_OPCODE): Cast to `char' to avoid compiler warnings.
1225
1226 * as.h: If __STDC__ is not defined and varargs.h is available, use
1227 it rather than stdarg.h.
1228
1229 * write.h (struct fix): Added new bitfield fx_plt, for fixups
1230 referring to PLT entries.
1231 * write.c (fix_new_internal): Initialize fx_plt to zero.
1232 (adjust_reloc_syms): Re-fetch `sym' after top of reduction loop.
1233 Don't adjust fx_offset by frag address, since S_GET_VALUE now
1234 includes the frag address.
1235 (fixup_segment): Changed local var PCREL to type int, added PLT.
1236 If PC-relative fixup refers to a PLT entry for a symbol in the
1237 current section, don't reduce it.
1238
1239 * write.c (adjust_reloc_syms): Exit loop through a label. If
1240 DEBUG5 is defined, print out each fixup before and after
1241 processing.
1242 (fixup_segment): If DEBUG5 is defined, print out each fixup before
1243 and after processing.
1244 (print_fixup): Added prototype. Show address on first line. Show
1245 fx_offset and fx_subsy. [!BFD_ASSEMBLER]: Only show fx_r_type if
1246 NEED_FX_R_TYPE is defined.
1247
1248 * symbols.c (print_symbol_value_1): Check S_IS_LOCAL, S_IS_EXTERN,
1249 S_IS_DEBUG, S_IS_DEFINED also.
1250
9dc6c00f
KR
1251Thu Sep 29 18:57:06 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1252
10ff87e9
KR
1253 * Makefile.in (all): Depend on .gdbinit.
1254 (.gdbinit): Rebuild from gdbinit.in by running config.status.
1255
1256 * gdbinit.in: Define new function "pf". Fix doc on "pe" and "ps".
1257
9dc6c00f
KR
1258 * write.c (print_fixup): Print source location on first line.
1259 Show fx_r_type and fx_addsy fields.
1260
648acaa0
KR
1261Wed Sep 28 14:56:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1262
b8480abc
KR
1263 * configure.in: Set bfd_gas for all sparc targets in one place,
1264 instead of separately for each. Correctly handle user-supplied
1265 "--enable-bfd-gas" option.
1266
1267 * gdbinit.in: Move "break abort" to end, in case gdb complains.
1268
1269 * as.h (PRINTF_WHERE_LIKE, PRINT_LIKE) [USE_STDARG, !__GNUC__]:
1270 Use PARAMS macro.
1271
1272 * symbols.c (resolve_symbol_value, case O_symbol): Don't do any
1273 processing if add_symbol is undefined or in expr_section.
1274 (resolve_symbol_value, case O_add): For symbol plus
1275 constant-valued symbol, convert to O_symbol and re-reduce.
1276 (S_GET_VALUE): If symbol needs resolving, resolve it.
1277 (indent_level): No longer static.
1278 (print_symbol_value_1): Don't print frag address if it matches
1279 zero_address_frag. Don't print "resolving" if already resolved.
1280 Print segment name. Don't call print_expr_1 on an undefined
1281 symbol.
1282 (print_expr_1): Fix whitespace before printing X_add_number.
1283
648acaa0
KR
1284 * expr.c (make_expr_symbol): No longer static. Use symbol_create,
1285 not symbol_new, for symbols holding expression values.
1286 * expr.h (make_expr_symbol): Move declaration here.
9ff0f5ef
KR
1287 * write.c (fix_new_exp): Handle O_add by creating an
1288 expression-valued symbol, and calling fix_new_exp recursively.
1289 (adjust_reloc_syms): If a fixup's symbol value is a sum of an
1290 undefined symbol and a constant, fold the constant into the fixup,
1291 and refer to the undefined symbol directly. Then process the
1292 fixup again from scratch.
1293 (write_object_file): Before calling adjust_reloc_syms, make a pass
1294 through the symbol list trying to resolve values.
1295
1296 * write.c (print_fixup): New routine, for debugging.
1297 (write_relocs): Call bfd_install_relocation. Deleted various
1298 hacks for working around problems with bfd_perform_relocation.
1299
1300 * Makefile.in (VERSION): Update to 2.4.90.
648acaa0 1301
7b777690
ILT
1302Wed Sep 28 11:50:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1303
620a590e
ILT
1304 * Makefile.in (gasp.o): Depends upon config.h.
1305
3f42c69e
ILT
1306 * config/tc-mips.c: Include subsegs.h.
1307 (md_apply_fix): If an unconditional b or bal overflows, and we are
1308 not assembling PIC code, replace it with a j or jal.
1309
7b777690
ILT
1310 * config/tc-mips.c (md_apply_fix): Correct branch overflow test.
1311 Use as_bad_where and as_warn_where rather than as_bad and as_warn.
1312
1313Mon Sep 26 17:15:59 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1314
1315 * write.c (write_relocs): Add file name and line number to
1316 as_fatal calls. Handle bfd_reloc_overflow case specifically when
1317 RELOC_EXPANSION_POSSIBLE.
1318
1319Fri Sep 23 16:11:28 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1320
1321 * as.h (USE_STDARG, USE_VARARGS): Define one or neither of these
1322 here. Use them for deciding which PRINTF*LIKE macro definitions
1323 to use.
1324 * messages.c: Use them, instead of NO_STDARG, NO_VARARGS.
1325 [!USE_STDARG && !USE_VARARGS] (va_alist, va_dcl, ...): Provide
1326 default definitions matching what we were doing before.
1327 (as_tsktsk): Remove the non-stdarg, non-varargs version, and
1328 always use the varargs form if not using stdarg. It's safe to
1329 always use vfprintf, because libiberty will provide it if the
1330 native system doesn't. Also, always make format be const.
1331 (as_warn, as_warn_where, as_bad, as_bad_where, as_fatal): Ditto.
1332
144659ab
ILT
1333Fri Sep 23 14:42:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1334
1335 * config/tc-mips.c (load_register): Always use addiu when adding a
1336 constant to $zero--no need to use daddiu.
1337 (macro): Hack the -mips3 overflow tests to not fail when offsetT
1338 is only 32 bits.
1339
1340 * symbols.h (copy_symbol_attributes): Declare.
1341
1342Thu Sep 22 21:58:24 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1343
1344 * listing.c: Bugfixes based in part on patches from Paul
1345 Kranenburg.
1346 (listing_newline): Check filename as well as line number when
1347 deciding whether to record it.
1348 (list_symbol_table) [S_IS_REGISTER]: Check that S_IS_REGISTER is
1349 false (if defined) as well as checking for reg_section.
1350 (listing_listing): Iterate fetching lines while line number is too
1351 low, and we haven't run off the end of the input file.
1352
1353 * config/vms-conf.h: Changed HAVE_DELETE to HAVE_REMOVE.
1354
bdaa198a
KH
1355Thu Sep 22 13:39:10 1994 Kung Hsu (kung@x1.cygnus.com)
1356
1357 * ecoff.c (ecoff_generate_asm_lineno): check if
1358 current_stabs_filename is NULL before strcmp.
cacd15c4 1359 * read.c (read_a_source_file): fix a bug in generate_asm_lineno
bdaa198a
KH
1360 checking.
1361
8068b96a
KR
1362Wed Sep 21 18:17:35 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
1363
1364 * config/ho-*.h: Now-unused files deleted.
1365
1366 * symbols.c (copy_symbol_attributes): New function. Copies BFD
1367 symbol flags and calls OBJ_COPY_SYMBOL_ATTRIBUTES.
1368 (resolve_symbol_value, case O_symbol): Call it, if X_add_number is
1369 zero. Don't call obj_frob_forward_symbol.
1370 * read.c (pseudo_set): Call copy_symbol_attributes, but only if
1371 X_add_number is zero.
1372 * config/obj-elf.h (obj_frob_forward_symbol): Deleted.
1373
144659ab
ILT
1374 * config/tc-i960.c: Lots of whitespace, comment reformatting,
1375 using GNU indent.
1376 (strchr): Don't declare.
1377 [BFD_ASSEMBLER]: Don't compile md_convert_frag,
1378 md_estimate_size_before_relax, md_ri_to_chars,
1379 md_create_short_jump, md_create_long_jump.
1380 (brtab_emit): Use data_section, not SEG_DATA.
1381
cacd15c4 1382 Mon Sep 19 17:14:44 1994 Pat Rankin (rankin@eql.caltech.edu)
8068b96a
KR
1383
1384 * config/vms-conf.h: new file, manually derived from conf.in.
1385 * config-gas.com: use it, and eliminate obsolete "host.h".
1386
3af9783a
ILT
1387Wed Sep 21 11:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1388
87bbf920
ILT
1389 * config/tc-ppc.c (ppc_current_block): New static variable.
1390 (ppc_stabx): Set sy_tc.within of a C_STSYM symbol to
1391 ppc_current_block. Don't move around any stab symbol, just those
1392 for common symbols.
1393 (ppc_bs): Set ppc_current_block.
1394 (ppc_es): Clear ppc_current_block.
1395 (ppc_frob_symbol): Set the value of a C_STSYM symbol to the offset
1396 from the csect of the enclosing block.
1397
3af9783a
ILT
1398 * config/tc-mips.c (insns_since_cache_access): Remove.
1399 (append_insn): Remove setting of insns_since_cache_access, and
1400 special 4600 handling; it turns out not to be required.
1401
e8d4d475
ILT
1402Tue Sep 20 16:13:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1403
1404 * config/tc-mips.c (md_shortopts): Remove E.
1405 (md_longopts): Add EB and EL.
1406 (md_parse_option): Handle -EB and -EL as separate options, rather
1407 than as a single -E option with an argument.
1408
8268e3ec
JL
1409Mon Sep 19 12:42:05 1994 Jeff Law (law@snake.cs.utah.edu)
1410
1411 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions
1412 involving global symbols too.
1413
eb3028aa
KR
1414Mon Sep 19 12:12:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1415
1416 * as.h: Test NEED_DECLARATION_*, not NEED_*_DECLARATION.
1417
1418 * configure.in: Test for remove, not delete. Fix cross-assembler
1419 test.
1420 * as.h: Test HAVE_REMOVE, not HAVE_DELETE; define unlink to
1421 remove, not delete.
1422
35e70f58
KR
1423 * read.c (pseudo_set, case O_symbol): If
1424 OBJ_COPY_SYMBOL_ATTRIBUTES is defined, invoke it.
1425 [BFD_ASSEMBLER]: Copy BSF_FUNCTION setting too.
1426 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define.
1427
1428 Wed Aug 10 19:15:30 1994 Pat Rankin (rankin@eql.caltech.edu)
1429
1430 * config/obj-vms.h (DSG_S_C_UBITU, DST_K_VFLAGS_DSC, DST_K_TS_ATOM,
1431 many others): new macros; values obtained from "DSTRECRDS.SDL".
1432 * config/obj-vms.h (various): use them.
1433 (USE_BITSTRING_DESCRIPTOR): new macro, for selecting bitfield
1434 representation (only enum bitfields can avoid being bitstrings).
1435 (bitfield_suffix, setup_basic_type): new routines.
1436 (VMS_typedef_parse): use them. Now recognize bitfields of all
1437 integral types, not just type `int'. Caveat: the representation
1438 used for bitfields still does not work for objects placed in
1439 registers, and gcc's optimizer sometimes puts small structs there.
1440
1441 Tue Jun 14 17:31:44 1994 Pat Rankin (rankin@eql.caltech.edu)
1442
1443 * read.c (s_text) [#if OBJ_VMS]: clear the IN_DEFAULT_SECTION
1444 bit from const_flag.
1445 * config/obj-vms.h (IN_DEFAULT_SECTION): define this macro.
1446 (tc_frob_label): define this to call vms_check_for_special_label,
1447 and declare the latter.
1448 * config/obj-vms.c (vax_g_doubles): declare this file-scope
1449 variable.
1450 (const_flag): initialize to IN_DEFAULT_SECTION instead of 0.
1451 (vms_check_for_special_label): new routine (tc_frob_label).
1452 (VMS_TBT_Routine_End): don't bother checking for `gcc_compiled.'
1453 and `gcc2_compiled.' labels; they won't reach here any more.
1454 (VMS_typedef_parse) [case 'r']: for types `double' and `complex
1455 double', use `vax_g_doubles' flag to select type of double.
1456 (VMS_write_object_file) [traceback setup]: don't pass symbols
1457 with the IN_DEFAULT_SECTION attribute to the TBT_Routine_Begin
1458 and TBT_Routine_End functions.
1459
1460 Mon Jun 6 20:52:20 1994 Pat Rankin (rankin@eql.caltech.edu)
1461
1462 * config/obj-vms.c (VMS_TBT_Routine_End): cache the result of
1463 S_GET_VALUE() to avoid many repeated function calls.
1464 (VMS_Check_For_Main) [#if HACK_DEC_C_STARTUP]: capitalize
1465 _C$MAIN_ARGS in advance, in case -h3 (leave symbol name as-is)
1466 gets requested. [All the HACK_DEC_C_STARTUP code appears to
1467 be obsolete; gcc does it automatically for vms target. It's
1468 also misnamed, because it is for the "VAX C" run-time library,
1469 not the newer "DEC C" one which has much different startup code.]
1470 {various}: use `S_SET_xxx(symbol,new_value)' rather than
1471 `S_GET_xxx(symbol) = new_value'.
1472
d1578de3
ILT
1473Mon Sep 19 12:05:03 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1474
1475 * config/obj-coff.c (c_dot_file_symbol): Use bfd_abs_section_ptr,
1476 not &bfd_abs_section.
1477
e3683042
ILT
1478Thu Sep 15 18:36:34 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1479
1480 * expr.c (clean_up_expression): Use addressT, not bfd_vma.
1481
75c28b49
JL
1482Tue Sep 13 20:05:47 1994 Jeff Law (law@snake.cs.utah.edu)
1483
fcacfef6
JL
1484 * expr.c (expr): Don't reduce the difference of two symbols in the
1485 same frag if the symbols are not in normal sections.
1486
75c28b49
JL
1487 * config/obj-som.h (S_SET_OTHER, S_SET_TYPE): Delete a.out crud.
1488 (S_SET_DESC, S_GET_OTHER, S_GET_TYPE, S_GET_DESC): Likewise.
1489 (obj_attach_unwind_info): Do not define. Not needed anymore.
1490 * config/tc-hppa.c: Delete whitespace at EOL.
1491 (struct hppa_fix_struct): Delete fx_unwind field and all references.
1492 (fix_new_hppa): Last arg is now a pointer to an int. Do not
1493 call obj_attach_unwind_info anymore. For SOM R_ENTRY and R_EXIT
1494 fixups, store 32bits of unwind information in the fx_addnumber
1495 field of the fixup.
1496 (md_assemble, pa_entry, process_exit, pa_procend): For SOM R_ENTRY
1497 and R_EXIT fixups, pass a NULL pointer to fix_new_hppa, and a
1498 pointer to 32 bits of unwind info.
1499 (tc_gen_reloc): For SOM R_ENTRY and R_EXIT fixups, set the symbol
1500 pointer to the dummy symbol; set the addend field to fx_addnumber.
1501 (pa_comm, pa_equ, pa_type_args, pa_import): Use bfd_XXX_section_ptr
1502 rather than &bfd_XXX_section.
1503
26f4447a
KR
1504Tue Sep 13 21:15:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1505
d7152d07
KR
1506 * config/tc-i386.c (md_apply_fix_1): For GOTPC relocs, decrement
1507 value by one; discard adjustments previously being made. From
1508 Eric Youngdale.
1509
26f4447a
KR
1510 VMS- and Vax-related changes from Pat Rankin:
1511 * Makefile.in (VMS_OTHER_OBJS): add concat, getopt, and getopt1.
1512 * vmsconf.sh: no longer have make-gas.com echo text about needing
1513 to modify the gcc-vms driver when intending to use with gcc 1.x.
1514 * as.c (parse_options): suppress 'v' from std_short_options and
1515 eliminate VMS-specific conditional initialization;
1516 [default case]: check for '-v' if md_parse_options doesn't recognize
1517 an option;
1518 [default case, #if VMS]: check for filename argument when '-v' seen;
1519 [case 'v']: delete.
1520 * config/tc-vax.c (md_assemble): don't rely on `this_add_number'
1521 for O_big literal operands (double floats and long long ints);
1522 [VMS, md_shortopts]: add second colon after 'v';
1523 (md_parse_options) [VMS, case 'v']: check for argument, so
1524 caller can handle `-v' w/o arg.
1525
a9898563
SC
1526Tue Sep 13 16:45:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1527
1528 * config/obj-coff.c (do_relocs_for): If TC_KEEP_FX_OFFSET
1529 is defined, put the tx_offset into the r_offset.
1530 * config/tc-sh.c (line_comment_chars): Add #
1531 (tc_reloc_mangle): Deleted.
1532 * config/tc-sh.h (TC_KEEP_FX_OFFSET): Define.
1533 (TC_RELOC_MANGLE): Delete.
1534
28d3e4a3
KR
1535Tue Sep 13 16:20:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1536
b9419dd2
KR
1537 * flonum-konst.c: Change preprocessor tests of HO_VMS to just VMS.
1538 * hex-value.c: Ditto.
1539 * config/obj-vms.c: Ditto.
1540
460531da
KR
1541 * config/tc-sparc.c (sparc_ip): Replace as_bad/exit sequence with
1542 a call to as_fatal.
1543 * config/tc-i860.c (i860_ip): Ditto.
1544 * config/tc-hppa.c (pa_ip): Ditto.
1545 * config/tc-alpha.c (alpha_ip): Ditto.
1546 * as.c (parse_args): Ditto.
1547
1548 * config/tc-mips.c (mips_ip): Replace as_warn/exit sequence with a
1549 call to as_fatal.
1550
1551 * write.c (write_contents): Use EXIT_FAILURE.
1552 * output-file.c (output_file_create, output_file_close,
1553 output_file_create, output_file_close): Ditto.
1554 * messages.c (as_fatal): Ditto.
1555 * config/obj-som.c (obj_som_version, obj_som_copyright): Ditto.
1556 * config/obj-ieee.c (write_object_file): Ditto.
1557 * config/obj-coff.c (write_object_file): Ditto.
1558 * config/tc-vax.c (main): Use EXIT_SUCCESS.
1559 * config/tc-m68k.c (main): Ditto.
1560
1561 * hash.c (main): Pass a value to exit().
1562
1563 * as.h (EXIT_SUCCESS, EXIT_FAILURE): Moved here.
1564 * as.c: ...from here.
1565 (parse_args): Use them always.
1566 (main): Use exit rather than return.
1567
28d3e4a3
KR
1568 * Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall):
1569 Rewrite handling of program_transform_name.
1570
b9419dd2
KR
1571 * configure.in: Test for functions unlink and delete.
1572 * as.h: If unlink isn't available but delete is, define unlink to
1573 be delete.
28d3e4a3
KR
1574
1575 Update for autoconf 1.118:
1576 * gdbinit.in: New file, created from old .gdbinit.
1577 * .gdbinit: Deleted.
1578 * aclocal.m4 (GAS_GDBINIT): Deleted.
1579 * configure.in: Don't use it. Instead, generate .gdbinit from
1580 gdbinit.in. Don't substitute cpu_type, obj_format, emulation,
1581 atof. Switched order of AC_LINK_FILES arguments. Use AC_PREREQ
1582 to ensure that older versions of autoconf aren't used.
1583 * Makefile.in: Added @configure_input@ line.
1584 (configure): Deleted rule.
1585
430a3997
ILT
1586Tue Sep 13 12:08:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1587
1588 * config/obj-coff.c (fixup_segment): After handling the difference
1589 of two symbols from the same segment, set fx_subsy to NULL, to
1590 satisfy existing TC_COUNT_RELOC macros.
1591
e23b25ec
KR
1592Tue Sep 13 01:47:08 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1593
1594 * aclocal.m4 (GAS_GDBINIT): New macro.
1595 * configure.in: Use it.
1596 * configure: Regenerated.
1597
c570d361
KR
1598Mon Sep 12 20:56:38 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
1599
1600 * .gdbinit (pe, ps): Define new commands.
1601 * symbols.c (indent_level): New static variable.
1602 (indent, print_expr_1, print_symbol_value_1, print_symbol_value,
1603 print_expr): New functions.
1604
1605 * Makefile.in (config-stamp): Add a "this file generated by make"
1606 message to config.h.
1607
1608 PIC implementation for i386-linux, based on code from Eric
1609 Youngdale and Paul Kranenburg, with some work of my own:
1610
1611 * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup
1612 before processing same-section pcrel relocations.
1613 (TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
1614
1615 * expr.c (make_expr_symbol): If operator is O_symbol and
1616 X_add_number is zero, just return the symbol. If operator is
1617 O_constant, resolve the symbol's value before returning.
1618 (operand): Permit use of "[]" for grouping.
1619 (clean_up_expression): For difference of two symbols in the same
1620 frag, add the difference of their offsets into X_add_number.
1621 (expr): Reduce difference of two symbols in same frag to their
1622 difference.
1623
1624 * config/tc-i386.c (TC_RELOC): New macro.
1625 (struct _i386_insn): New field disp_reloc.
1626 (GOT_symbol): New variable.
1627 (operand_special_chars): Added square-brackets and at-sign.
1628 (reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not
1629 NO_RELOC, just return it.
1630 (reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
1631 (BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More
1632 dummy macros.
1633 (tc_i386_fix_adjustable): New function. Returns zero if symbol in
1634 fixup is not local, to prevent relocations against externals from
1635 being dropped.
1636 (md_assemble): Initialize disp_reloc field to NO_RELOC. Pass
1637 disp_reloc field to reloc() function, and use TC_RELOC to generate
1638 value to pass to fix_new_exp.
1639 (md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC
1640 reloc.
1641 (i386_operand): Initialize disp_reloc field to NO_RELOC. Handle
1642 @GOTOFF, @PLT, @GOT operands. For GOTOFF relocations with local
1643 symbols, force generation of the section symbol.
1644 (md_estimate_size_before_relax): If GOT_symbol exists, decide
1645 we're generating PIC code, and convert relocations against
1646 undefined symbols from PCREL to PLT32.
1647 (md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking
1648 relocs.
1649 (md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set
1650 and return GOT_symbol if it matches.
1651 (F, MAP): Move macro definitions outside function.
1652 (tc_gen_reloc): Only switch on size and pcrel if code wasn't
1653 already supplied as PLT32. GOT32, GOTOFF, or GOTPC. Convert
1654 BFD_RELOC_32 using GOT_symbol into GOTPC.
1655 * config/tc-i386.h (TC_RELOC, tc_fix_adjustable,
1656 TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): New
1657 macros.
1658 (NEED_FX_R_TYPE): Define.
1659 (LOCAL_LABEL): Accept ".X" prefix too.
1660 (GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
1661
1b434ced
ILT
1662Mon Sep 12 17:51:39 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1663
1779d515
ILT
1664 * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
1665 reportedly to be used on Irix 6.
1666
c1444ec4
ILT
1667 * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
1668 (s_mips_globl): New static function; needed for Irix 5 support.
1669 * ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
1670 external symbol with no type, set the type to st_Proc rather than
1671 st_Global. Don't set the index of an external st_Proc or
1672 st_StaticProc symbol unless it is also a local symbol.
1673
1b434ced
ILT
1674 * read.c (read_a_source_file): The second argument to as_where is
1675 unsigned int *, not int *.
1676
326d16ca
KH
1677Thu Sep 8 17:18:24 1994 Kung Hsu (kung@mexican.cygnus.com)
1678
1679 * config/obj-ecoff.h : Change names to OBJ_GENERATE_ASM_LINENO,
1680 and generate_asm_lineno.
1681 * config/obj-elf.h : ditto.
1682 * read.h : ditto.
1683 * read.c (read_a_source_file): if no file when inst is read, set
1684 generate_asm_lineno to true.
1685 * ecoff.h : change name to generate_asm_lineno and add function
1686 ecoff_no_current_file.
1687 * ecoff.c : change name to generate_asm_lineno.
1688 * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate
1689 ecoff style line for asm file.
1690
eb4fd16f
ILT
1691Thu Sep 8 19:43:49 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1692
1693 * config/obj-coff.c (size_section): Do an fprintf to stderr rather
1694 than a printf.
1695 (fixup_segment): Use as_bad_where rather than as_bad.
1696
20c9d49a
SC
1697Wed Sep 7 17:21:12 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1698
eb4fd16f
ILT
1699 * config/tc-{h8300,sh}.[ch] (tc_coff_symbol_emit): Function doing
1700 nothing becomes macro doing nothing.
20c9d49a 1701
bf111c9f
KR
1702Wed Sep 7 19:10:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1703
353acf31
KR
1704 * Makefile.in (Makefile): Depend on config.status.
1705 (config.status): Run config.status from . instead of srcdir.
1706
72373532
KR
1707 * config/tc-i386.c (tc_gen_reloc): Use bfd_get_reloc_code_name to
1708 display the name of the relocation type that couldn't be handled.
1709 * config/tc-sparc.c (tc_gen_reloc): Likewise.
1710 * config/tc-alpha.c (tc_gen_reloc): Likewise. Deleted abort call
1711 after call to as_fatal.
1712
1713 * configure.in (i386-*-linux*): Don't set bfd_gas.
1714
1715 * Makefile.in (CC_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET,
1716 install, uninstall): Don't use "brokensed" hack any more, the new
1717 autoconf code should never let program_transform_name be empty.
1718
bf111c9f
KR
1719 Update for autoconf beta 1.112:
1720 * aclocal.m4 (GAS_CHECK_DECL_NEEDED, GAS_WORKING_ASSERT): New
1721 macros.
1722 * configure.in: Use them. Use AC_ARG_PROGRAM (now provided by
1723 autoconf) instead of my hacked-up AC_PROGRAM_TRANSFORM_NAME. Move
1724 test for CROSS_COMPILE just before AC_FUNC_ALLOCA, and emit a
1725 message to try to ease confusion about autoconf's
1726 "cross-compiling" message.
1727 * acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_FREE,
1728 NEED_DECLARATION_ERRNO): Renamed from NEED_*_DECLARATION.
1729 * configure, conf.in: Regenerated.
1730
c8570de8
ILT
1731Wed Sep 7 12:49:55 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1732
1733 * configure.in: Check ${host} and ${target} rather than
1734 ${host_canon} and ${target_canon}.
1735 * configure: Likewise.
1736
8c63448a
ILT
1737Tue Sep 6 11:42:38 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1738
1739 * config/tc-mips.c (mips_cpu): New static variable.
1740 (insns_since_cache_access): New static variable.
1741 (md_begin): Set mips_cpu as well as mips_isa.
1742 (append_insn): If mips_cpu is 4600, require four nop instructions
1743 between an instruction which accesses the cache and certain CACHE
1744 instructions. Keep track of the number of instructions seen since
1745 an instruction which accesses the cache.
1746 (md_parse_option): Set mips_cpu as well as mips_isa.
1747
a5a2f156
KR
1748Mon Sep 5 07:09:00 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
1749
1750 * doc/Makefile.in (VPATH): Define using @srcdir@.
1751 (prefix, program_transform_name, exec_prefix): Use autoconf style
1752 @-substitutions.
1753
8c63448a 1754Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
318b02b6
KR
1755
1756 * config/ho-riscix.h, config/tc-arm.c, config/tc-arm.h: New files
1757 * configure.in: Recognize the arm.
1758
3ffbc907
ILT
1759Fri Sep 2 16:05:50 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1760
1761 * ecoff.c (add_file): Don't try to generate line numbers if the
1762 symbol table has been frozen.
1763
1764Thu Sep 1 19:48:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1765
1766 * aclocal.m4 (AC_PROG_CC): Use AC_DEFUN, and omit AC_PROVIDE.
1767
1768 * configure.in: Handle user-specified bfd-assembler option with
1769 separate variable from preferred configuration, until the two are
1770 resolved. Indicate bfd_gas=preferred for linux a.out. Use
1771 AC_PROGRAM_TRANSFORM_NAME, for which a patch has been sent to djm.
1772 * Makefile.in (target_alias, program_transform_name): Define,
1773 using autoconf @-substitutions.
1774
fb589130
KR
1775Wed Aug 31 17:43:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1776
7f64fd4e
KR
1777 * atof-generic.c: Deleted alloca handling here.
1778
fb589130
KR
1779 * Makefile.in (prefix, exec_prefix): Use @-subtitutions.
1780
1781 * aclocal.m4 (AC_OUTPUT_LINKS): Deleted redefinition, since
1782 autoconf 1.109 has this fixed.
1783 * configure.in: Don't change quote characters around AC_MSG_ERROR
1784 invocation. Don't use AC_HEADER_STDC, since it requires running a
1785 program. Cache NEED_*_DECLARATION values.
1786 * configure, conf.in: Regenerated with a modified autoconf 1.109.
1787
c7072f56
KR
1788 * as.h (volatile): Don't test or define here; not needed.
1789 (alloca): Replace alloca-conf.h inclusion with code recommended in
1790 autoconf documentation. Include config.h first.
1791
bdee23af
ILT
1792Wed Aug 31 11:20:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1793
1794 * config/obj-coff.h (S_IS_DEFINED): Absolute symbols are defined
1795 also.
1796
1797 * configure.in, configure: Initialize bfd_gas to no.
1798
a48f997a
KR
1799Tue Aug 30 19:31:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
1800
1801 * as.h: Include alloca-conf.h from "libiberty", not
1802 "../libiberty".
1803
0c49642d
ILT
1804Mon Aug 29 16:11:30 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1805
1806 * config/tc-ppc.c (md_apply_fix): Don't generate a reloc when a
1807 symbol is used as an offset into a CSECT that is not a TOC. These
1808 types of loads are generated by gcc -mminimal-toc.
1809
65ad84c1
KR
1810Sun Aug 28 13:22:52 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
1811
e9296bdb
KR
1812 * as.h (flag_*): Added comments describing meanings of some of
1813 these variables.
1814 (struct frag): Add some comments about the ns32k-specific fields
1815 and why they're here.
1816 (SIZEOF_STRUCT_FRAG): Cast addresses to char*, not int.
1817 (flag_print_statistics): Declare.
1818
1819 * as.c (parse_args): Set flag_print_statistics instead of
1820 statistics_flag. Options array is now const. Added new option
1821 "dump-config"; if specified, print TARGET_ALIAS, TARGET_CANONICAL,
1822 TARGET_CPU, TARGET_OBJ_FORMAT, and TARGET_FORMAT, if defined.
1823 (main): Change test to check flag_print_statistics.
1824 (statistics_flag): Deleted.
1825
c72aa0e2
KR
1826 * frags.c (frag_variant): Removed PCREL_ADJUST and BSR arguments.
1827 Always initialize them to zero.
1828 * frags.h (frag_variant): Fixed prototype.
1829 * config/tc-i960.c (get_cdisp): Don't pass the extra zero args.
1830 * config/tc-ns32k.c (convert_iif): Don't pass the arguments; cache
1831 the value of frag_now and fill in the fields later.
1832
65ad84c1
KR
1833 * Makefile.in (distclean, realclean): Remove new
1834 configure-generated files.
1835
aaeee550
KR
1836Sat Aug 27 20:26:12 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
1837
b11fb939
KR
1838 Conversion to autoconf:
1839 * acconfig.h, aclocal.m4: New files.
1840 * configure.in: Rewritten (except for some target-specific code)
1841 for autoconf.
1842 * conf.in, configure: New files, generated from the above.
1843 * Makefile.in: Changed magic sequence indicating insertion of
1844 makefile fragments.
1845 (VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions
1846 from configure.
1847 (LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
1848 (config.status, configure): Rewrite rules.
1849 (config-stamp): Depend on conf. Skip variables that configure is
1850 now substituting itself.
1851 (*.o dependencies): Deleted host.h.
1852 (distclean, realclean): Don't delete host.h.
1853 * as.c: Don't include stdio.h, string.h, sys/types.h. Include
1854 signal.h after as.h.
1855 * as.h: Include alloca-conf.h first. Include ctype.h, string.h,
1856 strings.h, stdlib.h, unistd.h, sys/types.h, fopen-bin.h,
1857 fopen-same.h, as suggested by autoconf test results.
1858 [BROKEN_ASSERT]: Don't include assert.h.
1859 (strdup): Declare.
1860 (volatile, const): Define if not __STDC__ and not already defined.
1861 (malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
1862 (free) [NEED_FREE_DECLARATION]: Declare.
1863 * gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't
1864 include host.h.
1865 (malloc) [NEED_MALLOC_DECLARATION]: Declare.
1866 * messages.c: Include as.h first. Include errno.h only if
1867 HAVE_ERRNO_H. If HAVE_VARARGS_H and not __STDC__, undefine
1868 HAVE_STDARG_H. Set NO_STDARG and NO_VARARGS as appropriate.
1869 * doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM,
1870 INSTALL_DATA): Use autoconf @-substitutions.
1871
27bf48ec
KR
1872 * input-file.c: Don't include assert.h here, 'cause as.h already
1873 includes it.
1874
aaeee550
KR
1875 * config/tc-alpha.c: Added various prototypes for static
1876 functions.
1877 (in_range): New function, tests whether a value can fit in an
1878 N-bit field.
1879 (build_mem, build_operate_n): New functions for constructing
1880 opcode values.
1881 (emit_sll_n, emit_ldah_num, emit_addq_r, emit_lda_n): New
1882 functions for emitting single instructions, no longer requiring a
1883 recursive call to md_assemble.
1884 (emit_add64): New function for expanding a REG:=REG+CONST
1885 operation into one or more instructions, to handle wide constants.
1886 (clear_insn): New variable.
1887 (md_begin): Fill it in with zeros and BFD_RELOC_NONE values.
1888 (alpha_ip): Use it to initialize local variable insns.
1889 (alpha_ip, label "immediate" and cases 'P', 'G'): Use emit_add64
1890 for calculations.
1891
6668a062
KR
1892Fri Aug 26 14:46:15 1994 Ken Raeburn (raeburn@kr-laptop.cygnus.com)
1893
1894 * subsegs.c (section_symbol): Reverse still-wrong test of
1895 EMIT_SECTION_SYMBOLS.
1896
8ef75e2c
KR
1897 * write.c (BFD_FAST_SECTION_FILL): Always define.
1898 (write_contents): If fill_size is 1, use memset instead of looping
1899 calling memcpy.
1900
904b6037
ILT
1901Wed Aug 24 12:46:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1902
20ae2fb8
ILT
1903 * config/tc-mips.h (LOCAL_LABEL): Define as 0, for compatibility
1904 with native MIPS assembler.
1905 * configure.in (mips-*-irix*): Don't set emulation.
1906 * config/te-irix.h: Remove.
1907
fd4f335c
ILT
1908 * ecoff.c (ecoff_symbol_new_hook): Don't add a new file if we
1909 haven't seen any input files yet.
1910 * config/tc-alpha.c (md_begin): Just call symbol_create, rather
1911 than calling symbol_new and then removing the symbol from the
1912 list.
1913
a2a1a548
ILT
1914 * as.c (main): Move a inside the #if 0 block which uses it.
1915 * ecoff.c (current_stabs_filename): Make const.
1916 * frags.h (frag_align_pattern): Declare.
1917 * gasp.c (new_file): Cast isp to long, and use %ld to print it.
1918 * config/tc-alpha.h (md_operand): Add cast to void.
1919 (alpha_do_align): Declare argument types.
1920 (tc_get_register): Declare.
1921 (alpha_frob_ecoff_data): Declare.
1922 * config/tc-alpha.c: Include <ctype.h>.
1923 (s_mask): Don't declare; does not exist.
1924 (line_comment_chars): Remove /* from descriptive comment.
1925 (tc_get_register): Remove unused local reg.
1926 (tc_gen_reloc): Don't bother to compare unsigned to zero.
1927 (s_base): Correct warning to actually print register number.
1928 (md_begin): Remove unused locals retval, lose, and i.
1929 (alpha_fix_adjustable): Move default case inside switch to avoid
1930 warning.
1931 (load_symbol_address): Remove unused locals reloc_addr, p, sym,
1932 and addend.
1933 (emit_byte_manip_r): Declare types for all arguments.
1934 (emit_extract_r, emit_insert_r, emit_mask_r): Likewise.
1935 (emit_sign_extend, emit_bis_r, s_proc): Likewise.
1936 (alpha_ip): Use sprint_value to print offsetT value. Remove
1937 unused local size. Remove unused label get_macro.
1938 (alpha_do_align): Make fill const.
1939 (md_apply_fix): Remove unused label check_zov.
1940
904b6037
ILT
1941 * configure.in: Recognize i586 as a synonym for i[34]86.
1942
1943Tue Aug 23 12:32:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1944
1945 * config/obj-coff.c (c_line_new): Change line_number argument from
1946 unsigned short to int so that the type in the prototype matches
1947 the promoted type in the definition.
1948 (stack_delete): Comment out; not used.
1949 * config/obj-coff.h (tc_coff_symbol_emit_hook): Declare if not
1950 BFD_ASSEMBLER, not if BFD_ASSEMBLER. Declare argument type.
1951 * config/tc-m68k.h (tc_coff_sizemachdep): Declare.
1952 * config/tc-m68k.c (tc_coff_symbol_emit_hook): Add ignored
1953 argument.
1954
2cffb4f4
JL
1955Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
1956
05d0c2cc
JL
1957 * gas/config/tc-hppa.c (pa_comm): Undo last change. Set sy_frag for
1958 the common symbol to the zero address frag (the correct fix).
1959
1960Tue Aug 16 01:48:20 1994 Jeff Law (law@snake.cs.utah.edu)
1961
1962 * gas/config/tc-hppa.c (pa_comm): Undo last change. Set sy_frag for
1963 the common symbol to the zero address frag (the correct fix).
1964
1965 * config/tc-hppa.c (pa_comm): Set sy_resolved for the common
1966 symbol.
2cffb4f4 1967
101fbf7e
ILT
1968Fri Aug 12 17:51:48 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1969
1970 * config/tc-mips.c (md_begin): Drop "el" from the end of
1971 TARGET_CPU. Check for mips64orion.
1972
a1dafd55
SG
1973Tue Aug 9 19:43:45 1994 Stu Grossman (grossman@cygnus.com)
1974
1975 * configure.in: Recognize ppc-*-netware.
1976 * config/te-ppcnw.h: New file to support Power-PC/Netware
1977 configurations. Currently, it just enables the use of backslash
1978 escapes in string directives.
1979
55933a58
ILT
1980Tue Aug 9 11:12:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
1981
8e479636
ILT
1982 * config/tc-ppc.c (ppc_stabx): Call expression directly, rather
1983 than via pseudo_set. If expression is a symbol, move stab symbol
1984 to just after symbol from expression.
1985
c9a89891
ILT
1986 * ecoff.c (ecoff_build_procs): Don't force adr of first fdr to be
1987 zero. Undoes change of June 4, 1993.
1988
55933a58
ILT
1989 * config/tc-mips.c (md_parse_option): Accept -mcpu=4400, 4600, and
1990 orion.
1991
1992Mon Aug 8 16:28:08 1994 Steve Chamberlain (sac@jonny.cygnus.com)
1993
1994 * as.h: Remove FOPEN_WB patch of Aug 6.
1995 * configure.in: Configure for ho-go32 correctly.
1996 * config/ho-go32.h: Fix copyright.
1997
1503edcc
JL
1998Mon Aug 8 11:59:51 1994 Jeff Law (law@snake.cs.utah.edu)
1999
2000 * gas/config/tc-hppa.c (md_pseudo_table): Delete redundant
2001 upper-case versions of the pseudo-ops.
2002
2cd14ddc
ILT
2003Mon Aug 8 13:42:16 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2004
2005 * config/tc-sparc.c (md_apply_fix): If we are going to generate a
2006 non PC relative reloc, don't put the addend in the object file.
2007
6670b7f3
SC
2008Sat Aug 6 01:15:02 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2009
2010 * as.h: If FOPEN_WB is not defined, do the right thing in a go32
2011 environment.
2012
2013Mon Jul 11 11:34:52 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2014
2015 * config/tc-h8300.c (pint): New function for handling varying
2016 size of int pseudo op.
2017 * doc/as.texinfo: Fix typo describing .h8300h pseduop.
2018
363d6150
JL
2019Mon Aug 1 02:40:43 1994 Jeff Law (law@snake.cs.utah.edu)
2020
fbf71886
JL
2021 * config/tc-hppa.c (create_new_space): Initialize sd_subspaces
2022 field in the space chain.
2023
363d6150
JL
2024 * config/tc-hppa.c (tc_gen_reloc): Cast return value from
2025 hppa_gen_reloc_type.
2026
5e0a90a8
KR
2027Thu Jul 28 15:45:37 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2028
2029 * config/tc-sparc.c (sparc_ip): Check more carefully for
2030 conflicting architectures.
2031 (md_parse_option) [NO_V9]: Complain if v9 was selected.
2032 (md_show_usage): Derive architecture list in usage message from
2033 architecture_pname array.
2034 (cypress): Macro deleted.
2035 (op_hash): Don't initialize.
2036 (s_common): Use bfd_und_section_ptr instead of bfd_und_section.
2037
2038 * config/tc-sparc.c (BSR): New function.
2039 (sparc_ip): Use it for right-shift operations of 32 bits or more.
2040
2041 * config/tc-sparc.c (sparc_ip): Implement new operand type 'x'.
2042
39792caf
KR
2043Tue Jul 26 18:21:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2044
2045 * config/obj-coff.h: Moved common includes and TARGET_FORMAT
2046 definitions together.
2047 (WORKING_DOT_WORD, WARN_SIGNED_OVERFLOW_WORD,
2048 OBJ_COFF_OMIT_OPTIONAL_HEADER, BFD_HEADERS, BFD) [!BFD_ASSEMBLER]:
2049 Moved these definitions to the start of the file, before the
2050 includes.
2051 (SYMBOLS_NEED_BACKPOINTERS, OBJ_COFF_MAX_AUXENTRIES): Always
2052 define these.
2053 (S_GET_ZEROES): Deleted.
2054 (S_SET_ZEROES): Moved to obj-coff.c.
2055
2056 * config/obj-coff.c (obj_coff_* psuedo-op fns): Deleted
2057 forward declarations.
2058 (obj_pseudo_table): Moved to one version end of file,
2059 conditionalized internally.
2060 (stack typedef, stack_init, stack_delete, stack_push, stack_pop,
2061 tag_hash, tag_init, tag_insert, tag_find, tag_find_or_make): Moved
2062 to one combined version at top of file, unconditional. Deleted
2063 forward declarations.
2064 (s_get_name): Moved one copy of declarations to start of file.
2065 (def_symbol_in_progress): Ditto. Don't initialize.
2066 (S_SET_ZEROES): Moved here from obj-coff.h.
2067 (write_object_file): If TC_COFF_SET_MACHINE is defined, call it on
2068 the file headers.
2069
2070 * config/obj-coff.c (seg_info_off_by_4): Now const and static.
2071 (SEG_INFO_FROM_SEG_NUMBER): Unused macro deleted.
2072 (previous_file_symbol, def_symbol_in_progress, symbol_externP,
2073 symbol_extern_lastP, last_functionP) [!BFD_ASSEMBLER]: Don't
2074 bother explicitly initializing to zero value.
2075
2076 * config/obj-coff.c (fixup_segment) [TC_I960]: Use SF_GET_BALNAME
2077 and SF_GET_CALLNAME instead of the TC_S_IS_ versions.
2078
10db66ec
KR
2079 * config/tc-i960.h (TC_COFF_SET_MACHINE): New macro. Calls
2080 tc_headers_hook.
2081
2082 * config/tc-i960.c (targ_has_iclass): Use I_CX | I_CX2 where I_CX
2083 was used previously.
2084 (tc_headers_hook): If I_CX2 is found, set flags to F_I960CA.
2085
2086 * config/tc-i960.c (po_hash): Declaration deleted.
2087 (next_object_file_charP): Ditto.
2088 (regnames, aregs, coj): Now const.
2089 (parse_memop): Static array def_scale now const.
2090 (md_begin): Cast away const when passing hash routines addresses
2091 of values in regnames or aregs.
2092 (md_longopts): Added "link-relax" and "no-relax" hyphenated forms.
2093 Continue to accept one-word forms.
2094 (struct tabentry, arch_tab): Moved to top level from inside
2095 md_parse_option. Now const.
2096 (md_show_usage): Use arch_tab to generate usage message. Print
2097 hyphenated forms of relax options.
2098
2099 * config/tc-i960.h (DEFINE_I960_AOUT, TC_S_IS_*, TC_S_*_SYSPROC,
2100 TC_S_FORCE_TO_*): Moved from here...
2101 * config/tc-i960.c: ... to here. Changed DEFINE_I960_AOUT stuff
2102 to test OBJ_AOUT and OBJ_BOUT directly.
2103
2104 * config/tc-i960.h (CTRL, COBR, COJ, REG, MEM*, FBRA, CALLJ,
2105 M1-M3, REG_OPC, R_*, SFR, LIT, FP, OP, R, RS, RL, RSL, F,
2106 {R,F}{,L}{2,4}, M, SFR_OK, LIT_OK, FP_OK, REG_ALIGN, MEMOP, I_*):
2107 Macros deleted.
2108
2109 start-sanitize-i960xl
2110 * config/tc-i960.c (ARCH_XL): Define.
2111 (arch_tab): Include XL.
2112 (targ_has_sfr, targ_has_iclass): Handle XL.
2113 (tc_headers_hook): Set flags to F_I960XL for i960XL.
2114 end-sanitize-i960xl
2115
39792caf
KR
2116Fri Jul 15 15:36:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2117
2118 * subsegs.c (section_symbol): Had last change backwards.
2119
3b6d6f71
KR
2120Thu Jul 14 13:21:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2121
462ab71d
KR
2122 * config/atof-ns32k.c: Deleted.
2123
3b6d6f71
KR
2124 * config/obj-aout.c (obj_aout_frob_symbol): Use
2125 bfd_ind_section_ptr and bfd_und_section_ptr.
2126
2127 * subsegs.c (subseg_set_rest): Compare segT values directly,
2128 without casting to int first.
2129
259e35d4
KR
2130 * config/tc-ns32k.c (md_begin): Return value from hash_insert
2131 should be pointer to const. Don't call exit explicitly after
2132 calling as_fatal; it won't return.
2133 (convert_iif): Make local variable j be pointer to bit_fixS, since
2134 that's how it's used.
2135 (encode_operand, case 'b'): Ignore sprintf return value. Don't try
2136 converting freeptr to int and back.
2137
2138 Merged in NS32K support update from Ian Dall (dall@hfrd.dsto.gov.au):
2139
2140 * config/te-pc532mach.h: New file. pc532-mach target emulation.
2141
2142 * config/te-netbsd532.h: New file. Netbsd532 target emulation.
2143
2144 * config/tc-ns32k.h: Add definition of NOP_OPCODE.
2145
2146 * config/tc-ns32k.h: Add prototype for fix_new_ns32k_exp.
2147
2148 * config/tc-ns32k.h: Add BFD_ASSEMBLER support.
2149
2150 * config/tc-ns32k.c (tc_gen_reloc): New function for BFD_ASSEMBLER.
2151
2152 * config/tc-ns32k.c (fix_new_ns32k_exp): Get reloc type
2153 differently for BFD_ASSEMBLER.
2154
2155 * config/tc-ns32k.c (md_estimate_size_before_relax): Get reloc
2156 type differently for BFD_ASSEMBLER.
2157
2158 * config/tc-ns32k.c (md_create_long_jump): Size of opcode is one
2159 not 2.
2160
2161 * config/tc-ns32k.c (md_convert_frag): Code for the BFD_ASSEMBLER
2162 case. Also use smart md_pcrel_adjust function.
2163
2164 * config/tc-ns32k.c (md_apply_fix): Code for the BFD_ASSEMBLER
2165 case. Also use smart md_fix_pcrel_adjust function.
2166
2167 * config/tc-ns32k.c (md_fix_pcrel_adjust): New function which can
2168 find offset from opcode to operand even if in another frag
2169 and in the presence of relaxing.
2170
2171 * config/tc-ns32k.c (md_pcrel_adjust): New function which can
2172 find offset from opcode to operand even if in another frag
2173 and in the presence of relaxing.
2174
2175 * config/tc-ns32k.c (md_number_to_disp): Check ranges properly.
2176
2177 * config/tc-ns32k.c (md_atof): use atof_ieee instead of special
2178 atof_ns32k.
2179
2180 * config/tc-ns32k.c (reloc): New (static) function for
2181 BFD_ASSEMBLER.
2182
2183 * config/tc-ns32k.c (convert_iif): More correct pc relative code.
2184 md_relax must be able to find opcode address even if in another frag.
2185
2186 * config/tc-ns32k.c: More extensive comments.
2187
2188 * config/tc-ns32k.c (encode_operand): Support new operand classes I
2189 and Z. Drop Q.
2190
2191 * config/tc-ns32k.c (fix_new_ns32k_exp): new function and
2192 corresponding prototype.
2193
2194 * config/tc-ns32k.c: make 32532 default machine instead of 32032.
2195
2196 * config/tc-ns32k.c: include opcode/ns32k.h after as.h
2197
2198 * aout_gnu.h: r_disp needs to be 2 bits for TC_NS32K
2199
2200 * write.h: fx_im_disp needs to be 2 bits big for TC_NS32K
2201
2202 * write.c (relax_segment): Use TC_PCREL_ADJUST macro (if defined)
2203 instead of adding pcrel_adjust.
2204
2205 * write.c (write_object_file): Adjust to_addr for the
2206 BROKEN_DOT_WORD feature for the BFD_ASSEMBLER case.
2207
2208 * write.c (write_object_file): Use TC_CONS_FIX_NEW if it is defined.
2209
2210 * write.c (write_contents): Add code (currently if
2211 BFD_FAST_SECTION_FILL is defined) to make large fills a lot faster.
2212
2213 * configure.in: Remove ns32k from special FP list. All the ns32k
2214 series use ieee float.
2215
2216 * configure.in: Add ns32k-pc532-mach and ns32k-pc532-netbsd targets
2217
2218 * as.h: include expr.h before targ-env.h. Some target dependent file
2219 want to use expr structures.
2220
4ac7a9e4
ILT
2221Wed Jul 13 14:49:05 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2222
2223 * config/tc-m68k.c (m68k_ip): Change rp to be a const pointer.
2224 (md_parse_option): Clear cpu field of current_architecture before
2225 setting a new cpu type. Clear no_68881 for m68881 or m68882.
2226 Clear no_68851 for m68851.
2227
6b510a40
KR
2228Tue Jul 12 21:27:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2229
2230 * config/ho-sysv.h (realloc): Declare.
2231
3c498933
KR
2232 * symbols.c (symbol_create): New function, most of the guts of the
2233 old symbol_new function.
2234 (symbol_new): Now just checks symbol_table_frozen, calls
2235 symbol_create, and enters the symbol into the symbol table.
2236 * subsegs.c (section_symbol): If EMIT_SECTION_SYMBOLS is not true,
2237 and the symbol table is frozen, call symbol_create instead of
2238 symbol_new.
2239 * symbols.h (symbol_create, symbol_table_frozen): Declare.
2240
2241 * symbols.c (symbol_clear_list_pointers): Always a function now.
2242 * struc-symbol.h (symbol_clear_list_pointers): Deleted macro
2243 version.
2244
2245 * symbols.c (debug_verify_symchain): New macro, defined to be
2246 verify_symbol_chain or a cast to void, depending on DEBUG_SYMS.
2247 (many functions): Invoke debug_verify_symchain unconditionally.
2248
a85cd289
KH
2249Tue Jul 12 12:06:42 1994 Kung Hsu (kung@x1.cygnus.com)
2250
2251 * config/obj-ecoff.h: change calling interface of
2252 OBJ_GENERATE_ASM_LINE_STAB.
2253 * config/obj-elf.h: ditto.
2254 * read.c (read_a_source_file): ditto.
2255 * ecoff.h: change calling interface of
2256 ecoff_generate_asm_line_stab.
2257 * ecoff.c (add_file): record of filename to handle case of include
2258 files, also change default built-in type from int to void for
2259 asm file.
2260 * ecoff.c (ecoff_generate_asm_line_stab): handle case of include
2261 files.
2262
51d8e5ae
ILT
2263Mon Jul 11 17:20:23 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2264
2265 * config/tc-mips.c (macro): In case M_LA_AB, SVR4_PIC, large
2266 constant, and case ldd_std, set mips_optimize to 2 temporarily to
2267 avoid inserting an unexpected nop instruction.
2268
64d527f7
ILT
2269Sat Jul 9 00:05:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2270
2271 * ecoff.c (ecoff_build_lineno): Handle count correctly for last
2272 line number.
2273
6f15d409
SC
2274Fri Jul 8 15:22:07 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2275
6670b7f3 2276 * gasp.c (process_pseudo_op): Pass right args to do do_aif.
6f15d409
SC
2277 (get_any_string): New arg 'pretend_quote'.
2278 (get_and_process, do_formals, macro_expand, do_sdata,
2279 process_pseudo_op): Use new arg.
2280
daad3bbf
KH
2281Fri Jul 8 12:23:44 1994 Kung Hsu (kung@mexican.cygnus.com)
2282
2283 * config/obj-ecoff.h: define macro OBJ_GENERATE_ASM_LINE_STAB.
2284 * config/obj-elf.h: ditto.
2285 * read.c (read_a_source_file): generate line stabs for asm file.
2286 * read.h: add extern generate_asm_line_stab.
2287 * ecoff.h : add prototype for ecoff_generate_asm_line_stab().
2288 * ecoff.c (add_file): if there's no filename provided, set switch
2289 to generate line stabs for .s file.
2290 * ecoff.c (add_procedure): add stabs symbol for .ent directive.
2291 * ecoff.c (generate_ecoff_stab): creates an artificial stabs.
2292 * ecoff.c (generate_asm_line_stab): generate a artifitial label
2293 for each line and generate a stabn for the line.
2294
13d9fd33
SC
2295Thu Jul 7 17:04:03 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2296
2297 * gasp.c (get_any_string): Cope with getting a string with an
2298 alternate base specifier.
2299 (do_aif, do_aelse): Only enable output if expression is true and previous
2300 level was on.
2301 (chartype_init): Add BASEBIT chartype.
2302 (process_pseudo_op): Notice nesteed AIFs.
2303
2304Thu Jul 7 12:30:22 1994 Steve Chamberlain (sac@jonny.cygnus.com)
2305
2306 * h8300.c (do_a_fix_imm): Code for 2 bit reloc type using in trapa
2307 insn. (fix pr 5165, 5174)
2308
8fd04cba
JL
2309Thu Jul 7 11:31:32 1994 Jeff Law (law@snake.cs.utah.edu)
2310
13d9fd33
SC
2311 * config/tc-hppa.c (R_DLT_REL): If it isn't defined, then define
2312 to an appropriate value to avoid losing on old hpux systems.
2313
8fd04cba
JL
2314 * config/tc-hppa.c (hppa_fix_adjustable): Reject reductions for
2315 symbols in DLT relative relocs.
2316 (tc_gen_reloc): Zero out the addend field for DLT relative relocs.
2317
8882a587
ILT
2318Wed Jul 6 01:07:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2319
2320 * config/tc-ppc.c (ppc_tc): If not OBJ_COFF, force TOC entry to
2321 align to a four byte boundary.
2322
4174e052
KR
2323Tue Jul 5 15:42:09 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2324
2325 * config/tc-alpha.c (load_expression): Handle 32-bit addends.
2326 (gpdisp_hi16_howto): Now points to const.
2327 (load_insn_table, alpha_ip): Fix uses of const.
2328
10f67315
KR
2329 * doc/internals.texi: Updates to COFF description. Added "@end
2330 defmac" as needed, and some extra heading and "@bye" so it'll
2331 format as a separate document.
2332
bcb62abf
ILT
2333Tue Jul 5 13:54:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2334
2335 * config/obj-elf.h (S_GET_ALIGN, S_SET_ALIGN): Define.
2336 * config/obj-elf.c (obj_elf_common): Set alignment of common
2337 symbol.
2338 * config/tc-sparc.c (s_common): If OBJ_ELF, set alignment of
2339 common symbol.
2340
655f3ef4
JL
2341Mon Jul 4 18:29:43 1994 Jeff Law (law@snake.cs.utah.edu)
2342
2343 * config/tc-hppa.c (is_complex): New macro.
2344 (cons_fix_new_hppa): "Handle" complex expressions.
2345
2346Fri Jul 1 00:48:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2347
2348 * config/obj-coff.c (write_object_file): Set s_align field from
2349 section_alignment array.
2350
04f0c2e3
KR
2351Thu Jun 30 15:05:28 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2352
2353 * write.c (write_object_file): Use bfd_com_section_ptr.
2354 * as.h (absolute_section, undefined_section): Use new BFD macros
2355 bfd_abs_section_ptr and bfd_und_section_ptr.
2356
f2554579
ILT
2357Thu Jun 30 14:36:37 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2358
2359 * config/tc-mips.c (macro): For M_LI_SS, decide how to handle it
2360 based on contents of imm_expr and offset_expr, rather than
2361 mips_pic. For M_LI_DD, decide how to handle it based on segment
2362 name of offset_expr, rather than mips_pic.
2363 (mips_ip): If g_switch_value < 4, use immediate values for 'l'.
2364 If g_switch_value < 8, use .rdata rather than .lit for 'L'.
2365
6f0b87c3
SS
2366Wed Jun 29 17:30:46 1994 Stan Shebs (shebs@andros.cygnus.com)
2367
2368 * as.c (show_usage): Break long string into shorter ones.
2369 (parse_args): Add -v, prints version id and continues.
2370 * config/tc-mips.c (md_show_usage): Break long string.
2371
2372Mon Jun 27 09:47:16 1994 J.T. Conklin (jtc@phishhead.cygnus.com)
2373
2374 * config/tc-i386.c (md_parse_option): Handle "-V" and "-Q" if
2375 OBJ_ELF is defined.
2376
f488a4d6
SS
2377Sun Jun 26 16:30:48 1994 Stan Shebs (shebs@andros.cygnus.com)
2378
2379 * as.c (main) [HOST_SPECIAL_INIT]: New hook, for host-specific
2380 initialization.
2381
1f12ae43
JL
2382Wed Jun 22 00:24:55 1994 Jeff Law (law@snake.cs.utah.edu)
2383
2384 * config/tc-hppa.h (obj_frob_symbol): Define for OBJ_ELF.
2385 More gas/bfd lossage exposed by the new linker code.
2386
dff770c8
ILT
2387Tue Jun 21 11:32:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2388
1f12ae43
JL
2389 * subsegs.c (subseg_change): Clear seginfo after allocating it.
2390 (subseg_get): Pass actual size of seginfo to memset.
2391
dff770c8
ILT
2392 * subsegs.c (abs_seg_info, und_seg_info): Define if BFD_ASSEMBLER.
2393 (subseg_change): Store seg_info for bfd_abs_section_ptr in
2394 abs_seg_info, and store seg_info for bfd_und_section_ptr in
2395 und_seg_info.
2396 (subseg_get): Likewise. Also, don't set output_section if it is
2397 already set.
2398 (seg_info): Define as function.
2399 * subsegs.h (seg_info): Declare as function rather than defining
2400 as macro.
2401 * write.c (relax_and_size_seg): Call seg_info rather than
2402 bfd_get_section_userdata.
2403
e0b36f18
KR
2404Mon Jun 20 16:30:54 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2405
639c820d
KR
2406 * configure.in (ppc-*-elf*): New target, like -sysv4*.
2407
e0b36f18
KR
2408 * expr.c (operand): If "0f" is followed by '\0', don't do eol
2409 checks.
2410
256816ca
ILT
2411Mon Jun 20 15:17:43 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
2412
2413 * ecoff.c (ecoff_build_aux): Call swap_tir_out and swap_rndx_out
2414 via backend pointer, not directly.
2415
de442a3c
ILT
2416Fri Jun 17 18:05:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2417
2418 * Makefile.in (config-stamp): Make sure there is at least one
2419 element in the for loop.
2420
0e68b3bc
JL
2421Fri Jun 17 11:01:04 1994 Jeff Law (law@snake.cs.utah.edu)
2422
239f16dd
JL
2423 * config/tc-hppa.c: Misc trivial changes to make gcc -Wall happy.
2424
0e68b3bc
JL
2425 * config/tc-hppa.h (elf_hppa_final_processing): Declare.
2426
5ee93e0a
KR
2427Wed Jun 15 20:44:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2428
286272fb
KR
2429 * as.c (parse_args): Cast xmalloc return value.
2430
5ee93e0a
KR
2431 * Makefile.in (config-stamp): If $(defs) contains multiple words,
2432 emit a #define line for each.
2433 * configure.in: For sparc64 target, use sparc cpu files and add
2434 sparcv9 to extra_defs. No longer treat sparc64-*-aout* specially.
2435
2436 * config/tc-sparc.c (membar_masks): Now static and const.
2437 (md_show_usage) [!NO_V9]: Add -Av9 to usage message.
2438 (current_architecture) [sparcv9]: Initialize to v9.
2439 (md_begin) [sparcv9]: Don't bother changing it unconditionally
2440 here.
2441 (s_reserve): Don't pass unexpected argument to as_bad with
2442 bad-segment message.
2443
2444 * as.h (bfd_alloc_by_size_t) [BFD_ASSEMBLER]: Declare.
2445
2446 * config/atof-ieee.c (int_to_gen): Commented out unused routine.
2447
2448 * config/tc-vax.c (md_assemble): Removed check of operand section.
2449
2450 Fri Jun 3 17:25:08 1994 Pat Rankin (rankin@eql.caltech.edu)
2451
2452 * config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
2453 these new VMS symbol-type macros for `complex float' and
2454 `complex double' support. Their values come from the existing
2455 DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
2456 (DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
2457 REAL8 and COMPLX8; not used yet, because gcc outputs the same
2458 .stabs for `double' regardless of whether `-mg' is used.
4174e052 2459 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
5ee93e0a
KR
2460 for gcc2's predefined types "complex float", "complex double",
2461 and "complex long double" (identical to complex double).
2462
36a87ad7
ILT
2463Wed Jun 15 12:32:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2464
0e35ba9b
ILT
2465 * config/obj-coff.c (coff_frob_symbol): Use C_STAT for the .text
2466 section symbol, not C_LABEL.
2467
adf05987
ILT
2468 * config/tc-mips.c (mips_ip): Permit a modifier in 'o' case, and
2469 permit non constant expressions in 'u' case. Lets ``lui
2470 $8,%hi(foo); lw $8,%lo(foo)($8)'' work correctly.
36a87ad7 2471
a5183648
ILT
2472Mon Jun 13 12:08:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2473
2474 * config/obj-aout.c (obj_aout_frob_symbol): Warn about an attempt
2475 to put a common symbol in a set.
2476
02d4e923
ILT
2477Sat Jun 11 16:41:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2478
2479 Add weak symbols as an extension to a.out.
2480 * read.c (pseudo_set): Only preserve external bit for OBJ_AOUT and
2481 OBJ_BOUT if not BFD_ASSEMBLER.
2482 * config/aout_gnu.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB):
2483 Define as in ../include/aout/aout64.h.
2484 * config/obj-aout.h (OBJ_SYMFIELD_TYPE): If not BFD_ASSEMBLER,
2485 define as char.
2486 (S_GET_WEAK, S_SET_WEAK): Define if not BFD_ASSEMBLER.
2487 * config/obj-aout.c (obj_pseudo_table): Add "weak".
2488 (obj_emit_symbols): Adjust type of weak symbols.
2489 (obj_aout_weak): New static function.
2490
726672c5
ILT
2491Fri Jun 10 13:48:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2492
7b1e07b4
ILT
2493 * config/obj-elf.c (obj_elf_section): Don't set any flags based on
2494 the type of a special section.
2495
726672c5
ILT
2496 * config/ho-sunos.h: Include <stdlib.h>. Don't declare malloc,
2497 realloc, free, or atol.
2498
0b3d0999
BC
2499Wed Jun 8 06:28:37 1994 Bill Cox (bill@cygnus.com)
2500
2501 * Makefile.in (check): Delete as.new dependency, so that
2502 regression test doesn't trigger an assembler build.
2503
daa7e184
ILT
2504Tue Jun 7 13:33:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2505
2506 * Makefile.in (mostlyclean, realclean): New targets.
2507 * doc/Makefile.in, testsuite/Makefile.in: Likewise.
2508
d2c71068
ILT
2509Mon Jun 6 13:10:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2510
2511 * config/tc-mips.c (RDATA_SECTION_NAME): Define.
2512 (macro): Correct M_LI_SS SVR4_PIC/EMBEDDED_PIC case. After M_LI_D
2513 or M_L_DOB or label dob, force a new frag to avoid getting
2514 confused in tc_gen_reloc.
2515 (mips_ip): Use RDATA_SECTION_NAME, not .rdata.
2516 (s_change_sec): Likewise.
2517
1fbfe108
ILT
2518Fri Jun 3 23:35:36 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2519
2520 * read.c (emit_expr): Use memset to zero out memory, rather than
2521 going through md_number_to_chars. This permits handling symbolic
2522 arguments when the size is larger than sizeof (valueT), if
2523 TC_CONS_FIX_NEW is prepared to handle the case (as it is on MIPS).
2524
f3d817d8
DM
2525Fri Jun 3 12:50:13 1994 David J. MacKenzie (djm@rtl.cygnus.com)
2526
baed44cd
DM
2527 * as.c (show_usage), config/tc-alpha.c (md_show_usage),
2528 config/tc-mips.c (md_show_usage): Fix up messages.
2529
def66e24
DM
2530 * as.h: Replace flagseen with separate variables.
2531 * as.c (parse_args): Set them. Don't accept -1 option, or -v
2532 explicitly (it's a synonym for --version).
2533 * as.c, input-scrub.c, messages.c, read.c, symbols.c, write.c,
2534 config/obj-aout.c, config/obj-aout.h, config/obj-bout.c,
2535 config/obj-bout.h, config/obj-coff.c, config/obj-coff.h,
2536 config/obj-vms.c, config/tc-hppa.c, config/tc-i386.c,
2537 config/tc-i960.c, config/tc-m68k.c, config/tc-mips.c,
2538 config/tc-vax.c: Use the new flag variables instead of flagseen.
2539 * config/tc-vax.c [OBJ_VMS]: Recognize -+, -1, -v, and document in
2540 usage.
2541
f3d817d8
DM
2542 * as.c (show_usage): Remove target specific messages;
2543 instead, call md_show_usage.
2544 (parse_args): Use getopt_long_only. Take pointers to argc and
2545 argv.
2546 (main): Pass parse_args pointers.
2547 * as.h: Remove 3 variables that are redundant with flagseen.
2548 * as.c, messages.c: Change their users to use flagseen.
2549 Define getopt stuff.
2550 * tc.h: Update md_parse_option decl. Add md_show_usage decl.
2551 * config/tc-*.c: Add md_shortopts, md_longopts,
2552 md_longopts_size, md_show_usage. Change calling convention for
2553 md_parse_option. Remove md_parse_long_option.
2554 * config/tc-ns32k.c: Rename `struct option' to `struct ns32k_option'.
2555 * config/tc-i386.h: Don't define md_parse_option.
2556
ebd6f117
DM
2557Thu Jun 2 13:54:46 1994 David J. Mackenzie (djm@rtl.cygnus.com)
2558
2559 * as.c (show_usage): New function.
2560 (parse_args): Code moved from main.
2561 Recognize --help and --version.
2562 * config/tc-ns32k.h: Define TC_NS32K.
2563 * doc/as.texinfo: Document all of the target-independent command
2564 line options.
2565
314628f6
KR
2566Thu Jun 2 12:07:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2567
2568 * gasp.c (hash_new_table): Clear newly allocated table.
2569
2570 * config/tc-m68k.c (enum _register): Add 68060 control registers
2571 BUSCR and PCR.
2572 (last_movec_reg): New macro.
2573 (m68000_control_regs, m68010_control_regs, m68020_control_regs,
2574 m68040_control_regs, m68060_control_regs): New arrays.
2575 (control_regs): New pointer.
2576 (m68k_ip): Use control_regs instead of testing CPU every time.
2577 Use last_movec_reg too. In error messages, handle 68060, and
2578 print 68060 for mfloat, too.
2579 (m68k_init_after_args): Handle "68060". Use m68040up for making
2580 m68851 choice. Set control_regs.
2581 (md_parse_option): Handle "68060".
2582 * configure.in: Setting cpu_type, recognize m68060 too.
2583
2584 * config/obj-coff.c (fixup_segment) [!BFD_ASSEMBLER]
2585 [DIFF_EXPR_OK]: Do conversion to pc-relative for difference, even
2586 if pcrel is already set.
2587
2588 * read.c (potable): Add this_gcc_requires_the_gnu_assembler in all
2589 lower-case, in case we're ignoring case of opcodes in the input
2590 file.
2591
2592 * doc/as.texinfo (.section): Document as unavailable for a.out
2593 type formats.
2594
2595 * config/tc-alpha.c (machine): New variable.
2596 (load_insn): New macro.
2597 (load_insn_table): New function.
2598 (md_begin): Call load_insn_table, once for basic instructions and
2599 once for appropriate PAL instruction table.
2600 (md_parse_option): Set `machine' based on -m##### arguments.
2601 * config/alpha-opcode.h (alpha_pal21064_opcodes): Split out from
2602 alpha_opcodes.
2603 (alpha_pal21164_opcodes): New table.
2604 (NUM21064OPCODES, NUM21164OPCODES): New macros.
2605
2606 * configure.in (target i386-*-netbsd0.8): Use 386bsd emulation.
2607
2608 * doc/Makefile.in (install-info-gasp): Use $$dir when installing
2609 file.
2610
0221ddf7
ILT
2611Wed Jun 1 10:48:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2612
2613 * config/tc-mips.c (mips_ip): Force floating point values to be
2614 aligned correctly.
2615
488442d4 2616Fri May 27 10:05:53 1994 Ken Raeburn (raeburn@cygnus.com)
c06e55d9
KR
2617
2618 Merged in changes from gas-2.3 net release:
2619
2620 * Makefile.in (VERSION): Updated to cygnus-2.3.1.
2621
2622 * config/obj-vms.c: Replaced unchecked uses of malloc with
2623 xmalloc.
2624
2625 * listing.c (list_symbol_table): Only test BFD64, not
2626 BFD_ASSEMBLER too.
2627
314628f6
KR
2628 * config/obj-coff.c (fixup_segment) [BFD_ASSEMBLER]
2629 [DIFF_EXPR_OK]: Don't check pcrel, just convert it.
c06e55d9
KR
2630
2631 * config/obj-vms.c: Removed lots of extra semicolons after
2632 compound statements.
2633 (strchr): Don't declare here.
2634
2635 * config/ho-vax.h (realloc): Declare.
2636
2637 * config/ho-vms.h (strchr, strdup): Declare.
2638
2639 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Accept and ignore
2640 option `-q'.
2641
2642 Wed May 18 20:50:35 1994 Pat Rankin (rankin@eql.caltech.edu)
2643
2644 * config/obj-vms.h (DBG_S_C_SQUAD, DBG_S_C_UQUAD): define these
2645 new VMS symbol-type macros; signed and unsigned quadword integers,
2646 for `long long' support. Their values come from the existing
2647 DSC$K_DTYPE_QU and DSC$K_DTYPE_Q macros in <descrip.h>. The
2648 VMS debugger now recognizes `long long' variables correctly.
4174e052 2649 * config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
c06e55d9
KR
2650 for gcc2's predefined types "long double" (same as double, as
2651 per gcc's current state), "long long int", "long long unsigned
2652 int", and final `otherwise' case (to avoid uninitialized type
2653 and size fields). [caveat: predefined types "complex int",
2654 "complex float", "complex double", and "complex long double" are
2655 still missing.]
2656
2657 * config/ho-vms.h (EXIT_FAILURE): define as 0x10000002 instead
2658 of 0, because the latter indicates success rather than failure
2659 when passed to `exit' or return from `main' compiled by gcc2.
2660
2661 * config/obj-vms.c (array_suffix, generate_suffix): replace two
2662 hardcoded `0xa3's with macro DBG_S_C_ADVANCED_TYPE from obj-vms.h.
2663 (VMS_typedef_parse): eliminate redundant if-then-else when
2664 allocating new symbol entry and linking it to VMS_Symbol_type_list.
2665
2666 Tue May 17 20:47:31 1994 Pat Rankin (rankin@eql.caltech.edu)
2667
2668 * config/obj-vms.c (Write_VMS_MHD_Records): don't try to interpret
2669 the contents of the GAS_VERSION string when falling back to it for
2670 language processor identification.
2671
2672 * make-gas.com, vmsconf.sh (ENVIRON): fix misspelling of
2673 `psect_attr' in linker options.
2674
2675 Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
2676
2677 * configure.bat: update to latest makefile.in
2678 * config/te-go32.h: [new] go32's environment
2679
a193acc0
ILT
2680Fri May 20 17:59:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2681
2682 * as.h: Don't declare parameters for strstr.
2683
f9c57637
ILT
2684Thu May 19 15:40:13 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2685
2686 * config/tc-sparc.c (md_section_align): Don't change the size if
2687 OBJ_ELF.
2688
ac7f7dfe
ILT
2689Wed May 18 13:08:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2690
2691 * Makefile.in (install): Redirect ln output to /dev/null. If ln
2692 fails on gasp, install gasp.new, not gasp.
2693
44e8d616
JL
2694Wed May 18 09:16:36 1994 Jeff Law (law@snake.cs.utah.edu)
2695
2696 * config/tc-hppa.c (pa_ip): Use R_HPPA_ABS_CALL, not R_HPPA for
2697 absolute calls.
2698
ee8b8346
JL
2699Tue May 17 12:50:46 1994 Jeff Law (law@snake.cs.utah.edu)
2700
2701 * config/tc-hppa.c (pa_parse_fp_cmp_cond): Report an error
2702 on a partial completer match.
2703
3315c7c7
JL
2704Mon May 16 12:03:49 1994 Jeff Law (law@snake.cs.utah.edu)
2705
2706 * config/tc-hppa.c: Change .hppa_unwind to .PARISC.unwind
2707 throughout code.
2708 (is_complex): Delete definition and support for complex relocation
2709 types.
2710 (tc_gen_reloc): Delete special unwind crud for ELF. Simplify and
2711 rewrite ELF code based on 94-02-02 PA ELF draft spec.
2712 (pa_build_unwind_subspace): Use standard PARISC_DIR32 relocs for
2713 the unwind descriptors.
2714
c794f0aa
SC
2715Fri May 6 14:13:15 1994 Steve Chamberlain (sac@cygnus.com)
2716
2717 * config/go32.mh: New makefile fragment for go32 crossing.
2718 * configure.in (host==go32): Use new fragment.
2719
2db90a63
ILT
2720Fri May 6 14:35:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2721
2722 * gasp.c: Include libiberty.h.
2723 (main): Remove unused variable i.
2724
2725 * config/tc-ppc.c (md_begin): When using -many, permit comparison
2726 instructions to appear multiple times in the opcode table.
2727
59232011
KR
2728Thu May 5 19:14:43 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2729
2db90a63
ILT
2730 * Makefile.in (VERSION): Update to 2.2.90.
2731
fbefddfb
KR
2732 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Don't permit additions
2733 to the symbol table if it's already been set in the output bfd.
2734 (symbol_begin) [! EMIT_SECTION_SYMBOLS] [RELOC_REQUIRES_SYMBOL]:
2735 Don't use bfd_abs_section.symbol for gas absolute symbol.
2736
59232011
KR
2737 * doc/Makefile.in (distclean, clean-dvi, clean-info): Delete gasp
2738 files too.
2739
6d41de19
ILT
2740Thu May 5 18:12:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2741
2742 * config/tc-mips.c (mips_emit_delays): Make call to
2743 mips_no_prev_insn unconditional.
2744
a139d99b
KR
2745Thu May 5 17:25:38 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2746
2747 * config/obj-coff*.*: Merged coffbfd versions into coff versions,
2748 with a single "#ifdef BFD_ASSEMBLER" controlling most of it for
2749 now. Deleted obj-coffbfd.* files.
2750 * configure.in: Always use obj-coff.* for COFF targets.
2751
9267b020
KR
2752Wed May 4 13:34:11 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2753
a139d99b
KR
2754 * config/te-dpx2.h (TARGET_FORMAT, REGISTER_PREFIX_OPTIONAL):
2755 Define.
2756 * configure.in (m68k-bull-sysv3*): Enable.
2757
9267b020
KR
2758 * config/coff_gnu.h: Deleted.
2759
9fc63ce0
ILT
2760Wed May 4 11:29:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2761
2237e240
ILT
2762 * config/tc-m68k.h (TARGET_FORMAT): If not TE_SUN3, define as
2763 "a.out-zero.big".
2764
9fc63ce0
ILT
2765 * config/obj-coffbfd.c (fixup_segment): Make common symbol and PC
2766 relative adjustments when TE_LYNX is defined as well as when
2767 TC_I386 is defined.
2768
a3547e53
KR
2769Wed May 4 02:29:21 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2770
3f048548
KR
2771 * as.h (strstr): Restore declaration.
2772 (subseg_get) [BFD_ASSEMBLER]: Declare.
2773
2774 * write.c (write_object_file): If obj_adjust_symtab is defined,
2775 invoke it. Then call set_symtab, and finally invoke *_frob_file
2776 hooks.
2777 * config/obj-coff.c (coff_adjust_symtab): Renamed from
2778 coff_frob_file.
2779 * config/obj-coff.h (coff_adjust_symtab): Changed declaration
2780 accordingly.
2781 (obj_adjust_symtab): Macro also changed.
2782
a3547e53
KR
2783 * configure.in (i386-*-gnu*): New target, handled like i386-mach.
2784
2785Tue May 3 21:04:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2786
2787 * config/obj-coff.h (TARGET_FORMAT) [TC_I960]: Select little
2788 endian version.
2789
2790 * config/obj-coffbfd.h (TARGET_FORMAT) [TC_I960]: Ditto.
2791
2792 * config/obj-coff.c (coff_frob_section): Round up the size of
2793 every section to a multiple of the alignment, so that BFD doesn't
2794 surprise us.
2795
2796 Eliminate many simple differences between the two COFF back ends:
2797
2798 * config/obj-coffbfd.c: Removed all uses of DEFUN and DEFUN_VOID.
2799 Made minor stylistic changes, deleted some register declarations.
2800 (stack_top): Deleted.
2801 (symbol_to_chars): Use absolute_section and reg_section instead of
2802 the corresponding SEG_* symbols.
2803 (obj_coff_endef, tag_find_or_make, fixup_segment): Likewise.
2804 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
2805 Moved to just after pseudo-op table. All functions now static.
2806 (stack_delete): Removed declaration.
2807 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
2808 after stack functions.
2809 * config/obj-coffbfd.h: Reordered some declarations and macros.
2810 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
2811 (stack typedef): Deleted.
2812 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
2813 (SYM_AUXENT): New macro.
2814 (SA_GET_*, SA_SET_*): Define in terms of SYM_AUXENT when feasible.
2815 (SF_GET_*, SF_SET_*): Define in terms of SF_GET when feasible.
2816 (SA_GET_SYM_TAGNDX, SA_GET_SYM_ENDNDX, SA_SET_SYM_TAGNDX,
2817 SA_SET_SYM_ENDNDX, object_headers typedef, data_section_header,
2818 text_section_header): Delete non-BFD_HEADERS versions, since we
2819 always define that symbol now.
2820
2821 * config/obj-coff.c (stack_top): Deleted.
2822 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
2823 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Change
2824 argument name from "ignored" to "ignore".
2825 (obj_coff_val): Use frag_now_fix.
2826 (obj_pseudo_table): Removed IGNORE_DEBUG version, since it doesn't
2827 get used.
2828 (stack typedef, stack_init, stack_delete, stack_push, stack_pop):
2829 Moved to just after pseudo-op table. All functions now static.
2830 (tag_init, tag_insert, tag_find_or_make, tag_find): Moved to just
2831 after stack functions.
2832 * config/obj-coff.h: Reordered some declarations and macros.
2833 Protected against multiple inclusions.
2834 (stack_init, stack_delete, stack_push, stack_pop): Don't declare.
2835 (stack typedef): Deleted.
2836 (SYMBOLS_NEED_BACKPOINTERS): Always undef then define; don't test.
2837 (stdoutput): Deleted declaration.
2838 (TARGET_FORMAT) [TC_I386]: Don't define if already defined.
2839
1b96bdce
ILT
2840Mon May 2 17:09:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2841
2842 * subsegs.h (segment_info_type): Use fix_tail field even if
2843 BFD_ASSEMBLER.
2844 * subsegs.c (subseg_change): Initialize fix_tail field.
2845 (subseg_get): Likewise.
2846 * write.c (frags_chained): New static variable.
2847 (fix_new_internal): If frags_chained is set, use fix_root and
2848 fix_tail from seg_info (now_seg), rather than frchain_now.
2849 (chain_frchains_together_1): Set fix_tail field.
2850 (chain_frchains_together): Set frags_chained.
2851
17f0b355
KR
2852Thu Apr 28 01:39:15 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
2853
2854 * config/tc-mips.c (s_option): Only refer to g_switch_* variables
2855 if GPOPT is defined.
2856 (s_abicalls): Ditto.
2857 (md_apply_fix): Cast char* to unsigned char* to avoid pointer
2858 mismatch.
2859
fa1a86f3
SC
2860Wed Apr 27 11:06:32 1994 Steve Chamberlain (sac@cygnus.com)
2861
2862 * configure.in (i386-*-go32): Uses coff now.
2863 * gasp.c (main): Now takes -D on command line.
2864 (show_usage): Describe new options.
2865
b46f83f2
KR
2866Tue Apr 26 17:10:30 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2867
2868 * listing.c (list_symbol_table): Print "NO DEFINED SYMBOLS" and
2869 "NO UNDEFINED SYMBOLS" if there aren't any, instead of displaying
2870 the header with an empty list.
2871
fb51366f
KR
2872 * config/obj-coffbfd.c (fill_section): Check COFF_NOLOAD_PROBLEM
2873 also before setting STYP_NOLOAD for .bss section.
2874
926ffe94
KR
2875 * config/tc-m68k.c (flag_reg_prefix_optional): New variable.
2876 Initialized to value of REGISTER_PREFIX_OPTIONAL, if defined, or
2877 zero.
2878 (m68k_reg_parse): If flag_reg_prefix_optional is set, permit
2879 register prefix to be absent.
2880 (m68k_ip_op): Accept `&' also for immediate constants.
2881 (insert_reg): Don't bother with (two!?) sanity checks of the
2882 symbol table when inserting each register.
2883 (m68k_parse_long_option): New function. Set
2884 flag_reg_prefix_optional if "register-prefix-optional" is passed.
2885 * config/tc-m68k.h (REGISTER_PREFIX): Always define if not already
2886 defined.
2887 (OPTIONAL_REGISTER_PREFIX): Don't define.
2888 (REGISTER_PREFIX_OPTIONAL): If not already defined, define as zero
2889 or one depending on M68KCOFF.
2890
2891 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
2892 * config/tc-m68k.c (DATA, ADDR, SP, FPREG, COPNUM, BAD, BAC):
2893 Define as macros instead of enumerators, since the Apollo compiler
2894 can't handle "enumVal1, enumVal2 = enumVal1" when defining an enum
2895 type.
2896 (make_pcrel_absolute) [NO_PCREL_RELOCS]: New function.
2897 (tc_coff_fix2rtype) [NO_PCREL_RELOCS]: Generate only R_RELBYTE,
2898 R_DIR16, and R_DIR32 relocs.
2899 * config/tc-m68k.h [TE_APOLLO] (COFF_MAGIC, COFF_AOUTHDR_MAGIC):
2900 Use Apollo versions.
2901 [TE_APOLLO] (OBJ_COFF_OMIT_OPTIONAL_HEADER): Undefine. That is,
2902 do include the optional header for Apollo target.
2903 (COFF_MAGIC): Don't define as MC68MAGIC if it's already defined.
2904
2905 * config/tc-m68k.h [TE_DELTA] (LEX_PCT): Define as 1, so that `%'
2906 can be used within a label name.
2907
2908 * config/tc-m68k.h (m68k_init_after_args): Declare.
2909 (tc_init_after_args): Define as m68k_init_after_args.
2910 * config/tc-m68k.c (m68k_init_after_args): New function,
2911 containing one-shot code from md_assemble. Added warning for
2912 combination of 68040 and 68851.
2913 (md_assemble): Startup-time code deleted.
2914
497c179a
ILT
2915Mon Apr 25 16:19:17 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2916
2917 * doc/Makefile.in (clean, distclean): Remove asconfig.texi.
2918
f38cd6ec
JL
2919Sun Apr 24 00:13:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2920
2921 * config/tc-hppa.c (pa_ip): 13 bit immediate constant (for break
2922 instruction) is unsigned.
2923
92867d8e
ILT
2924Fri Apr 22 17:58:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2925
2926 * config/obj-ecoff.c (ecoff_frob_file): Use bfd_ecoff_set_gp_value
2927 and bfd_ecoff_set_regmasks to set the GP value and the register
2928 masks, rather than using the now obsolete fake .reginfo section.
2929
e860dfd0
KR
2930Fri Apr 22 15:17:06 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2931
2932 * listing.c (list_symbol_table): Don't print register symbols as
2933 undefined.
2934
988238d3
KR
2935 * config/obj-coff.c (obj_symbol_new_hook): Don't need to strip
2936 underscores, since symbol_new will already have done it.
2937 * config/obj-coffbfd.c (obj_symbol_new_hook): Ditto.
2938
a926dd6a
KR
2939 * as.c (main): If tc_init_after_args is defined, invoke it after
2940 all arguments have been processed.
2941
2942 Some changes to help Apollo support, from troy@cbme.unsw.edu.au:
2943 * as.c (perform_an_assembly_pass) [TE_APOLLO]: Create .wtext
2944 section instead of .text. Call create_target_segments.
2945 * read.c (demand_copy_string): No longer static.
2946
6fdc26e6
ILT
2947Thu Apr 21 15:50:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
2948
2949 * config/tc-mips.c (append_insn): Permit branches to be switched
2950 with the preceding instruction even if .set nobopt has been seen.
2951 .set nobopt actually controls whether to bring up an instruction
2952 from the branch target, which gas does not currently support.
2953
a6652b1c
KR
2954Wed Apr 20 18:46:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2955
71b4de6f
KR
2956 * config/obj-coff.h, config/obj-coff.c: Deleted all code used only
2957 when BFD_ASSEMBLER is not defined, and all conditionals relating
2958 to such code. No such targets remain.
2959
2960 Fixes for stabs-in-coff:
2961 * config/obj-coff.c: Include subsegs.h.
2962 (coff_frob_section): New function.
2963 (obj_coff_init_stab_section): New function.
2964 * config/obj-coff.h (obj_coff_init_stab_section,
2965 coff_frob_section): Declare.
2966 (obj_frob_section): New macro; uses coff_frob_section.
2967 (INIT_STAB_SECTION): New macro; uses obj_coff_init_stab_section.
2968
a6652b1c
KR
2969 * config/tc-sparc.c (md_section_align): Always round up to
2970 multiple of alignment power specified in bfd target vector.
d924d209
KR
2971
2972 * gasp.c: Include ctype.h.
2973
19990560
KR
2974Mon Apr 18 21:08:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
2975
2976 * doc/Makefile.in, doc/as.texinfo: Renamed asdoc-config.texi to
2977 asconfig.texi.
2978
2979 * doc/Makefile.in (install-info-as, install-info-gasp): Get file
2980 names from source directory without pathname.
2981
2982 * config/obj-vms.c (VMS_write_object_file): While looking for
2983 register mask, skip empty fill frags caused by enabling listing
2984 output.
2985
2986 * config/ho-sysv.h: Include string.h.
2987
2988 * doc/internals.texi: New (well, recently added) file. Just added
2989 info on as_warn and friends.
2990
9de7c1fc
JL
2991Mon Apr 18 14:28:22 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
2992
2993 * config/tc-hppa.c (pa_parse_space_stmt): Use the built-in
2994 defaults for defined, private, and spnum fields for the
2995 $TEXT$ and $PRIVATE$ spaces. Do not clobber spnum. Do
2996 not reset the segment if just updating a space.
2997 (pa_spaces_begin): Set BFD section flags for all built-in
2998 subspaces.
2999
e904716c
ILT
3000Fri Apr 15 10:51:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3001
37032d95
ILT
3002 * ecoff.c (first_proc_ptr): New static variable.
3003 (add_procedure): Set first_proc_ptr if it hasn't been set.
3004 (ecoff_build_lineno): If the first procedure does not start at
3005 address zero, insert a dummy line to compensate.
3006
e904716c
ILT
3007 * Makefile.in (bootstrap, bootstrap2, bootstrap3): Make gasp.new
3008 as well as as.new.
3009
d6f98c55
KR
3010Thu Apr 14 15:12:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3011
3012 * expr.c (operand): Try to parse "0f" and "0b" sequences as
3013 floating point and binary numbers respectively; if it doesn't
3014 work, treat them as local labels.
3015
c92d9ee9
KR
3016 * Makefile.in: Make $(OBJS) depend on $(ALL_OBJ_DEPS).
3017 * configure.in: Set ALL_OBJ_DEPS in output Makefile.
3018
3019 Based on suggestions from <BAILEY@hmivax.humgen.upenn.edu>
3020 (Charles Bailey):
3021 * vmsconf.sh: In generated file, get ".obj" suffix right, build
3022 source files from other directories into objects in the current
3023 directory, and specify PSECT attributes explicitly to linker.
3024 Also added missing label.
3025 * Makefile.in (stamp-mk.com): Reference new variable
3026 VMS_OTHER_OBJS for list of non-local object files, instead of
3027 listing them here.
3028 (VMS_OTHER_OBJS): New variable, added more libiberty files.
3029 * make-gas.com: Regenerated.
3030
3031 * config/ho-vms.h (unlink): Define as delete.
3032
3033 * config-gas.com: Fix quoting on TARGET_CANONICAL definition.
3034 Delete files before creating them.
3035
1a69212c
ILT
3036Thu Apr 14 13:34:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3037
b3cd8555
ILT
3038 * Makefile.in (de-stage1, de-stage2, de-stage3): Use rm -f.
3039
1a69212c
ILT
3040 * config/tc-mips.h (DIFF_EXPR_OK): Define.
3041 * config/tc-mips.c (macro_build): Permit BFD_RELOC_PCREL_LO16 for
3042 certain cases of 'i', 'j' and 'o'. Change 'u' to take an
3043 argument, the reloc type.
3044 (load_register): Pass reloc type to macro_build for 'u'.
3045 (macro): Likewise. For M_LA_AB permit a difference expression
3046 when generating embedded PIC code between an arbitrary symbol and
3047 a symbol in the .text section.
3048 (mips_force_relocation): Force BFD_RELOC_PCREL_HI16_S and
3049 BFD_RELOC_PCREL_LO16 to be emitted.
3050 (md_apply_fix): Check that most relocs are not PC relative.
3051 Handle BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
3052 (tc_gen_reloc): Change #error to as_fatal. Handle
3053 BFD_RELOC_PCREL_LO16 and BFD_RELOC_PCREL_HI16_S.
3054
cc886e3d
SS
3055Tue Apr 12 18:25:13 1994 Stan Shebs (shebs@andros.cygnus.com)
3056
3057 * subsegs.c (subsegs_begin): Call memset with args in the correct
3058 order.
3059 (subseg_get): Clear newly allocated seginfo, set its pointer slots
3060 to NULL instead of 0.
3061
05210990
JL
3062Mon Apr 11 09:00:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3063
caed9e82
JL
3064 * config/tc-hppa.c (pa_procend): Handle case where label was
3065 defined after the .proc directive.
3066
05210990
JL
3067 * config/tc-hppa.c (pa_procend): Give an error if we encounter a
3068 procend for a procedure without a name.
3069
1c803e52
ILT
3070Thu Apr 7 14:28:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3071
3072 * config/tc-mips.c (macro): Pass NULL for expression argument to
3073 macro_build for nori case.
3074 (SWITCH_TABLE): Define.
3075 (mips_force_relocation): Force a relocation for a switch table
3076 entry.
3077 (md_apply_fix): Write switch table entry value into file.
3078 (tc_gen_reloc): Use BFD_RELOC_GPREL32 for a switch table entry,
3079 and set the addend to the difference between the reloc address and
3080 the subtrahend.
3081
0b503989
JL
3082Thu Apr 7 10:38:18 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3083
3084 * config/tc-hppa.h (elf_tc_symbol): Delete. No longer used.
3085 (elf_tc_make_sections): Likewise.
3086 (hppa_tc_make_sections, hppa_tc_symbol): Delete extern decls.
3087
3088 * config/tc-hppa.c (hppa_tc_make_sections): Delete function.
3089 (hppa_tc_symbol): Likewise.
3090
3091 * config/obj-elf.c (elf_frob_file): Delete elf_tc_symbol and
3092 elf_tc_make_sections stuff. It was there to support PA braindamage
3093 which has been fixed, and in the case of elf_tc_make_sections is
3094 redundant with elf_tc_final_processing.
3095
f39a73b1
JL
3096Wed Apr 6 20:48:30 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3097
3098 * configure.in (hppa*-*-*elf*): Don't require "-hp-" for the
3099 manufacturer.
3100
f3645945
ILT
3101Tue Apr 5 15:48:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3102
3103 * config/tc-mips.c (mips_ip): For case 'o', when generating
3104 embedded PIC code, accept the difference between two local symbols
3105 as being constant.
3106 (mips_force_relocation): Only force a reloc to be generated for a
3107 PC relative fixup.
3108 (md_apply_fix): For BFD_RELOC_32 and BFD_RELOC_LO16, put the fixup
3109 value into the file if the fixup will not generate a reloc.
3110
03fcf1f8
KR
3111Tue Apr 5 11:14:14 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
3112
3113 * config/tc-sparc.c (s_reserve): If section passed isn't bss,
3114 don't spew remainder of input file in error message.
3115 (tc_gen_reloc): If bfd_reloc_type_lookup returns null, print error
3116 message with reloc type and try to process remainder of file.
3117
3118 * doc/Makefile.in (install-info-as, install-info-gasp): New
3119 targets, now explicitly checking $(srcdir) for info files.
3120 (install-info): Depend on both of them; do nothing more.
3121
79381848
JL
3122Mon Apr 4 17:06:04 1994 Jeffrey A. Law (law@cygnus.com)
3123
3124 * config/tc-hppa.c (tc_gen_reloc): Fix thinko in ELF version.
3125
1e147242
ILT
3126Mon Apr 4 12:39:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3127
1937a665
ILT
3128 * config/tc-ppc.c (ppc_insert_operand): Check PPC_OPERAND_SIGNED
3129 flag rather than signedp field. Only permit extended range if
3130 PPC_OPERAND_SIGNOPT flag is set and assembling in 32 bit mode.
3131 Based on patch from David Edelsohn (edelsohn@npac.syr.edu).
3132
1e147242
ILT
3133 * config/tc-ppc.c (ppc_size): New static variable.
3134 (ppc_arch): Check for PPC_OPCODE_PPC before PPC_OPCODE_POWER.
3135 (md_begin): If an instruction has a size specific flag set, only
3136 add it if we are assembling that size.
3137
7ab2e983
ILT
3138Thu Mar 31 16:51:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3139
3140 * config/tc-sparc.c (tc_gen_reloc): Add a gruesome hack to get
3141 cross section PC relative relocs right for COFF and ELF.
3142
75d20ac8
KR
3143Mon Mar 28 14:38:23 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3144
3145 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Always define.
3146 (OBJ_PROCESS_STAB): Don't define.
3147
57afabd0
ILT
3148Mon Mar 28 12:40:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3149
3150 * config/obj-aout.c (obj_aout_frob_symbols): Don't let BFD clobber
3151 the type of symbol set symbols which happen to be in the absolute
3152 or undefined section.
3153
882bdc69
ILT
3154Mon Mar 28 12:35:00 1994 David Edelsohn (edelsohn@npac.syr.edu)
3155
3156 * config/tc-ppc.c (md_parse_option): Add -mpwrx (POWER/2 aka
3157 RIOS2), -mpwr (POWER aka RIOS1), -mppc (PowerPC aka MPC603/604),
3158 and -many (all architectures).
3159
de3ffc7a
JL
3160Sun Mar 27 14:04:19 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3161
3162 * config/tc-hppa.c (tc_gen_reloc): Set addend for relocation
3163 involving a function symbol which is not a plabel to zero.
3164 (md_apply_fix): Never pass a function symbol to field_adjust.
3165
5b63f465
ILT
3166Fri Mar 25 17:35:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3167
645f842c
ILT
3168 * config/obj-aout.c (obj_aout_frob_symbol): If N_EXT is set for an
3169 N_INDR symbol, set BSF_EXPORT and clear BSF_LOCAL.
3170
5b63f465
ILT
3171 * config/tc-mips.c (append_insn): If EMBEDDED_PIC, don't swap a
3172 branch with an instruction that uses $at, in case the branch is
3173 later expanded.
3174 (macro): If EMBEDDED_PIC, case M_JAL_A may use $at.
3175 (md_pcrel_from): If not OBJ_AOUT, return 4 for an undefined symbol
3176 to make it pcrel_offset.
3177 (tc_gen_reloc): If not OBJ_AOUT, set the reloc addend to
3178 reloc->address; another gruesome hack to get gas reloc handling to
3179 do the right thing.
3180
11d7c064
KR
3181Thu Mar 24 21:29:29 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3182
3183 * config/tc-alpha.c (alpha_ip): Only set GP prolog size if using
3184 PV register.
3185 (T12): New macro.
3186 (emit_insn): New function.
3187 (md_assemble): Call it.
3188 (alpha_force_relocation): Handle BFD_RELOC_26, for call_pal
3189 instructions.
3190 (lituse_pending): New variable. Set by anything that generates a
3191 LITERAL reloc, cleared by anything that generates a LITUSE reloc,
3192 tested by code that might want to emit a LITUSE reloc.
3193 (emit_unaligned_io): New function. Currently calls md_assemble,
3194 but it should eventually be converted to generate the insn itself
3195 and call emit_insn directly.
3196 (emit_load_unal, emit_store_unal, emit_byte_manip_r,
3197 emit_extract_r, emit_insert_r, emit_mask_r, emit_sign_extend,
3198 emit_bis_r): Likewise.
3199 (alpha_ip, case 'I'): Handle with BFD_RELOC_23.
3200 (alpha_ip, label get_macro): Don't emit the final instruction if
3201 the opcode is zero.
3202 (alpha_ip, case 'B', subcase 'd'): New case, for subword and
3203 unaligned memory access macros.
3204 (md_apply_fix): Handle BFD_RELOC_26. Generate an error message if
3205 the value can't be resolved.
3206
3207Wed Mar 23 16:06:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3208
3209 * config/tc-mips.c (md_parse_option): For -membedded-pic, force
3210 the -G value to 0x7fffffff. For SVR4 PIC options, don't call
3211 bfd_set_gp_size here, it's done in md_begin. Don't permit -G with
3212 -membedded-pic.
3213 (mips_force_relocation): New function.
3214 (md_apply_fix): Set fixP->fx_done appropriately.
3215 (s_change_sec): For EMBEDDED_PIC, change .data and .rdata to
3216 .sdata.
3217 * config/tc-mips.h (TC_FORCE_RELOCATION): Define.
3218 (mips_force_relocation): Declare.
3219 (TC_HANDLE_FX_DONE): Define.
3220
e1b5066f
ILT
3221Tue Mar 22 13:58:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3222
d9aba805
ILT
3223 * config/tc-mips.c (enum mips_pic_level): New enum.
3224 (mips_pic): Change from int to enum mips_pic_level. Change all
3225 uses (0 becomes NO_PIC, 2 becomes SVR4_PIC).
3226 (load_address): Handle EMBEDDED_PIC.
3227 (macro): Handle EMBEDDED_PIC in all PIC cases.
3228 (md_parse_option): Accept -membedded-pic to use EMBEDDED_PIC. If
3229 OBJ_ELF, accept -KPIC and -call_shared to use SVR4_PIC and accept
3230 -non_shared to use NO_PIC (this is how the Irix 5 assembler
3231 works). Do not permit -G with SVR4_PIC.
3232 (s_abicalls): Warn if -G was used, and force -G 0.
3233 (tc_gen_reloc): Set reloc->addend to 0 for a PC relative reloc for
3234 anything but a.out, not just for ELF. For ECOFF, don't generate a
3235 BFD_RELOC_16_PCREL_S2 reloc unless using EMBEDDED_PIC.
3236
e1b5066f
ILT
3237 * config/obj-ecoff.h (obj_sec_sym_ok_for_reloc): Define to be 1.
3238
3239Sun Mar 20 16:31:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3240
3241 * config/tc-hppa.c (create_new_space): Use ints, not chars as
3242 parameters to avoid losing when compiling with HP CC.
3243 (create_new_subspace, update_subspace, fix_new_hppa): Likewise.
3244
1871f91a
KR
3245Sun Mar 20 14:43:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3246
c37f6138
KR
3247 * Makefile.in (config-stamp): If `defs' is defined, emit a
3248 preprocessor directive to create a macro named by this value into
3249 config.new; don't explicitly go for BFD_ASSEMBLER.
3250 * configure.in: Define `defs', not `BFDDEF'. Set it to
3251 MANY_SEGMENTS for any obj-coffbfd target.
3252 * config/obj-coffbfd.h (BFD_HEADERS, BFD): Define.
3253 * config/i386coff.mt (TDEFINES): Don't define BFD, MANY_SEGMENTS,
3254 or BFD_HEADERS.
3255 (LOCAL_LOADLIBES): Deleted.
3256 * config/m68kcoff.mt (TDEFINES): Don't define those macros.
3257 * config/m88kcoff.mt (TDEFINES): Ditto.
3258 * config/ebmon29k.mt: Deleted.
3259 * config/h8300hds.mt: Deleted.
3260 * config/ic960coff.mt: Deleted.
3261 * config/sparc.mt: Deleted.
3262 * config/h8300.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
3263 * config/h8500.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
3264 * config/sh.mt (LOCAL_LOADLIBES, TDEFINES): Deleted.
3265 * config/z8k.mt (LOCAL_LOADLIBES): Deleted.
3266 (TDEFINES): Don't define the coffbfd macros.
3267
3268 * Makefile.in: Insert makefile fragments before OBJS definition.
3269 (OBJS): Add $(TE_OBJS).
3270
3680de74
KR
3271 * config/obj-coff.c (obj_pseudo_table): Supply "section"
3272 unconditionally.
3273
1871f91a
KR
3274 * write.c (set_symtab): Define only if BFD_ASSEMBLER.
3275
c20c7506
JL
3276Sun Mar 20 12:06:05 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3277
3278 * Makefile.in (STAGESTUFF): Add gasp.new.
3279
634233a3
KR
3280Fri Mar 18 20:09:16 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3281
1cf7548e
KR
3282 * write.c (symbol_table_frozen): New variable, to be set after
3283 bfd_set_symtab is called.
3284 (dump_section_relocs): Note whether a symbol is a section symbol
3285 or not.
3286 (adjust_reloc_syms): For now, always supply an absolute symbol for
3287 fixups without symbols but not yet `done'. Use section_symbol to
3288 get the symbol, instead of going directly for abs_symbol.
3289 (write_relocs) [DEBUG4]: Abort if any symbol referred to by a
3290 reloc is not a section symbol and is not in the symbol table.
3291 (set_symtab): New function, broken out from write_object_file.
3292 Counts symbol table instead of relying on an earlier count.
3293 (write_object_file): Call set_symtab, but do it after potentially
3294 invoking the *_frob_file macros. Don't bother counting symbols.
3295 Call symbol_remove, instead of expanding it in place. Moved the
3296 conditionalized `object_file_size' declaration down to
3297 conditionalized block where it's used. When using the absolute
3298 symbol for a fixup without a symbol, set sy_used_in_reloc.
3299 (write_object_file) [BFD_ASSEMBLER]: Call section_symbol to get
3300 the correct symbol for the absolute section.
3301
ec3c65e1
KR
3302 * subsegs.c (section_symbol): Use symbol_new instead of
3303 symbol_make, since we may want it to go into the symbol table.
3304 Make the new symbol have internal linkage. If
3305 obj_sec_sym_ok_for_reloc says it's okay, use the BFD section
3306 symbol with the newly created GAS symbol.
3307 (obj_sec_sym_ok_for_reloc): Default to always returning 0.
3308 * config/obj-aout.h (obj_sec_sym_ok_for_reloc) [BFD_ASSEMBLER]:
3309 New macro.
3310 * config/obj-elf.h (obj_sec_sym_ok_for_reloc): New macro.
3311
3312 * config/tc-sparc.c: Include subsegs.h.
3313 (in_signed_range): New function.
3314 (sparc_ip): Use it.
3315 (sparc_ip, case 'i'): Use BFD_RELOC_SPARC13, not _BASE13.
3316 (sparc_ip, label "immediate"): Reject constants for pcrel
3317 instructions only if the relocation type indicates a "call"
3318 instruction and the offset is within range of a "jmpl %g0". If
3319 it's not in range, use the absolute section symbol plus an offset.
3320 (md_apply_fix): Use in_signed_range. Combined _SPARC13 and
3321 _BASE13 cases.
3322 (tc_gen_reloc): Permit BFD_RELOC_SPARC13.
3323
1be3cf74
KR
3324 * config/ic960coff.mt (TDEFINES): Fixed typo (MANY_SECTIONS, not
3325 MANY_SEGMENTS).
3326
634233a3
KR
3327 * configure.in: Eliminated all targets using obj-coff but not
3328 defining BFD_ASSEMBLER; I think all such targets that are
3329 supported will be matched by real CPU-OS combinations earlier in
3330 the case statement.
3331 (targets *-*-coff*, *-sysv*, *-*-sco*, *-*-sysv32): Deleted. Made
3332 some comments about the dpx2 configuration, but left it disabled,
3333 since it couldn't be reached before.
3334 (target a29k-amd-ebmonold): Deleted.
3335
49ccc555
JL
3336Thu Mar 17 13:36:09 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3337
3338 * config/tc-hppa.c (pa_import): Correctly handle importing of an
3339 already defined symbol.
3340
23dc1ae3
ILT
3341Wed Mar 16 17:11:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3342
614a3211
ILT
3343 * config/tc-mips.c (mips_ip): Only accept overly large values for
3344 the 'j' operand if there are no further alternatives for this
3345 instruction.
3346
d6e6bc1c
ILT
3347 * config/obj-coffbfd.c (adjust_stab_section): Initialize
3348 stabstrseg to SEG_UNKNOWN, not -1. After loop, check whether it
3349 is not SEG_UNKNOWN rather than checking whether it is >= 0.
3350
23dc1ae3
ILT
3351 * config/tc-mips.c (mips_align): Take new argument, label, and use
3352 it instead of global insn_label.
3353 (s_align, s_cons, s_float_cons, s_gpword): Save insn_label before
3354 call to mips_emit_delay and pass it to mips_align.
3355
3356Wed Mar 16 11:54:12 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3357
c38c91da
JL
3358 * config/tc-hppa.c (pa_equ): Handle both .reg and .equ correctly.
3359
f2ada910
JL
3360 * config/tc-hppa.c (pa_callinfo): Accept "millicode" as an
3361 argument to a .callinfo directive. Don't loop forever on errors.
3362
c38c91da 3363 * config/tc-hppa.c (pa_equ): Use pa_parse_number so that we can
23dc1ae3
ILT
3364 use pre-defined registers as arguments.
3365
954979ca
KR
3366Mon Mar 14 14:29:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3367
dbc529c4
KR
3368 * write.c (write_object_file): Check both S_IS_LOCAL and
3369 S_IS_EXTERNAL when deciding whether to discard a symbol.
3370
3371 * config-gas.com: Scan Makefile.in, not version.c, for current
3372 version number. Delete all versions of temp files when finished
3373 with them. Create config.h.
3374
3375 * config/obj-vms.c (VMS_Initialized_Data_Size): Cache symbol
3376 values to reduce number of lookups with S_GET_VALUE. Skip debug
3377 symbols to avoid "a really nasty bug". (From Holger Teutsch,
3378 holger@botbso.rhein-main.de.)
3379 (VMS_write_object_file): For "__vt.*" symbols, set S_GET_OTHER
3380 field. (Also from Holger Teutsch.) Watch for a would-be register
3381 mask that spans frags.
3382
3383 * config/obj-coffbfd.c (obj_coff_line): Set symbol lnno field with
3384 this_base, not line_base. (Patch from Andreas Arens,
3385 ari@obelix.av.rwth-aachen.de.)
3386
3387 * config/obj-aout.c (obj_crawl_symbol_chain): Retain symbols that
3388 look local if they're exported or undefined. Used to be done for
3389 i960 only.
3390
3391 * read.c (s_lcomm, s_comm): Print symbol name being redefined.
3392 Get it from the looked-up symbol, instead of using the string from
3393 the input stream, which is no longer null-terminated.
3394 (LEX_PCT): New macro, defaults to 0.
3395 (lex_type): Use it for `%'.
3396
3397 * config/tc-vax.c (md_parse_option): Handle `-h#' option for VMS.
3398 (vip_op): Now static, and returns void. Callers changed. Added
3399 forward decl.
3400 (vip): Ditto. Call as_fatal directly if a program bug is
3401 detected.
3402 (op_hash): Let default initialization suffice.
3403
954979ca
KR
3404 * Makefile.in (literal.o): Provide dependencies.
3405
3406 * configure.in: Set new makefile variable OPCODES_LIB.
3407 * Makefile.in (LIBS): Use it.
3408
3409 * Makefile.in (make-gas.com, stamp-mk.com): New targets.
3410 * vmsconf.sh: New file.
3411 * make-gas.com: Regenerated from new script.
3412
3413 * configure.in (sparc*-*-lynxos*): Handle any version number
3414 suffix after "lynxos". Set emulation to lynx.
3415
3416Mon Mar 14 11:30:49 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
3417
3418 * config/obj-coff.c (obj_coff_section): Delete declaration.
3419
62ea7974
ILT
3420Fri Mar 11 22:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3421
3422 * config/tc-ppc.c (md_pcrel_from): Return 0 for undefined ELF
3423 symbols.
3424 (ppc_is_toc_sym): Change .toc to .got.
3425 (md_apply_fix): Change handling of ELF relocs.
3426 (tc_gen_reloc): Likewise.
3427
63ca2e81
KR
3428Fri Mar 11 17:42:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3429
3430 * config/obj-vms.c (Close_VMS_Object_File): Add comment pointing
3431 out some code that doesn't belong in this file.
3432
3433 * config/obj-vms.h: Include aout/stab_gnu.h.
3434 (N_GSYM, ..., N_LENG): Deleted.
3435 (NO_RELOC): Undefine before defining as part of enum reloc_type.
3436
3437 * config/tc-alpha.c: Add comment questioning need for all the
3438 characters in FLT_CHARS.
3439
3440 * as.c (main) [OBJ_VMS]: Don't call output_file_close.
3441
3442 * config/obj-ecoff.c (ecoff_frob_file): Set strict order for
3443 sections with recognized names, before computing VMA values.
3444
be22008b
ILT
3445Fri Mar 11 17:56:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3446
3447 * config/tc-mips.c (mips_ip): Accept numbers between 0x8000 and
3448 0xffff for 'j' to be compatible with MIPS assembler. These
3449 numbers are actually treated as negative.
3450
2c6db5a1
DE
3451Thu Mar 10 13:36:29 1994 Doug Evans (dje@canuck.cygnus.com)
3452
3453 * config/tc-sparc.h (LOCAL_LABEL): Local labels are .Lfoo.
3454
9e12fbbc
KR
3455Tue Mar 8 21:17:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3456
3457 * config/obj-coff.c: Minor formatting/stylistic changes, plus:
3458 (obj_coff_section): Declare.
3459 (obj_pseudo_table): Make it available only if MANY_SECTIONS.
3460 (obj_symbol_to_chars) [CROSS_COMPILE]: Some attemps to make this
3461 work. It still doesn't. It now fails to compile, instead of
3462 silently compiling to do nothing.
3463 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define only if
3464 MANY_SECTIONS.
3465 (OBJ_PROCESS_STAB) [! MANY_SECTIONS]: New macro, just emits
3466 warning.
3467
3468 Handle Alpha load-immediate-FP pseudo-instructions:
3469 * config/alpha-opcode.h (ldif, ldig, ldis, ldit): New patterns.
3470 * config/tc-alpha.c (lit8_sec, lit4_sec, lit8_sym, lit4_sym): New
3471 variables.
3472 (create_literal_section): New function.
3473 (create_lita_section): Now a macro.
3474 (get_lit8_offset, get_lit4_offset): New functions.
3475 (maybe_set_gp): New function.
3476 (select_gp_value): Call it.
3477 (load_expression): Preserve addend if symbol is a section symbol.
3478 (alpha_ip): Handle new operand type `F' for floating-point
3479 constants; store them in .lit{4,8} sections.
3480 (alpha_ip, case 'G'): Emit LITUSE relocations for symbol exprs.
3481
3482 * config/tc-i386.c (smallest_imm_type): Never return Imm1.
3483
2bac8c54
SC
3484Tue Mar 8 14:18:15 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3485
3486 * config/obj-coffbfd.c (w_strings): Only copy strings out if
3487 their symbols are going to be written.
3488
d16938f5
ILT
3489Tue Mar 8 11:49:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3490
3491 * messages.c (as_perror): Declare arguments const.
3492 * as.h (as_perror): Change declaration.
3493
8ea7f4e8
ILT
3494Mon Mar 7 16:08:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3495
3496 * config/tc-mips.c (load_address): When calling frag_grow, allow
3497 for the (up to) two nops which may be inserted by append_insn if
3498 mips_optimize is 0.
3499 (macro): Likewise.
3500
fa47b47e
DE
3501Thu Mar 3 11:37:55 1994 Doug Evans (dje@canuck.cygnus.com)
3502
3503 * config/atof-ieee.c (make_invalid_floating_point_number):
3504 Add cast to avoid warning from gcc.
3505
34b16850
JL
3506Wed Mar 2 10:31:01 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3507
fb338f1d
JL
3508 * config/tc-hppa.c: Add a few casts to make HP C compiler happy.
3509
3510 * config/obj-som.c (obj_som_version, obj_som_copyright): Be
3511 prepared
3512 to handle an error from bfd_som_attach_aux_hdr.
3513
34b16850
JL
3514 * config/tc-hppa.h: Wrap ELF specific decls inside an ifdef.
3515
994fde6d
KR
3516Mon Feb 28 15:03:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3517
3518 * config/tc-alpha.c (md_atof): Omit warning about FP values.
3519 (line_comment_chars): Add ! to list.
3520 (md_apply_fix): Do process 32- and 64-bit relocations.
3521
3522 * config/obj-coffbfd.c (obj_coff_lcomm): Put "#if 0" around the
3523 unused parts (most of the function).
3524 (obj_coff_init_stab_section): Cast alloca result.
3525
3526 * configure.in (i960-*-coff, i960-*-vxworks5.*): Use coffbfd, and
3527 gas_target ic960coff.
3528 * config/ic960coff.mt: New file.
3529 * config/obj-coffbfd.h [TC_I960]: Include coff/i960.h.
3530 (TARGET_FORMAT) [TC_I960]: Use coff-Intel-little.
3531 * config/te-ic960.h (CROSS_COMPILE): Don't undef this. We'll
3532 always build little-endian object files.
3533 * config/tc-i960.c (md_reloc_size): Don't define at all if BFD or
3534 BFD_ASSEMBLER is defined.
3535 (mem_fmt): Since COFF doesn't handle callx relocations yet, treat
3536 them like normal 32-bit relocations.
3537 (md_apply_fix): For callx relocations, store zero.
3538 (tc_bout_fix_to_chars): Store symbol index for all callx
3539 relocations, regardless of link-relax setting.
3540 (tc_coff_fix2rtype, tc_coff_sizemachdep): New functions.
3541 (i960_handle_align) [! OBJ_BOUT]: If link-relax option is
3542 selected, print an error message and clear it.
3543 * config/tc-i960.h (BFD_ARCH, COFF_FLAGS, COFF_MAGIC,
3544 TC_COUNT_RELOC, TC_COFF_FIX2RTYPE, TC_COFF_SIZEMACHDEP,
3545 tc_fix_adjustable): New macros.
3546 (tc_coff_fix2rtype, tc_coff_sizemachdep): Declare.
3547
e03095c9
JL
3548Fri Feb 25 20:56:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3549
3550 * config/tc-hppa.c (hppa_tc_symbol): Call PA ELF BFD version.
3551 (hppa_tc_make_sections): Likewise.
3552 (pa_build_symextn_section): Delete unused function.
3553 (hppa_tc_make_symextn_section): Likewise.
3554 (pa_export): Delete call to pa_build_symextn_section.
3555
3556 * config/tc-hppa.h (hppa_tc_symbol): Add extern decl.
3557 (elf_hppa_final_processing): Delete extern decl.
3558 (hppa_tc_symbol): Delete extern decl.
3559
3919ffeb
ILT
3560Fri Feb 25 13:15:31 1994 Ian Lance Taylor (ian@cygnus.com)
3561
3562 * config/obj-coffbfd.c (fill_section): Correct test for whether to
3563 fill a section (from Minh Tran-Le <TRANLE@intellicorp.com>).
3564
f95de5d9
KR
3565Thu Feb 24 11:30:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3566
3919ffeb
ILT
3567 * configure.in: Don't require version number for i386-*-mach.
3568
f95de5d9
KR
3569 * read.c (potable): Added ".this_GCC_requires_the_GNU_assembler",
3570 which is ignored by gas, but will cause other assemblers to choke.
3571 Intended for use by gcc ports that require gas instead of native
3572 assemblers.
3573
cb6af928
JL
3574Thu Feb 24 07:10:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3575
3576 * config/ho-hppaosf.h: Fix braino in test for ANSI-C.
3577
08c5812c
JL
3578Wed Feb 23 16:51:43 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3579
3580 * write.c (write_contents): Give the user a reasonable error
3581 message rather than "assertion failed" if bfd_set_section_contents
3582 fails.
3583
c9c45af1
KR
3584Tue Feb 22 10:07:32 1994 Ken Raeburn (raeburn@rtl.cygnus.com)
3585
3586 * config/ho-mach3.h: New file.
3587
9eb5f4b8
ILT
3588Mon Feb 21 11:41:18 1994 Ian Lance Taylor (ian@cygnus.com)
3589
2e5fdb1d
ILT
3590 * ecoff.c (ecoff_build_debug): Don't set hdr->magic here. It is
3591 now set in bfd/ecofflink.c:ecoff_write_symhdr.
3592
9d90491e
ILT
3593 * config/obj-coffbfd.c (write_object_file): use bfd_get_error (),
3594 not bfd_error.
3595 * config/obj-elf.c (elf_frob_file): Likewise.
3596
3597 * read.c (s_lcomm): Use an alignment power of 3 for 8 byte .lcomm
3598 variables.
3599
c8d02404
ILT
3600 * config/ho-hpux.h (BROKEN_ASSERT): Define if not __GNUC__.
3601
9eb5f4b8
ILT
3602 * read.c (read_a_source_file): Use correct arguments to memcpy
3603 (broken 19 Jul 1993). From kjd@pescadero.stanford.edu (Kenneth
3604 Duda).
3605
4d88d6dc
ILT
3606Sun Feb 20 18:01:54 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
3607
3608 * config/obj-coff.h (obj_coff_section): Declare.
3609 * config/obj-coff.c (obj_pseudo_table): For "section", use
3610 obj_coff_section.
3611 (obj_coff_section): Rewrite.
3612
741f4d66
KR
3613Fri Feb 18 14:16:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3614
9e0cbfbb
KR
3615 * configure.in (i386-*-mach3*): New target; uses BFD.
3616 * config/te-mach.h: New file.
3617 * config/obj-aout.c (obj_aout_frob_file): New function.
3618 * config/obj-aout.h (obj_aout_frob_file): Declare it.
3619 (frob_file): New macro.
3620 * config/tc-i386.c (md_apply_fix_1) [TE_Mach]: Don't adjust
3621 pcrel32 relocations.
3622 * config/tc-i386.h (TARGET_FORMAT) [TE_Mach]: Use a.out-mach3.
3623
741f4d66
KR
3624 * write.c (write_object_file): Removed register declarations.
3625
5e65fbc8
ILT
3626Thu Feb 17 16:25:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3627
254f8450 3628 Some support for PowerPC ELF.
5e65fbc8
ILT
3629 * configure.in: If cpu is powerpc*, use ppc.
3630 (ppc-*-sysv4*): Use object format elf.
3631 * config/tc-ppc.h: Only declare a number of things if OBJ_COFF is
3632 defined.
3633 (TARGET_ARCH): Make it call ppc_arch.
3634 (ppc_arch): Declare.
3635 (TARGET_FORMAT): Set based on OBJ_COFF or OBJ_ELF.
3636 (NO_STRING_ESCAPES): Define.
3637 (LOCAL_LABEL, FAKE_LABEL_NAME): Define for OBJ_ELF.
3638 * config/tc-ppc.c: Only define a number of functions of OBJ_COFF
3639 is defined.
3640 (md_pseudo_table): Most pseudo-ops are OBJ_COFF specific. Added
3641 OBJ_COFF specific "bi" and "ei".
3642 (md_parse_option): Fix handling of -u. Make -m601 set
3643 PPC_OPCODE_601. If OBJ_ELF, accept -V and -Q.
3644 (ppc_set_cpu): New function.
3645 (ppc_arch): New function.
3646 (md_begin): Call ppc_set_cpu.
3647 (ppc_insert_operand): For a signed operand accept an unsigned
3648 value, for IBM compatibility.
3649 (ppc_byte): Don't call stringer for strings; instead, treat two
3650 double quotes as a single double quote.
3651 (ppc_comm): Set sy_tc.output for a .lcomm symbol.
3652 (ppc_biei): New function.
3653 (ppc_tc): If not OBJ_COFF, ignore first argument.
3654 (ppc_fix_adjustable): Call as_bad_where, not as_bad.
3655 (ppc_is_toc_sym): New function.
3656 (md_apply_fix): Use ppc_is_toc_sym. Handle BFD_RELOC_16 and
3657 BFD_RELOC_8.
3658
f61b81b7
DM
3659Thu Feb 17 09:29:37 1994 David J. Mackenzie (djm@thepub.cygnus.com)
3660
3661 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_get_error and
3662 bfd_set_error and new error names.
3663
c25be7f4
KR
3664Tue Feb 15 20:23:20 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3665
3666 * configure.in: Support i960-vxworks versions > 5.0 as coff.
3667 Default is still bout if no version is specified.
3668
04bde70d
KR
3669 * atof-generic.c (atof_generic): Use switch and strcasecmp instead
3670 of large number of compares when looking for inf/nan values.
3671
b1237b9d
ILT
3672Fri Feb 11 13:13:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3673
3674 * config/tc-mips.c (macro): Do unaligned loads and stores
3675 correctly when big endian, and give errors on overflow rather than
3676 generating incorrect code.
3677
605e1d90
ILT
3678Thu Feb 10 11:24:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3679
3680 * as.c: Include libiberty.h.
3681
3682 * read.c (do_align): Don't define label just_record_alignment
3683 unless it might be used.
3684
3685 * as.c (main): If md_parse_long_option is defined, call it with a
3686 long option.
3687 * config/tc-mips.h (md_parse_long_option): Define.
3688 * config/tc-mips.c (mips_trap): New static variable.
3689 (md_begin): Report an error if mips_trap is set at ISA level 1.
3690 (macro): If mips_trap, use trap instructions instead of break
3691 instructions for overflow and divide by zero detection.
3692 (mips_parse_long_option): New function. Support --trap,
3693 --no-break, --break and --no-trap.
3694 * doc/as.texinfo: Document new options.
3695
3696 * read.c (potable): Add "zero".
3697 * config/tc-i386.c (md_pseudo_table): Remove "zero".
3698 * config/tc-m88k.c (md_pseudo_table): Likewise.
3699
6440d65c
KR
3700Thu Feb 10 01:24:27 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3701
3702 * config/tc-sparc.c (sparc_ip): Reject integer values for
3703 pc-relative operand fields. This forces "call 0" to become "jmpl
3704 %g0,%o7" with no relocations needed.
3705
ddb393cf
ILT
3706Wed Feb 9 13:08:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3707
d87c080e
ILT
3708 * as.h (xmalloc, xrealloc): Declare using PTR rather than char *.
3709 * xmalloc.c (xmalloc, xrealloc): Use PTR rather than char *.
3710
ddb393cf
ILT
3711 * app.c (do_scrub_next_char): If NO_STRING_ESCAPES is defined,
3712 don't treat backslash specially inside strings.
3713 * read.c (next_char_of_string): Likewise.
3714
66c774bb
SS
3715Wed Feb 9 09:42:45 1994 Stan Shebs (shebs@andros.cygnus.com)
3716
3717 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use memset
3718 instead of memcpy to zero the initial stab symbol, duh.
3719 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
3720 * config/obj-som.c (obj_som_init_stab_section): Ditto.
3721
356315fe
ILT
3722Tue Feb 8 17:25:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3723
3724 * write.c (fixup_segment): Use as_bad_where, not as_bad.
3725
3726 * subsegs.c (subseg_set_rest): Call memset with the arguments in
3727 the right order. Explicitly clear fix_root and fix_tail fields.
3728
df44a852
KR
3729Tue Feb 8 16:00:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3730
cfaf70e3
KR
3731 * config/obj-coff.c (coff_frob_symbol): For abs_symbol, set *punt
3732 and do nothing else.
3733
3734 * symbols.c (symbol_begin): Initialize value of abs_symbol
3735 properly.
3736
3737 * write.c (adjust_reloc_syms): Use abs_symbol instead of calling
3738 section_symbol.
3739
cafb569b
KR
3740 * ecoff.c (ecoff_build_debug): Fix "/*" in comment to silence
3741 complaint from "gcc -Wall".
3742
7496639a
KR
3743 * configure.in (alpha-*-netware*): New target, like alpha-*-osf*.
3744
8a74b870
KR
3745 * config/tc-alpha.c (GP_ADJUSTMENT): Move definition to start of
3746 file.
3747 (tc_gen_reloc): Remove uninitialized variable `code', and code
3748 that tried to use it (incorrectly). For LITERAL reloc, set addend
3749 to negative of GP value.
3750 (load_symbol_address): Don't adjust return value by GP_ADJUSTMENT.
3751
df44a852
KR
3752 * write.c (write_relocs): Print some sensible error message if
3753 bfd_perform_relocation returns bfd_reloc_overflow.
3754
3755Mon Feb 7 15:49:24 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3756
3757 * configure.in (hppa*-*elf*): New configuration for PA ELF.
3758 (hppa*-*-osf*): Default object format is SOM.
3759
c3591adb
KR
3760Mon Feb 7 16:07:35 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3761
2d33b3aa
KR
3762 * config/tc-alpha.c (md_atof): Warn that floating-point values
3763 might not assemble properly.
3764
c3591adb
KR
3765 * configure.in (target alpha-*-osf*): Don't set "dev=yes" any
3766 more.
3767
3768 * config/tc-alpha.c (load_expression): Parenthesize operations in
3769 range checking, to avoid precedence questions.
fc6b54fd 3770
c3591adb
KR
3771 * config/tc-alpha.c (addr32): New static variable.
3772 (md_parse_option): Set it for "-32addr".
3773 (load_symbol_address): If addr32 is set, use ldl instead of ldq.
3774
3775 * atof-generic.c (atof_generic): Calculate maximum_useful_digits
3776 and more_than_enough_bits_for_digits in integer arithmetic, to
3777 eliminate the only sources of dependence on floating point
3778 support, which doesn't work yet on the Alpha.
3779
3780Mon Feb 7 03:56:05 1994 Ken Raeburn (raeburn@cambridge.cygnus.com)
fc6b54fd
KR
3781
3782 * ecoff.c (ecoff_build_debug) [TC_ALPHA]: Specify version stamp as
3783 0x30b for Alpha for now, until ".verstamp" is handled.
3784
3785 * literal.c (add_to_literal_pool): Use seginfo->frchainP, which
3786 actually refers to the literal pool section, rather than
3787 frchain_now, which refers to whatever section the assembler was
3788 in.
3789
3790 * write.c (fixup_segment): Only do range checking if size of fixup
3791 is smaller than word size. Otherwise, we always wind up with
3792 zeros.
3793
5facbfd4
KR
3794 * config/tc-alpha.c (md_section_align): Change second argument and
3795 return type to valueT, to agree with tc.h.
3796 (alpha_do_align): Local static array nop_pattern is now unsigned
3797 char, to avoid overflow warnings.
3798 * config/tc-alpha.h (md_section_align): Delete declaration.
3799
3800 * config/obj-ecoff.c (ecoff_frob_file): Ensure that ecoff_data for
3801 output bfd is non-null before indirecting through it.
3802
3803 * config/tc-alpha.c (alpha_frob_ecoff_data): Renamed from
3804 alpha_frob_file.
3805 * config/tc-alpha.h (tc_frob_file): Macro deleted.
3806 * config/obj-ecoff.c (ecoff_frob_file) [TC_ALPHA]: Call
3807 alpha_frob_ecoff_data, then fill in optional-header info with gp
3808 value and register masks.
3809
dc536cc0
JL
3810Sun Feb 6 16:13:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3811
f8693e71
JL
3812 * configure.in (hiux): Fixes from m-kasahr@sramhc.sra.co.JP.
3813
dc536cc0
JL
3814 * config/obj-som.c (obj_som_init_stab_section): Same change
3815 as coffbfd and elf below. Zero the initial stab symbol after
3816 allocating it.
3817
41b5ef0f
SS
3818Sat Feb 5 12:30:32 1994 Stan Shebs (shebs@andros.cygnus.com)
3819
3820 * config/obj-coffbfd.c (obj_coff_init_stab_section): Zero the
3821 initial stab symbol after allocating it.
3822 * config/obj-elf.c (obj_elf_init_stab_section): Ditto.
3823
fa4beb7e
JL
3824Sat Feb 5 11:53:31 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3825
3826 * config/tc-hppa.c (pa_ip): addb[tf] should only accept
3827 non-negated condition completers. Add support for addb pseudo-op
3828 which accepts both negated and non-negated completers.
3829
1c11ab0e
ILT
3830Sat Feb 5 00:15:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3831
3832 * configure.in (rs6000*): Use cpu_type ppc.
3833 (ppc-*-aix*): New target; use coff and force bfd_gas.
3834 * config/tc-ppc.h, config/tc-ppc.c: New files for PowerPC/POWER
3835 (RS/6000) support. At the moment, only XCOFF is supported.
3836
3837 * config/obj-coff.c (SA_SET_SYM_ENDNDX): Made non-static.
3838 (S_SET_DATA_TYPE): Likewise.
3839 (coff_last_function): Renamed from local static last_functionP in
3840 coff_frob_symbol and made externally visible.
3841 (coff_frob_symbol): New local static set_end; use it to try to
3842 avoid calling SA_SET_SYM_ENDNDX on a symbol that will be punted.
3843 * config/obj-coff.h (S_SET_DATA_TYPE): Declare.
3844 (SA_SET_SYM_ENDNDX): Declare.
3845 (coff_last_function): Declare.
3846
3847 * expr.c (operand): If DOLLAR_DOT is defined, accept `$' as
3848 equivalent to `.' to mean the current location.
3849
3850 * read.c (LEX_BR): If not defined, define as 0.
3851 (lex_type): Use LEX_BR as the type of `{',`}',`[',`]'.
3852
3853 * symbols.c (symbol_new): If tc_canonicalize_symbol_name is
3854 defined, call it with preserved_copy_of_name. If
3855 tc_symbol_new_hook is defined, call it on the new symbol.
3856 (symbol_find_base): If tc_canonicalize_symbol_name is defined,
3857 call it on a copy of the name argument.
3858
3859 * write.c (write_object_file): Simplified usage of obj_frob_symbol
3860 and tc_frob_symbol. Always call both if the symbol is going to be
3861 output.
3862
3863 * write.c (relax_segment): Use %ld rather than %d when printing
3864 fragP->fr_var, and cast it to long.
3865
3866 Changed relocs to be based on subsegments (when BFD_ASSEMBLER).
3867 * subsegs.h (struct frchain): If BFD_ASSEMBLER, added new fields
3868 fix_root and fix_tail.
3869 (segment_info_type): If BFD_ASSEMBLER, don't define fix_tail
3870 field.
3871 * write.c (fix_new_internal): If BFD_ASSEMBLER, set fix_rootP and
3872 fix_tailP based on frchain_now, not seg_info (now_seg).
3873 (chain_frchains_together_1): Chain the subsegment relocs together.
3874 * subsegs.c (subseg_change): Don't clear fix_tail field.
3875 (subseg_get): Likewise.
3876 * literal.c (add_to_literal_pool): Look through the relocs via
3877 frchain_now, not seginfo.
3878
f85ad9d5
ILT
3879Thu Feb 3 23:07:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3880
3881 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Changed
3882 ecoff_undefined to ecoff_extern_size.
3883 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Likewise.
3884 * config/tc-mips.c (s_extern): Set ecoff_extern_size to the
3885 external symbol size, rathern than setting the symbol value.
3886 (md_estimate_size_before_relax): Check both ecoff_extern_size and
3887 symbol value to see if GP referencing can be used.
3888 * ecoff.c (ecoff_symbol_new_hook): Clear ecoff_extern_size, not
3889 ecoff_undefined.
3890 (ecoff_frob_symbol): Don't check ecoff_undefined.
3891 (ecoff_build_symbols): Get size of an undefined symbol from
3892 sym->ecoff_extern_size, not S_GET_VALUE (sym).
3893
b4bd2c92
JL
3894Wed Feb 2 13:55:08 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
3895
3896 * Makefile.in: Avoid bug in losing hpux sed.
3897
1051c97f
ILT
3898Wed Feb 2 11:40:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3899
3900 * config/tc-mips.c (file_mips_isa): New static variable.
3901 (md_begin): Set it.
3902 (s_mipsset): Add support for .set mipN to set the ISA level.
3903
3904 * gasp.c (kinfo): Fully bracket initializer.
3905
f2cdeec4
KR
3906Tue Feb 1 19:28:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3907
3908 * gasp.c (malloc): Don't declare, since host.h or system header
3909 files may declare it differently.
3910
3911 * config/atof-ieee.c (int_to_gen): Now static.
3912
3913 * config/ho-i386aix.h: Include sys/types.h and stdlib.h, not
3914 ho-sysv.h. Based loosely on a patch from Minh Tran-Le.
3915
e2847e64
SC
3916Tue Feb 1 10:50:17 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3917
3918 * gasp.c: Include host.h.
3919
9cbf9e57
ILT
3920Tue Feb 1 12:13:01 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3921
8bbad6fd
ILT
3922 * config/tc-mips.c (mips_ip): Make an unsupported instruction a
3923 warning, not an error.
3924
9cbf9e57
ILT
3925 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
3926 dot_bss_symbol): Don't define if BFD_ASSEMBLER.
3927 (obj_symbol_to_chars): bfd_coff_swap_aux_out now takes more
3928 arguments.
3929 (coff_line_base): Renamed from line_base. Changed all uses.
3930 (coff_add_linesym): Renamed from add_line_sym. Made non-static.
3931 Changed all uses.
3932 * config/obj-coff.h: If TC_PPC, include coff/rs6000.h.
3933 (S_SET_STORAGE_CLASS, S_GET_STORAGE_CLASS): Declare if
3934 BFD_ASSEMBLER.
3935 (coff_line_base): Declare.
3936 (coff_add_linesym): Declare if BFD_ASSEMBLER.
3937 * config/obj-coffbfd.c (symbol_to_chars): bfd_coff_swap_aux_out
3938 now takes more arguments.
3939
2abb453d
SS
3940Mon Jan 31 17:55:14 1994 Stan Shebs (shebs@andros.cygnus.com)
3941
3942 * as.c (statistics_flag): Renamed from quiet_flag.
3943 (main): Get statistics with --statistics instead of -noquiet.
3944
a5a4b5ac
SC
3945Mon Jan 31 07:19:30 1994 Steve Chamberlain (sac@jonny.cygnus.com)
3946
3947 * Makefile.in: Support for Gnu ASsembler Preprocessor.
3948 * gasp.c: New file.
3949 * read.c (s_lcomm): Align lcomm data.
3950 * config/tc-z8k.c (tc_reloc_mangle): Don't allow subtraction
3951 from different sections.
3952
7909261f
KR
3953Sun Jan 30 14:58:26 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
3954
3955 * write.c (write_object_file): If tc_frob_file is defined, call it
3956 just before calling obj_frob_file.
3957 * config/tc-alpha.c (alpha_gp_value): Renamed from gp_value
3958 (references changed), and made non-static.
3959 (getExpression): Return void.
3960 (select_gp_value): Abort if gp_value is non-zero. Delete call to
3961 non-existent bfd_set_gp_value.
3962 (alpha_validate_fix): Function deleted.
3963 (alpha_frob_symbol): Function deleted.
3964 (alpha_local_label): Function deleted.
3965 (alpha_frob_file): Renamed from alpha_end.
3966 * config/tc-alpha.h (alpha_frob_symbol, alpha_validate_fix,
3967 alpha_local_label, alpha_end): Declarations deleted.
3968 (alpha_gp_value, alpha_frob_file): Declare.
3969 (tc_frob_symbol, TC_VALIDATE_FIX, md_end): Macros deleted.
3970 (LOCAL_LABEL): Move code here from tc-alpha.c:alpha_local_label.
3971 (md_convert_frag): Simplified slightly.
3972 (tc_frob_file): New macro.
3973
3974 * read.c (do_align): New function, most of guts of s_align_*
3975 functions. Look for md_do_align macro, give it a chance to bypass
3976 all but recording of section alignment.
3977 (s_align_bytes, s_align_ptwo): Call do_align.
3978 (s_lcomm) [TC_ALPHA]: Align object to largest power of two that
3979 divides object size.
3980
3981 * frags.c (frag_align_pattern): New function.
3982 (frag_align): Rewrite for clarity.
3983
3984 * config/tc-vax.c (md_assemble): Handle O_constant expression.
3985 (vip_begin): Returns pointer to const char. Cast hash_insert arg
3986 to PTR to avoid compiler complaints about const.
3987 (md_begin): Local variable errtxt must point to const.
3988
3989 * configure.in: Handle host vax-*-ultrix* like vax-*-bsd*. Don't
3990 bother with *-*-ultrix or *-*-sysv*, except *-*-sysv, since only
3991 the last has an existing host support file. Do handle vax-bsd and
3992 vax-ultrix targets.
3993
1f029792
ILT
3994Fri Jan 28 11:26:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
3995
3996 * config/obj-coff.c (obj_coff_section_header_append): Do not
3997 declare if BFD_ASSEMBLER.
3998 (stack_pop): Correct test for stack underflow.
3999 (obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
4000 obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
4001 type of ignored argument to avoid gcc warning.
4002 (align): Removed unused function.
4003
6221fe20
KR
4004Thu Jan 27 18:14:19 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4005
81f6013a
KR
4006 * config/tc-alpha.c, config/tc-alpha.h, config/alpha-opcode.h: New
4007 files, based on port of gas-1.38 contributed by CMU, using a.out
4008 variant. Updated for gas-2.x and ECOFF. Floating-point constants
4009 are still broken, bootstrap testing incomplete.
4010
4011 * literal.c: Comment changes.
4012
4013 * listing.c (listing_source_file): Check for null listing_tail
4014 before indirecting through it.
4015
4016 * expr.h (struct expressionS): Added struct tag.
4017
4018 * as.h: If __GNUC__ and inline are both undefined, define inline
4019 away.
4020
4021 * write.c (cvt_frag_to_fill): Don't assume that fr_var for
4022 rs_align or rs_org frags will be 1.
4023 (relax_segment): For rs_align, if fr_var is not 1, complain if
4024 required padding is not a multiple of the size of the pad pattern.
4025 (fixup_segment): Leave gp-relative relocations alone. For pcrel
4026 relocations referring to the same segment, clear fx_pcrel when
4027 clearing fx_addsy.
4028 * as.h: Adjust comments on rs_align.
4029
6221fe20
KR
4030 * atof-generic.c: Some reformatting.
4031 (atof_generic): Be careful when mixing signed/unsigned values of
4032 different sizes.
4033
81f6013a
KR
4034 * write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c:
4035 Query the fx_done field instead of fx_addsy to see if the fixup
4036 still needs to be applied. Set fx_done and clear fx_addsy both,
4037 for now. If TC_HANDLES_FX_DONE isn't defined, assume md_apply_fix
4038 will only clear fx_addsy, and set fx_done accordingly after
4039 returning.
4040 * config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
4041 * config/tc-sparc.c (md_apply_fix): Set fx_done for non-pcrel fix
4042 with no fx_addsy.
4043
4044 * symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
4045 Deleted.
4046 (symbol_begin): Moved to end of file, so function inlining can
4047 work better.
4048 (fb_label_count, fb_label_max): Default C static initializers are
4049 sufficient.
4050 * symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol):
4051 Declarations deleted.
4052 * config/obj-coff.c (dot_text_symbol, dot_data_symbol,
4053 dot_bss_symbol): Defined here, static.
4054
4055 * config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before
4056 including aout/aout64.h.
4057
4058 * write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false,
4059 don't write out a section symbol even if it's used in a
4060 relocation; assume relocations will handle section numbers
4061 somehow. Rename "punt_it" label to "punt_it_if_unused" to reflect
4062 it's true use.
4063 (EMIT_SECTION_SYMBOLS): Default to 1.
4064 (adjust_reloc_syms): Don't create a new symbol for an absolute
4065 reference; just use the absolute section symbol.
4066 (write_relocs): Make printout of reloc values dependent on flag
4067 DEBUG3, not DEBUG2.
4068 * config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
4069 * config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
4070
a57180ad
ILT
4071Thu Jan 27 16:43:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4072
ec7a69ea
ILT
4073 * read.c (lex_type): No longer make '{' a valid character for
4074 symbol names.
4075
fe920573
ILT
4076 * as.c (main): Print long values using %ld.
4077
a57180ad
ILT
4078 * messages.c (as_warn_internal): New static function.
4079 (as_warn, 3 versions): Use as_warn_internal.
4080 (as_warn_where, 3 versions): New function.
4081 * as.h (as_warn_where): Declare.
4082
ca7bd557
SS
4083Tue Jan 25 18:30:34 1994 Stan Shebs (shebs@andros.cygnus.com)
4084
4085 * as.c (quiet_flag): New flag.
4086 (main): If -noquiet given, display execution time and memory used.
4087
9dcf8057
JL
4088Tue Jan 25 15:53:11 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4089
4090 * doc/{all.texi,as.texinfo}: Add documentation for HPPA port.
4091
f71babce
ILT
4092Mon Jan 24 19:18:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4093
4094 * ecoff.c (ecoff_frob_symbol): New function. Put undefined
4095 symbols of known size in the undefined section. Put small common
4096 symbols in a .scommon section.
4097 * ecoff.h (ecoff_frob_symbol): Declare.
4098 * config/obj-ecoff.h (obj_frob_symbol): Define.
4099 * config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
4100 obj_elf_frob_symbol): Removed unused functions.
4101 * config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
4102 unused macros.
4103 (obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
4104 of unused functions.
4105 (obj_frob_symbol): Define if ECOFF_DEBUGGING.
4106
4107 * tc-mips.c (g_switch_seen): New static variable.
4108 (md_parse_option): Set g_switch_seen for -G option.
4109 (s_option): If creating PIC code, force the GP size to be 0. Warn
4110 if -G switch used with a non-zero value.
4111
4112 * symbols.c (S_IS_COMMON): Use bfd_is_com_section rather than
4113 comparing against bfd_com_section.
4114
2ef7731d
KR
4115Mon Jan 24 14:12:25 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4116
4117 * read.c (s_lcomm): Treat Alpha like MIPS in handling of .sbss
4118 section.
4119
7691379e
KR
4120Thu Jan 20 13:17:58 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4121
4122 * expr.c (operand): For floating point operand with unusual fp
4123 char from FLT_CHARS, preserve the character. Patch from Lisa
4124 Repka.
4125
eb8fd0e9
ILT
4126Wed Jan 19 23:15:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4127
4128 * config/tc-mips.c (md_pseudo_table): Add all data allocation
4129 pseudo-ops: .hword, .int, .long, .octa, .quad, .short, .single.
4130
d9420fc1
SC
4131Tue Jan 18 15:51:59 1994 Steve Chamberlain (sac@jonny.cygnus.com)
4132
4133 * config/obj-coffbfd.c (obj_coff_endef): For C_EFCN, C_BLOCK and
4134 C_FCN assume .val has been set to .
4135
2f156c92
JL
4136Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4137
4138 * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
4139 confuses GDB for some unknown reason.
4140 * cofnig/obj-som.c: Likewise.
4141
19302e44
KR
4142Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4143
4144 * literal.c (add_to_literal_pool): Handle duplicates of values
4145 already written to literal pool.
4146
4bda835f
ILT
4147Tue Jan 18 17:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4148
4149 * config/obj-aout.c (obj_aout_frob_symbol): Try to get symbols
4150 with explicitly marked stabs through BFD: if a symbol marked
4151 N_UNDF | N_EXT is in the absolute section, move it to the
4152 undefined section; move a symbol marked N_INDR into
13655af6
ILT
4153 bfd_ind_section and set the BSF_INDIRECT flag; set the
4154 BSF_WARNING flag for a symbol makred N_WARNING.
4bda835f 4155
17ed84ed
ILT
4156Mon Jan 17 15:40:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4157
4158 * ecoff.h (ecoff_set_gp_prolog_size): Declare.
4159 * ecoff.c (ecoff_set_gp_prolog_size): Return type is void.
4160
d0286a21
JL
4161Mon Jan 17 00:18:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4162
51517966
JL
4163 * config/tc-hppa.c (pa_ip): Explicitly check for comma before 'u'
4164 and 'f' template operand.
4165
d0286a21
JL
4166 * config/tc-hppa.c (pa_ip): Handle 'N', 'O', 'o', '0', '1', 'u',
4167 and '2' in copr and sfu instruction templates.
4168
e7501ac7
JL
4169Sun Jan 16 16:44:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4170
4171 * as.h (subseg_force_new): Add prototype.
4172
d2550c72
DE
4173Sat Jan 15 09:20:55 1994 Doug Evans (dje@canuck.cygnus.com)
4174
d307fed1
DE
4175 * app.c (do_scrub_next_char): Allow lines like " foolab :".
4176
d2550c72
DE
4177 * read.c (emit_expr): Fix computation of mask.
4178 * config/obj-elf.c (obj_elf_section): Fix loop termination test.
4179
d211303d
KR
4180Thu Jan 13 16:15:15 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4181
64270963
KR
4182 * ecoff.c (ecoff_set_gp_prolog_size): New function.
4183 (current_file_idx): New static variable.
4184 (add_file): Use and increment current_file_idx instead of indx
4185 parameter.
4186
ff4325cb
KR
4187 * struc-symbol.h (struct symbol): Make all bitfields unsigned.
4188
d211303d
KR
4189 * config/tc-i960.c (i960_validate_fix): Added argument
4190 add_symbolPP. Indirect through it to get "add_symbolP".
4191 * config/tc-i960.h (i960_validate_fix): Supply prototype.
4192 (TC_VALIDATE_FIX): Pass address of add_symbolP.
4193
4194 * configure.in (i386-*-netbsd*): New target, using te-netbsd.h.
4195 (i386-*-netbsd0.8): New target, like 386bsd.
4196
4197 * configure.in: Set BFDDEF in Makefile to "define" or "undef".
4198 * Makefile.in (config.h): Protect against multiple inclusions.
4199 Define or undef BFD_ASSEMBLER as specified by $(BFDDEF).
4200 (ALL_CFLAGS): Omit $(BFDDEF).
4201 * as.h: Include config.h.
4202 (struct symbol): Added forward declaration.
4203 (add_to_literal_pool): Fix declaration.
64270963 4204 * as.c: Don't include config.h.
d211303d
KR
4205
4206 * literal.c (add_to_literal_pool): Take symbol and addend as
4207 arguments, instead of expression, for now. Fix calculation of
4208 offset to return.
4209
4210 * subsegs.h (segment_info_type) [NEED_LITERAL_POOL]: Add field
4211 literal_pool_size.
4212
500828a0
JL
4213Thu Jan 13 12:14:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu
4214
4215 * subsegs.c (subseg_get): Accept new argument "force_new". If
4216 set then a new segment is always created. All callers changed.
4217 (subseg_force_new): New function. Similar to subseg_new, but
4218 always force a new segment to be created.
4219
4220 * config/obj-som.c (som_frob_file): Call adjust_code_sections
4221 for each section.
4222 (adjust_code_sections): New function. Adjusts the VMA for all the
4223 $CODE$ subspaces.
4224
4225 * config/tc-hppa.c (md_assemble): Also handle creating a fixup
4226 for the unwind descriptors if a function's label follows the
4227 .PROC and .ENTRY directives.
4228 (pa_entry): Don't set BSF_FUNCTION for the label symbol here; it
4229 is done elsewhere. Don't create a fixup for the unwind
4230 descriptors if the function's label has not been defined yet.
4231 (pa_proc): For SOM, place each procedure within a new $CODE$
4232 subspace. Adjust the segment and frag for the associated
4233 function label if it exists.
4234
4235Wed Jan 12 22:05:33 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4236
4237 * config/tc-hppa.c (hppa_fix_struct): Add new "segment" field.
4238 (hppa_fix_new): Initialize segment field.
4239 (md_apply_fix): Do nothing for pc-relative fixup which involves
4240 crossing a segment boundary.
4241 (pa_procend): Undefine the current label after handling .PROC
4242 and .PROCEND directives.
4243 (dummy_symbol): Make type "symbolS *". Change references as
4244 appropriate.
4245
bbf7e43d
ILT
4246Wed Jan 12 13:29:31 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4247
4248 * read.c (read_a_source_file): Cast array argument to unsigned
4249 char.
4250 * write.c (adjust_reloc_syms): Remove unused variable symseginfo.
4251 (write_object_file): Don't define punt_it if it won't be used.
4252 (fixup_segment): Don't define skip if it won't be used.
4253
4254 * config/tc-mips.h (TARGET_FORMAT): Define as mips_target_format.
4255 (mips_target_format): Declare.
4256 * config/tc-mips.c (mips_target_format): Define with appropriate
4257 default definition.
4258 (md_parse_option): If -EL or -EB is used, change byte_order and
4259 mips_target_format as appropriate.
4260
a1c91916
JL
4261Tue Jan 11 21:52:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4262
4263 * app.c (do_scrub_next_char): Another attempt to fix bugs
4264 dealing with labels without colons (for HPPA and MRI).
4265
44ce2f32
DE
4266Tue Jan 11 17:01:06 1994 Doug Evans (dje@canuck.cygnus.com)
4267
fd4b7c25
KR
4268 * config/tc-sparc.c (sparc_ip): Truncate args to %hi/%lo to 32 bits.
4269
44ce2f32
DE
4270 * expr.c (integer_constant): Fix computation of too_many_digits.
4271 Variable digit_2 renamed to start. Fix check for whether number
4272 will fit in 32 bits.
4273 * read.c (emit_expr): Use valueT instead of long.
4274
af255ca0
ILT
4275Tue Jan 11 13:01:20 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4276
f34e27a1
ILT
4277 * config/obj-elf.c: If TC_MIPS, include elf/mips.h.
4278 (special_sections): Define.
4279 (obj_elf_special_section): Get default types and attributes from
4280 list of special sections.
4281 * config/tc-mips.c (ELF_TC_SPECIAL_SECTIONS): Define.
4282
4e76ae53
ILT
4283 * config/obj-ecoff.c (ecoff_frob_file): Force .sdata and .sbss
4284 sections to be close together.
4285
8197b589
ILT
4286 * config/tc-mips.c (macro): Corrected $at warnings in a couple of
4287 spots.
4288
af255ca0
ILT
4289 * listing.c (listing_prev_line): New function.
4290 * listing.c: Include subsegs.h.
4291 (listing_prev_line): New function.
4292 (calc_hex): Reset byte_in_frag to zero for each new frag.
4293 * config/tc-mips.c (append_insn): Call listing_prev_line after
4294 emitting nop instructions.
4295 * Makefile.in (listing.o): Depends upon subsegs.h.
4296
4047ff1d
JL
4297Mon Jan 10 09:52:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
4298
4299 * config/tc-hppa.c (pa_ip): Put check for missing label on .PROC
4300 here. Handle case where label may be defined after the .PROC.
4301 (pa_proc): It is not an error if the procedure's label isn't
4302 defined before the .PROC directive.
4303
6f1c6a67
KR
4304Sun Jan 9 04:43:30 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com)
4305
4306 * config/te-netbsd.h: New file.
4307 * config/tc-i386.h (TARGET_FORMAT) [TE_NetBSD]: Use bfd target
4308 a.out-netbsd-386 for this configuration.
4309
fe4e3290
ILT
4310Fri Jan 7 17:38:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4311
4312 * ecoff.c (ecoff_stab): Don't clobber the ECOFF symbol information
af255ca0 4313 with the associated stabs information.
fe4e3290
ILT
4314 (ecoff_build_symbols): Never set the type of stabs symbols to
4315 st_Global. Don't update the symbol index or ifd if the gas symbol
4316 is not the same as the ECOFF symbol (which is now the case for
4317 stabs symbols).
4318
917fae09
SS
4319Fri Jan 7 11:14:07 1994 Stan Shebs (shebs@andros.cygnus.com)
4320
4321 * config/tc-mips.c (macro): Add a LOSING_COMPILER ifdef that
4322 splits the function.
4323 (macro2): New function, if LOSING_COMPILER defined.
4324
03a372ed
SC
4325Fri Jan 7 09:38:25 1994 Steve Chamberlain (sac@cygnus.com)
4326
4327 * config/obj-coffbfd.c (fill_section): Don't ever fill past the
4328 end of a section. (write_object_file): Temporary fix - setup
4329 stdoutput.
4330
fd0e2cf2
KR
4331Thu Jan 6 18:05:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4332
4333 * config/tc-sparc.c (tc_gen_reloc): Fix handling of addends in
4334 non-pcrel_offset relocations.
4335
13fe1379
ILT
4336Thu Jan 6 01:06:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4337
4338 * config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
4339 without .set noat.
4340
311ff8d6
KR
4341Wed Jan 5 14:22:22 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
4342
2d29d89d 4343 * literal.c: New file.
d4aad2b4
KR
4344 * Makefile.in (REAL_SOURCES, OBJS): List it.
4345
4346 * as.h (DEBUG): Don't define.
4347 (struct expressionS, struct fix): Declare in case they're used in
4348 prototypes.
4349 (add_to_literal_pool) [BFD_ASSEMBLER]: Declare.
2d29d89d 4350
311ff8d6
KR
4351 * config/tc-mips.h (TARGET_FORMAT) [OBJ_AOUT]: Fix for new names
4352 in bfd.
4353
4354 * subsegs.c (subseg_get): New function. Creates segment if
4355 needed, returns pointer, but doesn't change current segment.
4356 (subseg_new): Use it.
4357
5a051773
SS
4358Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
4359
4360 * Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
4361 * config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
4362 * app.c, flonum.h, hex-value.c (const): Change #if to be more
4363 portable.
4364
fce98d63
RS
4365Tue Jan 4 22:11:34 1994 Rob Savoye (rob@darkstar.cygnus.com)
4366
4367 * config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
4368 micro-kernel.
4369
5a051773
SS
4370Thu Dec 30 15:27:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4371
4372 * write.c (write_relocs): bfd_perform_relocation now takes an
4373 additional argument, to return an error string (which we ignore).
4374
9314b3a1
KR
4375Wed Dec 29 14:37:26 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
4376
4377 * write.h (struct fix): Field tc_fix_data should be type PTR, not
4378 void*, for compatibility with non-ANSI compilers. Added
4379 single-bit field "fx_done".
4380
45db9caf
TG
4381Sun Dec 26 14:31:47 1993 Torbjorn Granlund (tege@adder.cygnus.com)
4382
4383 * tc-hppa.c (pre_defined_registers): Convert to lower case.
4384 Delete spurious register names "%r4L", etc.
4385 (selector_table): Sort and convert to lower case.
4386 (cons_fix_new_hppa): `reloc_type' => `rel_type'.
4387 (pa_ip): Always use strcmp for non-text and strcasecmp for text.
4388 (reg_name_search): Rewrite to call strcasecmp only once per
4389 iteration.
4390 (pa_chk_field_selector): Rewrite to use binary search.
4391 (pa_parse_neg_add_cmpltr): Use strcasecmp for completer comparisons.
4392 (pa_parse_space_stmt): $TEXT$ and $PRIVATE$ are symbols; use case
4393 sensitive comparisons.
4394 (pa_parse_space_stmt): Canonicalize strncasecmp arg to lower case.
4395 (pa_space): "$text$" => "$TEXT$"; "$private$" => "$PRIVATE$". Use
4396 case sensitive comparison for all symbolic names.
4397 (pa_subspace): Canonicalize strncasecmp arg to lower case.
4398 (pa_subspace_start): Use case sensitive comparison for symbolic names.
4399
8b13fa4e
KR
4400Mon Dec 20 10:37:48 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
4401
0a75cb6c
KR
4402 * write.c (adjust_reloc_syms) [RELOC_REQUIRES_SYMBOL]: If no
4403 symbol is present (i.e., relocation against absolute), create a
4404 phony local symbol, and use it in the reloc.
4405 (fixup_segment): When adjusting a reloc with an absolute symbol,
4406 have TC_FORCE_RELOCATION control clearing add_symbolP too.
4407 * config/tc-sparc.h (RELOC_REQUIRES_SYMBOL): Define, for OBJ_COFF.
4408
4409 * symbols.c (S_IS_EXTERNAL, S_IS_LOCAL): Don't use both BSF_EXPORT
4410 and BSF_GLOBAL, since they're the same.
4411
d3e3010b
KR
4412 * as.c (main): Only invoke md_end if it's defined as a macro.
4413 * tc.h (md_end): Don't declare it.
4414 * config/tc-*.[ch] (md_end): Deleted, in cases where it doesn't do
4415 anything.
4416 * config/tc-vax.c (vip_end): Deleted null function.
4417 * config/tc-mips.c (md_mips_end): Renamed from md_end.
4418 * config/tc-mips.h (md_mips_end): Declare.
4419 (md_end): New macro, calls md_mips_end.
4420
4421 * write.c (write_object_file): Don't close output file.
4422 * as.c (main): Close output file (if needed) after calling
4423 listing_print, which should be after calling write_object_file,
4424 which sets the frag addresses.
4425
4426 * config/obj-coff.c (obj_coff_dim, obj_coff_endef, obj_coff_line,
4427 obj_coff_scl, obj_coff_size, obj_coff_tag, obj_coff_type,
4428 obj_coff_val): Add unused int argument to satisfy prototypes; goes
4429 with Ian's 10 Sep changes.
4430 (S_GET_DATA_TYPE, S_SET_DATA_TYPE, S_GET_STORAGE_CLASS,
4431 S_SET_STORAGE_CLASS): Now function instead of macros.
4432 (obj_emit_lineno) [BFD_ASSEMBLER]: Deleted.
4433 (tag_insert): Local var ERROR_STRING is const. Use "const" not
4434 "CONST" for argument NAME. Fixed prototype.
4435 (coff_frob_symbol): Removed explicit "#if 1" directive. If
4436 S_IS_EXTERNAL, set storage class to C_EXT.
4437 (s_get_name): Use "const" not "CONST".
4438 * config/obj-coff.h (S_GET_DATA_TYPE, S_SET_DATA_TYPE,
4439 S_GET_STORAGE_CLASS, S_SET_STORAGE_CLASS): Deleted.
4440 (obj_emit_lineno): Declare only for non-BFD_ASSEMBLER. For
4441 BFD_ASSEMBLER, define as macro that aborts.
4442 (obj_extra_stuff, tc_headers_hook): Declare only for
4443 non-BFD_ASSEMBLER.
4444 (coff_frob_symbol): Fix prototype.
8b13fa4e
KR
4445
4446Sun Dec 19 00:37:20 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4447
4448 * config/tc-sparc.c (tc_gen_reloc): Test of pcrel_offset had sense
4449 reversed.
4450
5ea18b5d
JL
4451Thu Dec 16 21:13:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4452
4453 * config/tc-hppa.c (md_begin): Initialize "dummy_label".
4454 (tc_gen_reloc, SOM version): For relocations which have no symbol,
4455 set sym_ptr_ptr to dummy_label. Avoids lossage in generic BFD code.
4456
a8a72d74
KR
4457Thu Dec 16 16:07:56 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
4458
4459 * read.c (lex_type): No longer make '[' a valid character for
4460 symbol names.
4461
50f75add
KR
4462 * config/tc-vax.c (tc_aout_fix_to_chars): Local variable
4463 NBYTES_R_LENGTH now const.
4464
4465 * config/obj-*.c, config/tc-*.c: Omit superfluous "return"
4466 statements at ends of functions. Don't check for null return from
4467 hash_new, since it won't return at all if there's no memory
4468 available. Also, check for null return from hash_insert, rather
4469 than zero-length string, as success indicator.
4470
4471 * subsegs.c (section_symbol): New function.
4472 * subsegs.h (section_symbol): Declare.
4473 * write.c (adjust_reloc_syms): Use it.
4474
cf4aca57
KR
4475Wed Dec 15 15:39:53 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
4476
7387c355
KR
4477 * Makefile.in (RUNTEST): New variable.
4478 (CHECKFLAGS): Pass it down.
4479
cf4aca57
KR
4480 * ecoff.c (ecoff_directive_frame): Permit extra trailing operands;
4481 unused for now, but supplied by Alpha OSF1 compiler.
4482
4483 * as.h: Protect against multiple inclusions.
4484 (int_to_gen): Don't declare.
4485
4486 * config/atof-vax.c (atof_vax): NULL is not a valid character
4487 constant.
4488
551d2fd4
JL
4489Tue Dec 14 21:38:25 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4490
26da0351
JL
4491 * configure.in (hppa*-*-osf*): Do not consider this a developmental
4492 configuration.
4493
551d2fd4
JL
4494 * config/tc-hppa.c (md_apply_fix): Handle cases where no
4495 relocation will be emitted for 32bit formats.
4496
9d5a9b20
JL
4497Mon Dec 13 23:33:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4498
4499 * config/tc-hppa.c (md_apply_fix): Do not call hppa_field_adjust
4500 for any of the 'T' field selectors.
4501
2b5936ff
SC
4502Sat Dec 11 11:23:12 1993 Steve Chamberlain (sac@thepub.cygnus.com)
4503
4504 * config/tc-h8500.c (build_bytes): Get reloc type right for a
4505 %page operation. (md_assemble): Don't modify input_line_pointer.
4506 (mdcoff_sizemachdep): New function.
4507 * config/tc-h8500.h (TC_COFF_SIZEMACHDEP): New macro.
4508 * config/tc-z8k.c (get_operand): Delete bogus check.
4509
a1328e79
KR
4510Wed Dec 8 16:31:51 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
4511
4512 * write.c (number_to_chars_*): Delete bogus range check.
4513
4514 * output-file.c (TARGET_ARCH): No default.
4515
ef7ce769
SC
4516Tue Dec 7 16:02:53 1993 Steve Chamberlain (sac@jonny.cygnus.com)
4517
4518 * config/tc-sh.c (md_convert_frag): Truncate disps before calling
4519 md_number_to_chars. (md_assemble): Don't modify
4520 input_line_pointer.
4521
67707031
DE
4522Mon Dec 6 11:49:03 1993 Doug Evans (dje@canuck.cygnus.com)
4523
4524 * config/tc-h8300.c (md_assemble): Don't update input_line_pointer.
4525
dd2f509f
JL
4526Mon Dec 6 11:20:02 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4527
4528 * config/obj-som.[ch] (obj_read_begin_hook): Remove last change.
4529 Breaks with the HP compilers.
4530
4531 * config/tc-hppa.c (struct call_info): Remove fields which were
4532 set but never used. Remove all code which sets those fields.
4533 (struct subspace_dictionary_chain): Likewise.
4534 (struct space_dictionary_chain): Likewise.
4535 (pa_desc): Delete useless function. Delete all references.
4536 (hppa_tc_make_sections): No need to count the number of symbols for
4537 the symbol extension section.
4538
7b624bf2
JL
4539Sun Dec 5 17:05:29 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4540
eb91665b
JL
4541 * config/obj-som.c (obj_som_version): Pass version string to
4542 SOM BFD backend.
4543 (obj_som_copyright): New function. Much like obj_som_version.
4544
4545 * config/tc-hppa.c (obj_copyright): Define as appropriate for
4546 SOM and ELF.
4547 (pa_copyright): Just a stub now.
4548
42ecb409
JL
4549 * config/obj-som.c (obj_read_begin_hook): Delete unused function.
4550 * config/obj-som.h (obj_read_begin_hook): Provide dummy definition.
4551 (TARGET_SYMBOL_FIELDS): Delete. SOM isn't making use of them.
4552
4165dcc2
JL
4553 * config/tc-hppa.c (tc_gen_reloc, SOM version): Handle relocation
4554 expansion due to rounding mode selectors. Handle R_[RDSN]_MODE
4555 relocations for selecting the current rounding mode.
4556
7b624bf2
JL
4557 * config/tc-hppa.c (evaluate_absolute): Support e_rrsel and
4558 e_rlsel field selectors.
4559
4560Fri Dec 3 18:33:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4561
4562 * config/obj-elf.h: If ECOFF_DEBUGGING, undef
4563 SEPARATE_STAB_SECTIONS and INIT_STAB_SECTION, and define
4564 OBJ_PROCESS_STAB to call ecoff_stab.
4565 * config/obj-elf.c: Don't compile obj_elf_init_stab_section if
4566 INIT_STAB_SECTION is not defined.
4567
753dcbbd
JL
4568Fri Dec 3 10:56:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4569
4570 * config/tc-hppa.c (md_apply_fix): Delete old wrapper function.
4571 (md_apply_fix_1): Rename to md_apply_fix. Fix argument decls.
4572 Fix comments in various places. Always return a value.
4573 Avoid dereferencing a NULL fx_addsy.
4574 (hppa_force_relocation): Avoid dereferencing a NULL fx_addsy.
4575
585635c7
JL
4576 Fri Dec 3 09:47:30 1993 Pete Hoogenboom (hoogen@cs.utah.edu)
4577
4578 * tc-hppa.c: (tc_gen_reloc): Addend for a plabel relocation should
4579 be either 0 or 2 (no static link or static link required). Always
4580 assume no static link.
4581
bfbfba45
KR
4582Thu Dec 2 11:52:21 1993 Ken Raeburn (raeburn@cygnus.com)
4583
4584 * config/tc-sparc.c (tc_gen_reloc): Make adjustment to addend be
4585 dependent on howto fields, not on format flavour.
4586
4587 * struc-symbol.h (struct symbol): New fields sy_obj and sy_tc,
4588 defined as types OBJ_SYMFIELD_TYPE and TC_SYMFIELD_TYPE, if those
4589 macros are defined.
4590 * config/obj-coff.h (TC_SYMFIELD_TYPE, OBJ_SYMFIELD_TYPE): Define.
4591 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): Don't define.
4592 (sy_tc, sy_obj): Define so that the fields look like they used to,
4593 until all references get changed.
4594
4595 * write.c (fixup_segment): Lots of variables no longer register.
4596 Reordered some code for easier reading.
4597 * config/obj-coff.c (obj_coff_dim): dim_index no longer register.
4598 Deleted superfluous return statement.
4599 (obj_coff_line, obj_coff_size, obj_coff_scl, obj_coff_type,
4600 obj_coff_val, tag_init, tag_insert): Deleted superfluous return
4601 statement.
4602 (align, obj_coff_section): Deleted debugging printfs.
4603 * config/tc-i386.c (md_assemble): Discard some register decls.
4604 Use assignment rather than memcpy to copy template.
4605 (op_hash, reg_hash, prefix_hash): Default C initialization of
4606 statics is sufficient.
4607 * config/tc-sparc.c (print_insn): Array Reloc is now const, and
4608 points to const.
4609
4610 * config/obj-coff.h (TARGET_FORMAT): Only use coff-sparc-lynx if
4611 TE_LYNX; use coff-sparc otherwise.
4612 [USE_NATIVE_HEADERS]: Delete this code; it isn't used.
4613
4614 * write.c (fixup_segment): Call TC_VALIDATE_FIX, if defined,
4615 before processing a fixup. Call TC_ADJUST_RELOC_COUNT just before
4616 returning. Remove some i960-coff-specific code.
4617 (TC_ADJUST_RELOC_COUNT): Default to doing nothing.
4618 * config/tc-i960.h (TC_ADJUST_RELOC_COUNT) [OBJ_COFF]: Define.
4619 (i960_validate_fix): Declare.
4620 (TC_VALIDATE_FIX): Define.
4621 * config/tc-i960.c (i960_validate_fix): New function.
4622
4623 * write.c (number_to_chars_littleendian): New function. Write out
4624 bytes in little endian order, doing size and range checking.
4625 (number_to_chars_bigendian): New function, similar.
4626 * write.h: Declare them.
4627 * config/tc-*.c (md_number_to_chars): Use them.
4628 * config/tc-vax.c (md_apply_fix): Ditto.
4629 * config/tc-i386.c (md_apply_fix): Ditto.
4630
4631 * config/obj-coff.c: Rearranged code for handling line number
4632 data.
4633 (line_fsym): Renamed from function_lineoff in BFD_ASSEMBLER case,
4634 since the usage is different from non-BFD_ASSEMBLER case.
4635 (in_function, clear_function, set_function): New macros, to
4636 combine some of the functionality implemented in differnet ways in
4637 BFD_ASSEMBLER and non-... code. Used in other functions that used
4638 to check function_lineoff &c.
4639 (obj_emit_lineno): Split into two copies, one for BFD_ASSEMBLER,
4640 one for not. Non-BFD_ASSEMBLER version now has temporary variable
4641 to contain char* pointer pointed to by char** argument. Always
4642 follow CROSS_COMPILE code; easier to read that way.
4643 (obj_coff_ln): Don't call add_lineno or c_line_new if appline is
4644 set.
4645 (obj_coff_endef) [BFD_ASSEMBLER]: Don't do anything special for
4646 ".bf", it's been done elsewhere.
4647 (coff_frob_symbol): If ilne number data is pending, call
4648 add_linesym to flush it.
4649 (coff_frob_file): Don't do that here.
4650 * config/obj-coff.h (coff_frob_file): Declare.
4651 (obj_frob_file): Define, to call it.
4652
4653 * config/tc-sparc.h (md_create_short_jump, md_create_long_jump,
4654 md_estimate_size_before_relax: Define them as macros calling
4655 as_fatal.
4656 * config/tc-sparc.c: Don't define them as functions.
4657
4658 * configure.in: Handle target alpha-*-osf*. (No cpu files yet.)
4659
0a8ae18f
JL
4660Wed Dec 1 23:37:14 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4661
4662 * Makefile (clean): Depend on clean-here.
4663
9a048e48
KR
4664Wed Dec 1 11:35:21 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
4665
4666 * config/ho-go32.h: Include fopen-bin.h.
4667 * as.h: If FOPEN_WB isn't defined, include fopen-same.h.
4668 * output-file.c (output_file_create): Use FOPEN_WB instead of "w".
4669 * input-file.c (input_file_open): Use FOPEN_RT instead of "r".
4670 * listing.c (file_info): Use FOPEN_RB instead of "rb".
4671 * read.c (s_include): Use FOPEN_RT instead of "r".
4672
4673 * stabs.c: Include obstack.h.
4674
4675 * tc.h (md_create_long_jump): Don't declare if it's already
4676 defined as a macro.
4677 (md_create_short_jump, md_estimate_size_before_relax): Ditto.
4678
4679 * messages.c (as_perror) [BFD_ASSEMBLER]: Use bfd_errmsg instead
4680 of strerror. Clear bfd_error.
4681
4682 * config/te-lynx.h (LOCAL_LABELS_FB): Define, if not already
4683 defined.
4684
44c0de53
JL
4685Wed Dec 1 10:41:56 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4686
4687 * config/tc-hppa.c (hppa_elf_mark_end_of_function): New function.
4688 (pa_process_exit, pa_procend): Call it for ELF objects.
4689
777ad64d
ILT
4690Wed Dec 1 12:10:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4691
4692 * config/tc-mips.c (macro): Subtract 8 from offset in non PIC l.d
4032d3f0
ILT
4693 case. See comment. From wilson@cygnus.com: for M_L_DAB, set
4694 coproc before doing goto ld.
777ad64d 4695
335d35c8
JL
4696Tue Nov 30 13:40:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4697
4698 * write.c (TC_FORCE_RELOCATION): Provide a default definition.
4699 (fixup_segment): Allow the target machine to specify that a
4700 relocation must be generated for a particular fixup. Remove
4701 #ifndef TC_HPPA hack.
4702
4703 * config/tc-hppa.h (TC_FORCE_RELOCATION): Define.
4704
4705 * config/tc-hppa.c (md_apply_fix_1): Never change fx_addsy to
4706 be NULL. Only fixup_segment is supposed to do that.
4707 (hppa_force_relocation): New function.
4708
018f2bba
ILT
4709Tue Nov 30 11:21:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4710
c751ad19
ILT
4711 * Makefile.in (stabs.o): Added dependencies.
4712
018f2bba
ILT
4713 * config/obj-ecoff.c (ecoff_frob_file): Don't call bfd_set_symtab.
4714
81413fa2
JL
4715Sun Nov 28 12:11:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4716
278cd007
JL
4717 * app.c (do_scrub_next_char): Output a TAB before any
4718 .app* directive.
4719
81413fa2
JL
4720 * config/tc-hppa.c (fix_new_hppa): Make sure a sub_symbol
4721 exists before trying to peek at its name.
4722 (pa_space): Do not call pa_align_subseg. See hppa/unsorted/align3.s
4723 for testcase.
4724 (pa_align_subseg): Delete unused/unwanted function.
4725
385ce433
JL
4726Sat Nov 27 22:49:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4727
4728 * read.c (read_a_source_file): Fix test for when to stick a colon
4729 on the end of a label. Make code conditional on either MRI or
4730 LABELS_WITHOUT_COLONS.
4731
4732 * app.c (do_scrub_next_char): If a line begins with whitespace, leave
4733 the single whitespace character alone. Eat all others.
4734
4735 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define.
4736
31a385d1
JL
4737Wed Nov 24 01:22:54 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4738
4739 * config/tc-hppa.c (pa_procend): Do not call process_exit.
4740 (exit_processing_complete): Delete unwanted variable and all
4741 references.
4742
c5953036
ILT
4743Wed Nov 24 02:31:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4744
4745 * ecoff.c (ecoff_setup_ext): Renamed from ecoff_build_ext.
4746 Changed to not actually build the external symbol information, as
4747 that is now done by the ECOFF back end.
4748 (ecoff_build_debug): Changed accordingly.
4749 * ecoff.h (obj_ecoff_set_ext): Declare. obj-format.c function
4750 called by ecoff_setup_ext.
4751 * config/obj-ecoff.c (ecoff_frob_file): If debug_info count is 0,
4752 set corresponding pointer to NULL. Don't set raw_size and
4753 raw_syments.
4754 (obj_ecoff_set_sym_index): Removed.
4755 (obj_ecoff_set_ext): New function.
4756 * config/obj-ecoff.h (obj_set_sym_index): Don't define.
4757 (obj_ecoff_set_sym_index): Don't declare.
4758 * config/obj-elf.c (obj_ecoff_set_ext, elf_get_extr,
4759 elf_set_index): New functions used for ECOFF_DEBUGGING.
4760 (elf_frob_file): Reworked ECOFF debug generation to use
4761 new functions in bfd/ecofflink.c.
4762
4763Sun Nov 21 23:54:52 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4764
4765 * config/tc-hppa.c (pa_def_subspaces): Only create the unwind
4766 subspace for ELF. In the SOM world, the linker is responsible
4767 for creating the unwind subspaces.
4768
e0209756
ILT
4769Fri Nov 19 16:25:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4770
4771 * config/obj-coffbfd.c: Use PARAMS rather than EXFUN.
4772 (yank_symbols): Don't call S_SET_EXTERNAL if the storage class is
4773 already set. Fixes .def var; .val external_var; .scl 3; .endef.
4774 (adjust_stab_section): Make static. Declare return type. Remove
4775 unused variables.
4776
4777 * config/tc-i386.h: Declare tc_coff_fix2rtype and
4778 tc_coff_sizemachdep.
4779
0669e047
KR
4780Fri Nov 19 04:33:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
4781
4782 * write.c (write_object_file): Disable obj_check_file_symbols
4783 hook; only back end using it wasn't using it correctly.
4784 (write_object_file): Always call obj_frob_symbol and
4785 tc_frob_symbol; always retain symbol if it's used by a relocation,
4786 regardless of what these routines indicate.
4787 * config/obj-coff.c (coff_frob_symbol): Renamed from
4788 coff_check_file_symbols.
4789 * config/obj-coff.h (obj_check_file_symbols): Deleted.
4790 (coff_frob_symbol): Declare.
4791 (obj_frob_symbol): Call it.
4792
4793 * config/obj-coff.c (obj_crawl_symbol_chain, obj_emit_strings,
4794 obj_pre_write_hook): Don't define for BFD_ASSEMBLER.
4795 (c_section_header): Ditto. Delete superfluous return at end of
4796 function.
4797
4798 * config/obj-coff.h [TC_SPARC]: Include coff/sparc.h, and specify
4799 coff-sparc-lynx.
4800 (SA_GET_SYM_TAGNDX): Use BFD_HEADERS version for BFD_ASSEMBLER
4801 too.
4802 (c_section_header): Rewrite prototype so that it contains no
4803 preprocessing directives. Don't declare it at all if
4804 BFD_ASSEMBLER.
4805
4806 * configure.in (sparc*-*-lynxos): New target, using coff and
4807 BFD_ASSEMBLER.
4808
4809 * stabs.c: New file.
4810 * Makefile.in (REAL_SOURCES, OBJS): List it.
4811 * read.c (STAB_SECTION_NAME, STAB_STRING_SECTION_NAME,
4812 get_stab_string_offset, s_stab_generic, s_stab, s_xstab, s_desc):
4813 Moved to new file.
4814
4815 * config/tc-sparc.c (tc_gen_reloc): Handle coff files like elf
4816 files.
4817
29cc5816
ILT
4818Wed Nov 17 17:23:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4819
4820 * configure.in (mips-*-irix5*): New target. Use elf and mips-big.
4821 * config/obj-elf.c: If ECOFF_DEBUGGING, include ecoff.h.
4822 (obj_pseudo_table): If ECOFF_DEBUGGING, define ECOFF
4823 pseudo-ops.
4824 (obj_read_begin_hook): If ECOFF_DEBUGGING, call
4825 ecoff_read_begin_hook.
4826 (obj_symbol_new_hook): If ECOFF_DEBUGGING, call
4827 ecoff_symbol_new_hook.
4828 (obj_elf_init_stab_section): Cast alloca result.
4829 (elf_frob_file): If ECOFF_DEBUGGING, finish up ECOFF debugging
4830 information and write it out into .mdebug section.
4831 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): New macro.
4832 (TARGET_SYMBOL_FIELDS): Use ELF_TARGET_SYMBOL_FIELDS.
4833 (ECOFF_DEBUGGING): Define if TC_MIPS.
4834 (TARGET_SYMBOL_FIELDS): If ECOFF_DEBUGGING, override to add
4835 fields required by ECOFF.
4836 * config/tc-mips.c: Check ECOFF_DEBUGGING rather than
4837 OBJ_ECOFF in many cases.
4838 (mips_any_noreorder): New variable.
4839 (mips_cprestore_offset): Initialize to -1.
4840 (mips_frame_reg): New variable.
4841 (RELAX_ENCODE, RELAX_OLD, RELAX_NEW, RELAX_RELOC1,
4842 RELAX_RELOC2, RELAX_RELOC3, RELAX_WARN): New macros.
4843 (md_pseudo_table): Handle "gpword" and "cpadd".
4844 (md_begin): Initialize ok to false. If OBJ_ELF, set alignment
4845 of text, data and bss sections to 4. Set alignment of
4846 .reginfo section to 2. If ECOFF_DEBUGGING, create .mdebug
4847 section.
4848 (ALIGN_ERR, ALIGN_ERR2): Removed unused and useless alignment
4849 check.
4850 (append_insn, macro_build, macro_build_lui): Take place
4851 argument. Changed all callers.
4852 (append_insn): If appending a nop, don't emit one.
4853 (macro_build): Changed assertion for 'i', 'j', 'o' case.
4854 (gp_reference): Removed.
4855 (load_address): New function.
4856 (macro): If mips_noreorder is used, set mips_any_noreorder.
4857 Extensive changes to handle GP and PIC symbols differently.
4858 Build both possible code choices using a variant frag, and
4859 make a final decision at the end of assembly when all
4860 information is known. Added PIC support for all symbol
4861 references.
4862 (mips_ip): Don't permit anything but a number after $ for a
4863 coprocessor register. Don't use .lit4 or .lit8 sections when
4864 generating PIC code. If OBJ_ELF, set alignment of .lit4 or
4865 .lit8 section to 4.
4866 (md_apply_fix): Accept and ignore GOT16 and GPREL32 relocs.
4867 (s_change_sec): Set alignment of ELF .rodata or .sdata section
4868 to 4.
4869 (s_mipsset): If .set noreorder, set mips_any_noreorder.
4870 (s_cpload): Ignore .cpload if not generating PIC code. Warn
4871 if .cpload is not in noreorder section.
4872 (s_cprestore): Ignore .cprestore if not generating PIC code.
4873 (s_gpword, s_cpadd): New functions.
4874 (tc_get_register): Added frame argument; if true, set
4875 mips_frame_reg to return value. Changed all callers.
4876 (md_estimate_size_before_relax): Don't error out, but instead
4877 determine how much a frag should grow.
4878 (tc_gen_reloc): Return multiple relocs if appropriate, as
4879 determined by md_estimate_size_before_relax.
4880 (md_convert_frag): New function.
4881 (mips_elf_final_processing): Set ELF header flags based on
4882 mips_any_noreorder and mips_pic.
4883 * config/tc-mips.h (RELOC_EXPANSION_POSSIBLE): Define.
4884 (MAX_RELOC_EXPANSION): Define to be 3.
4885 (md_relax_frag): Define to be 0.
4886 (md_convert_frag): Don't define.
4887 (tc_get_register): Changed declaration.
4888
4889 * ecoff.h, ecoff.c: New files pulled out of config/obj-ecoff.c to
4890 support generating ECOFF debugging information for MIPS ELF
4891 targets. Compiled only if ECOFF_DEBUGGING is defined. Changed
4892 handling of external symbols: it now always generates exactly
4893 those external symbols that are defined in the global symbol list.
4894 * Makefile.in (REAL_SOURCES): Added ecoff.c.
4895 (REAL_HEADERS): Added ecoff.h.
4896 (OBJS): Added ecoff.o.
4897 (ecoff.o): New target.
4898 * config/obj-ecoff.c: Almost entirely moved into ecoff.c.
4899 Remaining code mostly just calls ecoff.c code.
4900 * config/obj-ecoff.h: Define ECOFF_DEBUGGING.
4901 (TARGET_SYMBOL_FIELDS): Make ecoff_symbol a pointer to a
4902 struct localsym.
4903 (obj_read_begin_hook, obj_symbol_new_hook): Define to call
4904 functions in ecoff.c.
4905 (ecoff_stab): Don't declare (now declared in ecoff.h).
4906 (obj_set_sym_index): Define.
4907 (obj_ecoff_set_sym_index): Declare.
4908
4909 * frags.h (frag_grow): Declare.
4910 * frags.c (frag_grow): Made non-static.
4911
4912 * write.c (is_dnrange): Do not define if md_relax_frag is defined.
4913 (relax_segment): If md_relax_frag is defined, use it to handle a
4914 frag of type rs_machine_dependent rather than looking through
4915 md_relax_table.
4916
4917 * read.c (read_a_source_file): If we find a bad pseudo-op,
4918 do a continue to go on to the next line rather than a break.
4919 Removed duplicate bad pseudo-op code which was never executed.
4920
4921 * read.c (s_lcomm): Do not require a comma after the name.
4922
4923 * subsegs.h (segment_info_type): Changed hadone field to bitfield.
4924 Added bss bitfield.
4925 * as.c (perform_an_assembly_pass): Set bss flag for bss_section.
4926 * read.c (s_lcomm): Set bss flag for .sbss section if used.
4927 * write.c (relax_and_size_seg): Don't set SEC_HAS_CONTENTS for a
4928 bss section. Set SEC_RELOC if there are any relocations, even for
4929 a zero size section.
4930
4931 * write.c (write_relocs): In RELOC_EXPANSION_POSSIBLE case, base
4932 data offset on reloc[0]->address rather than reloc[j]->address, so
4933 that multiple relocs can affect different memory locations.
4934
4935 * write.c (chain_frchains_together, relax_and_size_seg,
4936 adjust_reloc_syms, write_relocs): Make third argument PTR, not
4937 char *, to match definition of bfd_map_over_sections.
4938
4939 * app.c (do_scrub_next_char): Don't interpret a comment character
4940 as starting a CPP line directive unless it is a '#' and is the
4941 very first characters on the line (i.e., do not permit leading
4942 whitespace).
4943
4944 * messages.c (identify): Make file argument non-const, to match
4945 callers.
4946
c5e9ccd0
JL
4947Tue Nov 16 20:38:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4948
4949 * config/tc-hppa.c (pa_ip): Fix thinko in 21bit range check.
4950
4951Sat Nov 13 18:22:48 1993 Steve Chamberlain (sac@jonny.cygnus.com)
4952
4953 * config/tc-sh.c (md_apply_fix): Cope with IMM16 type too.
4954 * config/tc-z8k.c (build_bytes, md_apply_fix): Understand nDISP7
4955 relocs.
4956
4a1b59ef
JL
4957Fri Nov 12 16:51:47 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4958
3e330968 4959 * config/tc-hppa.[ch]: Fix assorted trivial indention problems.
4a1b59ef
JL
4960 * config/obj-som.c (obj_som_version): Add missing ';'.
4961 (som_frob_file): Delete whitespace at EOL.
4962
f3b6e1f2
KR
4963Fri Nov 12 15:26:21 1993 Ken Raeburn (raeburn@cygnus.com)
4964
4965 * Makefile.in (VERSION): Updated following 2.2 release.
4966
c5e9ccd0 4967Fri Nov 12 14:52:17 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
f2eed884
JL
4968
4969 * config/tc-hppa.c (hppa_fix_struct): Use a real type for the
4970 field selector, rather than an int. All uses of field selectors
4971 fixed.
4972 (tc_gen_reloc): For SOM PLABELs, always set addend to zero for now.
4973 (md_apply_fix_1): Do not call hppa_field_adjust for any PLABEL
4974 field.
4975
4976 Thu Nov 11 15:49:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
a721c80b
JL
4977
4978 * config/tc-hppa.c (pa_type_args): For .import statements,
4979 silently ignore attempt to change the symbol type for a function
f2eed884 4980 from ST_ENTRY to ST_CODE on .import.
a721c80b 4981
ca16b5e5
ILT
4982Wed Nov 10 16:19:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
4983
4984 * write.h (fixS): Rename fx_callj field to fx_tcbit.
4985 * write.c, config/obj-coff.c, config/obj-coffbfd.c,
4986 config/tc-i960.c: Corresponding changes.
4987
48153d49
JL
4988Tue Nov 9 00:49:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
4989
7420b02b
JL
4990 * Makefile.in (distclean): Delete config-stamp and config.h
4991
f41f3d72
JL
4992 * config/tc-hppa.c (evaluate_absolute): Avoid relying on
4993 ANSI-C features.
4994
48153d49
JL
4995 * config/tc-hppa.c (pa_type_args): Renamed from pa_export_args.
4996 Accept new argument "is_export". All callers changed. When
4997 processing a .export directive for a function, do not allow
4998 the user to set the type to "CODE", instead warn and set the
4999 type to "ENTRY".
5000
9226253a
ILT
5001Mon Nov 8 12:05:07 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5002
5003 * config/tc-mips.c (mips_ip, printInsn): Handle 'k' (from Ted
5004 Lemon <mellon@pepper.ncd.com>).
5005 (mips_ip): Permit odd numbered floating point registers if -mips3.
48153d49 5006 (macro): Use BFD_RELOC_MIPS_LITERAL relocation for M_LI_SS.
9226253a 5007
53087850
DE
5008Mon Nov 8 07:45:01 1993 Doug Evans (dje@canuck.cygnus.com)
5009
5010 * configure.in: Remove h8300h, we have multilib now.
5011
5f8a3788
DHW
5012Mon Nov 8 06:09:18 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com)
5013
5014 * configure.in: Support generic netware as being ELF format.
5015 Recognise unixware if the user supplies it.
5016
163aac84
JL
5017Sun Nov 7 01:02:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5018
513f0471
JL
5019 * First cut at cleaning up PA instruction parsing.
5020 * config/tc-hppa.c (pa_get_absolute_expression): Accept pointer to
5021 insn structure as an argument, and a pointer to a string. All
5022 callers changed. Always read any field selector here. Call
5023 evaluate absolute to get a return value.
5024 (evaluate_absolute): Addept pointer to insn structure as its
5025 argument. All callers changed.
5026 (INSERT_FIELD_AND_CONTINUE): New macro for inserting a bitfield
5027 into an instruction and continuing the main pa_ip loop.
5028 (CHECK_FIELD): New macro for simple range checking of fields.
5029 (pa_ip): Delete unused variables. Use INSERT_FIELD_AND_CONTINUE
5030 and CHECK_FIELD. All immediate fields now pass through
5031 pa_get_absolute_expression which will also handle field selectors.
5032 Delete dead code. Simplify.
5033 (md_apply_fix_1): Use CHECK_FIELD to verify any fixes that are
5034 applied are in range. Use bfd_put_32 rather than inserting each
5035 byte of the fixed instrution into the buffer ourselves.
5036
3e411021
JL
5037 * write.c (fixup_segment): Delete {SEG,GLOBAL}_DIFF_ALLOWED code,
5038 it was PA specific and is no longer needed (it's now handled
5039 within the PA backend).
5040 * config/tc-hppa.h (SEG_DIFF_ALLOWED): Delete definition.
5041 * config/tc-hppa.c (fix_new_hppa): If the subtract symbol for
5042 a fixup is $global$ change it to NULL as $global$ is really only
5043 needed long enough to determine the base type of relocation to use.
5044
240cbc57
JL
5045 * config/tc-hppa.c (create_new_subspace): Initialize subspace_defined.
5046
163aac84
JL
5047 * config/tc-hppa.c (pa-ip, case 'z'): Make field selectors work
5048 for 'z' operands (target of ble branch).
5049
1cc248d2
JL
5050Sat Nov 6 22:41:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5051
18c4f112
JL
5052 * config/tc-hppa.c: (update_subspace): Fix type and name of last
5053 parameter. All callers fixed.
5054 (md_begin, pa_chk_field_selector, pa_entry): Lint.
5055
1cc248d2
JL
5056 * config/tc-hppa.c (cons_fix_new_hppa): Reset field selector
5057 to default state after it's been used.
5058
88eb7ea6
JL
5059Fri Nov 5 12:08:21 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5060
5061 * config/obj-som.c (obj_som_init_stab_section): Change
5062 space/subspace sort keys for the stab sections so as to avoid
5063 bugs in the hp linker and pxdb.
5064
0f894895
JL
5065Thu Nov 4 17:00:05 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5066
5067 * write.c (chain_frchains_together): Update pointer to last
5068 frag for a segment in the seginfo structure.
5069
de074576
JW
5070Thu Nov 04 09:09:35 1993 Jeffrey Wheat (cassidy@cygnus.com)
5071
5072 * Makefile.in: Changed RUNTESTFLAGS to RUNTEST_FLAGS
5073
5074Wed Nov 3 12:16:27 1993 Ken Raeburn (raeburn@rover.cygnus.com)
5075
5076 * write.c (fixup_segment): Handle conversion of subtraction to
5077 pc-relative addressing even if pc-relative flag is already set.
5078
5079 * config/tc-m68k.c (m68k_ip_op): Use strchr, not index. Don't
5080 declare either.
5081
5082 * doc/Makefile.in (distclean): Delete intermediate files from dvi
5083 build, but not the dvi or info files.
5084 * Makefile.in (clean-here): New target; cleans up current
5085 directory only.
5086 (distclean): Use it instead of clean.
5087
5088 * read.c (s_xstab): Don't use alloca.
5089
5090 * messages.c (identify): New routine; print message identifying
5091 following messages as coming from assembler.
5092 (as_show_where, as_bad_internal, as_bad_where): Call it.
5093 (as_fatal): Don't need to identify program any more.
5094
efe8ef02
ILT
5095Tue Nov 2 18:04:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5096
fd4b7c25
KR
5097 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
5098
efe8ef02
ILT
5099 * read.c (s_lcomm): Put small objects in .sbss for MIPS ELF as
5100 well as MIPS ECOFF.
5101 (get_stab_string_offset): Remove unused variable aligned.
5102
aa14e863
JL
5103Tue Nov 2 15:07:07 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5104
d6e524f3
JL
5105 * tc-hppa.c: Add %dp and %rp as synonyms for %r27 and %r2 in the
5106 predefined register table.
5107 (pa_parse_number): Handle %rp in common register shortcut code.
5108 Consistently set return value to -1 for an error. Clean up error
5109 messages and only print them when "print_errors" is true. Handle
5110 empty string case like the HP assembler -- assume a value of
5111 zero.
5112
20cee6d8
JL
5113 * config/ho-hpux.h: Do not include ho-sysv.h. Instead include
5114 standard hpux include files to pick up various function decls.
5115
aa14e863
JL
5116 * config/ho-hppaosf.h: Delete _IO* macros. They are defined in
5117 stdio.h. Delete bogus declaration of free. Get path to
5118 alloca-conf.h right.
5119
25270a1c
KR
5120Tue Nov 2 13:57:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
5121
5122 * expr.c (operand): Fix checks for characters following "0b" or
5123 "0f".
5124
f197d7eb
JL
5125Mon Nov 1 21:37:04 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5126
ff852e11
JL
5127 * config/obj-som.h (obj_attach_unwind_info): Define as a hook
5128 so GAS can attach unwind descriptor information to a BFD symbol.
5129 * config/tc-hppa.c (fix_new_hppa): If necessary attach unwind
5130 descriptor information to the BFD symbol.
5131 (md_apply_fix): R_HPPA_ENTRY and R_HPPA_EXIT can never be "applied",
5132 they are simply markers. Make R_HPPA_UNWIND_* handling OBJ_ELF
5133 dependent.
5134 (pa_build_unwind_subspace): Whole function is OBJ_ELF dependent.
5135 (pa_entry): Build a R_HPPA_ENTRY relocation when configured for SOM.
5136 (pa_exit): Likewise, but built a R_HPPA_EXIT relocation. Do not
5137 build "end-of-function" symbols for SOM, they are not needed.
5138
a50e9b55
JL
5139 * config/tc-hppa.c (process_exit): Create temporary symbols with
5140 correct prefixes so they can be eliminated later.
5141
49fc68a1
JL
5142 * config/tc-hppa.c (call_info struct): Delete unused "frame" field.
5143 (pa_callinfo): Insert framesize into the unwind information as
5144 soon as it's available.
5145 (pa_build_unwind_subspace): Do not insert framesize into the unwind
5146 information here.
5147
c43d56f7
JL
5148 * Add support for marker type relocations. These mark areas
5149 of interest to the linker. ENTRY/EXIT relocations for SOM are
5150 an example of marker relocations.
5151 * write.c (write_relocs): Instead of assuming size of a relocation
5152 is 4 bytes, pick up the size from relocation itself.
5153 (fixup_segment): Do not complain that a value is too small for
5154 marker relocations.
5155
009dc5e1
JL
5156 * struc-symbol.h: Add new "sy_used" field to the symbol structure.
5157 * expr.c (operand): Set sy_used for any symbol used as an operand.
5158 (expr): Likewise for any symbol used in an expression.
5159 * config/tc-hppa.h (tc_frob_symbol): Define. Punt imported
5160 symbols which are never used and absolute symbols which local scope.
5161
f197d7eb
JL
5162 * config/obj-som.h (obj_frob_file): Define.
5163 * config/obj-som.c (obj_som_init_stab_section): Set alignment
5164 of stab sections. Make space for the special stab entry.
5165 (adjust_stab_sections): Adjust the special entry in the
5166 stabs section.
5167 (som_frob_file): New function. Simply calls adjust_stab_sections
5168 for each section.
5169
bca9cf0b
ILT
5170Mon Nov 1 17:54:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5171
5172 * config/tc-mips.c (PIC_CALL_REG, SP, FP): Define.
5173 (mips_pic, mips_cprestore_offset): New static variables.
5174 (md_pseudo_table): Handle .abicalls, .cpload, and .cprestore.
5175 Ignore .bgnb and .endb.
5176 (gp_reference): _gp_disp is never addressed off GP.
5177 (macro_build): Ignore macros while searching for insn. For cases
5178 i, j, and o, accept the reloc type as an argument rather than
5179 assuming BFD_RELOC_LO16. Don't try to convert BFD_RELOC_LO16 to
5180 BFD_RELOC_MIPS_GPREL. Added new case a.
5181 (set_at, load_register, macro): Changed calls to macro_build to
5182 pass new argument for i, j and o cases.
5183 (macro): Handle M_JAL_1, M_JAL_2 and M_JAL_A. These require
5184 special handling when generating SVR4 PIC code.
5185 (mips_ip, tc_get_register, s_frame): Use macros FP, SP, GP and AT
5186 rather than hard coded constants.
5187 (md_apply_fix): Handle BFD_RELOC_MIPS_LITERAL and
5188 BFD_RELOC_MIPS_CALL16.
5189 (s_option): Set mips_pic based on .option picN.
5190 (s_abicalls): New function; set mips_pic to 2.
5191 (s_cpload): New function; handle .cpload.
5192 (s_cprestore): New function; handle .cprestore.
5193
5194 * config/obj-ecoff.c (obj_pseudo_table): Add entries for .bgnb,
5195 .endb and .verstamp, setting them to s_ignore.
5196
d191a03c
JL
5197Sun Oct 31 00:36:40 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5198
47f45d66
JL
5199 * config/tc-hppa.c (subspace_dictionary_chain): Add new ssd_defined
5200 field. Define SUBSPACE_DEFINED accessor macro.
5201 (pa_subspace): Allow user to override subspace attributes for
5202 built-in subspaces. Set ssd_defined at the end of fcn -- that
5203 way the attributes can only be changed once. Pass newly allocated
5204 name to is_defined_subspace, not a pointer to the input line.
5205 Fix typo in space/subspace rework.
5206 (is_defined_subspace): Delete unused 2nd arg. All callers changed.
5207
5208 * config/tc-hppa.c (pa_import): If currently in the text segment
5209 and a symbol is imported without type information, set BSF_FUNCTION
5210 for the symbol.
20b39b6f
JL
5211 * write.c (relax_and_size_seg): Correct test to determine if
5212 the section's size was rounded up.
5213
e75acd68
JL
5214 * config/obj-som.h (obj_set_symbol_type): Define a hook so GAS
5215 can properly set all the SOM symbol types.
5216 * config/tc-hppa.c (pa_symbol_type): New enum to represent the
5217 symbol types which can be set from an IMPORT/EXPORT statement.
5218 (pa_export_args): Set the pa_symbol_type type based on arguments.
5219 If defined, call obj_set_symbol_type to pass this information on
5220 to the BFD backend.
5221
d191a03c
JL
5222 * read.c (get_stab_string_offset): Set SEC_DEBUGGING for any
5223 stab section we make.
5224 (s_stab_generic): Likewise.
5225
12696e9c
JL
5226Sat Oct 30 14:26:20 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5227
65a7f8a6
JL
5228 * Allow backends to override the value of the fake label.
5229 * write.h (LOCAL_LABEL): Delete DOT_LABEL_PREFIX code. Instead
5230 assume backends will define LOCAL_LABEL if anything other than
5231 'L' is used to denote a local label.
5232 (FAKE_LABEL_NAME): New macro. Defines the default name used for
5233 the "fake" label.
5234 * expr.c (make_expr_symbol): Delete DOT_LABEL_PREFIX code
5235 and instead simply use the string defined by FAKE_LABEL_NAME.
5236 (operand): Likewise.
5237 * read.c (s_stab_generic): Likewise.
5238 * config/tc-hppa.h (FAKE_LABEL_NAME): Define as L$0\001 so it's
5239 known to be a local label.
5240 * config/tc-i386.h (DOT_LABEL_PREFIX): Delete.
5241 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
5242 * config/tc-m68k.h (DOT_LABEL_PREFIX): Delete.
5243 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
5244 * config/te-sco386.h (DOT_LABEL_PREFIX): Delete.
5245 (LOCAL_LABEL, FAKE_LABEL_NAME): Define.
5246
6bc14195
JL
5247 Rework space/subspace handling in PA code to fully support
5248 SOM spaces/subspaces.
5249 * config/tc-hppa.c (USE_ALIASES): New object-format dependent define
5250 to control the use of space/subspace name aliases.
5251 (update_subspace): Accept space chain entry for containing space
5252 as a new parameter. All callers changed.
5253 (pa_get_label): Use current_space rather than pa_segment_to_space.
5254 (pa_define_label): Likewise.
5255 (pa_undefine_label): Likewise.
5256 (md_begin): Change into the (possibly modified) text_section.
5257 (pa_parse_space_stmt): Create a new segment/space if create_flag
5258 is true, and the space name is not one of the two predefined spaces.
5259 (pa_subspace): Use current_space rather than a lookup via
5260 pa_segment_to_space. Reset BFD section flags as required by
5261 the .subspace directive. Likewise for the section alignment.
5262 Pass the current space to update_subspace and create_new_subspace.
5263 (pa_spaces_begin): Only use space/subspace aliases if USE_ALIASES
5264 is true. When not using aliases, create a BFD section for each
5265 subspace encountered. When not using aliases replace the default
5266 text, data, and bss segments with new ones.
5267 (create_new_subspace): When not using aliases each subspace has a
5268 section/segment and subsegments are not needed, so set the subsegment
5269 to zero.
5270
548ea75b
JL
5271 * config/tc-hppa.c (pa_parse_space_stmt): If needed, call
5272 obj_set_section_attributes to pass space attributes to the
5273 BFD backend.
5274 (create_new_space): Likewise.
5275 (create_new_subspace): Likewise for subspace attributes using
5276 obj_set_subsection_attributes.
5277 (update_subspace): Likewise for subspace attributes using
5278 obj_set_subsection_attributes.
5279
0f3b419c
JL
5280 * config/tc-hppa.c (pa_parse_space_stmt): Get segment and sort key
5281 for $TEXT$ and $PRIVATE$ from the default space structure.
5282
9a182533
JL
5283 * config/tc-hppa.c (pa_export_args): Always set BSF_FUNCTION
5284 as appropriate for the given type.
5285
62f0841b
JL
5286 * config/tc-hppa.c (tc_gen_reloc): Preliminary stab at handling
5287 SOM relocations.
5288
d56f45f5
JL
5289 * config/tc-hppa.c (pa_comm): Delete incorrect check for symbol
5290 redefinition.
5291
3c87583d
JL
5292 * config/obj-som.[ch]: New files for SOM support. Note SOM
5293 support is not yet complete in GAS or BFD.
5294
12696e9c
JL
5295 * config/ho-hppabsd.h: Delete IO* macros, they are defined in
5296 stdio.h. Delete declaration of free. Include stdlib.h, unistd.h,
5297 and string.h.
5298
37ed805e
JL
5299Fri Oct 29 13:26:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5300
12696e9c
JL
5301 * Allow backends to override the section names used for embedded
5302 stabs support. Needed for SOM.
5303 * read.c (STAB_SECTION_NAME): Default the name of the stab section
5304 to ".stab".
5305 (STAB_STRING_SECTION_NAME): Likewise for the stab strings section.
5306 (get_stab_string_offset): Is now passed the full name for the
5307 stab string section rather than a name prefix. All references
5308 changed.
5309 (s_stab_generic): New argument for the stab string section name.
5310 all references changed.
5311 (s_xstab): Append "str" to the stab section name to get the
5312 stab string section name.
5313 * config/obj-coffbfd.c (obj_coff_init_stab_section): Append "str"
5314 to stab section name to get the stab string section name. Pass
5315 the full name of the stab string section to get_stab_string_offset.
5316 * config/obj-elf.c (obj_elf_init_stab_section): Likewise.
5317
53c0b9e7
JL
5318 * config/tc-hppa.c (md_begin): Disable "-R" option to fold
5319 textand data segments. Warn user "-R" is unsupported on the
5320 PA.
37ed805e 5321
48ac0c90
JL
5322Thu Oct 28 12:36:13 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
5323
d33ace2e
JL
5324 * config/tc-hppa.c (md_pseudo_table): Default alignment is 8 for
5325 .align and .ALIGN directives.
5326
48ac0c90
JL
5327 * config/tc-hppa.c (pa_space): Do not report an error for a .space
5328 directive which does not define a "well-known" space and does
5329 not include a space number as an argument.
5330
5331 * config/tc-hppa.c (pa_def_subspaces): Correct initialization of the
5332 "defined", "loadable", "code_only" and "space_index" fields.
5333 (pa_def_spaces): Correct initialization of the "spnum", "defined",
5334 and "private" fields.
5335
5336 * write.h (struct fix): Add new tc_fix_data field for the various
5337 backends to attach machine dependent fixup information to.
5338 * write.c (fix_new_internal): Initialize new tc_fix_data field.
5339 * config/tc-hppa.c (hppa_fix_struct): Delete unnecessary fix_fixP and
5340 fx_next fields.
5341 (hppa_find_hppa_fix): Delete unnecessary function. Fix all
5342 callers to get HPPA fixup information from the tc_fix_data field
5343 in the GAS fixup.
5344 (hppa_fix_root): Delete unnecessary variable.
5345 (fix_new_hppa): Attach HPPA fixup data to the GAS fixup.
5346
5347 * config/tc-hppa.c (pa_set_start_symbol); Delete unwanted
5348 function. Fix all callers.
5349 (subspace_dictionary_chain): Delete unused ssd_start_sym field.
5350
5351 * config/tc-hppa.c (hppa_fix_adjustable): New function to determine
5352 if a particular fixup is adjustable.
5353 * config/tc-hppa.h (tc_fix_adjustable): Call hppa_fix_adjustable to
5354 perform the real work.
5355
5356 * config/tc-hppa.h (RELOC_EXPANSION_POSSIBLE): Move definition out
5357 of OBJ_XXX conditionals.
5358 (MAX_RELOC_EXPANSION): Likewise.
5359
5360 * config/tc-hppa.c (log2): Renamed from is_power_of_2. Fix all
5361 callers. Now returns log2 (N) for positive N which are an exact
5362 power of two or -1 for an error.
5363
5364 * config/tc-hppa.c (pa_callinfo): Range check values provided for
5365 ENTRY_GR, ENTRY_FR and ENTRY_SR. Properly adjust vaues before
5366 inserting them into the unwind table.
5367
5368 * config/tc-hppa.c (NEEDS_FIXUP): Delete definition and all references.
5369 (hppa_gen_reloc_type): New object format dependent macro.
5370 (pa_ip): Delete tons of code which was either OBJ_SOM or OBJ_ELF
5371 conditional. The code can (and will) be shared between SOM & ELF
5372 formats in the near future.
5373 (cons_fix_new_hppa, md_apply_fix_1): Likewise.
5374 (pa_build_unwind_subspace, process_exit, pa_exit): Likewise.
5375 (tc_gen_reloc): Use hppa_gen_reloc rather than an object format
5376 specific call.
5377
5378 * config/tc-hppa.c (pa_comm): Set the segment for a common symbol
5379 to bfd_und_section.
5380
5381 * config/obj-elf.h (obj_elf_version): Add extern prototype.
5382
5383 * configure.in (hppa-*-bsd*): New configuration.
5384 BFD is always used for GAS generating SOM objects.
5385
5386 * write.c (adjust_reloc_syms): Set sy_used_in_reloc if an
5387 adjustment is rejected by the target machine.
5388
5389 * config/tc-hppa.c (pa_big_cons): Delete function and its
5390 declaration. All callers changed to use pa_cons.
5391
5392 * write.c (fixup_segment): Fix indention and open/close brace
5393 problem.
5394
5395 From Pete Hoogenboom:
5396 * config/tc-hppa.c (md_atof): Return a NULL on success rather than
5397 an empty string.
5398
3515a504
JL
5399 * config/tc-hppa.c (pa_parse_space_stmt): Advance
5400 input_line_poitner when an invalid argument is encountered.
5401
6121fb06
ILT
5402Thu Oct 28 13:09:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5403
5404 * config/tc-a29k.c (md_begin): When opcodes are mashed together in
5405 the table, require that the one without bit 0x1000000 set come
5406 first. Require further that it be case 'b' or 'P'. The a29k
5407 opcode table already meets these constraints.
5408 (machine_ip): When handling case 'i' or 'A', make sure that the
5409 appropriate opcode really exists by looking at the next entry in
5410 the opcode table.
5411
56c96faa
ILT
5412Wed Oct 27 11:48:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5413
729f4bba
ILT
5414 * config/tc-m68k.c (m68k_ip): Adjust offsets for PC relative
5415 fixups. Add 6 for long 7.3 case, 2 for short 7.2 case.
5416
007ff46b
ILT
5417 * config/obj-ecoff.c (obj_ecoff_ent): Ignore an optional number
5418 after a .ent directive.
5419
d1ee509b
ILT
5420 * config/tc-mips.c (mips_ip): Handle '>' case (shift amount
5421 between 32 and 63 for double shift instruction). Do & 0x1f rather
5422 than % 32.
5423 (printInsn): Handle '>'.
56c96faa 5424
fa20b8bf
ILT
5425Tue Oct 26 16:58:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5426
5694ad93
ILT
5427 * config/tc-ns32k.c (tc_aout_fix_to_chars): Output the symbol
5428 number in the right place. Untested. Probably does not work for
5429 cross assembly. From cagney@cs.adelaide.edu.au (Andrew Cagney).
5430
f3751617
ILT
5431 * config/tc-m68k.c (md_apply_fix_2): Error if a short branch uses
5432 an illegal offset of 0 or -1.
5433
fa20b8bf
ILT
5434 * config/obj-elf.c (obj_elf_init_stab_section): Align .stab
5435 section to a longword boundary.
5436
4da7942d
KR
5437Tue Oct 26 10:24:31 1993 Ken Raeburn (raeburn@cygnus.com)
5438
5439 * Makefile.in (CHECKFLAGS): Pass down RUNTESTFLAGS.
5440
5441 From Jeff Law:
5442 * config/tc-hppa.c (tc_gen_reloc): ELF32_HPPA_R_ADDEND ->
5443 HPPA_R_ADDEND.
5444
fd4b7c25
KR
5445Mon Oct 25 14:06:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5446
5447 * config/tc-sparc.c (sparc_ip): Fix up membar argument handling.
5448
24934035
SC
5449Mon Oct 25 11:17:58 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
5450
8e5afd4f
SC
5451 * config/tc-sh.c (build_Mbytes): Write the relocs to the correct
5452 address. (md_assemble): Make error handling a bit more graceful.
5453 (md_apply_fix): Don't warn on non aligned displacement.
fd4b7c25 5454
24934035
SC
5455 * config/tc-z8k.c (get_specific, built_bytes): Understand all the
5456 aspects of lda.
5457
84678d16
KR
5458Mon Oct 25 10:20:31 1993 Ken Raeburn (raeburn@rover.cygnus.com)
5459
5460 * doc/Makefile.in (install-info): Use "$<*" so VPATH will find
5461 as.info* even if they're in $(srcdir) (e.g., for FSF
5462 distributions).
5463
5464 * write.c (write_relocs): For relocs that are pc_relative and
5465 pcrel_offset and not partial_inplace, adjust reloc->addend to
5466 compensate for a bfd_perform_relocation bug.
5467
5468 * config/tc-sparc.h: Removed remaining non-BFD_ASSEMBLER code.
5469 * config/tc-sparc.c: Ditto.
5470 (tc_gen_reloc): Include fx_offset for pcrel fixups.
5471
52aa70b5
JW
5472Sun Oct 24 16:49:00 1993 Jim Wilson (wilson@x1.cygnus.com)
5473
5474 * tc-mips.c (md_pseudo_table): Add dword pseudo op.
5475
ab0751c8
DZ
5476Fri Oct 22 20:40:56 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5477
5478 * messages.c: replaced all variables called Format with 'format',
5479 for consistency throughout
5480
5481 * configure.in: handle mips*- instead of mips, mips*el for little
5482 endian configurations
5483
8efed14f
ILT
5484Fri Oct 22 14:45:49 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5485
5486 * input-scrub.c (physical_input_file, logical_input_file,
5487 physical_input_line, logical_input_line): Made static.
5488 (as_where): Return current file name and line number, don't print
5489 them out.
5490 * messages.c (as_show_where): New static function. Other
5491 functions use it instead of as_where.
5492 (as_bad_internal): New static function.
5493 (as_bad): Use as_bad_internal.
5494 (as_bad_where): New function, like as_bad but taking a file name
5495 and line number.
5496 * as.h (as_bad_where): Declare.
5497 (as_where): Change prototype for new arguments.
5498 * write.h (fixS): Added fields fx_file and fx_line.
5499 * write.c (fix_new_internal): Save file and line number in fix.
5500 (fixup_segment): Use as_bad_where, not as_bad.
5501 * input-file.c (f_in, file_name): Made static.
5502 * cond.c (struct file_line): Just use file and line fields.
5503 (s_else): Use as_where and as_bad_where, not get_file_line and
5504 set_file_line.
5505 (get_file_line, set_file_line): Removed.
5506 * listing.c (listing_newline): Use as_where.
5507 * config/obj-coffbfd.c (obj_coff_init_stab_section): Use as_where.
5508 * config/obj-ecoff.c (add_file): Use as_where.
5509 * config/obj-elf.c (obj_elf_init_stab_section): Use as_where.
5510 * config/tc-m68k.c (md_apply_fix_2): Use as_bad_where.
5511 * config/tc-mips.c (tc_gen_reloc): Use as_bad_where, not assert.
5512
efa0c22e
KR
5513Thu Oct 21 12:52:01 1993 Ken Raeburn (raeburn@cygnus.com)
5514
5515 * config/tc-m68k.h: Don't define REGISTER_PREFIX or
5516 OPTIONAL_REGISTER_PREFIX if either is already defined.
5517
5518 * config/tc-m68k.c (m68k_ip): Delete some code in "#if 0".
5519
5520 * configure.in: Set bfd_gas for all sparc targets. Added facility
5521 for keeping or rejecting configurations still under development;
5522 default is to assume production environment, and reject configs
5523 still being worked on. Mark Elf configurations (except sparc and
5524 i386) as developmental. Deleted cases matching some generic names
5525 in favor of more specific names. (E.g., when we get Alpha
5526 support, we'll still only support VMS for Vax.)
5527
5528 * config/tc-sparc.h (md_end): New macro.
5529 * config/tc-sparc.c (md_end): Function deleted.
5530 (BFD_RELOC_*): Delete macros that used to help keep the non-bfd
5531 version compiling. All sparc targets will use bfd now.
5532 * tc.h (md_end): Don't declare if it's defined as a macro.
5533
5534 Changes from Jeff Law and Peter Hoogenboom:
5535
5536 * read.c (next_char_of_string): Limit octal character constants to
5537 three digits.
5538
5539 * config/tc-hppa.h: Major cleanup. Use GNU-style comments. Warn
5540 against placing additional object-file dependent code here. Warn
5541 against contaminating all of GAS with the internals of tc-hppa.c
5542 through inclusion of tc-hppa.h. Delete all forward declarations
5543 for functions only used within tc-hppa.c, likewise for structures,
5544 variables, and #defines. Try to group OBJ_ELF and OBJ_SOM
5545 conditional code in a few small places.
5546
5547 * config/tc-hppa.c: Major cleanup. Use GNU-style comments. Group
5548 structures, global variables, forward declarations together.
5549 Reduce (or in some cases eliminate) OBJ_ELF and OBJ_SOM
5550 conditional code -- try to group conditional code together
5551 into a few places. Make all functions and variables which
5552 are only used within tc-hppa.c static. PARAMize all functions.
5553 Add comments to functions. Delete unused functions, variables,
5554 #defines, etc. Delete unused members within structures. Delete
5555 ldil;ble hacks -- it is believed they were installed to work
5556 around old gas bugs. Avoid using mixed case for local
5557 functions, variables, and structures. Fix formatting problems
5558 not found by GNU-indent. Add FIXME notices for things which
5559 should be worked on the near future. Delete lots of old
5560 useless (1.36 PA-SOM) code.
5561
5562 * config/tc-hppa.c: (fix_new_hppa): Initialize the fx_r_type
5563 field of the fixS structure. Needed to build unwind
5564 descriptors correctly.
5565
5566 * write.c: (fixup_segment): Allow expressions such as
5567 sym1-sym2+const as long as sym2 is $global$.
5568
5569 * write.c (adjust_reloc_syms): Provide a hook so that a target
5570 cpu configuration can reject certain relocation reductions.
5571 * tc-hppa.h (tc_fix_adjustable): New macro. Only accept relocations
5572 which do not involve function symbols.
5573
5574 * config/tc-hppa.h: Reindent with GNU-indent. Delete references
5575 to OBJ_OSFROSE. Fix typos (OBJ_SOME -> OBJ_SOM). Delete unused
5576 STAB_FIXUP macro.
5577 * config/tc-hppa.c: Likewise.
5578
5579 * config/tc-hppa.c (md_apply_fix_1): Use elf_symbol_type, instead
5580 of elf32_symbol_type.
5581 (pa_export_args): Likewise.
5582 (elf_hppa_final_processing): Likewise.
5583 (pa_desc): Do not call obj_elf_desc. (Is pa_desc even needed
5584 anymore?)
5585 (hppa_tc_make_sections): Do not declare elf_get_symtab_map any
5586 ore.
5587
5588 * config/tc-hppa.c: (md_section_align): Align all sections to
5589 a multiple of the section alignment rather than always a
5590 multiple of 8.
5591
5592 * config/tc-hppa.c (hppa_tc_symbol): If the argument relocation
5593 bits are zero (eg they specify no relocations), then do not even
5594 bother adding their entries to thesymextn section.
5595
7766838e
ILT
5596Thu Oct 21 15:44:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5597
5598 * config/tc-sparc.c (md_parse_option): Accept and ignore -sparc
5599 option, which is used by the SunOS make default .s.o rule.
5600
fd4b7c25
KR
5601Wed Oct 20 12:26:33 1993 Ken Raeburn (raeburn@rover.cygnus.com)
5602
5603 * config/tc-sparc.c (sparc_ip, label "immediate"): Convert relocs
5604 operating on upper 32 bits of immediate constants to lower-half
5605 relocs with adjusted constants.
5606
dff60b7d
ILT
5607Tue Oct 19 18:13:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5608
5609 * config/tc-m68k.h (AOUT_MACHTYPE): Define to be external variable
5610 m68k_aout_machtype.
5611 * config/tc-m68k.c (omagic): Remove obsolete and unused variable.
5612 (m68k_aout_machtype): New variable, if OBJ_AOUT.
5613 (md_assemble): Initialize m68k_aout_machtype based on
5614 current_architecture, if OBJ_AOUT.
5615 (md_parse_option): Remove obsolete reference to omagic.
5616
c17cd709
ILT
5617Thu Oct 14 16:51:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5618
dd3f1f76
ILT
5619 * config/tc-mips.c (md_pseudo_table): Ignore .livereg pseudo-op.
5620 (s_option): Ignore .option O* and .option pic*.
5621 (s_ent): Skip whitespace between symbol and optional digit.
dff60b7d 5622 (my_getSmallExpression): Handle ($xx) correctly: assume 0($xx).
dd3f1f76 5623
54508138
ILT
5624 * app.c (do_scrub_next_char): Always accept 'x' and 'X' as escape
5625 characters in state 6.
5626 * read.c (next_char_of_string): Accept \Xh* and \xh* where h* are
5627 hexidecimal digits.
5628
c17cd709
ILT
5629 * config/tc-i386.c (md_apply_fix_1): Make cross segment calls work
5630 for ELF by hacking around bizarre bfd_perform_relocation behaviour
5631 that I don't dare change.
5632
ad660eb1
ILT
5633Thu Oct 14 11:33:25 1993 Michael Meissner (meissner@osf.org)
5634
5635 * config/tc-i386.c: (md_begin): Do not zero static arrays. Don't
5636 call strchr for each character to see if it is a special char,
5637 instead add a second loop over special_chars. Set alignment
5638 of text, data and bss sections to 4.
5639 (pi, te, pt, pe, ps): Add declarations so that DEBUG386 can be
5640 used again.
5641 (reloc): Don't return 8 and 16 bit non-PC relative relocations on
5642 ELF, since the ELF object format does not have these type of
5643 relocations. Change the abort into as as_bad and return
5644 BFD_RELOC_NONE to silence compiler warnings.
5645 (md_assemble): Keep track of the instruction size. Allow white
5646 space between the $ and the constant for compatibility with older
5647 gases and other assemblers.
5648 (i386_operand): Skip spaces between $ and expression.
5649 (tc_gen_reloc): Don't allow anything but 32 bit relocations on
5650 ELF. Convert abort into an as_bad and assert into as_fatal.
5651
132239bf
KR
5652Wed Oct 13 16:50:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5653
5654 * config/obj-coffbfd.c (fixup_segment) [DIFF_EXPR_OK]: If
5655 sub_symbolP is in the current segment, convert to a PC-relative
5656 fixup and discard the symbol.
5657
b7cbb59f
ILT
5658Wed Oct 13 14:00:02 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5659
463b1851
ILT
5660 * config/obj-ecoff.c (ecoff_build_symbols): Handle st_End symbol
5661 for st_StaticProc just like st_Proc.
5662
b7cbb59f
ILT
5663 * write.c (relax_and_size_all_segments): Moved #endif for OBJ_BOUT
5664 so that OBJ_BOUT doesn't forget to adjust all the fragments in the
5665 .bss section.
5666
f2a663d3
ILT
5667Tue Oct 12 17:26:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5668
5669 * config/tc-mips.c: If OBJ_ELF, include elf/mips.h.
5670 (mips_regmask_frag): New static variable, if OBJ_ELF.
5671 (md_begin): If OBJ_ELF, create .reginfo section and set
5672 mips_regmask_frag to a frag.
5673 (mips_elf_final_processing): New function, if OBJ_ELF. Set
5674 mips_regmask_frag to register mask information.
5675 * config/tc-mips.h (elf_tc_final_processing): New macro, defined
5676 if OBJ_ELF.
5677
99024047
KR
5678Tue Oct 12 03:33:26 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5679
2145a183
KR
5680 * messages.c (as_fatal): Use myname when printing messages.
5681
99024047
KR
5682 * config/tc-i960.c (md_begin): Use null pointer, not empty string,
5683 as initial "return" value in case hashing isn't needed.
5684
5685 * config/tc-a29k.c (md_atof): Return null, not empty string, on
5686 success.
5687 * config/tc-h8300.c (md_atof), config/tc-h8500.c (md_atof),
5688 config/tc-hppa.c (md_atof), config/tc-i860.c (md_atof),
5689 config/tc-i960.c (md_atof), config/tc-m88k.c (md_atof),
5690 config/tc-ns32k.c (md_atof), config/tc-sh.c (md_atof): Ditto.
5691
5692Mon Oct 11 16:46:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
2dd45209
SC
5693
5694 fix for pr 3571
5695 * config/tc-h8300.c (get_specific): Special action if 8 bit
5696 address seen. (check_operand): Don't complain if truncating top
5697 bits of an 8 bit address. (build_bytes): Allow an immediate and
5698 an absolute in the same insn.
5699
f37449aa
ILT
5700Mon Oct 11 17:18:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5701
5702 * write.c (write_contents): Don't crash if seginfo is NULL.
5703
5704 * config/obj-ecoff.c (ecoff_frob_file): Write out register masks
5705 by modifying .reginfo section, not by directly modifying BFD
5706 backend data.
5707
fec552ce
DZ
5708Mon Oct 11 14:11:32 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5709
5710 * config/ho-sunos.h: remove extern time declaration
5711
8d3be803
KR
5712Mon Oct 11 16:14:43 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5713
5714 * messages.c (as_fatal): Do mention that it's the assembler that
5715 got the fatal error.
5716
88225433
ILT
5717Fri Oct 8 14:09:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5718
1aa6938e
ILT
5719 * config/tc-mips.c (mips_gprmask, mips_cprmask): New variables to
5720 hold register masks.
5721 (md_begin): Initialize them to zero.
5722 (append_insn): Update mips_gprmask and mips_cprmask. Also add
5723 register variables pinfo and prev_pinfo.
5724 * config/tc-mips.h (mips_gprmask, mips_cprmask): Declare.
5725 * config/obj-ecoff.c (ecoff_frob_file): If TC_MIPS, set gprmask
5726 and cprmask from mips_gprmask and mips_cprmask.
5727
88225433
ILT
5728 * config/tc-mips.h: Define TARGET_FORMAT if OBJ_ELF.
5729 * config/tc-mips.c (GPOPT): Define if OBJ_ECOFF or OBJ_ELF.
5730 (various): Change all references to GP references to apply if
5731 GPOPT, not if OBJ_ECOFF.
5732 (s_change_sec): Rearrange somewhat. If OBJ_ELF, use .rodata
5733 instead of .rdata. If OBJ_ELF, set section flags for .rodata and
5734 .sdata sections.
5735 (s_frame, s_loc, s_mask): Comment out entire functions, rather
5736 than just body. They're not used anyhow.
5737 * configure.in: Set cpu_type to mips for mips*. Accept
5738 mips-*-elfl* and mips-*-elf*.
5739
17a0da33
ILT
5740Thu Oct 7 18:36:29 1993 Michael Meissner (meissner@osf.org)
5741
5742 * config/obj-elf.c (obj_elf_common): Allow the alignment field to
5743 not be specified.
5744
80aab579
ILT
5745Wed Oct 6 13:01:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5746
abdad6bc
ILT
5747 * config/tc-mips.c (cons_fix_new_mips): New function. Turn
5748 BFD_RELOC_64 into BFD_RELOC_32.
5749 * config/tc-mips.h (TC_CONS_FIX_NEW): Define.
5750 (cons_fix_new_mips): Declare.
5751
80aab579
ILT
5752 Changes to let cons handle bignums like general expressions.
5753 * expr.h (expressionS): New field X_unsigned.
5754 * expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
5755 unary minus case.
5756 (expr) Fix typo resultP to right if missing operand. Set
5757 X_unsigned to 1 when building new expression.
5758 * read.c (potable): Make "octa" and "quad" call cons, not
5759 big_cons.
5760 (cons): Handle bignums. If given an O_constant (small integer) to
5761 fill a big space, turn it into a bignum.
5762 (parse_bitfield_cons): Set X_unsigned field.
5763 (bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
5764 Removed.
5765 * read.h (big_cons): Remove prototype.
5766 * symbols.c (resolve_symbol_value): Don't give a warning if a
5767 symbol in expr_section can not be resolved.
5768 (S_SET_VALUE): Clear X_unsigned.
5769 * write.c (write_object_file): If resolve_symbol_value failed on a
5770 symbol we are writing out, give a warning.
5771 * config/tc-h8500.c (parse_reglist): Set X_unsigned.
5772 * config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
5773 call pa_cons, not pa_big_cons.
5774 (pa_big_cons): Remove.
5775 * config/tc-hppa.h (pa_big_cons): Remove declaration.
5776 * config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
5777 not big_cons.
5778
5779Tue Oct 5 10:53:36 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
5780
5781 * doc/as.texinfo (Copying): new node, to handle the recent changes
5782 in the texinfo/gpl.texinfo file
5783
4f5666c5
ILT
5784Mon Oct 4 17:10:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5785
5786 * read.c (big_cons): Handle "0" correctly.
5787
5788 * config/tc-mips.c (md_begin): Set target_big_endian correctly.
5789
8208ab5a
KR
5790Mon Oct 4 15:37:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5791
5792 * config/tc-m68k.c (m68k_ip): Mode 7.3 operand using PC should
5793 have pc-relative fixup.
5794 (md_parse_option): Move "-k" case down near "-pic" case.
5795
31909d40
KR
5796 * configure.in: Alphabetize list of cpu type alternatives. Enable
5797 OS values of "linux*elf*" and "linux*coff*" to select those
5798 formats, with linux emulation. Don't bother checking for upper-
5799 or mixed-case versions of "ose".
5800
8208ab5a
KR
5801Thu Sep 30 11:05:35 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
5802
5803 * config/z8k.c (md_pseudo_table): add "unseg".
5804
6cc87fbb
RP
5805Wed Sep 29 16:15:11 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5806
5807 * config/m88k-opcode.h (m88k_opcodes): correct a few mistakes
5808 found while extending the dissassembler.
5809
8f3956b3
SS
5810Tue Sep 28 12:02:04 1993 Stan Shebs (shebs@rtl.cygnus.com)
5811
5812 * configure.in: Split i386 LynxOS out from other coff targets,
5813 add a specific Lynx emulation.
5814 Add m68k LynxOS target.
5815 * config/tc-i386.c: Define specific Lynx target format.
5816 * config/tc-m68k.c: Define specific Lynx target format.
5817 * config/te-lynx.h: New file.
5818
5819 * config/obj-coffbfd.h: Don't set TARGET_FORMAT to be
5820 "coff-{i386,m68k}" if TARGET_FORMAT already defined.
5821 (INIT_STAB_SECTION): Define.
5822 * config/obj-coffbfd.c: Include <time.h>.
5823 (write_object_file): Look for .stab sections and call
5824 adjust_stab_section.
5825 (adjust_stab_section): New function, fills in the first symbol
5826 of a stab section with number of symbols and string table size.
5827 (obj_coff_init_stab_section): New function, creates the initial
5828 symbol for a stab section.
5829
43029a8f
KR
5830Mon Sep 27 15:21:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5831
5832 * config/atof-vax.c (md_atof): Return null on success instead of
5833 empty string.
5834 * config/atof-tahoe.c (md_atof): Ditto.
5835 * read.c (float_cons): Expect a null pointer for success, not an
5836 empty string.
5837
5838 * hash.c (hash_insert, hash_jam, hash_grow): Return null pointer
5839 on success, instead of empty string. All callers changed.
5840
5841 * config/tc-vax.c: Use PARAMS in declarations.
5842 (vip_op): Use NULL instead of empty string for success in error
5843 and warning fields.
5844
b7318ac4
KR
5845Sun Sep 26 23:45:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5846
b9790da8
KR
5847 * expr.c (expr) [DIFF_EXPR_OK]: Permit subtraction of two symbols
5848 in different defined segments.
5849
b7318ac4 5850 * write.c (relax_segment): Localize "aim" variable. If
132239bf 5851 DIFF_EXPR_OK, don't impose checks on symbol segment types.
b7318ac4
KR
5852 (fixup_segment) [DIFF_EXPR_OK]: If sub_symbolP is in the current
5853 segment, convert to a PC-relative fixup and discard the symbol.
5854
5855 * config/tc-m68k.c (flag_want_pic): New variable, mostly ignored.
5856 (md_parse_option) [TE_SUN3]: Set it for "-k".
5857 (m68k_ip): Generate proper fixup for mode 7.3.
5858 * config/tc-m68k.h (DIFF_EXPR_OK): Define.
5859
c996b199
KR
5860Sat Sep 25 05:08:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5861
5862 * config/tc-m68k.c (struct m68k_incant, getone, gettwo): Moved
5863 earlier in the file.
5864 (insop, add_exp): Now defined as functions, for readability.
5865 (insop): Now takes two arguments; callers changed.
5866
6d6b97b7
RP
5867Fri Sep 24 12:37:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
5868
58f3e8a9
RP
5869 * config/tc-m88k.c (get_o6): new function.
5870 (get_bf, get_cmp, get_cnd, get_cr, get_fcr, get_imm16, get_reg,
5871 get_vec9, getval, get_pcr, calcop, match_name): make static and
5872 prototype.
5873 (s_file): remove extraneous forward decl.
5874 (md_begin): add const to retval decl.
5875 (calcop): cope with instructions without arguments. Handle 'o'
5876 type argument, the o6 field of the prot insn.
5877 (md_estimate_size_before_relax): return a dummy value.
5878
6d6b97b7
RP
5879 * config/m88k-opcode.h (m88k_opcodes): comment change; o6 field is
5880 in bits 10 through 7. flt.[dxs]s requires an r register in the
5881 second argument. New instruction lda.x. New instruction muls
5882 (alias for mul).
5883
5884Fri Sep 24 13:43:30 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5885
5886 * Makefile.in (distclean): Recurse like clean.
5887 * doc/Makefile.in (distclean): New target.
5888
5889 * config/tc-mips.c (md_begin): Set BFD architecture and machine
5890 based on MIPS ISA level.
5891
5892Thu Sep 23 17:58:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5893
5894 * as.c (main): "exhausted", not "exhuasted".
5895
5896 * struc-symbol.h (struct symbol): Add sy_used_in_reloc field.
5897 * write.c (adjust_reloc_syms): Set sy_used_in_reloc.
5898 (write_object_file): Never strip symbols with sy_used_in_reloc
5899 set.
5900
5901 * config/obj-elf.c (obj_elf_section): Rewrote to handle both
5902 Solaris and SVR4 style .section pseudo-ops.
5903 (obj_elf_ident): Set SEC_READONLY for .comment section.
5904 * config/tc-sparc.c (md_apply_fix): If this is ELF, and we're
5905 generating a reloc, don't apply a fix.
5906
6110df28
KR
5907Thu Sep 23 13:16:58 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
5908
5909 * config/obj-coffbfd.c (relax_align): Now static.
5910
9bd0d649
ILT
5911Mon Sep 20 19:23:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5912
5913 * read.c (get_stab_string_offset): Make non-static. Make
5914 arguments const. Don't align strings to 4 byte boundaries.
5915 * read.h: Declare get_stab_string_offset.
5916 * config/obj-elf.c (obj_elf_section): Set SEC_ALLOC as well as
5917 SEC_LOAD for progbits section.
5918 (obj_elf_init_stab_section): New function.
5919 (adjust_stab_sections): Add casts to avoid warnings.
5920 * config/obj-elf.h (INIT_STAB_SECTION): Call
5921 obj_elf_init_stab_section.
5922 (OBJ_PROCESS_STAB): Removed definition.
5923
80903ca6
ILT
5924Fri Sep 17 18:12:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5925
5926 * config/obj-elf.h (S_GET_SIZE): Define.
5927 (obj_frob_forward_symbol): Define.
5928 * config/tc-i386.c (line_comment_chars): Initialize in all cases.
5929
13998021
ILT
5930Thu Sep 16 14:23:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5931
9bd0d649 5932 * tc.h: Declare tc_gen_reloc differently depending upon
13998021
ILT
5933 RELOC_EXPANSION_POSSIBLE.
5934 * config/obj-elf.c (obj_elf_section): Only set flags when first
5935 creating the section.
5936
5937Wed Sep 15 12:15:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5938
5939 * config/tc-mips.c (append_insn): Don't swap a trap instruction
5940 with a branch.
5941
4f0bccc7
ILT
5942Tue Sep 14 13:31:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
5943
90397ff8
ILT
5944 * config/obj-elf.c (obj_elf_data, obj_elf_text): New functions;
5945 set previous_section and previous_subsection and then call s_data
5946 and s_text, respectively.
5947 (obj_pseudo_table): Add data and text.
5948 (obj_elf_section): Add SEC_LOAD to default initialization of
5949 flags. Treat .rodata1 like .rodata. Set SEC_LOAD as well as
5950 SEC_ALLOC for "alloc" string. Don't bother trying to find the
5951 section; just use subseg_new.
5952
4f0bccc7
ILT
5953 * read.c (change_to_section): Removed. This is now done by
5954 subseg_new.
5955 (get_stab_string_offset): Rearranged somewhat. Create the section
5956 using subseg_new. Store the string index in seg_info, rather than
5957 in a static variable. Force the first string to be empty. Use
5958 frag_more rather than FRAG_APPEND_1_CHAR.
5959 (s_stab_generic): Rewrote.
5960 * subsegs.h (segment_info_type): Added stabu union.
5961 * subsegs.c (subseg_new): Initialize stab_string_size to 0.
5962 * config/obj-aout.c: Don't include aout/stab_gnu.h.
5963 (obj_aout_stab, obj_aout_desc): Removed.
5964 (obj_pseudo_table): Removed desc and stabX entries.
5965 * config/obj-bout.c: Same changes as config/obj-aout.c.
5966 * config/obj-bout.h (S_SET_TYPE): Define.
5967 (tc_bout_fix_to_chars): Declare.
5968 * config/obj-coff.c (obj_coff_stab): Removed.
5969 (obj_pseudo_table): Removed desc and stabX entries.
5970 * config/obj-coff.h (SEPARATE_STAB_SECTIONS): Define.
5971 * config/obj-coffbfd.c (current_stab_symbol): Removed.
5972 * config/obj-coffbfd.h (obj_symbol_type): Removed n_strx, n_type,
5973 n_other, n_desc and n_value fields.
5974 (S_{S,G}ET_{OFFSET,OTHER,TYPE,DESC}): Removed.
5975 (MAKE_STAB_SYMBOL): Removed.
5976 * config/obj-ecoff.c (obj_ecoff_stab): Renamed to ecoff_stab.
5977 Changed arguments and removed parsing code.
5978 (obj_pseudo_table): Removed stabX entries.
5979 * config/obj-ecoff.h (ecoff_stab): Declare.
5980 (OBJ_PROCESS_STAB): Define.
5981 * config/obj-elf.c: Don't include aout/stab_gnu.h.
5982 (obj_elf_stab, obj_elf_xstab, obj_elf_desc,
5983 elf_stab_symbol_string, elf_stab_symbol, obj_elf_stab_generic):
5984 Removed.
5985 (obj_pseudo_table): Removed desc, stabX and xstabs entries.
5986 (obj_elf_version): Use subseg_new, not bfd_make_section. Don't
5987 set SEC_LOAD for .note section.
5988 (adjust_stab_sections): Get frag pointer from seg_info, rather
5989 than looking through frags.
5990 * config/obj-elf.h (S_{S,G}ET_{OTHER,TYPE,DESC}): Removed.
5991 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
5992 Define.
5993 * config/obj-vms.c (obj_aout_stab): Removed.
5994 (obj_pseudo_table): Removed stabX entries.
5995 * config/obj-vms.h (S_SET_TYPE): Define.
5996
5997 * as.h: Declare listing.
5998 * read.c: Don't declare listing.
5999 (emit_expr): Cast fix_new_exp argument.
6000 (parse_bitfield_cons): Correct printf format.
6001 * symbols.c (symbol_new): Add cast to avoid warning.
6002 * write.h: Declare text_last_frag and data_last_frag.
6003 * config/obj-bout.c (obj_bout_line): Added dummy argument.
6004 * config/obj-coffbfd.c: Add some casts to avoid warnings.
6005 * config/tc-a29k.c: Likewise.
6006 * config/tc-i960.c: Likewise. Also fully bracket structure
6007 initializations, fix printf formats, and remove unused variables.
6008
604633ae
ILT
6009Mon Sep 13 16:48:38 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6010
6011 * read.c (s_desc): Only compile and use if S_SET_DESC is defined.
6012 * struc-symbol.h: Declare verify_symbol_chain and
6013 verify_symbol_chain_2 even if not SYMBOLS_NEED_BACKPOINTERS.
6014 * symbols.c (verify_symbol_chain): Removed useless expression.
6015 * write.c (headers, the_object_file): Only use if not
6016 BFD_ASSEMBLER and not BFD.
6017 (fixup_segment, cvs_frag_to_fill): Only use if BFD_ASSEMBLER or
6018 not BFD.
6019 (merge_data_into_text): Only use if BFD_ASSEMBLER or (not BFD and
6020 not OBJ_AOUT).
6021 * write.h: Declare relax_segment.
6022 * config/obj-coffbfd.c (stack_pop, stack_push, stack_init): Made
6023 static.
6024 (stack_top): Commented out, since it's not used.
6025 Fixed up pseudo-op functions to take an ignored int argument.
6026 (size_section): Added default BAD_CASE to switch.
6027 Changed bzero calls to memset.
6028 * config/obj-coffbfd.h (S_IS_LOCAL): Call strchr on S_GET_NAME
6029 (s), not on s itself.
6030 * config/tc-a29k.c (s_use): Take ignored int argument. Only
6031 define if OBJ_COFF is not defined.
6032 * config/tc-i386.c: (fits_in_signed_byte, smallest_imm_type): Make
6033 argument signed again.
6034 * config/tc-m68k.c (s_bss, s_even, s_proc): Take ignored int
6035 argument.
6036 (m68k_ip): Fully bracket initialization of archs.
6037 Correct several formats for __LINE__ to be %d rather than %s.
6038 (init_table): Fully bracket initialization.
6039 Cast values larger than 0x7f assigned to fr_opcode to char.
6040
6041 * subsegs.c: Renamed non-BFD_ASSEMBLER subseg_new to subseg_set.
6042 Wrote non-BFD_ASSEMBLER subseg_new. Now subseg_new always takes a
6043 section name, and subseg_set always takes a segT. Changed all
6044 callers as appropriate.
6045 * config/obj-coffbfd.c (change_to_section): Renamed to
6046 obj_coff_add_segment. Corrected. Made callers use subseg_new.
6047 * config/obj-coffbfd.h (obj_segment_name, obj_add_segment):
6048 Define.
6049
54e3e909
DE
6050Mon Sep 13 13:15:03 1993 Doug Evans (dje@canuck.cygnus.com)
6051
6052 * config/tc-sparc.h (LOCAL_LABEL): Remove test for name[0] == 'L'.
6053
58d4951d
ILT
6054Fri Sep 10 11:22:08 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6055
6056 * config/obj-elf.h (S_SET_SIZE): Actually set the size.
6057
6058 Gcc lint.
54e3e909 6059 * Added a number of casts to function calls.
58d4951d
ILT
6060 * app.c (do_scrub_begin), as.c (main), expr.c (integer_constant,
6061 operand, expr), read.c (read_begin, HANDLE_CONDITIONAL_ASSEMBLY,
6062 read_a_source_file, s_align_bytes, demand_empty_rest_of_line,
6063 ignore_rest_of_line, big_cons, is_it_end_of_statement, s_ignore),
6064 read.h (is_name_beginner, is_part_of_name), config/obj-elf.c
6065 (obj_elf_section), config/tc-i386.c (parse_register),
6066 config/tc-sparc.c (isoctal, s_proc): Cast char
6067 array indices to unsigned char.
54e3e909
DE
6068 * app.c (process_escape): Make static. Add prototype. Change
6069 argument from char to int.
58d4951d
ILT
6070 * as.c: Include output-file.h for prototypes. Comment out unused
6071 function got_sig.
6072 * Makefile.in (as.o): Depend on output-file.h.
6073 * as.h (BAD_CASE): Cast val argument to long, and use %ld.
54e3e909
DE
6074 (pseudo_typeS): Add prototype to poc_handler field.
6075 (print_version_id): Add prototype.
6076 (xmalloc, xrealloc): Change size arguments to unsigned long.
6077 (do_scrub_next_char): Add prototypes for function arguments.
6078 (had_errors, had_warnings, scrub_from_file): Remove duplicate
6079 declarations.
6080 * atof-generic.c (atof_generic): Make size variables unsigned.
58d4951d 6081 * cond.c (ignore_input): Removed unused local variable ptr.
54e3e909
DE
6082 * expr.c (floating_constant, integer_constant): Make static. Add
6083 prototypes.
6084 * flonum-copy.c (flonum_copy): Make size variables unsigned.
58d4951d 6085 * frags.h: Add prototype for frag_init.
54e3e909
DE
6086 * hash.h, hash.c: Change hash values from char * to PTR, make hash
6087 strings const, make returned error strings const char *. Added
6088 prototypes for functions.
6089 * input-file.h, input-file.c (input_file_buffer_size): Return
6090 unsigned int.
6091 * input-scrub.c (buffer_length): Make unsigned.
6092 (input_scrub_push, input_scrub_pop): Make static.
58d4951d
ILT
6093 * listing.c (list_symbol_table): Cast sprintf argument to unsigned
6094 long and use %lx. Print name of segment rather than address of
6095 structure.
54e3e909
DE
6096 (listing_list, listing_title): Change argument to int.
6097 (listing_eject, listing_flags, listing_psize): Add int argument.
6098 * listing.h: Corresponding declaration changes.
6099 * obj.h (obj_emit_symbols): Rename prototype argument to avoid
6100 shadowing.
58d4951d 6101 * read.h: Change get_absolute_expression prototype to return
54e3e909
DE
6102 offsetT. Add prototype for next_char_of_string. Various
6103 prototype changes.
58d4951d 6104 * read.c: Remove prototype for next_char_of_string.
54e3e909
DE
6105 (pobegin): Make errtxt const. Make new_length, tmp_len and num
6106 unsigned.
6107 (s_abort, s_align_ptwo, s_comm, s_data, s_app_line, s_fill,
6108 s_globl, s_lsym, s_org, s_set, s_text, s_desc): Add int argument.
6109 Change all callers.
58d4951d
ILT
6110 (s_comm): Change temp from valueT to offsetT. Cast to long when
6111 printing and use %ld (only for error messages anyhow).
54e3e909
DE
6112 (s_long, s_int): Remove unused functions.
6113 (cons): Change argument to int.
58d4951d
ILT
6114 (emit_expr): Use %lx when printing longs.
6115 (get_absolute_expression): Return offsetT, not long.
6116 (get_stab_string_offset): Comment out unless
6117 SEPARATE_STAB_SECTIONS.
6118 (s_stab_generic): Remove unused offset. Define seg_is_new only
6119 if SEPARATE_STAB_SECTIONS. Use toP only in local block.
54e3e909 6120 * struc-symbol.h (verify_symbol_chain_2): Add prototype.
58d4951d 6121 * symbols.c: Remove nested comment.
54e3e909 6122 (symbol_new): Rename value to valu.
58d4951d 6123 (colon): Use %ld and cast to long in error message.
54e3e909
DE
6124 * symbols.h: Remove duplicate verify_symbol_chain declaration.
6125 * tc.h: Remove unused md_emit_relocations declaration.
6126 (tc_gen_reloc): Add declaration.
58d4951d
ILT
6127 * write.c (cvt_frag_to_fill): Change first argument name depending
6128 on BFD_ASSEMBLER.
54e3e909
DE
6129 (write_relocs): Remove unused offset, frags. Remove tc_gen_reloc
6130 declarations. Make n unsigned.
6131 (write_contents): Remove unused i, n, relocs, fixp. Rename frags
6132 to f to avoid shadowing.
58d4951d
ILT
6133 (write_object_file): Define fragP only if not BFD_ASSEMBLER or not
6134 WORKING_DOT_WORD. Remove unused keep. Only declare punt and
54e3e909 6135 punt_it if they will be used. Make i and n unsigned.
58d4951d 6136 (fixup_segment): Cast to long and use %ld in error message.
54e3e909 6137 * xmalloc.c (xmalloc, xrealloc): Make size argument unsigned.
58d4951d
ILT
6138 * config/obj-aout.h: Remove nested comment. Add prototype for
6139 obj_aout_frob_symbol.
54e3e909
DE
6140 (obj_aout_line, obj_aout_desc): Add int argument.
6141 * config/obj-ecoff.c: Changed build routines to use an unsigned
6142 offset.
6143 (add_string): Make len unsigned long.
58d4951d
ILT
6144 (obj_ecoff_stab): Use %lu in error message.
6145 * config/obj-elf.c (obj_elf_common): Comment out unused label
6146 allocate_bss.
6147 (obj_elf_frob_symbol): Return 0 (currently broken).
54e3e909
DE
6148 (obj_elf_desc, obj_elf_version, obj_elf_size, obj_elf_type,
6149 obj_elf_ident, obj_elf_weak, obj_elf_local, obj_elf_common,
6150 obj_elf_line, obj_elf_previous): Add int argument.
6151 (obj_elf_write_symbol_p): Make static.
6152 * config/obj-elf.h (obj_elf_write_symbol): Add prototype.
58d4951d
ILT
6153 * config/tc-hppa.h: Remove declarations of functions declared in
6154 read.h.
54e3e909
DE
6155 * config/tc-i386.c (ENCODE_RELAX_STATE): Cast to relax_substateT.
6156 (s_bss): Add int argument.
6157 (fits_in_signed_byte, smallest_imm_type): Make argument unsigned.
6158 (dummy): Remove unused function.
6159 (md_assemble): Rename local o to op to avoid shadowing.
6160 (tc_gen_reloc): Rename local reloc to rel to avoid shadowing.
6161 * config/tc-m68k.c (s_data1, s_data2): Add int argument.
58d4951d
ILT
6162 * config/tc-mips.c (mips_ip, md_apply_fix): Cast to long and use
6163 %ld in error messages.
54e3e909
DE
6164 * config/tc-sparc.c: Remove duplicate declarations.
6165 (getExpression): Rewrite condition to avoid empty conditional
6166 body.
6167 (s_reg, s_proc, s_reserve, s_common, s_seg, s_xword): Add int
6168 argument.
58d4951d 6169
892a3ff1
KR
6170Thu Sep 9 17:10:00 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6171
6172 Changes from Jeff Law:
6173
6174 * config/tc-hppa.c (md_assemble): Fix typo.
132239bf 6175 (pa_ip): Delete unused variables and labels. Do not check for
892a3ff1
KR
6176 unsigned values being < 0, it can't happen.
6177 (is_same_frag): Return a value in recursive call case.
6178 (pa_callinfo): Delete unused variables and labels.
6179 (pa_comm): Likewise.
6180 (pa_copyright): Likewise.
6181 (pa_export): Likewise.
6182 (pa_import): Likewise.
6183 (pa_param): Likewise.
6184 (pa_space): Likewise.
6185 (pa_subspace): Likewise.
6186
abdd08c9
ILT
6187Thu Sep 9 15:05:34 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6188
6189 * read.c (get_stab_string_offset, s_stab_generic): If
6190 BFD_ASSEMBLER, call subseg_set rather than subseg_new.
6191
414b2c8f
ILT
6192Wed Sep 8 15:09:17 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6193
6194 * config/obj-elf.c (obj_elf_section): Set SEC_LOAD when using
6195 default flag values.
6196
4064305e
SS
6197Tue Sep 7 10:22:52 1993 Stan Shebs (shebs@rtl.cygnus.com)
6198
1531386b
SS
6199 * read.c: (change_to_section): Don't include body if not MANY_SECTIONS.
6200
4064305e
SS
6201 * read.c: (s_stab, s_xstab, s_desc): New functions to parse
6202 various stab-related directives.
6203 * read.h: (s_stab, s_xstab, s_desc): New function prototypes.
6204 * write.c: (merge_data_into_text): Fix ifdef tangle.
6205 * config/obj-coffbfd.c (current_stab_symbol): Fake symbol
6206 for stab reader to use.
6207 * config/obj-coffbfdh.h (obj_symbol_type): Added fields for
132239bf 6208 stab reader, macros to access.
4064305e 6209
81b407c9
KR
6210Fri Sep 3 16:44:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6211
fd4b7c25
KR
6212 * config/obj-elf.h (elf_symbol): No longer special-cased on
6213 sparcv9, since elf_symbol_type is now independent of size.
6214
81b407c9
KR
6215 * config/obj-elf.h (elf_symbol): Fixed name of elf_symbol_type.
6216
6217 * config/tc-hppa.h (struct default_subspace_dict, struct
6218 default_space_dict): Field "sort" is now unsigned char.
6219
6220 * config/tc-hppa.c (pa_def_subspaces, pa_def_spaces): Align
6221 columns for easier reading.
6222 (bcmp, index): Deleted USG-specific definitions. Should be dealt
6223 with in ho-*.h, or in libiberty. Changed mention of index to
6224 strchr.
6225 (label_symbolP, label_symbol_defined, callinfo_found,
6226 within_entry_exit, exit_processing_complete, within_procedure,
6227 pa_def_subspaces, pa_def_spaces, pa_pseudo_op_moves_pc,
6228 label_symbols_rootP, pa_get_label, pa_label_is_defined,
6229 pa_undefine_label): Now static.
6230 (movers): Now const, in addition to pointing to const data.
6231 * config/tc-hppa.h (label_symbolS_rootP, pa_get_label,
6232 pa_label_is_defined, pa_undefine_label, pa_pseudo_op_moves_pc):
6233 Delete declarations.
6234
6235 Merged more changes from Jeff Law and Pete Hoogenboom:
6236
6237 * config/tc-hppa.c (pa_def_subspaces, pa_def_subspaces): Remove
6238 entries for .stab and .stabstr.
6239
6240 * config/obj-elf.c: (elf_stab_symbol_string): Set the
6241 SEC_LOAD attribute for the .stabstr section.
6242 (obj_elf_stab_generic): Set the SEC_LOAD attribute for the
6243 .stab section.
6244 (obj_elf_stab_generic): Change '#if 1' to '#if 0'.
6245 (obj_elf_stab_generic): Incorrect byte count on call to
6246 md_number_to_chars function.
6247
6248 * config/tc-hppa.c (hppa_tc_symbol): Static functions need
6249 argument relocation bits too.
6250
6251 * config/tc-hppa.c (pa_stringer): Correctly handle escaping
6252 characters which should appear unaltered in the output string (for
6253 example an escaped double-quote).
6254
6255 * config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Always
6256 initialize name.
6257 (pa_parse_neg_cmpsub_cmpltr): Likewise.
6258 (pa_parse_nonneg_add_cmpltr): Likewise.
6259 (pa_parse_neg_add_cmpltr): Likewise.
6260
6261 * config/tc-hppa.h (parse_cons_expression_hppa): Remove prototype
6262 for now.
6263 (cons_fix_new_hppa): Likewise.
6264 * config/tc-hppa.c (md_apply_fix): Fix type of valp to match
6265 prototype.
6266
6267 * config/tc-hppa.c: Include libhppa.h.
6268
132239bf 6269 * config/tc-hppa.h: Delete extern declarations of functions
81b407c9
KR
6270 found in libhppa.h.
6271
6272 * config/tc-hppa.c (pa_space): Rework to avoid unwanted #ifdef
6273 OBJ_ELF conditionals.
6274 * config/tc-hppa.h (LOCAL_LABEL): Correctly identify local labels
6275 on the PA.
6276
1849d646
ILT
6277Thu Sep 2 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6278
ff3a5c18
ILT
6279 * config/tc-mips.c (macro_build): Accept 'z', and ignore it.
6280 (macro): Use "z,s,t" for div instructions to match corresponding
6281 change in opcode table.
6282 (mips_ip): Added 'z'--must be zero register.
1849d646 6283
e96d50d0
KR
6284Wed Sep 1 15:56:42 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6285
6286 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Declare
6287 tc_gen_reloc correctly.
6288
6289 * configure.in: Use "case" instead of "if" when possible. Rewrote
6290 Makefile editing to reduce work done. Treat "hppa*" as "hppa".
6291
56607c4e
RP
6292Wed Sep 1 12:19:07 1993 K. Richard Pixley (rich@sendai.cygnus.com)
6293
6294 * config/obj-coffbfd.c (obj_coff_section): add 'd' as an alias for
6295 section type of data. 'd' seems to be used for m88k.
6296
6297Wed Aug 25 22:33:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6298
6299 * config/tc-mips.c (mips_align, s_stringer, s_cons, s_float_cons,
6300 s_mips_space): Set insn_label to NULL to avoid changing it at the
6301 next .align statement.
6302 (append_insn): Don't swap jal with instruction that sets the
6303 register that jal sets.
6304
37d719bb
RP
6305Wed Aug 25 16:15:57 1993 K. Richard Pixley (rich@sendai.cygnus.com)
6306
6307 * configure.in: recognize m88110.
6308
28344993
KR
6309Wed Aug 25 13:37:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6310
6311 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
6312 * config/tc-hppa.c (pa_build_unwind_subspace): SEC_ALLOC should
6313 not be on for .hppa_unwind.
6314 (md_pseudo_table): .PARAM and .param are valid pseudo-ops for GAS.
6315 (pa_param): New function to handle .PARAM directives.
6316 (pa_ip): Pass "isbranch" argument down to pa_parse_*_compltr
6317 functions. Handle '|' for movb; allow movb,n.
6318 (pa_parse_nonneg_cmpsub_cmpltr): Delete old useless
6319 version. Handle cases where no completer exists for
6320 comb,n or addb,n.
132239bf 6321 (pa_parse_neg_cmpsub_cmpltr): Handle cases where no
28344993
KR
6322 completer exists for comb,n or addb,n. Make logic
6323 mirror that of pa_parse_nonneg_cmpsub_cmpltr.
6324 (pa_parse_nonneg_add_cmpltr): Likewise.
6325 (pa_parse_neg_add_cmpltr): Likewise.
6326 * tc-hppa.h (pa_param): Declare.
6327
6328Tue Aug 24 15:41:35 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6329
6330 * config/tc-hppa.c (hppa_tc_make_symextn_section): Now static.
6331 Added forward declaration.
6332
6333 Merged changes from Pete Hoogenboom and Jeff Law at Utah:
6334
6335 * config/obj-elf.c (elf_frob_file): Arguments were incorrect on
6336 call to elf_tc_make_sections.
6337 (obj_elf_version): A .note section shouldn't have the SEC_ALLOC
6338 attribute.
6339
6340 * config/tc-hppa.c (hppa_tc_make_sections): Add some processing to
6341 handle symbol extension sections.
6342
6343 * config/tc-hppa.c (pa_build_symextn_section): New function to
6344 create a symbol extension section.
6345 (pa_export_args): Make call to pa_build_symextn_section.
6346 (hppa_tc_symbol, hppa_tc_make_sections,
6347 hppa_tc_make_symextn_section): New functions.
6348 * config/tc-hppa.h: Update elf_tc_symbol and elf_tc_make_sections
6349 macros.
6350
6351 * read.c (emit_expr): Place check for TC_CONS_FIX_NEW in the
6352 BFD_ASSEMBLER branch as well.
6353
6354 * config/tc-hppa.h: If ELF is the target object format, define
6355 some ELF- and hppa-specific types and constants.
6356
6357 * config/tc-hppa.c (getExpression): Fix a typo.
6358
6359 * read.c (read_a_source_file): Use TC_EQUAL_IN_INSN to determine
6360 if a `=' is part of an instruction.
6361 (read_a_source_file): Handle case where end-of-line markers are
6362 also used within instructions.
6363 * config/tc-hppa.h (TC_EQUAL_IN_INSN, TC_EOL_IN_INSN): Define.
6364
6365 * config/tc-hppa.c (md_apply_fix_1): Keep relocations for
6366 out-of-range branches/'calls using "bl" or calls which may need
6367 argument relocation stubs. Do not need/keep relocations for
6368 conditional branches.
6369 (elf_hppa_final_processing): Fix calculation of function size.
6370
6371 * config/obj-elf.c (obj_elf_version): Mark .note section as
6372 READONLY.
6373
6374 * config/tc-hppa.c (parse_cons_expression_hppa): Pass exp, not the
6375 address of exp, to expression.
6376 (pa_build_unwind_subspace): Turn SEC_HAS_CONTENTS flag on.
6377 (md_apply_fix_1): Delete unwanted comments.
6378 (process_exit): Symbols marking the end of a function are always
6379 BSF_LOCAL.
6380
6381 * config/tc-hppa.c: Include elf32-hppa.h from BFD tree.
6382 (pa_space): Declare and initialize gdb_section.
6383
6384 * config/obj-elf.c (elf_frob_file): Change
6385 elf_tc_final_processing_hook to elf_tc_final_processing.
6386
6387 * config/tc-hppa.c (fix_new_hppa): Fix argument list to match
6388 argument type declarations.
6389 (getExpression): Fix typo.
6390 (pa_export_args): Change elf_symbol_type to elf32_symbol_type.
6391 (elf_hppa_final_processing): Likewise. Name changed from
6392 elf_hppa_final_processing_hook.
6393 (start_symbol_root, start_symbol_last): Deleted.
6394
6395 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION): Fix typo.
6396
6397 * config/tc-hppa.h: Replace "symbolS" with "struct symbol" to
6398 avoid changing include ordering.
6399
6400 * config/tc-hppa.c (pa_ip, case 'y'): Handle just like 't'.
6401
6e8dda9c
ILT
6402Mon Aug 23 12:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6403
6404 * config/tc-mips.c (set_at): Added unsignedp argument. Use
6405 load_register.
6406 (set_at_unsigned): Removed; changed callers to use set_at.
6407 (load_register): Removed unused ip argument. Changed callers.
6408 (append_insn): Don't swap branch and branch likely.
6409 (macro_build): Handle 'u'.
6410 (load_register): Handle 64 bit constants.
6411 (macro): Added M_DABS, removed M_ABSU. Numerous changes to
6412 support 64 bit constants.
6413 (mips_ip): Use hex constants in range checks for clarity.
6414 (md_number_to_chars): Support 8 byte values.
6415
1e35cd8f
RP
6416Fri Aug 20 16:50:59 1993 K. Richard Pixley (rich@sendai.cygnus.com)
6417
6418 * config/tc-m88k.h: updated copyrights.
6419 (TC_CONS_RELOC): declare to be RELOC_32.
6420
8358c818
ILT
6421Fri Aug 20 11:16:44 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6422
6423 * config/tc-mips.c (mips_isa): New static variable.
6424 (md_begin): Initialize mips_isa based on TARGET_CPU. Don't sanity
6425 check macros. Set text alignment and GP size here.
6426 (md_assemble): Don't set text alignment and GP size here.
6427 (append_insn): Don't insert NOPs for load delays if mips_isa >= 2.
6428 Use the right mask and shift for WRITE_FPR_T and WRITE_FPR_S. Add
6429 a NOP after a branch likely.
6430 (mips_emit_delays): Don't insert NOPS for load delays if mips_isa
6431 >= 2.
6432 (macro): Support r6000 and r4000 macros.
6433 (mips_ip): Check insn ISA level against mips_isa before using it.
6434 Added 'x' case for ignored register.
6435 (md_parse_option): Handle -mipsN and -mcpu=XX.
6436
c8d4cda1
KR
6437Fri Aug 20 01:26:52 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6438
6439 * config/tc-i386.c (md_pseudo_table) [OBJ_ELF]: Handle ".zero".
6440
6441Thu Aug 19 12:15:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6442
6443 * config/tc-sparc.c (s_local): Function moved and renamed...
6444 * config/obj-elf.c (obj_elf_local): ...to here.
6445 * config/tc-sparc.c (md_pseudo_table), config/obj-elf.c
6446 (obj_pseudo_table): Move handling of ".local".
6447
6448 * tc.h (md_parse_option): Don't declare if defined as a macro.
6449
6450 * config/tc-i386.h (NO_RELOC) [BFD_ASSEMBLER]: Define as
6451 BFD_RELOC_NONE.
6452 (md_parse_option): New macro, converted from function.
6453 * config/tc-i386.c (md_parse_option): Function deleted.
6454 (comment_chars) [OBJ_ELF]: Include "/".
6455 (line_comment_chars) [OBJ_ELF || TE_I386AIX]: Don't include "/".
6456 (md_assemble): Cast 0xe9 to char explicitly, to avoid compiler
6457 warning.
6458 (md_assemble, md_estimate_size_before_relax, md_create_long_jump):
6459 Call reloc for fix_new type, or use correct enumerator, instead of
6460 always using NO_RELOC.
6461 (i386_operand): Change "ifndef I386COFF" to "ifdef OBJ_AOUT" for
6462 tests for valid section.
6463 (md_convert_frag) [BFD_ASSEMBLER]: Compensate for frag start
6464 address.
6465 (md_apply_fix_1) [BFD_ASSEMBLER]: For pc-relative reloc with
6466 symbol, compensate for location of reloc.
6467 (reloc, BFD_RELOC_32, BFD_RELOC_32_PCREL) [!BFD_ASSEMBLER]: Define
6468 to return zero.
6469
4915cac0
KR
6470Wed Aug 18 16:51:29 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6471
6472 * config/obj-elf.c: Undef NO_RELOC before including aout/aout64.h.
6473 (obj_elf_weak): New function.
6474 (obj_pseudo_table): Handle ".weak".
6475 (obj_elf_section): If section directive includes a string, ignore
6476 it for now. Accept "progbits" flag.
6477 (obj_elf_type): Accept `@' before flag name.
6478
6479 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Get rid of `if(1)'
6480 condition.
6481 (fixup_segment) [BFD_ASSEMBLER]: Use bfd_is_com_section, rather
6482 than checking for bfd_com_section directly.
6483 (fixup_segment): Simplify range check.
6484 (fixup_segment) [OBJ_COFF && TC_I960]: Simplify cpp condition
6485 test.
6486
6487 * symbols.h (S_SET_WEAK): Declare.
6488 * symbols.c (S_SET_WEAK): New function.
6489 (S_SET_EXTERNAL, S_CLEAR_EXTERNAL): Don't bother with BSF_EXPORT,
6490 it's not a separate flag any more. Clear BSF_WEAK.
6491
6492 * read.c (potable): Treat "string" like "asciz".
6493
19ed8960
ILT
6494Wed Aug 18 15:30:29 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6495
6496 * config/tc-mips.c (append_insn): Don't swap branch instructions
6497 if .set nobopt or .set volatile.
6498 (gp_reference): .lit8 and .lit4 are accessed via the GP register.
6499 (macro): Added cases M_LI_S, M_LI_SS. Fixed M_LI_D and M_LI_DD.
6500 (mips_ip): Added cases 'F', 'L', 'f', 'l' for floating point.
6501 * config/obj-ecoff.c: Renamed some variables to avoid shadow
6502 warnings.
6503
ae8c28f8
DZ
6504Mon Aug 16 14:16:02 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
6505
19ed8960
ILT
6506 * config/obj-coff.h (S_IS_COMMON): add missing backslash
6507
ae8c28f8
DZ
6508 * configure.in (z8k-*-{coff,sim}): use coffbfd for this target
6509
0aa07269
ILT
6510Thu Aug 12 11:47:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6511
6512 * config/tc-mips.c (mips_ip): Suggested by
6513 davidj@ICSI.Berkeley.EDU (David Johnson): Don't accept symbolic
6514 names for 'E' and 'G' argument types (coprocessor registers) and
6515 don't warn if $1 is used on the coprocessor.
ae8c28f8 6516 (macro): Handle M_{L,S}WC{0,2,3}_AB correctly.
0aa07269
ILT
6517
6518Mon Aug 9 12:09:14 1993 Doug Evans (dje@canuck.cygnus.com)
6519
6520 * read.c (emit_expr): Use BFD_RELOC_16 for 2-byte values.
6521 * config/tc-sparc.c (md_apply_fix, tc_gen_reloc): Handle
6522 BFD_RELOC_16.
6523 * config/tc-sparc.h (WORKING_DOT_WORD): Define.
6524
6a9cf6fa
KR
6525Mon Aug 9 13:36:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6526
6527 * write.c (merge_data_into_text): Define only if BFD_ASSEMBLER is
6528 defined or BFD is not.
6529 (relax_and_size_all_segments): Declare local variable fragP.
6530
b114e492
KR
6531Fri Aug 6 15:22:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6532
6533 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_32): Fill in
6534 bytes with real values, not zeros.
6535
ac32a7e7
ILT
6536Fri Aug 6 10:57:59 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6537
3d2330f8
ILT
6538 * configure.in (mips-*-riscos*, mips-*-sysv*): New (untested)
6539 targets, using ecoff and mips-big.
6540
ac32a7e7
ILT
6541 * config/tc-mips.c (mips_ip): From davidj@ICSI.Berkeley.EDU (David
6542 Johnson): Added case for 'C' for coprocessor instruction codes.
6543
273aa947
KR
6544Thu Aug 5 13:08:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6545
fd4b7c25
KR
6546 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): Fill in
6547 bytes with real values, not zeros.
6548 (md_pseudo_table): Call cons for .uaxword.
6549
b114e492
KR
6550 * config/obj-elf.c (obj_pseudo_table): Handle ".8byte".
6551
273aa947
KR
6552 * read.c (emit_expr): Use BFD_RELOC_64 for 8-byte expressions.
6553
b114e492
KR
6554 * write.c (write_object_file): Test DEBUG_SYMS instead of DEBUG
6555 for verifying symbol chain.
6556 (merge_data_into_text, relax_and_size_all_segments): New
6557 functions, split out from write_object_file.
6558
273aa947
KR
6559Tue Aug 3 15:43:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6560
6561 * config/obj-elf.c (obj_elf_stab_generic, in disabled code): If
6562 debug section is new, allocate an extra 12 bytes at its start. If
6563 ".stabs" type is N_SO, fill in filename symbol field of that first
6564 entry. Return early if "goof", to simplify later code slightly.
6565 (adjust_stab_sections): New function.
6566 (elf_frob_file): Apply adjust_stab_sections to each section.
6567
6568 * config/obj-elf.c (obj_elf_section, obj_elf_previous): No longer
6569 static.
6570 * config/obj-elf.h (obj_elf_section, obj_elf_previous): Declare.
6571 * config/tc-sparc.c (md_pseudo_table): Call them for "pushsection"
6572 and "popsection", and call cons for "uaword" and "uahalf".
6573
6574 * config/obj-elf.c (obj_elf_version): Use English in error
6575 messages.
6576
4573d186
ILT
6577Tue Aug 3 11:29:06 1993 Ian Lance Taylor (ian@cygnus.com)
6578
6579 * config/obj-ecoff.c: Updated for BFD ECOFF changes. Now gets the
6580 swapping routines and external structure sizes via the
6581 ecoff_backend information. No longer includes coff/mips.h.
6582
b4703fa6
ILT
6583Mon Aug 2 17:35:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6584
4c7ff23d
ILT
6585 * config/obj-ecoff.c (get_tag): Save tag name in permanent memory
6586 and in hash_ptr->string.
6587
b4703fa6
ILT
6588 * app.c (do_scrub_next_char): Reset state to 0 after .appline if
6589 file name is not seen.
6590
fd4b7c25
KR
6591Mon Aug 2 11:51:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6592
6593 * config/tc-sparc.c (md_apply_fix, case BFD_RELOC_64): New case,
6594 parallel to BFD_RELOC_32.
6595 (tc_gen_reloc): Accept BFD_RELOC_64.
6596
ced16de6
ILT
6597Thu Jul 29 22:21:28 1993 Ian Lance Taylor (ian@cygnus.com)
6598
6599 * write.c: Don't use short int in a prototype.
ab4d34cd
ILT
6600
6601 * expr.c (operand): Make return value simply depend on contents of
6602 returned expression.
6603
b4703fa6
ILT
6604Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
6605
6606 * configure.in: sparc*-aout and sparc*-vxworks are BFD assemblers
6607
0ccc65ec
DZ
6608Thu Jul 29 18:38:37 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
6609
6610 * config/ho-sunos.h: remove some old function decls that conflict
6611 w/ ANSI, and which weren't needed anyway
6612
6613Wed Jul 28 16:34:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6614
6615 * config/obj-elf.h (obj_frob_symbol): Renamed from tc_frob_symbol,
6616 and disabled since it breaks Ian's new symbol-value code.
6617
6618 * expr.c (integer_constant): Accept more digits if BFD64.
6619
7fe17970
ILT
6620Wed Jul 28 11:30:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6621
6622 * config/tc-m68k.c (m68k_ip): If we have a normal constant when we
6623 expect a bignum, turn it into a bignum. Output extra zeroes
6624 before a short bignum, rather than after.
6625
0c2734c3
KR
6626Tue Jul 27 15:54:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6627
6628 * symbols.c (symbol_new): Conditionalize verify_symbol_chain call
6629 on DEBUG_SYMS, not DEBUG.
6630 (symbol_remove): Likewise.
6631 (symbol_insert): Likewise.
6632
4fe45d22
ILT
6633Tue Jul 27 08:45:05 1993 Ian Lance Taylor (ian@cygnus.com)
6634
6635 * config/tc-mips.c (mips_optimize): New static variable.
e9f108bc
ILT
6636 (append_insn): If mips_optimize == 0, always insert NOP
6637 instructions. If mips_optimize < 2, don't swap branches.
6638 (md_parse_option): If -Ox or -gx, set mips_optimize accordingly.
4fe45d22 6639
de9310b9
RP
6640Mon Jul 26 18:02:43 1993 K. Richard Pixley (rich@sendai.cygnus.com)
6641
6642 * Makefile.in (clean): if testsuite does not exist, then skip it.
6643
6644Fri Jul 23 14:13:25 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6645
6646 * config/tc-mips.c (prev_insn_unreordered,
6647 prev_prev_insn_unreordered): New static variables.
6648 (append_insn): Don't swap branch instruction if
6649 prev_prev_insn_unreordered (see comment).
6650 (mips_no_prev_insn): Clear the unreordered variables.
6651 (s_mipsset): When turning on reordering, set the unreordered
6652 variables.
6653
7767e7e9
KR
6654Fri Jul 23 13:09:44 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6655
6656 * config/obj-elf.c (obj_elf_section): Sections ".init" and ".fini"
6657 are also magic, and have special default flag settings.
6658 (obj_elf_frob_symbol): Since the return value from this function
6659 isn't used, don't bother calling obj_elf_write_symbol_p, since it
6660 doesn't accomplish anything else.
6661
6662 * config/tc-sparc.c (md_section_align): Round up section size only
6663 for a.out format.
6664
6665 * symbols.c: Don't define DEBUG by default.
6666
88b457e5
ILT
6667Thu Jul 22 12:09:41 1993 Ian Lance Taylor (ian@cygnus.com)
6668
2a2d3d08
ILT
6669 * write.c (fix_new_exp): Handle a O_uminus expression.
6670
e979ea04
ILT
6671 * expr.c (expr): Don't let absolute_section override
6672 undefined_section for the return value.
6673
cf897ce2
ILT
6674 * read.c (read_a_source_file): In NO_PSEUDO_DOT case, if we find a
6675 pseudo-op with a poc_handler field of NULL, ignore it and treat it
6676 as an instruction instead.
6677 * config/tc-m88k.c (md_pseudo_table): Add "set" with a NULL
6678 poc_handler field.
6679
88b457e5
ILT
6680 * config/tc-h8500.c (md_begin): Use a local variable when
6681 initializing md_relax_table to avoid warnings about modifying a
6682 supposedly const data structure.
6683
88e12460
BK
6684Thu Jul 22 10:58:51 1993 Brendan Kehoe (brendan@lisa.cygnus.com)
6685
6686 * config/obj-aout.c: Only include aout/aout64.h if BFD_ASSEMBLER
6687 is defined.
6688
86a6ada2
FF
6689Wed Jul 21 17:32:02 1993 Fred Fish (fnf@deneb.cygnus.com)
6690
6691 * configure.in (case ${host}): Map *-*-sysv4* to gas_host=sysv.
6692 * configure.in (case ${generic_target}): Add i[34]86-*-sysv4*
6693 case to set obj_format=elf. Must go before i386-*-sysv* case that
6694 sets obj_format=coffbsd. Add *-*-sysv4* to *-*-elf and
6695 *-*-solaris case, and move to before *-sysv* case that wants to
6696 set obj_format to coff.
6697 * config/tc-i386.c (i386_operand): Change all 'exp.X_op' to
6698 'exp->X_op'.
6699 * config/tc-i386.c (md_apply_fix): Fix valp to be 'valueT *' for
6700 BFD_ASSEMBLER case.
6701
8ff6f40e
ILT
6702Wed Jul 21 12:47:51 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6703
2c5c299f
ILT
6704 * config/obj-aout.c: Include aout/aout64.h.
6705 (obj_aout_frob_symbol): Set BSF_DEBUGGING for a constructor
6706 symbol, so that BFD doesn't tamper with the type.
6707
8ff6f40e
ILT
6708 * read.c (read_a_source_file): If NO_PSEUDO_DOT is defined, look
6709 up opcodes as pseudo-ops even if they don't start with '.'.
6710 * config/tc-m88k.h (NO_PSEUDO_DOT): Define.
6711 * config/tc-m88k.c (md_assemble): Removed special pseudo-op
6712 handling.
6713 (md_apply_fix): Set fx_offset to the upper 16 bits of the reloc.
6714 Output the low 16 bits for RELOC_HI16, not the high 16 bits.
6715 * config/obj-coffbfd.c (do_relocs_for): If TC_M88K, set the
6716 r_offset field of the reloc to the fixup offset.
6717 (fixup_segments): If TC_M88K, don't warn about fixup overflows.
6718 * doc/as.texinfo: Minor updates.
6719
5ac34ac3
ILT
6720Tue Jul 20 19:28:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6721
6722 * Extensive changes to permit symbols to contain any expression
6723 type and to delay the computation of the expression until the
6724 value is actually needed. This permits setting symbols to values
6725 calculated based on object code size. Expressions were changed to
6726 no longer be in a section, to stop the overloading of segment and
6727 expression type that previously occurred.
6728
6729 * as.c (big_section, pass1_section, diff_section, absent_section):
6730 Removed.
6731 (expr_section): Added (used for dummy symbols which hold
6732 intermediate expression values).
6733 (perform_an_assembly_pass): Create expr_section, do not create the
6734 sections now removed.
6735 * as.h (segT): Removed SEG_ABSENT, SEG_PASS1, SEG_BIG, and
6736 SEG_DIFFERENCE. Added SEG_EXPR.
6737 (SEG_NORMAL): Corresponding changes.
6738 * subsegs.c (seg_name, subsegs_begin): Changed accordingly.
6739 * write.c (write_object_file): Ditto.
6740 * config/obj-aout.c (seg_N_TYPE): Ditto.
6741 * config/obj-bout.c (seg_N_TYPE): Ditto.
6742 * config/obj-coff.c (seg_N_TYPE): Ditto.
6743 * config/obj-coffbfd.c (seg_N_TYPE): Ditto.
6744 * config/obj-vms.c (seg_N_TYPE): Ditto.
6745
6746 * expr.h (operatorT): Moved in from expr.c, added some values.
6747 (expressionS): Added X_op field, removed X_seg field; renamed
6748 X_subtract_symbol to X_op_symbol.
6749 * expr.c: Extensive changes to assign expression types rather than
6750 sections and to simplify the parsing.
6751 * write.c (fix_new_internal): New static function.
6752 (fix_new): Removed sub_symbol argument.
6753 (fix_new_exp): New function, takes expression argument.
6754 * write.h: Prototype changes for fix_new and fix_new_exp.
6755 * cond.c (s_if): Changed accordingly.
6756 * read.c (s_lsym, pseudo_set, emit_expr, parse_bitfield_cons,
6757 parse_repeat_cons, get_segmented_expression,
6758 get_known_segmented_expression, get_absolute_expression): Ditto.
6759 * symbols.c (resolve_symbol_value, S_GET_VALUE, S_SET_VALUE):
6760 Ditto.
6761 * write.c (write_object_file): Ditto.
6762 * config/obj-coff.c (obj_coff_def, obj_coff_val): Ditto.
6763 * config/obj-coffbfd.c (obj_coff_def, obj_coff_val,
6764 obj_coff_endef, yank_symbols): Ditto.
6765 * config/obj-elf.c (obj_elf_stab_generic, obj_elf_size): Ditto.
6766 * config/tc-a29k.c (md_assemble, parse_operand, machine_ip,
6767 print_insn, md_operand): Ditto.
6768 * config/tc-h8300.c (parse_exp, colonmod24, check_operand,
6769 do_a_fix_imm, build_bytes): Ditto.
6770 * config/tc-h8500.c (parse_exp, skip_colonthing, parse_reglist,
6771 get_specific, check, insert, md_convert_frag): Ditto.
6772 * config/tc-hppa.c (the_insn, fix_new_hppa, cons_fix_new_hppa,
6773 md_assemble, pa_ip, getExpression, getAbsoluteExpression,
6774 evaluateAbsolute, pa_build_unwind_subspace, pa_entry,
6775 process_exit): Ditto.
6776 * config/tc-hppa.h (STAB_FIXUP, is_DP_relative, is_PC_relative,
6777 is_complex): Ditto.
6778 * config/tc-i386.c (pe, md_assemble, i386_operand,
6779 md_estimate_size_before_relax, md_create_long_jump): Ditto.
6780 * config/tc-i860.c (md_assemble, getExpression, print_insn):
6781 Ditto.
6782 * config/tc-i960.c (parse_expr, subs, segs, md_convert_frag,
6783 get_cdisp, mem_fmt, parse_ldconst, relax_cobr, s_sysproc,
6784 i960_handle_align): Ditto.
6785 * config/tc-m68k.c (struct m68k_exp, struct m68k_it, seg, op,
6786 subs, add_fix, isvar, m68k_ip, md_assemble, md_convert_frag_1,
6787 md_estimate_size_before_relax, md_create_long_jump, get_num):
6788 Ditto.
6789 * config/tc-m88k.c (md_assemble, get_imm16, get_pcr,
6790 md_create_short_jump, md_create_long_jump): Ditto.
6791 * config/tc-mips.c (md_assemble, append_insn, gp_reference,
6792 macro_build, macro, my_getExpression): Ditto. Also removed
6793 get_optional_absolute_expression; just use get_absolute_expression
6794 instead.
6795 * config/tc-ns32k.c (get_addr_mode, evaluate_expr, convert_iif,
6796 fix_new_ns32k, fix_new_ns32k_exp, cons_fix_new_ns32k): Ditto.
6797 * config/tc-ns32k.h (fix_new_ns32k prototype): Ditto.
6798 * config/tc-sh.c (parse_exp, check, insert, md_convert_frag):
6799 Ditto.
6800 * config/tc-sparc.c (md_assemble, sparc_ip, getExpression,
6801 print_insn): Ditto.
6802 * config/tc-tahoe.c (struct top, md_estimate_size_before_relax,
6803 tip_op, md_assemble): Ditto.
6804 * config/tc-vax.c (seg_of_operand, md_assemble,
6805 md_estimate_size_before_relax, md_create_long_jump): Ditto.
6806 * config/tc-z8k.c (parse_exp, check_operand, newfix): Ditto.
6807
84873870
DZ
6808Tue Jul 20 12:17:16 1993 david d `zoo' zuhn (zoo@rtl.cygnus.com)
6809
6810 * configure.in: i386-lynx is the same as i386-coff
6811
623d6e9a
KR
6812Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
6813
6814 * config/obj-elf.c (obj_elf_previous): New function.
6815 (previous_section, previous_subsection): New vars.
6816 (obj_elf_section): Save current place in case DWARF code wants us
6817 to pop back to it. Handle unquoted section name as well as quoted
6818 section name. Don't crash on invalid strings.
6819 (obj_pseudo_table): Handle new pseudos "previous", "2byte", and
6820 "4byte".
6821
6822 * config/obj-elf.h: Don't include struc-symbol.h.
6823 (obj_elf_frob_symbol): Declare arg as struct symbol *.
6824
6825 * tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Local labels can start with
6826 "L" or "_.L_".
6827
6828 * write.c (write_relocs): New function, split off from
6829 write_contents. Use memset instead of bzero.
6830 (write_object_file): Apply write_relocs to each section before
6831 applying write_contents.
6832
6833 * read.c (read_begin): Call obstack_begin with values closer to 1K
6834 multiples.
6835 (read_a_source_file, big_cons, float_cons): Use memcpy instead of
6836 bcopy.
6837
ffffc8fb
ILT
6838Mon Jul 19 14:30:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6839
ce2ad89a
ILT
6840 * config/tc-m68k.c (m68k_ip_op): Don't decrement strend when
6841 calculating opP->isiz; this permits the expression size to be
6842 determined as well, later on.
6843
ffffc8fb
ILT
6844 * expr.c (clean_up_expression): Don't cancel the subtraction of
6845 undefined symbols.
6846
6847 * read.c (s_data), config/obj-coffbfd.c (obj_coff_data): If -R,
6848 switch to text section rather than data section.
6849
9d4dfbf3
KR
6850Mon Jul 19 12:35:39 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
6851
6852 * config/tc-m68k.c (m68k_ip, case AINDX): Add 6 to operand
6853 expression (to take the pc-rel instruction itself into account)
6854 before using the expression, instead of after.
6855
04acd059
ILT
6856Fri Jul 16 08:56:04 1993 Ian Lance Taylor (ian@cygnus.com)
6857
1e9cf565
ILT
6858 * read.c (float_cons): Simplified parsing logic. If
6859 REPEAT_CONS_EXPRESSIONS is defined, accept a repeat count.
6860
6861 * symbols.c (colon): Rather than a special case for TC_HPPA,
6862 use new macro tc_frob_label.
6863 * config/tc-hppa.h (tc_frob_label): Define.
6864
6865 * config/tc-mips.c: Many changes to support simple assembler
6866 optimization.
6867 (insn_label, prev_insn, prev_prev_insn, dummy_opcode,
6868 prev_insn_valid, prev_insn_frag, prev_insn_where,
6869 prev_insn_fixp, prev_insn_is_delay_slot): New static
6870 variables.
6871 (insn_uses_reg, mips_no_prev_insn, mips_emit_delays,
6872 mips_align, s_stringer, s_mips_space): New static functions.
6873 (mips_define_label): New global function.
6874 (md_pseudo_table): For "ascii", "asciz", "asciiz", call
6875 s_stringer. Changed argument to float_cons from 0 or 1 to 'f'
6876 or 'd'. For "space" call s_mips_space.
6877 (md_begin): Call mips_no_prev_insn.
6878 (append_insn): Only insert necessary NOP instructions.
6879 (macro): Call mips_emit_delays before setting mips_noreorder.
6880 Increment and decrement mips_noreorder rather than using
6881 save_reorder_condition. Don't bother to use noreorder in
6882 M_L_DOB and M_L_DAB, since append_insn will not insert a NOP.
6883 (md_atof): Handle floating point numbers correctly for both
6884 big and little endian targets.
6885 (s_align, s_cons): Call mips_align rather than frag_align.
6886 (s_change_seg, s_cons): Call mips_emit_delays.
6887 (s_float_cons): Let float_cons do the work.
6888 (s_mipsset): Call mips_emit_delays when setting noreorder.
6889 * config/tc-mips.h (tc_frob_label): Define to be
6890 mips_define_label.
6891
04acd059
ILT
6892 * config/obj-ecoff.c (ecoff_build_symbols, ecoff_build_procs,
6893 ecoff_frob_files): Consistently use S_GET_VALUE rather than
6894 bfd_asymbol_value. Warn if taking difference of symbols in
6895 different segments.
6896
c978e704
ILT
6897Thu Jul 15 11:51:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6898
5276e361
ILT
6899 * config/obj-ecoff.c (ecoff_frob_file): Discard all open scopes,
6900 with a warning.
6901
2368ec63
ILT
6902 * config/obj-coffbfd.c (fixup_segment): If TC_M88K, don't adjust
6903 by md_pcrel_from if we are relocating against a symbol (we still
6904 need md_pcrel_from for a PC relative relocation within the same
6905 file).
6906 * config/tc-m88k.c (md_pcrel_from): Corrected return value.
cb441b38 6907 (omagic): Removed unused variable.
2368ec63 6908
c978e704
ILT
6909 * Preliminary support for m88k-coff.
6910 * configure.in (m88k-*-coff*): New target. Use coffbfd and
6911 m88kcoff.
6912 * config/m88kcoff.mt: New file.
6913 * read.c (lex_type): New macro LEX_AT to set lex type of '@'.
6914 (pseudo_set): Handle difference of symbols in different fragments
6915 by saving the entire expression as the value of the symbol.
6916 * symbols.c (resolve_symbol_value): Resolve difference
6917 expressions.
6918 * config/obj-coffbfd.c (obj_pseudo_table): If TC_M88K, accept
6919 "sdef" as a synonym for "def".
6920 * config/obj-coffbfd.h: If TC_M88K, include coff/m88k.h and set
6921 TARGET_FORMAT.
6922 (S_IS_LOCAL): Any symbol which includes \001 in the name is local.
6923 * config/tc-m88k.c, config/tc-m88k.h: Numerous changes to bring
6924 m88k port up to date, and to add COFF support.
6925
85051959
ILT
6926Wed Jul 14 15:09:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
6927
5868b1fe
ILT
6928 * Removed sy_forward and replaced it with an undefined expression
6929 as the value of a symbol.
6930 * struc-symbol.h (struct symbol): Removed sy_forward field. Added
6931 sy_resolved and sy_resolving single bit fields.
6932 * symbols.c (symbol_new): Don't initialize sy_forward field.
6933 (resolve_symbol_value): New function to adjust symbol value by
6934 fragment address, using recursion to resolve forward symbols.
6935 * symbols.h: Added prototype for new function.
6936 * read.c (pseudo_set): Set symbolP->sy_value to an undefined
6937 expression rather than setting symbolP->sy_forward.
6938 * write.c (write_object_file): Use resolve_symbol_value on
6939 symbols, keeping the common case (the old behaviour) inline.
6940 * config/obj-aout.c (obj_aout_frob_symbol): Removed sy_forward
6941 handling (subsumed by write.c change).
6942 * config/obj-coff.c, config/obj-coffbfd.c (obj_coff_val): Set
6943 sy_value rather than sy_forward.
6944 * config/obj-coffbfd.c (obj_coff_endef, yank_symbols): Check
6945 expression segment rather than sy_forward.
6946 (yank_symbols): Use resolve_symbol_value.
6947 (crawl_symbols): Removed extra pass over symbols.
6948 * config/obj-aout.c, config/obj-bout.c, config/obj-coff.c,
6949 config/obj-vms.c (obj_crawl_symbol_chain): Removed extra pass over
6950 symbols which handled sy_forward; use resolve_symbol_value
6951 instead.
6952 * config/obj-coff.h, config/obj-coffbfd.h (obj_frob_forward_symbol):
6953 Define.
6954 * config/obj-elf.c (obj_elf_stab_generic): Check expression
6955 segment rather than sy_forward.
6956 * config/obj-vms.c (VMS_Check_For_Main): Don't initialize
6957 sy_forward; do initialize sy_resolved and sy_resolving.
6958 * config/tc-hppa.h (STAB_FIXUP): Use sy_value, not sy_forward.
6959
85051959
ILT
6960 * Changes to keep a full expression as the value of a symbol, not
6961 just a longword:
6962 * struc-symbol.h: New field sy_value.
6963 * as.h: Include expr.h before struc-symbol.h.
6964 * expr.h: Use struct symbol rather than symbolS.
6965 * symbols.c (S_GET_VALUE, S_SET_VALUE): Rewrote to retrieve value
6966 of sy_value field; compile unconditionally, not just if
6967 BFD_ASSEMBLER.
6968 * symbols.h: Compile S_{SG}ET_VALUE prototypes unconditionally.
6969 * write.c (write_object_file): Set BFD symbol value to gas symbol
6970 value.
6971 * config/obj-aout.h, config/obj-bout.h, config/obj-coff.h,
6972 config/obj-coffbfd.h, config/obj-generic.h, config/obj-vms.h
6973 (S_GET_VALUE, S_SET_VALUE): Removed macro definitions.
6974 * config/obj-ieee.c (S_GET_VALUE, S_SET_VALUE): Removed.
6975 * config/obj-coff.h, obj-coffbfd.h: Rewrote several macros to use
6976 S_GET_VALUE rather than ost_entry.n_value.
6977 * config/obj-aout.c (obj_symbol_to_chars), config/obj-bout.c
6978 (obj_symbol_to_chars), config/obj-coff.c (obj_symbol_to_chars),
6979 config/obj-coffbfd.c (symbol_to_chars): Get value to write out
6980 using S_GET_VALUE--don't assume it is already set.
6981 * config/obj-ieee.c (do_symbols): Set BFD symbol value to gas
6982 symbol value.
6983 * config/obj-vms.c (various): Don't assign directly to
6984 S_GET_VALUE; use S_SET_VALUE instead.
6985
b50401c9
DE
6986Wed Jul 14 09:35:23 1993 Doug Evans (dje@canuck.cygnus.com)
6987
fd4b7c25
KR
6988 * configure.in: Make sparc64-*-aout* use bfd gas.
6989
b50401c9
DE
6990 * configure.in: Recognize h8300h.
6991
489a93f3
SC
6992Tue Jul 13 12:09:44 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
6993
6994 * config/tc-h8500.c (line_comment_chars): Add hash.
6995 (parse_exp, skip_colonthing, build_bytes): Add support for
6996 R_H8500_HIGH16 relocation type.
6997
5d4ef296
KR
6998Mon Jul 12 11:15:34 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
6999
7000 * config/obj-elf.c (obj_elf_section): Allow `@' to introduce an
7001 attribute name. Handle `execinstr' attribute.
7002
99c24539
ILT
7003Mon Jul 12 07:22:28 1993 Ian Lance Taylor (ian@cygnus.com)
7004
7005 * config/tc-mips.c (mips_ip): Don't warn on 'i' or 'j' mismatch if
7006 there is another alternative for the instruction.
7007
ec1c752b
RP
7008Fri Jul 9 17:31:34 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7009
7010 * doc/as.texinfo: updates for H8/300H
7011
d358969d
ME
7012Thu Jul 8 14:41:43 1993 Mark Eichin (eichin@cygnus.com)
7013
7014 * config/tc-i960.c (md_create_short_jump, md_create_long_jump,
7015 md_number_to_chars, md_section_align): Adjusted to use valueT,
7016 addressT, to match tc.h.
7017
ff4cac38
KR
7018Thu Jul 8 14:15:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7019
7020 * config/tc-sparc.c (s_common): Revamp to handle both syntaxes,
b2565433 7021 independent of format.
ff4cac38 7022
42206996
DE
7023Thu Jul 8 07:25:25 1993 Doug Evans (dje@canuck.cygnus.com)
7024
7025 * config/tc-h8300.h (TC_CONS_RELOC): Use R_RELLONG if h8/300h.
7026
e9baeb46
DZ
7027Wed Jul 7 18:11:07 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
7028
7029 * configure.in: define CROSS=-DCROSS_COMPILE if it is a cross
7030 build; also recognize h8300-*-coff
7031
76c64db0
ILT
7032Wed Jul 7 10:21:24 1993 Ian Lance Taylor (ian@cygnus.com)
7033
e154ecf4
ILT
7034 * symbols.c (fb_label_instance, fb_label_instance_inc): Don't dump
7035 core just because somebody uses a label before it is defined.
7036
76c64db0
ILT
7037 * config/mips-opcode.h: Moved to opcode/mips.h.
7038 * config/tc-mips.c: Include opcode/mips.h rather than
7039 mips-opcode.h.
7040 (append_insn): An extra NOP is only needed after instructions
7041 which set HI or LO, not after instructions which read it.
7042 (macro_build, mips_ip): Support new 'E', 'G' and 'B' arguments.
7043 (macro): cfc1 and ctc1 now take "t,G" rather than "t,d".
7044 * config/tc-mips.h (struct mips_opcode): Don't define.
7045 * config/mips-big.mt, config/mips-lit.mt (TARG_CPU_DEPENDENTS):
7046 Set to $(srcdir)/../include/opcode/mips.h.
7047
7048 Get the MIPS assembler up to speed with other gas changes:
7049
7050 * config/obj-ecoff.c (ecoff_set_vma, ecoff_frob_symbol):
7051 Removed; don't change the symbol value.
7052 (ecoff_build_symbols, ecoff_build_procs, ecoff_frob_file): Use
7053 bfd_asymbol_value rather than S_GET_VALUE to include section
7054 vma in symbol value.
7055 (ecoff_frob_file): Ignore BSF_SECTION_SYM symbols, since ECOFF
7056 doesn't output them. Set the vma of sections.
7057 * config/obj-ecoff.h: Don't define obj_frob_symbol.
7058 * config/tc-mips.c (tc_gen_reloc): Adjustment by section vma is no
7059 longer necessary.
7060 (various): use valueT rather than long.
7061
e28e0b95
KR
7062Wed Jul 7 08:33:30 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7063
fd4b7c25
KR
7064 * config/tc-sparc.h (ENV64): Define for v9.
7065
7066 * config/tc-sparc.c (s_xword): For numbers, call big_cons.
7067 (sparc_ip, md_apply_fix, tc_gen_reloc): Handle some sparc64
7068 relocation types.
7069 (md_number_to_chars): Handle 8-byte value.
7070
7071 * config/obj-elf.h (elf_symbol): For v9, use 64-bit symbol type.
7072
e28e0b95
KR
7073 * as.h (valueT): Typedef moved here.
7074 * struc-symbol.h (valueT): ...from here.
7075 * write.c (write_object_file): Locals from_addr, to_addr,
7076 table_addr are now addressT. Supply prototype for bfd_alloc for
7077 now.
7078 (fixup_segment): Local add_number is now valueT. Correct some
7079 range-checking bugs.
7080 (relax_align): Type `int' should be sufficient for the exponent.
7081 (fix_new): Argument offset is type offsetT. Locals size and
7082 newsize are type valueT.
7083 * write.h (struct fix): Fields fx_offset and fx_addnumber are now
7084 type valueT.
7085 (fix_new): Fix prototype.
7086 * symbols.c (symbol_new): Symbol value is type valueT.
7087 (S_SET_VALUE, S_GET_VALUE): Likewise.
7088 (S_IS_*): Specify int return type explicitly.
7089 * symbols.h (symbol_new, S_GET_VALUE, S_SET_VALUE): Fixed
7090 prototypes.
7091 * read.c (s_comm): Values read are type valueT.
7092 * expr.h (expressionS): Field X_add_number is an offsetT.
7093 * tc.h (md_create_long_jump, md_create_short_jump,
7094 md_section_align): Addresses are now type addressT.
7095 (md_number_to_chars, md_apply_fix): Pass value as valueT.
7096 * config/tc-i386.c (md_create_short_jump, md_create_long_jump,
7097 md_number_to_chars, md_section_align): Adjusted.
7098 * config/tc-sparc.c (sparc_ip): Initialize `len' variable to make
7099 gcc shut up.
7100 (md_create_short_jump, md_create_long_jump, md_number_to_chars,
7101 md_section_align): Adjusted.
7102
7103 * config/tc-sparc.c (s_reserve): Permit use for other than a.out
7104 format.
7105 (s_common): Handle Solaris-2 version.
7106
7107 * config/ho-generic.h (free): Returns void if __STDC__.
7108
7109 * config/obj-elf.h (obj_elf_frob_symbol, elf_frob_file,
7110 elf_file_symbol): Declare.
7111
7112 * expr.c (floating_constant, integer_constant): Now return void.
7113
7114Thu Jul 1 12:13:43 1993 Ian Lance Taylor (ian@cygnus.com)
7115
7116 * configure.in: Match on sparc*-fujitsu-none rather than
7117 sparclite*-fujitsu-none.
7118
267389df
ILT
7119Wed Jun 30 11:12:02 1993 Ian Lance Taylor (ian@cygnus.com)
7120
7121 * read.c (cons): Conditionalize parsing of expression. Move
7122 putting value into object file into separate function. Separate
7123 out MRI and WANT_BITFIELDS cases into separate functions.
7124 (emit_expr): New function to write data into object file.
7125 Conditionalize on TC_CONS_FIX_NEW and TC_CONS_RELOC rather than on
7126 processor types.
7127 (parse_bitfield_cons): New function to parse bitfield expressions
7128 as used by i960 assemblers. Only compiled if
7129 BITFIELD_CONS_EXPRESSIONS is defined.
7130 (parse_mri_cons): New function to parse MRI style strings. Only
7131 compiled if MRI is defined.
7132 (parse_repeat_cons): New function to parse repeat counts. Only
7133 compiled if REPEAT_CONS_EXPRESSIONS is defined.
7134 * read.h (emit_expr): Added declaration of new function.
7135 * config/tc-a29k.h (TC_CONS_RELOC): Define to be RELOC_32.
7136 * config/tc-h8300.h (TC_CONS_RELOC): Define to be R_RELWORD.
7137 * config/tc-hppa.c (parse_cons_expression_hppa): New function to
7138 parse a HPPA expression, rather than special case in cons
7139 function.
7140 (cons_fix_new_hppa): New function to emit an HPPA fixup, rather
7141 than special case in emit_expr function.
7142 * config/tc-hppa.h (TC_PARSE_CONS_EXPRESSION, TC_CONS_FIX_NEW):
7143 Define to use new functions from tc-hppa.c.
7144 * config/tc-i960.h (BITFIELD_CONS_EXPRESSIONS): Define.
7145 (WANT_BITFIELDS): Removed; now obsolete.
7146 * config/tc-mips.h (REPEAT_CONS_EXPRESSIONS): Define.
7147 * config/tc-ns32k.c (cons_fix_new_ns32k): New function to emit an
7148 NS32K fixup, rather than special case in emit_expr function.
7149 * config/tc-ns32k.h (TC_CONS_FIX_NEW): Define to be
7150 cons_fix_new_ns32k. Also use PARAMS rather than checking
7151 __STDC__.
7152 * config/tc-sparc.h (TC_CONS_RELOC): Define to RELOC_32.
7153
7154 * write.c (relax_and_size_seg, adjust_reloc_syms, write_contents):
7155 Don't core dump if gas has no information about a section.
7156
7157Wed Jun 30 06:21:27 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7158
fd4b7c25
KR
7159 * config/tc-sparc.c (md_begin): If sparcv9 is defined, reset
7160 current_architecture to v9 automatically.
7161
7162 * config/tc-sparc.h (TARGET_FORMAT): Use elf64-sparc for v9.
7163
7164 * config/tc-sparc64.h, config/tc-sparc64.c: New files.
7165 * configure.in: Use sparc64 cpu files for v9, and default to elf
7166 format.
7167
267389df
ILT
7168 * write.c (relax_and_size_seg): Always fully process a section.
7169 Section size is last frag's (vm)address plus its size. If no
7170 relocations are present, force SEC_RELOC flag clear.
7171 (dump_section_relocs): New debugging routine.
7172 (adjust_reloc_syms): New routine, broken out from write_contents.
7173 Don't adjust relocs that are already relative to section symbol.
7174 Look for obj_fix_adjustable macro to know what else to skip,
7175 instead of obj_write_symbol. Look for section symbol stored in
7176 section information.
7177 (write_object_file): Map adjust_reloc_syms over all sections.
7178 (write_contents): Clear SEC_RELOC flag if no relocations are
7179 found.
7180
7181 * as.h (__PTR_TO_INT, __INT_TO_PTR): New versions for Saber, to
7182 keep it quiet.
7183
7184 * write.c (remove_subsegs): Don't define for BFD_ASSEMBLER.
7185
e28e0b95
KR
7186Fri Jun 25 14:42:53 1993 K. Richard Pixley (rich@sendai.cygnus.com)
7187
7188 * Makefile.in (all, dvi, info, install-info, clean-info): do not
7189 echo recursion lines.
7190 (install-info, clean-info): collapse into the dvi and info rule.
7191
fd4b7c25
KR
7192Fri Jun 25 10:47:24 1993 Doug Evans (dje@canuck.cygnus.com)
7193
7194 * config/tc-sparc.c (sparc_ip): Remove support for %d/%q fp regs.
7195 All fp regs are now specified as %f.
7196 (priv_reg_table): fpq -> fq.
7197
267389df
ILT
7198Fri Jun 25 03:43:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
7199
7200 * as.h (strstr): Disable declaration for now.
7201 (fprint_value, sprint_value): Declare.
7202
7203 * subsegs.c (subseg_new_rest): Use memset to clear new frag.
7204 (subseg_new) [BFD_ASSEMBLER]: Initialize all seginfo fields.
7205
7206 * expr.c (expr_part): Made sanity checks a.out-specific.
7207 (expr): Disabled sanity checks.
7208
7209 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Add field for
7210 section symbol.
7211 * subsegs.c (subseg_change): Initialize section symbol pointer
7212 when setting up a new section.
7213
7214 * symbols.c (symbol_new) [BFD_ASSEMBLER]: Point BFD symbol's udata
7215 field back at gas symbol structure.
7216
7217 * symbols.c (colon): Cast obstack_next_free value to char* before
7218 doing arithmetic on it.
7219 * subsegs.c (subseg_new_rest): Likewise.
7220 * as.h (frag_now_fix): Likewise.
7221
7222 * config/obj-elf.c (elf_file_symbol): Use subseg_new instead of
7223 calling bfd_make_section_old_way directly, and call subseg_set
7224 instead of subseg_change. Now returns void.
7225 (obj_elf_write_symbol): Only check local symbols for now.
7226 (elf_stab_symbol): Now static and void, and disabled until it
7227 works completely.
7228 (obj_elf_size): For expression values, fail silently for now.
7229 (obj_symbol_new_hook): Do nothing.
7230
7231 * config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_SPARC_WDISP22
7232 relocation.
7233 (s_local) [OBJ_ELF]: New function.
7234 (md_pseudo_table) [OBJ_ELF]: Call it for "local".
7235 (s_common): Rearrange to handle Solaris .common pseudo, which may
7236 sometimes use bss space instead of common.
7237 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Add new `local' field.
7238
a8285504
DZ
7239Thu Jun 24 16:33:53 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7240
7241 * configure.in: set host config to hpux for hppa*-hp-hpux
7242
267389df
ILT
7243Thu Jun 24 13:35:06 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
7244
7245 * app.c (app_pop, app_push): Fix bug reported by Chris Arthur.
7246
7247Tue Jun 22 01:04:23 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
7248
7249 * subsegs.c (subseg_new): Don't special-case a.out -R flag here.
7250 * config/obj-aout.c (s_sect): Do it here.
7251
7252 * as.h (BAD_CASE): Don't make some lame compilers think we want
7253 substitution inside strings.
7254
7255 * as.c (print_version_id): New function, split off from main.
7256 (main): Call it.
7257 * config/tc-sparc.c (md_parse_option) [OBJ_ELF]: Print version id
7258 for -V. Ignore -Q and -s options for now.
7259
a8285504
DZ
7260Mon Jun 21 17:37:59 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7261
7262 * Makefile.in: make installation & builds work again for crosses
7263
267389df
ILT
7264Sun Jun 20 18:18:26 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
7265
7266 * listing.c (list_symbol_table): Rewrite to print wide (>32 bits)
7267 symbol values correctly.
7268
7269 * write.c (write_object_file): Deleted unused variables.
7270 (fixup_segment): Use sprint_value.
7271
7272 * messages.c (sprint_value, fprint_value): New routines.
7273
7274 * config/obj-elf.c (elf_stab_symbol): Now returns void.
7275 (obj_elf_stab_generic): Fix typo in logic.
7276
7277 * Makefile.in (INCLUDES): Look in ../bfd for bfd.h.
7278
7279 * as.h (addressT, offsetT): New types, using BFD types if
7280 available.
7281 (relax_addressT, struct frag): Use them.
7282 * struc-symbol.h (valueT, struct broken_word): Likewise.
7283
7284 * as.h (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
7285 * subsegs.c (subseg_new) [BFD_ASSEMBLER]: Name argument is const.
7286
9126738c 7287Thu Jun 17 16:53:56 1993 david d `zoo' zuhn (zoo@cygnus.com)
132239bf 7288
9126738c
DZ
7289 * Makefile.in: canonicalize install.sh; for use within
7290 this directory (and subdirs)
7291
267389df
ILT
7292Sun Jun 20 02:34:04 1993 Ashley Saulsbury (ans@sics.se)
7293
7294 * m88k-opcode.h : fixed tiny tiny mistake - xcr was incorrectly
7295 specified, should have both S1 and S2 fields identical
7296 If only finding the problem was as fast as fixing the bug !!!!
7297
7298Tue Jun 15 16:01:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7299
7300 * write.c (write_contents): Do write out non-loadable sections.
7301 Debug sections can fall in this category.
115147fb 7302
267389df
ILT
7303 * read.c (s_app_file): Call elf_file_symbol for ELF files.
7304 * config/obj-elf.c (elf_file_symbol): New function.
7305
7306 * config/obj-elf.c (elf_stab_symbol_string): Renamed from pa_...,
7307 added argument to specify section base name.
7308 (obj_elf_stab_generic): Renamed from ..._stab. New argument
7309 specifies section base name.
7310 (obj_elf_stab): New function, calls obj_elf_stab_generic with
7311 ".stab" as section base name.
7312 (obj_elf_xstab): New function, calls obj_elf_stab_generic.
7313 (obj_elf_type): Handle "object". Use bitwise-or to merge in
7314 symbol flags rather than simply replacing, so global/local flags
7315 are preserved.
7316 (obj_elf_ident): Rewrite.
115147fb 7317
a00ee522
DZ
7318Tue Jun 15 17:03:25 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7319
7320 * Makefile.in: remove parentdir support; use INSTALL_XFORM
7321
7322Wed Jun 9 11:26:07 1993 Ian Lance Taylor (ian@cygnus.com)
7323
7324 * config/tc-i386.c (md_pseudo_table): .align uses a power of two
7325 for any a.out target, not just Linux and 386BSD.
7326 * config/tc-i386.h (DOT_LABEL_PREFIX): Do not define for any a.out
7327 target.
7328
267389df
ILT
7329Mon Jun 7 13:33:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7330
7331 * config/tc-m88k.c: Don't include flonum.h, md.h, m88k.h. They
7332 don't exist or duplicate other inclusions.
7333
7334 * config/tc-vax.h (NO_RELOC): Define.
7335
fd4b7c25
KR
7336Mon Jun 7 09:55:03 1993 Doug Evans (dje@canuck.cygnus.com)
7337
7338 * config/tc-sparc.c (sparc_ip): Fix parsing of asi number.
7339 Fix error message.
7340
267389df
ILT
7341Sat Jun 5 19:32:52 1993 Torbjorn Granlund (tege@nada.kth.se)
7342
7343 * gas/config/m88k-opcode.h (m88k_opcodes): Add 88110 instructions.
7344 * gas/config/tc-m88k.c (get_reg): New arg reg_prefix. Compare first
7345 char to reg_prefix instead of to 'r'.
7346 (calcop): Change calls to get_reg.
7347 (calcop): Handle new case 'x' to set reg_prefix.
7348 (calcop): Set reg_prefix to 'r' after each call to get_reg.
7349 (cmpslot): Add 88110 conditions.
7350
7351 * gas/config/m88k-opcode.h: Swap cases for "rot" for consistency.
7352
7353 * gas/config/tc-m88k.c (get_bf): Always restore input_line_pointer
7354 before returning.
7355
7356 * gas/config/m88k-opcode.h (m88k_opcodes): Make equal mnemonics
7357 adjacent; mov.s and mov.d swapped.
7358 (m88k_opcodes): Fix typo `r2' -> `2'.
7359
a00ee522
DZ
7360Fri Jun 4 15:59:31 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
7361
7362 * config/h8300.c: Support for H8/300-H opcodes.
7363
7364 * config/obj-coffbfd.c (w_strings): String table length is 4
7365 bytes, no matter what the host int size is.
7366
7367 * configure.in (alpha-*-osf*): New.
7368
68ad4c92
ILT
7369Fri Jun 4 07:51:18 1993 Ian Lance Taylor (ian@cygnus.com)
7370
47fcc4f5
ILT
7371 * configure.in (mips-*-ecoffl*): New target; use ecoff and
7372 mips-lit.
7373 (mips-*-ecoff*): Added trailing '*'.
7374
68ad4c92
ILT
7375 * config/obj-ecoff.c (ecoff_build_procs): Force the adr of the
7376 first FDR in a file to be zero.
7377
75776695
KR
7378Thu Jun 3 14:09:59 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7379
b7067d7f
KR
7380 * Makefile.in (VERSION): Jump to 2.1.4.
7381
75776695
KR
7382 * config/ho-hppabsd.h: New file, from Peter Hoogenboom.
7383
7384 * config/tc-mips.c (md_assemble): Call bfd_set_gp_size only for
7385 ECOFF format.
7386
7387Tue Jun 1 15:21:57 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7388
7389 * config/tc-m68k.c (md_assemble): The 68040 cpu doesn't want a
7390 separate '851 mmu.
7391
7392 * config/obj-elf.c, config/obj-elf.h: Update for new type, macro,
7393 and routine names. Assuming 32 bits for now.
7394
7395 * config/obj-elf.c (elf_frob_file): Look for macro
7396 elf_tc_final_processing_hook, instead of assuming a function
7397 always exists.
7398 * config/tc-hppa.c (elf_hppa_final_processing_hook): Renamed from
7399 tc_final_processing_hook.
7400 * config/tc-hppa.h (elf_tc_final_processing_hook): Use it.
7401
7402 * config/tc-hppa.h (elf_tc_symbol, elf_tc_make_sections): Macros
7403 moved here from obj-elf.h.
7404 * config/obj-elf.h: Don't include CPU-specific header files.
7405
7406Sun May 30 16:49:37 1993 Peter Hoogenboom (hoogen@fast.cs.utah.edu)
7407
7408 * configure.in: configurations should match on 'hppa*' not 'hppa'.
7409
7410 * read.c: Add support for HPPA assembly language syntax (denoted
7411 with '#ifdef TC_HPPA').
7412
7413 * symbols.c: Add support for HPPA assembly language syntax (denoted
7414 with '#ifdef TC_HPPA').
7415
7416 * write.c (write_contents): Add support for HPPA-style
7417 relocations.
7418
7419 * config/obj-elf.c: Stab symbols weren't written properly.
7420 (obj_elf_version):
7421 (obj_elf_desc):
7422 (obj_elf_write_symbol):
7423 (obj_elf_write_symbol_p):
7424 (obj_elf_frob_symbol):
7425 (elf_stab_symbol):
7426 (elf_frob_file):
7427
7428 * config/tc-hppa.c: Support for HPPA symbol extension sections.
7429 Remove some unused code. Support for HPPA assembly language
7430 syntax.
7431
7432 * app.c:
7433
7434 * symbols.c:
7435
7436 * config/obj-elf.h:
7437 (obj_write_symbol):
7438 (obj_frob_file):
7439 (elf_tc_symbol):
7440 (elf_tc_make_sections):
7441
7442 * config/tc-hppa.h:
7443
7444Sun May 30 21:44:45 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7445
7446 * config/obj-ecoff.c (obj_read_begin_hook, add_file): Assume
7447 hash_new will have succeeded if it returns.
7448 * config/tc-a29k.c (md_begin): Likewise.
7449
7450 * config/tc-i386.c (tc_aout_fix_to_chars): Now nbytes_r_length is
7451 const.
7452 (mode_from_disp_size, opcode_suffic_to_type): Now inline under
7453 gcc.
7454 (fits_in_{signed,unsigned}_{byte,word}): Likewise.
7455
7456 * expr.c: Delete register declarations; gcc ignores them anyways.
7457
7458Fri May 28 19:03:32 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7459
7460 * hash.c (hash_new): Use xmalloc, since many callers don't check
7461 for failure.
7462
49864cfa
KR
7463Thu May 27 13:02:15 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7464
7465 * frags.c (zero_address_frag, bss_address_frag): These are
7466 external.
7467
7468 * tc.h (md_reloc_size): This is const.
7469 * config/tc-{a29k,h8300,h8500,i386,i860,i960,m68k,ns32k,z8k}.c
7470 (md_reloc_size): Now const.
7471
7472 * config/aout_gnu.h (enum machine_type, enum reloc_type): Delete
7473 trailing commas.
7474 * as.h (enum _segT): Ditto.
7475
7476 * struc-symbol.h (N_TYPE_seg): This should be const.
7477
7478Thu May 27 11:43:59 1993 Michael Meissner (meissner@osf.org)
7479
7480 * config/obj-ecoff.c (add_file): Cast file_name to char * in
7481 listing_source_file call.
7482
7483 * config/obj-elf.c (elf_stab_symbol_string): Cast first argument
7484 of subseg_new call to eliminate const attribute.
7485 (obj_elf_stab): Ditto.
7486 (obj_symbol_new_hook): Cast first argument of bzero call to char *.
7487
7488 * read.c (s_align_bytes): Properly record alignment.
7489
7490 * expr.c (__): Undefine __ macro before use, since OSF/1 uses it
7491 for the prototype/no prototype macro.
7492
7493 * as.c (got_sig): Don't do return ((SIGTY) 0), SIGTY might well be
7494 void.
7495
7496 * as.h (relax_stateT enum): Delete trailing comma.
7497
9a7d824a
ILT
7498Thu May 27 11:07:50 1993 Ian Lance Taylor (ian@cygnus.com)
7499
7500 * app.c (do_scrub_begin): Let line_comment_chars override
7501 comment_chars.
7502 (do_scrub_next_char): If a line comment character is not at the
7503 start of a line, treat it as a comment character if it is one.
7504 For a CPP line comment use pseudo-op .appline rather than .line.
7505 * input-scrub.c (logical_input_line): Make int rather than
7506 unsigned.
7507 (input_scrub_push, input_scrub_begin): Initialize
7508 logical_input_line to -1 rather than 0.
7509 (bump_line_counters): Increment logical_input_line.
7510 (new_logical_line): If line_number is -2, decrement
7511 logical_input_line.
7512 (as_where): Use logical_input_line even if it is 0.
7513 * read.h (s_app_file prototype): Now takes an int argument.
7514 * read.c (potable): Make .appfile call s_app_file with 1. New
7515 .appline pseudo-op calls s_app_line.
7516 (s_app_file): If .appfile, call new_logical_line with -2 to
7517 account for newline inserted by do_scrub_next_char. If listing,
7518 call listing_source_file.
7519 (s_app_line): New function to handle fake pseudo-op .appline.
7520 * config/obj-coff.c (obj_pseudo_table): Make .appline call
7521 obj_coff_ln.
7522 (obj_coff_ln): Added argument to indicate whether .appline.
7523 * config/obj-coffbfd.c (obj_pseudo_table): Make .appline call
7524 obj_coff_ln.
7525 (obj_coff_ln): Added argument to indicate whether .appline.
7526 * config/tc-mips.c (s_file): Pass argument to s_app_file.
7527
61f14fb0
ILT
7528Tue May 25 11:59:07 1993 Ian Lance Taylor (ian@cygnus.com)
7529
7530 * config/obj-bout.h (S_GET_VALUE): Removed unnecessary cast.
7531
7532Thu May 20 19:14:24 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7533
7534 * config/tc-m68k.c (md_apply_fix_2): Straighten out check for
7535 invalid values.
7536
6eef4543
SC
7537Wed May 19 07:33:17 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
7538
7539 * config/tc-h5000.c (build_bytes): Understand @rd mode and build
7540 relocations correctly.
7541
f8f61478
KR
7542Mon May 17 15:06:26 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7543
6eef4543
SC
7544 * Makefile.in (FLAGS_TO_PASS): Leave out TEXI2DVI for now, because
7545 it's wrong.
7546
f8f61478
KR
7547 * config/tc-m68k.c (md_apply_fix_2): Apply range checks and warn
7548 if value is out of range.
7549
7550 Patch from Minh Tran-Le:
7551 * config/tc-i386.c (i386_operand): For in/out port register used
7552 as base reg, include InOutPortReg in operand type.
7553 (MATCH): Accept overlap value of InOutPortReg.
7554
7555Mon May 17 09:29:34 1993 Ian Lance Taylor (ian@cygnus.com)
7556
7557 * config/obj-ecoff.c (add_file, obj_ecoff_loc, obj_ecoff_stab):
7558 Add calls to listing routines to produce combined source/assembler
7559 listings.
7560 (obj_ecoff_stab): Create a file pointer if none used yet.
7561 (ecoff_frob_file): Set symcount to correct value.
7562
7563Fri May 14 06:53:33 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7564
7565 * Makefile.in (VERSION): Bump to version 2.1, in preparation for
7566 release.
7567
7568 * config/obj-aout.h (H_GET_HEADER_SIZE, H_SET_SYMBOL_TABLE_SIZE):
7569 Define in terms of constants, not C structure sizes.
7570
7571 * config/tc-rs6000.c, config/tc-rs6000.h: Delete empty files.
7572
7573Thu May 13 17:01:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7574
7575 * config/obj-aout.c (obj_header_append): Don't define if it's
7576 defined as a macro.
7577 * config/obj-hp300.h (obj_header_append): Define it as a macro.
7578 * config/obj-hp300.c (hp300_header_append): New function.
7579
7580 * Makefile.in (distclean): Don't bother cleaning up doc files;
7581 they aren't going to be in this directory.
7582
204ff785
ILT
7583Thu May 13 07:51:35 1993 Ian Lance Taylor (ian@cygnus.com)
7584
f8f61478
KR
7585 * config/obj-ecoff.c (ecoff_build_symbols): Handle absolute
7586 symbols.
7587
204ff785
ILT
7588 * tc.h (TC_COFF_SIZEMACHDEP): Don't define here.
7589 * config/tc-sh.h (TC_COFF_SIZEMACHDEP): Define here instead.
7590
65824763
KR
7591Mon May 10 06:01:12 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
7592
204ff785
ILT
7593 * config/obj-vms.c (VMS_Symbol_type_list): Don't bother with
7594 initialization.
7595
65824763
KR
7596 * configure.in (targets): Treat m68*-*-sysv* like m68k-*-coff.
7597
21bb48b9
ILT
7598Wed May 5 14:00:49 1993 Ian Lance Taylor (ian@cygnus.com)
7599
7600 * config/tc-mips.c (macro): Correct floating point double word
7601 loads and stores for big endian target.
7602
e7c2f943
KR
7603Wed May 5 08:39:21 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7604
7605 * config/tc-i386.c: Replace SEG_* with *_section, fix up subseg_*
7606 calls. Deleted some unused code.
7607 * config/obj-coff.c: Likewise.
7608
7609 ELF support, mostly contributed by Utah:
7610 * config/obj-elf.c (obj_elf_section, obj_elf_stab, obj_elf_line,
7611 obj_elf_type): Rewrite.
7612 (obj_elf_frob_symbol, elf_stab_symbol_string, elf_stab_symbol,
7613 obj_elf_desc, obj_elf_version, obj_symbol_new_hook, obj_elf_size):
7614 New functions.
7615 (obj_elf_ident): Dummy.
7616 * config/obj-elf.h (FALSE, TRUE, S_*, tc_frob_symbol,
7617 TARGET_SYMBOL_FIELDS): New macros.
7618 (gdb_section): New variable decl.
7619
7620 * config/tc-i386.c (md_atof): Return zero, not empty string, on
7621 success.
7622
7623 BFD_ASSEMBLER conditional changes:
7624 * config/obj-coff.c (lineno_rootP, seg_N_TYPE, *_section_header):
7625 Don't define these.
7626 (SA_SET_SYM_ENDNDX, SA_SET_SYM_TAGNDX): New functions.
7627 (fetch_coff_debug_section): Ditto.
7628 (obj_coff_endef): Call fetch_coff_debug_section.
7629 (struct line_no): New type.
7630 (c_symbol_merge): New way for copying aux fields.
7631 (c_dot_file_symbol): Put symbol in absolute section, and set flag
7632 BSF_DEBUGGING.
7633 (function_lineoff): New symbol.
7634 (function_lineoff, text_lineno_number, our_lineno_number,
7635 lineno_lastP): Don't define.
7636 (c_line_new): Don't define.
7637 (obj_emit_lineno, obj_coff_endef): Use abort calls as, uh,
7638 placeholders, until
7639 line-number recording gets implemented.
7640 (obj_new_symbol_hook): New code for handling aux fields.
7641 (add_lineno, add_linesym): New functions.
7642 (obj_coff_ln): Call add_lineno, not c_line_new.
7643 (obj_coff_endef): New code for handling symbol names. New lineno
7644 code. Look for section name "*DEBUG*" for debugging section.
7645 (align, coff_check_file_symbols, obj_coff_section,
7646 coff_frob_file): New functions.
7647 * config/obj-coff.h: Reordered some includes.
7648 (BYTE_ORDERING, FILE_HEADER_MAGIC, seg_N_TYPE, N_TYPE_seg,
7649 DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE, AOUTHDR, AOUTHDRSIZE): Don't
7650 define these.
7651 (TARGET_SYMBOL_FIELDS, I960_SYM_FIELDS): New macros.
7652 (SYM_AUXENT): New macro (for non-BFD_ASSEMBLER too) for accessing
7653 aux entries. Most SA_* macros now use it unconditionally.
7654 (S_*): Use `bsym' field, and access BFD private data.
7655 (SF_*): Use `sy_flags' symbol field for most of these.
7656 (H_*, object_headers, lineno, lineno_*P, OBJ_EMIT_LINENO): Don't
7657 define.
7658 (*_section_header): Don't define.
7659 * config/tc-i386.c (md_convert_frag, md_apply_fix): Changed
7660 interface.
7661 (tc_gen_reloc) [I386COFF]: New function.
7662 (tc_aout_fix_to_chars, tc_coff_fix2rtype): Don't define.
7663 * config/tc-i386.h (TARGET_ARCH, TARGET_BYTES_BIG_ENDIAN): New
7664 macros.
7665
7666 * config/obj-coff.c (stack_init): Don't do assignments inside
7667 conditions.
7668 (obj_coff_def): Simplified handling of symbol name a bit.
7669 (tag_insert): Name argument is now pointer to CONST.
7670 (obj_crawl_symbol_chain): Commented out.
7671
7672 * config/obj-coff.h: Use PARAMS macro in prototypes.
7673
7674 * write.c (relax_and_size_seg) [BFD_ASSEMBLER]: Don't indirect
7675 through frchainP pointer if it is null.
7676
7677 * configure.in: Warn if BFD mode is explicitly turned off but is
7678 required by specified target.
7679 (mips ecoff targets): Don't need to set bfd_gas here; it gets
7680 taken care of later.
7681
7682 * config/obj-coffbfd.c (crawl_symbols): Don't clear sy_forward
7683 field.
7684 (yank_symbols): Merge symbols only if sy_forward is null.
7685
7686 * config/tc-m68k.h (AOUT_MACHTYPE): Don't define if already
7687 defined.
7688
7689 * tc.h (md_convert_frag) [BFD_ASSEMBLER]: Section arg is not
7690 pointer.
7691 * config/tc-m68k.c (md_convert_frag) [BFD_ASSEMBLER]: Ditto.
7692
7693 * config/tc-sparc.h (LOCAL_LABEL) [OBJ_ELF]: Anything starting
7694 with "." is a local label.
7695
7696 * config/te-hppa.h, config/tc-hppa.h, config/tc-hppa.c: New config
7697 files.
7698
7699 * config/te-linux.h, config/te-386bsd.h: New config files.
7700 * configure.in (i386-*-linux, i386-*-bsd): Use them.
7701 * config/tc-i386.h (TARGET_FORMAT): Select format based on target
7702 environment.
7703 (DOT_LABEL_PREFIX): Don't define for 386bsd or Linux.
7704
5d6cfa60
ILT
7705Wed May 5 13:14:01 1993 Ian Lance Taylor (ian@cygnus.com)
7706
7707 * config/obj-ecoff.c (init_file): Set fMerge to 0 since dbx seems
7708 to want it that way.
7709 (ecoff_build_symbols): Turn local st_Proc symbols into
7710 st_StaticProc symbols. Set index field of external st_Proc and
7711 st_staticProc symbols correctly.
7712 * config/tc-mips.h (NO_LISTING): Don't define. People might want
7713 listings.
7714
e7c2f943
KR
7715Tue May 4 21:22:54 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7716
7717 * config/obj-hp300.h, config/obj-hp300.c, config/te-hp300.h: New
7718 files.
7719 * configure.in (m68k-*-hpux): Use them.
7720
7721 * config/obj-aout.c (obj_pre_write_hook): Use AOUT_VERSION if
7722 defined, otherwise zero.
7723
7724 * config/aout_gnu.h (OMAGIC): Don't define if already defined.
7725
5d6cfa60
ILT
7726Mon May 3 15:59:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7727
7728 * config/tc-sparc.c (sparc_ip): Allow any abs expression as an
7729 address space number.
7730
7731Wed Apr 28 19:11:22 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
7732
7733 * config/obj-aout.h (TARGET_DEFAULT): Don't default this at all.
7734
7735 * config/tc-a29k.c: Include ctype.h.
7736 (define_some_regs): Added special-purpose registers for 29050.
7737
e7c2f943
KR
7738 * config/tc-i386.c (comment_chars) [TE_I386AIX]: Include "/".
7739
7740 * config/obj-coffbfd.c (fill_section): Don't set STYP_REG here.
7741 (change_to_section): Set it here instead.
7742
a1387260
ILT
7743Wed Apr 28 13:40:29 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
7744
7745 * config/obj-ecoff.c (obj_symbol_new_hook): Make up a .file if one
7746 hasn't been seen yet.
7747 (add_ecoff_symbol): Don't refer to cur_file_ptr if it is NULL.
7748
4a1bbbe7
SC
7749Mon Apr 26 18:29:05 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7750
7751 * config/tc-sh.ch, config/tc-sh.h: New files supporting Hitachi
7752 SH.
7753
be2f6bd6
ILT
7754Mon Apr 26 12:28:27 1993 Ian Lance Taylor (ian@cygnus.com)
7755
7756 * expr.c (operand): Fix unary plus operator (previously was the
7757 same as '~' operator!).
7758
7759Wed Apr 21 00:20:11 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7760
7761 * write.c (cvt_frag_to_fill): Define even if BFD is defined.
7762 (write_object_file): Do define if BFD_ASSEMBLER. Invoke
7763 obj_check_file_symbols if defined. Call verify_symbol_chain_2
7764 instead of open-coding it. Fix some bugs in patching up symbol
7765 chain.
7766 (relax_segment): Make some code we "ought to be able to" use for
7767 all targets no longer conditionalized on ns32k target; instead, do
7768 it always, and if the appropriate conditions fail, abort.
7769
7770 * symbols.c (DEBUG): Enabled.
7771 (symbol_new): Make sure bfd_make_empty_symbol works.
7772 (verify_symbol_chain_2): New funcion; takes one symbol as
7773 argument, anywhere in the chain.
7774 (dollar_label*): Use default initializers.
7775
7776 * as.c (perform_an_assembly_pass): Call md_begin here...
7777 (main): ...and not here.
7778
7779 * config/tc-m68k.h (TARGET_FORMAT): Use a.out-sunos-big for a.out.
7780 (tc_frob_symbol): New macro: Get rid of symbols in reg_section.
7781
7782 * config/tc-m68k.c (omagic): Don't define for BFD_ASSEMBLER.
7783 (add_fix, add_frag): Now functions instead of macros.
7784 (m68k_reg_parse, m68k_ip, md_estimate_size_before_relax, get_num,
7785 s_data1, s_data2, s_bss): Use new *_section names, for
7786 compatibility with BFD_ASSEMBLER mode; rewrite switch statements
7787 to handle non-integral segT.
7788 (tc_coff_fix2rtype, tc_aout_fix_to_chars,
7789 tc_coff_symbol_emit_hook): Don't define for BFD_ASSEMBLER.
7790 (tc_gen_reloc): New routine for BFD_ASSEMBLER.
7791 (md_apply_fix, md_apply_fix_2): Renamed old md_apply_fix to
7792 md_apply_fix_2; new md_apply_fix definition varies interface
7793 depending on BFD_ASSEMBLER.
7794 (md_convert_frag, md_convert_frag_1): Likewise. Use new *_section
7795 names.
7796
7797 * config/obj-vms.c: Include config.h.
7798 (version_string): Delete declaration.
7799 (Write_VMS_MHD_Records): Use GAS_VERSION instead.
7800 (vms_resolve_symbol_redef): New function, taken from VMS code in
7801 symbols.c.
7802 (_doprnt): Deleted.
7803 (VMS_Store_Struct, VMS_Def_Struct, VMS_Set_Struct,
7804 VMS_TBT_Block_End, get_VMS_time_on_unix, generate_suffix,
7805 VMS_Psect_Spec): Fixed to compiler under traditional C.
7806 * config/obj-vms.h: Use PARAMS macro.
7807 (vms_resolve_symbol_redef): Declare.
7808 (RESOLVE_SYMBOL_REDEFINITION): New macro.
7809 * symbols.c (colon): Remove some VMS-specific code, look for
7810 RESOLVE_SYMBOL_REDEFINITION macro instead.
7811
7812 * config/tc-m68k.c (m68k_ip): Don't try expanding DBcc
7813 instructions.
7814
7815 * config/tc-i386.c: Reordered some functions so inlining might
7816 work. Use PARAMS in function declarations.
7817 (reloc): New routine.
7818 (md_assemble): Rearrange switch statements to work with
7819 non-integral segT.
7820
7821 * struc-symbol.h [BFD_ASSEMBLER]: Undefine
7822 SYMBOLS_NEED_BACKPOINTERS before defining it.
7823
7824 * subsegs.c (subseg_new_rest): Now static.
7825
7826 * read.c (pseudo_set): Better error message for difference of
7827 symbols in different frags.
7828
7829 * Makefile.in (check): Pass down some new variables, indicating
7830 pathname or program name for cc, nm, objdump.
7831
7832 * as.h (OUTPUT_FLAVOR): New macro.
7833 * config/tc-sparc.c (tc_gen_reloc): Use OUTPUT_FLAVOR.
7834
7835 * configure.in: Initialize bfd_gas properly. Warn that ELF
7836 support is incomplete.
7837
7838Thu Apr 15 22:39:05 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7839
7840 * read.c (float_cons): Accept null pointer return from md_atof.
7841 * config/tc-m68k.c (md_atof): Return null for success.
7842 * config/tc-sparc.c (md_atof): Ditto.
7843
97a6070c
RP
7844Thu Apr 15 16:04:39 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7845
7846 * doc/as.texinfo: formatting and comment cleanups; show SPARC
7847 alternative options in same style as other machines; simplify some
7848 conditional use; include GPL as separate file (from texinfo dir)
7849
7850 * doc/Makefile.in: (as.info) include directory containing GPL in
7851 makeinfo search path
7852
7853 * doc/h8.texi: new file; conditional settings for GAS manual
7854 on Hitachi chips
7855
7856Tue Apr 13 15:31:40 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7857
7858 * doc/as.texinfo: mention SPARC architecture options.
7859
be2f6bd6
ILT
7860Fri Apr 9 17:43:11 1993 Ken Raeburn (raeburn@cygnus.com)
7861
7862 * configure.in: Rearranged whitespace in per-host/per-target
7863 sections. Added hooks for dropping in HPPA support (not included
7864 yet). Separate out overrides of variables based on target format
7865 and bfd-gas selection from actual target-specific commands. Add
7866 error message for recognized but unsupported format name.
7867
349f20de
ILT
7868Fri Apr 9 09:05:47 1993 Ian Lance Taylor (ian@cygnus.com)
7869
7870 * config/obj-ecoff.h (ecoff_build_lineno): Make ilineMax in
55ff56bd 7871 symbolic header match cline in FDR; the native linker seems to
349f20de
ILT
7872 want that.
7873
5316696f
DZ
7874Thu Apr 8 15:51:28 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7875
7876 * doc/Makefile.in: as.texinfo is in $(srcdir). Use
7877 $(srcdir)/as.texinfo explicitly in several places
7878
8ac18b21
RP
7879Thu Apr 8 15:15:02 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7880
132239bf 7881 * doc/Makefile.in: update dvi, clean targets for new source
8ac18b21
RP
7882 file structure
7883
d565311f
ILT
7884Thu Apr 8 12:52:46 1993 Ian Lance Taylor (ian@cygnus.com)
7885
7886 * config/ho-decstatn.h: Define BROKEN_ASSERT if not __GNUC__,
7887 rather than undefining know.
8ac18b21 7888 * configure.in: Match ultrix*, not just ultrix.
d565311f 7889
0742a6fd
RP
7890Wed Apr 7 20:18:10 1993 Roland H. Pesch (pesch@fowanton.cygnus.com)
7891
7892 * doc/as.texinfo: converted conditional markup to use new
7893 Texinfo facilities, avoiding m4.
7894
7895 * doc/as-all.texinfo, all.m4, pretex.m4: deleted.
7896
7897 * doc/Makefile.in: recast doc configuration to use a link to an
7898 included texinfo file.
7899
7900 * doc/all.texi: settings for generic form of documentation.
7901
7902Tue Apr 6 11:56:21 1993 Ian Lance Taylor (ian@cygnus.com)
7903
7904 * read.c (cons): Zero out frag when creating reloc.
7905
367fc835
ILT
7906Mon Apr 5 09:41:58 1993 Ian Lance Taylor (ian@cygnus.com)
7907
84e4920f
ILT
7908 * config/tc-mips.c (gp_reference): Certain magic symbols can never
7909 be referenced off the GP register.
7910
367fc835
ILT
7911 * app.c (do_scrub_next_char): Handle states 9 and 10 correctly
7912 when dealing with characters of type LEX_IS_TWOCHAR_COMMENT_1ST,
7913 LEX_IS_STRINGQUOTE, and LEX_IS_ONECHAR_QUOTE.
7914
7915 * config/te-irix.h: New file; irix needs a different LOCAL_LABEL
7916 definition from other MIPS targets.
7917 * configure.in (mips-*-irix): Use emulation irix.
7918
dd4227d3
SC
7919Sun Apr 4 15:21:09 1993 Steve Chamberlain (sac@thepub.cygnus.com)
7920
7921 * config/tc-h8500.c: Get relax size of branch instructions right,
7922 (get_operand): Parse @sp+ correctly.
7923
be2f6bd6
ILT
7924Fri Apr 2 15:59:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7925
7926 * subsegs.h (segment_info_type) [BFD_ASSEMBLER]: Don't include
7927 COFF section header field.
7928
7929 * configure.in: Print error message if host or target is not
7930 supported.
7931
7932 * configure.in: If with-bfd-assembler, use obj-coff instead of
7933 obj-coffbfd.
7934
7935 * config/ho-generic.h: Include string.h.
7936
ed364bb6
ILT
7937Fri Apr 2 08:54:57 1993 Ian Lance Taylor (ian@cygnus.com)
7938
0433135d
ILT
7939 * config/tc-mips.h (LOCAL_LABEL): Treat any label starting with
7940 '$' as local, for any object file format.
7941
477b4b04
ILT
7942 * config/tc-mips.c (macro): Optimizations to branching code and a
7943 couple of bug fixes from ralphc@pyrps5.eng.pyramid.com (Ralph
7944 Campbell).
7945
ed364bb6
ILT
7946 * config/ho-irix.h: New file; if not gcc, define BROKEN_ASSERT.
7947 * configure.in (mips-sgi-irix*): Set gas_host to irix.
7948
670a50eb
ILT
7949Wed Mar 31 17:53:54 1993 Ian Lance Taylor (ian@cygnus.com)
7950
7951 * subsegs.c (subseg_new): Set output_section of new section.
7952 * as.c (perform_an_assemly_pass): Don't set output_section here.
7953 * expr.c (expr_part, expr): Turn off section assertions for ECOFF,
7954 since it has additional sections.
7955 * read.c (s_lcomm): For MIPS ECOFF, put small objects in .sbss,
7956 not bss_section.
7957 * config/obj-ecoff.h (TARGET_SYMBOL_FIELDS): Added
7958 ecoff_undefined field.
7959 * config/obj-ecoff.c (obj_symbol_new_hook): Initialize
7960 ecoff_undefined field.
7961 (add_file): If using stabs, just output a stabs symbol rather than
7962 creating a new fdr.
7963 (obj_ecoff_begin, obj_ecoff_bend): Ignore line number by reading
7964 it with get_absolute_expression, rather than skipping it by hand.
7965 (obj_ecoff_loc): If using stabs, just output a stabs symbol rather
7966 than ECOFF line number information.
7967 (obj_ecoff_stab): Accept non-zero values for stabs line number.
7968 (ecoff_build_symbols): Set ifilesym correctly. Set storage class
7969 to small, undefined and/or readonly sections if appropriate.
7970 Don't output symbol names containing \001 characters.
7971 (ecoff_frob_file): Make sure at least one fdr is output.
7972 * config/tc-mips.h: Define TC_MIPS.
7973 * config/tc-mips.c (g_switch_value): New static variable.
7974 (md_assemble): Set gp size of output BFD.
7975 (gp_reference): New function; returns 1 if expression can be
7976 accesssed via gp. Always returns 0 if not using ECOFF.
7977 (macro_build): Convert BFD_RELOC_LO16 to BFD_RELOC_MIPS_GPREL if
7978 possible.
7979 (macro): Generate sequences using gp if possible.
7980 (md_parse_option): Ignore -EL and -EB. Parse -G.
7981 (md_apply_fix): Added BFD_RELOC_MIPS_GPREL to ignored case.
7982 (s_change_sec): Handle .rdata and .sdata for ECOFF.
7983 (s_extern): Mark symbol as external. Set ecoff_undefined field.
7984
2b1b5697
KR
7985Tue Mar 30 10:11:41 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
7986
670a50eb
ILT
7987 * output-file.c (output_file_create): Don't call as_perror for
7988 filename rejected by application.
7989
7990 * as.c (main) [BFD_ASSEMBLER]: If errors occur, close and unlink
7991 the output file.
7992
4b061a2a
KR
7993 * doc/as.texinfo: Don't use @value in node names for the moment;
7994 references don't appear to work right.
7995
4478def8
KR
7996 * as.h (const, volatile): Put these definitions back, and use
7997 them.
7998
2b1b5697
KR
7999 * doc/as.texinfo: First pass at using new texinfo features --
8000 variables, conditional tests. Far from complete.
8001
8002Mon Mar 29 16:05:40 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8003
8004 * read.c: Temporary hack to handle some 64-bit constants. This
8005 should be redone later.
8006 (target_big_endian): Declare.
8007 (big_cons): If it's set, reverse order of bytes being copied.
8008 * config/tc-sparc.c (md_begin): Set target_big_endian.
8009
8010 * read.c (s_ignore): Delete declaration of is_end_of_line.
8011
8012 * config/obj-coffbfd.c (yank_symbols): Build list of file symbol
8013 forward pointers properly.
8014
e02eaa59
SC
8015Mon Mar 29 13:47:33 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8016
8017 * config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
8018 wasn't being stored into scnhdr.
8019 * config/obj-coffbfd.h: Add prototype of s_get_segment.
8020 * read.c (TC_START_LABEL): Default definition.
8021 (read_a_source_file): Use TC_START_LABEL macro to work out
8022 if a label has been seen.
8023
543d88e4
ILT
8024Mon Mar 29 12:56:56 1993 Ian Lance Taylor (ian@cygnus.com)
8025
c39b3eba
ILT
8026 * configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
8027 the bottom (make expands variables in dependencies when the
8028 dependencies are read, not when they are used).
8029
543d88e4
ILT
8030 * config/obj-coffbfd.c (fill_section): Don't set NOLOAD bit for
8031 a29k .bss section; the mondfe program doesn't like it.
8032
2b1b5697
KR
8033Sun Mar 28 08:12:53 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8034
8035 * config/tc-m68k.c: Use PARAMS macro, and use CONST instead of
8036 const.
8037 (current_architecture): Don't need initializer.
8038
8039Fri Mar 26 08:12:48 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8040
8041 * doc/none.m4: Define Z8000.
8042 * doc/Makefile.in (as-*.texinfo): Refer to $(srcdir). Remove the
8043 texinfo file before recreating it.
8044 (TEXI2DVI): Need to set TEXINPUTS if "make as.dvi" is to work in
8045 this directory.
8046 (srcdir): Delete second, bogus definition.
8047 (as.info): Look for as-*.texinfo in current directory rather than
8048 in $(srcdir).
8049 (as.dvi): Ditto.
8050 (dvi): New rule.
8051 * doc/configure.in: Create links to all as-*.texinfo files in the
8052 source directory, if that's not the current directory.
8053
8054 * configure.in (per-host): Accept MIPS host with BSD version
8055 number.
8056 (per-target): Classify i486 as i386. Use generic cpu_type instead
8057 of target_cpu in selecting format etc.
8058
8059 * app.c (do_scrub_next_char): Use .appfile, not .app-file.
8060 * read.c (potable): Change .app-file to .appfile.
8061
8062 * config/ho-decstatn.h: Renamed from ho-decstation.h.
8063 * configure.in: Adjusted.
8064
8065 * config/obj-bfd-sunos.*: Unused; deleted.
8066
8067 * Makefile.in (version.c, vers-stamp): Deleted.
8068 (config.h): Define GAS_VERSION.
8069 * as.c (version_string): Deleted declaration.
8070 (main): Look for GAS_VERSION instead.
8071
8072 * doc/as.texinfo: Updated description of -a* (listing) options,
8073 and describe how to pass them through from gcc.
8074
8075 * config/obj-coffbfd.c (do_relocs_for): Don't allocate storage or
8076 process relocs if there aren't any relocs to process. Avoids
8077 malloc/free bug on SCO too.
8078
8079 * as.h: Move local include files below system include files, to
8080 avoid some redefinition complaints on some systems.
8081 (const, volatile): Don't need these conditionally defined if we
8082 use CONST and VOLATILE from ansidecl.h.
8083 (seg_name): Use CONST, not const.
8084
543d88e4
ILT
8085Fri Mar 26 10:22:04 1993 Ian Lance Taylor (ian@cygnus.com)
8086
8087 * config/tc-mips.c: Reindented to GNU standards.
8088
2c19a57c
ILT
8089Thu Mar 25 08:59:14 1993 Ian Lance Taylor (ian@cygnus.com)
8090
61001d96
ILT
8091 * config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
8092 (fixup_segment): Add a29k special case; the linker is not prepared
8093 to see a segment offset here.
8094
2c19a57c
ILT
8095 * app.c (do_scrub_next_char): Added new state, 10, modifying state
8096 9 to only keep a space in between identifier characters.
8097
afcc637a
DZ
8098Wed Mar 24 02:16:22 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
8099
2d4bef5e
DZ
8100 * Makefile.in: add dvi target; as-$(config).texinfo might live in
8101 srcdir, might be in objdir.
afcc637a
DZ
8102
8103 * doc/Makefile.in: dvi depends on as.dvi
8104
80c8fd72
DZ
8105Mon Mar 22 23:59:13 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8106
8107 * Makefile.in: add installcheck target
8108
fd4b7c25
KR
8109Mon Mar 22 16:25:57 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
8110
8111 * config/tc-sparc.c (sparc_ip): Add support for membar mask names.
8112 Add missing colons in prefetch error messages. Add support for
8113 ASI names.
8114
1369949e
ILT
8115Mon Mar 22 10:19:00 1993 Ian Lance Taylor (ian@cygnus.com)
8116
8117 * config/tc-mips.c (macro): Use $AT for any floating point load.
8118
63cdddad
KR
8119Sat Mar 20 12:50:51 1993 Ken Raeburn (raeburn@urth.cygnus.com)
8120
8121 * config/tc-m68k.c (m68k_ip): For operand type 'M', reject
8122 bignums, but don't emit error message.
8123
69498fa2
JW
8124Fri Mar 19 21:02:19 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
8125
8126 * Makefile.in (targ-cpu.o): Depend on config.h.
8127
f6a91cc0
ILT
8128Wed Mar 17 16:44:06 1993 Ian Lance Taylor (ian@cygnus.com)
8129
8130 * app.c (do_scrub_next_char): Added new state, 9, to avoid
8131 dropping a space immediately following an identifier.
8132 * expr.c, write.c: Rewrote assert expressions to not use multiple
8133 lines; I don't think that can be done portably.
8134 * config/tc-mips.c (macro): Use $AT if target register is zero in
8135 load instruction, which it can be for a floating point load.
8136
a36f6645
ILT
8137Mon Mar 15 12:17:28 1993 Ian Lance Taylor (ian@cygnus.com)
8138
3d3c5039
ILT
8139 * write.c (write_contents): Compute the relocs before writing out
8140 the section contents.
8141 * config/obj-ecoff.h, config/obj-ecoff.c: Numerous changes to get
8142 symbol table and values right.
8143 * config/tc-mips.h (LOCAL_LABEL): If OBJ_ECOFF, any label starting
8144 with $L is local.
8145 * config/tc-mips.c (tc_gen_reloc): If OBJ_ECOFF, adjust the addend
8146 by the section vma.
8147
8148 * config/z8k.mt (TARG_CPU_DEPENDENTS): The relevant file is
8149 z8k-opc.h, not z8k.h.
8150
a36f6645
ILT
8151 * config/obj-coffbfd.c (obj_coff_endef): Correct test for .bf
8152 symbol.
8153
2a697fa4
DZ
8154Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8155
8156 * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
8157
f2f7d044
ILT
8158Fri Mar 12 12:00:07 1993 Ian Lance Taylor (ian@cygnus.com)
8159
8160 * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
8161 to be on a single line.
8162
ed099874
KR
8163Thu Mar 11 17:56:22 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8164
8165 * Makefile.in (config.h): Create file, writing out definitions of
8166 target cpu, alias, and canonical name.
8167 (ALL_CFLAGS): No longer define TARGET_CPU.
8168
8169 * Makefile.in (check): Print a message, instead of quitting
8170 silently.
8171
8172 * as.c (main): Don't catch any signals, for now.
8173
8174 * version.c: Deleted.
8175 * Makefile.in: Generate it, putting in only the version number
8176 itself.
8177 (VERSION): New variable.
8178 * as.c: Include config.h.
8179 (main): Reformatted version string. Include target alias. Don't
8180 print if not requested (i.e., unknown -v argument).
8181
8182 * as.c (stralloc): Deleted.
8183 (main): Call strdup instead.
8184
8185 * configure.in: Handle all 68300 series chips.
8186 * config/tc-m68k.c: Include config.h.
8187 (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
8188 series cpus as defaults.
8189 (md_parse_option): Accept some m68300 series CPUs as defaults.
8190
8191Wed Mar 10 17:41:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8192
8193 * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
8194 not already defined.
8195 (main, got_sig): Use them.
8196 * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
8197 values.
8198
8199Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
8200
8201 * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
8202 support.
8203
8204 * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
8205 OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
8206 (struct loc, struct proc, struct file): Moved to tc-mips.c within
8207 #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
8208 * config/tc-mips.c: Rearranged for ECOFF support. Added
8209 prototypes for all static functions. Moved existing minimal
8210 debugging format support info #ifndef OBJ_ECOFF blocks.
8211 (macro_build_lui): Eliminated sign_extend argument, because ECOFF
8212 does not support a non sign extended high 16 bits reloc. Adjusted
8213 all callers accordingly.
8214 (tc_get_register): Renamed from get_register, and made non-static.
8215
8216 * config/mips-big.mt, config/mips-lit.mt: New files. Define
8217 TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
8218 respectively.
8219 * configure.in (mips-*-bsd*): Use gas_target mips-lit.
8220 (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
8221 obj_format ecoff and gas_target mips-lit or mips-big.
8222
c5d4bc88
KR
8223Tue Mar 9 07:43:01 1993 Ken Raeburn (raeburn@cygnus.com)
8224
8225 * version.c: Bump to version 2.0.1.
8226
fefba3a5
ILT
8227Tue Mar 9 07:40:06 1993 Ian Lance Taylor (ian@cygnus.com)
8228
8229 * write.c (chain_frchains_together): Check that seg_info (section)
8230 is not NULL.
8231 (write_object_file): Call obj_frob_file after setting the symbols,
8232 not before.
8233
2b1b5697
KR
8234Tue Mar 9 00:00:00 1993 Ken Raeburn (raeburn@cygnus.com)
8235
8236 * Version 2.0 released.
8237
fefba3a5
ILT
8238Mon Mar 8 14:57:10 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8239
8240 * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
8241
8242Fri Mar 5 09:05:55 1993 Ian Lance Taylor (ian@cygnus.com)
8243
8244 * read.h: Define stringer here.
8245 read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
8246 places.
8247
bf449293
SC
8248Thu Mar 4 11:52:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8249
8250 * read.c (s_space): Multiply repeat count by mult, not fill.
8251
9471a360
KR
8252Thu Mar 4 05:20:42 1993 Ken Raeburn (raeburn@cygnus.com)
8253
8254 * read.c: Include ctype.h.
8255
1101551c
KR
8256Wed Mar 3 10:41:46 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8257
8258 Patches from Eric Youngdale:
8259 * make-gas.com: Find obstack.obj if it's not in the current
8260 directory.
8261 * read.c (s_ignore): Don't declare is_end_of_line. It's
8262 redundant, and triggers a VMS gcc compiler bug.
8263
8264 * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
8265 current segment as an argument. (Ignored in all cases but VMS.)
8266 All callers and definitions changed.
8267
5e4cddb7
ILT
8268Tue Mar 2 11:56:19 1993 Ian Lance Taylor (ian@cygnus.com)
8269
8270 * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
8271 case compile again.
8272
f3ca2a64
KR
8273Tue Mar 2 08:53:34 1993 Ken Raeburn (raeburn@cygnus.com)
8274
8275 * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
8276 so "~0x80" won't be rejected.
8277
8278 * config/obj-elf.c: No longer include elf/reloc.h.
8279 (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
8280 (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
8281 routines.
8282 (obj_elf_xstab): New routine.
8283 (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
8284 argument to s_ignore. Put "#if 0" around unused code.
8285 (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
8286 Call elf_xstabs for .stabs and .xstabs operators.
8287
8288 * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
8289
8290 * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
8291 present.
8292
8293 * configure.in: mips-bsd configuration was missing format spec.
8294 Should use aout.
8295
8296 * Makefile.in (Makefile): Depends on configure.in.
8297
8298 * config/tc-mips.c (append_insn): Don't check for alignment of
8299 frag in memory; alignment of instructions in section is a separate
8300 matter.
8301
8302 * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
8303 C availability.
8304
8305 * listing.h: Always provide function declarations, not macros, so
8306 pcc won't lose.
8307
7687d89b
JG
8308Tue Mar 2 00:50:43 1993 John Gilmore (gnu@cygnus.com)
8309
8310 * CONTRIBUTORS: Update Gilmore entry.
8311
fd4b7c25
KR
8312Mon Mar 1 12:03:16 1993 Jim Wilson (wilson@sphagnum.cygnus.com)
8313
8314 * config/tc-sparc.c (sparc_ip): Correctly assemble prefetch
8315 instructions. Accept integer prefetch function numbers.
8316
7687d89b
JG
8317Wed Feb 24 14:58:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8318
fd4b7c25
KR
8319 * config/tc-sparc.c (s_xword): Now call big_cons, so large
8320 constants are accepted, but symbolic values are not. GCC will not
8321 generate the latter currently.
8322
7687d89b
JG
8323 * frags.c (frag_init): New function.
8324 (zero_address_frag, bss_address_frag): Now initialized at run
8325 time.
8326 * as.c (main): Call frag_init.
8327
160b7f0f
ILT
8328Wed Feb 24 10:32:42 1993 Ian Lance Taylor (ian@cygnus.com)
8329
8330 * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
8331 Don't unget ch2 if we didn't get it.
8332
0cca30f3
KR
8333Wed Feb 24 04:14:07 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8334
8335 * doc/Makefile.in (TEXIDIR): Updated for new layout.
8336
8337 * config/tc-sparc.c (s_common): Add support for ELF version.
8338 (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
8339 * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
8340 New macros.
8341 (md_convert_frag): New macro.
8342
8343 * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
8344 symbol, fix the offset so "+2" isn't required.
8345
8346 * config/tc-i960.c (line_comment_chars, line_separator_chars):
8347 Define as common/bss.
8348 (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
8349 initializers are sufficient.
8350
8351 * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
8352 (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
8353 (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
8354 (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
8355 * config/obj-aout.c: Use PARAMS macro for declarations. Remove
8356 "IGNORE_DEBUG" conditional, since both branches are identical.
8357 Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
8358 referencing symbol structure members.
8359 (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
8360
8361 * as.h (struct frag): Reordered a couple of fields for better
8362 packing.
8363
8364 * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
8365 section info.
8366 (write_contents) [BFD_ASSEMBLER]: New function.
8367 (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
8368 fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
8369 obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
8370 (fixup_segment): Make sure common-section symbols get treated the
8371 same as undefined symbols.
8372 (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
8373 bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
8374 section info.
8375 * write.h (fix_new): Update prototype.
8376
8377 * tc.h (md_operand, md_convert_frag, tc_headers_hook,
8378 md_section_align, md_undefined_symbol): Don't provide prototypes
8379 if these are defined as macros.
8380 (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
8381 section passed.
8382
8383 * symbols.c (symbol_new): Argument NAME is now pointer to const.
8384 Simplified STRIP_UNDERSCORE code. Remove assumptions about null
8385 pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
8386 BFD symbol.
8387 (colon): Display other/desc fields of redefined symbol only if
8388 S_GET_OTHER and S_GET_DESC are defined.
8389 (symbol_make): Argument NAME is now pointer to const.
8390 (symbol_find, symbol_find_base): Likewise.
8391 (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
8392 * symbols.h: Fix prototypes for new const arguments. Add
8393 prototypes for BFD_ASSEMBLER S_* functions.
8394
8395 * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
8396 for changing to an existing section.
8397 (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
8398 called by subseg_new and subseg_set.
8399 (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
8400 given section name and subseg number.
8401 (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
8402 new section/subsection.
8403
8404 * read.c: Don't include ctype.h.
8405 (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
8406 for now; should be machine-dependent.
8407
8408 * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
8409 targets, forcing BFD use.
8410
8411Wed Feb 17 18:59:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8412
8413 * config/tc-sparc.c: Use PARAMS macro for static function
8414 declarations. Use BFD_RELOC_ macros everywhere, with
8415 compatibility macros declared for non-BFD mode.
8416 (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
8417 instead of enum reloc_type.
8418 (emit_sparc_reloc): Commented-out function deleted.
8419 (md_convert_frag): Deleted.
8420 (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
8421 (md_apply_fix): Changed calling sequence (conditionally) for BFD
8422 version.
8423 * config/tc-sparc.h (md_convert_frag): New macro.
8424
8425 * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
8426 not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
8427 of referencing fields directly.
8428
8429 * write.c (cvt_frag_to_fill): New function; extracted from
8430 write_object_file.
8431 (write_object_file) [! BFD_ASSEMBLER]: Call it.
8432 (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
8433 and set its size and flags.
8434
8435 * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
8436 fields with BFD equivalents. Turn on back-pointers, and add
8437 target-specific fields at end.
8438
8439Thu Feb 11 09:20:37 1993 Ian Lance Taylor (ian@cygnus.com)
8440
8441 * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
8442 (write_object_file): Set it here instead, so that fixup_segment
8443 can see the correct value.
8444
8445Mon Feb 8 13:56:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8446
8447 * write.c (write_object_file): Check for errors and warnings and
8448 bail out before processing contents.
8449 (chain_frchains_together_1): New function, does most of the work
8450 of remove_subsegs.
8451 (chain_frchains_together) [BFD_ASSEMBLER]: New function.
8452 (remove_subsegs) [! BFD]: Call it.
8453 (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
8454 structures and routines.
8455
8456 * config/obj-elf.*: New files.
8457
8458 * config/mips.mt, config/rs6000.mt: Deleted.
8459
8460 * config/h8300.mt: Don't specify compiler here.
8461
7687d89b 8462 * config/z8k.mt: The z8k code depends on the z8k opcode table,
0cca30f3
KR
8463 not the h8300 one.
8464 * config/tc-z8k.h: Comment fix.
8465
8466 * write.c: Reordered some functions for better inlining.
8467 (fixup_segment): Linkrelax code is no longer conditional on
8468 TC_I960.
8469
8470Thu Feb 4 12:45:16 1993 Steve Chamberlain (sac@thepub.cygnus.com)
8471
8472 * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
8473 obj-coffbfd.h}: support for the H8/500
8474
8475Wed Feb 3 19:28:18 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8476
8477 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
8478 * write.c (write_object_file): Not here.
8479 (fix_new): Initialize fx_addnumber.
8480
8481 * listing.c: Don't include target-cpu.h explicitly, since as.h
8482 includes it.
8483
8484Thu Jan 28 00:35:40 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8485
8486 * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
8487 *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
8488 (struct fix): Reordered fields for compactness and efficiency.
8489 Converted some logical fields to 1-bit fields.
8490
8491 * config/obj-aout.h: Use PARAMS.
8492 [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
8493 N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
8494
8495 * read.c: Don't include listing.h; as.h includes it. Removed
8496 DONTDEF code.
8497 [BFD_ASSEMBLER]: Include subsegs.h.
8498 (old_buffer, new_broken_words): Default initialization is
8499 sufficient.
8500
8501 * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
8502 to 0, define stdoutput.
8503 (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
8504 Call bfd_set_arch_mach.
8505 (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
8506 bfd_close_all_done. Call bfd_perror on failure.
8507 (output_file_append) [BFD_ASSEMBLER]: Don't define.
8508
8509 * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
8510
8511 * subsegs.h (segment_info_type): Always define. Omit field scnhdr
8512 if not MANY_SEGMENTS. Define new field bfd_section if
8513 BFD_ASSEMBLER.
8514 (seg_info): New macro.
8515
8516 * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
8517 variables, and some irrelevant comments.
8518
8519 * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
8520 (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
8521 * configure.in: Permit --with-bfd-assembler now, with a warning.
8522 Variable need_bfd is now a boolean, as is new variable bfd_gas.
8523 Set BFDDEF and BFDLIB in Makefile when appropriate.
8524
8525 * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
8526 (main): Refer to flag_always_generate_output instead of
8527 flagseen['Z'].
8528
8529 * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
8530 (*_section) [BFD_ASSEMBLER]: Define them.
8531 (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
8532 set section flags when appropriate.
8533 * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
8534 section is not absolute, undefined, or an assembler internal one.
8535 (absolute_section, undefined_section): Always define.
8536 * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
8537 switch statements into if-else trees.
8538 * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
8539 SEG_BSS and SEG_DATA.
8540
8541 * as.h (frag_now_fix): New macro.
8542 * symbols.c (colon): Use it.
8543
8544Wed Jan 27 21:43:53 PST 1993 Ralph Campbell (ralphc@pyramid.com)
8545
8546 * config/tc-mips.c: Added mips support for mips-dec-bsd.
8547 * config/tc-mips.h: Added mips support for mips-dec-bsd.
8548 * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
8549 * config/mips-opcode.h: Added mips support for mips-dec-bsd.
8550 * configure.in: Added mips support for mips-dec-bsd.
8551 * atof-generic.c: Define TRUE and FALSE if not defined.
8552
8553Thu Jan 21 12:48:19 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8554
8555 * version.c: Bumped version number to 1.93.05.
8556
8557Wed Jan 20 17:11:53 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8558
8559 * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
8560 (obj_emit_lineno): Don't need return at end of void function.
8561 (obj_symbol_new_hook): Ditto.
8562
8563 * config/tc-m68k.c: Removed some unused code.
8564 (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
8565
8566 * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
8567 offset field is set.
8568
8569Fri Jan 8 05:44:49 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8570
fd4b7c25
KR
8571 * config/tc-sparc.c (sparc_ip): For %uhi and %ulo, if not
8572 ENV64, emit no reloc.
8573 (md_pseudo_table): For ".xword", call s_xword.
8574 (s_xword): New function.
8575
0cca30f3
KR
8576 * config/tc-sparc.c (architecture_requested, warn_on_bump,
8577 md_relax_table): Use default zero initialization.
8578 (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
8579 latter, instead of selecting with preprocessor conditionals.
8580
8581Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
8582
8583 * configure.in: recognise all sparclite variants
8584
8585Thu Jan 7 05:25:25 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8586
8587 * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
8588 accidentally changed to use subseg_change where it should have
8589 been subseg_new.
8590
6c5f9998
KR
8591Tue Jan 5 08:42:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
8592
0bd77bc4
KR
8593 * expr.c (operand): If character other than comma or newline is a
8594 logical end-of-line character, use the newline case.
0cca30f3
KR
8595 From Eric Youngdale:
8596 (operand): Set X_add_number field for floating-point numbers.
8597 (operand): Treat zero byte as end-of-operand.
0bd77bc4 8598
6c5f9998
KR
8599 * configure.in (per-target): Look for with_bfd_assembler option.
8600 For now, only accept "no", until the merge is done.
8601
0cca30f3
KR
8602 Merged changes from Eric Youngdale (youngdale@v6550c.nrl.navy.mil):
8603 * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
8604 config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
8605 * read.c: Finish conversion to S_* macros in the VMS only
8606 parts of the program. Add "const" modifier to hex_value.
8607 * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
8608 "ifdef OBJ_VMS".
8609 * expr.c: Add "const" modifier to hex_value.
8610 * symbols.c: Finish conversion to S_* macros in the VMS only
8611 parts of the program. Add "const" modifier to
8612 md_[long,short]_jump_size. Remove declaration of const_flag
8613 (which will be declared in obj-vms.h).
8614 * write.c: Add "const" modifier to md_[long,short]_jump_size.
8615 Fix arguments to VMS_write_object_file.
8616 * config-gas.com: New file. Script for VMS systems to set up the
8617 configuration to build gas for VMS, and create config.status.
8618 * make-gas.com: Redone to work with new scheme.
8619 * obj-vms.c: Patch to fix bug where we were not correctly parsing the
8620 stabs directives.
8621 * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
8622 will swap bytes if needed on a big endian system. Use throughout
8623 as needed.
8624 * obj-vms.c (obj_aout_stab): Add code to generate listing file.
8625 * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
8626 types of malformed stabs. Change parsing algorithm so that we are
8627 more certain of having all of the information that we need on hand.
8628 * obj-vms.c (final_forward_reference): New function, used to help
8629 resolve the data types of as many struct elements as possible
8630 when some part of the struct is not fully defined by the compiler.
8631 * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
8632 stabs directives.
8633 * obj-vms.c (VMS_write_object_file): Define all vtable psects
8634 as symbols as well in the object file. Look for external functions
8635 that start with "__vt.", and turn them into variables, since the
8636 g++ compiler is incapable of doing this.
8637 * tc-vax.c: Add '1' option for backward compatibility with older GCC
8638 versions.
8639 * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
8640 * input-scrub.c (as_where): Fix bug where as would crash if we did not
8641 have the name of the source file yet.
8642 * config/ho-vms.h: define HO_VMS, not HO_VAX.
8643
9d76a195
KR
8644Mon Jan 4 05:17:26 1993 Ken Raeburn (raeburn@cygnus.com)
8645
8646 * read.c (s_data): Always use "data_section", since it'll map to
8647 SEG_DATA or SEG_E1 if needed.
8648 (s_lcomm): Likewise with bss_section.
8649 (s_fill): Use memset, not bzero.
8650
8651Thu Dec 31 04:29:27 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8652
8653 * read.c: Deleted some code under "#ifdef DONTDEF" that was for
8654 handling GDB symbol table data.
8655
8656 * config/obj-aout.h (segment_name): Delete definition.
8657 (seg_name): Delete declaration.
8658 * config/obj-bout.h (segment_name, seg_name): Ditto.
8659 * config/obj-vms.h (segment_name, seg_name): Ditto.
8660 * config/obj-coff.h (segment_name): Ditto.
8661 * config/obj-coffbfd.h (segment_name): Ditto.
8662
8663 * Changes for BFD_ASSEMBLER:
8664 * obj.h (obj_crawl_symbol_chain): Declare only if not
8665 BFD_ASSEMBLER.
8666 (obj_header_append, obj_pre_write_hook): Ditto.
8667 * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
8668 (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
8669 (segment_name) If BFD_ASSEMBLER, look up BFD section name;
8670 otherwise, use seg_name array.
8671 (seg_name): Declare only if not BFD_ASSEMBLER.
8672 (section_alignment): Declare only if not BFD_ASSEMBLER.
8673 (big_section, reg_section, pass1_section, diff_section,
8674 absent_section, text_section, data_section, bss_section): If
8675 BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
8676 mapping to segT enum values.
8677 (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
8678 if these are used or defined, if BFD_ASSEMBLER.
8679 (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
8680 subseg_new split into two functions.
8681 (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
8682
8683 * as.h (volatile): Don't define if already defined.
8684 (had_errors, had_warnings): Provide prototypes for ANSI C even if
8685 NO_STDARG.
8686 (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
8687 declare with format attribute for -Wformat checking.
8688
85825401
ILT
8689Wed Dec 30 10:18:57 1992 Ian Lance Taylor (ian@cygnus.com)
8690
8691 * app.c, config/tc-*.c: Don't include read.h, since it is already
8692 included by as.h.
8693
8694 * These are based on patches from Minh Tran-le
8695 <mtranle@paris.intellicorp.com>.
8696 * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
8697 obj_format coffbfd and gas_target i386coff for target.
8698 (i[34]86-*-isc*): New host (uses sysv).
8699 * config/i386aix.mt: Removed (no longer used).
8700 * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
8701 (MINUS_G): Removed.
8702 (LDFLAGS): Added, defined as -shlib.
8703 * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
8704 * config/te-sco386.h (LOCAL_LABEL): Don't define.
8705 (DOT_LABEL_PREFIX): Define.
8706 * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
8707 name rather than L0\001.
8708 * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
8709 local_bss_counter.
8710 * symbols.c, symbols.h (local_bss_counter): Removed.
8711 * write.c (write_object_file): bss no longer uses
8712 local_bss_counter. Pass correct data and bss size to
8713 VMS_write_object_file.
8714 * config/obj-vms.c (VMS_write_object_file): Accept bss size as
8715 argument, rather than using local_bss_counter.
8716 * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
8717 * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
8718 * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
8719 (size_section): Restored sanity check.
8720 (do_relocs_for): Base section address on s_paddr rather than
8721 computing it. Adjust a29k R_IHIHALF special case to account for
8722 section paddr (used to require paddr to be zero). If there are no
8723 reclos, set s_relptr to 0. Set relocation size in object_headers.
8724 (fill_section): Always set s_vaddr here, removing
8725 ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
8726 NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
8727 Set STYP_INFO for .comment.
8728 (coff_header_append): Use object headers and H_{SET,GET}_* macros.
8729 Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
8730 (crawl_symbols): Handle 8 character section name correctly. Use
8731 H_{SET,GET}_* macros.
8732 (do_linenos_for): Set lineno size in object_headers.
8733 (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
8734 set s_vaddr here. If string_byte_count remains 4, set it back to
8735 0, and only write strings out if there are some. Call
8736 fill_section before do_relocs_for and do_linenos_for.
8737 (obj_coff_section): Handle optional quoted second argument giving
8738 section characteristics.
8739 (obj_coff_bss): Added to handle .bss.
8740 (obj_coff_ident): Added to handle .ident (puts string in .comment
8741 section).
8742 (obj_coff_lcomm): Put common symbols in .bss, not .data.
8743 (fixup_mdeps): Change to segment. Call frag_wane after
8744 md_convert_frag.
8745 (fixup_segment): Explicitly check S_IS_COMMON before making 386
8746 adjustment (already happened only for common symbols, but this is
8747 clearer).
8748 * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
8749 * config/tc-i386.c (s_bss): Don't use if I386COFF.
8750 (md_pseudo_table): Ignore .optim and .noopt.
8751 (tc_coff_sizemachdep): New function.
8752 * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
8753 compatibility.
8754 (LOCAL_LABEL): Removed definition.
8755 (DOT_LABEL_PREFIX): Defined.
8756
4539aa02
KR
8757Mon Dec 28 10:32:05 1992 Ken Raeburn (raeburn@cygnus.com)
8758
6d331d71
KR
8759 * app.c (app_push): Use memcpy, not bcopy.
8760 (do_scrub_next_char): For \", return " not '.
8761 (symbol_chars): Now const.
8762
4539aa02
KR
8763 * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
8764 and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
8765
8766 * config/obj-coff.h: Don't use #elif.
8767
8768 * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
8769 have it. (Reported by Noah Friedman, friedman@gnu.ai.mit.edu.)
8770
3eb802b5
ILT
8771Wed Dec 16 12:12:33 1992 Ian Lance Taylor (ian@cygnus.com)
8772
8773 * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
8774 already defined.
8775
be06bdcd
SC
8776Tue Dec 15 12:40:11 1992 Steve Chamberlain (sac@thepub.cygnus.com)
8777
8778 * app.c (do_scrub_begin): allow single quote strings if so
8779 configured.
8780
8781 * config/*z8k*: checkpoint
8782
8783Sun Dec 13 00:04:38 1992 Ian Lance Taylor (ian@cygnus.com)
8784
8785 * read.c (read_a_source_file): avoid calling xmalloc (0).
8786
016e0d42
ILT
8787Sat Dec 12 15:26:34 1992 Ian Lance Taylor (ian@cygnus.com)
8788
8789 * listing.c: Call xmalloc, not malloc; don't declare malloc.
8790
8791 * Changes to support SCO 3.2v4:
8792 * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
8793 SEG_BSS, fill with NOP_OPCODE.
8794 * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
8795 * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
8796 using ZERO_BASED_SEGMENTS.
8797 (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
8798 never set segment address for SEG_E2 (.bss) and don't write out
8799 SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
8800 (obj_coff_endef): Don't merge labels or symbols awaiting forward
8801 definitions, and don't merge tags with non-tags. Check for .bf
8802 rather than just checking whether the second character is b and
8803 the third character is f.
8804 (obj_coff_val): gcc can generate values which we don't handle
8805 correctly; discard information for now, since it only affects the
8806 debugging information.
8807 (tag_find_or_name): Don't insert tags in the symbol table.
8808 (yank_symbols): Don't merge labels.
8809 (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
8810 already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
8811 set segment address if ZERO_BASED_SEGMENTS.
8812 (obj_coff_section): Accept and ignore a trailing quoted string, as
8813 used in AT&T i386 syntax.
8814 (fixup_segment): Take segment as argument. On the i386, adjust PC
8815 relative addends by the segment vaddr.
8816 * tc-i386.h: Define SUB_SEGMENT_ALIGN.
8817 * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
8818 * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
8819
db33220f
KR
8820Tue Dec 8 00:06:48 1992 Ken Raeburn (raeburn@rtl.cygnus.com)
8821
016e0d42
ILT
8822 * config/obj-coffbfd.c: Include libcoff.h.
8823
db33220f
KR
8824 * version.c: Now version 1.93.
8825
dde624ef
KR
8826Mon Dec 7 00:39:09 1992 Ken Raeburn (raeburn@cygnus.com)
8827
db33220f
KR
8828 * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
8829 power-of-two alignment for .align.
8830
dde624ef
KR
8831 * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
8832 and leave everything else alone.
8833
8834Fri Dec 4 16:58:42 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8835
8836 * Makefile.in (as.new): Don't bother saving as.old.
8837
8838 * write.c: Conditionalize on OBJ_VMS, not VMS.
8839 (magic_number_for_object_file): Don't define if OBJ_VMS.
8840
8841 * config/obj-vms.c: Changes for traditional C.
8842
7f2cb270
KR
8843Thu Dec 3 01:24:07 1992 Ken Raeburn (raeburn@kr-pc.cygnus.com)
8844
8845 * config/ho-generic.h (malloc, realloc): Declare.
8846
8847 * Lots of comment/whitespace changes.
8848
8849 * write.h (struct fix): Some fields reordered, narrowed.
8850
8851 * read.c (MASK_CHAR): Define using C types, not magic number.
8852
8853 * as.c, input-file.c: Deleted some unused code.
8854
8855 * app.c, as.h: Doc fix.
8856
8857 * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
8858
8859 * as.h (xmalloc): Argument is long.
8860
8861 * xmalloc.c (error): Remove declaration; as.h takes care of it.
8862
0cca30f3
KR
8863 * doc/as.texinfo: Regrouped documentation of some command-line
8864 options. Updated options documentation for m68k. Some minor
8865 wording/punctuation changes.
8866
7f2cb270
KR
8867Mon Nov 30 11:42:11 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
8868
8869 * configure.in: Accept target OS "vms".
8870
8871 * symbols.c: Merged ANSI and non-ANSI function decls, using
8872 PARAMS macro.
8873
8874 * xmalloc.c: Just include as.h, don't bother trying to figure out
8875 other header files.
8876
8877 * strstr.c, strerror.c: Deleted.
8878 * Makefile.in: Deleted references.
8879
8880 * config/tc-ns32k.c: Don't include header file for string
8881 declarations; leave that to ho-*.h.
8882
8883Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
8884
8885 * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
8886 imported from FSF sources.
8887
8888 * messages.c (strerror): Declare unconditionally.
8889
8890 * as.h: Delete alloca and register definitions.
8891
8892 * config/atof-ieee.c (mask): Now const.
8893
8894 * obstack.c, obstack.h: Deleted.
8895
8896 * as.h (flag_readonly_data_in_text): New flag.
8897 * as.c (main): Set it for -R.
8898
8899 * as.h (flag_suppress_warnings): New flag.
8900 * as.c (main): Set it for -W.
8901 * messages.c (as_warn): Check it instead of flagseen['W'].
8902
8903 * as.h (flag_always_generate_output): New flag.
8904 * as.c (main): Set it for -Z.
8905
8906 * config/tc-sparc.h: Define NEED_FX_R_TYPE.
8907 * config/tc-a29k.h: Ditto.
8908 * write.h (struct fix): Don't conditionalize fx_r_type field on TC
8909 macros.
8910
8911 * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
8912 macro.
8913 * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
8914 obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
8915 write.h: Likewise.
8916 * read.c: Likewise.
8917
8918 * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
8919 xrealloc from xrealloc.c.
8920 * xrealloc.c: Deleted.
8921 * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
8922
8923 * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
8924 or vms ho- files.
8925
8926 * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
8927
8928 * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
8929 don't initialize it with NULL.
8930
8931 * config/ho-vax.h (M_VAX): Deleted; was unused.
8932
8933 * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
8934 New files imported from FSF version, contributed by Eric Youngdale.
8935 * README-vms-dbg, config/vms: Deleted.
8936
8937 * ChangeLog, config/ChangeLog: Merged.
8938
8939 * config/*tahoe*, configure.in: Tahoe support brought in from FSF
8940 version.
8941
8942 * input-file.c (input_file_open): Eliminate call to setvbuf.
8943 [USG] (setbuffer): Deleted macro.
8944
6efd877d
KR
8945Mon Nov 23 11:00:16 1992 Ken Raeburn (raeburn@cygnus.com)
8946
8947 * all files: Whitespace changes for GNU indentation style, done by
7f2cb270 8948 GNU `indent'. Some cleanup still needed, especially of comments.
6efd877d
KR
8949
8950 * configure.in: No te-386bsd.h file exists; don't try to use it.
8951
7f2cb270
KR
8952 * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
8953
8954 * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
8955 could be doing emulation.
8956
0cca30f3 8957Thu Nov 19 11:47:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
132239bf 8958
0cca30f3
KR
8959 z8000 documentation
8960 * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
8961 all modified.
8962
6efd877d
KR
8963Tue Nov 10 09:49:24 1992 Ian Lance Taylor (ian@cygnus.com)
8964
8965 * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
8966
8967 * subsegs.h: add extern to segment_info declaration.
8968
8969 * read.h: added extern declarations for comment_chars,
8970 line_comment_chars, and line_separator_chars.
8971 read.c, app.c: removed definitions of comment_chars,
8972 line_comment_chars, and line_separator_chars.
8973
7f2cb270
KR
8974 * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
8975 still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
8976 the register name.
8977 (insert_reg): put REGISTER_PREFIX before register names before
8978 putting them in the symbol table.
8979 * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
8980 M68KCOFF.
8981
8982 * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
8983 section.
8984
8985 * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
8986 comment_chars, line_comment_chars and line_seperator_chars
8987 consistently const, and always initialized them. Included read.h.
8988
8989Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
8990
8991 * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
8992 constant will not fit in an immediate field.
8993 (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
8994
8995Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com)
8996
8997 * obj-coff.c (callj_table): Delete global variable.
8998 (obj_emit_relocations): Define it locally here, and only if
8999 TC_I960 is defined.
9000
9001 * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
9002 (m68k_ip): Don't warn about bignum used as float bit-pattern.
9003
9004 * obj-coff.c: Replaced ANSI and non-ANSI function declarations
9005 with a single set using PARAMS macro.
9006
9007 * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
9008 of 2.
9009
9010 * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
9011
9012 * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
9013 so widening works consistently.
9014
6efd877d
KR
9015Wed Oct 28 08:52:34 1992 Ken Raeburn (raeburn@cygnus.com)
9016
9017 * version.c: Put conditional "const" before version_string, not
9018 before dummy function for VMS. Now version 1.91.03.
9019
9020 * app.c (do_scrub_next_char): Need double-\ before `000' to show
9021 printed rep of null character.
9022
7f2cb270
KR
9023Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com)
9024
9025 * obj-coffbfd.c (write_object_file): check return value of
9026 bfd_close_all_done.
9027
559d9aac
ILT
9028Tue Oct 20 12:18:08 1992 Ian Lance Taylor (ian@cygnus.com)
9029
7f2cb270
KR
9030 * Support for i386-sysv.
9031 obj-coffbfd.c (do_relocs_for, write_object_file): set segment
9032 addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
9033 be used to set them all to zero as was done before.
9034 (fill_section): segment addresses now set in write_object_file.
9035 (fill_section): Don't set STYP_NOLOAD for .bss section.
9036 (fixup_segment): 386 uses strange common symbol format.
9037 tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
9038 compatibility with SVR3.2 linker.
6efd877d
KR
9039 * configure.in: i386-sysv and i386-sco use coffbfd.
9040
559d9aac
ILT
9041 * app.c (do_scrub_next_char): discard whitespace after a label.
9042
0f8b9790
DZ
9043Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9044
9045 * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
9046 hosts, use the sysv configuration for solaris2
9047
7f2cb270
KR
9048Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9049
132239bf 9050 fix i960+non-bfd coff bit rot.
7f2cb270
KR
9051 * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
9052 support for C source listings. (obj_coff_endef): look in the right
9053 part of the symbol for the symbol name
9054
9055 * tc-m68k.c (get_num): make it work for all segments, not just the
9056 first three.
9057
984cf2d7
ME
9058Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
9059
9060 * configure.in: recognize i386-*-bsd emulation.
9061
9062Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
9063
9064 * configure.in: use the cpu-vendor-os triple for host and target
9065
7f2cb270
KR
9066Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9067
9068 * obj-coffbfd.c (write_object_file): don't fixup for the z8k
9069 * tc-z8k.c: lots of bug fixes
9070
9071Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com)
9072
9073 * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
9074 #elif, since it is not supported by old compilers.
9075 ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
9076 couple of expressions in tc-m68k.c.
9077
984cf2d7
ME
9078Mon Sep 28 21:18:24 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
9079
9080 * read.c (cons): If NO_RELOC is defined, use it.
9081
7f2cb270
KR
9082 * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
9083
9084Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com)
9085
9086 * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
9087 local labels to start with a .) and set REGISTER_PREFIX to %.
9088 tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
9089
5a0fc1d4
JG
9090Fri Sep 25 17:53:43 1992 John Gilmore (gnu@cygnus.com)
9091
9092 * messages.c: Comment changes.
9093
4959cb7b
KR
9094Fri Sep 25 14:12:58 1992 Ken Raeburn (raeburn@kyriath.cygnus.com)
9095
9096 * as.h: Test if __STDC__ is defined only, don't test its value.
9097 * messages.c: If __STDC__ is not defined, define NO_STDARG.
9098
5e9d510e
BK
9099Thu Sep 24 12:42:32 1992 Brendan Kehoe (brendan@rtl.cygnus.com)
9100
9101 * listing.c (debugging_pseudo): Add stabs and stabn as things to
9102 ignore.
9103
7f2cb270
KR
9104Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com)
9105
9106 * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
9107 sections starting from zero, rather than making them consecutive.
9108 This makes subsequent reloc calculations easier, esp if the object
9109 format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
9110 allocate lcomm in .data rather than in .bss. It seems that some
9111 tools can't cope with a non-zero sized bss before linkage.
132239bf 9112
7f2cb270
KR
9113Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
9114
9115 * tc-m68k.c: Replace "enum m68k_architecture" with "int"
9116 throughout. That enum no longer means what we thought it meant.
9117
9118 * tc-m68k.c (md_assemble, md_parse_option): Handle new
9119 "-mno-688[58]1" options.
9120
9121 * tc-m68k.c: Added CPU32 support.
9122
9123Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9124
9125 * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
9126
569dac15
JW
9127Tue Sep 15 17:25:05 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
9128
9129 * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
9130 Change LIBDEPS dependence to LIBS.
9131
efbfb612
ILT
9132Tue Sep 15 15:32:02 1992 Ian Lance Taylor (ian@cygnus.com)
9133
9134 * Makefile.in (install): if $(tooldir) exists, install as in
9135 $(tooldir)/bin.
9136
987b1491
ILT
9137Sun Sep 13 20:30:10 1992 Ian Lance Taylor (ian@cygnus.com)
9138
ca5e9d49
ILT
9139 * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
9140 .word is < -32768 or > 32767. The -J flag causes the error to be
9141 ignored. This is to catch over-sized switches generated by gcc on
9142 systems which don't support the broken .word hack.
9143 as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
9144 write.c (fixup_segment): check for signed .word overflow if
9145 WARN_SIGNED_OVERFLOW_WORD.
9146
987b1491
ILT
9147 * write.c (fixup_segment): fixed missing parens in expression
9148 checking for byte or word overflow.
9149
7f2cb270
KR
9150 * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
9151 obj-coffbfd.c (fixup_segment): check for signed .word overflow if
9152 WARN_SIGNED_OVERFLOW_WORD.
9153
9154 * obj-coffbfd.c (fixup_segment): fixed missing parens in
9155 expression checking for byte or word overflow.
9156
9157Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9158
9159 Support for i386 coff
132239bf 9160 * obj-coffbfd.h : added stuff
7f2cb270
KR
9161 * tc-i386.c (tc_coff_fix2rtype): new function
9162 * tc-i386.h : new coff defines
9163
b1520b1f
ILT
9164Thu Sep 10 09:23:15 1992 Ian Lance Taylor (ian@cygnus.com)
9165
9166 * input-scrub.c (input_scrub_push): call input_file_begin, not
9167 input_scrub_begin.
9168 messages.c (as_perror): print ": " between the passed in error and
9169 the strerror, like perror does.
9170
b53ccaac
ILT
9171Wed Sep 9 11:06:25 1992 Ian Lance Taylor (ian@cygnus.com)
9172
9173 * Makefile.in: use gas_target instead of modifying target_cpu.
9174 From Steve Chamberlain:
9175 Makefile.in: Handle m68*-*-coff*.
9176 read.c, read.h: add mult argument to s_space
9177
7f2cb270
KR
9178 * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
9179 Motorola and MIT syntax; gas can now assemble either type of
9180 file.
9181 tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
9182 From Steve Chamberlain:
9183 m68kcoff.mt: for m68k COFF.
9184 obj-coffbfd.c: (fixup_mdeps) added
9185 (size_section) removed bad sanity check
9186 (fill_section) added rs_machine_dependent case
9187 (write_object_file) call fixup_mdeps
9188 (fixup_segment) set fx_subsy to 0.
9189 obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
9190 handle m68k.
9191 tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
9192 pseudo ops.
9193
db4d20e5
KR
9194Tue Sep 8 17:10:58 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
9195
9196 * Makefile.in (LIBS): Include opcode library.
9197
e53ab768
KR
9198Fri Sep 4 18:20:56 1992 Ken Raeburn (raeburn@cygnus.com)
9199
9200 * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
9201 including zero are accepted, pass +0.0.
9202
7e10f53c
ILT
9203Sun Aug 30 21:24:46 1992 Ian Lance Taylor (ian@cygnus.com)
9204
9205 * Makefile.in: map "as" through program_transform_name when
9206 installing.
9207
0cca30f3
KR
9208 * doc/Makefile.in: map "as" through program_transform_name when
9209 installing.
9210
b0952e12
JW
9211Sat Aug 29 12:11:12 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
9212
9213 * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
9214
7f2cb270
KR
9215Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com)
9216
9217 * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
9218 tc-i960.c (md_ri_to_chars): Always output bout object file in
9219 little endian byte order (used to use endianness of host).
9220
b2f221a9
KR
9221Tue Aug 25 15:50:48 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
9222
9223 * config/tc-m68k.c (init_table): Now const. Always include 68851
9224 data, so that "bc" is available to 68040 cache instructions.
9225 Added "tt0", "tt1", and 68ec030 variants.
9226 (md_assemble): Complain if 68000 (only) and 68881 are specified.
9227 (enum _register): Added TT0, TT1.
9228 (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
9229 line number correctly in "internal error" messages. Don't print
9230 architecture-mismatch message for operand errors.
9231
9232 From Colin Smith (colin@wrs.com):
9233 * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
9234 than install_operand.
9235
ab737e51
SC
9236Tue Aug 25 15:13:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9237
9238 * listing.c (buffer_line): rewind to the start of include
9239 files, they might be included twice.
9240
7f2cb270
KR
9241 * z8k.c, z8k.h, z8k.mt: z8000 support stuff
9242
7121231f
ILT
9243Mon Aug 24 12:45:43 1992 Ian Lance Taylor (ian@cygnus.com)
9244
9245 * Makefile.in: defined TARGET_CPU for C code so that it can choose
9246 one element of a family.
9247
7f2cb270
KR
9248 * tc-m68k.c: use TARGET_CPU to choose default cpu type.
9249
9250 * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
9251 so that we can assemble hand-written libgcc code.
9252
4772861e
KR
9253Fri Aug 21 14:38:44 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
9254
9255 * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
9256 has already been formatted (but may still contain %-characters).
9257 (as_bad): Likewise.
9258
7f2cb270
KR
9259Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com)
9260
9261 * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
9262 written with indirection on the last two operands, which can be
9263 either data or address registers. Added a new operand type 'r'
9264 which accepts either register type. Added '(' to notend stuff in
9265 tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
9266
09952cd9
KR
9267Wed Aug 19 09:25:09 1992 Ken Raeburn (raeburn@cygnus.com)
9268
9269 * as.h (enum _relax_state): Start off at one, not zero, to better
9270 catch uninitialized-variable errors.
9271 (linkrelax): Declare new variable.
9272
9273 * messages.c (warning_count, error_count): Default initializer is
9274 sufficient.
9275
9276 * write.c: Merged some declarations, using PARMS macro.
9277 (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
9278 data_last_frag): No longer static.
9279 (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
9280 defined, call it. Change segments before calling fixup_segment.
9281 (relax_align): If linkrelax, provide extra padding.
9282
9283 * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
9284 their not having symbols associated.
9285
9286 * tc-i960.c (norelax, instrument_branches): Default initializer is
9287 sufficient.
9288 (linkrelax): Delete variable definition.
9289 (mem_fmt): Call fix_new with NO_RELOC.
9290 (tc_bout_fix_to_chars): Handle alignment relocs.
9291 (i960_handle_align): New function.
9292 * tc-i960.h (linkrelax): Delete declaration.
9293 (HANDLE_ALIGN): New macro; calls i960_handle_align.
9294 (NEED_FX_R_TYPE, NO_RELOC): New macros.
9295
a457f4d9
KR
9296Tue Aug 18 14:59:21 1992 Ken Raeburn (raeburn@cygnus.com)
9297
9298 * config/sparc.mt: New file. Grab sparc opcode table from bfd
9299 library.
9300
4b857710
ILT
9301Tue Aug 18 14:16:38 1992 Ian Lance Taylor (ian@cygnus.com)
9302
9303 * Makefile.in: always create installation directories. Removed
9304 MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
9305 FLAGS_TO_PASS to recursive makes.
9306
0cca30f3
KR
9307 * doc/Makefile.in: always create installation directories.
9308
f7e9bc5a
SC
9309Mon Aug 17 15:09:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9310
9311 * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
9312 being used with args swapped, causing occasional lossage when
9313 refilling buffers after an include file.
9314
c1c28543
KR
9315Mon Aug 17 13:18:51 1992 Ken Raeburn (raeburn@cygnus.com)
9316
9317 * messages.c (as_tsktsk): Use correct ANSI form for stdarg
9318 version. Discard bogus DONTDEF version.
9319 (as_warn, as_bad, as_fatal): Likewise.
9320
2e20e59a
KR
9321Fri Aug 14 18:31:14 1992 Ken Raeburn (raeburn@cygnus.com)
9322
9323 * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
9324 selected architecture, print a message saying so and listing what
9325 processors support it, rather than saying "operands mismatch".
9326
c8c7e0bf
KR
9327Thu Aug 13 13:53:19 1992 Ken Raeburn (raeburn@cygnus.com)
9328
9329 * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
9330
9331 * config/ho-rs6000.h (M_RS6000): Don't define it.
9332 (free): Declare it.
9333 (BROKEN_ASSERT): Define it if not __STDC__.
9334
7f2cb270
KR
9335Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com)
9336
9337 * sparc.mt: New file.
9338
9339Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com)
9340
9341 * tc-m68k.c: ".align N" means align to N-byte boundary *only*
9342 if TN_SUN3; otherwise align to 2**N-byte bounary.
9343
7fd3560a
SC
9344Thu Aug 6 12:10:39 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9345
9346 * read.c (s_fill): make the .fill size clamped error a warn and
9347 fix bug where 0's were always placed.
9348
7f2cb270
KR
9349 * config/tc-h8300.c: if a :8 is seen after an operand, fill top
9350 two bytes of any constant with 0xff:
9351
62594bd7
SC
9352Wed Aug 5 12:02:40 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9353
9354 * config/tc-m68k.c (md_pseudo_table): fix the .align thing
4f3569fa 9355 the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
62594bd7 9356
7f2cb270
KR
9357Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
9358
9359 * tc-m68k.c (try_index): Error if index scaling specified and
9360 assembling for an older CPU than a 68020.
9361
680227f3
KR
9362Sat Aug 1 19:10:13 1992 Ken Raeburn (raeburn@cygnus.com)
9363
9364 * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
9365 fx_offset into account.
9366
c51ccfd5
KR
9367Fri Jul 31 21:53:28 1992 Ken Raeburn (raeburn@cygnus.com)
9368
9369 * configure.in (mips host): Accept "ultrix" with version number.
9370
9371 * expr.c (floating_constant): Separate "=-" to avoid confusing
9372 ancient or broken compilers.
9373
9374 * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
9375 processor/opcode mismatch, so reword the error message.
9376 (md_assemble): If no CPU has been set (even if FPU/PMMU
9377 characteristics have been), default to 68020. Don't need extra
9378 quotes around error string.
9379
14f1fc24
JW
9380Fri Jul 31 12:26:34 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
9381
9382 * read.c (potable): Revert sac's incorrect change made Jul 13.
9383 Align really is supposed to be ptwo not nbytes.
9384
9385Mon Jul 20 02:51:59 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
9386
9387 * Makefile.in: _Do_ include libiberty. (from sef)
9388
9389Fri Jul 17 15:15:28 1992 Ken Raeburn (raeburn@cygnus.com)
9390
9391 * expr.c (integer_constant): Handle "0f" and "0b" label references
9392 properly.
9393
462088b8
SC
9394Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9395
9396 * write.c (fixup_segment): if relaxing, don't do anything.
9397 * config/obj-bout.[ch] : maintain the a_relaxable file header info
9398 * config/tc-i960.c: new option -linkrelax
9399
9400Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9401
9402 * expr.c (expr): allow SEG_BSS in expressions
9403 * read.c (potable): align should be nbytes, not ptwo!
9404 * write.c (write_object_file): extra glue for new bss attributes
9405 (relax_segment): SEG_BSS is ok now
9406 * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
9407
7f2cb270
KR
9408Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
9409
9410 * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
9411
462088b8
SC
9412Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
9413
9414 * configure.in: recognize m680x0 as having sun3 emulation mode for
9415 vxworks environment.
9416
9417
0b0b5dba
DHW
9418Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com)
9419
9420 * Makefile.in: Add program_suffix (parallel to program_prefix)
9421
7c2d4011
SC
9422Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9423
9424 * app.c (process_escape): new function to handle escapes the right
9425 way, (do_scrub_next_char): use new function
9426 * cond.c (s_ifdef): do ifdef/ifndef right
9427 * read.c (s_fill): make the , expressions optional like the doc
9428 says
9429 * config/tc-h8300.[ch]: better warnings
9430
90d49457
SC
9431Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9432
65bfcf2e
SC
9433 * subsegs.c (subsegs_begin): create bss0_frchainP in the same was
9434 as data0_frchainP
9435
9436 * write.c (write_object_file): various changes to handle data in
132239bf 9437 the BSS segment in much the same was as stuff in the DATA segment.
65bfcf2e 9438
7f2cb270
KR
9439 * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
9440 pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
9441 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
9442 the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
9443 it into SEG_BSS
462088b8 9444
f8701a3f
SC
9445Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9446
9447 * expr.c(expr): allow SEG_REGISTER in expressions.
9448 * read.c(pseudo_set): register expressions can be the source of a
9449 set.
9450 * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to
9451 goto SEG_TEXT (if a.out)
9452 * write.c (write_object_file): If a.out don't use the old way for
9453 -R.
9454 * config/obj-a.out (s_sect): complain if the user tries to use a
9455 subsegment with a value which might interfere with out -R hackery.
9456 * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table
9457 rather than use ugly if tree. (init_regtable): insert register
9458 names into symbol table.
9459
ebfb4167
MT
9460Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com)
9461
9462 * write.c (write_object_file): keep the fix_tail clean, which
9463 fixes a bug in -R where relocations were being lost.
9464
9465Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com)
9466
9467 * configure.in: recognize m680x0 as having sun3 emulation mode for
9468 vxworks environment.
9469
9470Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com)
9471
9472 * configure.in: recognize m680x0 as an m68k
9473
dfd53fe9
JW
9474Thu May 28 11:22:02 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
9475
9476 * configure.in: Recognize sparclite as a sparc variant.
9477
7f2cb270
KR
9478 * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
9479 -Asparclite flag.
9480
d312e231
SC
9481Tue May 26 16:47:56 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9482
9483 * config/tc-a29k.c: lint
9484 * listing.c, expr.c: patches from Andrew Smith
9485
0cca30f3
KR
9486Thu May 14 17:22:48 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9487
9488 * doc/Makefile.in: use m4 rather than gm4.
9489
7f2cb270
KR
9490Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9491
9492 * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
9493 calc the base of relocs correctly.
9494 * tc-a29k.c (parse_operand): allow expressions to be in any section.
9495
d312e231
SC
9496Mon Apr 27 13:13:31 1992 K. Richard Pixley (rich@cygnus.com)
9497
9498 * as.c, write.c: use -K rather than -k for the broken word warning
9499 option.
9500
fa493b93
RP
9501Tue Apr 21 13:35:30 1992 K. Richard Pixley (rich@cygnus.com)
9502
9503 * Makefile.in: do not print recursion lines.
9504
d96c09ed
RP
9505Wed Apr 15 21:19:31 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9506
9507 * Makefile.in: the tooldir copy of gas goes directly in tooldir.
9508
9509Tue Apr 14 14:50:22 1992 Ken Raeburn (Raeburn@Cygnus.COM)
9510
9511 * write.c (write_object_file): For b.out format, round up section
9512 start addresses to match required alignment.
9513
81484684
KR
9514Thu Apr 9 05:45:29 1992 Ken Raeburn (Raeburn@Cygnus.COM)
9515
9516 * Makefile.in (install): Install into $(tooldir)/bin, since that's
9517 where gcc looks for it.
9518
3876b4c5
SEF
9519Tue Apr 7 15:12:15 1992 Sean Eric Fagan (sef@cygnus.com)
9520
9521 * Makefile.in: Changed some lines to be less confusing for some
9522 makes.
9523
9524 * input-file.c: Conditionalize on _IOFBF, not VMS.
9525
9526 * read.c, write.c: Change a series of ifdef/elif to
9527 ifdef/else/ifdef etc.
9528
9529Fri Mar 27 12:21:16 1992 K. Richard Pixley (rich@cygnus.com)
9530
9531 * symbols.c (fb_label_init): fix sizeof to memset.
9532
95a925b8
RP
9533Fri Mar 13 15:45:44 1992 K. Richard Pixley (rich@cygnus.com)
9534
3876b4c5
SEF
9535 * Makefile.in: install the man page.
9536
95a925b8
RP
9537 * Makefile.in: pass down MAKEINFO explicitly on info.
9538
0cca30f3
KR
9539 * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
9540
5d53038b
SC
9541Fri Mar 13 08:03:03 1992 Steve Chamberlain (sac@thepub.cygnus.com)
9542
9543 * flonum-const.c: renamed flonum-konst.c to stop dos name
9544 conflict.
9545
7f2cb270
KR
9546Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
9547
9548 * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
132239bf 9549 tc-m68k.h to te-sun3.h.
7f2cb270 9550
8c1b25e4
RP
9551Wed Mar 11 23:32:42 1992 K. Richard Pixley (rich@cygnus.com)
9552
9553 * configure.in: vxworks68 gets te-sun3.h.
9554
9555 * expr.c: remove limitation that local_labels_dollar or
9556 local_labels_fb must be < 10.
9557
9558 * symbols.c: remove local_labels_dollar, replace with a function
9559 interface for a sparse array. All users adjusted.
9560
7f2cb270
KR
9561 * te-sun3.h: add LOCAL_LABELS_DOLLAR.
9562
0cca30f3
KR
9563Sat Mar 7 00:06:25 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9564
9565 * doc/Makefile.in: commented out line for building as-all.texinfo.
9566 This is temporary.
9567
9568 * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
9569
8c1b25e4
RP
9570Fri Mar 6 21:57:18 1992 K. Richard Pixley (rich@cygnus.com)
9571
9572 * Makefile.in: added check target.
9573
9574Tue Mar 3 15:45:56 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9575
9576 * Makefile.in: added tooldir and program_prefix.
9577
9578Sun Mar 1 04:43:19 1992 Michael Tiemann (tiemann@cygnus.com)
9579
9580 * write.{c,h} (fix_new): Make these declarations consistent.
9581
1651b22d
MT
9582Sat Feb 29 13:59:10 1992 Michael Tiemann (tiemann@cygnus.com)
9583
9584 * Makefile.in (strerror.o): Add rule so that broken Sun make can
9585 work in subdirs.
9586
5373c439
SC
9587Wed Feb 26 19:26:28 1992 Steve Chamberlain (sac at thepub.cygnus.com)
9588
9589 * read.c, obj-coffbfd.c : fix h8300 specific bit rot
9590
9591 * expr.c (operand): if can't work out what sort of operand it is,
9592 then look through FLT_CHARS for a hint.
9593
8c1b25e4
RP
9594Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com)
9595
9596 * Makefile.in, configure.in: removed traces of namesubdir,
9597 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
9598 copyrights to '92, changed some from Cygnus to FSF.
9599
0cca30f3
KR
9600 * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
9601 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
9602 copyrights to '92, changed some from Cygnus to FSF.
9603
f24f7577
SC
9604Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9605
14d3e47b
SC
9606 * expr.c: If an expression is single comma, then return with
9607 SEG_ABSENT rather than an error - since the sparc front end does
132239bf 9608 really strange things with things like fbge,a
14d3e47b 9609
f24f7577
SC
9610 * as.h: include bfd.h if using many sections
9611 * expr.c: LOCAL_LABELS_FB had been changed to lower case - so
9612 local labels didn't work.
9613 * listing.c (list_symbol_table): don't core dump when there's no
9614 symbol there.
9615 * write.c, write.h: call fix_new with the right number of args on
9616 the H8.
9617 * config/tc-h8300.[ch] : fix bugs reported by HMSI, and make
9618 errors nices
9619
c593cf41
SC
9620Sat Feb 22 12:26:28 1992 Steve Chamberlain (sac at rtl.cygnus.com)
9621
9622 * app.c: MRI compatibility - allow single quote to start a string.
9623 * as.c: fix typo recently introduced.
9624 * as.h : Don't include aout/reloc.h - it's not right for COFF!
9625 * expr.c: Much rewriting, to accomodate MRI syntax for
9626 expressions. Also easier to read now.
9627 * listing.c: Put back defuns
9628 * read.c: modified to accept MRI syntax, put back listing pseudo
9629 ops so that an assembler built with NO_LISTING ignores list ops
9630 rather than pukes.
9631 * write.c, write.h: fixs - only keep a reloc type in a fix if the target
9632 machine is a SPARC or a 29K.
9633 * config/obj-aout.c: added s_sect pseudo op
9634 * config/obj-coffbfd.c: lints, set the filehdr flags right and
9635 fill in the timestamp.
9636 * config/obj-coffbfd.h: Since we don't include aout/reloc.h
9637 anymore, define all the relocs which the tc-<x> bit will use so we
9638 can translate from them to the coff types.
9639 * config/tc-a29k.c: reloc_type isn't ane enum any more
9640 * config/tc-m68k.c: Added NO_RELOC definition.
9641
2d97273c
RP
9642Fri Feb 21 06:21:07 1992 K. Richard Pixley (rich@rtl.cygnus.com)
9643
c593cf41
SC
9644 * Makefile.in: put header files before C source for TAGS; remove
9645 references to non-existent syscalls.h.
9646
2d97273c
RP
9647 * read.c, write.c subsegs.c: back out the .bss changes.
9648
7f2cb270
KR
9649 * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
9650
9651 * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
9652
9653 * a.out.h: removed.
9654
6d5460ab
RP
9655Fri Feb 21 01:08:48 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM)
9656
9657 * symbols.c (local_label_name): symbols now start with ^A.
9658
9659 * read.c, subsegs.c, write.c obj-coff.c: added handling of
9660 `.bss` pseudo op for unitialized data. The new gcc (1.37.9x)
9661 generate these sections. .align: will use NOP_OPCODE or 0
9662 for padding. This is just for being nice to the
9663 disassembler.
9664
9665 * expr.c (operand): changed to generate local label "\001L0"
9666 starting with a ^A so that it is recognized as a local label.
9667
9668 * as.c (perform_an_assembly_pass): zero bss_fix_root, too.
9669
7f2cb270
KR
9670 * tc-i386.c: tc-i386.c: added handling of the following opcodes:
9671 i/o opcodes - inb, inw, outb and outw. string manipulation with
9672 att syntax - scmp, slod, smov, ssca, ssto.
9673
9674 * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
9675 to just after .file .
9676
9677 In obj_crawl_symbol_chain() where it tries to put the external
9678 symbols apart, with the condition:
9679 (!S_IS_DEFINED(symbolP) &&
9680 !S_IS_DEBUG(symbolP) &&
9681 !SF_GET_STATICS(symbolP))
9682 it was moving too many symbols out. So I switch it back to the
9683 condition:
9684 (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
9685
9686 In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
9687 so that we don't use the F_RELFLG which make the linker complain
9688 that somebody has stripped the relocation info.
9689
9690 Also, the AIX ld program require that the relocation table
9691 is sorted by r_vaddr like the standard ATT assembler does.
9692
9693 [he also changed the sizeof(struct ...)'s into the coff
9694 style FOOSZ macros. I'm not sure this is right, but I can't
9695 remember why. xoxorich.]
9696
d6e344db
RP
9697Fri Feb 21 01:08:48 1992 K. Richard Pixley (rich@cygnus.com)
9698
9699 * Makefile.in, configure.in, doc: use the doc. Build it, install
9700 it, clean it, etc.
9701
eb9eacd3
RP
9702Tue Feb 18 02:21:25 1992 K. Richard Pixley (rich at cygnus.com)
9703
aa3782d2
RP
9704 * read.c: white space and comments only.
9705
f816adbc
RP
9706 * configure.in: use the new atof-ns32.c for ns32k.
9707
eb9eacd3
RP
9708 * write.c: comment change only.
9709
7f2cb270
KR
9710 * tc-m88k.[hc]: pulled in from hack's unfinished work. These
9711 aren't yet integrated.
9712
9713 * tc-i860.[hc]: blew off the dust. Something must still be done
9714 about conflicting relocation types.
9715
9716 * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
9717 real thing.
9718
9719 * tc-i960.c, tc-sparc.c: white space and comments only.
9720
9721 * tc-a29k.h: delete duplicate macro definition.
9722
9723 * new file atof-ns32k.c copied from hack's last unreleased gas.
9724
542e1629 9725Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
b3ca913f 9726
eb9eacd3
RP
9727 * config/tc-ns32k.c: actually make tc_aout_fix_to_chars work
9728 rather than abort.
132239bf 9729
542e1629
RP
9730 * nearly everything. flush ChangeLog, package as gas-1.92.1.
9731 ChangeLog's prior to this are sketchy at best. I have logs.
9732 They just aren't ChangeLogs.
33e61c95
ILT
9733
9734\f
9735Local Variables:
de442a3c
ILT
9736mode: indented-text
9737left-margin: 8
9738fill-column: 74
33e61c95
ILT
9739version-control: never
9740End:
This page took 0.598615 seconds and 4 git commands to generate.