Add test for dbt/rtd instructions
[deliverable/binutils-gdb.git] / gas / ChangeLog
CommitLineData
24a3e622
ILT
1Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
2
3 * config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
4 calculate relocations to any external symbol, because we might be
5 linking a shared object and the symbol might be overriden or moved
6 (for instance, moved into a static executable's .bss section).
7 (GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.
8
9 * config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
10 be calculated by the assembler.
11
12 * config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
13 whose destination lies in the same file, by ignoring the @plt or
14 @local and aiming the branch at its destination.
15
b0447a0e
ILT
16Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
17
18 * symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
19 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
20 expression.
21
22 * config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
23 of obj_copy_symbol_attributes.
24
be2c18bd
ILT
25Mon Jun 16 12:45:56 1997 Ian Lance Taylor <ian@cygnus.com>
26
3a035861
ILT
27 * config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
28 signed operand, sign extend a 32 bit value to the host size.
29
30 * Makefile.in (CFLAGS): Subsitute from configure script. From
31 Jeff Makey <jeff@cts.com>.
32
a52f90a4
ILT
33 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
34 buffer size to make a copy of the symbol.
35
be2c18bd
ILT
36 * Makefile.in (OBJS): Put @extra_objects@ on the same line as
37 macro.o.
38
7799bb2c
ILT
39Thu Jun 12 12:16:20 1997 Ian Lance Taylor <ian@cygnus.com>
40
41 * write.c (write_object_file): In non BFD_ASSEMBLER code, as we
42 step through the frags calling cvt_frag_to_fill, switch to
43 SEG_DATA when we reach data_frag_root.
44
43ee18a0
JL
45Tue Jun 10 17:08:34 1997 Jeffrey A Law (law@cygnus.com)
46
47 * config/tc-mn10300.c (md_assemble): Allow an empty register
48 list for instructions which use register lists.
49
ccc30467
ILT
50Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
51
d2e5779b
ILT
52 * config/tc-arm.c (md_apply_fix3): Make temp unsigned long.
53
7436e4de
ILT
54 * config/tc-arm.c (arm_adjust_symtab): Only set storage classes if
55 OBJ_COFF.
56
ccc30467
ILT
57 * config/tc-arm.c: Add prototypes for many static functions.
58 (struct asm_opcode ): Add prototypes for parms field.
59 (struct thumb_opcode ): Likewise.
60 (fp_op2): Remove unused flags parameter.
61 (output_inst): Make static.
62 (arm_after_pass_hook): Remove unused ignore parameter.
63 * config/tc-arm.h (arm_after_pass_hook): Declare.
64 (arm_start_line_hook): Declare.
65 (arm_frob_label): Declare.
66
170cdf75
ILT
67Mon Jun 9 12:55:45 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
68
69 * depend.c (wrap_output): new prototype.
70
af438bdb
ILT
71Mon Jun 9 12:52:44 1997 Ian Lance Taylor <ian@cygnus.com>
72
4b4c1e0f
ILT
73 * config/tc-sh.c (md_apply_fix): Check for overflow.
74
af438bdb
ILT
75 * config/tc-m68k.c (md_section_align): If a.out and BFD, force
76 section size to be aligned.
77
72574181
ILT
78Fri Jun 6 17:15:55 1997 Ian Lance Taylor <ian@cygnus.com>
79
80 * config/tc-sh.h (md_cons_align): Define.
81 (sh_cons_align): Declare.
82 * config/tc-sh.c (md_pseudo_table): Add .uaword and .ualong.
83 (sh_no_align_cons): New static variable.
84 (s_uacons): New static function.
85 (sh_cons_align): New function.
86 (sh_handle_align): Warn about misaligned data.
87 * doc/c-sh.texi: Document .uaword and .ualong.
88
89Thu Jun 5 15:38:17 1997 Ian Lance Taylor <ian@cygnus.com>
90
91 * macro.c (macro_expand): In MRI mode, treat single quote as a
92 separator character when checking for a positional argument.
93
d0badeab
NC
94Tue Jun 3 16:15:13 1997 Nick Clifton <nickc@cygnus.com>
95
48e509bf
NC
96 * config/tc-arm.c (md_parse_option): Merge in changes from
97 armT-970328-branch.
f8a21443 98
48e509bf
NC
99 * config/tc-arm.h: Merge in changes from armT-970328-branch.
100
101 * configure.in (emulations): Add Thumb architecture support from
d0badeab
NC
102 armT-9703-28-branch.
103
2903fb6e
NC
104Mon Jun 2 16:25:07 1997 Nick Clifton <nickc@cygnus.com>
105
3357a5ab
NC
106 * doc/all.texi: Add enabling of ARM documentation.
107
2903fb6e
NC
108 * doc/as.texinfo: Add ARM documentation from armT-970328-branch.
109
5c6f5923
GRK
110Mon Jun 2 11:55:12 1997 Gavin Koch <gavin@cygnus.com>
111
112 * config/tc-mips.c: Added r3900 support.
113
dccd4d2c
ILT
114Thu May 29 12:58:26 1997 Ben Pfaff <pfaffben@pilot.msu.edu>
115
116 * as.c: (parse_args) `-t' option requires an argument.
117
118Wed May 28 15:45:07 1997 Nick Clifton <nickc@cygnus.com>
119
120 * config/tc-arm.c (md_begin): Change call to
121 coff_arm_bfd_set_private_flags() to a call to
122 bfd_set_private_flags().
123
5ac3db53
ILT
124Wed May 28 16:17:34 1997 Ian Lance Taylor <ian@cygnus.com>
125
1d6f438f
ILT
126 * Makefile.in: Rebuild dependencies.
127
5ac3db53
ILT
128 * config/tc-i386.c (tc_gen_reloc): Don't try to convert the type
129 of a BFD_RELOC_RVA reloc.
130
f22950b9
JL
131Wed May 28 10:48:14 1997 Jeffrey A Law (law@cygnus.com)
132
133 * config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
134 (hppa_force_relocation): Force a relocation for an absolute
135 call/jump.
136
1079e76c
ILT
137Mon May 26 13:24:25 1997 Ian Lance Taylor <ian@cygnus.com>
138
139 * doc/as.texinfo: Don't use @value in section names or index
140 entries; it confuses texinfo.tex.
141
8a51eeaf
TT
142Fri May 23 00:09:35 1997 Tom Tromey <tromey@cygnus.com>
143
144 * doc/as.texinfo: Updated for -MD option.
145 * Makefile.in (CFILES): Added depend.c.
146 (OBJS): Added depend.o.
147 * as.h (start_dependencies, register_dependency,
148 print_dependencies): New declarations.
149 * depend.c: New file.
150 * as.c (parse_args): Added -MD option.
151 (main): Call print_dependencies.
152 (show_usage): Added help for -MD.
153 * read.c (s_app_file): Call register_dependency.
154 (s_include): Call register_dependency when file is found.
155 (read_a_source_file): Call register_dependency.
156
1a7a427e
ILT
157Wed May 21 17:39:28 1997 Ian Lance Taylor <ian@cygnus.com>
158
159 * config/obj-coff.c (symbol_to_chars): If TE_PE, don't add the
160 section address to the symbol value.
161
e17449bc
GRK
162Tue May 20 11:23:31 1997 Gavin Koch <gavin@cygnus.com>
163
1a7a427e
ILT
164 * config/tc-mips.c (macro_build,mips_ip): Move the INSN_ISA field
165 into the new membership field.
e17449bc 166
de046e7c
NC
167Thu May 15 10:00:53 1997 Nick Clifton <nickc@cygnus.com>
168
169 * config/tc-arm.c (md_begin): If no cpu type is specified on the
170 command line then the ARM7 is now chosen by default when setting
171 the BFD machine and architecture.
172
46686c78
NC
173Wed May 14 09:54:53 1997 Nick Clifton <nickc@cygnus.com>
174
175 * config/tc-arm.c (global variables): Added 'uses_apcs_26' flag to
1a7a427e
ILT
176 hold APCS selection.
177 (md_begin): Added code to generate flags to be set into the COFF
178 header and the calls to the BFD functions to do this.
179 (md_parse_option, md_show_usage): Added new command line
46686c78
NC
180 options -mapcs-32, -mapcs-26, -marmv2, -marmv2a, -marmv3,
181 -marmv3m, -marmv4, -marmv4t.
182
183 * tc-arm.h (LOCAL_LABEL): Removed the definition of this macro
184 as it is never used.
185
2393a966
JL
186Tue May 13 22:26:14 1997 Jeffrey A Law (law@cygnus.com)
187
188 * config/tc-mn10200.c (md_convert_frag): Prefix temporary
189 label name with ".".
190 * config/tc-mn10300.c (md_convert_frag): Likewise.
191
cd05cc5e
ILT
192Tue May 13 14:44:39 1997 Ian Lance Taylor <ian@cygnus.com>
193
194 * config/tc-mips.c (set_at): Check for bignum.
195 (check_absolute_expr, macro, mips16_macro): Likewise.
196
7b02bacd
FF
197start-sanitize-tic80
198Tue May 13 10:45:56 1997 Fred Fish <fnf@cygnus.com>
199
200 * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
201 for overflow/underflow, only insert lower 15 bits into instruction.
202
203end-sanitize-tic80
98b4161a
ILT
204Mon May 12 13:33:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
205
206 * config/tc-i386.c (pi): Check for RegMMX.
207
ee42e25b
ILT
208Thu May 8 11:10:15 1997 Ian Lance Taylor <ian@cygnus.com>
209
210 * expr.c (expr): When subtracting values in the same frag,
211 subtract X_add_number rather than adding it.
212
a5586bdc
ILT
213Wed May 7 15:39:48 1997 Ian Lance Taylor <ian@cygnus.com>
214
662a6d9e
ILT
215 * config/obj-coff.c (write_object_file): Just pass NULL to
216 md_do_align, not the address of a char holding NOP_OPCODE.
217
a5586bdc
ILT
218 * config/tc-mips.c (macro): Handle constants for M_LI_D and
219 M_LI_DD.
220 (mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
221 than an address if the floating point value looks sufficiently
222 simple.
223
91951af6
ILT
224Tue May 6 12:18:09 1997 Ian Lance Taylor <ian@cygnus.com>
225
226 * config/tc-i386.c (md_section_align): If a.out and BFD, force
227 section size to be aligned.
228
454b0ccd
ILT
229Mon May 5 17:16:55 1997 Ian Lance Taylor <ian@cygnus.com>
230
0239838b
ILT
231 * cond.c: Include "macro.h".
232 (struct conditional_frame): Add macro_nest field.
233 (initialize_cframe): Initialize macro_nest.
234 (cond_finish_check): Add nest parameter. Change all callers.
235 (cond_exit_macro): New function.
236 * as.h (cond_finish_check): Update declaration.
237 (cond_exit_macro): Declare.
238 * input-scrub.c (macro_nest): Make globally visible.
239 (input_scrub_next_buffer): Call cond_finish_check.
240 * macro.h (macro_nest): Declare.
241 * read.c (s_mexit): Call cond_exit_macro.
242
454b0ccd
ILT
243 * config/tc-i386.h (RegMMX): Define.
244 * config/tc-i386.c (pi): Check for all register types.
245 (type_names): Add RegMMX.
246 (md_assemble): Handle RegMMX.
247
248Wed Apr 30 12:47:00 1997 Manfred Hollstein <manfred@s-direktnet.de>
249
250 * config/obj-coff.c (c_section_symbol): Clear the LOCAL bit #ifdef
251 TE_DELTA.
252
253Tue Apr 29 20:23:10 1997 Jim Wilson <wilson@cygnus.com>
254
255 * config/tc-mips.c (nopic_need_relax): Add new parameter
256 before_relaxing. Use it when testing ecoff_extern_size.
257 (load_address, macro, md_estimate_size_before_relax): Fix all
258 callers.
259
24d4b4e1
ILT
260Tue Apr 29 19:54:36 1997 Richard Henderson <rth@tamu.edu>
261
262 * config/obj-elf.c (elf_pseudo_table): Add "subsection".
263 (obj_elf_subsection): New static function.
264
4a38edaa
ILT
265Tue Apr 29 19:52:47 1997 Ian Lance Taylor <ian@cygnus.com>
266
267 * config/obj-coff.c (coff_header_append): Don't reset string_size
268 each time through the loop.
269
1416631f
ILT
270Fri Apr 25 14:17:46 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
271
272 * Makefile.in (DISTSTUFF): Add itbl-parse.h.
273
49f5a035
ILT
274Fri Apr 25 12:03:15 1997 Ian Lance Taylor <ian@cygnus.com>
275
8f9b2cea
ILT
276 * doc/internals.texi (Porting GAS): Correct documentation for
277 current configure handling of targ-cpu.h, et. al.
278 (CPU backend): Document listing macros.
279
49f5a035
ILT
280 * listing.c (data_buffer): Set size based on other listing macros,
281 rather than always using 100.
282 (data_buffer_size): Remove static variable.
283 (calc_hex): Make data_buffer_size a local variable. Don't leave
284 any slop when filling data_buffer.
285
a21dd1e0
ILT
286Mon Apr 21 15:33:19 1997 Ian Lance Taylor <ian@cygnus.com>
287
288 * doc/c-mips.texi: Document .set autoextend.
289
49f90a34
ILT
290Sat Apr 19 23:09:25 1997 Niklas Hallqvist <niklas@petra.appli.se>
291
292 * configure.in (i386-*-openbsd*, m68k-*-openbsd*,
293 mips-dec-openbsd*, ppc-*-*bsd*, ns32k-pc532-openbsd*,
294 sparc-*-openbsd*): New targets.
295 * configure: Rebuild.
296
aff65ed9
ILT
297Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
298
299 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
300 for all undefined symbols.
301
fec391b1
ILT
302Fri Apr 18 13:37:35 1997 Ian Lance Taylor <ian@cygnus.com>
303
304 * config/tc-ppc.c (ppc_fix_adjustable): Handle zero length csects
305 correctly.
306
894cca25
ILT
307Fri Apr 18 11:51:35 1997 Niklas Hallqvist <niklas@appli.se>
308
309 * configure.in (alpha*-*-openbsd*): New target.
310 * configure: Rebuild.
311
fc984eb0
ILT
312Thu Apr 17 13:59:47 1997 Per Fogelstrom <pefo@openbsd.org>
313
314 * configure.in (mips-*-openbsd*): New target.
315 * configure: Rebuild.
316
4bdb83fc
MH
317start-sanitize-d30v
318Wed Apr 16 12:31:24 1997 Martin Hunt <hunt@cygnus.com>
319
320 * config/tc-d30v.c (parallel_ok): Fix parallel checking
321 for instructions using conditional execution.
322
323end-sanitize-d30v
68952421
GRK
324Tue Apr 15 18:11:44 1997 Gavin Koch <gavin@cygnus.com>
325
326 * config/tc-mips.c (insn_uses_reg): Correct test for fpr pairs.
327
e366a2d6
ILT
328Tue Apr 15 13:04:47 1997 Ian Lance Taylor <ian@cygnus.com>
329
330 * Makefile.in (srcroot): Remove.
331 (INSTALL): Set to @INSTALL@.
332 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
333 (all, dvi): Don't set srcroot.
334 (install): Depend upon as.new, gasp.new, and installdirs. Use
335 $(program_transform_name) directly, rather than using
336 $(INSTALL_XFORM) and $(INSTALL_XFORM1).
337 (installdirs): New target.
338 * doc/Makefile.in (INSTALL_XFORM1): Remove.
339 (install): Depend upon installdirs. Use $(program_transform_name)
340 directly, rather than using $(INSTALL_XFORM) and
341 $(INSTALL_XFORM1).
342 (installdirs): New target.
343 (install-info-as): Run mkinstalldirs.
344 (install-info-gasp): Likewise.
345
dca6429f
ILT
346Mon Apr 14 11:59:08 1997 Ian Lance Taylor <ian@cygnus.com>
347
e366a2d6
ILT
348 * Makefile.in (INSTALL): Change install.sh to install-sh.
349
dca6429f
ILT
350 * symbols.c (resolve_symbol_value): Check for division by zero.
351
352 From Thomas Graichen <graichen@rzpd.de>:
353 * Makefile.in: Always use $(SHELL) when running move-if-change.
354 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
355 * configure: Rebuild.
356
4e9d8dea
DE
357Thu Apr 10 14:40:00 1997 Doug Evans <dje@canuck.cygnus.com>
358
f3f00e94
DE
359 * cgen.c (cgen_parse_operand): Renamed from cgen_asm_parse_operand.
360 New argument `want'. Update enum cgen_parse_operand_result values.
361 Initialize if CGEN_PARSE_OPERAND_INIT.
362 * config/tc-m32r.c (md_begin): Set cgen_parse_operand_fn.
4e9d8dea
DE
363 (md_assemble): Call cgen_asm_init_parse.
364 Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
365
902a77ac
ILT
366Wed Apr 9 11:49:41 1997 Ian Lance Taylor <ian@cygnus.com>
367
368 * config/tc-m68k.c (m68k_ip): Handle #j.
369
96742953
JL
370Tue Apr 8 16:37:57 1997 Jeffrey A Law (law@cygnus.com)
371
372 * config/tc-mn10300.c (md_convert_frag): Create fixup at the
373 right address for call label:32,regs,imm.
374
e41369a4
JL
375Mon Apr 7 14:58:22 1997 Jeffrey A Law (law@cygnus.com)
376
377 * config/tc-hppa.c (pa_subspace_start): If OBJ_ELF, then always return
378 zero.
379 * config/tc-hppa.h (tc_frob_symbol): Don't reset the value of the
380 symbol for OBJ_ELF anymore.
381
39ffbb4d
DE
382Mon Apr 7 10:54:59 1997 Doug Evans <dje@canuck.cygnus.com>
383
384 * Makefile.in: Regenerate dependencies.
385 (TARG_CPU): New variable.
386 (cgen.o): Depend on cgen.h, $(TARG_CPU)-opc.h.
387 (.dep1): Delete creating of cgen-opc.h.
388 (.tcdep): Put proper contents in cgen-opc.h.
389 * configure.in (m32r): Delete setting of extra_files, extra_links.
390 (AC_OUTPUT): Create cgen-opc.h.
391 * configure: Regenerated.
392
596c5b74
ILT
393Sat Apr 5 13:19:12 1997 Klaus Kaempf <kkaempf@progis.de>
394
395 * makefile.vms: Update to build gasp.exe.
396
374bdac7
DE
397Fri Apr 4 16:10:02 1997 Doug Evans <dje@canuck.cygnus.com>
398
c8cf7e17
DE
399 * write.c (relax_frag): Make non-static.
400 * write.h (relax_frag): Add prototype for.
401 * config/tc-m32r.h (md_do_align): New arg `max'.
402 * config/tc-m32r.c (m32r_do_align): Likewise.
403 Update calls to frag_align, frag_align_pattern.
404 (fill_insn): Update call to m32r_do_align.
405 (m32r_scomm): Update call to frag_align.
406
374bdac7
DE
407 * config/tc-m32r.[ch]: New files.
408 * cgen.c: New file.
409 * Makefile.in (CPU_TYPES): Add m32r.
374bdac7
DE
410 (TARGET_CPU_CFILES): Add tc-m32r.c.
411 (TARGET_CPU_HFILES): Add tc-m32r.h.
374bdac7
DE
412 (DISTCLEAN_HERE): Add cgen-opc.h.
413 (.dep1,.tcdep): Create empty cgen-opc.h.
414 (cgen.o): Add dependencies.
415 (dependencies): Regenerate.
416 * as.h (struct frag): New member fr_targ.
417 (fr_pcrel_adjust,fr_bsr): Move into union fr_targ.ns32k.
418 * conf.in (USING_CGEN): New macro.
419 * configure.in (m32r-*-*): Add entry for.
39ffbb4d 420 Add cgen.o to extra_objects.
374bdac7 421 * configure: Regenerate.
403c708e
DE
422 * frags.c (frag_var): fr_pcrel_adjust renamed to
423 fr_targ.ns32k.pcrel_adjust. fr_bsr renamed to fr_targ.ns32k.bsr.
424 (frag_variant): Likewise.
425 * write.c (relax_frag): Likewise.
374bdac7 426 * config/tc-ns32k.c (*): Likewise.
374bdac7 427
e819d858
ILT
428Fri Apr 4 13:26:10 1997 Ian Lance Taylor <ian@cygnus.com>
429
dc966dad
ILT
430 * config/tc-hppa.h (TC_EOL_IN_INSN): Check explicitly for '!',
431 rather than for any end of line character.
432
5c11dba2
ILT
433 * config/tc-hppa.c (tc_gen_reloc): If hppa_ren_reloc_type fails,
434 call abort (i.e., as_abort) rather than crashing.
435
457a20b5
ILT
436 * config/tc-mips.c: Protect uses of STO_MIPS16 with an ifdef of
437 OBJ_ELF, rather than of S_GET_OTHER.
438
e819d858
ILT
439 * Makefile.in (DISTCLEAN_HERE): Add site.exp and site.bak.
440
3884d17b
ILT
441Thu Apr 3 13:16:18 1997 Ian Lance Taylor <ian@cygnus.com>
442
443 * Makefile.in (VERSION): Set to 2.8.1.
444
445 * Branched binutils 2.8.
446
08438bef
ILT
447Wed Apr 2 12:24:10 1997 Ian Lance Taylor <ian@cygnus.com>
448
64d20049
ILT
449 * COPYING: Update FSF address.
450
08438bef
ILT
451 * config/tc-mips.c (mips16_macro): Handle M_DMUL and M_MUL.
452
3c83da8a
JW
453Tue Apr 1 18:29:47 1997 Jim Wilson <wilson@cygnus.com>
454
455 * config/tc-mips.c (md_begin): Don't set interlocks for 4100.
456
396e8d7f
ILT
457Tue Apr 1 16:24:28 1997 Klaus Kaempf <kkaempf@progis.de>
458
459 * config-gas.com: Update to handle both vax and alpha.
460 * makefile.vms: Update to use config-gas.
461 * conf-a-gas.com: Remove file.
462
db237783
ILT
463Tue Apr 1 16:08:21 1997 Ian Lance Taylor <ian@cygnus.com>
464
465 * Makefile.in: Remove unnecessary itbl-parse.h, ibtl-parse.c, and
466 itbl-lex.c dependencies. Remove rules for itbl-lex.o,
467 itbl-parse.o, and itbl-ops.o; just use the normal .c.o rule.
468
64251de5
MM
469start-sanitize-tic80
470Tue Apr 1 11:25:56 1997 Michael Meissner <meissner@cygnus.com>
471
472 * config/tc-tic80.c (line_comment_char): Make '#' start comments
473 at the beginning of a line for compatibility with .S files where
474 cpp leaves the filename transitions beginning with '#'.
475
476end-sanitize-tic80
477Tue Apr 1 00:07:30 1997 Ian Lance Taylor <ian@cygnus.com>
478
479 * config/tc-m68k.c: Only compile tc_coff_symbol_emit_hook and
480 tc_coff_sizemachdep if OBJ_COFF.
481
3c6adeaf
ILT
482Mon Mar 31 23:53:44 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
483
484 * config/tc-ppc.c (register_name): Declare.
485
332d5c49
ILT
486Mon Mar 31 16:31:04 1997 Joel Sherrill <joel@oarcorp.com>
487
488 * configure.in (hppa*-*-rtems*): New target, like hppa-*-*elf*.
489 * configure: Rebuild.
490
6d65a065
ILT
491Mon Mar 31 14:15:19 1997 Ian Lance Taylor <ian@cygnus.com>
492
2f2bcadb
ILT
493 * config/tc-mips.c (mips_pseudo_table): Add "stabn".
494 (mips16_mark_labels): New static function.
495 (append_insn): Call mips16_mark_labels.
496 (mips_emit_delays): Likewise.
497 (s_insn): Likewise. Don't call mips_clear_insn_labels.
498 (s_mips_stab): New static function.
499
6d65a065
ILT
500 * configure.in: Use ELF for mips-*-gnu*.
501 * configure: Rebuild.
502
ca37421e
ILT
503Mon Mar 31 14:01:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
504
505 * config/tc-m68k.h (TARGET_FORMAT): Set to "coff-m68k-sysv" if
506 TE_DELTA.
507
2e013bb7
ILT
508Fri Mar 28 18:03:19 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
509
510 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
511 set OPCODES_LIB to empty.
512 * configure: Rebuild.
513
04b8ad8b
ILT
514Fri Mar 28 15:25:24 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
515
516 * configure.in (sparc-*-linux*aout*, sparc-*-linux*): New
517 targets.
518 * configure: Rebuild.
519
acdc7ce3
ILT
520Fri Mar 28 13:08:33 1997 Ian Lance Taylor <ian@cygnus.com>
521
ab91e1ef
ILT
522 * itbl-parse.y (yyerror): Make static. Declare.
523
515c7142
ILT
524 From Ralf Baechle <ralf@gnu.ai.mit.edu>:
525 * configure.in: Set emulations for mips-*-linux*-*.
526 * configure: Rebuild.
527
1347404a
ILT
528 * config/tc-mips.c (struct mips_set_options): Define.
529 (mips_opts): New static variable.
530 (mips_isa): Remove. Now a field in mips_opts. Change all
531 references.
532 (mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
533 (mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
534 (struct mips_option_stack): Define.
535 (mips_opts_stack): New static variable.
536 (s_mipsset): Add support for .set push and .set pop.
537 * doc/c-mips.texi: Document .set push and .set pop.
538
acdc7ce3
ILT
539 * config/obj-elf.c (obj_elf_section_change_hook): New function.
540 * config/obj-elf.h (obj_elf_section_change_hook): Declare it.
541 * config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
542
23ac3ca1
ILT
543Thu Mar 27 12:23:56 1997 Ian Lance Taylor <ian@cygnus.com>
544
e22e79dc
ILT
545 * as.c (parse_args): Update copyright date in version message.
546
9b8b7e97
ILT
547 * Makefile.in (clean-here): Remove dependency files.
548
23ac3ca1
ILT
549 * read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
550 (s_mri_common): Check S_IS_COMMON unconditionally.
551 * symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
552 * config/tc-alpha.c (s_alpha_comm): Likewise.
553 * config/tc-mips.c (nopic_need_relax): Likewise.
554 * config/tc-ppc.c (ppc_elf_lcomm): Likewise.
555 (ppc_pe_comm): Likewise.
556 * config/obj-elf.c (obj_elf_common): Likewise. Set segment of
557 common symbol to bfd_com_section_ptr.
558 * config/tc-sparc.c (s_common): Likewise.
559 (tc_gen_reloc): Likewise.
560
80834add
MH
561start-sanitize-d30v
562Thu Mar 27 00:29:46 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
563
564 * config/tc-d30v.c (md_apply_fix3): Get the relocs right.
565
566end-sanitize-d30v
734a9064
ILT
567Wed Mar 26 13:35:15 1997 H.J. Lu <hjl@lucon.org>
568
569 * config/tc-i386.c (tc_i386_fix_adjustable): Only define if
570 BFD_ASSEMBLER.
571
efda47f9
ILT
572Wed Mar 26 11:32:51 1997 Ian Lance Taylor <ian@cygnus.com>
573
80834add
MH
574 * input-scrub.c (input_scrub_next_buffer): Handle very long input
575 lines correctly.
576
8cd0c287
ILT
577 * listing.c (print_lines): Add lineno parameter. Change all
578 callers.
579 (listing_listing): Only call calc_hex for the right line.
580 (listing_list): Set the new edict based on the current edict, in
581 order to handle listing commands in macros correctly.
734a9064 582
e807a57e
ILT
583 * config/tc-mips.c (insn_uses_reg): Map register numbers in mips16
584 instructions.
585
efda47f9
ILT
586 * cond.c (cond_finish_check): New function.
587 * as.h (cond_finish_check): Declare.
588 * as.c (main): Call cond_finish_check.
589
710fdf47
MH
590start-sanitize-d30v
591Tue Mar 25 14:45:54 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
592
593 * config/tc-d30v.c (md_assemble): If two instructions
594 are supposed to be assembled in parallel and the first one is
595 long, print an error and stop.
596 (md_apply_fix3): Don't calculate absolute relocs. Just write
597 them out.
598
599end-sanitize-d30v
1361ba77
ILT
600Mon Mar 24 12:11:18 1997 Ian Lance Taylor <ian@cygnus.com>
601
2fb44892
ILT
602 * config/tc-i386.h (iclrKludge): Define.
603 * config/tc-i386.c (md_assemble): Handle iclrKludge.
604
1361ba77
ILT
605 * config/tc-alpha.h (tc_frob_file_before_adjust): Define if
606 OBJ_ECOFF.
607 (alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
608 * config/tc-alpha.c (alpha_debug): New static variable.
609 (md_parse_option): Set alpha_debug if -g is seen.
610 (alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
611
9c9e75bf
MH
612start-sanitize-d30v
613Sun Mar 23 18:03:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
614
615 * config/tc-d30v.c (build_insn): Enable range-checking code.
616 (postfix): Stop at space or comma. Fixes PR 11862.
617 (md_assemble): Change error message.
618
619end-sanitize-d30v
65d7de4f
ILT
620Sat Mar 22 13:44:28 1997 Ian Lance Taylor <ian@cygnus.com>
621
622 * Makefile.in: Added automatic dependency building.
623 * dep-in.sed: New file.
624
949f1310
ILT
625Fri Mar 21 15:42:37 1997 Ian Lance Taylor <ian@cygnus.com>
626
7cad1a89
ILT
627 * config/obj-ieee.c (segment_name): Don't define function if this
628 is a macro.
629
f062ec45
ILT
630 * config/obj-coff.h (DO_STRIP): Don't define.
631 * config/tc-h8300.h (DO_STRIP): Don't define.
632 * config/tc-h8500.h (DO_STRIP): Don't define.
633 * config/tc-w65.h (DO_STRIP): Don't define.
634 * config/tc-z8k.h (DO_STRIP): Don't define.
635
a71dc204
ILT
636 * symbols.c (colon): Call obj_frob_label if it is defined.
637 * config/obj-vms.h (obj_frob_label): Rename from tc_frob_label.
638
949f1310
ILT
639 * configure.in: Don't set files and links. Don't call
640 AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
641 obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
642 * configure: Rebuild.
643 * Makefile.in (TARG_CPU_C): New variable.
644 (TARG_CPU_O, TARG_CPU_H): New variables.
645 (OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
646 (TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
647 (SOURCES): Rename from REAL_SOURCES. Delete old definition.
648 (LINKED_SOURCES): Remove.
649 (HEADERS): Rename from REAL_HEADERS. Delete old definition.
650 (LINKED_HEADERS): Remove.
651 (OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
652 ($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
653 targ-cpu.h, etc.
654 ($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
655 (targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
656 (itbl-cpu.h): Remove target.
657 (DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
658 atof-targ.h.
659
35cfacf0
ILT
660Thu Mar 20 19:18:58 1997 Ian Lance Taylor <ian@cygnus.com>
661
662 * doc/as.texinfo (Symbol Names): Don't use obsolete @ctrl macro.
663
0dfeb41f
ILT
664Thu Mar 20 16:49:14 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
665
666 * config/tc-m68k.c (mri_chip): Replace calls to get_symbol_end by
667 open coded loop that does not require the name to start with a
668 name beginner.
669
29bc322d
ILT
670Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
671
f59fb6ca
ILT
672 * frags.c (frag_var): Change offset parameter to offsetT.
673 (frag_variant): Likewise.
674 * frags.h (frag_variant, frag_var): Update declarations.
675 * config/tc-m68k.c (struct m68k_it): Change foff field to
676 offsetT.
677 (add_frag): Change off parameter to offsetT.
678 * Several files: Add casts to calls to frag_var.
679
29bc322d
ILT
680 * Makefile.in (m68k-parse.c): Depend upon itbl-parse.c, to
681 serialize a parallel make.
682 (itbl-parse.h): Split target out from itbl-parse.c.
683
9afc6631
ILT
684Thu Mar 20 12:48:45 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
685
39ab5d3a
ILT
686 * config/m68k-parse.y (motorola_operand): Allow (zdireg,EXPR).
687
9afc6631
ILT
688 * config/te-delta.h (COFF_COMMON_ADDEND): Define.
689 * config/obj-coff.c (fixup_segment): Check COFF_COMMON_ADDEND when
690 storing the value of a common symbol.
691
7dd26961
ILT
692Wed Mar 19 11:37:57 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
693
694 * config/obj-coff.c (glue_symbols): Unused variable symbolP
695 removed.
696 (crawl_symbols): Do not modify symbol_rootP and symbol_lastP here;
697 that is done by symbol_remove and symbol_insert.
698
699 * config/obj-coff.h (S_IS_LOCAL): Return 0 for a debugging
700 symbol.
701
ac766f70
ILT
702Wed Mar 19 11:06:29 1997 Ian Lance Taylor <ian@cygnus.com>
703
704 * config/tc-mips.c (load_register): In 32 bit mode, when not
705 dealing with a 64 bit number, permit the upper 32 bits to be set
706 even if bit 31 is not set.
707
58cfdde3
ILT
708Tue Mar 18 23:30:14 1997 Ian Lance Taylor <ian@cygnus.com>
709
710 * read.c (potable): Add "equiv".
711 (s_set): Handle .equiv based on argument.
712 * doc/as.texinfo (Equiv): New node to document .equiv.
713 (Err): New node to document .err.
714
7cd06f44
ILT
715Tue Mar 18 15:50:13 1997 H.J. Lu <hjl@lucon.org>
716
717 * Many files: Add function prototypes.
718 * as.c (show_usage, parse_args): Make static.
719 * frags.h (frag_alloc): Declare.
720 * subsegs.c (subseg_set_rest): Don't declare frag_alloc.
721 * symbols.c (dollar_label_instance): Change return type to long.
722 * symbols.h (print_symbol_value): Declare.
723 (print_expr, print_expr_1, print_symbol_value_1): Declare.
724 * write.c (fix_new_exp): Don't declare make_expr_symbol.
725 (remove_subsegs, relax_frag): Make static.
726 * config/atof-vax.c (atof_vax_sizeof): Change letter to int.
727 (what_kind_of_float): Likewise.
728 (atof_vax): Make static. Change what_kind to int.
729 (md_atof): Change what_statement_type to int.
730 * config/obj-ecoff.h (obj_ecoff_set_ext): Declare.
731 * config/tc-alpha.c (vax_md_atof): Declare.
732 (md_atof): Don't declare atof_ieee and vax_md_atof.
733 * config/tc-i386.c (set_16bit_code_flag): Make static.
734 * config/tc-i386.h (tc_i386_fix_adjustable): Declare.
735 * config/tc-m68k.c (add_fix): Change width to int.
736 (insert_reg): Change regname to const.
737 (md_atof): Don't declare atof_ieee.
738 (demand_empty_rest_of_line): Don't declare.
739 * config/tc-m88k.c (md_atof): Don't declare atof_ieee.
740 * config/tc-sparc.c (cmp_reg_entry): Change args to const PTR.
741 (parse_keyword_arg): Change lookup_fn to take const arg.
742 (md_atof): Don't declare atof_ieee.
743 * config/tc-sparc.h: Add ifdef for multiple inclusion.
744 (tc_aout_pre_write_hook): Don't declare.
745
590c50d8
ILT
746Mon Mar 17 11:21:09 1997 Ian Lance Taylor <ian@cygnus.com>
747
748 * as.h (bfd_alloc_by_size_t): Don't declare.
749 * Many files: Use xmalloc rather than bfd_alloc_by_size_t.
750
4b0895cf 751Sun Mar 16 13:49:21 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
e95ef7c1
ILT
752
753 * symbols.c (symbol_new): Don't call debug_verify_symchain.
754 (symbol_append): Set sy_next and sy_previous when adding a single
755 symbol to an empty list. Call debug_verify_symchain.
756 (verify_symbol_chain): Use assert, not know.
757
5cf4e55e
FF
758Sat Mar 15 20:27:12 1997 Fred Fish <fnf@cygnus.com>
759
760 * NEWS: Note BeOS support.
761 * configure.in: (ppc-*-beos): New target, use coff as object format.
762 * configure: Regenerate with autoconf.
763
9591ad40
ILT
764Sat Mar 15 19:14:02 1997 Ian Lance Taylor <ian@cygnus.com>
765
18f7e3dc
ILT
766 * config/tc-mips.c (md_apply_fix): Improve error message for out
767 of range branch.
768
9591ad40
ILT
769 * Makefile.in: Add dependencies on obstack.h where needed.
770
ef014e09
ILT
771Fri Mar 14 15:33:38 1997 Ian Lance Taylor <ian@cygnus.com>
772
46a92fde
ILT
773 * config/tc-mips.c (md_estimate_size_before_relax): Handle the
774 case of a symbol equated to another symbol when using SVR4_PIC.
775
ef014e09
ILT
776 * Makefile.in (TARG_CPU_DEP_sparc): Add opcode/sparc.h.
777
2e9974a4
ILT
778Thu Mar 13 11:20:51 1997 Ian Lance Taylor <ian@cygnus.com>
779
d428c89f
ILT
780 * read.c (read_a_source_file): Call LISTING_NEWLINE before
781 HANDLE_CONDITIONAL_ASSEMBLY when handling an MRI line label.
782
2e9974a4
ILT
783 * config/obj-elf.c (obj_elf_data): Call md_flush_pending_output
784 and md_elf_section_change_hook if they are defined.
785 (obj_elf_text, obj_elf_previous): Likewise.
786
80633e8e
ILT
787Wed Mar 12 11:40:20 1997 Ian Lance Taylor <ian@cygnus.com>
788
2e9974a4
ILT
789 * config/obj-multi.h (struct elf_obj_sy): Define if
790 OBJ_MAYBE_ELF.
791 (OBJ_SYMFIELD_TYPE): Define as struct elf_obj_sy if
792 OBJ_MAYBE_ELF.
793 * config/obj-elf.h (struct elf_obj_sy): Don't define if
794 OBJ_SYMFIELD_TYPE is defined.
795
80633e8e
ILT
796 * doc/as.texinfo (bss): Improve description of .bss section. In
797 ELF or COFF, you are permitted to switch into the section.
798 (Comm): Rewrite description of common symbols.
799 (Lcomm): Mention that some targets permit a third argument.
800
6d8dfa04
ILT
801Tue Mar 11 01:13:31 1997 Ian Lance Taylor <ian@cygnus.com>
802
9be8c0f1
ILT
803 * config/tc-ppc.c (ppc_elf_lcomm): Don't call S_CLEAR_EXTERNAL.
804
92b7bfb7
ILT
805 * symbols.c (colon): Change type of local to int. From Alan Modra
806 <alan@spri.levels.unisa.edu.au>.
807
e053e8c1
ILT
808 * config/tc-m88k.c (m88k_do_align): Don't use a special nop
809 alignment if a zero fill pattern was explicitly specified.
810 * config/tc-sh.c (sh_do_align): Likewise.
811
842b6b06
ILT
812 * read.c (equals): Always permit register names to be redefined.
813
ee2c03ed
ILT
814 * config/tc-mips.c (mips_fix_adjustable): Permit a reloc against a
815 mips16 symbol to be adjusted if a symbol is being subtracted from
816 it.
817
6d8dfa04
ILT
818 From Eric Youngdale <eric@andante.jic.com>:
819 * config/obj-elf.c (obj_elf_symver): Check for duplicate or
820 illegal symbol version names.
821 (elf_frob_symbol): Check for external default versions.
822
d88cc85d
ILT
823Sun Mar 9 23:49:12 1997 Ian Lance Taylor <ian@cygnus.com>
824
825 From Eric Youngdale <eric@andante.jic.com>:
826 * config/obj-elf.h (struct elf_obj_sy): Define.
827 (OBJ_SYMFIELD_TYPE): Define to elf_obj_sy struct. Change all
828 users.
829 * config/obj-elf.c (obj_elf_symver): Just record the name.
830 (obj_symbol_new_hook): Initialized versioned_name field.
831 (elf_frob_symbol): If there is a versioned_name, either rename the
832 symbol, or add an alias with that name.
833
a405bb3e
JL
834Thu Mar 6 13:55:32 1997 Jeffrey A Law (law@cygnus.com)
835
ef03fee0
JL
836 * config/tc-mn10300.c (md_relax_table): Define.
837 (md_convert_frag): Implement.
838 (md_assemble): Handle relaxable operands/instructions correctly.
839 (md_estimate_size_before_relax): Implement.
840 * config/tc-mn10300.h (TC_GENERIC_RELAX_TABLE): Define.
841
27103699
JL
842 * config/tc-mn10200.c (md_relax_table): Fix typos.
843
a405bb3e
JL
844 * config/tc-mn10300.c (md_assemble): Don't use any MN10300 specific
845 relocs anymore. Tweak fx_offset for pc-relative relocs.
846
d6545e3f
ILT
847Wed Mar 5 15:46:16 1997 Ian Lance Taylor <ian@cygnus.com>
848
849 * cond.c (s_ifc): Call mri_comment_field and mri_comment_end when
850 in MRI mode.
851
e74539b8
FF
852start-sanitize-tic80
853Tue Mar 4 19:34:21 1997 Fred Fish <fnf@cygnus.com>
854
1ea52646
FF
855 * config/tc-tic80.c (md_pseudo_table): Add "sect" and "section"
856 pseudo-ops.
e74539b8
FF
857 * config/tc-tic80.c (md_begin): Declare external variable
858 coff_flags and insert an F_AR32WR bit into it.
859
860end-sanitize-tic80
861Tue Mar 4 10:01:04 1997 Ian Lance Taylor <ian@cygnus.com>
862
863 * read.c (equals): Add reassign parameter. Change all callers.
864 * read.h (equals): Update declaration.
865
a941619c
ILT
866Sat Mar 1 01:04:04 1997 Ian Lance Taylor <ian@cygnus.com>
867
868 * config/tc-mips.c (mips16_extended_frag): Don't assume that we
869 can rely on the frag address to determine whether a frag is
870 earlier or later.
871
23604921
ILT
872Fri Feb 28 14:40:00 1997 Ian Lance Taylor <ian@cygnus.com>
873
874 * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
875 (S_LOCAL_NAME): Likewise.
876 (FAKE_LABEL_NAME): Define unconditionally.
877 * symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
878 BFD_ASSEMBLER.
879 (S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
880 * config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
881 Don't define FAKE_LABEL_NAME.
882 * config/te-ic960.h: Likewise.
883 * config/tc-mips.h (tc_frob_file_before_adjust): Define.
884 (mips_frob_file_before_adjust): Declare.
885 * config/tc-mips.c (mips_frob_file_before_adjust): New function.
886 (mips_local_label): Remove.
887
888 * config/te-sco386.h: Remove; not used.
889
a88ce21e
FF
890start-sanitize-tic80
891Thu Feb 27 15:39:16 1997 Fred Fish <fnf@cygnus.com>
892
893 * config/tc-tic80 (md_pseudo_table): Add align pseudo op to do
894 byte alignment rather than power-of-two alignment that is the
895 GAS default.
896
897end-sanitize-tic80
0f68bf0a
ILT
898Thu Feb 27 13:29:04 1997 Ian Lance Taylor <ian@cygnus.com>
899
e053e8c1 900 * config/tc-m68k.c (md_assemble): Handle a reloc width of 'W'.
f396c4ef 901
0f68bf0a
ILT
902 * gasp.c (hash_add_to_string_table): Correct misspelling in error
903 message, and add newline.
904 (process_file): Don't process assignments in the label if this is
905 a equ or assign pseudo-op.
906 (process_pseudo_op): Swap first argument to do_assign for K_ASSIGN
907 and K_EQU, to match documentation.
908
0fe302ac
MM
909Thu Feb 27 12:00:03 1997 Michael Meissner <meissner@cygnus.com>
910
911 * config/obj-coff.c (obj_coff_section): Add 'r' section attribute
912 to denote read-only data sections.
913
30d0557c
ILT
914Thu Feb 27 00:26:33 1997 Ian Lance Taylor <ian@cygnus.com>
915
35c64f24
ILT
916 * config/obj-elf.c (obj_elf_common): Set BSF_OBJECT in flags.
917 * config/tc-sparc.c (s_common): Likewise, if BFD_ASSEMBLER.
918
30d0557c
ILT
919 * expr.c (operand): Simplify 0b handling. Don't treat 0b as a
920 binary number if the next character is '+' or '-'.
921
1e12595d
FF
922start-sanitize-tic80
923Wed Feb 26 20:47:12 1997 Fred Fish <fnf@cygnus.com>
924
925 * config/tc-tic80.c (FLT_CHARS): Change from "dD" to "fF".
926 (find_opcode): Match operands that can be floats.
927 (build_insn): Handle O_big (float) expressions and build
928 correct opcode.
929
930end-sanitize-tic80
af942793
SS
931Wed Feb 26 18:19:00 1997 Stan Shebs <shebs@andros.cygnus.com>
932
933 * configure.in (mips*-*-lnews*): New target, also make empty
934 emulation list for this target.
935 * configure: Update.
936 * tc-mips.c (ECOFF_LITTLE_FORMAT): Define.
937 (mips_target_format): Use.
938 * te-lnews.h: New file.
939
f92f247b
FF
940start-sanitize-tic80
941Wed Feb 26 15:33:46 1997 Fred Fish <fnf@cygnus.com>
942
943 * config/tc-tic80.c (find_opcode, build_insn): Changes to match
944 operands with :m or :s modifiers and generate the right opcodes
945 for them.
946
947end-sanitize-tic80
7a515708
ILT
948Wed Feb 26 11:56:11 1997 Ian Lance Taylor <ian@cygnus.com>
949
950 * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
951 $(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
952
55be99d6
ILT
953Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
954
955 * config/tc-m68k.c (instring): Useless local declaration of
956 crack_operand removed.
957 * expr.h (expressionS): Changed type of X_op field to operatorT if
958 __GNUC__.
959
28d8c671
ILT
960Tue Feb 25 13:17:27 1997 Ian Lance Taylor <ian@cygnus.com>
961
034988c6
ILT
962 Based on patches from Robert Lipe <robertl@dgii.com>:
963 * configure.in: Add i386coff and i386elf to emulation list.
964 * configure: Rebuild.
965 * as.c (i386coff, i386elf): Declare.
966 * obj.h (coff_format_ops): Declare.
967 * config/obj-coff.c (OBJ_HEADER): Define.
968 (coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
969 (coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
970 (obj_pseudo_table): Add "version".
971 (coff_pop_insert): New static function.
972 (coff_sec_sym_ok_for_reloc): New static function.
973 (no_func): New static function.
974 (coff_format_ops): New variable.
975 * config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
976 (obj_symbol_new_hook): Define.
977 (coff_obj_read_begin_hook): Declare.
978 (obj_read_begin_hook): Define.
979 * config/tc-i386.h (i386_target_format): Declare.
980 * config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
981 OUTPUT_FLAVOR when appropriate.
982 (i386_target_format): New function.
983 * Makefile.in (obj-coff.o): New target.
984 (e-i386coff.o, e-i386elf.o): New targets.
985
a0c4a241
ILT
986 From Stephen Williams <steve@icarus.icarus.com>:
987 * config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
988 (_tc_get_bal_of_call): Don't declare.
989 (tc_get_bal_of_call): Declare as function, don't define as macro.
990 * config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
991 in sy_tc field, not x_balntry field.
992 (tc_get_bal_of_call): Rename from _tc_get_bal_of_call. Change
993 return type to symbolS *. If OBJ_COFF, retrieve value from sy_tc
994 field, not x_balntry field.
995
996 * config/obj-elf.c (obj_elf_section): Permit a .note section to
997 have the SHF_ALLOC attribute.
998
a90512ad
ILT
999 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
1000 (TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
1001 (itbl-lex.o): Depend upon itbl-parse.h.
1002
1003 * itbl-parse.y (yyerror): Change return type to int. Change to
1004 use old style function declaration.
1005
ee5cb7fe
ILT
1006 * Makefile.in (itbl-lex.o): Remove -Wall.
1007 (itbl-parse.o): Likewise.
1008
28d8c671
ILT
1009 * cond.c (s_ifdef): If we should omit conditionals from listings,
1010 call listing_list.
1011 (s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
1012 * listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
1013 (listing_listing): Handle EDICT_NOLIST_NEXT.
1014 (listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
1015 * listing.h (LISTING_NOCOND): Define.
1016 (LISTING_SKIP_COND): Define.
1017 * as.c (show_usage): Mention c as a suboption of -a.
1018 (parse_args): Handle c as a suboption of -a.
1019 * doc/as.texinfo: Document -alc.
1020
b16a8c8e
FF
1021start-sanitize-tic80
1022Mon Feb 24 23:34:14 1997 Fred Fish <fnf@cygnus.com>
1023
1024 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
1025
1026end-sanitize-tic80
1027Mon Feb 24 18:27:43 1997 Eric Youngdale <eric@andante.jic.com>
1028
1029 * doc/as.texinfo: Document .symver.
1030
4d3410fd
MH
1031Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1032
1033 * config/tc-d10v.c: Change pre_defined_registers to
1034 d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
1035
ec72a266
FF
1036Mon Feb 24 10:40:45 1997 Fred Fish <fnf@cygnus.com>
1037
1038 * config/obj-coff.c: Fix typo in comment section.
1039start-sanitize-tic80
1040 * config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
1041 an additional alignment argument.
1042 (find_opcode): Allow O_symbol relocs for any 32 bit field, not just
1043 base relative ones.
1044 (build_insn): Handle O_symbol relocs for any 32 bit field, not just
1045 base relative ones.
1046end-sanitize-tic80
1047
16aef5b0
DP
1048Mon Feb 24 02:23:00 1997 Dawn Perchik <dawn@cygnus.com>
1049
1050 * Makefile.in: Remove dependancies on itbl-cpu.h.
1051 * as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
1052 is not defined.
1053
ac6c6bdb
DP
1054Mon Feb 24 02:03:00 1997 Dawn Perchik <dawn@cygnus.com>
1055
1056 * itbl-ops.h: Include as.h.
1057
72797ffa
DP
1058Mon Feb 24 01:04:00 1997 Dawn Perchik <dawn@cygnus.com>
1059
1060 * as.c: Remove -t option.
1061 * configure, configure.in: Move itbl-cpu.h to mips specific configure.
1062 * itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
1063 * config/tc-mips.h: Define HAVE_ITBL_CPU.
1064
2f671f84
DP
1065Sun Feb 23 18:01:00 1997 Dawn Perchik <dawn@cygnus.com>
1066
1067 * itbl-ops.c: Don't define DEBUG.
1068
f9f0539f
DP
1069Sun Feb 23 17:49:00 1997 Dawn Perchik <dawn@cygnus.com>
1070
1071 * Makefile.in: Update itbl-test.c to reflect its new location.
1072
8d8a790b
DP
1073Sun Feb 23 15:50:00 1997 Dawn Perchik <dawn@cygnus.com>
1074
1075 * itbl-ops.c: Add test for itbl_have_entries.
1076 * config/tc-mips.c: Remove test for itbl_have_entries.
1077 * config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
1078
7b9f3d46
ILT
1079Sun Feb 23 18:13:19 1997 Ian Lance Taylor <ian@cygnus.com>
1080
1081 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
1082 itbl-ops.c. Add itbl-parse.c and itbl-lex.c.
1083 (LEX, LEXFLAGS): Define.
1084 * itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
1085
efec4a28
DP
1086Sat Feb 22 21:25:00 1997 Dawn Perchik <dawn@cygnus.com>
1087
1088 * itbl-parse.y: Fix indentation mistakes from indent program.
1089 * itbl-lex.l: Fix indentation mistakes from indent program.
1090 * itbl-ops.h: Add include for ansidecl.h.
1091 Add PARAMS around function arguments.
1092 Add declaration for itbl_have_entries.
1093 * itbl-ops.c: Add PARAMS around function arguments.
1094 * Makefile.in: Add itbl build rules.
1095 Add dependancies for itbl files to mips target.
1096 * as.c: Add itbl support.
1097 Add new option "--insttbl" for dynamically extending instruction set.
1098 * as.h: Declare insttbl_file_name;
1099 the name of file defining extensions to the basic instruction set
1100 * configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
1101 itbl-ops.o to extra_objects for mips configuration.
1102 Add include file link from itbl-cpu.h to
1103 config/itbl-${target_cpu_type}.h.
1104 * config/tc-mips.c: Allow copz instructions.
1105 Add notes for future additions to the itbl support.
1106 Add debug macros.
1107 (macro): Call itbl_assemble to assemble itbl instructions.
1108 See if an unknown register is specified in an itbl entry.
1109
d160b69e
FF
1110Sat Feb 22 20:53:01 1997 Fred Fish <fnf@cygnus.com>
1111 * doc/internals.texi (CPU backend): Fix typo in md_section_align
1112 description.
1113start-sanitize-tic80
1114 * config/tc-tic80.h (NEED_FX_R_TYPE): Define.
1115 * config/tc-tic80.c (find_opcode): Add code to support O_symbol
1116 operands.
1117 (build_insn): Grab a frag early so we can use the address in
1118 fixups. Take one's complement of BITNUM values before insertion
1119 in opcode. Add code to support O_symbol operands.
1120 (md_apply_fix): Replace unimplemented warning with implementation.
1121 (md_pcrel_from): Ditto.
1122 (tc_coff_fix2rtype): Ditto.
1123end-sanitize-tic80
1124
09d9ef26 1125Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1b524697
MH
1126start-sanitize-d30v
1127 * config/tc-d30v.c (parallel_ok): New function.
1128 * config/tc-d30v.h: Define TARGET_BYTES_BIG_ENDIAN.
1129end-sanitize-d30v
09d9ef26
MH
1130 * config/tc-d10v.c (md_pcrel_from_section): Return 0 if
1131 relocation is in different section. Fixes PR11574.
1132
e2e5acfa
JW
1133Fri Feb 21 10:08:25 1997 Jim Wilson <wilson@cygnus.com>
1134
1135 * tc-mips.c (mips_ip): If configured for an embedded ELF system,
1136 don't set the section alignment to 2**4.
1137
fee3e248
ILT
1138Fri Feb 21 11:55:03 1997 Ian Lance Taylor <ian@cygnus.com>
1139
b2f7cdd0
ILT
1140 * config/tc-m68k.c (line_comment_chars): Add '*'.
1141
830ce631
ILT
1142 * app.c (LEX_IS_TWOCHAR_COMMENT_2ND): Don't define.
1143 (do_scrub_begin): Don't set lex['*'].
1144 (do_scrub_chars): When handling LEX_IS_TWOCHAR_COMMENT_1ST, don't
1145 check for LEX_IS_TWOCHAR_COMMENT_2ND. Instead, just check for
1146 a literal '*'.
1147
fee3e248
ILT
1148 * configure.in: Set em=svr4 for m68k-*-sysv4*.
1149 * configure: Rebuild.
1150 * config/te-svr4.h: New file.
1151 * config/tc-m68k.c (m68k_comment_chars): Only include `#' if
1152 TE_SVR4 or TE_DELTA.
1153
48242b28
JL
1154Thu Feb 20 22:24:39 1997 Jeffrey A Law (law@cygnus.com)
1155
1156 * config/tc-mn10200.c (md_convert_frag): Create a fixup for the
1157 short conditional branch around a long unconditional branch.
1158
1af411e1
ILT
1159Thu Feb 20 13:56:00 1997 Ian Lance Taylor <ian@cygnus.com>
1160
64c5df8d
ILT
1161 * config/obj-coff.c (obj_coff_ln [both versions]): Call
1162 new_logical_line.
1163
1af411e1
ILT
1164 * config/tc-arm.c (fix_new_arm): Use make_expr_symbol to handle a
1165 complex expression.
1166
1167 * symbols.c (resolve_symbol_value): If both left and right
1168 operands are undefined, warn about both of them.
1169
78673fc6
ILT
1170Wed Feb 19 00:53:28 1997 Ian Lance Taylor <ian@cygnus.com>
1171
dd7feeb5
ILT
1172 Based on patches from Eric Youngdale <eric@andante.jic.com>:
1173 * config/obj-elf.c (elf_pseudo_table): Add "symver".
1174 (obj_elf_symver): New static function.
1175 * config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy the st_other
1176 field.
1177
1178 * write.c (relax_segment): Make type and printf format agree.
1179
78673fc6
ILT
1180 * read.c (get_line_sb): Don't end the line on a semicolon inside a
1181 string.
1182
14f23c28
MH
1183start-sanitize-d30v
1184Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1185
1186 * config/tc-d30v.c, config/tc-d30v.h: New files.
1187
1188 * configure: Rebuilt.
1189
1190 * configure.in: Add case for d30v.
1191
1192end-sanitize-d30v
1193Sun Feb 16 17:47:29 1997 Fred Fish <fnf@toadfish.ninemoons.com>
1194
1195 * config/tc-alpha.h (md_operand): Define with a null expansion,
1196 like all the other targets.
1197 * doc/internals.texi (CPU backend): Add missing word in
1198 md_flush_pending_output description. Fix typo in md_convert_frag
1199 description.
1200start-sanitize-tic80
1201 * config/tc-tic80: Minor comment additions/changes.
1202end-sanitize-tic80
1203
b253dcff
ILT
1204Fri Feb 14 18:09:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1205
1206 * config/tc-m68k.c (LOCAL_LABEL): Macro redefined if TE_DELTA.
1207 (tc_canonicalize_symbol_name): Macro defined if TE_DELTA.
1208 * config/obj-coff.c (obj_coff_def): Use
1209 tc_canonicalize_symbol_name if defined.
1210 (obj_coff_tag, obj_coff_val): Likewise.
1211 * expr.c (operand): Reject '~' as operator if is_name_beginner.
1212
d7bf6158
ILT
1213Fri Feb 14 17:24:48 1997 Ian Lance Taylor <ian@cygnus.com>
1214
f5ed78de
ILT
1215 Based on notes from Peter Eriksson <peter@ifm.liu.se>. The target
1216 does not actually work, though:
1217 * configure.in (i386-sequent-bsd*): New target.
1218 * configure: Rebuild.
1219 * config/tc-dynix.h: New file.
1220 * config/tc-i386.h: Define TARGET_FORMAT if TE_DYNIX.
1221
d7bf6158
ILT
1222 * read.c (do_align): Add max parameter. Change all callers.
1223 Remove useless static variables.
1224 (s_align): New static function. Do common portion of
1225 s_align_bytes and s_align_ptwo.
1226 (s_align_bytes, s_align_ptwo): Just call s_align.
1227 * frags.c (frag_align): Add max parameter. Change all callers.
1228 (frag_align_pattern): Likewise.
1229 * frags.h (frag_align, frag_align_pattern): Update declarations.
1230 * write.c (relax_segment): Limit alignment change to fr_subtype.
1231 Fix some types to be addressT.
1232 * config/obj-coff.c (size_section): Likewise.
1233 * config/obj-ieee.c (size_section): Likewise.
1234 * config/tc-d10v.h (md_do_align): Add max parameter.
1235 * config/tc-i386.h (md_do_align): Likewise.
1236 * config/tc-m88k.h (md_do_align): Likewise.
1237 * config/tc-m88k.c (m88k_do_align): Likewise.
1238 * config/tc-sh.h (md_do_align): Likewise.
1239 * config/tc-sh.c (sh_do_align): Likewise.
1240 * as.h: Improve comments on rs_align and rs_align_code.
1241 * doc/as.texinfo: Document new alignment arguments.
1242 * doc/internals.texi (Frags): Document use of fr_subtype field for
1243 rs_align and rs_align_code.
1244
1245Fri Feb 14 15:56:06 1997 Gavin Koch <gavin@cygnus.com>
1246
1247 * config/tc-mips.c: Changed opcode parsing.
1248
16171d71
FF
1249Thu Feb 13 20:02:16 1997 Fred Fish <fnf@cygnus.com>
1250
1251 * config/{tc-alpha.h, tc-arc.h, tc-d10v.h, tc-generic.h, tc-i960.h,
ec2f730d 1252 tc-mn10200.h, tc-mn10300.h, tc-sh.h, tc-vax.h, tc-w65.h}:
16171d71
FF
1253 Add default definition of zero for TARGET_BYTES_BIG_ENDIAN.
1254 * config/{tc-arm.h, tc-hppa.h, tc-i386.h, tc-mips.h, tc-ns32k.h,
1255 tc-ppc.h, tc-sparc.h}: Move definition of TARGET_BYTES_BIG_ENDIAN
1256 to a location consistent with the rest of the target include files.
1257 * config/tc-i386.c: Remove misleading comment.
1258 * doc/internals.texi (CPU backend): Add description of function
1259 md_undefined_symbol.
1260start-sanitize-tic80
1261 * config/tc-tic80.c: Add code to insert predefined symbols into the
1262 symbol table so they can be parsed by the standard expression parser.
1263 Remove custom code that use to parse them.
1264 * config/tc-tic80.h: Move definition of TARGET_BYTES_BIG_ENDIAN
1265 to a location consistent with the rest of the target include files.
1266end-sanitize-tic80
1267
9f13ead9
ILT
1268Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
1269
1270 * as.h: GNU c provides unlink() function.
1271
1272 Unify section handling on openVMS/Alpha:
1273 * config/tc-alpha.c(s_alpha_link): Remove.
1274 (s_alpha_section): New function.
1275 Remove case-hacking of symbols
1276 Add .code_address pseudo-op.
1277 (BFD_RELOC_ALPHA_CODEADDR): New relocation.
1278 (s_alpha_code_address): New function.
1279 (alpha_ctors_section, alpha_dtors_section): New sections for C++
1280 static constructors/destructors.
1281 Add debug code for crash debugs, to be removed when traceback code
1282 is added to object code.
1283 (s_alpha_name): New function for .name pseudo-op.
1284 (alpha_print_token): New function to print token expressions with
1285 alpha specific extensions.
1286
1287 * makefile.vms: Allow compilation with current gcc snapshot.
1288
af16e411
FF
1289Thu Feb 13 16:29:04 1997 Fred Fish <fnf@cygnus.com>
1290
1291 * doc/Makefile.in (TEXI2DVI): Set to just name of program.
1292 (DVIPS): Set to dvips.
1293 (ps, as.ps, gasp.ps): New targets.
1294 (internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
1295 and MAKEINFO env variables.
1296 (internals.ps): Use DVIPS macro.
1297 (clean): Remove core and backup files.
1298 (distclean): Remove temporary files from building internals.
1299 (clean-dvi): Ditto.
1300 * doc/internals.texi (Frags): Fix typo.
1301 (GAS processing): Ditto.
1302 (CPU backend): Ditto.
1303 * ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
1304 * mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
1305 * read.c: Remove ugly hack that dealt with config files not
1306 correctly defining TARGET_BYTES_BIG_ENDIAN.
1307 (target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
1308 * config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1309 * config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
1310 * config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1311 * config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
1312 * config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
1313 * config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
1314 with TARGET_BYTES_BIG_ENDIAN defined to 0.
1315 * config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
1316 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
1317 whether it is defined or not.
1318 * config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
1319 * config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
1320 and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
1321 whether it is defined or not.
1322start-sanitize-tic80
1323 * config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
1324 (TARGET_BYTES_BIG_ENDIAN): Define to 0.
1325end-sanitize-tic80
1326
89b41978
DE
1327Thu Feb 13 14:40:16 1997 Doug Evans <dje@canuck.cygnus.com>
1328
1329 * write.c (write_relocs): Correct text in as_fatal error message,
1330 bfd_perform_relocation -> bfd_install_relocation.
1331
151c3ec0
ILT
1332Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1333
1334 * config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
1335 * read.c (LEX_TILDE): Define if not defined.
1336 (lex_type): Use LEX_TILDE.
1337 * expr.c (get_symbol_end): Check first char with is_name_beginner,
1338 not is_part_of_name.
1339
4a1cb507
ILT
1340Thu Feb 13 11:40:58 1997 Ian Lance Taylor <ian@cygnus.com>
1341
3de9d78c
ILT
1342 * config/tc-sparc.c (md_show_usage): Add missing backslash at end
1343 of continued line.
1344
319305a7
ILT
1345 * config/tc-mips.c (mips16_extended_frag): Correct base address
1346 for an extended PC relative instruction.
1347 (md_convert_frag): Likewise.
1348
4a1cb507
ILT
1349 * config/tc-mips.c (prev_nop_frag): New static variable.
1350 (prev_nop_frag_holds): New static variable.
1351 (prev_nop_frag_required): New static variable.
1352 (prev_nop_frag_since): New static variable.
1353 (append_insn): If we aren't reordering, and prev_nop_frag is not
1354 NULL, and we don't need any nops, then decrease the size of
1355 prev_nop_frag. Don't insert nops because of instructions in
1356 noreorder sections. Remember whether the previous instructions
1357 where in noreorder sections even when not reordering.
1358 (mips_no_prev_insn): Add preserver parameter. Change all
1359 callers. Refer prev_nop_frag variables when appropriate.
1360 (mips_emit_delays): Set up prev_nop_frag.
1361 (s_mipsset): Clear prev_nop_frag if reordering.
1362
ebf28372
ILT
1363Wed Feb 12 14:36:29 1997 Ian Lance Taylor <ian@cygnus.com>
1364
9cd4e6cc
ILT
1365 * config/tc-mips.c (append_insn): Remove useless code which
1366 handled swapping a mips16 jump with a mips16 instruction with a
1367 reloc.
1368
05874c2e
ILT
1369 * config/tc-mips.c (md_parse_option): When debugging, set
1370 mips_optimize to 1, not 0.
1371
56bb6eee
ILT
1372 * config/tc-mips.c (mips16_ip): Handle an extend operand.
1373
eb17f56c
ILT
1374 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
1375 like the expression was based on `.', adjust the value of the
1376 symbol.
1377
035936da 1378 * config/tc-mips.c (append_insn): Warn about an attempt to put an
c0df26bb 1379 extended instruction in a delay slot when not reordering.
035936da
ILT
1380 (md_convert_frag): Warn if an extended instruction appears in a
1381 delay slot.
1382
ed3eb786
ILT
1383 * config/tc-mips.c (mips_pseudo_table): Add "insn".
1384 (s_insn): New static function.
1385 * doc/c-mips.texi: Document .insn.
1386
ebf28372
ILT
1387 * config/tc-mips.c (md_begin): Add the general registers to the
1388 symbol table.
1389 (mips16_ip): First parse the expression, and then see whether it
1390 came up with a register, rather than trying to first see whether
1391 we are looking at a register.
1392
11e08196
FF
1393start-sanitize-tic80
1394Tue Feb 11 15:13:39 1997 Fred Fish <fnf@cygnus.com>
1395
1396 * config/tc-tic80.c: Numerous changes and additions to flesh
1397 out functions that were previously just stubs, and fix some
1398 problems found using the new TIc80 testsuite cases.
1399
1400end-sanitize-tic80
16262668
ILT
1401Tue Feb 11 15:52:22 1997 Ian Lance Taylor <ian@cygnus.com>
1402
1403 * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
1404 (md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.
1405
1406 * config/tc-mips.c (append_insn): Output jump instruction as a
1407 pair of 2 byte instructions, rather than as a single 4 byte
1408 instruction.
1409
1410start-sanitize-r5900
1411 * config/tc-mips.c (md_begin): Correct test of mips_5900.
1412 (mips_ip): Don't check INSN_ISA for a macro.
1413
1414end-sanitize-r5900
276c2d7d
GRK
1415start-sanitize-r5900
1416Fri Feb 7 11:11:06 1997 Gavin Koch <gavin@cygnus.com>
1417
1418 * config/tc-mips.c: added r5900.
1419
1420end-sanitize-r5900
c6745073
DP
1421Mon Feb 10 22:06:00 1997 Dawn Perchik (dawn@cygnus.com)
1422
1423 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
1424 config/itbl-mips.h: Add copyright message and fix indentation.
1425
8e5c905e
DP
1426Mon Feb 10 18:09:00 1997 Dawn Perchik (dawn@cygnus.com)
1427
1428 * itbl-ops.c: New file. Add support for dynamically read
1429 instruction registers, opcodes and formats. Build internal table
1430 for new instructions and provide callbacks for assembler and
1431 disassembler.
1432 * itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
1433 spec table.
1434 * itbl-ops.h: New file. Header file for itbl support.
1435 * config/itbl-mips.h: New file. Mips specific definitions for
1436 itbl support.
1437
a7355c4d
JL
1438Fri Feb 7 09:52:34 1997 Jeffrey A Law (law@cygnus.com)
1439
1440 * config/tc-mn10200.c (md_assemble): If a constant operand won't
1441 fit into the constant field of a relaxable operand, then it does
1442 not match.
1443
e58035e3
JL
1444Thu Feb 6 20:08:12 1997 Jeffrey A Law (law@cygnus.com)
1445
1446 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
1447 a jsr target in a different section just like a jsr to
1448 an undefined target.
1449
6927c24d
ILT
1450Thu Feb 6 16:52:57 1997 Ian Lance Taylor <ian@cygnus.com>
1451
1452 * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
1453 against any mips16 symbols, not just externally visible ones.
1454 (md_apply_fix): Corresponding change.
1455
c9167640
ILT
1456Wed Feb 5 11:11:06 1997 Ian Lance Taylor <ian@cygnus.com>
1457
1458 * config/tc-mips.c (mips16_ip): Accept floating point registers in
1459 the operand of the exit instruction.
1460
76801700
ILT
1461Tue Feb 4 14:12:39 1997 Ian Lance Taylor <ian@cygnus.com>
1462
1463 * symbols.c (resolve_symbol_value): If we leave an equated symbol
1464 as O_symbol, copy over the segment.
1465
3569064f
ILT
1466Mon Feb 3 12:35:54 1997 Ian Lance Taylor <ian@cygnus.com>
1467
1748b9d8
ILT
1468 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
1469 fixup to be against the section symbol, adjust the value
1470 accordingly.
1471
3569064f
ILT
1472 * symbols.c (resolve_symbol_value): Don't change X_add_number for
1473 an equated symbol.
1474 * write.c (write_relocs): Avoid looping on equated symbols.
1475 Adjust fx_offset by X_add_number for each symbol.
1476 * config/obj-coff.c (do_relocs_for): Avoid looping on equated
1477 symbols.
1478 (fixup_segment): Add a loop to track down equated symbols and
1479 adjust fx_offset appropriately.
1480
f5d7f6fb
JL
1481Fri Jan 31 15:21:02 1997 Jeffrey A Law (law@cygnus.com)
1482
1483 * config/tc-mn10200.c (md_relax_table): Add entries to allow
1484 jmp -> bra relaxing.
1485 (md_convert_frag): Handle jmp->bra relaxing.
1486 (md_assemble): Handle jmp->bra relaxing.
1487 (md_estimate_size_before_relax): Likewise.
1488
fb50cd4e
ILT
1489Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1490
1491 * config/tc-i386.c (i386_align_code): Add comments explaining the
1492 nop instructions.
1493
a75abb6f
ILT
1494Fri Jan 31 10:46:14 1997 Ian Lance Taylor <ian@cygnus.com>
1495
2b063e6d
ILT
1496 * config/tc-sparc.c (enforce_aligned_data): New static variable.
1497 (sparc_cons_align): Don't do anything unless enforce_aligned_data
1498 is set.
1499 (md_longopts): Add "enforce-aligned-data".
1500 (md_show_usage): Mention --enforce-aligned-data.
1501 * doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
1502 enforce-aligned-data.
1503
fbd929fd
ILT
1504 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
1505 "word", and "short".
1506 (ppc_xcoff_cons): New static function.
1507
a75abb6f
ILT
1508 * write.c (relax_segment): Give an error if a .space symbol is
1509 common or undefined.
1510
1511 * read.c (read_a_source_file): Don't handle mri_pending_align if
1512 the handler is s_globl or s_ignore.
1513
f1ce6af4
FF
1514Thu Jan 30 11:46:59 1997 Fred Fish <fnf@cygnus.com>
1515
1516 * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
1517start-sanitize-tic80
1518 * config/tc-tic80.c: Many additions to previous placeholder file.
1519 * config/tc-tic80.h: Ditto.
1520end-sanitize-tic80
1521
0b476c53
ILT
1522Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
1523
1524 * config/tc-i386.c (i386_align_code): Improve the nop patterns.
1525
a6b200da
ILT
1526Thu Jan 30 12:08:40 1997 Ian Lance Taylor <ian@cygnus.com>
1527
0d7f9025
ILT
1528 * config/tc-mips.c (mips_fix_adjustable): New function.
1529 * config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
1530 (mips_fix_adjustable): Declare.
1531
a6b200da
ILT
1532 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
1533 * read.c (read_a_source_file): After doing an mri_pending_align,
1534 adjust the line_label if there is one.
1535 (s_space): Set mri_pending_align if an odd number of bytes were
1536 output.
1537
9073144e
MH
1538Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
1539
1540 * config/tc-d10v.h (md_do_align): Add this hook to call
1541 d10v_cleanup() when a ".align" is detected. Fixes PR11487.
1542
1543 * config/tc-d10v.c (find_opcode): Correctly calculate
1544 branch displacement when .aligns are present.
1545
33a4c28d
JL
1546Wed Jan 29 09:42:11 1997 Jeffrey A Law (law@cygnus.com)
1547
1548 * config/tc-mn10200.c (md_relax_table): Define.
1549 (md_convert_frag): Implement.
1550 (md_assemble): Handle relaxable operands/instructions correctly.
1551 (md_estimate_size_before_relax): Implement.
1552 * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
1553
645cb4dc
ILT
1554Tue Jan 28 15:27:28 1997 Ian Lance Taylor <ian@cygnus.com>
1555
39bb58e0
ILT
1556 * config/tc-mips.c (append_insn): Give an error for jumps to a
1557 misaligned address.
1558 (md_apply_fix): Make a branch to an odd address an error rather
1559 than a warning.
3b320c48 1560
31a2c6ff
ILT
1561 * config/tc-mips.c (md_convert_frag): If the user explicitly
1562 requested an extended opcode, pass warn as true to mips16_immed.
1563
645cb4dc
ILT
1564 * config/tc-mips.c (mips16_ip): Handle a missing expression like
1565 an explicit 0, so that explicitly extended instructions work
1566 correctly.
1567
0192b099
ILT
1568Mon Jan 27 17:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
1569
1570 * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
1571 symbol for a common symbol.
1572
f7ab9441
DE
1573Wed Jan 22 10:39:39 1997 Doug Evans <dje@canuck.cygnus.com>
1574
1575 Patch presumed to have been checked in awhile ago but wasn't.
1576 Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
1577 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
1578 (relax_segment, case rs_org): Move code inside braces. Move locals
1579 target,after inside too.
1580 (relax_segment, case rs_machine_dependent): Guts moved to ...
1581 (relax_frag): New function.
1582 Call md_prepare_relax_scan if defined.
1583
0ce48081
C
1584Mon Jan 20 10:56:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1585
1586 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
1587 'p' operand specifier.
1588
1589Mon Jan 20 10:39:36 1997 J.T. Conklin <jtc@cygnus.com>
ffecfc8b
C
1590
1591 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
1592 m68k family cpus which support long branch addressing modes.
1593 (m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
1594 md_create_long_jump): Use it.
1595
c36a90ef
ILT
1596Mon Jan 20 12:42:06 1997 Ian Lance Taylor <ian@cygnus.com>
1597
b3a64736
ILT
1598 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
1599 the .reginfo or .MIPS.options section if configured for an
1600 embedded target.
1601
c36a90ef
ILT
1602 * config/tc-mips.c (md_begin): Don't set interlocks for
1603 mips_4650.
1604
ad423373
ILT
1605Wed Jan 15 13:51:50 1997 Ian Lance Taylor <ian@cygnus.com>
1606
1607 * read.c (read_a_source_file): Make sure the symbol ends with
1608 whitespace before checking whether the next character is '='.
1609
03b24037
ILT
1610Tue Jan 14 15:07:27 1997 Robert Lipe <robertl@dgii.com>
1611
1612 * config/tc-i386.c (sco_id): Moved from here...
1613 * config/obj-elf.c (sco_id): ...to here. Adding the identifier
1614 really is an SCO ELF specific thing, not just a SCO x86 specific
1615 thing.
1616
4af93ad0
MM
1617start-sanitize-tic80
1618Mon Jan 13 22:43:01 1997 Michael Meissner <meissner@tiktok.cygnus.com>
1619
1620 * configure.in (tic80-*-*): Don't require 'coff'.
1621 * configure: Regenerate.
1622
1623end-sanitize-tic80
8ff75001
ILT
1624Thu Jan 9 09:08:43 1997 Ian Lance Taylor <ian@cygnus.com>
1625
6468dabd
ILT
1626 * read.c (emit_expr): Check for overflow of a negative value
1627 correctly.
1628 * write.c (fixup_segment): Likewise.
1629 * config/obj-coff.c (fixup_segment): Likewise.
1630
d703b5a7
ILT
1631 * config/tc-m68k.c (struct label_line): Define.
1632 (labels, current_label): New static variables.
1633 (md_assemble): Mark current_label as text, and clear it.
1634 (m68k_frob_label): New function.
1635 (m68k_flush_pending_output): New function.
1636 (m68k_frob_symbol): New function.
1637 * config/tc-m68k.h (tc_frob_label): Define.
1638 (md_flush_pending_output): Define.
1639 (tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
1640 (tc_frob_coff_symbol): Likewise.
1641
8ff75001
ILT
1642 * read.c (read_a_source_file): When defining a macro in MRI mode,
1643 don't add the symbol to the symbol table.
1644
78998629
JL
1645Tue Jan 7 11:21:42 1997 Jeffrey A Law (law@cygnus.com)
1646
1647 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
1648 here since fixup_segment doesn't (linkrelax is set).
1649 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
1650
62b2acba
JL
1651Mon Jan 6 15:19:32 1997 Jeffrey A Law (law@cygnus.com)
1652
1653 * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
1654 relocs.
1655
ac866582
JL
1656Fri Jan 3 16:47:08 1997 Jeffrey A Law (law@cygnus.com)
1657
62b2acba 1658 * config/tc-hppa.c (struct hppa_fix_struct): Tweak fx_r_field's type
ac866582
JL
1659 to avoid warnings with the native HP compiler.
1660 (fix_new_hppa): Similarly for the r_type argument.
1661 (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
1662 in an #if OBJ_ELF to keep gcc -Wall quiet.
1663 (md_apply_fix): Always initialize "result".
1664
1665 * config/tc-mn10200.c (md_assemble): Generate relocations.
1666
79811f6f
ILT
1667Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1668
1669 * config/tc-m68k.c (s_even): Adjust the alignment of the current
1670 section.
1671
ba8f9c09
ILT
1672Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
1673
1674 * config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
1675 pass on the new file hook.
1676
1677 * config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
1678 !alpha_force_relocation, as local LITERALs can be adjusted to be
1679 relative to the section.
1680
a78bc551
ILT
1681Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
1682
9f94df38
ILT
1683 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
1684 defined, call it.
3df036e9 1685 * config/tc-m68k.h (tc_frob_symbol): Check whether text label is
9f94df38
ILT
1686 aligned to odd boundary.
1687 (tc_frob_coff_symbol): Define.
1688
039d5a60
ILT
1689 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
1690
7b0688df
ILT
1691 * macro.c (macro_expand_body): In MRI mode, just copy a single &.
1692
2156d0d7
ILT
1693 * config/tc-m68k.c (m68k_ip): Call frag_grow before adding a
1694 PCINDEX frag. From Ronald F. Guilmette <rfg@monkeys.com>.
1695
a78bc551
ILT
1696 * config/tc-m68k.c (m68k_ip): Accept 'B' as a size for an
1697 immediate value.
1698 (md_assemble): If the size is 'B', set fx_signed.
1699 (md_apply_fix_2): Use fx_signed when checking for overflow.
1700
1701 * write.h (struct fix): Add fx_signed field.
1702 * write.c (fix_new_internal): Initialize fx_no_overflow and
1703 fx_signed fields.
1704 (fixup_segment): Use fx_signed when checking for overflow.
1705 * config/obj-coff.c (fixup_segment): Check fx_no_overflow and
1706 fx_signed when checking for overflow.
1707
b9129c6f
ILT
1708Thu Jan 2 13:37:29 1997 Ian Lance Taylor <ian@cygnus.com>
1709
0abdf280
ILT
1710 * NOTES, NOTES.config: Removed. These are rarely, if ever,
1711 updated, and all the useful information is in doc/internals.texi.
1712
a986926b
ILT
1713 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1714 * read.c (read_a_source_file): Check for conditional operators
1715 before doing an MRI pending alignment.
1716 * config/tc-m68k.h (m68k_conditional_pseudoop): Declare.
1717 (tc_conditional_pseudop): Define.
1718 * config/tc-m68k.c (m68k_conditional_pseudop): New function.
1719 * doc/internals.texi (CPU backend): Describe
1720 tc_conditional_pseudoop.
1721
924160b0
ILT
1722 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1723 * config/tc-m68k.c (m68k_rel32_from_cmdline): New static
1724 variable.
1725 (md_begin): Check m68k_rel32_from_cmdline before setting
1726 m68k_rel32.
1727 (m68k_mri_mode_change): Likewise.
1728 (md_longopts): Add --disp-size-default-16 and
1729 --disp-size-default-32.
1730 (md_parse_option): Handle new options.
1731 (md_show_usage): Mention new options.
1732 * doc/c-m68k.texi (M68K-Opts): Document new options.
1733
b4d51f3d
ILT
1734 Based on patch from Ronald F. Guilmette <rfg@monkeys.com>:
1735 * config/tc-m68k.c (m68k_index_width_default): New static
1736 variable.
1737 (m68k_ip): Use m68k_index_width_default to set the size of a base
1738 register whose size was not given.
1739 (md_longopts): Add --base-size-default-16 and
1740 --base-size-default-32.
1741 (md_parse_option): Handle new options.
1742 (md_show_usage): Mention new options.
1743 * doc/c-m68k.texi (M68K-Opts): Document new options.
1744
103e1158
ILT
1745 * doc/c-mips.texi: Mention ISA level 4, and the -mips16 option.
1746
e16b9537
ILT
1747 * configure.in: Recognize mips-*-linux* target.
1748 * configure: Rebuild.
1749
a162a490
ILT
1750 * config/tc-mips.c (load_register): Rewrite 64 bit handling to
1751 work if valueT is only 32 bits.
1752
b9129c6f
ILT
1753 * config/tc-mips.c: Throughout, check target_big_endian rather
1754 than byte_order.
1755 (byte_order): Remove.
1756 (mips_init_after_args): Remove.
1757 * config/tc-mips.h (LITTLE_ENDIAN, BIG_ENDIAN): Don't define.
1758 (mips_init_after_args): Don't declare.
1759 (tc_init_after_args): Don't define.
1760
1761 * config/tc-mips.h (tc_frob_after_relocs): Define if
1762 OBJ_MAYBE_ELF.
1763 (mips_elf_final_processing): Likewise.
1764 (ELF_TC_SPECIAL_SECTIONS): Likewise.
1765
6e7d5462
MM
1766start-sanitize-v850
1767Tue Dec 31 15:12:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1768
1769 * config/tc-v850.c (md_assemble): If this is sst.{h,w} or
1770 sld.{h,w} and the operand is relocatable, adjust the adend by
1771 shifting it right one bit.
1772
1773end-sanitize-v850
38fc0ba6
ILT
1774Tue Dec 31 12:56:41 1996 Ian Lance Taylor <ian@cygnus.com>
1775
20868ec6
ILT
1776 * read.c (read_a_source_file): Check mri_pending_align after
1777 checking for a macro. From Ronald F. Guilmette
1778 <rfg@monkeys.com>.
1779
6ded6615
ILT
1780 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
1781
38fc0ba6
ILT
1782 * config/tc-sparc.c (md_apply_fix3): Rename from md_apply_fix, and
1783 add segment argument. If OBJ_ELF, treat a relocation against a
1784 symbol in a linkonce section like a relocation against an external
1785 symbol.
1786 * config/tc-sparc.h (MD_APPLY_FIX3): Define.
1787
18e0764d
ILT
1788Mon Dec 30 11:35:40 1996 Ian Lance Taylor <ian@cygnus.com>
1789
1790 * config/tc-mips.c (mips16_macro): Add case for M_ABS.
1791
64556643
FF
1792Fri Dec 27 22:51:51 1996 Fred Fish <fnf@cygnus.com>
1793
1794 * NOTES.config (Implementation): as.h #define's "GAS" not "gas",
1795 includes config.h instead of host.h, tc.h instead of tp.h, and
1796 targ-env.h instead of target-environment.h.
1797 Also, obj-format.h includes targ-cpu.h instead of
1798 target-processor.h.
1799start-sanitize-tic80
1800 * configure.in (case ${generic_target}): Add tic80-*-coff entry.
1801 * configure: Rebuild with autoconf.
1802 * config/obj-coff.h (coff/tic80.h): Include if TC_TIC80 defined.
1803 (TARGET_FORMAT): Define to "coff-tic80".
1804 * config/tc-tic80.c: New file for TIc80 support.
1805 * config/tc-tic80.h: New file for TIc80 support.
1806end-sanitize-tic80
1807
7d99e8af
ILT
1808Fri Dec 27 11:42:29 1996 Ian Lance Taylor <ian@cygnus.com>
1809
1810 * doc/as.texinfo (M): Mention explicitly that -M changes macro
1811 handling.
1812
9c199842
ILT
1813Thu Dec 19 12:06:08 1996 Ian Lance Taylor <ian@cygnus.com>
1814
1815 * write.c (adjust_reloc_syms): If the fixup symbol has been
1816 equated to an undefined symbol, convert the fixup to being against
1817 the target symbol. Remove obsolete code handling a special case
1818 for i386 PIC.
1819
51cd0ae7
SS
1820Wed Dec 18 22:54:39 1996 Stan Shebs <shebs@andros.cygnus.com>
1821
1822 * mpw-make.sed: Use NewFolderRecursive for installation.
1823
cb07aaeb
MH
1824Wed Dec 18 16:00:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1825
1826 * config/tc-d10v.c (do_assemble): Correct previous bug fix.
1827
575453fb
MH
1828Wed Dec 18 15:27:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1829
1830 * config/tc-d10v.c (md_assemble): Fix bug which caused
1831 second instruction in a line to be case sensitize. PR11312
1832
5545556d
JL
1833Wed Dec 18 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
1834
1835 * config/tc-mn10200.c (mn10200_insert_operand): Don't
1836 range check operands with MN10200_OPERAND_NOCHECK set.
1837 (check_operand): Likewise.
1838
c0dea495
ILT
1839Tue Dec 17 10:59:32 1996 Ian Lance Taylor <ian@cygnus.com>
1840
f5e38044
ILT
1841 * config/tc-mips.c: Undo part of last Friday's alignment changes.
1842 (md_begin): Always align the text section to a four byte
1843 boundary.
1844 (append_insn): Remove call to record_align.
1845
fbcfacb7
ILT
1846 * config/tc-mips.c (insn_label): Remove.
1847 (struct insn_label_list): Define.
1848 (insn_labels, free_insn_labels): New static variables.
1849 (mips_clear_insn_labels): New static function.
1850 (append_insn): Mark all mips16 text labels, and make them odd.
1851 Handle all labels after emitting a nop, not just one. Call
1852 mips_clear_insn_labels rather than just clearing insn_label.
1853 (mips_emit_delays): Add insns parameter, and use it to decide
1854 whether to mark mips16 labels. Handle all labels, not just one.
1855 Force mips16 labels to be odd. Change all callers.
1856 (mips16_immed): Don't check for an odd branch target.
1857 (md_apply_fix): Don't check mips16 mode for a branch reloc.
1858 (mips16_extended_frag): Ignore the low bit in a branch target.
1859 (md_convert_frag): Likewise.
1860 (mips_no_prev_insn): Call mips_clear_insn_labels rather than just
1861 clearing insn_label.
1862 (mips_align, mips_flush_pending_output, s_cons): Likewise.
1863 (s_float_cons, s_gpword): Likewise.
1864 (s_align): Use insn_labels rather than insn_label.
1865 (s_cons, s_float_cons, s_gpword): Likewise.
1866 (mips_frob_file_after_relocs): New function.
1867 (mips_define_label): Rewrite to add to insn_labels list.
1868 * config/tc-mips.h (tc_frob_file_after_relocs): Define.
1869 * ecoff.c (ecoff_build_symbols): If the size of a function comes
1870 out odd, increment it.
1871
1872 * config/tc-mips.c (append_insn): Only update prev_insn when not
1873 reordering if place is NULL.
1874
c0dea495
ILT
1875 * config/tc-mips.c (mips16_ip): Check for a missing expression
1876 when using the register indirect addressing mode.
1877
d4ba37af
JL
1878Mon Dec 16 10:08:46 1996 Jeffrey A Law (law@cygnus.com)
1879
1880 * config/tc-mn10200.c (mn10200_insert_operand): Don't
1881 check 24bit operands for overflow.
1882 (check_operand): Likewise.
1883
868c3513
ILT
1884Mon Dec 16 11:50:40 1996 Ian Lance Taylor <ian@cygnus.com>
1885
1886 * doc/as.texinfo (Section): Document how to use the .section
1887 pseudo-op for COFF and ELF.
1888
6259c65f
ILT
1889Sun Dec 15 15:26:37 1996 Ian Lance Taylor <ian@cygnus.com>
1890
1891 * write.c (adjust_reloc_syms): Fix linkonce check for ELF.
1892
a677feeb
ILT
1893Sat Dec 14 22:37:27 1996 Ian Lance Taylor <ian@cygnus.com>
1894
1895 * config/tc-mips.c (prev_insn_reloc_type): New static variable.
1896 (RELAX_MIPS16_ENCODE): Add dslot and jal_dslot arguments, and
1897 store them. Adjust other RELAX_MIPS16 macros.
1898 (RELAX_MIPS16_DSLOT): Define.
1899 (RELAX_MIPS16_JAL_DSLOT): Define.
1900 (append_insn): Pass new arguments to RELAX_MIPS16_ENCODE. Correct
1901 handling of whether previous instruction has a fixup. Set
1902 prev_insn_reloc_type.
1903 (mips_no_prev_insn): Clear prev_insn_reloc_type.
1904 (mips16_extended_frag): Use the right base address for a PC
1905 relative add or load.
1906 (md_convert_frag): Likewise. If a PC relative add or load is
1907 used, record the alignment for the section.
1908
08e17202
ILT
1909Fri Dec 13 13:00:33 1996 Ian Lance Taylor <ian@cygnus.com>
1910
54815b9a
ILT
1911 * write.c (adjust_reloc_syms): Don't reduce a reloc against a
1912 linkonce section into a reloc against the section symbol.
1913
8a8121d5
ILT
1914 * config/tc-mips.c (mips16_macro): Remove nop instructions after
1915 branch instructions.
1916
08e17202
ILT
1917 * config/tc-mips.c (md_begin): If configured for an embedded ELF
1918 system, don't set the section alignment to 2**4.
1919 (s_change_sec): Likewise.
1920 (append_insn): Call record_alignment for the section.
1921 (md_section_align): Don't align the section size for an embedded
1922 ELF system.
1923
73d25784
ILT
1924Thu Dec 12 16:40:47 1996 Ian Lance Taylor <ian@cygnus.com>
1925
1926 * write.c (adjust_reloc_syms): Make sure that symbols are
1927 resolved; expression symbols may have been skipped.
8dd6fde3 1928 * config/obj-coff.c (fixup_segment): Likewise.
73d25784 1929
a460cd78
MM
1930Thu Dec 12 15:18:21 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1931
1932 * config/tc-ppc.c (ppc_elf_suffix): Move @plt to
1933 BFD_RELOC_24_PLT_PCREL relocation.
1934 (md_apply_fix3): Support BFD_RELOC_24_PLT_PCREL.
1935
60b43c4b
MH
1936Tue Dec 10 13:51:55 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
1937
1938 * config/tc-d10v.c (write_2_short): Remove code that called
1939 parallel_ok() when the programmer specified parallel instructions.
1940
42aa2435
JL
1941Tue Dec 10 12:23:19 1996 Jeffrey A Law (law@cygnus.com)
1942
a460cd78
MM
1943 * config/tc-mn10300.c (md_assemble): Update to handle endianness
1944 issues correctly.
1945
42aa2435
JL
1946 * config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
1947 * config/tc-mn10300.c (md_assemble): Likewise.
1948
41a0ed22
ILT
1949Tue Dec 10 11:37:14 1996 Ian Lance Taylor <ian@cygnus.com>
1950
9b2ac029
ILT
1951 * config/tc-mips.c (append_insn): Make sure there is enough room
1952 in a frag after a mips16 instruction to switch it with a jump
1953 instruction.
1954
41a0ed22
ILT
1955 * config/tc-mips.c (mips16_extended_frag): Give an error for an
1956 attempt to use a non absolute symbol in an extending frag.
1957
dc1f8a21
JL
1958Mon Dec 9 16:48:20 1996 Jeffrey A Law (law@cygnus.com)
1959
1960 * config/tc-mn10200.c: Flesh out assembler support for MN10200.
1961 * config/tc-mn10200.h: Likewise.
1962
102633ce
ILT
1963Mon Dec 9 17:09:42 1996 Ian Lance Taylor <ian@cygnus.com>
1964
a7dd20e8
ILT
1965 * app.c (do_scrub_chars): At the end of a C comment, pass space to
1966 UNGET rather than PUT. Set old_state before setting state to -2.
1967
559c664a
ILT
1968 * config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
1969 when extending because the value is exactly maxtiny + 1.
1970
8728fa92
ILT
1971 * config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
1972 arguments, and store them. Adjust other RELAX_MIPS16 macros.
1973 (RELAX_MIPS16_USER_SMALL): Define.
1974 (RELAX_MIPS16_USER_EXT): Define.
1975 (mips16_small, mips16_ext): New static variables.
1976 (append_insn): Pass mips16_small and mips16_ext to
1977 RELAX_MIPS16_ENCODE.
1978 (mips16_ip): Set mips16_small and mips16_ext.
1979 (mips16_immed): Don't check mips16_autoextend.
1980 (mips16_extended_frag): Check USER_SMALL and USER_EXT.
1981
102633ce
ILT
1982 * write.c (write_relocs): Print an error for an out of range
1983 fixup, rather than calling abort.
1984
1985 * as.c (main): Unlink the output file if there are errors while
1986 generating the fixups.
1987
15e69f98
ILT
1988Fri Dec 6 18:48:13 1996 Ian Lance Taylor <ian@cygnus.com>
1989
f74ba7a3
ILT
1990 * config/tc-mips.c (mips16_extended_frag): Don't call
1991 S_GET_VALUE.
1992 (md_convert_frag): Call resolve_symbol_value before calling
1993 S_GET_VALUE, and don't add in the frag address.
1994
15e69f98
ILT
1995 * config/tc-mips.c (mips16_immed): Add file and line parameters,
1996 and use them when reporting errors. Change all callers.
1997
ca82e4eb
JL
1998Fri Dec 6 15:36:32 1996 Jeffrey A Law (law@cygnus.com)
1999
2000 * config/tc-mn10300.c: Fix various gcc -Wall warnings.
2001 Remove '$' prefixing for registers.
2002
f787a8d9 2003Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
6cc03ed3 2004
f787a8d9
MH
2005 * config/tc-d10v.c (md_assemble): Check to see if prev_seg
2006 is initialized before using it.
2007 (d10v_cleanup): No longer uses its argument, so make it void.
6cc03ed3 2008
f787a8d9
MH
2009 * config/tc-d10v.h (d10v_cleanup): Change prototype.
2010
00a69b89
ILT
2011Thu Dec 5 11:03:31 1996 Ian Lance Taylor <ian@cygnus.com>
2012
2013 * write.c (fixup_segment): Don't discard the symbol for a PC
2014 relative fixup to an absolute symbol.
2015
996bee90
MH
2016Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2017
2018 * config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
2019 with multiple sections.
2020
943321c0
ILT
2021Wed Dec 4 13:00:07 1996 Ian Lance Taylor <ian@cygnus.com>
2022
2023 * config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
2024 no-mips-16 to no-mips16.
2025 (s_mipsset): Accept .set mips16 and .set nomips16.
2026
8b1e9f12
MM
2027Wed Dec 4 10:35:33 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2028
2029 * config/tc-ppc.c (ppc_elf_suffix): Take expressionS pointer
2030 argument, and check for +/- constant following the suffix, folding
2031 it into the expression.
2032 (ppc_elf_cons): Change ppc_elf_suffix calls.
2033 (md_assemble): Ditto.
2034 (shlib): Replace boolean mrelocatable with enumeration shlib.
2035 (md_parse_option): Discriminate between PIC style shared libraries
2036 and -mrelocatable.
2037 (ppc_elf_validate_fix): Don't report warnings for PIC style shared
2038 libraries.
2039
b61802e7
MM
2040Tue Dec 3 23:18:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2041
2042 * config/tc-ppc.h ({tc,ppc}_comment_chars): Define, so that we can
2043 change the comment characters.
2044
2045 * config/tc-ppc.c (comment_chars): Delete in favor of
2046 tc_comment_chars.
2047 (ppc_{eabi,solaris}_comment_chars): Eabi and Solaris versions of
2048 comment chars.
2049 (ppc_comment_chars): Select appropriate comment chars by default.
2050 (msolaris): New flag for -m{,no-}solaris.
2051 (md_parse_option): Recognize -K pic. Add support for
2052 -m{,no-}solaris.
2053 (md_show_usage): Update.
2054 (md_begin): Do not set ELF flags if Solaris.
2055 (ppc_elf_suffix): @local sets R_PPC_LOCAL24PC relocation.
2056 (md_apply_fix3): Add support for R_PPC_LOCAL24PC.
2057
2058Mon Dec 2 13:48:57 1996 Ian Lance Taylor <ian@cygnus.com>
2059
2060 * as.c (main): Correct handling of flag_always_generate_output.
2061
5840a0e5
JL
2062Sun Dec 1 21:46:05 1996 Jeffrey A Law (law@cygnus.com)
2063
a9f2e3e2
JL
2064 * config/tc-mn10300.c (tc_gen_reloc): Get the addend from
2065 fx_offset, not fx_addnumber.
2066
5840a0e5
JL
2067 * config/tc-mn10300.h (tc_fix_adjustable): Don't do any
2068 reloc adjustments.
2069
b608274a
ILT
2070Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
2071
2072 * config/tc-i386.c: Correct misspelling: balenced to balanced.
2073
caeea0b4
ILT
2074Wed Nov 27 13:25:39 1996 Ian Lance Taylor <ian@cygnus.com>
2075
2076 * config/tc-mips.c (md_section_align): Check for an alignment of
2077 4, not an alignment of 16. Corrects August 7 patch.
2078
cc5703cd
ILT
2079Tue Nov 26 10:33:16 1996 Ian Lance Taylor <ian@cygnus.com>
2080
775c64a9
ILT
2081 * configure, conf.in: Rebuild with autoconf 2.12.
2082
c830c9ea
ILT
2083 * config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
2084 alignment is specified.
2085
cc5703cd
ILT
2086 Add support for mips16 (16 bit MIPS implementation):
2087 * config/tc-mips.c: Extensive additions for mips16 support, not
2088 listed here.
2089 (RELAX_OLD, RELAX_NEW): Use only 7 bits each.
2090 (insn_uses_reg): Change last parameter to an enum.
2091 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
2092 (md_relax_frag): Define as mips_relax_frag.
2093 (mips_relax_frag): Declare.
2094 (struct mips_cl_insn): Add use_extend and extend fields.
2095 (tc_fix_adjustable): Define.
2096 * config/obj-elf.h (S_GET_OTHER): Define.
2097 (S_SET_OTHER): Define.
2098
3ab410cd
C
2099Mon Nov 25 18:02:29 1996 J.T. Conklin <jtc@beauty.cygnus.com>
2100
2101 * config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
2102 o and p operand specifiers.
2103
a0a2af4f
DE
2104Mon Nov 25 10:45:14 1996 Doug Evans <dje@seba.cygnus.com>
2105
2106 * write.c: Delete "ifndef md_relax_frag" around is_dnrange.
2107 (relax_segment, case rs_org): Move code inside braces. Move locals
2108 target,after inside too.
2109 (relax_segment, case rs_machine_dependent): Guts moved to ...
2110 (relax_frag): New function.
2111 Call md_prepare_relax_scan if defined.
2112 * config/tc-m68k.h (md_prepare_relax_scan): Renamed from
2113 M68K_AIM_KLUDGE.
2114
0671e7f6
JL
2115Mon Nov 25 08:49:36 1996 Jeffrey A Law (law@cygnus.com)
2116
a0a2af4f
DE
2117 * config/tc-mn10300.c (address_registers): Use '$' as register
2118 prefix instead of '%'.
2119 (data_registers, other_registers, md_assemble): Likewise.
2120
f98905f1
JL
2121 * config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
2122 (data_registers, other_registers, md_assemble): Likewise.
2123
0671e7f6
JL
2124 * config/tc-mn10300.c (md_assemble): Correctly determine the
2125 correct location and type for each relocation.
2126 (md_pcrel_from): Simplify.
2127
5895d3f2
ILT
2128Fri Nov 22 15:42:26 1996 Ian Lance Taylor <ian@cygnus.com>
2129
2130 * config/tc-sh.c (md_convert_frag): Improve warning when branch is
2131 converted into branch around branch.
2132
d9a9c18f
JL
2133Thu Nov 21 11:56:11 1996 Jeffrey A Law (law@cygnus.com)
2134
2135 * config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
2136 (tc_fix_adjustable): Don't adjust relocs against weak symbols or
2137 pc-relative relocs.
2138 * config/tc-mn10300.c (md_begin): Set linkrelax.
2139 (md_assemble): Create fixups as needed.
2140 (md_apply_fix3): Gut. It shouldn't ever get called anymore.
2141
5e9b714f
MM
2142Tue Nov 19 17:48:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2143
2144 * config/tc-d10v.c (parallel_ok): When automatically converting
2145 serial ops to parallel, do not consider a branch as the first
2146 instruction.
2147
7f02192d
JL
2148Tue Nov 19 13:35:22 1996 Jeffrey A Law (law@cygnus.com)
2149
2150 * config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
2151
43d695a1
JL
2152Mon Nov 18 15:26:55 1996 Jeffrey A Law (law@cygnus.com)
2153
2154 * config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
2155 via PARAMS.
2156 (check_operand): Likewise.
2157
228835a9
MM
2158Mon Nov 18 15:22:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2159
2160 * config/tc-d10v.c (parallel_ok): Branch and link instructions
2161 modify r13.
ec5e212b
MM
2162 (write_2_short): Call parallel_ok to check whether two short
2163 instructions the user requested execute in parallel, can be
2164 executed that way.
228835a9 2165
edb89bfc
MH
2166Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2167
2168 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't
2169 allow a branch and link in parallel with an exe instruction.
2170
2171Fri Nov 8 13:55:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2172
2173 * doc/c-d10v.texi: Add info on @word modifier.
2174
cdde2f5c 2175Wed Nov 6 13:46:07 1996 Jeffrey A Law (law@cygnus.com)
efba8af0
JL
2176
2177 * config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
2178 operands are assumed to be 32bits. Use "bits" field to hold the
2179 number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
2180 (mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
2181 to be 32bits.
cdde2f5c 2182
bdd91d4f
JL
2183 * config/tc-mn10300.c (mn10300_insert_operand): Shift low part
2184 of a MN10300_OPERAND_SPLIT operand by operand->shift.
2185
cdde2f5c
JL
2186 * config/tc-mn10300.c (mn10300_insert_operand): Handle
2187 MN10300_OPERAND_SPLIT.
2188
bfe5059c
JL
2189Tue Nov 5 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
2190
2191 * config/tc-mn10300.c (md_assemble): Insert operands into
2192 the extension part of the instruction if necessary.
2193 (mn10300_insert_operand): Accept pointer to extension word
2194 argument. Make insn a pointer argument too. Return type
2195 is now void. All callers changed.
2196
68328dc6
JL
2197Mon Nov 4 12:53:40 1996 Jeffrey A Law (law@cygnus.com)
2198
2199 * config/tc-mn10300.c (mn10300_insert_operand): Handle
2200 repeated register operands.
2201
9af40217
ILT
2202Fri Nov 1 10:42:49 1996 Ian Lance Taylor <ian@cygnus.com>
2203
9a5acea8
ILT
2204 * doc/as.texinfo: Added section on reporting bugs.
2205
9af40217
ILT
2206 * config/tc-alpha.c: Change uses of void * to PTR. Change the
2207 alpha_macro emit field to expect a const argument, and change the
2208 arg field to be const. Fix some spacing to follow the GNU
2209 standard.
2210
2211Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
2212
2213 * config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
2214 (pca56) and 21264 (ev6) cpus.
2215 (md_apply_fix): Private relocation types are now negative.
2216 (alpha_force_relocation): Likewise.
2217 (tc_gen_reloc): Likewise.
2218 (emit_insn): Likewise.
2219 (emit_ldXu): Do the right thing when the hardware can do byte insns.
2220 (emit_stX): Likewise.
2221 (emit_sextX): Likewise.
2222
527dc0c9
ILT
2223Thu Oct 31 16:33:21 1996 Ian Lance Taylor <ian@cygnus.com>
2224
2225 * config/obj-coff.c (do_relocs_for): Call resolve_symbol_value on
2226 a symbol found in a reloc.
2227
2228 * symbols.c (resolve_symbol_value): Improve the error message if
2229 an undefined symbol is used in an expression.
2230
fe7e5bdf
ILT
2231Wed Oct 30 20:15:35 1996 Ian Lance Taylor <ian@cygnus.com>
2232
2233 * doc/internals.texi: Rewrite, and add a lot of documentation.
2234 * doc/Makefile.in (internals.info): New target.
2235
a334533c 2236start-sanitize-v850
193e4197
JL
2237Wed Oct 30 14:55:57 1996 Jeffrey A Law (law@cygnus.com)
2238
2239 * config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
2240 against weak symbols.
2241
a334533c
JL
2242Tue Oct 29 12:28:16 1996 Jeffrey A Law (law@cygnus.com)
2243
baf385b5
JL
2244 * config/tc-v850.c (md_assemble): Don't lose for relaxable
2245 addresses like .+6.
2246
2385d90a
JL
2247 * config/tc-v850.c (md_convert_frag): Make sure we insert the
2248 fixup at the right address within the frag.
2249
bc49fab8
JL
2250 * config/tc-v850.c (md_convert_frag): Don't set fragP->fr_fix
2251 to an absolute value, instead increment it as needed.
2252
a334533c
JL
2253 * config/tc-v850.h (TC_GENERIC_RELAX_TABLE): Define.
2254 * config/tc-v850.c: Fix some indention problems.
2255 (md_relax_table): Define for D9->D99 branch displacement
2256 relaxing.
2257 (md_convert_frag): Do something useful instead of aborting.
2258 (md_estimate_size_before_relax): Likewise.
2259 (md_assemble): Note if the matching instruction has a relaxable
2260 operand. If it does, allocate frag with frag_var and don't
2261 do any fixups.
2262
2263end-sanitize-v850
a334533c
JL
2264Mon Oct 28 10:48:40 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2265
2266 * config/tc-d10v.h (md_cleanup): New function. This is needed to
2267 write out any buffered instructions when a ".end" is found.
2268
9051e56f
MH
2269Mon Oct 28 10:43:45 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2270
2271 * read.c (read_a_source_file): New hook md_cleanup().
2272
07f9de2a
ILT
2273Fri Oct 25 00:01:00 1996 Ian Lance Taylor <ian@cygnus.com>
2274
2275 * write.c (fix_new_exp): Use make_expr_symbol to build an
2276 expression symbol for a complex fixup.
2277
3723a1a9
JL
2278start-sanitize-v850
2279Thu Oct 24 14:31:04 1996 Jeffrey A Law (law@cygnus.com)
2280
d3bbd9dc
JL
2281 * config/tc-v850.c (v850_reloc_prefix): Several disgusting
2282 hacks to improve parsing of complex hi, lo, zda, etc
2283 expressions.
2284 (md_assemble): Don't demand and eat a trailing ')' after finding
2285 a v850 relocation prefix. Sign extend the constant in a
2286 BFD_RELOC_LO16 expression. Do eat a trailing ')' after a complete
2287 operand.
2288 (parse_cons_expression_v850): Don't eat a trailing ')' after
2289 finding a v850 relocation prefix.
2290
10fba7f1
JL
2291 * config/tc-v850.h (TC_PARSE_CONS_EXPRESSION): Define.
2292 (TC_CONS_FIX_NEW): Likewise.
2293 * config/tc-v850.c (parse_cons_expression_v850): New function.
2294 (cons_fix_new_v850): Likewise.
2295
3723a1a9
JL
2296 * config/tc-v850.h (tc_fix_adjustable): Don't adjust TDA relocs.
2297
2298end-sanitize-v850
20fbbb59
ILT
2299Wed Oct 23 18:20:29 1996 Ian Lance Taylor <ian@cygnus.com>
2300
2301 * config/tc-ppc.c (md_apply_fix3): Give a better warning message
2302 for an unknown relocation type.
2303
8ea15b86 2304start-sanitize-v850
7e96935e
JL
2305Wed Oct 23 16:21:28 1996 Jeffrey A Law (law@cygnus.com)
2306
2307 * config/tc-v850.c (md_pseudo_table): Add .word; allocates
2308 4 bytes of space.
2309
8ea15b86
JL
2310Tue Oct 22 22:01:25 1996 Jeffrey A Law (law@cygnus.com)
2311
2312 * config/tc-v850.c (md_assemble): Handle TDAOFF relocs
2313 differently for movea & sst/sld insns.
2314
2315end-sanitize-v850
39176dfe
MM
2316Tue Oct 22 17:09:32 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2317
2318 * config/tc-d10v.c (parallel_ok): Don't allow illegal combinations
2319 of instructions.
2320
87dd0a93
ILT
2321Tue Oct 22 11:28:39 1996 Ian Lance Taylor <ian@cygnus.com>
2322
2323 * obj.h (struct format_ops): Add frob_file_after_relocs field.
2324 * config/obj-multi.h (obj_frob_file_after_relocs): Define.
2325 * config/obj-ecoff.c (ecoff_format_ops): Initialize new
2326 frob_file_after_relocs field.
2327 * config/obj-elf.c (elf_format_ops): Likewise.
2328 * config/tc-mips.c: Undefine obj_frob_file_after_relocs before
2329 including obj-elf.h.
2330
d12d1f6c
ILT
2331Mon Oct 21 11:38:30 1996 Ian Lance Taylor <ian@cygnus.com>
2332
bf39474f
ILT
2333 * config/tc-mips.c (cons_fix_new_mips): Only treat 8 byte reloc
2334 specially if not ELF.
2335 (md_apply_fix): Handle BFD_RELOC_64.
2336 (tc_gen_reloc): Handle BFD_RELOC_64.
2337
3030e864
ILT
2338 * config/tc-i386.c (md_apply_fix3): Don't increment value for a PC
2339 relative reloc when BFD_ASSEMBLER and OBJ_AOUT (more ugly gas
2340 reloc hacking).
2341
d12d1f6c
ILT
2342 * config/obj-aout.h (S_IS_DEFINE): non BFD_ASSEMBLER version:
2343 Don't check S_GET_OTHER.
2344
b70795e9
ILT
2345Fri Oct 18 14:06:26 1996 Ian Lance Taylor <ian@cygnus.com>
2346
538034cf
ILT
2347 * config/tc-mips.c (mips_ip): Accept an odd floating point
2348 register with l.s or s.s.
2349
b70795e9
ILT
2350 * config/obj-aout.c (obj_pseudo_table): Use obj_aout_type for
2351 .type pseudo-op.
2352 (obj_aout_type): New static function.
2353
b9d55d96
ILT
2354Thu Oct 17 17:55:17 1996 Ian Lance Taylor <ian@cygnus.com>
2355
2356 * Makefile.in ($(OBJS)): Depend upon libiberty.h.
2357
f964b01d 2358start-sanitize-v850
0f8e50bb
JL
2359Wed Oct 16 11:28:31 1996 Jeffrey A Law (law@cygnus.com)
2360
548ddc71
JL
2361 * config/tc-v850.c (v850_reloc_prefix): Recognize zdaoff, tdaoff
2362 and sdaoff expressions.
2363
0f8e50bb
JL
2364 * write.c (fixup_segment): Don't add symbol value to addend if
2365 TC_V850 and OBJ_ELF.
2366 * config/tc-v850.h (tc_fix_adjustable): Don't adjust any
2367 pc-relative fixups.
2368
2369 * config/tc-v850.c (md_pcrel_from): Undo yesterday's changes.
2370 (md_pcrel_from_section): Likewise.
2371 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Likewise.
2372
2373Tue Oct 15 23:19:00 1996 Jeffrey A Law (law@cygnus.com)
f964b01d
JL
2374
2375 * config/tc-v850.c (md_pcrel_from): Delete unused function.
2376 (md_pcrel_from_section): New function.
2377 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
2378
2379end-sanitize-v850
0267c6c9
ILT
2380Mon Oct 14 13:59:12 1996 Ian Lance Taylor <ian@cygnus.com>
2381
2382 * config/tc-mips.c (load_register): Add cast to offsetT when using
2383 a constant with &~.
2384
5d0cd0b8
ILT
2385Mon Oct 14 11:24:28 1996 Richard Henderson <rth@tamu.edu>
2386
2387 * config/obj-elf.c (elf_frob_file): Move ECOFF debug processing to ...
2388 (elf_frob_file_after_relocs): ... here. New function.
2389 * config/obj-elf.h (obj_from_file_after_relocs): New macro.
2390 * write.c (write_object_file): Call *frob_after_relocs after the
2391 call to write_relocs.
2392
2393 * config/tc-alpha.c: Use new BFD_RELOC_ALPHA_ELF_LITERAL reloc.
2394
2395 * config/tc-alpha.c (load_expression): Don't SET_VALUE on the section
2396 symbol, as this messes up linking. Instead, expand the recursive call
2397 inline and change up the appropriate bits to get the 0x8000 offset
2398 in the reloc addend.
2399
914f8998
ILT
2400Thu Oct 10 17:30:31 1996 Ian Lance Taylor <ian@cygnus.com>
2401
1491f2ea
ILT
2402 * config/tc-sparc.h (tc_fix_adjustable): Permit the difference of
2403 two symbols in the same segment to be adjusted.
2404
914f8998
ILT
2405 * configure.in: Don't get confused by CPU-VENDOR-linux-gnu.
2406 * configure: Rebuild.
2407
f8a011cf
MM
2408Thu Oct 10 17:22:18 1996 Michael Meissner <meissner@tiktok.cygnus.com>
2409
2410 * config/tc-ppc.c (ppc_insert_operand): Change most warnings into
2411 errors.
2412 (ppc_elf_validate_fix): Ditto.
2413 (md_assemble): Ditto.
2414 (ppc_tc): Ditto.
2415 (ppc_pe_section): Ditto.
2416 (ppc_frob_symbol): Ditto.
2417
1c3ae169
JL
2418Thu Oct 10 12:05:45 1996 Jeffrey A Law (law@cygnus.com)
2419
3ab9337b
JL
2420 * config/mn10300.c (md_assemble): Pass an extra shift count
2421 to mn10300_insert_operand based on the opcode format.
2422 (mn10300_insert_operand): Accept and use extra shift count
2423 parameter.
2424
778c521b
JL
2425 * config/tc-mn10300.c (md_assemble): Use FMT_* macros for
2426 formats rather than hard-coded constants.
2427
1c3ae169
JL
2428 * config/tc-mn10300.c (md_assemble): Format D5 instructions
2429 are 7 bytes long. Write out instructions in big-endian format.
2430
a6be605a
JL
2431Tue Oct 8 14:56:15 1996 Jeffrey A Law (law@cygnus.com)
2432
1c3ae169 2433 * config/tc-mn10300.c (md_assemble): Tweak further so
a6be605a
JL
2434 that all instructions are parsed correctly.
2435
5e1e8f23
ILT
2436Tue Oct 8 13:02:21 1996 Ian Lance Taylor <ian@cygnus.com>
2437
2438 * as.h: Include libiberty.h.
2439 (xmalloc, xrealloc): Don't declare.
2440 * as.c: Don't include libiberty.h.
2441 * expr.c, read.c, stabs.c, config/obj-coff.c: Likewise.
2442 * config/tc-mips.c: Likewise.
2443 * messages.c: Likewise.
2444 (xstrerror): Don't declare.
2445 * xmalloc.c: Remove.
2446
1217102f
JL
2447Mon Oct 7 16:53:23 1996 Jeffrey A Law (law@cygnus.com)
2448
2449 * config/tc-mn10300.h (pre_defined_registers) Remove.
2450 (system_registers, cc_names): Likewise.
2451 (address_registers, data_registers, other_registers): New register
2452 arrays.
2453 (register_name, system_register_name, cc_name): Remove.
2454 (mn10300_reloc_prefix): Likewise.
2455 (data_register_name): New function.
2456 (address_register_name, other_register_name): Likewise.
2457 (md_assemble): Rough cut at parsing operands. Remove lots of
2458 unwanted code.
2459 (md_apply_fix3): Disable for now.
2460
99e3ccb6
ILT
2461Mon Oct 7 11:38:34 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2462
2463 * config/tc-m68k.c (select_control_regs): New function, extracted
2464 out of m68k_init_after_args.
2465 (m68k_init_after_args): Use it.
2466 (mri_chip): Use it here as well to update set of allowed control
2467 regs for movec.
2468
0bd28bc4
ILT
2469Mon Oct 7 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
2470
2471 * config/obj-elf.c (elf_begin): New function.
2472 (obj_elf_section): Add the section symbol to the symbol table.
2473 * config/obj-elf.h (obj_begin): Define.
2474 (elf_begin): Declare.
2475 * as.c (perform_an_assembly_pass): Call obj_begin if it is
2476 defined.
2477
eb0dafdc
ILT
2478Fri Oct 4 18:37:32 1996 Ian Lance Taylor <ian@cygnus.com>
2479
2480 * config/obj-coff.c (fixup_segment): Subtract the section address
2481 from a PC relative reloc if TC_M68K.
2482
76f841e6
ILT
2483Thu Oct 3 15:15:30 1996 Ian Lance Taylor <ian@cygnus.com>
2484
2485 * config/tc-sparc.c (md_pseudo_table): Make .uahalf, .uaword, and
2486 .uaxword available even if not OBJ_ELF.
2487 (md_atof): Remove unused local variable wordP.
2488
0f91d763
JL
2489Thu Oct 3 00:16:50 1996 Jeffrey A Law (law@cygnus.com)
2490
2491 * config/tc-mn10x00.c, config/tc-mn10x00.h: New files
2492 for Matsushita MN10x00 support.
2493 * configure.in: Recognize mn10x00-*-*
2494 * configure: Rebuilt.
2495
7c328bc7
ILT
2496Wed Oct 2 15:54:03 1996 Klaus Kaempf <kkaempf@progis.de>
2497
2498 * obj-evax.h: move openvms definitions from here to tc-alpha.c.
2499 * tc-alpha.c: add support for vms_case_hack like in vax/vms.
2500 (load_expression): track clobbering of base reg before jmp/jsr.
2501 (s_alpha_file): pass case_hack flags and source filename via
2502 symbol table to bfd.
2503 * tc-alpha.h (TC_CONS_FIX_NEW): define
2504
fed13a5e
ILT
2505Tue Oct 1 16:16:01 1996 Joel Sherrill <joel@oarcorp.com>
2506
2507 * configure.in (mips-*-rtems*): New target, like mips-*-elf*.
2508 * configure: Rebuild.
2509
ffef69a3
ILT
2510Tue Oct 1 12:37:48 1996 Ian Lance Taylor <ian@cygnus.com>
2511
a69e5977
ILT
2512 * read.c (s_macro): Warn if a macro has the same name as a
2513 pseudo-op.
2514 (s_space): In m68k MRI mode, align to a word boundary.
2515 * macro.c (define_macro): Add namep parameter. Change all
2516 callers.
2517 * macro.h (define_macro): Update declaration.
2518
bfc94743
ILT
2519 * as.c (show_usage): Print bug report address.
2520 (parse_args): Change version printing to match current GNU
2521 standards.
2522 * gasp.c (show_usage): Print bug report address.
2523 (main): Change version printing to match current GNU standards.
2524
0b810a6e
ILT
2525 * config/tc-m68k.c (init_table): Correct access control unit
2526 register numbers. From Ken Rose <rose@netcom.com>.
2527
ffef69a3
ILT
2528 * config/tc-alpha.c: Add some static function prototypes.
2529 (alpha_macros): Move to top of file. Make static.
2530 (alpha_num_macros): Move to top of file.
2531
8940a583
SG
2532start-sanitize-v850
2533Tue Oct 1 09:36:19 1996 Stu Grossman (grossman@critters.cygnus.com)
2534
2535 * tc-v850.h: Define LOCAL_LABEL to recognise _.L_* symbols
2536 generated by DWARF.
2537
2538end-sanitize-v850
2539Sat Sep 28 03:38:08 1996 Ian Lance Taylor <ian@cygnus.com>
2540
2541 * listing.c (list_symbol_table): Remove bogus code in BFD64 case,
2542 and just call sprintf_vma.
2543
4fc2c99a
ILT
2544Thu Sep 26 16:04:11 1996 Ian Lance Taylor <ian@cygnus.com>
2545
2546 * expr.c (expr): Change >>= to >> (fix typo). (From meissner).
2547
97f8e6ff
ILT
2548Tue Sep 24 19:05:08 1996 Ian Lance Taylor <ian@cygnus.com>
2549
2550 * read.c (float_cons): Call md_flush_pending_output if it is
2551 defined.
2552
97f8e6ff
ILT
2553Tue Sep 24 12:22:18 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2554
2555 * config/tc-d10v.c (md_operand): Created. Allows operands to
2556 start with '#'.
2557 * config/tc-d10v.h (md_operand): Undefined.
2558
6e4f3f09
ILT
2559Mon Sep 23 12:13:18 1996 Ian Lance Taylor <ian@cygnus.com>
2560
2561 * config/tc-m68k.c (add_fix): Treat a width of '3' like 'B'.
2562 (md_assemble): A fixup width of '3' means a 1 byte reloc.
2563
72f70020
ILT
2564Thu Sep 19 12:21:24 1996 Ian Lance Taylor <ian@cygnus.com>
2565
2566 * config/obj-coff.c (fixup_segment): Don't adjust PC relative
2567 reloc for the i960 for a reloc in the same section. This undoes
2568 one of the two changes made Aug 19.
2569
ab299844
ILT
2570Wed Sep 18 12:11:58 1996 Ian Lance Taylor <ian@cygnus.com>
2571
2572 * config/obj-coff.c (obj_coff_endef): Both versions: Move C_STAT
2573 symbols to the position of the debugging information.
2574
15405999
ILT
2575Mon Sep 16 11:41:40 1996 Ian Lance Taylor <ian@cygnus.com>
2576
2577 * expr.c (expr): Always use unsigned right shifts for >>.
2578
f17be658
JSC
2579Thu Sep 12 10:25:45 1996 James G. Smith <jsmith@cygnus.co.uk>
2580
2581 * config/tc-arm.c (md_apply_fix3): Update two thumb instruction
2582 slots when processing BL fixups.
2583
2584 * config/tc-arm.c (output_inst): Ensure Thumb BL fixup is marked
2585 on the first half of the instruction.
2586
475c826b
ILT
2587Wed Sep 11 00:09:35 1996 Ian Lance Taylor <ian@cygnus.com>
2588
1decafee
ILT
2589 * ecoff.c (ecoff_stab): Create an expression symbol for a complex
2590 stabs expression, rather than giving an error.
2591
475c826b
ILT
2592 * ecoff.c (ecoff_new_file): Don't do anything if we are still in
2593 the same file.
2594
8a3bdc3d
ILT
2595Tue Sep 10 11:45:37 1996 Ian Lance Taylor <ian@cygnus.com>
2596
2597 * config/tc-mips.c (append_insn): Fill in the value for a constant
2598 jump, rather than creating a reloc.
2599
517078c1
ILT
2600Mon Sep 9 10:57:42 1996 Ian Lance Taylor <ian@cygnus.com>
2601
d31a3f5e
ILT
2602 * config/tc-mips.c (append_insn): Don't swap an instruction which
2603 sets a condition code with an instruction which uses a condition
2604 code.
2605 (mips_ip): In cases 'N' and 'M', look for $fccN rather than an
2606 immediate value.
2607
ca296aab 2608 * config/tc-mips.c (md_begin): Recognize r5000 for cpu.
517078c1
ILT
2609 (mips_ip): Give a better error message if the ISA level is wrong.
2610 (md_parse_option): Recognize -mcpu=[v][r]5000.
2611
2612Sat Sep 7 13:25:55 1996 James G. Smith <jsmith@cygnus.co.uk>
2613
2614 * config/tc-mips.c (COUNT_TOP_ZEROES): Added macro to count
2615 leading zeroes.
2616 (load_register): Ensure hi32 bits are not lost during lo32bit
2617 processing. Fix shift offset that was overflowing into the next
2618 instruction field. Add code to generate shorter sequences for
2619 constants with a single contiguous seqeuence of ones.
2620
5e6c6406
MH
2621Fri Sep 6 17:07:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2622
2623 * config/tc-d10v.c (d10v_dot_word): New function to support
2624 "@word" with the word pseudo-op.
2625 (md_apply_fix3): Cleanup and changes to support correct sizes
2626 for 16 and 18-bit relocs.
2627
df4021c1
DE
2628Fri Sep 6 16:00:29 1996 Doug Evans <dje@canuck.cygnus.com>
2629
2630 * configure.in (sparc-*-aout): Set `em'.
2631 * configure: Regenerated.
2632 * config/te-sparcaout.h: New file.
2633 * config/tc-sparc.h (TARGET_BYTES_BIG_ENDIAN): Define.
2634 Ifdef TE_SPARCOUT define TARGET_FORMAT and SPARC_BIENDIAN.
2635 * config/tc-sparc.c (INSN_BIG_ENDIAN): New macro.
2636 (SPECIAL_CASE_{SETSW,SETX}): Define.
2637 ({NOP,OR,FMOVS,SETHI,SLLX,SRA}_INSN): Define.
2638 (md_begin): Delete setting of `target_big_endian'.
2639 (output_insn): New function.
2640 (md_assemble): Rewrite. Add `setx' support.
2641 (sparc_ip): Handle `0' operand char. Recognize setuw, setsw, setx
2642 special cases.
2643 (md_atof): Add little endian support.
2644 (md_number_to_chars): Likewise.
2645 (md_apply_fix): Likewise.
2646 (md_longopts): Recognize -EL,-EB ifdef SPARC_BIENDIAN.
2647 (md_parse_option): Likewise.
2648 (md_show_usage): Print -EL, -EB ifdef SPARC_BIENDIAN.
2649
cfc71c6d
ILT
2650Thu Sep 5 13:40:29 1996 Ian Lance Taylor <ian@cygnus.com>
2651
2652 * ecoff.c (ecoff_new_file): New function.
2653 * ecoff.h (ecoff_new_file): Declare.
2654 * config/obj-ecoff.h (obj_app_file): Define.
2655
2656Thu Sep 5 13:39:25 1996 Richard Henderson <rth@tamu.edu>
2657
2658 * config/tc-alpha.c (load_expression): Bias the .lit8 section
2659 symbol by 32k so that our 16-bit signed offset can address the
2660 entire chunk. Reported by <matt@lkg.dec.com>.
2661
711254da
ILT
2662Wed Sep 4 10:23:20 1996 Ian Lance Taylor <ian@cygnus.com>
2663
2664 * config/tc-mips.c (load_register): Remove unused variable tmp.
2665
1b68deb5
JSC
2666Wed Sep 4 11:24:29 1996 James G. Smith <jsmith@cygnus.co.uk>
2667
2668 * config/tc-mips.c (load_register): Remove unnecessary code that
2669 was causing the high 32bits of 64bit constants to be lost.
2670
1b68deb5
JSC
2671Tue Sep 3 13:52:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2672
2673 * config/tc-d10v.c: Added changes to support function
2674 pointers and "@word" syntax.
2675
c84615bc 2676start-sanitize-v850
05fd83ed
JL
2677Tue Sep 3 11:57:18 1996 Jeffrey A Law (law@cygnus.com)
2678
2679 * config/tc-v850.c: Remove commented out and #if 0'd code.
2680 (v850_reloc_prefix): Provide prototype.
2681 (postfix, get_reloc, build_insn): Remove prototypes for nonexistant
2682 functions.
2683 (md_begin, md_assemble, md_apply_fix3): Remove unused variables.
2684 (md_assemble): Add default to case statement.
2685
270fd2ad
JL
2686Sat Aug 31 16:03:00 1996 Jeffrey A Law (law@cygnus.com)
2687
2688 * config/tc-v850.c (md_assemble): Compute size of the instrction
2689 from the opcode.
74dd0c07 2690
2d56269e
JL
2691 * config/tc-v850.c (md_apply_fix3): Do simple byte, short and
2692 word fixups too.
2693
270fd2ad
JL
2694Fri Aug 30 23:50:08 1996 Jeffrey A Law (law@cygnus.com)
2695
74dd0c07
JL
2696 * config/tc-v850.c (md_apply_fix3): Use little endian get/put
2697 routines to fetch/store the updated instruction from/to memory.
2698 (v850_insert_operand): If the operand has a specialized insert
2699 routine, call it.
2700
c84615bc
C
2701Fri Aug 30 18:35:26 1996 J.T. Conklin <jtc@hippo.cygnus.com>
2702
2703 * config/tc-v850.c (reg_name_search): Align calling convention to
2704 be like identical function found in tc-ppc.c.
2705 (get_reloc): Removed.
2706 (v850_reloc_prefix): New function, parse lo(), hi() and hi0().
2707 (md_assemble): emit fixups.
2708 (md_pcrel_from): renamed from md_pcrel_from_section, emit proper
2709 displacement.
2710 (md_apply_fix3): handle fixups/relocs.
2711 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Removed definition.
2712
2713end-sanitize-v850
0f616818
ILT
2714Fri Aug 30 18:12:00 1996 Ian Lance Taylor <ian@cygnus.com>
2715
2716 Add SH ELF support.
2717 * configure.in (sh-*-elf*): New target.
2718 * config/tc-sh.h (TARGET_ARCH): Define.
2719 (WORKING_DOT_WORD): Define.
2720 (TC_COFF_FIX2RTYPE): Only define if OBJ_COFF.
2721 (BFD_ARCH, COFF_MAGIC, TC_COUNT_RELOC): Likewise.
2722 (TC_RELOC_MANGLE, tc_coff_symbol_emit_hook): Likewise.
2723 (DO_NOT_STRIP, NEED_FX_R_TYPE, TC_KEEP_FX_OFFSET): Likewise.
2724 (TC_COFF_SIZEMACHDEP, tc_frob_file): Likewise.
2725 (SUB_SEGMENT_ALIGN): Likewise.
2726 (RELOC_32): Don't define.
2727 (tc_frob_file_before_adjust): Define if BFD_ASSEMBLER.
2728 (target_big_endian): Declare if OBJ_ELF.
2729 (TARGET_FORMAT): Define if OBJ_ELF.
2730 * config/tc-sh.c: Use BFD reloc codes instead of SH COFF reloc
2731 numbers throughout.
2732 (tc_crawl_symbol_chain): Only define if OBJ_COFF.
2733 (tc_headers_hook, tc_coff_sizemachdep): Likewise.
2734 (struct sh_count_relocs): Define.
2735 (sh_count_relocs): New static function, broken out of
2736 sh_frob_file. Add BFD_ASSEMBLER code.
2737 (sh_frob_section): Likewise.
2738 (sh_frob_file): Call sh_frob_section.
2739 (md_convert_frag): If BFD_ASSEMBLER, change type of headers, and
2740 call section_symbol rather than seg_info (seg)->dot.
2741 (md_section_align): Add OBJ_ELF version.
2742 (SWITCH_TABLE_CONS): Define.
2743 (SWITCH_TABLE): Use SWITCH_TABLE_CONS.
2744 (md_apply_fix): Change parameter types if BFD_ASSEMBLER. Only
2745 handle fx_r_type == 0 if not BFD_ASSEMBLER. Return 0 if
2746 BFD_ASSEMBLER.
2747 (struct reloc_map): Define if not BFD_ASSEMBLER.
2748 (coff_reloc_map): Likewise.
2749 (sh_coff_reloc_mangle): Use coff_reloc_map to convert fx_r_type.
2750 (tc_gen_reloc): New function if BFD_ASSEMBLER.
2751 * write.c (write_relocs): Ifdef out fx_where test which triggers
2752 inappropriately for SH ELF.
2753 (write_object_file): Call tc_frob_file_before_adjust and
2754 obj_frob_file_before_adjust if they are defined.
2755
2756 * write.c (write_object_file): Use BFD_RELOC_16, not
2757 BFD_RELOC_NONE, when calling fix_new_exp for a broken word.
2758
2759 * read.c (emit_expr): Fix conversion of byte count to BFD reloc
2760 code.
2761
20dbcd5c
MH
2762Fri Aug 30 14:47:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2763
2764 * config/tc-d10v.c (find_opcode): Fix problem with calculating
2765 branch sizes in across sections.
2766
05631de2
JL
2767start-sanitize-v850
2768Fri Aug 30 00:44:13 1996 Jeffrey A Law (law@cygnus.com)
2769
2770 * config/tc-850.c (md_assemble): Handle hi() correctly. Handle
2771 hi0() too.
2772
2773Wed Aug 28 23:11:08 1996 Jeffrey A Law (law@cygnus.com)
2774
2775 * config/tc-v850.c (md_begin): Deal with end of opcode
2776 table marker.
2777
2778end-sanitize-v850
e592d28f
MH
2779Wed Aug 28 19:20:04 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2780
2781 * config/tc-d10v.c (find_opcode): Fix a bug which could generate
2782 the wrong opcode for cases like st2w where there are many forms
2783 of the same instruction.
2784
6fce31a6
ILT
2785Tue Aug 27 13:53:22 1996 Ian Lance Taylor <ian@cygnus.com>
2786
2787 * expr.c (operand): If md_parse_name is defined, call it before
2788 calling symbol_find_or_make.
2789 * config/tc-ppc.h (md_parse_name): Define.
2790 (ppc_parse_name): Declare.
2791 * config/tc-ppc.c (reg_name_search): Add regs and regcount
2792 parameters.
2793 (register_name): Update call to reg_name_search.
2794 (cr_operand): New static variable.
2795 (cr_names): New static const array.
2796 (ppc_parse_name): New function.
2797 (md_assemble): If PPC_OPERAND_CR is set in the operand flags, set
2798 cr_operand before calling expression.
2799
a58b037a
JL
2800Tue Aug 27 09:05:50 1996 Jeffrey A Law (law@cygnus.com)
2801
2802 * config/tc-hppa.c (tc_gen_reloc): Add new argument to
2803 hppa_gen_reloc_type call.
2804
3017263b
MH
2805Mon Aug 26 18:24:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2806
2807 * config/tc-d10v.c: Fixed ".word". Fixed problem with range checking
2808 on addresses. Improved error messages.
2809 * doc/c-d10v.texi: Added docs for register pairs.
2810
f9085532
MH
2811Mon Aug 26 13:39:27 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2812
2813 * config/tc-d10v.c (parallel_ok): Fix bug in parallel
2814 checking code.
2815
58275724
ILT
2816Mon Aug 26 14:38:22 1996 Ian Lance Taylor <ian@cygnus.com>
2817
2818 * ecoff.c (init_file): Initialize fMerge to 1.
2819 (add_file): Restore old file merging code, but only merge files if
2820 fMerge is set.
2821 (ecoff_directive_loc): Clear fMerge field of current file.
2822 (ecoff_generate_asm_lineno): Likewise.
2823
b1c28263
MH
2824Fri Aug 23 11:40:47 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2825
2826 * doc/c-d10v.texi: Fix typo.
2827
c9a32d6c
JL
2828start-sanitize-v850
2829Fri Aug 23 10:41:32 1996 Jeffrey A Law (law@cygnus.com)
2830
58275724
ILT
2831 * config/tc-v850.c (md_assemble): Correct bit masking for
2832 hi and lo expressions.
2833
88b47a85
JL
2834 * config/tc-v850.c (md_assemble): Rough cut at demanding
2835 "ep" or "r30" in sst and sld instructions.
2836 (md_apply_fix3): Don't abort. Just warn that we don't
2837 have relocs yet.
2838
c9f1b2d9
JL
2839 * config/tc-v850.c (CC_NAME_CNT): Define.
2840 (cc_name): New function.
2841 (md_assemble): Handle V850_OPERAND_CC correctly.
2842
d5974c57
JL
2843 * config/tc-v850.c (md_assemble): Don't forget to initialize
2844 "insn"!
2845
0e8f9bd1
JL
2846 * config/tc-v850.c (reg_name_search): Generalize to search
2847 any given register table.
2848 (register_name): Pass appropriate table and size to reg_name_search.
2849 (system_register_name): New function.
2850 (SYSREG_NAME_CNT): Define.
2851 (md_assemble): Handle operands which are system registers.
2852
c9a32d6c
JL
2853 * config/tc-v850.c (md_assemble): If we find a register, but the
2854 opcode doesn't want a register, then we don't have a match.
2855 (md_assemble): Get size of the instruction from the opcode table.
2856
2857end-sanitize-v850
eeef602f
ILT
2858Thu Aug 22 10:20:30 1996 Ian Lance Taylor <ian@cygnus.com>
2859
8ee90d35
ILT
2860 * configure.in: Set and substitute HLDENV.
2861 * configure: Rebuild.
2862 * Makefile.in (HLDENV): New variable.
2863 (as.new): Use $(HLDENV).
2864
eeef602f
ILT
2865 * ecoff.c (ecoff_directive_endef): Avoid a division by zero error
2866 if an array dimension is not known.
2867
6be9ec8d
MH
2868Thu Aug 22 10:50:00 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2869
2870 * config/tc-d10v.c: Fix a reloc bug caused by my last change.
2871 * doc/c-d10v.texi: Cleanup.
2872
c6aa56bc
C
2873start-sanitize-v850
2874Tue Aug 20 15:15:16 1996 J.T. Conklin <jtc@hippo.cygnus.com>
2875
2876 * config/tc-v850.c: New file.
2877 * config/tc-v850.h: New file.
2878 * configure (v850-*-elf): New target.
2879 * configure.in (v850-*-elf): New target.
2880
2881end-sanitize-v850
2c2e5626
MH
2882Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2883
2884 * doc/c-d10v.texi: New file.
2885 * doc/all.texi: Added D10V stuff.
2886 * doc/as.texinfo: Added D10V stuff.
2887
ab457c4c
MH
2888Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2889
2890 * config/tc-d10v.c: All references to defined symbols should
2891 now use the optimal instruction. .float and .double now work.
2892
d4e1b0be
ILT
2893Mon Aug 19 14:41:36 1996 Ian Lance Taylor <ian@cygnus.com>
2894
2895 * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
2896 section address for the i960 as is done for the i386.
2897
2898Thu Aug 15 16:37:59 1996 Stan Shebs <shebs@andros.cygnus.com>
2899
2900 * mpw-config.in: Add wildcards for config matching, add mips-*-*
2901 case, forward-include bfd/elf-bfd.h.
2902
b98b04ea
MH
2903Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2904
2905 * config/tc-d10v.c: Add additional information to the opcode
2906 table to help determinine which instructions can be done
2907 in parallel.
2908
b98b04ea
MH
2909Thu Aug 15 17:01:31 1996 James G. Smith <jsmith@cygnus.co.uk>
2910
2911 * config/tc-arm.c: Major changes to add Thumb support, with lots
2912 of change input from <rearnsha@armltd.co.uk>.
2913 Reverted to INSN_SIZE macro, rather than insn_size variable.
2914 (insns): Added ARM "bx" instruction support.
2915 (tinsns): Added Thumb instruction definition structure.
2916 (arm_tops_hsh): Added hash structure for Thumb opcodes.
2917 (md_pseudo_table): Added ".arm", ".thumb" and ".code" pseudo-ops.
2918 (opcode_select,s_arm,s_thumb,s_code): Added.
2919 (decode_shift): Allow upper-case RRX.
2920 (do_ldst): Simpler halfword support.
2921 (do_ldmstm): Improved.
2922 (reg_list, do_bx, thumb_reg, thumb_add_sub, thumb_shift,
2923 thumb_mov_compare, thumb_load_store, do_t_arit, do_t_add,
2924 do_t_asr, do_t_branch, do_t_bx, do_t_compare, do_t_ldmstm,
2925 do_t_ldrb, do_t_ldrh, do_t_lds, do_t_lsl, do_t_lsr, do_t_mov,
2926 do_t_push_pop, do_t_str, do_t_strb, do_t_strh, do_t_sub, do_t_swi,
2927 do_t_adr): Added.
2928 (md_apply_fix3): Add support for BFD_RELOC_ARM_THUMB_* relocations.
2929 (md_parse_option): Add support for -mthumb.
2930 (md_show_usage): Updated to reflect new command line option.
2931 (arm_data_in_code, arm_canonicalize_symbol_name): Added.
2932 * config/tc-arm.h: Provide TC_FIX_TYPE to allow private ARM
2933 fragment information to be held.
2934
2935Thu Aug 15 16:12:00 1996 Richard Earnshaw (rearnsha@armltd.co.uk)
2936
2937 * tc-arm.c (md_apply_fix3): Also set fixP->fx_done if fx_addsy is
2938 non-null, but is a constant.
2939 (fix_new_arm): Call make_expr_symbol to make the expression symbol
2940 so that error reporting will work correctly.
2941
126436a8
ILT
2942Wed Aug 14 10:37:21 1996 Ian Lance Taylor <ian@cygnus.com>
2943
2944 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
2945 against weak symbols.
2946
0e94336e
ILT
2947Tue Aug 13 17:39:24 1996 Ian Lance Taylor <ian@cygnus.com>
2948
2949 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
2950 (ppc_force_relocation): Declare if OBJ_XCOFF.
2951 * config/tc-ppc.c (ppc_force_relocation): New function if
2952 OBJ_XCOFF.
2953
817e4f75
ILT
2954Mon Aug 12 16:49:43 1996 Ian Lance Taylor <ian@cygnus.com>
2955
2956 * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used.
2957
f494d503
MH
2958Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
2959
2960 * config/tc-d10v.c: Fix problem with relocs.
2961
8d07d2c9
ILT
2962Fri Aug 9 14:16:14 1996 Ian Lance Taylor <ian@cygnus.com>
2963
2964 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
2965 with nops if not in data_section or bss_section.
2966
f649d525
ILT
2967Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
2968
2969 Add support for openVMS/Alpha.
2970 * as.h (PRINTF_LIKE): Don't define if VMS, for now.
2971 * config/obj-evax.c: New file.
2972 * config/obj-evax.h: New file.
2973 * config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
2974 defined.
2975 * config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
2976 defined. Add case for bfd_target_evax_flavour.
2977 * config/vms-a-conf.h: New file.
2978 * conf-a-gas.com: New file.
2979 * configure.in: Add target alpha-*-*vms*.
2980 * configure: Rebuild.
2981 * makefile.vms: New file.
2982 * read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
2983 Don't call ffs on openVMS/Alpha.
2984
5cece526
ILT
2985Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
2986
2987 * configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
2988 <strings.h> if they exist. Call GAS_CHECK_DECL_NEEDED on strstr
2989 and sbrk.
2990 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
2991 (NEED_DECLARATION_SBRK): New macro.
2992 * configure, conf.in: Rebuild.
2993 * as.h: Only include <strings.h> if HAVE_STRINGS_H.
2994 (strstr): Declare if NEED_DECLARATION_STRSTR.
2995 * as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
2996
e592f0e6
ILT
2997Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com>
2998
d10df990
ILT
2999 * symbols.c (resolve_symbol_value): Handle addition or subtraction
3000 by a constant before entering the main switch. Reject attempts to
3001 apply an arithmetic function to non-absolute symbols, except for
3002 the special case of subtraction of two symbols in the same
3003 section.
3004
cf32394d
ILT
3005 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
3006 not to more than a 16 byte boundary.
3007
e592f0e6
ILT
3008 * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
3009 #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>.
3010 (tc_gen_reloc): If out of memory call as_fatal rather than
3011 assert. If no howto found, call as_bad_where rather than
3012 as_fatal. Change the error message slightly. Set howto to a
3013 non-NULL value in order to keep going.
3014
5d9a99a7
MH
3015Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3016
3017 * config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
3018
6a8e0036
JL
3019Tue Aug 6 11:15:26 1996 Jeffrey A Law (law@cygnus.com)
3020
3021 * config/tc-h8300.c (get_specific): New operand "size" derived
3022 from ".b", ".w" and ".l" extensions. All callers changed. If
3023 the base instruction has no operands, then use the size to
3024 determine which specific instruction to use.
3025
3d7b0c49
ILT
3026Mon Aug 5 14:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
3027
3028 * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
3029
10a14e36
ILT
3030Fri Aug 2 11:23:31 1996 Ian Lance Taylor <ian@cygnus.com>
3031
3032 * config/tc-mips.c (md_section_align): Don't change addr if
3033 OBJ_ELF.
3034
470a679c
JL
3035Thu Aug 1 23:51:52 1996 Jeffrey A Law (law@cygnus.com)
3036
3037 * config/tc-hppa.c: Revert yesterday's changes.
3038
b5cf6779
MH
3039Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3040
3041 * config/tc-d10v.c: Disable range checking on 16-bit values.
3042
159eb3c0
ILT
3043Wed Jul 31 16:27:19 1996 Ian Lance Taylor <ian@cygnus.com>
3044
3045 * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
3046 not just the ones that don't match.
3047
37e05f64
MH
3048Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3049
3050 * config/tc-d10v.c: Fixed bugs in short relocs and range checking.
3051
c479fc62
JSC
3052Wed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
3053
3054 * config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
3055 pre-cursor to adding Thumb support. Also added cpu_variant flag
3056 information to each of the asm_flg structures.
3057 (md_parse_option): Updated ARM7 parsing to allow 't' for
3058 thumb/halfword support, aswell as 'm' for long multiply.
3059 (md_show_usage): Updated help message.
3060 (md_assemble): Check that instruction flags are applicated to the
3061 current cpu variant.
3062 (md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
3063 BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
3064 signextension instructions.
3065 (do_ldst): Generate halfword and signextension variants if
3066 mnemonic flags match.
3067 (ldst_extend): Do not allow shifts in the offset field of halfword
3068 or signextension instructions.
3069 (validate_offset_imm): Provide check on halfword and signextension
3070 immediate range.
3071 (add_to_lit_pool): Merge identical literal pool values.
3072
448b5aad
JL
3073Tue Jul 30 14:28:23 1996 Jeffrey A Law (law@cygnus.com)
3074
3075 * config/tc-hppa.c (selector_table): Add 'E' selector.
3076 (cons_fix_new_hppa): Don't coke on e_esel.
3077 (tc_gen_reloc, SOM version): Handle R_COMP2 when used
3078 to help generate exception handling tables.
3079 (md_apply_fix): Don't try to apply fixups with an e_esel
3080 selector.
3081 (hppa_fix_adjustable): Fixups with e_esel selectors
3082 are not adjustable.
3083
8dfb05cc
ILT
3084Tue Jul 30 15:51:41 1996 Ian Lance Taylor <ian@cygnus.com>
3085
3086 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
3087 pseudo-ops.
3088
8544dc03
MH
3089Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3090
3091 * config/tc-d10v.c: Added lots of error checking. Added hacks
3092 to support accumulator shifts.
3093
5ca547dc
ILT
3094Fri Jul 26 11:56:08 1996 Ian Lance Taylor <ian@cygnus.com>
3095
3096 * symbols.c (S_SET_EXTERNAL): Let .weak override.
3097 (S_CLEAR_EXTERNAL): Likewise.
3098 (S_SET_WEAK): Remove error; just let .weak override.
3099
35ad20a1
MH
3100Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3101
3102 * config/tc-d10v.c (md_assemble): Now handles multiline
3103 instructions.
3104
7c096652
MH
3105Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3106
3107 * config/tc-d10v.c: Fix packaging bug. Added range checking.
3108 Added kludge for divs instruction. Fixed minor problem with
3109 multiple text sections.
35ad20a1
MH
3110 * config/tc-d10v.h (d10v_cleanup): Change prototype.
3111
93050391
MH
3112Tue Jul 23 10:49:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3113
3114 * config/tc-d10v.c (md_apply_fix3): Fix all instruction
3115 addresses to be right-shifted by 2.
3116
0ef32559
MH
3117Mon Jul 22 11:32:36 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
3118
3119 * config/tc-d10v.c: Many changes to get relocs working.
3120 (register_name): No longer creates a symbol for register names.
3121 (pre_defined_registers): moved to opcodes/d10v-opc.c.
3122 (d10v_insert_operand): Now works correctly for either container.
3123 * config/tc-d10v.h (d10v_cleanup): Declare.
3124
97aca1bc
ILT
3125Mon Jul 22 14:01:33 1996 Ian Lance Taylor <ian@cygnus.com>
3126
3127 * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
3128 BFD_RELOC_PCREL_LO16 are expected to be PC relative.
3129
6543a7fb
ILT
3130Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
3131
3132 * tc-alpha.c: Patches to track current minimum alignment to reduce
3133 the number of fragments created with frag_align.
3134 (alpha_current_align): New static variable.
3135 (s_alpha_text): Reset alignment to 0.
3136 (s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
3137 (s_alpha_stringer, s_alpha_space): New functions.
3138 (s_alpha_cons, alpha_flush_pending_output): Remove functions.
3139 (alpha_cons_align): New function to replace both of them.
3140 (emit_insn): Only align if alpha_current_align is less than 2;
3141 reset alpha_current_align to 2.
3142 (s_alpha_gprel32): Likewise.
3143 (s_alpha_section): New function. Basically duplicate the other
3144 alpha section change hooks. Only define for ELF.
3145 (s_alpha_float_cons): Simplify alignment handling.
3146 (md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
3147 If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
3148 Don't define the s_alpha_cons pseudo-ops. Do define
3149 s_alpha_stringer and s_alpha_space pseudo-ops.
3150 (alpha_align): Skip if less than current default alignment. Set
3151 default alignment.
3152 * tc-alpha.h (md_flush_pending_output): Remove.
3153 (md_cons_align): Add.
3154
3155 * tc-alpha.c: Add oodles of function description comments.
3156 (md_bignum_to_chars): Remove; there are no callers.
3157 (md_show_usage): Mention some more variants.
3158
091221ce
ILT
3159Thu Jul 18 15:54:54 1996 Ian Lance Taylor <ian@cygnus.com>
3160
0b27ea39
ILT
3161 From Andrew Gierth <ANDREWG@microlise.co.uk>:
3162 * configure.in (sparc-*-sysv4*): New target.
3163 * configure: Rebuild.
3164
8dd07a84
ILT
3165 * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
3166 uaxword to use s_uacons.
3167 (sparc_no_align_cons): New static variable.
3168 (s_uacons): New static function.
3169 (sparc_cons_align): If sparc_no_align_cons is set, just clear it
3170 and return.
3171
3172 * config/tc-sparc.c (s_common): Remove unused label allocate_bss.
3173
cbe7dccb
ILT
3174 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
3175 5 with regard to shared libraries.
3176 * configure: Rebuild.
3177
091221ce
ILT
3178 * config/tc-m68k.c (m68k_ip): Use the correct length when
3179 allocating space for the unsupported architecture error message.
3180
05a8bf33
MM
3181Thu Jul 18 12:57:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3182
3183 * configure.in (d10v-*-*): Allow d10v-*-*, don't require d10v-*-elf*.
3184
3185Wed Jul 17 14:25:13 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
7be9a312
MH
3186
3187 * config/tc-d10v.c: New file.
3188 * config/tc-d10v.h: New file.
3189 * configure (d10v-*-elf): New target.
3190 * configure.in (d10v-*-elf): New target.
7be9a312 3191
10c9620d
MM
3192Fri Jul 12 20:54:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3193
3194 * config/tc-ppc.c (md_parse_option): Recognize -K PIC.
3195
0ee09671
ILT
3196Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
3197
3198 * config/tc-alpha.c (alpha_align): Change fill parameter
3199 to a pointer. Take NULL as 0 or nop depending on section. Change
3200 all callers.
3201 (s_alpha_align): Rename local variables.
3202
3203 * doc/as.texinfo (.align): Document action of omitted
3204 fill parameter.
3205
3128726c
ILT
3206Wed Jul 10 00:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
3207
3208 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
3209 when an unsupported PC relative reloc is seen, rather than calling
3210 abort.
3211
3212 * app.c (do_scrub_chars): Remove not_cpp_line local variable.
3213 Instead, check state when '#' comment is seen.
3214
7f003b7f
ILT
3215Mon Jul 8 14:11:49 1996 Ian Lance Taylor <ian@cygnus.com>
3216
a8aed9dd
ILT
3217 * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
3218 OBJ_MAYBE_ELF.
3219 (tc_gen_reloc): If fixup was changed to be PC relative, change
3220 reloc type accordingly. Use name of reloc in error message.
3221
a5a78175
ILT
3222 * as.h: Don't define const or volatile.
3223 * flonum.h: Don't define const.
3224
7f003b7f
ILT
3225 * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
3226 if fx_pcrel is set. Correct setting the addend case in the
3227 OBJ_ELF case (from Andreas Schwab
3228 <schwab@issan.informatik.uni-dortmund.de>).
3229 (md_show_usage): Correct -mfc5200 to -m5200.
3230
8d20a0a8
C
3231Fri Jul 5 10:32:58 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3232
910d7df2
C
3233 * doc/c-m68k.texi: Document -m5200 flag.
3234 * doc/as.texinfo: Likewise.
3235
8d20a0a8
C
3236 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
3237 scale factor.
3238
c0b34702
ILT
3239Fri Jul 5 11:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
3240
3241 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
3242 (S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
3243
45c85bcb
ILT
3244Thu Jul 4 11:59:46 1996 Ian Lance Taylor <ian@cygnus.com>
3245
6624477c
ILT
3246 * Makefile.in (VERSION): Set to cygnus-2.7.1.
3247
45c85bcb
ILT
3248 * Released binutils 2.7.
3249
fc636a52
JSC
3250Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
3251
3252 * config/tc-mips.c (mips_ip): Only perform range check when
3253 dealing with O_constant expressions.
3254
d41d2ccc
C
3255Wed Jul 3 15:02:21 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3256
3257 * m68k-parse.h (m68k_register): Add new coldfile control
3258 registers.
3259
3260 * config/tc-m68k.c (mcf5200_control_regs): New variable,
3261 array of control registers for the coldfire.
3262 (cpu_of_arch): Added mcf5200.
3263 (archs): Added mcf5200.
3264 (init_table): Add new control registers.
3265 (m68k_ip): Added support for new control registers.
3266 (m68k_init_after_args): Likewise.
3267
3268 * config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
3269
5af96dce
ILT
3270Wed Jul 3 16:05:50 1996 Ian Lance Taylor <ian@cygnus.com>
3271
c5d8f96e
ILT
3272 * read.h (is_it_end_of_statement): Declare.
3273 * read.c (is_it_end_of_statement): Remove declaration.
3274
3275 * config/tc-ppc.c (ppc_elf_suffix): Correct parenthesization of ||
3276 within &&.
3277 (md_assemble): Fix handling of @l with an unsigned constant. Add
3278 default case to reloc switch.
3279
ac76c7e9
ILT
3280 * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD.
3281
5af96dce
ILT
3282 Based on patches from Tom Quiggle <quiggle@sgi.com>:
3283 * ecoff.c (last_lineno): New static variable.
3284 (add_procedure): Set last_lineno.
3285 (ecoff_directive_loc): Likewise.
3286 (ecoff_generate_asm_lineno): Likewise.
3287 (ecoff_fix_loc): New function.
3288 * ecoff.h (ecoff_fix_loc): Declare.
3289 * config/tc-mips.c (append_insn): When inserting nops, and using
3290 ECOFF debugging, call ecoff_fix_loc.
3291
b9bddc84
JL
3292Tue Jul 2 23:02:12 1996 Jeffrey A Law (law@cygnus.com)
3293
3294 * config/tc-h8300.c (build_bytes): If an operand type is
3295 marked as SRC_IN_DST retrieve it from the "destination" op.
3296
379c2fb4
ILT
3297Sat Jun 29 13:38:31 1996 Ian Lance Taylor <ian@cygnus.com>
3298
69c1de90
ILT
3299 * configure.in (arm-*-riscix*): Set emulation to riscix.
3300 * configure: Rebuild.
3301 * config/te-riscix.h: New file to define TE_RISCIX.
3302
379c2fb4
ILT
3303 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define.
3304
3305Fri Jun 28 15:14:31 1996 Ian Lance Taylor <ian@cygnus.com>
3306
3307 * Makefile.in (config.status): Just run config.status as other
3308 tools do.
3309
c611cd82
SS
3310Fri Jun 28 11:09:38 1996 Stan Shebs <shebs@andros.cygnus.com>
3311
3312 * mpw-config.in (TARGET_OS): Add definition to conf.
3313
fbf011f2
ILT
3314Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
3315
3316 * config/tc-mips.c (append_insn): Parenthesize
3317 cop_interlocks expressions.
3318
3319Thu Jun 27 12:18:26 1996 Ian Lance Taylor <ian@cygnus.com>
3320
3321 * listing.c (listing_print): Close the listing file if it is not
3322 stdout. Close the other files opened for the listing.
681dbbc0
ILT
3323
3324 * config/tc-sparc.h (md_cons_align): Define.
3325 (sparc_cons_align): Declare.
3326 (HANDLE_ALIGN): Define.
3327 (sparc_handle_align): Declare.
3328 * config/tc-sparc.c (sparc_cons_align): New function.
3329 (sparc_handle_align): New function.
3330 * read.c (cons_worker): Call md_cons_align if it is defined.
3331
3332 * as.h (struct frag): Add fr_file and fr_line fields.
3333 * frags.c (frag_new): Set fr_file and fr_line.
3334 (frag_var): Likewise.
3335 (frag_variant): Likewise.
3336
7e027ce6
ILT
3337 * as.h (struct frag): Remove unused align_mask and align_offset
3338 fields.
3339
f9b990cd
ILT
3340 * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
3341 From <uddeborg@carmen.se>.
3342
9b4b98bd
ILT
3343Wed Jun 26 13:21:34 1996 Ian Lance Taylor <ian@cygnus.com>
3344
67b48b58
ILT
3345 * configure.in (mips-*-osf*): New target.
3346 * configure: Rebuild.
3347
9b4b98bd
ILT
3348 * config/tc-m68k.c: Add 68ec060 as a synonym for 68060.
3349
344a8d61
JSC
3350Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
3351
3352 * config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
3353 between co-processor comparisons and branches for the VR4300.
3354
1c94de4d
JM
3355Mon Jun 24 18:02:50 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
3356
3357 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3358 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
3359 (docdir): Removed.
3360 * configure.in (AC_PREREQ): autoconf 2.5 or higher.
3361 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
3362 includedir): Use autoconf set values.
3363 (docdir): Removed.
3364
b290fd25
ILT
3365Mon Jun 24 11:58:14 1996 Ian Lance Taylor <ian@cygnus.com>
3366
1c94de4d
JM
3367 * listing.c (listing_eject): Don't do anything if listing is 0.
3368 (listing_list): Likewise.
3369 (listing_source_line): Likewise.
3370 (listing_title): Don't save title if listing is 0.
3371 (listing_source_file): Check listing rather than listing_tail.
3372
b290fd25
ILT
3373 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
3374 using shared libraries.
3375 * configure: Rebuild.
3376
3377Fri Jun 21 18:22:23 1996 Ian Lance Taylor <ian@cygnus.com>
3378
3379 * config/tc-mips.c (mips_ip): In case 'i'/'j', don't require an
3380 absolute expression if a relocation type was specified.
3381
644edced
ILT
3382Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
3383
3384 * configure.in: Add support for *-*-rtems* configurations.
3385 * configure: Rebuild.
3386
df586de2
ILT
3387Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
3388
3389 * configure.in: Add alpha-*-linuxecoff* target. Use elf for
3390 alpha-*-linux* target. Force bfd_gas for alpha-*. Require
3391 opcodes library for alpha.
3392 * configure: Rebuild with autoconf 2.10.
3393 * config/tc-alpha.c: Substantial rewrite to add ELF support and
3394 use new opcode table.
3395 * config/tc-alpha.h (md_undefined_symbol): Don't define.
3396 (LOCAL_LABEL): Define differently if OBJ_ELF.
3397 (FAKE_LABEL_NAME): Define if OBJ_ELF.
3398 * config/alpha-opcode.h: Remove.
3399 * config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
3400 * Makefile.in (TARG_CPU_DEP_alpha): Depend upon
3401 include/opcode/alpha.h rather than config/alpha-opcode.h.
3402
7ca8e36e
ILT
3403Thu Jun 20 19:10:28 1996 Ian Lance Taylor <ian@cygnus.com>
3404
edec3111
ILT
3405 * config/obj-aout.c (obj_emit_relocations): Give an error if the
3406 relocation symbol was not resolved.
3407 * config/obj-coff.c (do_relocs_for): Likewise.
3408
7ca8e36e
ILT
3409 * write.c (adjust_reloc_syms): Refetch the symbol section after
3410 calling S_GET_VALUE, since it may have changed.
3411
3412 * expr.c (struct expr_symbol_line): Define.
3413 (expr_symbol_lines): New static variable.
3414 (make_expr_symbol): Add entry to expr_symbol_lines.
3415 (expr_symbol_where): New function.
3416 * expr.h: Use extern on function declarations.
3417 (expr_symbol_where): Declare.
3418 * symbols.c (resolve_symbol_value): Try to use expr_symbol_where
3419 rather than printing the meaningless name of an expression
3420 symbol.
3421
214f540d
KR
3422Thu Jun 20 15:57:41 1996 Ken Raeburn <raeburn@cygnus.com>
3423
3424 * config/tc-i386.c (md_number_to_chars): Deleted.
3425 * config/tc-i386.h (md_number_to_chars): New macro.
3426
3427 * config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in
3428 the file.
3429 (load_symbol_address, load_expression): Use build_mem.
3430 (build_operate): New function.
3431 (emit_addq_r): Use it.
3432
3433 Wed Mar 13 22:14:14 1996 Pat Rankin <rankin@eql.caltech.edu>
3434
3435 * symbols.c (colon): #if VMS, use S_SET_OTHER to store `const_flag'.
3436
3437 Tue Mar 5 14:31:45 1996 Pat Rankin <rankin@eql.caltech.edu>
3438
3439 * config/tc-vax.h (NOP_OPCODE): Define.
3440
3441 Sun Feb 4 21:01:03 1996 Pat Rankin <rankin@eql.caltech.edu>
3442
3443 * config/obj-vms.h (S_IS_COMMON): Define.
3444 (S_IS_LOCAL): Check for \002 as well as \001.
3445 (LONGWORD_ALIGNMENT): New macro.
3446 (SUB_SEGMENT_ALIGN): Use it.
3447
3448 Fri Jan 26 17:44:09 1996 Pat Rankin <rankin@eql.caltech.edu>
3449
3450 * config/vms-conf.h: Reconcile with conf.in.
3451
7b9b1eb2
ILT
3452Wed Jun 19 11:31:50 1996 Ian Lance Taylor <ian@cygnus.com>
3453
793f9558
ILT
3454 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
3455 defined.
3456
84577dde
ILT
3457 * doc/as.texinfo: Document that any number of hex digits can
3458 follow \x.
3459
0d6cae1e
ILT
3460 * as.c (struct defsym_list): Define.
3461 (defsyms): New static variable.
3462 (parse_args): Just put --defsym arguments on defsyms list, rather
3463 than defining them.
3464 (main): Define defsyms after output file is created.
3465
6e3f7f1b
ILT
3466 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
3467 cpu32. From Eric Norum <Eric.Norum@usask.ca>.
3468
8095b665
ILT
3469 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
3470 insn_error rather than calling check_absolute_expr.
3471
3472 * as.c (emulation_name): Remove unused static variable.
3473 (default_emul_bfd_name): Add return NULL to avoid warning.
3474 * ecoff.c (ecoff_stab): Remove unused variables name and
3475 name_end.
3476 * frags.c (frag_new): Remove unused variable tmp.
3477 * hash.c (hash_grow): Parenthesize + within <<.
3478 (hash_print_statistics): Use %lu, not %d, to print unsigned
3479 long variables.
3480 * messages.c: Include "libiberty.h".
3481 (fprint_value): Add cast to avoid printf warning.
3482 (sprint_value): Likewise.
3483 * read.c: Include "ecoff.h".
3484 (emit_expr): Add casts to avoid printf warnings.
3485 * read.h: Use extern for function declarations.
3486 (pop_insert): Declare.
3487 * stabs.c: Include "ecoff.h".
3488 * subsegs.c (subseg_set_rest): Remove unused variables tmp,
3489 former_last_fragP, and new_fragP.
3490 * subsegs.h (subsegs_print_statistics): Declare.
3491 * symbols.c (debug_verify_symchain): Change macro to discard
3492 arguments.
3493 * write.c (dump_section_relocs): Likewise.
3494 * write.h: Use extern for function declarations.
3495 (write_print_statistics): Declare.
3496 * config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
3497 warning.
3498 * config/e-mipself.c (mipself_bfd_name): Likewise.
3499 * config/obj-elf.h (elf_ecoff_set_ext): Declare.
3500
9ee759fc
ILT
3501 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
3502 emit relocations against external symbols.
3503
faa3f539
ILT
3504 * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
3505 message if bfd_reloc_type_lookup fails, rather than calling
3506 assert.
3507
7b9b1eb2
ILT
3508 * config/tc-alpha.c (alpha_force_relocation): Add
3509 BFD_RELOC_12_PCREL to switch.
3510
3511Tue Jun 18 20:29:57 1996 Doug Evans <dje@canuck.cygnus.com>
3512
3513 * config/tc-i386.h (LOCAL_LABEL,FAKE_LABEL_NAME): Use defaults for
3514 TE_PE (Lfoo, not .Lfoo).
3515
d9453233
ILT
3516Tue Jun 18 17:13:33 1996 Ian Lance Taylor <ian@cygnus.com>
3517
24b018ee
ILT
3518 * read.c (s_fill): Don't warn about a zero repeat count.
3519
c674dcaa
ILT
3520 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
3521 coprocessor register.
3522
d9453233
ILT
3523 * config/tc-i386.c (md_assemble): When checking the size of a
3524 register to set the size of an instruction, do a bitwise and with
3525 Reg8 and Reg16 rather than requiring the type to be exactly Reg8
3526 or Reg16.
3527
3d0afe12
JL
3528Tue Jun 18 13:19:51 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3529
3530 * config/tc-h8300.c (parse_reg): Tweak error messages.
3531 (build_bytes): Likewise.
3532 (skip_colonthing): Handle :32 suffix.
3533 (get_specific): Promote L_24 to L_32 if it makes a match.
3534 Don't always promote L_8 to L_16.
3535 (do_a_fix_imm): Clean up L_32 and L_24 handling.
3536
3d0afe12
JL
3537 * config/tc-h8300.c (Smode): New variable.
3538 (h8300hmode): Turn off Hmode.
3539 (h8300smode): New function. Turn on Smode and Hmode.
3540 (md_pseudo_table): New ".h8300s" pseudo-op.
3541 (parse_reg): Handle "exr" register.
3542 (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
3543 Handle "mach" and "machl" operands for ldmac.
3544 (get_specific): Handle "stm.l" and "ldm.l".
3545 (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
3546 * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
3547 (Smode): Declare.
3548
370181a2
C
3549Mon Jun 17 15:50:53 1996 J.T. Conklin <jtc@rtl.cygnus.com>
3550
3551 * doc/as.texinfo: Reorder chapter of machine dependent options so
3552 that it is sorted by chip name.
3553
3554 * doc/as.texinfo: Use consistant spelling of Vax.
3555 * doc/c-vax.texi: Likewise.
3556
02d4dd87
JL
3557Mon Jun 17 11:26:56 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3558
3559 * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
3560 pseudo ops.
3561 (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
3562 (md_apply_fix): Likewise.
3563 (pa_try): New function.
3564 (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
3565
b81231b7
JL
3566Sun Jun 16 22:57:47 1996 Jeffrey A. Law <law@rtl.cygnus.com>
3567
3568 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
3569 (pa_level): New function.
3570
fe8d0ff3
ILT
3571Fri Jun 14 20:06:44 1996 Ian Lance Taylor <ian@cygnus.com>
3572
3573 * listing.c (listing_newline): Don't do anything if listing is 0.
3574
3575Thu Jun 13 17:50:54 1996 Ian Lance Taylor <ian@cygnus.com>
3576
3577 * subsegs.c (section_symbol): If symbol_table_frozen is set, call
3578 symbol_create, not symbol_new.
3579
9bec2a42
ILT
3580Wed Jun 12 14:10:44 1996 Ian Lance Taylor <ian@cygnus.com>
3581
3582 * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
3583 absolute symbol unless TC_FORCE_RELOCATION returns true.
3584
3585 * config/obj-coff.c (previous_file_symbol): Remove BFD_ASSEMBLER
3586 version.
3587 (c_dot_file_symbol): BFD_ASSEMBLER version: Don't set the value of
3588 the symbol to a pointer. Don't set previous_file_symbol.
3589 Simplify symbol list rearrangement.
3590 (coff_frob_symbol): Don't do anything with C_FILE symbols.
3591 (coff_adjust_symtab): Don't check previous_file_symbol.
3592
c992cf9b
MM
3593Mon Jun 10 14:52:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3594
3595 * config/tc-ppc.c (ppc_elf_lcomm): New function for .lcomm
3596 directive.
3597 (md_pseudo_table): Add ppc_elf_lcomm.
3598
1ba76615 3599Mon Jun 10 11:45:51 1996 Ian Lance Taylor <ian@cygnus.com>
92e61d31
ILT
3600
3601 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
3602 d0{24:1},d0' works without an immediate prefix on the bit numbers.
3603 (md_begin): Add digits to alt_notend_table.
3604 (md_parse_option): Make s a const pointer.
1ba76615 3605
b91e85c2
ILT
3606 * config/tc-sparc.c (md_pseudo_table): Add "empty".
3607 (s_empty): New static function.
3608
e789e620
ILT
3609 * config/obj-coff.c (struct filename_list): Only define if not
3610 BFD_ASSEMBLER.
3611 (filename_list_head, filename_list_tail): Likewise.
3612 (c_section_symbol): Remove unused BFD_ASSEMBLER version.
3613 (obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
3614 flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
3615 have a section of N_ABS rather than N_DEBUG. If we do a merge,
3616 remove the new symbol from the list.
3617 (obj_coff_endef, both versions): Call tag_insert even if there is
3618 an old symbol with the same name, if the old symbol does not
3619 happen to be a tag.
3620 (coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
3621 the SF_GET_DEBUG condition. Don't call SA_SET_SYM_ENDNDX with a
3622 symbol that will be moved to the end of the symbol list.
3623 (coff_adjust_section_syms): Always call section_symbol for .text,
3624 .data, and .bss.
3625 (coff_frob_section): Likewise. Also, remove unused variable
3626 strname.
3627
0670452e
ILT
3628 * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
3629 manipulating frags directly.
3630 (md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
3631 defined.
3632
41822c41
ILT
3633 * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
3634 whether the next character is '*' before checking whether we are
3635 at the start of a line. Permit LINE_COMMENT_START to start a
3636 comment in state 1 (seen some whitespace) as well, to match the
3637 documentation.
3638
1ba76615
ILT
3639 * gasp.c (do_align): Permit a fill value for .align.
3640
ed381b67
JW
3641Wed Jun 5 17:09:26 1996 Ian Lance Taylor <ian@cygnus.com>
3642
3643 * read.c (next_char_of_string): Warn if a newline is seen in the
3644 middle of a string. Call bump_line_counters when appropriate.
3645
3646Wed Jun 5 17:08:36 1996 Richard Henderson <rth@tamu.edu>
3647
3648 * symbols.c (colon): Use LOCAL_LABEL.
3649
2c7aeec6
TT
3650Tue Jun 4 10:55:16 1996 Tom Tromey <tromey@csk3.cygnus.com>
3651
3652 * Makefile.in (install): Don't check to see if tooldir exists.
3653 Make $(tooldir) and $(tooldir)/bin.
3654
527b8324
MM
3655Tue Jun 4 10:14:53 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3656
3657 * config/ppc-sol.mt (TDEFINES): Don't turn on -mregnames by
3658 default.
3659
3b426f5a
ILT
3660Mon Jun 3 11:34:41 1996 Ian Lance Taylor <ian@cygnus.com>
3661
3662 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
3663 insn_error. Don't put the string "ERROR" in insn_error. Set
3664 insn_error rather than calling as_warn for an unsupported opcode.
3665
9c44af60
ILT
3666Sat Jun 1 21:51:55 1996 Ian Lance Taylor <ian@cygnus.com>
3667
3668 * config/tc-mips.c (md_parse_option): Check for a 64 bit format
3669 before permitting -64.
3670 * output-file.c (output_file_create): Remove duplicate
3671 bfd_perror.
3672
98bfd087
ILT
3673Fri May 31 01:08:06 1996 Ian Lance Taylor <ian@cygnus.com>
3674
87178180
ILT
3675 * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
3676 section rather than a .reginfo section.
3677 (mips_elf_final_processing): If -64, write out 64 bit RegInfo
3678 information.
3679
98bfd087
ILT
3680 * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
3681 bit value with the high bit set.
3682
b95bee13
ILT
3683Thu May 30 19:00:19 1996 Ian Lance Taylor <ian@cygnus.com>
3684
3685 * read.c (s_lcomm): Set section flags for .sbss section.
3686
3687 * config/tc-mips.c (mips_64): New static variable.
3688 (mips_target_format): If mips_64, return elf64 targets rather than
3689 elf32 ones.
3690 (md_longopts): Add "32" and "64".
3691 (md_parse_option): Handle -32 and -64.
3692 (md_show_usage): Mention -32 and -64.
3693 (cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
3694 a 4 byte one.
3695
1facd5f0
MM
3696Thu May 30 10:36:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3697
98bfd087
ILT
3698 * config/tc-ppc.c (comment_chars): Make '!' a comment character
3699 for Solaris compatibility.
d0e1c803 3700
1facd5f0
MM
3701 * stabs.c (s_stab_generic): Under PowerPC Solaris, convert a
3702 .stabd with 4 arguments into a .stabn.
3703
a40aee38
ILT
3704Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com>
3705
3706 * config/tc-mips.c (macro): When passing X_add_number to
3707 macro_build, cast it to int first.
3708
943bdfdc
ILT
3709Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com>
3710
54388b85
ILT
3711 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
3712 created by emit_expr.
3713
943bdfdc
ILT
3714 * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
3715 as_perror rather than assert.
3716
9b61d62b
ILT
3717Fri May 24 18:24:11 1996 Ian Lance Taylor <ian@cygnus.com>
3718
3719 * config/tc-mips.c (mips_ip): Mark sections created to hold
3720 floating point information as read only.
3721
e30c0076
MM
3722Fri May 24 12:07:54 1996 David Edelsohn <edelsohn@mhpcc.edu>
3723
3724 * config/tc-ppc.c (ppc_set_cpu): Change defaults to match AIX.
3725
63cafcef
MM
3726Thu May 23 17:34:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3727
adeab39b
MM
3728 * read.c (potable): Add .skip as a synonym for .space.
3729
63cafcef
MM
3730 * stabs.c (s_stab_generic): For PowerPC ELF, allow .stabd to take
3731 4 arguments, providing the 4th argument is 0, to allow
3732 compatibility with the Solaris assembler.
3733
3734Thu May 16 15:51:48 1996 Ian Lance Taylor <ian@cygnus.com>
3735
3736 * config/tc-sh.h (struct sh_segment_info_type): Define.
3737 (TC_SEGMENT_INFO_TYPE): Define.
3738 (sh_frob_label): Declare.
3739 (tc_frob_label): Define.
3740 (sh_flush_pending_output): Declare.
3741 (md_flush_pending_output): Define.
3742 * config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
3743 reloc before the instruction if necessary.
3744 (sh_frob_label): New function.
3745 (sh_flush_pending_output): New function.
3746 (sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
3747 when looking for the reloc for the target of .uses.
3748 (md_convert_frag): Fix printf format (%0xlx to 0x%lx).
3749 (sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
3750 emitted.
3751 (md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
3752 (sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
3753 the absolute symbol.
3754
3755 * subsegs.h (segment_info_type): Add tc_segment_info_data field if
3756 TC_SEGMENT_INFO_TYPE is defined.
3757
3ea36b53
ILT
3758Wed May 15 12:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
3759
3760 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
3761 matches the register size.
3762
ecb9b1ca
JL
3763Wed May 15 08:33:37 1996 Jeffrey A Law (law@cygnus.com)
3764
3765 * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
3766 fx_done set.
3767 (do_relocs_for): Likewise.
3768 (fixup_segment): Don't just quit if linkrelax is set. Try to
3769 apply non pc-relative sym1-sym2 fixups, even if linkrelax is
3770 nonzero.
3771
f122568e
MM
3772Fri May 10 14:16:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3773
3774 * config/tc-ppc.c (ppc_elf_validate_fix): Allow GOT and section
3775 relative relocations with -mrelocatable. Also allow unfixed
3776 relocs in .ex_shared.
3777
6648d3ae
ILT
3778Tue May 7 11:24:10 1996 Ian Lance Taylor <ian@cygnus.com>
3779
3780 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
3781 non-zero before assuming this is a long file name.
3782 (w_strings): Likewise.
3783 (c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.
3784
3785 * config/obj-coff.c (w_strings): Move declaration of i inside
3786 #ifdef block which uses it.
3787
c47fc401
JL
3788Tue May 7 00:49:58 1996 Jeffrey A Law (law@cygnus.com)
3789
3790 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
3791 "relaxmode". Output relocs which identify various relaxing
3792 possibilities for mov.[bwl] instructions.
3793 (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
3794
9ea82743
DE
3795Mon May 6 15:26:28 1996 Doug Evans <dje@canuck.cygnus.com>
3796
3797 * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
3798 (MD_APPLY_FIX3): Define.
3799 * config/tc-arm.c (my_get_expression): Only watch for bad segments
3800 if OBJ_AOUT.
3801 (md_apply_fix3): Renamed from md_apply_fix.
3802 If pcrel reloc and symbol is in different section, undo effects
3803 of md_pcrel_from.
3804
ab7db73b
JL
3805Sat May 4 12:49:35 1996 Jeffrey A Law (law@cygnus.com)
3806
3807 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
3808 any reloc with an LR% or RR% field selector for SOM.
3809
c9324fcd
ILT
3810Sat May 4 11:26:19 1996 Ian Lance Taylor <ian@cygnus.com>
3811
3812 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
3813 variables.
3814
d4d7d98c
ILT
3815Fri May 3 17:58:31 1996 Ian Lance Taylor <ian@cygnus.com>
3816
3817 * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
3818 SF_GET_STATICS set.
3819 (yank_symbols): Likewise.
3820
8fe2ec52
ILT
3821Wed May 1 13:38:17 1996 Ian Lance Taylor <ian@cygnus.com>
3822
7681eb9d
ILT
3823 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
3824 BFD_ASSEMBLER, add name field.
ba97ba7e
ILT
3825 * config/obj-coff.c: Include "libiberty.h".
3826 (coff_header_append): Handle long section names.
7681eb9d
ILT
3827 (crawl_symbols): Just use the name field for the symbol name,
3828 without worrying about null byte termination.
3829 (w_strings): Handle long section names.
3830 (write_object_file): Likewise. Also, use the name field, rather
3831 than scnhdr.s_name.
3832 (obj_coff_add_segment): Permit long section names.
3833 (obj_coff_init_stab_section): Use the name field, rather than
3834 scnhdr.s_name.
3835 (adjust_stab_section): Likewise.
3836 * config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
3837
8fe2ec52
ILT
3838 * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
3839 (mem_fmt): Likewise.
3840 (md_apply_fix): Don't check fx_im_disp field.
3841
556829bc
ILT
3842Thu Apr 25 11:39:51 1996 Ian Lance Taylor <ian@cygnus.com>
3843
f9e36fc6
ILT
3844 * configure.in: Add * after sparc*-*-vxworks.
3845 * configure: Rebuild.
3846
556829bc
ILT
3847 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
3848 define it to comment_chars. Use tc_comment_chars rather than
3849 comment_chars.
3850 (do_scrub_chars): Use tc_comment_chars rather than comment_chars.
3851 * config/tc-m68k.h (tc_comment_chars): Define.
3852 (m68k_comment_chars): Declare.
3853 * config/tc-m68k.c (m68k_comment_chars): Rename from
3854 comment_chars. Change into a pointer rather than an array.
3855 (md_longopts): Add "bitwise-or".
3856 (md_parse_option): Handle OPTION_BITWISE_OR.
3857 (md_show_usage): Mention --bitwise-or.
3858 * doc/c-m68k.texi: Document --bitwise-or.
3859
116bf30f
ILT
3860Wed Apr 24 11:28:38 1996 Ian Lance Taylor <ian@cygnus.com>
3861
912e4245
ILT
3862 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
3863 in 68000 mode.
3864
116bf30f
ILT
3865 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
3866 call demand_empty_rest_of_line. Non BFD_ASSEMBLER version:
3867 correct handling of input line pointer, and call
3868 demand_empty_rest_of_line.
3869
58c9a12b
DE
3870Mon Apr 22 18:02:37 1996 Doug Evans <dje@blues.cygnus.com>
3871
3872 * config/tc-sparc.c (in_bitfield_range): New static function.
3873 (sparc_ip): New cases X,Y. Use SPARC_OPCODE_ARCH_V9_P.
3874 (md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
3875 BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
3876 (md_apply_fix): New cases BFD_RELOC_SPARC_[56].
3877 (tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
3878
ff406bd3
ILT
3879Thu Apr 18 18:58:33 1996 Ian Lance Taylor <ian@cygnus.com>
3880
3881 * config/obj-coff.c: BFD_ASSEMBLER:
3882 (coff_last_bf): New static variable.
3883 (coff_frob_symbol): Set endndx of a .bf symbol.
3884 Non BFD_ASSEMBLER:
3885 (obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
3886 (last_bfP): New static variable.
3887 (yank_symbols): Set endndx of a .bf symbol.
3888
47d12b2c
MM
3889Thu Apr 18 11:53:58 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3890
3891 * config/tc-ppc.c (md_parse_option): Add support for Solaris's -le
3892 and -s options. Add -be for good measure.
3893
3ce7f41a
ILT
3894Wed Apr 17 12:31:01 1996 Ian Lance Taylor <ian@cygnus.com>
3895
3896 * read.c (s_space): Support non-constant fill value. Handle fill
3897 value correctly for a size other than 1.
3898
865447db
DE
3899Tue Apr 16 15:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
3900
3901 * config/tc-arm.c (my_get_float_expression): Update call to
3902 gen_to_words, X_PRECISION changed from 6 to 5.
3903
159e6ef8
MM
3904Tue Apr 16 10:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3905
3906 * config/tc-ppc.c (register_name,reg_name_search): Move register
3907 name lookup from PE specific code to all targets. Add support for
3908 -mregnames/-mno-regnames to control whether register names are
3909 expanded or not.
3910 (md_assemble): Call register_name for all platforms.
3911 (md_parse_option): Add support for -mregnames/-mno-regnames.
3912
3913 * configure.in (powerpcle*-*-solaris): Add support.
3914 (powerpc*-*-linux): Ditto.
3915 * configure: Regenerate.
3916
3917 * config/ppc-sol.mt: New config file for PowerPC Solaris.
3918
7a15a226
ILT
3919Mon Apr 15 12:26:33 1996 Ian Lance Taylor <ian@cygnus.com>
3920
aa9e2dbe
ILT
3921 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
3922 be associated with a single %lo reloc.
3923
7a15a226
ILT
3924 * config/tc-mips.c (load_address): Cast X_add_number to valueT
3925 before comparing against MAX_GPREL_OFFSET, so that negative
3926 numbers are handled correctly.
3927 (macro): Likewise.
3928
65feb78d
ILT
3929Thu Apr 11 12:39:02 1996 Ian Lance Taylor <ian@cygnus.com>
3930
ed94c2b8
ILT
3931 * config/tc-sparc.c (last_insn): New static variable.
3932 (md_assemble): Warn about putting floating point branches in a
3933 delay slot. If architecture is less than v9, insert NOP
3934 instructions between floating point instructions and floating
3935 point branches. (The SunOS assembler does both these operations.)
3936 Save the last instruction opcode.
3937 (sparc_ip): Add pinsn parameter. Change caller.
3938
65feb78d
ILT
3939 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
3940 for byte jump to next instruction to skip empty frags.
3941
456c301f
ILT
3942Wed Apr 10 16:48:12 1996 Ian Lance Taylor <ian@cygnus.com>
3943
3944 * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
3945 for addq with a 16 bit signed value, just emit a lda instruction
3946 instead.
3947
b3ed89e8
JL
3948Wed Apr 10 14:34:49 1996 Jeffrey A Law (law@cygnus.com)
3949
3950 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
3951 of a 32bit operand.
3952
b4cb4ea2
ILT
3953Mon Apr 8 14:42:53 1996 Ian Lance Taylor <ian@cygnus.com>
3954
3955 * configure.in: Permit --enable-shared to specify a list of
3956 directories.
3957 * configure: Rebuild.
3958
dcb195f8
JL
3959Fri Apr 5 17:01:35 1996 Jeffrey A Law (law@cygnus.com)
3960
3961 * config/tc-h8300.c (get_specific): Remove some #if 0 code.
3962 (build_bytes): Remove all ABSMOV related code; it's unnecessary.
3963
13e4a17e
ILT
3964Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3965
3966 * config/atof-ieee.c: Fix handling of denormalized extended
3967 precision numbers and overflow/underflow detection.
3968 (MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
3969 not include the 16 bit gap in the m68k extended precision format.
3970
2ae5f50b
ILT
3971Fri Apr 5 14:29:23 1996 Ian Lance Taylor <ian@cygnus.com>
3972
3973 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
3974 <jdp@polstra.com>.
3975 * configure: Rebuild.
3976
54ea771f
JSC
3977Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
3978
3979 * config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
3980 be accessed using the $gp register.
3981 * config/tc-mips.h (MAX_GPREL_OFFSET): Added.
3982
65b12103
DE
3983Wed Apr 3 10:56:14 1996 Doug Evans <dje@canuck.cygnus.com>
3984
3985 * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
3986 bfd_mach_sparc_sparclet if current_architecture is sparclet.
3987
2271578d
ILT
3988Mon Apr 1 16:55:44 1996 Ian Lance Taylor <ian@cygnus.com>
3989
3990 * read.c (get_line_sb): Bump line counters based on
3991 input_line_pointer[-1], not *input_line_pointer. Don't bother to
3992 call LISTING_NEWLINE.
3993 (s_macro): Don't call demand_empty_rest_of_line.
3994 * app.c (do_scrub_chars): When handling C style comments, unget
3995 ch2 rather than ch.
3996
7d3741ed
ILT
3997Fri Mar 29 16:15:06 1996 Ian Lance Taylor <ian@cygnus.com>
3998
3999 * read.h (enum linkonce_type): Define.
4000 (s_linkonce): Declare.
4001 * read.c (potable): Add "linkonce".
4002 (s_linkonce): New function.
4003 * subsegs.h (segment_info_type): Add linkonce field to
4004 MANY_SEGMENTS && ! BFD_ASSEMBLER section.
4005 * config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
4006 (obj_coff_pe_handle_link_once): Declare if TE_PE.
4007 * config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
4008 "coff/pe.h".
4009 (obj_coff_pe_handle_link_once): New function, defined if TE_PE.
4010 (c_section_symbol): If TE_PE, set the x_comdat field in the aux
4011 entry based on the linkonce field in segment_info.
4012 * doc/as.texinfo: Document .linkonce.
4013
0c203340
C
4014Fri Mar 29 11:31:27 1996 J.T. Conklin (jtc@lisa.cygnus.com)
4015
4016 * doc/as.1: Changed to be recognized by catman -w on Solaris.
4017
867a58b3
ILT
4018Thu Mar 28 15:27:47 1996 Ian Lance Taylor <ian@cygnus.com>
4019
3197da91
ILT
4020 * stabs.c (s_stab_generic): Call the listing functions before
4021 doing the rest of the processing, which may involve freeing the
4022 string. Pass string, not string + stroff, to OBJ_PROCESS_STAB in
4023 SEPARATE_STAB_SECTIONS case.
4024
3c071b9f
ILT
4025 * config/tc-hppa.c: Remove nested comment.
4026 (tc_gen_reloc): Move label done inside the ifdef in which it is
4027 used.
4028 (md_apply_fix): Pass pointers to correct types to libhppa.h
4029 functions. Always return a value.
4030
867a58b3
ILT
4031 * config/tc-mips.h (tc_frob_file): Define.
4032 (mips_frob_file): Declare.
4033 * config/tc-mips.c (struct mips_hi_fixup): Define.
4034 (mips_hi_fixup_list): New static variable.
4035 (imm_unmatched_hi): New static variable.
4036 (md_assemble): Clear imm_reloc, imm_unmatched_hi, and
4037 offset_reloc. Pass imm_unmatched_hi to append_insn.
4038 (append_insn): Add unmatched_hi parameter. If it is set, add the
4039 new fixup to mips_hi_fixup_list. Change all callers.
4040 (mips_ip): Set imm_unmatched_hi when appropriate.
4041 (mips_frob_file): New function.
4042
d0352cbb
DE
4043Thu Mar 28 11:47:59 1996 Doug Evans <dje@canuck.cygnus.com>
4044
4045 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
4046 * configure: Regenerated.
4047
4f74c042
ILT
4048Tue Mar 26 18:19:12 1996 Ian Lance Taylor <ian@cygnus.com>
4049
4050 * as.c (main): Call bfd_set_error_program_name.
4051
5ba7c0be
ILT
4052Fri Mar 22 11:13:00 1996 Ian Lance Taylor <ian@cygnus.com>
4053
c7a89bde
ILT
4054 * as.h (strdup): Don't declare.
4055 * stabs.c: Include libiberty.h
4056 (get_stab_string_offset): Use xstrdup rather than strdup.
4057 (s_stab_generic): Likewise.
4058 * as.c (parse_args): Likewise.
4059 * read.c (s_mri_sect): Likewise.
4060
5ba7c0be
ILT
4061 * gasp.c (change_base): Recognize \(...) construct documented to
4062 pass through enclosed characters literally through to the output.
4063 (process_assigns): Likewise. Also, be more careful to avoid
4064 looking past the end of the buffer.
4065
4066Thu Mar 21 13:18:43 1996 Ian Lance Taylor <ian@cygnus.com>
4067
4068 * config/tc-i386.c (md_parse_option): If OBJ_ELF, ignore -k for
4069 FreeBSD compatibility. From John Polstra <jdp@polstra.com>.
4070
d1f38e13
ILT
4071Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4072
4073 * doc/as.texinfo, doc/c-i960.texi: Fix typos.
4074
649d87fe
ILT
4075Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
4076
4077 * config/alpha-opcode.h: Added cvtst instruction.
4078
975def01
ILT
4079Mon Mar 18 13:12:46 1996 Ian Lance Taylor <ian@cygnus.com>
4080
4081 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
4082 string. Extract the addend from the result of expression.
4083
fde6018a
ILT
4084Fri Mar 15 17:10:43 1996 Ian Lance Taylor <ian@cygnus.com>
4085
4086 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
4087 LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
4088 mode, change the state to 3 rather than 1.
4089
ee0f488d
ILT
4090Thu Mar 14 18:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
4091
4092 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
4093 correspond to 11 March change.
4094
9da28504
JL
4095Thu Mar 14 15:27:10 1996 Jeffrey A Law (law@cygnus.com)
4096
4097 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
4098 an R_MEM_INDIRECT reloc rather than R_RELBYTE.
4099
ea2488ad
ILT
4100Tue Mar 12 12:21:10 1996 Ian Lance Taylor <ian@cygnus.com>
4101
4102 * configure: Rebuild with autoconf 2.8.
4103
8fee8bf3
ILT
4104Mon Mar 11 18:57:12 1996 Ian Lance Taylor <ian@cygnus.com>
4105
4106 * config/atof-ieee.c (gen_to_words): Improve handling of
4107 X_PRECISION numbers. Based on patches from Andreas Schwab
4108 <schwab@issan.informatik.uni-dortmund.de>.
4109
a31c2bc7
SC
4110Mon Mar 11 09:59:53 1996 Steve Chamberlain <sac@slash.cygnus.com>
4111
4112 * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
4113 (SEG_LAST): New.
4114 * subsegs.c (MANY_SEGMENTS): Increase segment limit.
4115 * obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
4116 (do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
4117 crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
4118 SEG_E9.
4119
4120Thu Mar 7 15:17:39 1996 Doug Evans <dje@charmed.cygnus.com>
4121
4122 * config/tc-sparc.c (sparc_ip): Handle operand char 'O' (neg reg).
4123
73578b1e
JL
4124Thu Mar 7 09:19:15 1996 Jeffrey A Law (law@cygnus.com)
4125
4126 * config/tc-hppa.c (SUBSEG_MILLI): Define.
4127 (pa_def_subspaces): Add $MILLICODE$.
4128 (pa_spaces_begin): Set section flags for $MILLICODE$.
4129
0c27542f
ILT
4130Wed Mar 6 14:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
4131
6b8ed20d
ILT
4132 * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
4133 not SHT_NOBITS. Don't tamper with flags based on type if a
4134 special section was found (revert Feb 29 change).
4135
0c27542f
ILT
4136 * config/tc-sh.c (sh_do_align): Only align using the nop pattern
4137 if aligning to a longword boundary or greater.
4138
6a413d6f
JW
4139Tue Mar 5 15:10:43 1996 Jim Wilson <wilson@chestnut.cygnus.com>
4140
4141 * config/tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align.
4142
4b295517
SC
4143Mon Mar 4 20:50:57 1996 Steve Chamberlain <sac@slash.cygnus.com>
4144
4145 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
4146 * configure: Regenerated.
4147
eff5fcda
JL
4148Mon Mar 4 10:13:06 1996 Jeffrey A Law (law@cygnus.com)
4149
421e2c27
JL
4150 * config/tc-hppa.c: Add default definitions for R_N0SEL and
4151 R_N1SEL since they're not defined for old versions of hpux.
4152
eff5fcda
JL
4153 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
4154 Set "sym_ptr_ptr" and "addend" fields to dummy values for
4155 R_N0SEL and R_N1SEL.
4156
bb1013d9
ILT
4157Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4158
d197a7ab
ILT
4159 * flonum-konst.c: Add two more constants for 1e+-2048 and
4160 1e+-4096, and correct the other constants.
4161
bb1013d9
ILT
4162 * symbols.c (resolve_symbol_value): Handle O_logical_not.
4163
30510276
MM
4164Thu Feb 29 13:58:35 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4165
4166 * config/obj-elf.c (obj_elf_section): Allow predefined section
0d8405e8 4167 types to set the nobits type. Avoid a shadowed declaration.
30510276 4168
75c90d61
JL
4169Wed Feb 28 15:38:56 1996 Jeffrey A Law (law@cygnus.com)
4170
24b216e1
JL
4171 * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
4172 reduce relocs using e_nlrsel field selectors.
4173
75c90d61
JL
4174 * write.c (fix_new_exp): Don't use #elif. Some compilers
4175 don't handle it.
83b59013
JL
4176
4177 * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
4178 the selector table.
4179 (pa_chk_field_selector): Handle new field selectors for SOM.
4180
535cfd0f
ILT
4181Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4182
4183 * configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
4184 * configure: Rebuild.
4185 * config/te-linux.h (LOCAL_LABELS_FB): Define.
4186 * config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
4187 "a.out-m68k-linux".
4188 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
4189 is defined.
4190
d214421e
SS
4191Mon Feb 26 18:58:58 1996 Stan Shebs <shebs@andros.cygnus.com>
4192
4193 * mpw-make.sed: Update to handle shared library support.
4194
110b814d
DE
4195Mon Feb 26 10:34:10 1996 Doug Evans <dje@charmed.cygnus.com>
4196
4197 * config/tc-sparc.c (sparc_ip): Print all architectures that support
4198 the insn on mismatch.
4199
805e36ab
RS
4200Fri Feb 23 21:44:39 1996 Rob Savoye <rob@chinadoll.cygnus.com>
4201
4202 * configure.in: Add support for a29-coff.
4203 * configure: Rebuild.
4204
e41ab2a6
ILT
4205Thu Feb 22 16:39:43 1996 Ian Lance Taylor <ian@cygnus.com>
4206
101a2346
ILT
4207 * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
4208 of the section when looking for the R_SH_USES fixup, because the
4209 frag addresses have not yet been adjusted.
4210
940c413f
ILT
4211 * gdbinit.in: Set a breakpoint on as_warn_where.
4212
e41ab2a6
ILT
4213 * config/tc-mips.c (macro): Add missing arguments to macro_build
4214 omitted in last change. From Jim Wilson <wilson@cygnus.com>.
4215
c6016ce2
ILT
4216Wed Feb 21 17:00:32 1996 Ian Lance Taylor <ian@cygnus.com>
4217
4218 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
4219 if it is TC_CONS_RELOC. Set a size of 4 to R_RELLONG.
4220
b32fbe07
DE
4221Wed Feb 21 09:25:39 1996 Doug Evans <dje@charmed.cygnus.com>
4222
4223 * config/tc-sparc.c (sparc_ip): Recognize %asr0 for v8.
4224
2e5e6879
DE
4225Tue Feb 20 21:48:03 1996 Doug Evans <dje@charmed.cygnus.com>
4226
4227 * config/tc-sparc.c (parse_keyword_arg): Accept leading '%'.
4228 (sparc_ip): Accept %asr[1..31] for v8 and %asr[%16..31] for v9.
4229 Recognize [uU] format args as sparclet cpregs.
4230
8a2e1fdd
ILT
4231Tue Feb 20 22:25:55 1996 Ian Lance Taylor <ian@cygnus.com>
4232
4233 * config/tc-sh.c (sh_handle_align): Don't emit R_SH_ALIGN relocs
4234 in bss_section.
4235
21965655
ILT
4236Mon Feb 19 14:16:24 1996 Ian Lance Taylor <ian@cygnus.com>
4237
4238 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): Check S_IS_WEAK as
4239 well as S_IS_EXTERNAL.
4240 (tc_fix_adjustable): Likewise.
4241 * config/tc-sparc.c (md_apply_fix): In OBJ_ELF case, check for
4242 S_IS_WEAK as well as S_IS_EXTERNAL when deciding whether to return
4243 early.
4244 (tc_gen_reloc): Check S_IS_WEAK as wel as S_IS_EXTERNAL when
4245 deciding whether to convert BFD_RELOC_32_PCREL_S2 if PIC.
4246
d8b42b96
DE
4247Mon Feb 19 02:15:57 1996 Doug Evans <dje@charmed.cygnus.com>
4248
4249 * config/tc-sparc.c (max_architecture): Change to sparclite for
4250 32 bit arch.
4251 (default_compatible): Delete.
4252 (sparc_ffs): New function.
4253 (md_begin): Only call SPARC_OPCODE_CONFLICT_P once.
4254 (sparc_ip): Rewrite architecture match and bump logic.
4255
7925f4d4
ILT
4256Sun Feb 18 15:03:50 1996 Ian Lance Taylor <ian@cygnus.com>
4257
4258 * configure.in: Check for 'do not mix' from native linker before
4259 trying to use -rpath.
4260 * configure: Rebuild.
4261
ef2074c2
ILT
4262Fri Feb 16 16:53:31 1996 Ian Lance Taylor <ian@cygnus.com>
4263
4264 * config/obj-coff.h (SF_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4265 (SF_GET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4266 (SF_SET_ADJ_LNNOPTR): Define (non BFD_ASSEMBLER).
4267 * config/obj-coff.c (obj_coff_endef): Set ADJ_LNNOPTR when LNNOPTR
4268 is set.
4269 (w_symbols): If ADJ_LNNOPTR is set, add the section lnnoptr field
4270 to the symbol lnnoptr field, to get the correct file offset.
4271
28910c57
MM
4272Thu Feb 15 14:48:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4273
4274 * config/obj-elf.c (elf_frob_symbol): On the PowerPC, force all
4275 symbols that are not function, file, or section symbols to be
4276 object types.
4277
7c2fadd1
ILT
4278Thu Feb 15 11:20:18 1996 Ian Lance Taylor <ian@cygnus.com>
4279
1a2f3c3f
ILT
4280 * configure: Set and substitute RPATH_ENVVAR.
4281 * configure: Rebuild.
4282 * Makefile.in (RPATH_ENVVAR): New variable.
4283 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
4284
7c2fadd1
ILT
4285 * configure.in: Accept i686. From H.J. Lu <hjl@zoom.com>: i386
4286 doesn't need opcodes. If configuring shared, opcodes needs bfd.
4287 * configure: Rebuild.
4288
8a6f53e9
ILT
4289Wed Feb 14 16:33:12 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
4290
4291 * read.c (s_mri_sect): Don't return '\0' in type. Set all
4292 appropriate flags in BFD section.
4293
4294 * configure.in (m68k-*-psos*): New target.
4295 * configure: Rebuild.
4296 * config/te-psos.h: New file.
4297 * config/tc-m68k.c (comment_chars): Don't include '#' if TE_PSOS
4298 is defined.
4299
fb251650
ILT
4300Wed Feb 14 13:43:24 1996 Ian Lance Taylor <ian@cygnus.com>
4301
ae09d880
ILT
4302 From Alan Modra <alan@spri.levels.unisa.edu.au>:
4303 * configure.in: Remove duplicate setting of cpu_type. Check
4304 whether opcodes library is required for on all targets, not just
4305 primary one.
4306 * configure: Rebuild.
4307
fb251650
ILT
4308 * config/tc-mips.c (mips_big_got): New static variable.
4309 (s_extern): Don't declare.
4310 (reg_needs_delay): New static function.
4311 (macro_build): Permit GOT/CALL_HI/LO relocs.
4312 (macro_build_lui): If place is not NULL, use the number in the
4313 expression.
4314 (load_address): Handle mips_big_got case.
4315 (macro): Handle mips_big_got for M_LA_AB, M_JAL_A, and load and
4316 store macros.
4317 (OPTION_XGOT): Define.
4318 (md_longopts): Add "xgot" if OBJ_ELF.
4319 (md_parse_option): Handle -xgot.
4320 (md_show_usage): Mention -xgot.
4321 (md_apply_fix): Permit GOT/CALL_HI/LO relocs.
4322 (tc_gen_reloc): Handle GOT/CALL_HI/LO relocs.
4323
d9396c16
ILT
4324Wed Feb 14 11:22:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4325
4326 * config/tc-m68k.c (m68k_ip) [operand kind '#']: When fixing
4327 the byte relocation, point it to the low byte of the word.
4328
56f9773f
ILT
4329Tue Feb 13 15:31:18 1996 Ian Lance Taylor <ian@cygnus.com>
4330
4331 * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
4332 * configure: Rebuild.
4333
63e4edb5
DE
4334Mon Feb 12 15:53:46 1996 Doug Evans <dje@charmed.cygnus.com>
4335
4336 * configure.in: Recognize any sparc* cpu.
4337 * configure: Regenerated.
4338
15ed5f2c
ILT
4339Mon Feb 12 15:41:21 1996 Ian Lance Taylor <ian@cygnus.com>
4340
20710f1c
ILT
4341 * read.c (potable): Add "mri" and ".mri".
4342 (s_mri): New function.
4343 * read.h (s_mri): Declare.
4344 * app.c (scrub_m68k_mri): New static variable.
4345 (mri_pseudo): New static variable.
4346 (do_scrub_begin): Add m68k_mri parameter. Use it rather than
4347 flag_m68k_mri. Initialize scrub_m68k_mri.
4348 (mri_state, mri_last_ch): New static variables.
4349 (struct app_save): Add scrub_m68k_mri, mri_state, and mri_last_ch
4350 fields.
4351 (app_push): Save new fields.
4352 (app_pop): Restore new fields.
4353 (do_scrub_chars): Check scrub_m68k_mri rather than flag_mri_mri.
4354 If TC_M68K, use a trivial state machine to look for occurrences of
4355 the .mri pseudo-op, and change the mode appropriately.
4356 * as.h (do_scrub_begin): Update prototype.
4357 * input-scrub.c (input_scrub_begin): Pass flag_m68k_mri to
4358 do_scrub_begin.
4359 * config/tc-m68k.c (reg_prefix_optional_seen): New static
4360 variable.
4361 (m68k_mri_mode_change): New function.
4362 (md_parse_option): Set reg_prefix_optional_seen.
4363 * config/tc-m68k.h (m68k_mri_mode_change): Declare.
4364 (MRI_MODE_CHANGE): Define.
4365 * doc/as.texinfo: Document .mri pseudo-op.
4366
15ed5f2c
ILT
4367 * app.c (do_scrub_chars): In MRI mode, don't treat '#' as a
4368 comment character.
4369
a043f579
ILT
4370Mon Feb 12 15:16:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4371
4372 Support for OBJ_ELF on m68k, mostly inside #ifdef OBJ_ELF:
4373 * config/m68k-parse.h (enum pic_relocation): Define.
4374 (struct m68k_exp): Add pic_reloc field.
4375 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
4376 (tc_fix_adjustable): Define to call tc_m68k_fix_adjustable.
4377 (NO_RELOC): Define to BFD_RELOC_NONE if BFD_ASSEMBLER, to zero
4378 otherwise.
4379 * config/tc-m68k.c: Delete definition of NO_RELOC.
4380 (struct m68k_it): Add pic_reloc field.
4381 (add_fix): Copy over pic_reloc field.
4382 (md_pseudo_table): Interpret .align parameter as byte count.
4383 (mote_pseudo_table): Likewise.
4384 (tc_m68k_fix_adjustable): New function.
4385 (get_reloc_code): New function.
4386 (md_assemble): Use it as last argument to fix_new_exp.
4387 (md_apply_fix_2): For a relocation against a symbol don't put the
4388 addend into the data.
4389 (tc_gen_reloc): Different addend computation for OBJ_ELF.
4390 (m68k_ip): Don't relax an operand that requires pic relocation.
4391 (md_begin): Align .text, .data and .bss on 4 byte boundary by
4392 default.
4393 * write.c (fixup_segment): Don't add symbol value to addend if
4394 TC_M68K and OBJ_ELF.
4395 * config/m68k-parse.y (yylex): Handle @PLTPC, etc.
4396 (motorola_operand): Add rule for `(zapc, EXPR)'.
4397
6ca1156d
ILT
4398Mon Feb 12 10:07:33 1996 David Mosberger-Tang <davidm@azstarnet.com>
4399
4400 * ecoff.c (ecoff_directive_weakext): Fixed so that whitespace
4401 *really* is permissible before the comma.
4402
fcee3e24
ILT
4403Mon Feb 12 00:12:13 1996 Ian Lance Taylor <ian@cygnus.com>
4404
4405 * config/tc-sh.c (sh_do_align): Align to a 2 byte boundary before
4406 inserting nop instructions.
4407
3e1c964d
ILT
4408Fri Feb 9 10:54:19 1996 Ian Lance Taylor <ian@cygnus.com>
4409
4410 * config/te-aux.h: Change include of aux.h to aux-coff.h.
4411
4080c270
ILT
4412Thu Feb 8 20:02:58 1996 Ian Lance Taylor <ian@cygnus.com>
4413
d782e3cc
ILT
4414 * config/tc-i960.c (tc_coff_symbol_emit_hook): Correct storage
4415 class setting for a CALLNAME symbol in COFF.
4416
4080c270
ILT
4417 * read.c (potable): Pass negative numbers for new .balign[wl] and
4418 .p2align[wl] pseudo-ops.
4419 (s_align_bytes): Treat a negative argument as specifying the fill
4420 length.
4421 (s_align_ptwo): Likewise.
4422
1c9dbb83
ILT
4423Wed Feb 7 14:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
4424
71dd3c40
ILT
4425 * read.c (potable): Add balignw, balignl, p2alignw, and p2alignl.
4426 (do_align): Take new len parameter. Change all callers. Pass it
4427 to md_do_align.
4428 (s_align_bytes): Arg now indicates the length of the fill pattern.
4429 (s_align_ptwo): Likewise.
4430 * config/obj-coff.c (write_object_file): Pass length to
4431 md_do_align.
4432 * config/tc-i386.h (md_do_align): Take new len parameter.
4433 * config/tc-m88k.h (md_do_align): Likewise.
4434 * config/tc-m88k.c (m88k_do_align): Likewise.
4435 * config/tc-sh.h (md_do_align): Likewise.
4436 * config/tc-sh.c (sh_do_align): Likewise.
4437 * doc/as.texinfo: Document new pseudo-ops.
4438
4439 * config/obj-coff.c (fixup_mdeps): Divide offset by fr_var, as is
4440 done in cvt_frag_to_fill.
4441
9addcbb1
ILT
4442 * config/tc-sh.h (sh_do_align): Declare.
4443 (md_do_align): Define.
4444 * config/tc-sh.c (sh_do_align): New function.
4445
c15ea23a
ILT
4446 * ecoff.c (ecoff_build_lineno): Don't try to store the address
4447 difference if the next address is before the current one.
4448
9e64486e
ILT
4449 * config/tc-m68k.c (struct m68k_cpu): Add alias field.
4450 (archs): Initialize new field.
4451 (m68k_ip): Don't list alias names when listing CPUs which support
4452 an instruction.
4453
4454 * as.c (main): Call parse_args before read_begin.
4455 * app.c (do_scrub_chars): If flag_m68k_mri, don't put a dot in
4456 front of generated pseudo-ops.
4457 * read.c (potable): Ignore "name".
4458 (s_app_file): Permit a single quote after the string, since one
4459 may appear in m68k MRI mode.
4460
1c9dbb83
ILT
4461 * configure.in: Check for --enable-shared. If linking against
4462 shared BFD and opcodes, fix library name on SunOS, and try to set
4463 -rpath reasonably.
4464 * configure: Rebuild.
4465
4466Tue Feb 6 15:16:17 1996 Ian Lance Taylor <ian@cygnus.com>
4467
4468 * as.h (flag_m68k_mri): Declare.
4469 * as.c (parse_args): If TC_M68K, set flag_m68k_mri for -M.
4470 * Many files: For MRI syntax that is specific to the m68k MRI
4471 assembler, check flag_m68k_mri rather than flag_mri or
4472 MRI_MODE_NEEDS_PSEUDO_DOT.
4473
dd1d79e8
ILT
4474Mon Feb 5 16:29:11 1996 Ian Lance Taylor <ian@cygnus.com>
4475
f9e90c2e
ILT
4476 * config/tc-i960.c (ARCH_HX): Define.
4477 (arch_tab): Add HX.
4478 (targ_has_sfr): Handle ARCH_HX.
4479 (targ_has_iclass): Handle ARCH_HX.
4480 (tc_coff_fix2rtype): Add return 0 to avoid warning.
4481 (tc_headers_hook): If the architecture was specified explicitly,
4482 use it when setting the flags. Set the extern variable coff_flags
4483 rather than headers->filehdr.f_flags, since the latter is set
4484 unconditionally in obj-coff.c.
4485 (i960_handle_align): Remove unused variable fixp.
4486
dd1d79e8
ILT
4487 Support for building bfd and opcodes as shared libraries, based on
4488 patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
4489 * configure.in: Set OPCODES and BFD to search directories.
4490 Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
4491 * configure: Rebuild.
4492 * Makefile.in (LDFLAGS, HLDFLAGS): New variables.
4493 (LIBDEPS): New variable.
4494 (as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
4495 $(HLDFLAGS) in link.
4496 (check): Set LD_LIBRARY_PATH in the environment.
4497
4498Fri Feb 2 17:41:53 1996 Michael Meissner <meissner@wogglebug.tiac.net>
4499
4500 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Make .sdata2, .sbss2,
4501 .PPC.EMB.sdata0, and .PPC.EMB.sbss0 sections all default to
4502 read-only, not read/write.
4503
e277d131
ILT
4504Fri Feb 2 14:09:25 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
4505
4506 * Makefile.in (INSTALL_XFORM): Remove -e.
4507
e24cf2b5
ILT
4508Fri Feb 2 12:32:15 1996 Ian Lance Taylor <ian@cygnus.com>
4509
4510 * write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
4511 than comparing S_GET_SEGMENT to undefined_section.
4512 (write_object_file): Skip symbols which were equated to an
4513 undefined or common symbol.
4514 * symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
4515 S_IS_COMMON rather than comparing S_GET_SEGMENT to
4516 undefined_section.
4517 (S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
4518 or S_IS_COMMON call S_GET_VALUE.
4519 * config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
4520 * config/obj-aout.c (obj_emit_relocations): If a reloc is equated
4521 to an undefined or common symbol, convert the reloc to be against
4522 the target symbol.
4523 (obj_crawl_symbol_chain): Skip symbols which were equated to an
4524 undefined or common symbol.
4525 * config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
4526 * config/obj-bout.c (obj_emit_relocations): If a reloc is equated
4527 to an undefined or common symbol, convert the reloc to be against
4528 the target symbol.
4529 (obj_crawl_symbol_chain): Skip symbols which were equated to an
4530 undefined or common symbol.
4531 * config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
4532 S_IS_COMMON rather than comparing S_GET_SEGMENT to
4533 undefined_section.
4534 (yank_symbols): Skip symbols which were equated to an undefined or
4535 common symbol.
4536
4d9e33e4
ILT
4537Thu Feb 1 15:34:32 1996 Ian Lance Taylor <ian@cygnus.com>
4538
9e396994
ILT
4539 * config/obj-aout.h (S_IS_LOCAL): Check for \002 as well as \001.
4540 * config/obj-bout.h (S_IS_LOCAL): Likewise.
4541
4d9e33e4
ILT
4542 * configure.in: Make sure we only add m68k-parse.o to
4543 ${extra_objects} once, no matter how many m68k targets have been
4544 enabled.
4545 * configure: Rebuild.
4546
0ff513d9
SC
4547Wed Jan 31 18:31:46 1996 Steve Chamberlain <sac@slash.cygnus.com>
4548
4549 * configure.in (i386-*-cygwin32, ppc-*-cygwin32): New.
4550 * configure: Rebuild.
4551
66b935da
ILT
4552Wed Jan 31 14:03:17 1996 Richard Henderson <rth@tamu.edu>
4553
c174fb5c
ILT
4554 * config/tc-m68k.c (md_pseudo_table): Add "extend" and "ldouble".
4555 * doc/c-m68k.texi: Document .extend and .ldouble.
4556
66b935da
ILT
4557 * configure.in (m68*-apple-aux*): New target.
4558 * config/te-aux.h: New file.
4559 * config/obj-coff.c (compare_external_relocs): New static function
4560 if TE_AUX.
4561 (do_relocs_for): Sort relocs if TE_AUX.
4562 (fixup_segment): If TE_AUX, store common symbol value in segment.
4563 * config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
4564
30c2a08e
ILT
4565Wed Jan 31 12:24:58 1996 Ian Lance Taylor <ian@cygnus.com>
4566
9e396994 4567 * config/obj-coff.h (S_IS_LOCAL): Check for \002 as well as \001.
615c0a79 4568
30c2a08e
ILT
4569 * config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
4570 BSF_FUNCTION.
4571 (s_cpload): Set BSF_OBJECT for _gp_disp symbol.
4572 * read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
4573 symbol.
4574 * ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
4575 (ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
4576 an undefined symbol and the size of a function symbol.
4577 * config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
4578 for all common symbols.
4579
0e6f2f82
KR
4580Tue Jan 30 12:35:24 1996 Ken Raeburn <raeburn@cygnus.com>
4581
4582 * config/tc-i960.c (parse_memop): In MRI mode, don't use implicit
4583 scaling of index.
4584
4585 * expr.c (operand): Accept 0x hex constants in MRI mode if not on
4586 m68k.
4587
8e3ff081
ILT
4588Mon Jan 29 12:21:30 1996 Ian Lance Taylor <ian@cygnus.com>
4589
3e78d072
ILT
4590 * config/obj-elf.c (obj_elf_type): Set BSF_OBJECT flag for a type
4591 of object. From Ronald F. Guilmette <rfg@monkeys.com>.
4592
8e3ff081
ILT
4593 * ecoff.c (localsym_t): Add addend field.
4594 (add_ecoff_symbol): Add addend argument. Change all callers.
4595 (coff_sym_value): Make static.
4596 (coff_sym_addend): New static variable.
4597 (ecoff_directive_def): Initialize coff_sym_addend.
4598 (ecoff_directive_val): Accept symbol + constant.
4599 (ecoff_directive_endef): Pass coff_sym_addend to add_ecoff_symbol.
4600 (ecoff_build_symbols): Include the addend in the symbol value.
4601
79edc846
KK
4602Fri Jan 26 19:28:52 1996 Kim Knuttila <krk@cygnus.com>
4603
4604 * config/tc-ppc.c (md_assemble): Ignore overflow on
4605 BFD_RELOC_16_GOTOFF and BFD_RELOC_PPC_TOC16.
4606
4607Fri Jan 26 16:14:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4608
4609 * config/tc-ppc.c (md_apply_fix3): SDA21 relocations are now 4
4610 bytes in size, so offset appropriately in big endian mode when
4611 writing the bottom 2 bytes.
4612
6cbc4e35
DE
4613Thu Jan 25 20:26:23 1996 Doug Evans <dje@charmed.cygnus.com>
4614
4615 * config/tc-sparc.c (default_compatible): New static local.
4616 (md_begin): Initialize it. Rewrite warn_on_bump handling.
4617 (sparc_ip): If no architecture or -bump specified, don't mark as
4618 mismatched those in default_compatible.
4619
4fe0fddd
ILT
4620Thu Jan 25 12:21:53 1996 Ian Lance Taylor <ian@cygnus.com>
4621
4622 SCO ELF support from Robert Lipe <robertl@arnet.com>:
4623 * configure.in (i386-*-sco*elf*): Use fmt elf, targ sco5.
4624 * configure: Rebuild.
4625 * config/sco5.mt: New file; set TDEFINES to -DSCO_ELF.
4626 * config/tc-i386.c (sco_id): New function, if SCO_ELF.
4627 * config/tc-i386.h (tc_init_after_args): Define if SCO_ELF.
4628 (sco_id): Declare if SCO_ELF.
4629
e70ad5d5
DE
4630Thu Jan 25 03:10:53 1996 Doug Evans <dje@charmed.cygnus.com>
4631
4632 * config/tc-sparc.c (initial_architecture,can_bump_v9_p): Deleted.
4633 ({max,warn_after}_architecture): New static locals.
4634 (md_begin): Replace NUMOPCODES with sparc_num_opcodes.
4635 If both architecture and -bump requested, set max_architecture to max.
4636 (sparc_md_end): Simplify.
4637 (sparc_ip): Replace references to can_bump_v9_p with max_architecture.
4638 Rewrite code to bump architecture and check for conflicts.
4639 (md_longopts): Recognize -xarch={v8plus,v8plusa} for compatibility
4640 with Solaris assembler.
4641 (md_parse_option): Likewise. Call sparc_opcode_lookup_arch.
4642 (md_show_usage): Update.
4643
a8248831
DE
4644Wed Jan 24 22:11:03 1996 Doug Evans <dje@charmed.cygnus.com>
4645
4646 * Makefile.in (RUNTEST): Fix reference to $${srcdir}.
4647
6df07e7f
DE
4648Mon Jan 22 09:21:36 1996 Doug Evans <dje@charmed.cygnus.com>
4649
4650 * config/tc-sparc.h (TARGET_FORMAT): Use #ifdef SPARC_ARCH64 instead of
4651 #ifdef sparcv9 when choosing value.
4652 (ENV64): Delete.
4653 (md_end): Define.
4654 (sparc_md_end): Declare.
4655 * config/tc-sparc.c (SPARC_V9): Renamed from sparcv9.
4656 (initial_architecture): New static local.
4657 (can_bump_v9_p): Likewise.
4658 (NO_V9): Delete all occurrences.
4659 (sparc_md_end): New function.
4660 (sparc_ip): New local v9_arg_p. Rework fp reg number test.
4661 Don't bump architecture to v9 unless can_bump_v9_p set.
4662 (md_parse_option): -A<arch> passed, set can_bump_v9_p accordingly.
4663 * configure.in (sparc64 target cpu): Don't set obj_format here.
4664 (SPARC_V9): Renamed from sparcv9.
4665 (sparc64-*-elf*): Define SPARC_ARCH64.
4666 * configure: Regenerated.
4667 * acconfig.h (SPARC_V9): Renamed from sparcv9.
4668 (SPARC_ARCH64): Add.
7fcb3191 4669 * conf.in: Regenerated.
6df07e7f
DE
4670 * config/vmsconf.h: Update.
4671
c9c7c1d7
JSC
4672Mon Jan 22 17:24:47 1996 James G. Smith <jsmith@cygnus.co.uk>
4673
4674 * config/tc-mips.c (load_register): Optimise "dli" loads.
4675 (md_show_usage): add "-mcpu=vr4100" to help text.
16ce20d4 4676
07ce72c9
ILT
4677Mon Jan 22 11:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
4678
16ce20d4
ILT
4679 * symbols.c (resolve_symbol_value): If a symbol is equated to an
4680 undefined symbol, preserve the X_op of O_symbol.
4681 (S_GET_VALUE): Fix check to permit this case.
4682 * write.c (write_relocs): If a reloc is against an undefined
4683 symbol equated to another symbol, change the reloc to be against
4684 the latter symbol.
4685 * config/obj-coff.c (do_relocs_for): Likewise.
4686
07ce72c9
ILT
4687 * config/tc-ppc.c (ppc_csect): An unnamed csect is storage class
4688 XMC_PR.
4689
d971d39e
MM
4690Mon Jan 22 10:59:48 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4691
4692 * config/obj-elf.c (elf/ppc.h): Include elf/ppc.h if target
4693 computer is PowerPC.
4694
4695 * config/tc-ppc.c (md_apply_fix3): Add more embedded relocations.
4696
4697 * config/tc-ppc.h (ELF_TC_SPECIAL_SECTIONS): Add sections
4698 mentioned in the eabi.
4699
0291f0f5
KK
4700Thu Jan 18 17:58:19 1996 Kim Knuttila <krk@cygnus.com>
4701
4702 * config/tc-ppc.c (ppc_reldata): Changed alignement on reldata_section
4703 * config/tc-ppc.c (ppc_pdata): Changed the alignment on pdata_section
4704
c682be53
MM
4705Mon Jan 15 17:43:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4706
4707 * config/tc-ppc.c (mapping): Add more relocation suffixes.
4708
ee4fdbb9
MM
4709Sun Jan 14 21:29:36 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4710
4711 * config/tc-ppc.c (ppc_elf_validate_fix): Allow .gcc_except_table
4712 as a section it is ok to have unadorned -mrelocatable pointers in.
4713
4714Sat Jan 13 11:09:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
747b98fe
MM
4715
4716 * config/tc-ppc.c (ppc_section*): Wrap these functions inside
4717 #ifdef OBJ_ELF.
4718
f99d287b
MM
4719Fri Jan 12 15:32:07 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4720
4721 * config/obj-elf.c (obj_elf_section): Add hooks so machine
4722 dependent section attributes can be handled.
4723
4724 * config/tc-ppc.h: (md_elf_section_{letter,type,word,flags}): New
4725 macros to add support for exclude section flag and ordered section
4726 type.
4727
4728 * config/tc-ppc.c (ppc_elf_section_{letter,type,word,flags}): New
4729 functions to add support for exclude section flag and ordered
4730 section type.
4731
347a705b
ILT
4732Fri Jan 12 12:04:00 1996 Ian Lance Taylor <ian@cygnus.com>
4733
2a4e49a9
ILT
4734 * subsegs.c (section_symbol): Don't try to look up the section
4735 symbol in the hash table. It should be possible to have a symbol
4736 with the same name as a section, but no connection to it.
4737
d9f4dec1
ILT
4738 * read.c (cons_worker): Only call mri_comment_end from flag_mri.
4739 From James Carlson <carlson@xylogics.com>.
4740
347a705b
ILT
4741 * expr.c (operand): Skip whitespace after a close parenthesis.
4742 From James Carlson <carlson@xylogics.com>.
4743
10c8c95e
JW
4744Tue Jan 2 12:43:23 1996 Jim Wilson <wilson@chestnut.cygnus.com>
4745
4746 * config/tc-sh.c (md_apply_fix): Call as_bad_where instead of
4747 as_warn_where for relocation overflow.
347a705b
ILT
4748 (parse_reg): Accept register name only if next character is
4749 not alphanumeric.
10c8c95e 4750
cb844314
JL
4751Sat Dec 30 23:42:51 1995 Jeffrey A Law (law@cygnus.com)
4752
4753 * ecoff.c (ecoff_stab): Simplify. Correctly handle sym + offset
4754 addresses for static variables.
4755
36cb0e7c
MM
4756Thu Dec 21 12:54:32 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4757
4758 * config/tc-ppc.c (mapping): Make @got give a real GOT relocation,
4759 and xgot give the old toc16 relocation.
4760 (md_apply_fix3): Support all GOT relocations.
4761
5e69b693
ILT
4762Wed Dec 20 14:57:17 1995 Ian Lance Taylor <ian@cygnus.com>
4763
4764 * config/tc-mips.c (load_address): Correctly handle a constant in
4765 SVR4_PIC case. From Richard Kenner <kenner@vlsi1.ultra.nyu.edu>.
4766
29861dd0
C
4767Fri Dec 15 14:25:07 1995 J.T. Conklin <jtc@rtl.cygnus.com>
4768
4769 * config/tc-sh.c (parse_reg): Recognize SH3 registers.
4770 (get_specific): Handle A_SSR, A_SPC and A_REG_B.
4771 (build_Mbytes): Handle REG_B.
4772
432b8fa8
ILT
4773Fri Dec 15 16:07:25 1995 Ian Lance Taylor <ian@cygnus.com>
4774
4775 * ecoff.c (ecoff_build_aux): Use new bfd_big_endian macro.
4776
ee68a042
RJ
4777Fri Dec 15 12:11:48 1995 Raymond Jou <rjou@mexican.cygnus.com>
4778
4779 * mpw-make.sed: If linking, edit ALL_CFLAGS to CFLAGS.
4780
b14630f2
ILT
4781Thu Dec 14 15:09:52 1995 Ian Lance Taylor <ian@cygnus.com>
4782
4783 * config/obj-coff.c (write_object_file): Set the s_align field to
4784 the number of bytes, rather than to the power of 2.
4785
4a3d48fc
ILT
4786Tue Dec 12 12:19:37 1995 Ian Lance Taylor <ian@cygnus.com>
4787
4788 * Makefile.in (DISTCLEAN_HERE): New variable.
4789 (distclean): Use it.
4790 (maintainer-clean): Depend upon clean-here rather than clean,
4791 distclean, and clean-info. Run make maintainer-clean in doc.
4792 Remove files listed in DISTCLEAN_HERE.
4793 * doc/Makefile.in (maintainer-clean realclean): Split out from
4794 distclean. Depend upon clean-info and distclean.
4795
7e5e83cf
SS
4796Mon Dec 11 16:23:51 1995 Stan Shebs <shebs@andros.cygnus.com>
4797
4798 * mac-as.r: Fix copyright and version strings.
4799 (cfrg): Use PROG_NAME instead of literal name.
4800
1b10f50d
ILT
4801Mon Dec 11 14:14:08 1995 Ian Lance Taylor <ian@cygnus.com>
4802
4803 * read.c (read_a_source_file): If tc_unrecognized_line is defined,
4804 call it.
4805 * config/tc-a29k.h (tc_unrecognized_line): Define.
4806 * config/tc-a29k.c (a29k_unrecognized_line): New function.
4807 (md_operand): Handle a29k style local dollar labels.
4808
2f3bbb1b
ILT
4809Wed Dec 6 17:52:52 1995 Ian Lance Taylor <ian@cygnus.com>
4810
4811 * config/obj-multi.h: If OBJ_MAYBE_ELF, define OBJ_SYMFIELD_TYPE.
4812
624c91d1
KR
4813Tue Dec 5 13:26:34 1995 Ken Raeburn <raeburn@cygnus.com>
4814
4815 * read.c (s_fill): If md_flush_pending_output is defined, call
4816 it.
4817
9e4b3a23
KR
4818Mon Dec 4 15:10:53 1995 Ken Raeburn <raeburn@cygnus.com>
4819
4820 * config/obj-coff.c (size_section, fill_section, fixup_mdeps):
4821 Treat rs_align_code like rs_align.
4822
3554987a
DE
4823Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
4824
4825 * config/tc-arm.c (cp_address_required_here): Set pre_inc when
4826 converting an absolute address into a PC-relative one.
4827
90f543f6
SS
4828Fri Dec 1 11:57:56 1995 Stan Shebs <shebs@andros.cygnus.com>
4829
4830 * mpw-config.in: Don't always use te-generic.h for emulation.
4831 (powerpc-apple-macos): Use emulation te-macos.h.
4832start-sanitize-gm
4833 (mips-gm-magic): New configuration.
4834end-sanitize-gm
4835 * mpw-make.sed (install, install-only): Edit in Mac-specific
4836 install procedure.
4837
d4c8a45e
ILT
4838Fri Dec 1 10:59:25 1995 Ian Lance Taylor <ian@cygnus.com>
4839
2eec8710
ILT
4840 * configure.in: Improve message about unsupported ELF targets.
4841 * configure: Rebuild.
4842
d4c8a45e
ILT
4843 * config/tc-m88k.c (m88k_do_align): Correct check for whether fill
4844 pattern is zero. From Manfred Hollstein.
4845
531a1af2
KK
4846Thu Nov 30 13:25:49 1995 Kim Knuttila <krk@cygnus.com>
4847
4848 * config/tc-ppc.c (ppc_pe_section): To get the alignment right for
4849 the various idata sections, we check the name on the .section pseudo.
4850
464070de
ILT
4851Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
4852
4853 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not
4854 add section's paddr to add_number; compatibility to native as and
4855 ld forbids.
4856
6a087325
KR
4857Wed Nov 29 23:14:27 1995 Ken Raeburn <raeburn@cygnus.com>
4858
9d5aef80
KR
4859 * configure.in: Treat m68k-sysv4 like m68k-elf, not m68k-sysv3.
4860
ac9ef8ee
KR
4861 * hash.c (struct hash_entry): Moved here...
4862 * hash.h (struct hash_entry): ...from here.
4863
6a087325
KR
4864 * config/obj-elf.c (elf_frob_symbol): Don't free and clear sy_obj
4865 if it's already known to be null.
4866
77fa4d98
MM
4867Wed Nov 29 13:00:20 1995 Michael Meissner <meissner@tiktok.cygnus.com>
4868
4869 * config/tc-ppc.c (md_apply_fix3): Don't adjust the value for 32
4870 bit relocs converted to PC relative relocs. This turned out to
4871 add the offset from the beginning of .text twice.
4872
c6e4e834
KR
4873Tue Nov 28 10:42:36 1995 Ken Raeburn <raeburn@cygnus.com>
4874
4875 * stabs.c (s_stab_generic): In 's' case, free string from
4876 obstack.
4877
4878 * config/obj-elf.h (ELF_TARGET_SYMBOL_FIELDS): Remove unused field
4879 sy_name_offset.
4880 * config/obj-multi.h (ELF_TARGET_SYMBOL_FIELDS) [OBJ_MAYBE_ELF]:
4881 Ditto.
4882
4883 * subsegs.h (segment_info_type): Make bitfields unsigned.
4884
4885 * expr.h (struct expressionS): Make X_op and X_unsigned bitfields,
4886 and move them together. On most systems this will reduce the
4887 structure size by one word.
4888 (operatorT): Define O_max.
4889 * expr.c (expr_begin): Verify that X_op is wide enough to hold
4890 O_max.
4891
4892 * read.c (pop_insert): Print error returned by hash table
4893 insertion code.
4894
4895 * as.c (dump_statistics): Split out from main; dump some hash
4896 table stats and target-specific stats.
4897 (start_time): No longer automatic to main.
4898 (main): Set file-level start_time and call dump_statistics at
4899 exit. Exit by calling xexit.
4900 (show_usage): Make --statistics description less specific.
4901 * subsegs.c (subsegs_print_statistics): New function.
4902 * write.c (write_print_statistics): New function.
4903 (n_fixups): New static variable.
4904 (fix_new_internal): Increment it.
4905 * read.c (read_print_statistics): New function.
4906 * read.h (read_print_statistics): Declare.
4907 * symbol.c (symbol_print_statistics): New function.
4908 * symbol.h (symbol_print_statistics): Declare.
4909 * hash.c (hash_print_statistics): New function.
4910 * hash.h (hash_print_statistics): Declare.
4911 * config/tc-i386.c (i386_print_statistics): New function.
4912 * config/tc-i386.h (i386_print_statistics): Declare.
4913 (tc_print_statistics): New macro.
4914 * messages.c (as_fatal, as_assert, as_abort): Use xexit, not
4915 exit.
4916
4917 * hash.c (DELETED): Rewrite to use a valid but unique address.
4918 (START_POWER): Reduce to 10.
4919 (enum stat_enum): New enumerator, replacing STAT_* index macros.
4920 Add new values for counting strcmp calls.
4921 (GROW_FACTOR): New macro.
4922 (hash_grow): Use GROW_FACTOR. Rewrite for quick returns instead
4923 of nesting blocks.
4924 (FULL_VALUE): New macro. Use 1/4 of table size instead of 1/2.
4925 (hash_new): Use FULL_VALUE.
4926 (struct hash_control): Definition moved here.
4927 (hash_code): Don't mask to low bits.
4928 (hash_ask): Mask returned hash code here. Check hash value before
4929 calling strcmp; count strcmp calls.
4930 * hash.h (struct hash_control): Declare, don't define, here.
4931 (HASH_STATLENGTH): Deleted.
4932 (struct hash_entry): Add field for hash code.
4933 (hash_say, hash_apply): Don't declare.
4934
4935 * hash.c (destroy): Return void.
4936 (applicatee): Ditto.
4937 (main): Fix declarations.
4938 (hash_apply): Return void. Argument `function' returns void. Put
4939 inside "#ifdef TEST".
4940 (hash_say): Define only if TEST is defined.
4941 * hash.h (hash_apply, hash_say): Declarations deleted.
4942
6a4667f4
ILT
4943Mon Nov 27 13:18:25 1995 Ian Lance Taylor <ian@cygnus.com>
4944
4945 * configure: Rebuild with autoconf 2.7.
4946
330add8a
ILT
4947Tue Nov 21 18:39:01 1995 Ian Lance Taylor <ian@cygnus.com>
4948
4949 * aclocal.m4 (AC_PROG_CC): Remove local definition.
4950 * configure: Rebuild with autoconf 2.6.
4951
520dd8d5
ILT
4952Mon Nov 20 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com>
4953
4954 * config/tc-ppc.c (ppc_debug_name_section_size): Remove.
4955 (ppc_stabx): Don't increment ppc_debug_name_section_size.
4956 (ppc_bc): Likewise.
4957 (ppc_frob_file): Remove.
4958 * config/tc-ppc.h (tc_frob_file): Don't define.
4959 (ppc_frob_file): Don't declare.
4960
880b7429
KR
4961Mon Nov 20 13:37:05 1995 Ken Raeburn <raeburn@cygnus.com>
4962
d6c4a3fa
KR
4963 * Makefile.in (TARG_CPU_DEP_alpha): Mention alpha-opcode.h.
4964 * config/alpha-opcode.h: Include one-operand variants of jmp and
4965 jsr.
4966
880b7429
KR
4967 * config/te-delt88.h: Renamed from te-delta88.h, to avoid conflict
4968 with te-delta.h in 8.3 file systems.
4969 * configure.in: Adjusted.
4970
aa8a6656
ILT
4971Thu Nov 16 12:49:38 1995 Ian Lance Taylor <ian@cygnus.com>
4972
880b7429
KR
4973 * config/tc-mips.c (s_err): Remove; just use the one in read.c.
4974
aa8a6656
ILT
4975 * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
4976 number.
4977 * expr.c (operand): Handle MRI suffixes after unadorned 0.
4978
7b889f5e
KR
4979Thu Nov 16 00:21:44 1995 Ken Raeburn <raeburn@cygnus.com>
4980
da9b55af
KR
4981 Version 2.6 released.
4982 * Makefile.in (VERSION): Updated to 2.6.
4983
7b889f5e
KR
4984 * config/obj-coff.c (write_object_file): Change use of md_do_align
4985 to pass a pointer rather than a fill value, to match other uses.
4986
46618ae6
KR
4987Wed Nov 15 03:52:00 1995 Ken Raeburn <raeburn@cygnus.com>
4988
7b889f5e
KR
4989 * config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
4990
46618ae6
KR
4991 * as.c (main): Move md_end call to just after call to
4992 perform_an_assembly_pass. Delete cpu-specific code here.
4993 * config/tc-i960.h (md_end): New macro, calls brtab_emit.
46618ae6
KR
4994 * config/tc-arm.c (md_end): Unused function deleted.
4995 * config/tc-ns32k.c (md_end): Ditto.
4996
4997 * config/tc-i386.c (i386_align_code): New function, moved here
4998 from HANDLE_ALIGN macro.
4999 * config/tc-i386.h (HANDLE_ALIGN): Call it.
5000
5001 Mon Jul 31 14:53:19 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
5002
5003 * config/tc-i386.h (md_do_align): cast fill and 0x90 to char
5004 before comparing
5005
5006 Mon May 1 10:91:49 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
5007
5008 * config/tc-i386.h (md_do_align): Make ".align n,0x90" generate
5009 multi-byte nops to avoid changing gcc. The necessary gcc change
5010 might break old assemblers.
5011
5012 Sat Apr 22 20:53:05 1995 Alan Modra <alan@spri.levels.unisa.edu.au>
5013
5014 * config/tc-i386.h (md_do_align, HANDLE_ALIGN): Add macros to
5015 generate optimal multi-byte nop instructions for ".align n"
5016 ".align n,0x90", and aligns requiring more than 15 bytes of
5017 padding still generate multiple 0x90's as before.
5018
5019Mon Nov 13 17:40:21 1995 Ian Lance Taylor <ian@cygnus.com>
5020
5021 * config/tc-m68k.c (s_mri_until): Call pop_mri_control.
5022
51bc513e
SS
5023Mon Nov 13 20:39:06 1995 Stan Shebs <shebs@andros.cygnus.com>
5024
5025 * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
5026 * configure: Update.
5027 * mpw-make.sed: Reorder commands to make sed happier.
5028 * config/te-macos.h: New file.
5029 * config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
5030
8b39c5df
JL
5031Sun Nov 12 21:14:56 1995 Jeffrey A Law (law@cygnus.com)
5032
5033 * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
5034 conditional branches.
5035 (md_apply_fix): Likewise.
5036
5037Thu Nov 9 16:14:01 1995 Ian Lance Taylor <ian@cygnus.com>
5038
5039 * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
5040 generate a reloc which the linker will not handle correctly. Fix
5041 overflow checking--R_IREL is 18 bits, not 17.
5042
6a649eda
ILT
5043Wed Nov 8 19:59:36 1995 Ian Lance Taylor <ian@cygnus.com>
5044
a071b8e9
ILT
5045 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
5046 from a PC relative reloc if TC_A29K.
5047
5048 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
5049 code depends upon it.
5050
6a649eda
ILT
5051 * config/tc-a29k.c (md_operand): Handle $float, $double, and
5052 $extend. Based on code from Eric Freudenthal
5053 <freudenthal@nyu.edu>.
5054 * config/tc-a29k.h (LEX_DOLLAR): Define.
5055 * read.c (LEX_DOLLAR): Define if not defined.
5056 (lex_type): Use LEX_DOLLAR.
5057
6364a188
ILT
5058Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
5059
5060 * configure.in (a29k-nyu-sym1): New target, just like other a29k
5061 targets.
5062
0fa6f8f6
ILT
5063Wed Nov 8 11:38:48 1995 Ian Lance Taylor <ian@cygnus.com>
5064
5065 * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return.
5066
5067Tue Nov 7 09:14:35 1995 Kim Knuttila <krk@cygnus.com>
5068
5069 * config/tc-ppc.c (md_apply_fix3): Added BFD_RELOC_RVA. Currently
5070 used only by "dlltool.c".
5071
eec2cfef
ILT
5072Mon Nov 6 18:51:26 1995 Ian Lance Taylor <ian@cygnus.com>
5073
5074 * config/tc-alpha.c: Undefine inline if not __GNUC__.
5075 (md_pseudo_table): Don't define "extern".
5076
df7504dc
ILT
5077Sat Nov 4 00:51:21 1995 Ian Lance Taylor <ian@cygnus.com>
5078
a3d1c561
ILT
5079 * config/tc-ppc.c (ppc_biei): Force symbol into text_section.
5080
df7504dc
ILT
5081 * config/tc-ppc.c (md_show_usage): Put backslash at end of line.
5082
07d012f6
ILT
5083Fri Nov 3 13:02:59 1995 Ian Lance Taylor <ian@cygnus.com>
5084
36e80ac6
ILT
5085 * macro.c (macro_expand_body): Don't warn about == with a
5086 nonexistent parameter, in case it is in a comment field.
5087
07d012f6
ILT
5088 * as.c (main): On TC_A29K, call macro_init with macro_alternate
5089 set to 1.
5090 * macro.c (get_any_string): Don't keep quotes if macro_strip_at is
5091 set, even if macro_alternate is set.
5092 (get_apost_token): If macro_strip_at, only skip kind if it is '@'.
5093 (sub_actual): If macro_strip_at, and kind is '@', don't look up
5094 the token unless it ended in '@'.
5095 * config/tc-a29k.c (line_separator_chars): Remove '@'.
5096 * doc/c-a29k.texi: Document macro usage on A29K.
5097
01f108bc
ILT
5098Thu Nov 2 23:07:57 1995 Ian Lance Taylor <ian@cygnus.com>
5099
5100 * config/tc-m68k.c (m68k_ip): Handle new 'W' place, meaning a
5101 signed word.
5102 (install_operand): Likewise.
5103
5104 * config/obj-elf.c (ecoff_debug_pseudo_table): Add "extern".
5105
5106Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
5107
5108 * configure.in (m88k-motorola-sysv*): New target.
5109 * configure: Rebuild.
5110 * config/te-delta88.h: New file.
5111 * config/obj-coff.c (write_object_file): Use md_do_align if it is
5112 defined.
5113 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
5114 (md_do_align): Define.
5115 * config/tc-m88k.c: Include "subsegs.h".
5116 (m88k_do_align): New function.
5117
5118 * config/te-delta.h (STRIP_UNDERSCORE): Don't define.
5119 (COFF_NOLOAD_PROBLEM): Define.
5120 (LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
5121
7954cc14
KR
5122Wed Nov 1 16:07:43 1995 Ken Raeburn <raeburn@cygnus.com>
5123
5124 * config/tc-i386.c (md_assemble): For a jump instruction with
5125 non-constant target, require 7 available bytes in the current
5126 frag, not 6.
5127
d033806f
FF
5128Tue Oct 31 15:37:16 1995 Fred Fish <fnf@rtl.cygnus.com>
5129
5130 * config/obj-elf.h: Include bfd/elf-bfd.h rather than
5131 bfd/libelf.h.
5132
d7b2038f
ILT
5133Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
5134
5135 * configure.in (alpha-*-linux*): Use ecoff.
5136 * configure: Rebuild.
5137 * ecoff.c (ecoff_directive_extern): New function.
5138 (ecoff_directive_weakext): New function.
5139 (ecoff_build_symbols): Handle weak symbols.
5140 (ecoff_setup_ext): Likewise.
59c80ca2 5141 (ecoff_frob_symbol): Warn about weak common symbols.
d7b2038f
ILT
5142 * ecoff.h (ecoff_directive_extern): Declare.
5143 (ecoff_directive_weakext): Declare.
5144 * symbols.c (S_IS_WEAK): New function.
5145 * symbols.h (S_IS_WEAK): Declare.
5146 * config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
5147 "weakext".
5148 * config/tc-mips.c (mips_pseudo_table): Remove "extern".
5149 (s_extern): Remove.
5150
cbdf59ad
ILT
5151Tue Oct 31 13:29:08 1995 Ian Lance Taylor <ian@cygnus.com>
5152
b629f627
ILT
5153 * config/tc-ppc.c (ppc_lglobl): Do the right thing.
5154
7ab1edc8
ILT
5155 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
5156 (ppc_eb): Likewise. Set the storage class to C_BLOCK, not C_FCN.
5157 (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
5158 * config/obj-coff.c (coff_frob_symbol): Don't call
5159 SA_SET_SYM_ENDNDX with the current symbol; call it with the next
5160 one. If OBJ_XCOFF, try to figure out whether the symbol is going
5161 to be dropped.
5162
31751d9d
ILT
5163 * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
5164 (ppc_stab_symbol): New static variable.
5165 (ppc_change_csect): Check that ppc_toc_csect is not NULL.
5166 (ppc_stabx): Set ppc_stab_symbol around call to symbol_make. Set
5167 sy_tc.real_name to the stab string.
5168 (ppc_bc, ppc_ec): New static functions.
5169 (ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
5170 do anything.
5171 (ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
5172 suffix.
0e3dd9a0
ILT
5173 (ppc_frob_symbol): Set BSF_NOT_AT_END for symbols with csect aux
5174 entries.
31751d9d 5175
cbdf59ad
ILT
5176 * input-scrub.c (input_scrub_push): Reset sb_index.
5177
91123dbe
ILT
5178Mon Oct 30 17:52:46 1995 Ian Lance Taylor <ian@cygnus.com>
5179
5180 * listing.c (listing_newline): Don't create a frag in the absolute
5181 section.
5182
73255941
ILT
5183Sat Oct 28 01:02:05 1995 Ian Lance Taylor <ian@cygnus.com>
5184
df72d2a5
ILT
5185 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
5186 (ppc_csect): Move most of the code to ppc_change_csect, and call
5187 it.
5188 (ppc_change_csect): New static function, taken from ppc_csect.
5189 (ppc_section): New static function.
5190 (ppc_saw_abs): New static varable.
5191 (ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
5192 a symbol has no csect.
5193 (ppc_adjust_symtab): New function.
5194 * config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
5195 (ppc_adjust_symtab): Declare if OBJ_XCOFF.
5196
5197 * write.c (write_object_file): If tc_adjust_symtab is defined,
5198 call it just before the call to obj_adjust_symtab.
5199
73255941
ILT
5200 * symbols.c (symbol_find_or_make): Change name to be const.
5201 * symbols.h (symbol_find_or_make): Update declaration.
5202
9bfaf1b9
KR
5203Thu Oct 26 19:18:27 1995 Ken Raeburn <raeburn@cygnus.com>
5204
5205 * doc/as.texinfo (Align): Mention SH.
5206 * doc/c-m68k.texi (M68K-Directives, .even): Describe behavior, not
5207 .align value.
5208 * doc/c-z8k.texi (Z8000 Directives, global): Fix minor typo.
5209 (Z8000 Directives, even): Don't give numeric align value, instead
5210 explain behavior.
5211
ae143278
DE
5212Thu Oct 26 11:45:03 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
5213
5214 * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
5215 instruction.
5216
270433cc
PB
5217Wed Oct 25 11:59:24 1995 Per Bothner <bothner@kalessin.cygnus.com>
5218
5219 * Makefile.in (diststuff): Also make info.
5220 (maintainer-clean realclean): Also make clean-info.
5221
18a11401
JL
5222Tue Oct 24 15:21:33 1995 Jeffrey A Law (law@cygnus.com)
5223
5224 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
5225 (pa_subspace): For ".nsubspa", always create a new subspace
5226 with the given attributes, even if one already exists with the
5227 same name.
5228
96fe71e1
MM
5229Tue Oct 24 14:50:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
5230
5231 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Rename from
5232 TC_FORCE_RELOCATION, taking an additional section argument. If
5233 the section of the target symbol is not the same as the current
5234 section, always force the relocation to be used.
5235 (MD_PCREL_FROM_SECTION): New macro to call md_pcrel_from_section.
5236
5237 * config/tc-ppc.c (md_pcrel_from_section): Rename from the
5238 md_pcrel_from function, taking an additional section argument.
5239 Invoke TC_FORCE_RELOCATION_SECTION instead of TC_FORCE_RELOCATION.
5240
5241 * write.c (TC_FORCE_RELOCATION_SECTION): Define in terms of the
5242 older TC_FORCE_RELOCATION if not defined.
5243 (MD_PCREL_FROM_SECTION): If not defined, invoke md_pcrel_from.
5244 (fixup_segment): Use MD_PCREL_FROM_SECTION instead of
5245 md_pcrel_from, and TC_FORCE_RELOCATION_SECTION instead of
5246 TC_FORCE_RELOCATION.
5247
1d75481b
KR
5248Mon Oct 23 16:20:04 1995 Ken Raeburn <raeburn@cygnus.com>
5249
5250 * input-scrub.c (as_where): Set name to null pointer if we don't
5251 have a file name.
5252 * messages.c (identify): Only print filename if non-null.
5253 (as_show_where): Ditto, for line number too.
5254 (as_warn_internal, as_bad_internal): Ditto.
5255
5256 * input-file.c (input_file_open): If the input file can't be
5257 opened, consider it an error.
5258
c625fc23
JSC
5259Mon Oct 23 11:15:44 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
5260
5261 * config/tc-mips.c: Added mips_4100 control, and support for
5262 accepting the 4100 as a MIPS architecture variant (md_begin,
5263 macro_build, mips_ip, md_parse_option). Adding suitable
5264 command-line OPTIONs, and updating the help text (md_show_usage).
5265
dd1a5316
KR
5266Wed Oct 18 13:20:32 1995 Ken Raeburn <raeburn@cygnus.com>
5267
c625fc23
JSC
5268 * subsegs.c (subseg_begin): Only set absolute_frchain.fix_* when
5269 BFD_ASSEMBLER is defined.
5270
3366a224
KR
5271 * Use one active frag and one obstack per frag chain:
5272 * frags.c (frags): Variable deleted.
5273 (frag_alloc): New function.
5274 (frag_grow, frag_more, frag_variant, frag_now_fix,
5275 frag_append_1_char): Refer to frchain_now->frch_obstack instead of
5276 frags variable.
5277 (frag_new): Ditto. Verify that frch_last and frag_now match on
5278 entry and exit, and that old frag_now has non-zero type. Replace
5279 "know" uses with "assert". Use frag_alloc instead of mucking with
5280 obstack alignment.
5281 * frags.h (frags): Declaration deleted.
5282 * subsegs.h (struct frchain): Add new field frch_frag_now.
5283 * subsegs.c (frchains, dummy_frag, absolute_frchain): New static
5284 variables.
5285 (subsegs_begin): Initialize frchains obstack. Under gcc, don't
5286 give it any stricter alignment than frchainS structures need. Do
5287 not initialize frags obstack. Set frag_now to point to
5288 dummy_obstack. Initialize absolute_frchain.
5289 (subseg_set_rest): Save and restore frag_now in frch_frag_now
5290 field of frchainS. Don't create new frags on section switch, and
5291 use frag_alloc when creating a new frag chain. For absolute
5292 section, set frchain_now to absolute_frchain. Verify that
5293 frch_last and frag_now match on entry and exit. Initialize
5294 per-chain obstack, and under gcc, set required alignment to that
5295 needed by fragS structure.
c625fc23 5296
3366a224
KR
5297 * write.c (chain_frchains_together_1): Verify fr_type is nonzero.
5298
5299 * stabs.c (get_stab_string_offset): Only copy input string if a
5300 fresh copy is needed, not if the section already exists.
5301 (s_stab_generic): Cache stab section name to bypass lookups, since
5302 usually it will match. Could be made faster still by changing the
5303 memory allocation rules.
5304 (s_xstab): Cache section name to bypass repeated string
5305 allocation.
5306
5307 * frags.c (frag_new): Deleted register declarations.
5308
5309 * listing.c (frag_now): Don't declare.
5310
5311 * as.c (chunksize): New variable.
5312 (debug_memory): New variable.
5313 (main): If debug_memory is set, reduce chunksize and
5314 _bfd_chunksize.
5315 * as.h (chunksize): Declare it.
5316 * read.c (read_begin): Use it.
5317
de5ebe2e
KR
5318 * config/tc-alpha.c (md_shortopts): Include 'g'.
5319 (md_parse_option): Ignore it.
5320
dd1a5316
KR
5321 * Makefile.in (distclean): Remove Makefile and config.status from
5322 testsuite directory.
5323 (clean-here): Don't delete testsuite. Instead, delete only the
5324 files within it that would be generated by running tests.
5325
de5ebe2e
KR
5326 * config/tc-hppa.c (hppa_elf_mark_end_of_function): Call
5327 frag_now_fix instead of accessing obstack info directly.
5328 * config/tc-arm.c (s_ltorg): Ditto.
5329 (md_assemble): Ditto.
5330
5331 * config/tc-i386.c (md_assemble): Call frag_grow instead of
5332 obstack_room.
5333
625f4e48
KR
5334Wed Oct 18 12:22:59 1995 Ken Raeburn <raeburn@cygnus.com>
5335
5336 * stabs.c (aout_process_stab): Insert debug symbol into symbol
5337 chain after parsing value expression, if any, to avoid separating
5338 continued .stabs lines.
5339
33a8c1b6
ILT
5340Mon Oct 16 10:56:41 1995 Ian Lance Taylor <ian@cygnus.com>
5341
5342 * config/tc-mips.c (mips_elf_pseudo_table): Remove.
5343 (mips_pop_insert): Don't call pop_insert on mips_elf_pseudo_table.
5344
b6b8f911
MM
5345Mon Oct 16 07:07:37 1995 Michael Meissner <meissner@wogglebug.tiac.net>
5346
625f4e48
KR
5347 * config/tc-ppc.c (md_begin): Use new flags PPC_OPCODE_COMMON for
5348 -mcom support and PPC_OPCODE_ANY for -many.
5349 (md_parse_option): Ditto.
5350 (ppc_arch): Ditto.
5351 (md_begin): For duplicate instructions, print all duplicates
5352 before aborting.
b6b8f911 5353
4c2935f4
MM
5354Sun Oct 15 22:06:14 1995 Michael Meissner <meissner@cygnus.com>
5355
5356 * config/tc-ppc.c (md_parse_option): Support for -mcom to turn on
5357 common mode operation.
5358 (md_show_usage): Add -mcom to usage message.
4c2935f4
MM
5359
5360Fri Oct 13 13:32:45 1995 steve chamberlain <sac@slash.cygnus.com>
5361
5362 * expr.c (op_rank): Add O_symbol_rva.
5363 * expr.h (operatorT): Add O_symbol_rva.
5364 * read.c (cons_worker): Set O_symbol_rva when necessary.
5365 * write.c (fix_new_exp): Understand O_symbol_rva.
5366
7db865dc
ILT
5367Tue Oct 10 11:34:14 1995 Ian Lance Taylor <ian@cygnus.com>
5368
5369 * config/tc-mips.c: Correct s_cons arguments. From Michael
5370 Joosten <joost@ori.cadlab.de>.
5371
1b13e6fc
ILT
5372Mon Oct 9 19:59:53 1995 Ian Lance Taylor <ian@cygnus.com>
5373
5374 * config/tc-ppc.c (ppc_macro): Make count unsigned.
5375 (ppc_biei): Set segment to now_seg and value to coff_n_line_nos.
5376 (ppc_frob_symbol): Handle C_BINCL and C_EINCL symbols by setting
5377 the fix_line field.
5378 * config/obj-coff.c (coff_n_line_nos): Rename from n_line_nos, and
5379 make non-static. Change all users.
5380 * config/obj-coff.h (coff_n_line_nos): Declare.
5381
9e3e3d4c
KR
5382Fri Oct 6 16:24:27 1995 Ken Raeburn <raeburn@cygnus.com>
5383
5384 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5385
5386 * configure.in (AC_ARG_WITH(bfd-assembler)): Fix help message.
5387
5388 * config/obj-elf.c (obj_elf_common): Convert specified byte
5389 alignment to power of two. Set size of local bss symbol.
5390
5391 * config/tc-m68k.c (tc_gen_reloc): Fix typo in variable name.
5392
13a6c753
ILT
5393Fri Oct 6 15:22:25 1995 Ian Lance Taylor <ian@cygnus.com>
5394
5395 * sb.c, macro.c: Decide whether to include <string.h> or
5396 <strings.h> just as as.h does.
5397
a75aafcd
DE
5398Fri Oct 6 09:55:33 1995 Doug Evans <dje@canuck.cygnus.com>
5399
5400 * Makefile.in (site.exp): Fix setting of $srcdir.
5401
5402 * config/tc-arm.c (md_atof): Fix little-endian output.
f6ec8c46
DE
5403 * config/tc-arm.h (ARM_BI_ENDIAN): Move definition so defined for
5404 all coff targets.
a75aafcd 5405
d89861c7
KR
5406Thu Oct 5 20:17:30 1995 Ken Raeburn <raeburn@cygnus.com>
5407
4d2ba393
KR
5408 * doc/as.texinfo: Split out the NS32k family documentation,
5409 despite its being commented out for now.
5410 * doc/c-ns32k.texi: New file.
5411
2c5eb48d
KR
5412 * sb.c, macro.c: Include string.h.
5413
6b0a6eaa
KR
5414 * Makefile.in (comparison): Only check *.o; we don't care if
5415 timestamps inserted by the native linker differ.
5416
d89861c7
KR
5417 * config/tc-alpha.c (alpha_align): Only fill with a no-op pattern
5418 if alignment stricter than 4 bytes is requested; in that case,
5419 align to a 4-byte boundary first.
5420
70aeac05
KR
5421 Thu Sep 28 19:35:27 1995 Pat Rankin <rankin@eql.caltech.edu>
5422
5423 * config/obj-vms.c (VMS_RSYM_Parse): eliminate "might be used
5424 uninitialized" warning for `Max_Source_Offset'.
5425
eaaa2a42
KK
5426Wed Oct 4 16:17:02 1995 Kim Knuttila <krk@cygnus.com>
5427
5428 * config/tc-ppc.c (parse_toc_entry): New function to parse [toc]
5429 qualifiers and detect errors if present.
5430 (md_assemble): Add call to parse_toc_entry. Also added some support
5431 for the [tocv] qualifier.
5432 (ppc_pe_tocd): New function to support data in the toc section.
5433
cd557d83
ILT
5434Wed Oct 4 14:03:39 1995 Ian Lance Taylor <ian@cygnus.com>
5435
5436 * config/tc-ppc.c (ppc_frob_symbol): Don't create an aux entry for
5437 an absolute symbol.
5438
42ac8fa8
ILT
5439Tue Oct 3 12:18:19 1995 Ian Lance Taylor <ian@cygnus.com>
5440
01f108bc 5441 * config/tc-m68k.c (isword): Accept all values from -65536 to
cd557d83
ILT
5442 +65535, so ~VAL will not be rejected.
5443
42ac8fa8
ILT
5444 * cond.c (s_endif): Call demand_empty_rest_of_line. In MRI mode,
5445 skip characters after the pseudo-op.
5446 (s_else): Likewise.
5447 * read.c (get_line_sb): Don't look past buffer_limit.
5448 (s_include): In MRI mode, skip characters after the file name.
5449
eef66934
ILT
5450Mon Oct 2 16:15:27 1995 Ian Lance Taylor <ian@cygnus.com>
5451
5452 * config/m68k-parse.y (m68k_reg_parse): In MRI mode, permit
5453 periods in register names.
5454
cdc49cba 5455For older changes see ChangeLog.1.
This page took 0.339263 seconds and 4 git commands to generate.