* configure.in (i386-*-cygwin32): Don't use bfd_gas.
[binutils-gdb.git] / gas / ChangeLog
1 Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
2
3 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
4 * configure: Regenerated.
5
6 Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
7
8 * config/tc-hppa.c: Add default definitions for R_N0SEL and
9 R_N1SEL since they're not defined for old versions of hpux.
10
11 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
12 Set "sym_ptr_ptr" and "addend" fields to dummy values for
13 R_N0SEL and R_N1SEL.
14
15 Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
16
17 * flonum-konst.c: Add two more constants for 1e+-2048 and
18 1e+-4096, and correct the other constants.
19
20 * symbols.c (resolve_symbol_value): Handle O_logical_not.
21
22 Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
23
24 * config/obj-elf.c (obj_elf_section): Allow predefined section
25 types to set the nobits type. Avoid a shadowed declaration.
26
27 Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
28
29 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
30 reduce relocs using e_nlrsel field selectors.
31
32 * write.c (fix_new_exp): Don't use #elif. Some compilers
33 don't handle it.
34
35 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
36 the selector table.
37 (pa_chk_field_selector): Handle new field selectors for SOM.
38
39 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
40
41 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
42 * configure: Rebuild.
43 * config/te-linux.h (LOCAL_LABELS_FB): Define.
44 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
45 "a.out-m68k-linux".
46 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
47 is defined.
48
49 Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
50
51 * mpw-make.sed: Update to handle shared library support.
52
53 Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
54
55 * config/tc-sparc.c (sparc_ip): Print all architectures that support
56 the insn on mismatch.
57
58 Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
59
60 * configure.in: Add support for a29-coff.
61 * configure: Rebuild.
62
63 Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
64
65 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
66 of the section when looking for the R_SH_USES fixup, because the
67 frag addresses have not yet been adjusted.
68
69 * gdbinit.in: Set a breakpoint on as_warn_where.
70
71 * config/tc-mips.c (macro): Add missing arguments to macro_build
72 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
73
74 Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
75
76 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
77 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
78
79 Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
80
81 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
82
83 Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
84
85 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
86 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
87 Recognize [uU] format args as sparclet cpregs.
88
89 Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
90
91 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
92 in bss_section.
93
94 Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
95
96 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
97 well as S_IS_EXTERNAL.
98 (tc_fix_adjustable): Likewise.
99 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
100 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
101 early.
102 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
103 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
104
105 Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
106
107 * config/tc-sparc.c (max_architecture): Change to sparclite for
108 32 bit arch.
109 (default_compatible): Delete.
110 (sparc_ffs): New function.
111 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
112 (sparc_ip): Rewrite architecture match and bump logic.
113
114 Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
115
116 * configure.in: Check for 'do not mix' from native linker before
117 trying to use -rpath.
118 * configure: Rebuild.
119
120 Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
121
122 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
123 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
124 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
125 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
126 is set.
127 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
128 to the symbol lnnoptr field, to get the correct file offset.
129
130 Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
131
132 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
133 symbols that are not function, file, or section symbols to be
134 object types.
135
136 Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
137
138 * configure: Set and substitute RPATH_ENVVAR.
139 * configure: Rebuild.
140 * Makefile.in (RPATH_ENVVAR): New variable.
141 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
142
143 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
144 doesn't need opcodes. If configuring shared, opcodes needs bfd.
145 * configure: Rebuild.
146
147 Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
148
149 * read.c (s_mri_sect): Don't return '\0' in type. Set all
150 appropriate flags in BFD section.
151
152 * configure.in (m68k-*-psos*): New target.
153 * configure: Rebuild.
154 * config/te-psos.h: New file.
155 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
156 is defined.
157
158 Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
159
160 From Alan Modra <alan@spri.levels.unisa.edu.au>:
161 * configure.in: Remove duplicate setting of cpu_type. Check
162 whether opcodes library is required for on all targets, not just
163 primary one.
164 * configure: Rebuild.
165
166 * config/tc-mips.c (mips_big_got): New static variable.
167 (s_extern): Don't declare.
168 (reg_needs_delay): New static function.
169 (macro_build): Permit GOT/CALL_HI/LO relocs.
170 (macro_build_lui): If place is not NULL, use the number in the
171 expression.
172 (load_address): Handle mips_big_got case.
173 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
174 store macros.
175 (OPTION_XGOT): Define.
176 (md_longopts): Add "xgot" if OBJ_ELF.
177 (md_parse_option): Handle -xgot.
178 (md_show_usage): Mention -xgot.
179 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
180 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
181
182 Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
183
184 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
185 the byte relocation, point it to the low byte of the word.
186
187 Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
188
189 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
190 * configure: Rebuild.
191
192 Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
193
194 * configure.in: Recognize any sparc* cpu.
195 * configure: Regenerated.
196
197 Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
198
199 * read.c (potable): Add "mri" and ".mri".
200 (s_mri): New function.
201 * read.h (s_mri): Declare.
202 * app.c (scrub_m68k_mri): New static variable.
203 (mri_pseudo): New static variable.
204 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
205 flag_m68k_mri. Initialize scrub_m68k_mri.
206 (mri_state, mri_last_ch): New static variables.
207 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
208 fields.
209 (app_push): Save new fields.
210 (app_pop): Restore new fields.
211 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
212 If TC_M68K, use a trivial state machine to look for occurrences of
213 the .mri pseudo-op, and change the mode appropriately.
214 * as.h (do_scrub_begin): Update prototype.
215 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
216 do_scrub_begin.
217 * config/tc-m68k.c (reg_prefix_optional_seen): New static
218 variable.
219 (m68k_mri_mode_change): New function.
220 (md_parse_option): Set reg_prefix_optional_seen.
221 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
222 (MRI_MODE_CHANGE): Define.
223 * doc/as.texinfo: Document .mri pseudo-op.
224
225 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
226 comment character.
227
228 Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
229
230 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
231 * config/m68k-parse.h (enum pic_relocation): Define.
232 (struct m68k_exp): Add pic_reloc field.
233 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
234 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
235 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
236 otherwise.
237 * config/tc-m68k.c: Delete definition of NO_RELOC.
238 (struct m68k_it): Add pic_reloc field.
239 (add_fix): Copy over pic_reloc field.
240 (md_pseudo_table): Interpret .align parameter as byte count.
241 (mote_pseudo_table): Likewise.
242 (tc_m68k_fix_adjustable): New function.
243 (get_reloc_code): New function.
244 (md_assemble): Use it as last argument to fix_new_exp.
245 (md_apply_fix_2): For a relocation against a symbol don't put the
246 addend into the data.
247 (tc_gen_reloc): Different addend computation for OBJ_ELF.
248 (m68k_ip): Don't relax an operand that requires pic relocation.
249 (md_begin): Align .text, .data and .bss on 4 byte boundary by
250 default.
251 * write.c (fixup_segment): Don't add symbol value to addend if
252 TC_M68K and OBJ_ELF.
253 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
254 (motorola_operand): Add rule for `(zapc, EXPR)'.
255
256 Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
257
258 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
259 *really* is permissible before the comma.
260
261 Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
262
263 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
264 inserting nop instructions.
265
266 Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
267
268 * config/te-aux.h: Change include of aux.h to aux-coff.h.
269
270 Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
271
272 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
273 class setting for a CALLNAME symbol in COFF.
274
275 * read.c (potable): Pass negative numbers for new .balign[wl] and
276 .p2align[wl] pseudo-ops.
277 (s_align_bytes): Treat a negative argument as specifying the fill
278 length.
279 (s_align_ptwo): Likewise.
280
281 Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
282
283 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
284 (do_align): Take new len parameter. Change all callers. Pass it
285 to md_do_align.
286 (s_align_bytes): Arg now indicates the length of the fill pattern.
287 (s_align_ptwo): Likewise.
288 * config/obj-coff.c (write_object_file): Pass length to
289 md_do_align.
290 * config/tc-i386.h (md_do_align): Take new len parameter.
291 * config/tc-m88k.h (md_do_align): Likewise.
292 * config/tc-m88k.c (m88k_do_align): Likewise.
293 * config/tc-sh.h (md_do_align): Likewise.
294 * config/tc-sh.c (sh_do_align): Likewise.
295 * doc/as.texinfo: Document new pseudo-ops.
296
297 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
298 done in cvt_frag_to_fill.
299
300 * config/tc-sh.h (sh_do_align): Declare.
301 (md_do_align): Define.
302 * config/tc-sh.c (sh_do_align): New function.
303
304 * ecoff.c (ecoff_build_lineno): Don't try to store the address
305 difference if the next address is before the current one.
306
307 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
308 (archs): Initialize new field.
309 (m68k_ip): Don't list alias names when listing CPUs which support
310 an instruction.
311
312 * as.c (main): Call parse_args before read_begin.
313 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
314 front of generated pseudo-ops.
315 * read.c (potable): Ignore "name".
316 (s_app_file): Permit a single quote after the string, since one
317 may appear in m68k MRI mode.
318
319 * configure.in: Check for --enable-shared. If linking against
320 shared BFD and opcodes, fix library name on SunOS, and try to set
321 -rpath reasonably.
322 * configure: Rebuild.
323
324 Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
325
326 * as.h (flag_m68k_mri): Declare.
327 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
328 * Many files: For MRI syntax that is specific to the m68k MRI
329 assembler, check flag_m68k_mri rather than flag_mri or
330 MRI_MODE_NEEDS_PSEUDO_DOT.
331
332 Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
333
334 * config/tc-i960.c (ARCH_HX): Define.
335 (arch_tab): Add HX.
336 (targ_has_sfr): Handle ARCH_HX.
337 (targ_has_iclass): Handle ARCH_HX.
338 (tc_coff_fix2rtype): Add return 0 to avoid warning.
339 (tc_headers_hook): If the architecture was specified explicitly,
340 use it when setting the flags. Set the extern variable coff_flags
341 rather than headers->filehdr.f_flags, since the latter is set
342 unconditionally in obj-coff.c.
343 (i960_handle_align): Remove unused variable fixp.
344
345 Support for building bfd and opcodes as shared libraries, based on
346 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
347 * configure.in: Set OPCODES and BFD to search directories.
348 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
349 * configure: Rebuild.
350 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
351 (LIBDEPS): New variable.
352 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
353 $(HLDFLAGS) in link.
354 (check): Set LD_LIBRARY_PATH in the environment.
355
356 Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
357
358 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
359 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
360 read-only, not read/write.
361
362 Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
363
364 * Makefile.in (INSTALL_XFORM): Remove -e.
365
366 Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
367
368 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
369 than comparing S_GET_SEGMENT to undefined_section.
370 (write_object_file): Skip symbols which were equated to an
371 undefined or common symbol.
372 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
373 S_IS_COMMON rather than comparing S_GET_SEGMENT to
374 undefined_section.
375 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
376 or S_IS_COMMON call S_GET_VALUE.
377 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
378 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
379 to an undefined or common symbol, convert the reloc to be against
380 the target symbol.
381 (obj_crawl_symbol_chain): Skip symbols which were equated to an
382 undefined or common symbol.
383 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
384 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
385 to an undefined or common symbol, convert the reloc to be against
386 the target symbol.
387 (obj_crawl_symbol_chain): Skip symbols which were equated to an
388 undefined or common symbol.
389 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
390 S_IS_COMMON rather than comparing S_GET_SEGMENT to
391 undefined_section.
392 (yank_symbols): Skip symbols which were equated to an undefined or
393 common symbol.
394
395 Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
396
397 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
398 * config/obj-bout.h (S_IS_LOCAL): Likewise.
399
400 * configure.in: Make sure we only add m68k-parse.o to
401 ${extra_objects} once, no matter how many m68k targets have been
402 enabled.
403 * configure: Rebuild.
404
405 Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
406
407 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
408 * configure: Rebuild.
409
410 Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
411
412 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
413 * doc/c-m68k.texi: Document .extend and .ldouble.
414
415 * configure.in (m68*-apple-aux*): New target.
416 * config/te-aux.h: New file.
417 * config/obj-coff.c (compare_external_relocs): New static function
418 if TE_AUX.
419 (do_relocs_for): Sort relocs if TE_AUX.
420 (fixup_segment): If TE_AUX, store common symbol value in segment.
421 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
422
423 Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
424
425 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
426
427 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
428 BSF_FUNCTION.
429 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
430 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
431 symbol.
432 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
433 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
434 an undefined symbol and the size of a function symbol.
435 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
436 for all common symbols.
437
438 Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
439
440 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
441 scaling of index.
442
443 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
444 m68k.
445
446 Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
447
448 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
449 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
450
451 * ecoff.c (localsym_t): Add addend field.
452 (add_ecoff_symbol): Add addend argument. Change all callers.
453 (coff_sym_value): Make static.
454 (coff_sym_addend): New static variable.
455 (ecoff_directive_def): Initialize coff_sym_addend.
456 (ecoff_directive_val): Accept symbol + constant.
457 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
458 (ecoff_build_symbols): Include the addend in the symbol value.
459
460 Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
461
462 * config/tc-ppc.c (md_assemble): Ignore overflow on
463 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
464
465 Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
466
467 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
468 bytes in size, so offset appropriately in big endian mode when
469 writing the bottom 2 bytes.
470
471 Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
472
473 * config/tc-sparc.c (default_compatible): New static local.
474 (md_begin): Initialize it. Rewrite warn_on_bump handling.
475 (sparc_ip): If no architecture or -bump specified, don't mark as
476 mismatched those in default_compatible.
477
478 Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
479
480 SCO ELF support from Robert Lipe <robertl@arnet.com>:
481 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
482 * configure: Rebuild.
483 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
484 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
485 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
486 (sco_id): Declare if SCO_ELF.
487
488 Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
489
490 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
491 ({max,warn_after}_architecture): New static locals.
492 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
493 If both architecture and -bump requested, set max_architecture to max.
494 (sparc_md_end): Simplify.
495 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
496 Rewrite code to bump architecture and check for conflicts.
497 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
498 with Solaris assembler.
499 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
500 (md_show_usage): Update.
501
502 Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
503
504 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
505
506 Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
507
508 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
509 #ifdef sparcv9 when choosing value.
510 (ENV64): Delete.
511 (md_end): Define.
512 (sparc_md_end): Declare.
513 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
514 (initial_architecture): New static local.
515 (can_bump_v9_p): Likewise.
516 (NO_V9): Delete all occurrences.
517 (sparc_md_end): New function.
518 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
519 Don't bump architecture to v9 unless can_bump_v9_p set.
520 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
521 * configure.in (sparc64 target cpu): Don't set obj_format here.
522 (SPARC_V9): Renamed from sparcv9.
523 (sparc64-*-elf*): Define SPARC_ARCH64.
524 * configure: Regenerated.
525 * acconfig.h (SPARC_V9): Renamed from sparcv9.
526 (SPARC_ARCH64): Add.
527 * conf.in: Regenerated.
528 * config/vmsconf.h: Update.
529
530 Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
531
532 * config/tc-mips.c (load_register): Optimise "dli" loads.
533 (md_show_usage): add "-mcpu=vr4100" to help text.
534
535 Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
536
537 * symbols.c (resolve_symbol_value): If a symbol is equated to an
538 undefined symbol, preserve the X_op of O_symbol.
539 (S_GET_VALUE): Fix check to permit this case.
540 * write.c (write_relocs): If a reloc is against an undefined
541 symbol equated to another symbol, change the reloc to be against
542 the latter symbol.
543 * config/obj-coff.c (do_relocs_for): Likewise.
544
545 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
546 XMC_PR.
547
548 Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
549
550 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
551 computer is PowerPC.
552
553 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
554
555 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
556 mentioned in the eabi.
557
558 Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
559
560 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
561 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
562
563 Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
564
565 * config/tc-ppc.c (mapping): Add more relocation suffixes.
566
567 Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
568
569 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
570 as a section it is ok to have unadorned -mrelocatable pointers in.
571
572 Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
573
574 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
575 #ifdef OBJ_ELF.
576
577 Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
578
579 * config/obj-elf.c (obj_elf_section): Add hooks so machine
580 dependent section attributes can be handled.
581
582 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
583 macros to add support for exclude section flag and ordered section
584 type.
585
586 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
587 functions to add support for exclude section flag and ordered
588 section type.
589
590 Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
591
592 * subsegs.c (section_symbol): Don't try to look up the section
593 symbol in the hash table. It should be possible to have a symbol
594 with the same name as a section, but no connection to it.
595
596 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
597 From James Carlson <carlson@xylogics.com>.
598
599 * expr.c (operand): Skip whitespace after a close parenthesis.
600 From James Carlson <carlson@xylogics.com>.
601
602 Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
603
604 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
605 as_warn_where for relocation overflow.
606 (parse_reg): Accept register name only if next character is
607 not alphanumeric.
608
609 Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
610
611 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
612 addresses for static variables.
613
614 Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
615
616 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
617 and xgot give the old toc16 relocation.
618 (md_apply_fix3): Support all GOT relocations.
619
620 Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
621
622 * config/tc-mips.c (load_address): Correctly handle a constant in
623 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
624
625 Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
626
627 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
628 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
629 (build_Mbytes): Handle REG_B.
630
631 Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
632
633 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
634
635 Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
636
637 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
638
639 Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
640
641 * config/obj-coff.c (write_object_file): Set the s_align field to
642 the number of bytes, rather than to the power of 2.
643
644 Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
645
646 * Makefile.in (DISTCLEAN_HERE): New variable.
647 (distclean): Use it.
648 (maintainer-clean): Depend upon clean-here rather than clean,
649 distclean, and clean-info. Run make maintainer-clean in doc.
650 Remove files listed in DISTCLEAN_HERE.
651 * doc/Makefile.in (maintainer-clean realclean): Split out from
652 distclean. Depend upon clean-info and distclean.
653
654 Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
655
656 * mac-as.r: Fix copyright and version strings.
657 (cfrg): Use PROG_NAME instead of literal name.
658
659
660 Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
661
662 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
663 call it.
664 * config/tc-a29k.h (tc_unrecognized_line): Define.
665 * config/tc-a29k.c (a29k_unrecognized_line): New function.
666 (md_operand): Handle a29k style local dollar labels.
667
668 Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
669
670 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
671
672 Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
673
674 * read.c (s_fill): If md_flush_pending_output is defined, call
675 it.
676
677 Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
678
679 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
680 Treat rs_align_code like rs_align.
681
682 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
683
684 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
685 converting an absolute address into a PC-relative one.
686
687 Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
688
689 * mpw-config.in: Don't always use te-generic.h for emulation.
690 (powerpc-apple-macos): Use emulation te-macos.h.
691 start-sanitize-gm
692 (mips-gm-magic): New configuration.
693 end-sanitize-gm
694 * mpw-make.sed (install, install-only): Edit in Mac-specific
695 install procedure.
696
697 Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
698
699 * configure.in: Improve message about unsupported ELF targets.
700 * configure: Rebuild.
701
702 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
703 pattern is zero. From Manfred Hollstein.
704
705 Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
706
707 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
708 the various idata sections, we check the name on the .section pseudo.
709
710 Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
711
712 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
713 add section's paddr to add_number; compatibility to native as and
714 ld forbids.
715
716 Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
717
718 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
719
720 * hash.c (struct hash_entry): Moved here...
721 * hash.h (struct hash_entry): ...from here.
722
723 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
724 if it's already known to be null.
725
726 Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
727
728 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
729 bit relocs converted to PC relative relocs. This turned out to
730 add the offset from the beginning of .text twice.
731
732 Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
733
734 * stabs.c (s_stab_generic): In 's' case, free string from
735 obstack.
736
737 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
738 sy_name_offset.
739 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
740 Ditto.
741
742 * subsegs.h (segment_info_type): Make bitfields unsigned.
743
744 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
745 and move them together. On most systems this will reduce the
746 structure size by one word.
747 (operatorT): Define O_max.
748 * expr.c (expr_begin): Verify that X_op is wide enough to hold
749 O_max.
750
751 * read.c (pop_insert): Print error returned by hash table
752 insertion code.
753
754 * as.c (dump_statistics): Split out from main; dump some hash
755 table stats and target-specific stats.
756 (start_time): No longer automatic to main.
757 (main): Set file-level start_time and call dump_statistics at
758 exit. Exit by calling xexit.
759 (show_usage): Make --statistics description less specific.
760 * subsegs.c (subsegs_print_statistics): New function.
761 * write.c (write_print_statistics): New function.
762 (n_fixups): New static variable.
763 (fix_new_internal): Increment it.
764 * read.c (read_print_statistics): New function.
765 * read.h (read_print_statistics): Declare.
766 * symbol.c (symbol_print_statistics): New function.
767 * symbol.h (symbol_print_statistics): Declare.
768 * hash.c (hash_print_statistics): New function.
769 * hash.h (hash_print_statistics): Declare.
770 * config/tc-i386.c (i386_print_statistics): New function.
771 * config/tc-i386.h (i386_print_statistics): Declare.
772 (tc_print_statistics): New macro.
773 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
774 exit.
775
776 * hash.c (DELETED): Rewrite to use a valid but unique address.
777 (START_POWER): Reduce to 10.
778 (enum stat_enum): New enumerator, replacing STAT_* index macros.
779 Add new values for counting strcmp calls.
780 (GROW_FACTOR): New macro.
781 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
782 of nesting blocks.
783 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
784 (hash_new): Use FULL_VALUE.
785 (struct hash_control): Definition moved here.
786 (hash_code): Don't mask to low bits.
787 (hash_ask): Mask returned hash code here. Check hash value before
788 calling strcmp; count strcmp calls.
789 * hash.h (struct hash_control): Declare, don't define, here.
790 (HASH_STATLENGTH): Deleted.
791 (struct hash_entry): Add field for hash code.
792 (hash_say, hash_apply): Don't declare.
793
794 * hash.c (destroy): Return void.
795 (applicatee): Ditto.
796 (main): Fix declarations.
797 (hash_apply): Return void. Argument `function' returns void. Put
798 inside "#ifdef TEST".
799 (hash_say): Define only if TEST is defined.
800 * hash.h (hash_apply, hash_say): Declarations deleted.
801
802 Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
803
804 * configure: Rebuild with autoconf 2.7.
805
806 Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
807
808 * aclocal.m4 (AC_PROG_CC): Remove local definition.
809 * configure: Rebuild with autoconf 2.6.
810
811 Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
812
813 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
814 (ppc_stabx): Don't increment ppc_debug_name_section_size.
815 (ppc_bc): Likewise.
816 (ppc_frob_file): Remove.
817 * config/tc-ppc.h (tc_frob_file): Don't define.
818 (ppc_frob_file): Don't declare.
819
820 Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
821
822 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
823 * config/alpha-opcode.h: Include one-operand variants of jmp and
824 jsr.
825
826 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
827 with te-delta.h in 8.3 file systems.
828 * configure.in: Adjusted.
829
830 Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
831
832 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
833
834 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
835 number.
836 * expr.c (operand): Handle MRI suffixes after unadorned 0.
837
838 Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
839
840 Version 2.6 released.
841 * Makefile.in (VERSION): Updated to 2.6.
842
843 * config/obj-coff.c (write_object_file): Change use of md_do_align
844 to pass a pointer rather than a fill value, to match other uses.
845
846 Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
847
848 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
849
850 * as.c (main): Move md_end call to just after call to
851 perform_an_assembly_pass. Delete cpu-specific code here.
852 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
853 start-sanitize-rce
854 * config/tc-rce.c (md_end): Deleted.
855 * config/tc-rce.h (md_end): New macro, calls dump_literals.
856 end-sanitize-rce
857 * config/tc-arm.c (md_end): Unused function deleted.
858 * config/tc-ns32k.c (md_end): Ditto.
859
860 * config/tc-i386.c (i386_align_code): New function, moved here
861 from HANDLE_ALIGN macro.
862 * config/tc-i386.h (HANDLE_ALIGN): Call it.
863
864 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
865
866 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
867 before comparing
868
869 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
870
871 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
872 multi-byte nops to avoid changing gcc. The necessary gcc change
873 might break old assemblers.
874
875 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
876
877 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
878 generate optimal multi-byte nop instructions for ".align n"
879 ".align n,0x90", and aligns requiring more than 15 bytes of
880 padding still generate multiple 0x90's as before.
881
882 Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
883
884 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
885
886 Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
887
888 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
889 * configure: Update.
890 * mpw-make.sed: Reorder commands to make sed happier.
891 * config/te-macos.h: New file.
892 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
893
894 Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
895
896 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
897 conditional branches.
898 (md_apply_fix): Likewise.
899
900 Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
901
902 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
903 generate a reloc which the linker will not handle correctly. Fix
904 overflow checking--R_IREL is 18 bits, not 17.
905
906 Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
907
908 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
909 from a PC relative reloc if TC_A29K.
910
911 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
912 code depends upon it.
913
914 * config/tc-a29k.c (md_operand): Handle $float, $double, and
915 $extend. Based on code from Eric Freudenthal
916 <freudenthal@nyu.edu>.
917 * config/tc-a29k.h (LEX_DOLLAR): Define.
918 * read.c (LEX_DOLLAR): Define if not defined.
919 (lex_type): Use LEX_DOLLAR.
920
921 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
922
923 * configure.in (a29k-nyu-sym1): New target, just like other a29k
924 targets.
925
926 Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
927
928 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
929
930 Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
931
932 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
933 used only by "dlltool.c".
934
935 Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
936
937 * config/tc-alpha.c: Undefine inline if not __GNUC__.
938 (md_pseudo_table): Don't define "extern".
939
940 Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
941
942 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
943
944 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
945
946 Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
947
948 * macro.c (macro_expand_body): Don't warn about == with a
949 nonexistent parameter, in case it is in a comment field.
950
951 * as.c (main): On TC_A29K, call macro_init with macro_alternate
952 set to 1.
953 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
954 set, even if macro_alternate is set.
955 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
956 (sub_actual): If macro_strip_at, and kind is '@', don't look up
957 the token unless it ended in '@'.
958 * config/tc-a29k.c (line_separator_chars): Remove '@'.
959 * doc/c-a29k.texi: Document macro usage on A29K.
960
961 Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
962
963 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
964 signed word.
965 (install_operand): Likewise.
966
967 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
968
969 Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
970
971 * configure.in (m88k-motorola-sysv*): New target.
972 * configure: Rebuild.
973 * config/te-delta88.h: New file.
974 * config/obj-coff.c (write_object_file): Use md_do_align if it is
975 defined.
976 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
977 (md_do_align): Define.
978 * config/tc-m88k.c: Include "subsegs.h".
979 (m88k_do_align): New function.
980
981 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
982 (COFF_NOLOAD_PROBLEM): Define.
983 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
984
985 Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
986
987 * config/tc-i386.c (md_assemble): For a jump instruction with
988 non-constant target, require 7 available bytes in the current
989 frag, not 6.
990
991 Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
992
993 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
994 bfd/libelf.h.
995
996 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
997
998 * configure.in (alpha-*-linux*): Use ecoff.
999 * configure: Rebuild.
1000 * ecoff.c (ecoff_directive_extern): New function.
1001 (ecoff_directive_weakext): New function.
1002 (ecoff_build_symbols): Handle weak symbols.
1003 (ecoff_setup_ext): Likewise.
1004 (ecoff_frob_symbol): Warn about weak common symbols.
1005 * ecoff.h (ecoff_directive_extern): Declare.
1006 (ecoff_directive_weakext): Declare.
1007 * symbols.c (S_IS_WEAK): New function.
1008 * symbols.h (S_IS_WEAK): Declare.
1009 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
1010 "weakext".
1011 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
1012 (s_extern): Remove.
1013
1014 Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
1015
1016 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
1017
1018 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
1019 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
1020 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
1021 * config/obj-coff.c (coff_frob_symbol): Don't call
1022 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
1023 one. If OBJ_XCOFF, try to figure out whether the symbol is going
1024 to be dropped.
1025
1026 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
1027 (ppc_stab_symbol): New static variable.
1028 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
1029 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
1030 sy_tc.real_name to the stab string.
1031 (ppc_bc, ppc_ec): New static functions.
1032 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
1033 do anything.
1034 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
1035 suffix.
1036 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
1037 entries.
1038
1039 * input-scrub.c (input_scrub_push): Reset sb_index.
1040
1041 Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
1042
1043 * listing.c (listing_newline): Don't create a frag in the absolute
1044 section.
1045
1046 Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
1047
1048 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
1049 (ppc_csect): Move most of the code to ppc_change_csect, and call
1050 it.
1051 (ppc_change_csect): New static function, taken from ppc_csect.
1052 (ppc_section): New static function.
1053 (ppc_saw_abs): New static varable.
1054 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
1055 a symbol has no csect.
1056 (ppc_adjust_symtab): New function.
1057 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
1058 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
1059
1060 * write.c (write_object_file): If tc_adjust_symtab is defined,
1061 call it just before the call to obj_adjust_symtab.
1062
1063 * symbols.c (symbol_find_or_make): Change name to be const.
1064 * symbols.h (symbol_find_or_make): Update declaration.
1065
1066 Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
1067
1068 * doc/as.texinfo (Align): Mention SH.
1069 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
1070 .align value.
1071 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
1072 (Z8000 Directives, even): Don't give numeric align value, instead
1073 explain behavior.
1074
1075 Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1076
1077 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
1078 instruction.
1079
1080 Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
1081
1082 * Makefile.in (diststuff): Also make info.
1083 (maintainer-clean realclean): Also make clean-info.
1084
1085 Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
1086
1087 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
1088 (pa_subspace): For ".nsubspa", always create a new subspace
1089 with the given attributes, even if one already exists with the
1090 same name.
1091
1092 Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1093
1094 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
1095 TC_FORCE_RELOCATION, taking an additional section argument. If
1096 the section of the target symbol is not the same as the current
1097 section, always force the relocation to be used.
1098 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
1099
1100 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
1101 md_pcrel_from function, taking an additional section argument.
1102 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
1103
1104 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
1105 older TC_FORCE_RELOCATION if not defined.
1106 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
1107 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
1108 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
1109 TC_FORCE_RELOCATION.
1110
1111 Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
1112
1113 * input-scrub.c (as_where): Set name to null pointer if we don't
1114 have a file name.
1115 * messages.c (identify): Only print filename if non-null.
1116 (as_show_where): Ditto, for line number too.
1117 (as_warn_internal, as_bad_internal): Ditto.
1118
1119 * input-file.c (input_file_open): If the input file can't be
1120 opened, consider it an error.
1121
1122 Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
1123
1124 * config/tc-mips.c: Added mips_4100 control, and support for
1125 accepting the 4100 as a MIPS architecture variant (md_begin,
1126 macro_build, mips_ip, md_parse_option). Adding suitable
1127 command-line OPTIONs, and updating the help text (md_show_usage).
1128
1129 Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
1130
1131 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
1132 BFD_ASSEMBLER is defined.
1133
1134 * Use one active frag and one obstack per frag chain:
1135 * frags.c (frags): Variable deleted.
1136 (frag_alloc): New function.
1137 (frag_grow, frag_more, frag_variant, frag_now_fix,
1138 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
1139 frags variable.
1140 (frag_new): Ditto. Verify that frch_last and frag_now match on
1141 entry and exit, and that old frag_now has non-zero type. Replace
1142 "know" uses with "assert". Use frag_alloc instead of mucking with
1143 obstack alignment.
1144 * frags.h (frags): Declaration deleted.
1145 * subsegs.h (struct frchain): Add new field frch_frag_now.
1146 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
1147 variables.
1148 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
1149 give it any stricter alignment than frchainS structures need. Do
1150 not initialize frags obstack. Set frag_now to point to
1151 dummy_obstack. Initialize absolute_frchain.
1152 (subseg_set_rest): Save and restore frag_now in frch_frag_now
1153 field of frchainS. Don't create new frags on section switch, and
1154 use frag_alloc when creating a new frag chain. For absolute
1155 section, set frchain_now to absolute_frchain. Verify that
1156 frch_last and frag_now match on entry and exit. Initialize
1157 per-chain obstack, and under gcc, set required alignment to that
1158 needed by fragS structure.
1159
1160 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
1161
1162 * stabs.c (get_stab_string_offset): Only copy input string if a
1163 fresh copy is needed, not if the section already exists.
1164 (s_stab_generic): Cache stab section name to bypass lookups, since
1165 usually it will match. Could be made faster still by changing the
1166 memory allocation rules.
1167 (s_xstab): Cache section name to bypass repeated string
1168 allocation.
1169
1170 * frags.c (frag_new): Deleted register declarations.
1171
1172 * listing.c (frag_now): Don't declare.
1173
1174 * as.c (chunksize): New variable.
1175 (debug_memory): New variable.
1176 (main): If debug_memory is set, reduce chunksize and
1177 _bfd_chunksize.
1178 * as.h (chunksize): Declare it.
1179 * read.c (read_begin): Use it.
1180
1181 * config/tc-alpha.c (md_shortopts): Include 'g'.
1182 (md_parse_option): Ignore it.
1183
1184 * Makefile.in (distclean): Remove Makefile and config.status from
1185 testsuite directory.
1186 (clean-here): Don't delete testsuite. Instead, delete only the
1187 files within it that would be generated by running tests.
1188
1189 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
1190 frag_now_fix instead of accessing obstack info directly.
1191 * config/tc-arm.c (s_ltorg): Ditto.
1192 (md_assemble): Ditto.
1193
1194 * config/tc-i386.c (md_assemble): Call frag_grow instead of
1195 obstack_room.
1196
1197 Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
1198
1199 * stabs.c (aout_process_stab): Insert debug symbol into symbol
1200 chain after parsing value expression, if any, to avoid separating
1201 continued .stabs lines.
1202
1203 Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
1204
1205 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
1206 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
1207
1208 Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
1209
1210 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
1211 -mcom support and PPC_OPCODE_ANY for -many.
1212 (md_parse_option): Ditto.
1213 (ppc_arch): Ditto.
1214 (md_begin): For duplicate instructions, print all duplicates
1215 before aborting.
1216
1217 Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
1218
1219 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
1220 common mode operation.
1221 (md_show_usage): Add -mcom to usage message.
1222
1223 Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
1224
1225 * expr.c (op_rank): Add O_symbol_rva.
1226 * expr.h (operatorT): Add O_symbol_rva.
1227 * read.c (cons_worker): Set O_symbol_rva when necessary.
1228 * write.c (fix_new_exp): Understand O_symbol_rva.
1229
1230 Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
1231
1232 * config/tc-mips.c: Correct s_cons arguments. From Michael
1233 Joosten <joost@ori.cadlab.de>.
1234
1235 Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
1236
1237 * config/tc-ppc.c (ppc_macro): Make count unsigned.
1238 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
1239 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
1240 the fix_line field.
1241 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
1242 make non-static. Change all users.
1243 * config/obj-coff.h (coff_n_line_nos): Declare.
1244
1245 Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
1246
1247 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1248
1249 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
1250
1251 * config/obj-elf.c (obj_elf_common): Convert specified byte
1252 alignment to power of two. Set size of local bss symbol.
1253
1254 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
1255
1256 Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
1257
1258 * sb.c, macro.c: Decide whether to include <string.h> or
1259 <strings.h> just as as.h does.
1260
1261 Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
1262
1263 * Makefile.in (site.exp): Fix setting of $srcdir.
1264
1265 * config/tc-arm.c (md_atof): Fix little-endian output.
1266 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
1267 all coff targets.
1268
1269 Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
1270
1271 * doc/as.texinfo: Split out the NS32k family documentation,
1272 despite its being commented out for now.
1273 * doc/c-ns32k.texi: New file.
1274
1275 * sb.c, macro.c: Include string.h.
1276
1277 * Makefile.in (comparison): Only check *.o; we don't care if
1278 timestamps inserted by the native linker differ.
1279
1280 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
1281 if alignment stricter than 4 bytes is requested; in that case,
1282 align to a 4-byte boundary first.
1283
1284 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
1285
1286 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
1287 uninitialized" warning for `Max_Source_Offset'.
1288
1289 Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
1290
1291 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
1292 qualifiers and detect errors if present.
1293 (md_assemble): Add call to parse_toc_entry. Also added some support
1294 for the [tocv] qualifier.
1295 (ppc_pe_tocd): New function to support data in the toc section.
1296
1297 Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
1298
1299 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
1300 an absolute symbol.
1301
1302 Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
1303
1304 * config/tc-m68k.c (isword): Accept all values from -65536 to
1305 +65535, so ~VAL will not be rejected.
1306
1307 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
1308 skip characters after the pseudo-op.
1309 (s_else): Likewise.
1310 * read.c (get_line_sb): Don't look past buffer_limit.
1311 (s_include): In MRI mode, skip characters after the file name.
1312
1313 Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
1314
1315 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
1316 periods in register names.
1317
1318 For older changes see ChangeLog.1.