2001-01-10 Kazu Hirata <kazu@hxi.com>
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 2001-01-08 Bo Thorsen <bo@suse.de>
2
3 * config/tc-i386.c (i386_immediate, i386_displacement):
4 GOTPCREL check fix.
5
6 2001-01-07 Ian Lance Taylor <ian@zembu.com>
7
8 * doc/c-i386.texi (i386-Arch): Remove spaces incorrectly inserted
9 in last change.
10
11 2001-01-07 Philip Blundell <philb@gnu.org>
12
13 * doc/as.texinfo (Bug Reporting): Update email address for
14 reports.
15 * README: Likewise.
16
17 Sat Jan 6 13:33:10 MET 2001 Jan Hubicka <jh@suse.cz>
18
19 * configure.in: Define DEFAULT_ARCH for i386.
20 * tc-i386.c (md_assemble): Return after the error message;
21 move testing for 64bit operands to proper place.
22
23 2001-01-06 Jan Hubicka <jh@suse.cz>, Andreas Jaeger <aj@suse.de>
24
25 * doc/as.texinfo: Document '#' as comment character for i386 and
26 x86_64. Add AMD x86-64 into menu of machine dependent information.
27
28 * doc/c-i386.texi: Document x86_64 extensions.
29
30 Fri Jan 5 13:26:42 MET 2001 Jan Hubicka <jh@suse.cz>
31
32 * tc-i386.c (md_assemble): Handle third byte of the opcode as prefix.
33
34 Thu Jan 4 22:25:26 MET 2001 Jan Hubicka <jh@suse.cz>
35
36 * tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry.
37 * NEWS: Add note about Pentium4 support.
38
39 Wed Jan 3 17:26:32 MET 2001 Jan Hubicka <jh@suse.cz>
40
41 * tc-i387.c (pi, pte, pt): Update.
42 (type_names): Add new types.
43
44 Wed Jan 3 16:26:52 MET 2001 Jan Hubicka <jh@suse.cz>
45
46 * tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow,
47 CpuUnknown): Renumber
48 (CpuP4, CpuSSE2): New.
49 (CpuUnknownFlags): Add CpuP4 and CpuSSE2
50
51 2001-01-03 Philip Blundell <pb@futuretv.com>
52
53 * config/tc-alpha.c (alpha_force_relocation): Handle vtable
54 relocs.
55 (alpha_fix_adjustable): Likewise.
56 (md_apply_fix): Likewise.
57
58 2000-12-31 H.J. Lu <hjl@gnu.org>
59
60 * listing.c (listing_message): Allocate string only if it is
61 used.
62
63 * configure: Rebuild.
64
65 2000-12-31 Hans-Peter Nilsson <hp@bitrange.com>
66
67 * doc/internals.texi (Relaxing with a table) <after relaxation>:
68 Point out caveats with generating fixups for the opcode in a frag.
69
70 Sat Dec 30 19:02:48 MET 2000 Jan Hubicka <jh@suse.cz>
71
72 * configure.in: Add support for x86_64 and x86_64-*-linux-gnu*
73 * NEWS: Add x86_64.
74
75 2000-12-29 H.J. Lu <hjl@gnu.org>
76
77 * listing.c (calc_hex): Print the variable part only if the
78 fragment type is rs_fill.
79
80 2000-12-29 Hans-Peter Nilsson <hp@bitrange.com>
81
82 * doc/internals.texi (tc_conditional_pseudoop,
83 TC_LINKRELAX_FIXUP): Fix typos.
84
85 2000-12-28 Richard Henderson <rth@redhat.com>
86
87 * write.c (subsegs_finish): Fix thinko last change -- don't
88 "optimize" the alignment == 0 case.
89
90 2000-12-28 Richard Henderson <rth@redhat.com>
91
92 * as.h (rs_align_test): New.
93 * frags.c (NOP_OPCODE): Move default from read.c.
94 (MAX_MEM_FOR_RS_ALIGN_CODE): New default.
95 (frag_align_code): New.
96 * frags.h (frag_align_code): Declare.
97 * read.c (NOP_OPCODE): Remove.
98 (do_align): Use frag_align_code.
99 * write.c (NOP_OPCODE): Remove.
100 (get_recorded_alignment): New.
101 (cvt_frag_to_fill): Handle rs_align_test.
102 (relax_segment): Likewise.
103 (subsegs_finish): Align last subseg in section to the
104 section alignment. Use frag_align_code.
105 * write.h (get_recorded_alignment): Declare.
106 * config/obj-coff.c (size_section): Handle rs_align_test.
107 (fill_section, fixup_mdeps): Likewise.
108 (write_object_file): Use frag_align_code.
109
110 * config/tc-alpha.c (alpha_align): Use frag_align_code.
111 (alpha_handle_align): New.
112 * config/tc-alpha.h (HANDLE_ALIGN): New.
113 (MAX_MEM_FOR_RS_ALIGN_CODE): New.
114
115 * config/tc-i386.h (md_do_align): Use frag_align_code.
116 (MAX_MEM_FOR_RS_ALIGN_CODE): New.
117
118 * config/tc-ia64.c (ia64_md_do_align): Don't do code alignment.
119 (ia64_handle_align): New.
120 * config/tc-ia64.h (HANDLE_ALIGN): New.
121 (MAX_MEM_FOR_RS_ALIGN_CODE): New.
122
123 * config/tc-m32r.c (m32r_do_align): Remove.
124 (m32r_handle_align): New.
125 (fill_insn): Use frag_align_code.
126 * config/tc-m32r.h (md_do_align): Remove.
127 (HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New.
128 * config/tc-m88k.c, config/tc-m88k.h: Similarly.
129 * config/tc-mips.c, config/tc-mips.h: Similarly.
130
131 * config/tc-sh.c (sh_cons_align): Use rs_align_test.
132 (sh_handle_align): Likewise. Handle rs_align_code.
133 (sh_do_align): Remove.
134 * config/tc-sh.h (md_do_align): Remove.
135 (MAX_MEM_FOR_RS_ALIGN_CODE): New.
136
137 * config/tc-sparc.c (sparc_cons_align): Use rs_align_test.
138 (sparc_handle_align): Likewise. Handle rs_align_code.
139 * config/tc-sparc.h (md_do_align): Remove.
140 (MAX_MEM_FOR_RS_ALIGN_CODE): New.
141
142 2000-12-22 DJ Delorie <dj@redhat.com>
143
144 * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg
145 when we assemble the first half of a pair.
146
147 2000-12-22 H.J. Lu <hjl@gnu.org>
148
149 * config/tc-i386.c (reloc): Update the macro for non-bfd
150 assembler.
151 (BFD_RELOC_X86_64_GOTPCREL): Set to 0 for non-bfd assembler.
152
153 2000-12-22 H.J. Lu <hjl@gnu.org>
154
155 * dwarf2dbg.c (dwarf2_finish): Remove #if BFD_ASSEMBLER.
156
157 Wed Dec 20 14:21:22 MET 2000 Jan Hubicka <jh@suse.cz>
158
159 * tc-i386.h (i386_target_format): Define even for ELFs.
160 (QWORD_MNEM_SUFFIX): New macro.
161 (CpuK6,CpuAthlon,CpuSledgehammer, Cpu64, CpuNo64, CpuUnknownFlags):
162 New macros
163 (CpuMMX,CpuSSE,Cpu3dnow, CpuUnknown): Renumber.
164 (IgnoreSize, DefaultSize, No_?Suf, FWait, IsString, regKludge, IsPrefix,
165 ImmExt): Renumber.
166 (Size64, No_qSuf, NoRex64, Rex64): New macros.
167 (Reg64, Imm32S, Imm64, Disp32S, Disp64): New macros.
168 (Imm8, Imm8S, Imm16, Imm32, Imm1, BaseIndex, Disp8, Disp16, Disp32,
169 InOutPortReg,ShiftCount, Control, Debug, Test, FloatReg, FloatAcc,
170 SReg2, SReg3, Acc, JumpAbsolute, RegMMX, RegXMM, EsSeg, InvMem):
171 Renumber.
172 (Reg, WordReg): Add Reg64.
173 (Imm): Add Imm32S and Imm64.
174 (EncImm): New.
175 (Disp): Add Disp64 and Disp32S.
176 (AnyMem): Add Disp32S.
177 (RegRex, RegRex64): New macros.
178 (rex_byte): New type.
179 * tc-i386.c (set_16bit_code_flag): Kill.
180 (fits_in_unsigned_long, fits_in_signed_long): New functions.
181 (reloc): New parameter "signed"; support x86_64.
182 (set_code_flag): New.
183 (DEFAULT_ARCH): New macro; default to "i386".
184 (default_arch): New static variable.
185 (struct _i386_insn): New fields Operand_PCrel; rex.
186 (flag_16bit_code): Kill; All tests replaced to "flag_code == CODE_64BIT"
187 (flag_code): New enum and static variable.
188 (use_rela_relocations): New static variable.
189 (flag_code_names): New static variable.
190 (cpu_arch_flags): Default to CpuUnknownFlags|CpuNo64.
191 (cpu_arch): Add "sledgehammer"; Add CPUAthlon to Athlon and CpuK6 to
192 K6 and Athlon.
193 (i386_align_code): Return plain "nop" for x86_64.
194 (mode_from_disp_size): Support Disp32S.
195 (smallest_imm_type): Support Imm32S and Imm64.
196 (offset_in_range): Support size of 8.
197 (set_cpu_arch): Do not clobber to Cpu64/CpuNo64.
198 (md_pseudo_table): Add "code64"; use set_code_flat.
199 (md_begin): Emit sane error message on hash failure.
200 (tc_i386_fix_adjustable): Support x86_64 relocations.
201 (md_assemble): Support QWORD_MNEM_SUFFIX, REX registers,
202 instructions supported on particular arch just partially,
203 output of 64bit immediates, handling of Imm32S and Disp32S type.
204 (i386_immedaite): Support x86_64 relocations; support 64bit constants.
205 (i386_displacement): Likewise.
206 (i386_index_check): Cleanup; support 64bit addresses.
207 (md_apply_fix3): Support x86_64 relocation and rela.
208 (md_longopts): Add "32" and "64".
209 (md_parse_option): Add OPTION_32 and OPTION_64.
210 (i386_target_format): Call even for ELFs; choose between
211 elf64-x86-64 and elf32-i386.
212 (i386_validate_fix): Refuse GOTOFF in 64bit mode.
213 (tc_gen_reloc): Support rela relocations and x86_64.
214 (intel_e09_1): Support QWORD.
215
216 2000-12-15 Diego Novillo <dnovillo@redhat.com>
217
218 * config/tc-i386.c (intel_e09_1): Only flag as a memory operand if
219 it's not an offset expression.
220 (intel_e10_1): Ditto. Also, if the operand is an offset expression,
221 keep the braces '[' and ']' in the output string.
222 (intel_e11): Ditto. Also remove comparison intel_parser.op_modifier
223 != FLAT. There is no such op_modifier.
224
225 2000-12-14 Michael Sokolov <msokolov@ivan.Harhan.ORG>
226
227 * dwarf2dbg.c: If we don't have <limits.h>, try including <sys/param.h>
228 if we have it.
229
230 2000-12-13 Kazu Hirata <kazu@hxi.com>
231
232 * as.h: Fix formatting.
233 * cgen.h: Likewise.
234 * dwarf2dbg.c: Likewise.
235 * input-scrub.c: Likewise.
236 * read.h: Likewise.
237
238 2000-12-13 Mark Elbrecht <snowball3@bigfoot.com>
239
240 * configure.in (i386-*-msdosdjgpp): Set bfd_gas to yes.
241 configure: Regenerate.
242
243 2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG>
244
245 * dwarf2dbg.c: #include <limits.h> only if it exists.
246
247 2000-12-13 Rodney Brown <RodneyBrown@mynd.com>
248
249 * config/tc-hppa.c (pa_ip): Correct CHECK_FIELD typo.
250 (md_apply_fix): Here too.
251
252 2000-12-12 Jim Wilson <wilson@redhat.com>
253
254 * config/tc-ia64.h (ia64_init): Add prototype.
255
256 2000-12-12 H.J. Lu <hjl@gnu.org>
257
258 * dwarf2dbg.c: Enabled only if BFD_ASSEMBLER is defined.
259
260 * read.h (outputting_stabs_line_debug): Change it to int.
261 * stabs.c (outputting_stabs_line_debug): Likewise.
262
263 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
264
265 * config/obj-bout.c (obj_crawl_symbol_chain): Don't take
266 the address of a function result.
267
268 2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
269
270 * config/tc-ppc.c (md_pseudo_table): Add .file and .loc.
271 (md_assemble): Call dwarf2_emit_insn.
272 (shlib): Fix typo SHILB -> SHLIB.
273 (md_parse_option): Likewise.
274 (ppc_elf_validate_fix): Likewise:
275 * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
276
277 2000-12-12 Nick Clifton <nickc@redhat.com>
278
279 * cgen.h: Fix formatting.
280 * input-scrub.c: Fix formatting.
281 * macro.c: Fix formatting.
282 * config/tc-mips.c: Fix formatting.
283 * doc/c-mips.texi: Fix formatting.
284
285 Mon Dec 11 14:35:42 MET 2000 Jan hubicka <jh@suse.cz>
286
287 * tc-i386.c (md_assemble): Refuse 's' and 'l' suffixes in the intel
288 mode; convert 'd' suffix to 's' or 'l'; remove all DWORD_MNEM_SUFFIX
289 references.
290 (intel_e09_1): Convert QWORD to 'l' suffix for FP operations; refuse
291 otherwise.
292 * tc-i386.h (DWORD_MNEM_SUFFIX): Kill.
293 (No_dSuf): Kill.
294
295 * i386.h (*_Suf): Remove No_dSuf.
296 (d_suf, wld_Suf,sld_Suf, sldx_Suf, bwld_Suf, d_FP, sld_FP, sldx_FP)
297 Remove.
298 (i386_optab): Remove 'd' in the suffixes.
299
300 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
301
302 * config/tc-i386.c (T_SHORT): Undefine before defining.
303
304 2000-12-05 Kazu Hirata <kazu@hxi.com>
305
306 * config/tc-mips.c: Fix formatting.
307
308 2000-12-04 Matthew Hiller <hiller@redhat.com>
309
310 * config/tc-d10v.c (flag_allow_gstabs_packing): New variable.
311 (md_longopts): New options --gstabs-packing, --no-gstabs-packing.
312 (md_show_usage): Ditto.
313 (md_parse_option): Ditto.
314 (d10v_cleanup): Writes pending instruction only if
315 ! outputting_stabs_line_debug || ! flag_allow_gstabs_packing.
316 Fix compile time warning messages.
317
318 * doc/c-d10v.texi: Documents new options.
319
320 2000-12-04 Matthew Hiller <hiller@redhat.com>
321
322 * stabs.c (outputting_stabs_line_debug): New variable.
323 (stabs_generate_asm_lineno): Set outputting_stabs_line_debug at
324 function entry and unset at function exit.
325
326 * read.h (outputting_stabs_line_debug): New extern declaration.
327
328 * as.c: Include dwarf2dbg.h for definition of dwarf2_finish.
329
330 * dwarf2dbg.c: Fix compile time warning messages.
331
332 2000-12-03 Kazu Hirata <kazu@hxi.com>
333
334 * config/tc-a29k.c: Fix formatting.
335 * config/tc-alpha.c: Likewise.
336 * config/tc-arm.c: Likewise.
337 * config/tc-cris.c: Likewise.
338 * config/tc-hppa.c: Likewise.
339 * config/tc-i370.c: Likewise.
340 * config/tc-i386.c: Likewise.
341 * config/tc-i860.c: Likewise.
342 * config/tc-i960.c: Likewise.
343 * config/tc-ia64.c: Likewise.
344 * config/tc-m68hc11.c: Likewise.
345 * config/tc-m68k.c: Likewise.
346 * config/tc-m88k.c: Likewise.
347 * config/tc-pj.c: Likewise.
348 * config/tc-ppc.c: Likewise.
349 * config/tc-sh.c: Likewise.
350 * config/tc-sparc.c: Likewise.
351 * config/tc-tahoe.c: Likewise.
352 * config/tc-vax.c: Likewise.
353
354 2000-12-01 Chris Demetriou <cgd@sibyte.com>
355
356 * config/tc-mips.c (mips_ip): When calculating offsets,
357 don't accept as constant the difference between the
358 addresses of symbols in two different sections.
359
360 * config/tc-mips.c (macro_build): Add new 'U' and 'J' operand
361 specifiers.
362 (validate_mips_insn): Likewise. Also, update 'B' operand
363 specifier to use OP_*_CODE20 constants and delete 'm' operand
364 specifier.
365 (mips_ip): Remove 'm' operand specifier, add 'U' and 'J'
366 operand specifiers. Change warning generated by 'B' operand
367 specifier to reflect its new multi-purpose usage.
368
369 * config/tc-mips.c (mips_set_options): Use ISA_UNKNOWN rather than
370 -1, and update comment.
371 (file_mips_isa): Likewise.
372 (mips_cpu): Use CPU_UNKNOWN rather than -1, and update comment.
373 (ISA_HAS_COPROC_DELAYS, ISA_HAS_64BIT_REGS, gpr_interlocks): Use
374 ISA_* constants rather than hard-coded numbers.
375 (mips_cpu_info): New structure.
376 (mips_cpu_info_table): New table describing CPU and ISA names
377 and numbers.
378 (mips_cpu_info_from_name, mips_cpu_info_from_isa,
379 mips_cpu_info_from_cpu): New functions.
380 (mips_isa_to_str): New function to get string for ISA name.
381 (mips_cpu_to_str): Convert to use mips_cpu_info_from_cpu, and
382 return const char *.
383 (md_begin): Redo CPU and ISA selection logic, using
384 mips_cpu_info_from_*. Convert to use ISA_* constants rather
385 than hard-coded numbers.
386 (append_insn, mips_emit_delays, macro, macro2): Convert to use
387 ISA_* constants rather than hard-coded numbers.
388 (mips_ip): Convert to use mips_isa_to_str to get ISA name.
389 (md_longopts): Delete OPTION_NO_MIPS32.
390 (md_parse_option): Convert to use ISA_* constants rather than
391 hard-coded numbers. Make OPTIONS_MIPS32 case treat MIPS32
392 as an ISA. Delete OPTION_NO_MIPS32 case. Convert OPTION_MCPU
393 to use strcasecmp to recognize "default" and to use
394 mips_cpu_info_from_name to get CPU numbers from argument.
395 (md_show_usage): Move -mips32 so it's with the rest of the ISA
396 flags. Change 4Kc, 4Kp and 4Km CPU entries to just be
397 mips32-4k.
398 (s_mipsset): Accept ISA value 32.
399 * doc/as.texinfo: Clean up MIPS options summary slightly,
400 remove -no-mips32. Add note about -mips4 and -mips32
401 specifying those ISA levels. Delete -mips32 and -no-mips32
402 cpu flag descriptions.
403 * doc/c-mips.texi: Add -mips32 to list of ISA switches. Clean
404 up the supported CPU switch list, and replace 4Kc, 4Km, and
405 4Kp entries with a single mips32-4k entry. Note that you can
406 use ".set mips32".
407
408 * tc-mips.c (ISA_HAS_64BIT_REGS): Add checks for ISA_MIPS5 and
409 ISA_MIPS64.
410 (md_longopts, OPTION_MIPS5, OPTION_MIPS64): Add options for
411 -mips5 and -mips64.
412 (md_parse_option): Add cases for OPTION_MIPS5 and
413 OPTION_MIPS64.
414 (md_show_usage): Mention -mips5 and -mips64 arguments.
415 (s_mipsset): Add cases for MIPS5 and MIPS64.
416 (mips_cpu_info_table): Add entries for MIPS5 and MIPS64 ISAs
417 and pseudo-CPUs.
418 * doc/as.texinfo: Mention -mips5 and -mips64 options
419 and their meanings.
420 * doc/c-mips.texi: Likewise. Also update introduction
421 and ".set" usage information.
422
423 * config/tc-mips.c (md_show_usage): Add "sb1" to the
424 CPU list.
425 (mips_cpu_info_table): Add SB-1 entries.
426 * doc/c-mips.texi: Add "sb1" to the list of CPUs
427 known to the -mcpu option.
428
429 * doc/as.texinfo: Correct description of MIPS -mcpu
430 option, by copying some of the text from doc/c-mips.texi.
431
432 2000-12-01 Joel Sherrill <joel@OARcorp.com>
433
434 * configure.in (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
435 New targets.
436 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
437 (sparc*-*-rtems*): Switched from a.out to ELF.
438 * configure: Regenerate.
439 * config.in: Regenerate.
440 * Makefile.in: Regenerate.
441 * aclocal.m4: Regenerate.
442 * po/gas.pot: Regenerate.
443
444 2000-11-30 Philip Blundell <pb@futuretv.com>
445
446 * config/obj-coff.c (obj_coff_weak): Use S_SET_WEAK if it exists,
447 even in non BFD_ASSEMBLER case.
448
449 2000-11-30 Diego Novillo <dnovillo@redhat.com>
450
451 * tc-i386.c (md_assemble): Swap i.disp_relocs when using intel
452 syntax.
453
454 2000-11-29 Richard Henderson <rth@redhat.com>
455
456 * dwarf2dbg.c: Rewrite from scratch. Queue all debugging output
457 until dwarf2_finish; use relaxation to get cross-fragment offsets;
458 thread multiple subsegments properly; handle multiple code
459 sections properly; emit proper compilation unit info for assembler
460 generated debugging.
461
462 * as.h (enum _relax_state): Add rs_dwarf2dbg.
463 * dwarf2dbg.h (struct dwarf2_line_info): Remove filename.
464 (dwarf2dbg_estimate_size_before_relax): Declare.
465 (dwarf2dbg_relax_frag, dwarf2dbg_convert_frag): Declare.
466 * write.c: Include dwarf2dbg.h.
467 (cvt_frag_to_fill): Handle rs_dwarf2dbg.
468 (relax_segment): Likewise.
469
470 2000-11-28 Hans-Peter Nilsson <hp@bitrange.com>
471
472 * config/tc-sh.c (md_convert_frag) <undefined symbol, conditional
473 jump>: Use as_bad_where instead of as_bad. Tweak error message
474 accordingly. Stabilize frag by updating fix part and resetting
475 variant part.
476 <undefined symbol, unconditional jump>: Ditto.
477 (sh_elf_cons): Cast *input_line_pointer to unsigned char when
478 indexing is_end_of_line[].
479 (md_assemble): Initialize size to 0.
480 (md_section_align): Mark parameter seg as unused.
481 (parse_reg): Parse names case-insensitively.
482
483 2000-11-28 Kazu Hirata <kazu@hxi.com>
484
485 * config/obj-aout.h: Fix formatting.
486 * config/obj-bout.h: Likewise.
487 * config/obj-coff.c: Likewise.
488 * config/obj-coff.h: Likewise.
489 * config/obj-elf.h: Likewise.
490 * config/obj-som.h: Likewise.
491 * config/obj-vms.c: Likewise.
492 * config/obj-vms.h: Likewise.
493 * config/tc-h8300.h: Likewise.
494 * config/tc-ns32k.h: Likewise.
495 * config/tc-sparc.h: Likewise.
496 * config/tc-tic54x.h: Likewise.
497 * config/tc-z8k.h: Likewise.
498
499 2000-11-28 Nick Clifton <nickc@redhat.com>
500
501 * doc/as.1 (COPYING): Mention that the GNU Free Documentation
502 License is present in the sources, but not the output, and
503 also available from the GNU website.
504 (GNU Free Documentation License): Comment out this section.
505
506 2000-11-28 Hans-Peter Nilsson <hp@axis.com>
507
508 * Makefile.am (CPU_OBJ_VALID): Add case to filter out invalid coff
509 targets. Remove i860 from valid a.out targets.
510 * Makefile.in: Regenerate.
511
512 * config/tc-cris.c: Include dwarf2dbg.h.
513 (md_pseudo_table): Add .file and .loc.
514 (md_assemble): Call dwarf2_emit_insn if generating ELF.
515 (s_cris_file, s_cris_loc): New.
516 * config/tc-cris.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
517 * Makefile.am: Regenerate dependencies.
518 * Makefile.in: Regenerate.
519
520 2000-11-28 Alan Modra <alan@linuxcare.com.au>
521
522 * expr.c (STANDARD_MUL_PRECEDENCE): Correct value.
523 (MRI_MUL_PRECEDENCE): Likewise.
524 (op_rank): Fix a comment typo.
525
526 2000-11-26 Stephane Carrez <Stephane.Carrez@worldnet.fr>
527
528 * config/tc-m68hc11.c (build_indexed_byte): Print the offset in
529 the error message.
530 (get_operand): Fix analysis for movw/movb instructions.
531
532 2000-11-24 Nick Clifton <nickc@redhat.com>
533
534 * configure.in (xscale-elf): Add target.
535 (xscale-coff): Add target.
536 * configure: Regenerate.
537
538 * config/tc-arm.c (ARM_EXT_V5E): New ARM architecture
539 extenstion.
540 (ARM_EXT_XSCALE): New ARM architecture extension.
541 (ARM_LONGMUL): Rename to ARM_EXT_LONGMUL.
542 (ARM_HALFWORD): Rename to ARM_EXT_HALFWORD.
543 (ARM_THUMB): Rename to ARM_EXT_THUMB.
544 (ARM_ARCH_V4): Remove processor from architecture.
545 (ARM_ARCH_3M): New architecutre definition.
546 (ARM_ARCH_V5TE): New architecutre definition.
547 (ARM_ARCH_XSCALE): New architecutre definition.
548 (CPU_DEFAULT): Allow to be defaulted to XScale.
549 (atpcs): New boolean variable.
550 (ldr_flags): Support 'd' flag for double word loads.
551 (str_flags): Support 'd' flag for double word stored.
552 (do_mia): New function.
553 (do_mar): New function.
554 (do_mra): New function.
555 (do_pld): New function.
556 (do_ldrd): New function.
557 (do_blx): New function.
558 (do_bkpt): New function.
559 (do_clz): New function.
560 (do_lstc2): New function.
561 (do_cdp2): New function.
562 (do_t_blx): New function.
563 (do_t_bkpt): New function.
564 (do_smla): New function.
565 (do_smlal): New function.
566 (do_smul): New function.
567 (do_qadd): New function.
568 (do_co_reg2c): New function.
569 (LONGEST_INSN): Redefine to 7.
570
571 * doc/c-arm.texi: Document -mxscale, -mmarmv5te and -matpcs
572 command line switches.
573
574 2000-11-22 Jim Wilson <wilson@redhat.com>
575
576 * config/tc-ia64.c (pseudo_func): Add missing initializers.
577 (struct rsrc): Make line unsigned.
578 (gr_values): Add missing initializer.
579 (SLOT_NUM_NOT_SET): Add unsigned cast.
580 (ia64_elf_section_flags, output_vbyte_mem, count_output, dot_radix,
581 dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
582 dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
583 dot_unwentry, dot_altrp, dot_saveg, dot_savef, dot_saveb, dot_savegf,
584 dot_spill, dot_spillreg, dot_spillreg_p, dot_label_state,
585 dot_copy_state, dot_unwabi, dot_personality, dot_proc, dot_body,
586 dot_prologue, dot_endp, dot_regstk, dot_psr, dot_alias, dot_ln,
587 dot_reg_val, dot_entry, dot_mem_offset, ia64_init, mark_resource,
588 md_undefined_symbol, md_apply_fix3, tc_gen_reloc, ia64_md_do_align):
589 Add ATTRIBUTE_UNUSED to unused parameters.
590 (convert_expr_to_ab_reg): Add parens.
591 (convert_expr_to_xy_reg): Add parens. Comment out >= REG_GR test.
592 (dot_prologue): Initialize grsave when declared.
593 (md_pseudo_table): Add missing initializers.
594 (operand_match): Add casts to bfd_vma.
595 (emit_one_bundle): Delete unused local prev. Make required_template
596 unsigned.
597 (specify_resource): Cast i to unsigned.
598 (note_register_values): Use fprintf_vma.
599 (print_dependency): Likewise.
600
601 2000-11-21 Jim Wilson <wilson@redhat.com>
602
603 * config/tc-ia64.c (generate_unwind_image): Call record_alignment
604 for unwind info section.
605 (dot_endp): Likewise for unwind section.
606
607 * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to
608 fix_new_exp.
609
610 2000-11-21 Jakub Jelinek <jakub@redhat.com>
611
612 * config/tc-sparc.c (md_pseudo_table): Add .file and .loc.
613 (output_insn): Call dwarf2_emit_insn.
614 * config/tc-sparc.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
615
616 2000-11-17 Richard Henderson <rth@redhat.com>
617
618 * ehopt.c (eh_frame_code_alignment): New arg `in_seg', update all
619 callers. Don't switch segments. Expect CIE == -1 in .debug_frame.
620 (check_eh_frame): Handle .eh_frame and .debug_frame concurrently.
621
622 2000-11-17 Nick Clifton <nickc@redhat.com>
623
624 * config/tc-arm.c (md_pseudo_table): Add support for .line and
625 .file pseudo ops.
626
627 2000-11-17 Richard Henderson <rth@redhat.com>
628
629 * config/tc-i386.c (md_pseudo_table): Add .file and .loc.
630
631 2000-11-17 Richard Henderson <rth@redhat.com>
632
633 * dwarf2dbg.c (dwarf2_gen_line_info): Early out for no line number.
634 * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Adjust for
635 tri-state definition of alpha_flag_mdebug.
636 * config/tc-alpha.c (alpha_flag_mdebug): Init to -1.
637 (s_alpha_file): Store first .file directive.
638 (s_alpha_stab): New.
639 (md_pseudo_table): Add stabs and stabn.
640
641 2000-11-17 Richard Henderson <rth@redhat.com>
642
643 * config/tc-i386.c (md_assemble): Call dwarf2_emit_insn.
644
645 2000-11-17 Richard Henderson <rth@redhat.com>
646
647 * as.c (debug_type): Init to DEBUG_UNSPECIFIED.
648 (main): Call dwarf2_finish.
649 * as.h (debug_type): Clarify documentation of the meaning
650 of this variable.
651 * dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
652 (print_stats): Fix parenthesis problem.
653 (now_subseg_size): New.
654 (dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info.
655 (dwarf2_directive_file): Don't set debug_type.
656 (dwarf2_where): Honor DEBUG_DWARF2 first.
657 (dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
658 do nothing if not emitting dwarf2 debug info, or no work.
659 * dwarf2dbg.h (dwarf2_emit_insn): Update.
660 * ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
661 (ecoff_new_file): Likewise.
662 * read.c (generate_lineno_debug): Kill ecoff hackery. Update
663 commentary wrt dwarf2.
664
665 * config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
666 ATTRIBUTE_UNUSED as needed.
667 (emit_insn): Call dwarf2_emit_insn.
668 (s_alpha_file): New.
669 (s_alpha_loc): New.
670 (s_alpha_coff_wrapper): Don't handle them.
671 (md_pseudo_table): Update for .file and .loc.
672 * config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
673
674 * config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
675 don't protect with debug_type.
676 * config/tc-hppa.c (md_assemble): Likewise.
677 * config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
678 * config/tc-mn10300.c (md_assemble): Likewise.
679 * config/tc-sh.c (md_assemble): Likewise.
680 * config/tc-v850.c (md_assemble): Likewise.
681
682 * config/tc-arm.c (arm_end_of_source): Remove.
683 * config/tc-hppa.c (pa_end_of_source): Remove.
684 * config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
685 * config/tc-mn10300.c (mn10300_finalize): Remove.
686 * config/tc-sh.c (sh_finalize): Remove.
687 * config/tc-v850.c (sh_finalize): Remove.
688
689 * config/tc-arm.h (md_end): Remove.
690 * config/tc-hppa.h (md_end): Remove.
691 (DWARF2_LINE_MIN_INSN_LENGTH): New.
692 * config/tc-m68hc11.h (md_end): Remove.
693 * config/tc-mn10300.h (md_end): Remove.
694 * config/tc-sh.h (md_end): Remove.
695 * config/tc-v850.h (md_end): Remove.
696
697 * config/tc-ia64.c (emit_one_bundle): Don't protect
698 dwarf2 bits with debug_type.
699 (md_assemble): Likewise.
700 (ia64_end_of_source): Don't call dwarf2_finish.
701
702 2000-11-16 Jim Wilson <wilson@redhat.com>
703
704 * config/tc-ia64.c (errata_nop_necessary_p): Abort if general regno
705 >= 128 instead of > 128. Abort if predicate regno is >= 64 instead of
706 > 16.
707
708 2000-11-16 H.J. Lu <hjl@gnu.org>
709
710 * config/obj-elf.c (obj_elf_symver): Don't check the missing
711 version name.
712
713 2000-11-15 Kazu Hirata <kazu@hxi.com>
714
715 * config/tc-tic30.c: Fix formatting.
716 * config/tc-tic80.c: Likewise.
717 * config/tc-v850.c: Likewise.
718 * config/tc-vax.c: Likewise.
719 * config/tc-w65.c: Likewise.
720 * config/tc-z8k.c: Likewise.
721
722 2000-11-14 DJ Delorie <dj@redhat.com>
723
724 * config/tc-v850.c: Support dwarf2.
725 * config/tc-v850.h: Ditto.
726
727 * config/tc-v850.c (cons_fix_new_v850): Don't rely on
728 parse_cons_expression_v850 to initialize hold_cons_reloc.
729
730 2000-11-15 Bernd Schmidt <bernds@redhat.com>
731
732 * tc-ia64.c (struct md): New entries LAST_GROUPS, GROUP_IDX.
733 (errata_nops_necessary_p): New function.
734 (emit_one_bundle): Call it. Update the GROUP_IDX field in struct
735 md.
736
737 2000-11-14 Jim Wilson <wilson@redhat.com>
738
739 * config/tc-ia64.c (ia64_target_format): If EF_IA_64_BE not set, then
740 return little endian bfd formats.
741
742 2000-11-14 Kazu Hirata <kazu@hxi.com>
743
744 * config/aout_gnu.h: Fix formatting.
745 * config/atof-vax.c: Likewise.
746 * config/m68k-parse.h: Likewise.
747 * config/m88k-opcode.h: Likewise.
748 * config/obj-elf.c: Likewise.
749 * config/tc-arm.c: Likewise.
750 * config/tc-cris.c: Likewise.
751 * config/tc-i386.c: Likewise.
752 * config/tc-ia64.c: Likewise.
753 * config/tc-mn10300.c: Likewise.
754 * config/te-386bsd.h: Likewise.
755 * config/te-hppa.h: Likewise.
756 * config/te-nbsd.h: Likewise.
757 * config/te-ppcnw.h: Likewise.
758 * config/te-sparcaout.h: Likewise.
759 * config/te-tmips.h: Likewise.
760 * config/vax-inst.h: Likewise.
761 * config/vms-conf.h: Likewise.
762
763 2000-11-14 Jakub Jelinek <jakub@redhat.com>
764
765 * config/tc-alpha.c (s_alpha_prologue): Preserve visibility bits.
766
767 2000-11-13 H.J. Lu <hjl@gnu.org>
768
769 * config/obj-elf.c (elf_frob_symbol): Support
770 ".symver name,name2@@@nodename".
771 (elf_frob_file_before_adjust): Likewise.
772
773 * doc/as.texinfo: Updated for ".symver name,name2@@@nodename"
774 and ".symver name,name2@@@nodename".
775 Fix a typo.
776
777 2000-11-12 H.J. Lu (hjl@gnu.org)
778
779 * config/obj-elf.c (obj_elf_symver): Check missing version
780 name.
781
782 2000-11-12 H.J. Lu (hjl@gnu.org)
783
784 * dwarf2dbg.c (dwarf2_generate_asm_lineno): Use addressT
785 instead of bfd_vma for non-bfd assemblers.
786
787 2000-11-09 Kazu Hirata <kazu@hxi.com>
788
789 * itbl-ops.c: Fix comment typos.
790
791 2000-11-08 Jim Wilson <wilson@redhat.com>
792
793 * config/tc-ia64.c (struct unw_rec_list): Add slot_frag field.
794 (struct unwind): Add next_slot_frag field.
795 (slot_index): New parameters slot_frag and first_frag. Add code
796 to add in frag sizes when different. Add comments.
797 (fixup_unw_records): New locals first_frag and last_frag. Pass new
798 arguments to slot_index.
799 (emit_one_bundle): Set slot_frag field. Set next_slot_number after
800 loop end. Set next_slot_frag field.
801
802 2000-11-07 H.J. Lu <hjl@gnu.org>
803
804 * doc/as.texinfo (.symver): Updated for versioned symbol
805 reference.
806
807 * obj.h (format_ops): Add the frob_file_before_adjust field.
808
809 * config/obj-aout.c (aout_format_ops): Set the
810 frob_file_before_adjust field to 0.
811 * config/obj-coff.c (coff_format_ops): Likewise.
812 * config/obj-ecoff.c (ecoff_format_ops): Likewise.
813
814 * config/obj-elf.c (obj_elf_symver): Allow duplicated version
815 name.
816 (elf_frob_file_before_adjust): New function to remove unneeded
817 versioned symbols from the symbol table.
818 (elf_format_ops): Set the frob_file_before_adjust field to
819 elf_frob_file_before_adjust.
820
821 * config/obj-elf.h (obj_frob_file_before_adjust): Defined if
822 not defined.
823
824 * config/obj-multi.h (obj_frob_file_before_adjust): Defined.
825
826 2000-11-07 Peter Targett <peter.targett@arccores.com>
827
828 * gas/config/tc-arc.h: Avoid warnings for LITTLE_ENDIAN and
829 BIG_ENDIAN macros.
830 * gas/config/tc-arc.c: Use S_IS_LOCAL to test local symbols.
831 Fix compile time warning messages.
832
833 2000-11-07 Nick Clifton <nickc@redhat.com>
834
835 * stabs.c (generate_asm_file): Increase length of xmalloc'ed
836 buffer in order to avoid buffer overflows.
837
838 2000-11-06 Steve Ellcey <sje@cup.hp.com>
839
840 * config/tc-ia64.c (md_shortopts, md_parse_option, md_show_usage):
841 Change M to m for -milp32 or -mlp64 to match gcc.
842 (dot_endp): Use bytes_per_address instead of 8.
843 (emit_one_bundle): Use number_to_chars_littleendian instead of
844 md_number_to_chars.
845 (fix_insn): Likewise.
846 (ia64_init): New function.
847 (ia64_target_format): New function.
848 (md_begin): Set endianness, arch, and machine as appropriate.
849 * config/tc-ia64.h: (TARGET_BYTES_BIG_ENDIAN, md_number_to_chars):
850 Make these macros depend on TE_HPUX macro.
851 (TARGET_FORMAT): Define.
852 (HOST_SPECIAL_INIT): Define.
853 * config/te-hpux.h: New file.
854 * configure.in: Add "ia64-*-hpux*" target to configure.
855 * configure: Regenerate.
856
857 2000-11-06 Kazu Hirata <kazu@hxi.com>
858
859 * as.c: Fix formatting.
860 * dwarf2dbg.c: Likewise.
861 * input-file.c: Likewise.
862 * input-file.h: Likewise.
863 * input-scrub.c: Likewise.
864 * itbl-ops.c: Likewise.
865 * listing.c: Likewise.
866 * macro.h: Likewise.
867 * messages.c: Likewise.
868 * read.c: Likewise.
869 * subsegs.c: Likewise.
870 * subsegs.h: Likewise.
871 * write.c: Likewise.
872
873 2000-11-06 Nick Clifton <nickc@redhat.com>
874
875 * doc/as.texinfo: Add GNU Free Documentation License.
876 * doc/gasp.texi: Add GNU Free Documentation License.
877 * doc/as.1: Add GNU Free Documentation License.
878
879 2000-11-05 Nick Clifton <nickc@redhat.com>
880
881 * config/tc-arm.c: Add include of "dwarf2dbg.h"
882
883 2000-11-02 Per Lundberg <plundis@chaosdev.org>
884
885 * configure.in: Recognise i[3456]86-chaosdev-storm-chaos.
886 * configure: Regenerate.
887
888 2000-11-01 Nick Clifton <nickc@redhat.com>
889
890 * read.c (original_case_string): New global variable.
891 (read_a_source_file): Copy opcode string into
892 original_case_string if clobbering the case of the opcode.
893 * read.h: Export the definition of original_case_string.
894 * config/tc-arm.c (md_assembler): When parsing a .req
895 directive use the original opcode string, not the case
896 clobbered version.
897
898 2000-11-02 Nick Clifton <nickc@redhat.com>
899
900 * config/tc-mn10300.c (debug_line): Remove this static
901 variable.
902 (md_assemble): Call dwarf2_generate_asm_lineno instead of
903 dwarf2_where and dwarf2_gen_line_info.
904
905 2000-11-02 Theo Honohan <th@futuretv.com>
906
907 * config/tc-arm.c (do_msr): Improve error message.
908
909 2000-10-31 Eric Christopher <echristo@redhat.com>
910
911 * config/tc-mn10300.c (md_apply_fix3): Use valuep if fully resolved
912 or pc-relative, else use fx_offset.
913
914 2000-10-31 Jim Wilson <wilson@redhat.com>
915
916 * config/tc-ia64.c (struct md): New field tag_fixups.
917 (ia64_flush_insns): Handle tag_fixups. Error if dangling
918 qualifying predicate.
919 (emit_one_bundle): Delete spurious multiplication by one. Handle
920 tag_fixups.
921 (ia64_start_line): Error if dangling qualifying predicate.
922 (defining_tag): New static variable.
923 (ia64_unrecognized_line, case '['): Parse tags.
924 (ia64_frob_label): Create tag_fixups.
925 (md_assemble): Reset md.qp.X_op after using it.
926
927 2000-10-31 Kaz Kojima <kkojima@rr.iij4u.or.jp>
928
929 * config/tc-sh.c (md_apply_fix [BFD_RELOC_SH_PCDISP12BY2]): Allow 4094.
930
931 2000-10-31 Bernd Schmidt <bernds@redhat.co.uk>
932
933 * tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2.
934
935 2000-10-30 Kazu Hirata <kazu@hxi.com>
936
937 * expr.c: Fix formatting.
938 * flonum-copy.c: Likewise.
939 * flonum.h: Likewise.
940 * gasp.c: Likewise.
941 * hash.c: Likewise.
942
943 2000-10-30 Hans-Peter Nilsson <hp@bitrange.com>
944
945 * as.h (OPTION_MD_BASE): Bump to 190.
946 * as.c (parse_args) <std_longopts>: Add comment about the need to
947 check OPTION_MD_BASE in as.h.
948
949 * config/tc-sh.c (md_apply_fix): For ELF, do not "adjust back" VAL
950 for weak symbols.
951
952 2000-10-27 Nick Clifton <nickc@redhat.com>
953
954 * configure.in (emulations): Add m68hc12.
955 * configure: Regenerate.
956 * po/gas.pot: Regenerate.
957
958 2000-10-27 Aldy Hernandez <aldyh@redhat.com>
959
960 * config/tc-arm.c (psrs): Remove lowercase versions of spsr* and
961 cpsr*.
962 (arm_psr_parse): Handle lowercase CPSR and SPSR.
963
964 2000-10-25 Nick Clifton <nickc@redhat.com>
965
966 * dwarf2out.c (dwarf2_generate_asm_lineno): New function: Generate
967 a DWARF2 line number information sequence.
968
969 *dwarf2out.h: Add prototype for dwarf2_generate_asm_lineno.
970
971 * read.c (generate_lineno_debug): Update comment describing why
972 DWARF2 line number debug information is not generated
973 automatically by this function.
974
975 * doc/as.texinfo: Note that --gdwarf2 only works on some targets,
976 not all.
977
978 * config/tc-arm.h (md_end): Define.
979 (DWARF2_LINE_MIN_INSN_LENGTH): Define.
980
981 * config/tc-arm.c (output_inst): Call dwarf2_generate_asm_lineno
982 if generating DWARF2 line numbers.
983 (arm_end_of_source): New function. Call dwarf2_finish if
984 necessary.
985
986 * config/tc-hppa.c (md_assemble): Use dwarf2_generate_asm_lineno.
987 * config/tc-m68hc11.c (m68hc11_new_insn): Use dwarf2_generate_asm_lineno.
988 * config/tc-sh.c (md_assemble): Use dwarf2_generate_asm_lineno.
989
990 2000-10-25 Diego Novillo <dnovillo@cygnus.com>
991
992 * tc-i386.c: Fix prototype declarations for functions taking no
993 arguments.
994
995 2000-10-24 Diego Novillo <dnovillo@cygnus.com>
996
997 * tc-i386.c (i386_operand_modifier): Remove.
998 (build_displacement_string): Remove.
999 (i386_parse_seg): Remove.
1000 (i386_intel_memory_operand): Remove.
1001 (i386_intel_operand): Re-write using recursive descent parser based
1002 on MASM documentation.
1003 (struct intel_parser_s): New structure.
1004 (intel_parser): New static variable.
1005 (struct intel_token): New structure.
1006 (cur_token, prev_token): New static variables.
1007 (T_NIL): Define.
1008 (T_CONST): Define.
1009 (T_REG): Define.
1010 (T_BYTE): Define.
1011 (T_WORD): Define.
1012 (T_DWORD): Define.
1013 (T_QWORD): Define.
1014 (T_XWORD): Define.
1015 (T_SHORT): Define.
1016 (T_OFFSET): Define.
1017 (T_PTR): Define.
1018 (T_ID): Define.
1019 (intel_match_token): New function.
1020 (intel_get_token): New function.
1021 (intel_putback_token): New function.
1022 (intel_expr): New function.
1023 (intel_e05): New function.
1024 (intel_e05_1): New function.
1025 (intel_e06): New function.
1026 (intel_e06_1): New function.
1027 (intel_e09): New function.
1028 (intel_e09_1): New function.
1029 (intel_e10): New function.
1030 (intel_e10_1): New function.
1031 (intel_e11): New function.
1032
1033 2000-10-20 Jakub Jelinek <jakub@redhat.com>
1034
1035 * config/tc-sparc.c (sparc_ip): Fix a bug which caused v9_arg_p
1036 instructions to loose any special insn->architecture mask.
1037
1038 * config/tc-sparc.c (v9a_asr_table): Add v9b ASRs.
1039 (sparc_md_end, sparc_arch_types, sparc_arch,
1040 sparc_elf_final_processing): Handle v8plusb and v9b architectures.
1041 (sparc_ip): Handle siam mode operands. Support v9b ASRs (and
1042 request v9b architecture if they are used).
1043
1044 2000-10-18 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1045
1046 * config/tc-m68k.c: Fix the previous misapplied patch.
1047
1048 2000-10-18 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1049
1050 * config/tc-m68k.h (RELAX_RELOC_*): New definitions for both
1051 BFD_ASSEMBLER and !BFD_ASSEMBLER.
1052 * config/tc-m68k.c (md_convert_frag_1): Use them instead of
1053 BFD_RELOC_*.
1054
1055 2000-10-17 Kazu Hirata <kazu@hxi.com>
1056
1057 * debug.c: Fix formatting.
1058 * depend.c: Likewise.
1059 * dwarf2dbg.c: Likewise.
1060 * dwarf2dbg.h: Likewise.
1061 * ecoff.c: Likewise.
1062 * expr.c: Likewise.
1063 * expr.h: Likewise.
1064 * flonum-konst.c: Likewise.
1065 * frags.h: Likewise.
1066
1067 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
1068
1069 * as.c: New option OPTION_TARGET_HELP. Prints all target specific
1070 options.
1071 * doc/as.texinfo: Added notes about this new option.
1072
1073 2000-10-16 Hans-Peter Nilsson <hp@bitrange.com>
1074
1075 * config/tc-sh.c (JREG): Remove.
1076 (md_convert_frag): Remove #if 0:d code using JREG.
1077
1078 2000-10-15 Diego Novillo <dnovillo@cygnus.com>
1079
1080 * config/tc-i386.c (i386_operand_modifier): Only match
1081 modifiers SHORT and FLAT if they are followed by a space.
1082 (parse_register): When `allow_naked_reg' is set, do not confuse
1083 identifiers that start with a register name with a register.
1084
1085 2000-10-12 Kazu Hirata <kazu@hxi.com>
1086
1087 * app.c: Fix formatting.
1088 * as.c: Likewise.
1089 * as.h: Likewise.
1090 * bit_fix.h: Likewise.
1091 * cgen.c: Likewise.
1092 * cgen.h: Likewise.
1093 * cond.c: Likewise.
1094
1095 2000-10-11 Alan Modra <alan@linuxcare.com.au>
1096
1097 * config/obj-elf.c (elf_frob_symbol): Revert 2000-10-07 change.
1098
1099 2000-10-07 Alan Modra <alan@linuxcare.com.au>
1100
1101 * config/tc-hppa.c (md_apply_fix): Remove plainly wrong assert.
1102 Re-arrange function a little and improve error message.
1103
1104 * write.c (write_relocs): Fix a comment.
1105
1106 * config/obj-elf.c (elf_frob_symbol): Make section syms global on
1107 link-once sections.
1108
1109 2000-10-05 Jim Wilson <wilson@cygnus.com>
1110
1111 * config/tc-ia64.c (resources_match): Handle IA64_RS_PRr.
1112
1113 2000-10-05 Alan Modra <alan@linuxcare.com.au>
1114
1115 * config/tc-i386.c: Delete some useless comments, reformat others.
1116
1117 * config/tc-i386.h (TC_FIX_ADJUSTABLE): Add check to cover
1118 non-global syms in linkonce sections.
1119
1120 2000-10-04 Ralf Baechle <ralf@gnu.org>
1121
1122 * config/tc-ia64.c (operand_match): Don't use // style comments.
1123 * config/tc-i370.c: Likewise.
1124
1125 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
1126
1127 Changes to handle varying register prefix and user symbol prefix.
1128 * config/tc-cris.c (SYNTAX_RELAX_REG_PREFIX,
1129 SYNTAX_ENFORCE_REG_PREFIX, SYNTAX_USER_SYM_LEADING_UNDERSCORE,
1130 SYNTAX_USER_SYM_NO_LEADING_UNDERSCORE, REGISTER_PREFIX_CHAR): New.
1131 (s_syntax, cris_force_reg_prefix, cris_relax_reg_prefix,
1132 cris_sym_leading_underscore, cris_sym_no_leading_underscore): New.
1133 (demand_register_prefix): New variable.
1134 (md_pseudo_table): New pseudo ".syntax".
1135 (md_longopts): New options --no-underscore and --underscore.
1136 (cris_target_format): Return elf32-us-cris or elf32-cris depending
1137 on symbols_have_leading_underscore.
1138 (get_gen_reg): Accept or require REGISTER_PREFIX_CHAR.
1139 (get_spec_reg): Ditto.
1140 (cris_number_to_imm) <case BFD_RELOC_VTABLE_ENTRY>: Remove FIXME.
1141 Fix formatting.
1142 (md_parse_option) <case 'h' 'H'>: Deprecate; add reference to
1143 --help.
1144 <case OPTION_NO_US, case OPTION_US>: New.
1145 (md_show_usage): Be brief and reformat to match continuation of
1146 --help.
1147 * po/gas.pot: Regenerate.
1148
1149 2000-09-28 Alan Modra <alan@linuxcare.com.au>
1150
1151 * config/tc-hppa.c (hppa_force_relocation): If OBJ_SOM, don't
1152 force relocs for 12 bit branches.
1153 (md_apply_fix): Similarly, adjust logic here.
1154
1155 2000-09-28 Alan Modra <alan@linuxcare.com.au>
1156
1157 * config/tc-hppa.c (md_apply_fix): Add fmt assertion. Don't
1158 adjust for external and weak syms as we will use a reloc. Allow
1159 for +8 offset when calculating limits of branches.
1160 (hppa_fix_adjustable): Undo 2000-09-23 change.
1161 (hppa_force_relocation): Likewise. Add fx_addsy assertion.
1162 Correct distance calculation.
1163 (tc_gen_reloc): Print the file name and line number if we can't
1164 handle a fixup.
1165
1166 From John David Anglin <dave@hiauly1.hia.nrc.ca>
1167 * config/tc-hppa.c (nonzero_dibits): Define.
1168 (arg_reloc_stub_needed): Check each arg and return value
1169 separately for zero case.
1170 (pa_align): Declare argument `bytes'.
1171
1172 2000-09-25 Kazu Hirata <kazu@hxi.com>
1173
1174 * config/tc-cris.c: Fix formatting.
1175 * config/tc-d10v.h: Likewise.
1176 * config/tc-d30v.c: Likewise.
1177 * config/tc-d30v.h: Likewise.
1178 * config/tc-fr30.c: Likewise.
1179 * config/tc-fr30.h: Likewise.
1180 * config/tc-m68k.c: Likewise.
1181 * config/tc-m68k.h: Likewise.
1182 * config/tc-pj.h: Likewise.
1183 * config/tc-ppc.c: Likewise.
1184 * config/tc-ppc.h: Likewise.
1185 * config/tc-sh.c: Likewise.
1186 * config/tc-sh.h: Likewise.
1187 * config/tc-sparc.c: Likewise.
1188 * config/tc-v850.h: Likewise.
1189 * config/tc-vax.h: Likewise.
1190 * config/tc-w65.h: Likewise.
1191 * config/tc-z8k.h: Likewise.
1192
1193 2000-09-23 Alan Modra <alan@linuxcare.com.au>
1194
1195 * config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak
1196 checks only for ELF.
1197 (hppa_force_relocation): Likewise.
1198
1199 2000-09-22 Jim Wilson <wilson@cygnus.com>
1200
1201 * config/tc-ia64.c (dv_sem): Add "stop".
1202 (specify_resource, case IA64_RS_PR): Only handles regs 1 to 15 now.
1203 (specify_resource, case IA64_RS_PRr): New for regs 16 to 62.
1204 (specify_resource, case IA64_RS_PR63): Reorder (note == 7) test to
1205 match above.
1206 (mark_resources): Check IA64_RS_PRr.
1207
1208 2000-09-22 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1209
1210 * config/tc-m68k.c (md_relax_table, m68k_ip, md_convert_frag_1,
1211 md_estimate_size_before_relax): Redesign and clean up the
1212 relaxation mechanism.
1213
1214 2000-09-21 Kazu Hirata <kazu@hxi.com>
1215
1216 * config/tc-ns32k.c: Fix formatting.
1217 * config/tc-ns32k.h: Likewise.
1218
1219 2000-09-20 Kazu Hirata <kazu@hxi.com>
1220
1221 * config/tc-m32r.c: Fix formatting.
1222 * config/tc-m32r.h: Likewise.
1223 * config/tc-m68851.h: Likewise.
1224 * config/tc-m68hc11.c: Likewise.
1225 * config/tc-m68hc11.h: Likewise.
1226 * config/tc-m88k.c: Likewise.
1227 * config/tc-mcore.c: Likewise.
1228 * config/tc-mcore.h: Likewise.
1229 * config/tc-mips.c: Likewise.
1230 * config/tc-mips.h: Likewise.
1231 * config/tc-mn10200.h: Likewise.
1232 * config/tc-mn10300.h: Likewise.
1233 * config/tc-tahoe.c: Likewise.
1234 * config/tc-tahoe.h: Likewise.
1235
1236 2000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1237
1238 * config/tc-vax.c (synthetic_votstrs): Remove jbssi and jbcci.
1239 Likewise in relaxation description comments.
1240
1241 2000-09-18 Alan Modra <alan@linuxcare.com.au>
1242
1243 * config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): Allow
1244 subtraction of two syms without emitting a relocation.
1245
1246 From David Huggins-Daines <dhd@linuxcare.com>
1247 * config/tc-hppa.c (hppa_force_relocation): Force relocations for
1248 global or weak symbols.
1249
1250 2000-09-15 Kazu Hirata <kazu@hxi.com>
1251
1252 * config/tc-h8300.h: Fix formatting.
1253 * config/tc-h8500.c: Likewise.
1254 * config/tc-h8500.h: Likewise.
1255 * config/tc-hppa.h: Likewise.
1256 * config/tc-i370.h: Likewise.
1257 * config/tc-i386.h: Likewise.
1258 * config/tc-i860.c: Likewise.
1259 * config/tc-i860.h: Likewise.
1260 * config/tc-i960.h: Likewise.
1261 * config/tc-ia64.c: Likewise.
1262 * config/tc-ia64.h: Likewise.
1263
1264 2000-09-14 Kazu Hirata <kazu@hxi.com>
1265
1266 * config/tc-a29k.c: Fix formatting.
1267 * config/tc-alpha.c: Likewise.
1268 * config/tc-arc.c: Likewise.
1269 * config/tc-arc.h: Likewise.
1270 * config/tc-arm.c: Likewise.
1271 * config/tc-arm.h: Likewise.
1272 * config/tc-avr.c: Likewise.
1273 * config/tc-avr.h: Likewise.
1274 * config/tc-tic30.c: Likewise.
1275 * config/tc-tic30.h: Likewise.
1276 * config/tc-tic54x.c: Likewise.
1277 * config/tc-tic54x.h: Likewise.
1278 * config/tc-tic80.c: Likewise.
1279 * config/tc-tic80.h: Likewise.
1280
1281 2000-09-14 Timothy Wall <twall@cygnus.com>
1282
1283 * config/tc-ia64.c (specify_resource): For PR%/PR63, note types of
1284 parallel comparisons for later use.
1285 (struct rsrc): Add parallel comparison type.
1286 (resources_match): Skip special cases of PR usage (non-conflicting
1287 parallel compares).
1288
1289 2000-09-13 Kazu Hirata <kazu@hxi.com>
1290
1291 * config/obj-ecoff.c: Fix formatting.
1292 * config/obj-elf.c: Likewise.
1293 * config/obj-elf.h: Likewise.
1294 * config/obj-evax.h: Likewise.
1295 * config/obj-generic.h: Likewise.
1296 * config/obj-hp300.c: Likewise.
1297 * config/obj-hp300.h: Likewise.
1298 * config/obj-ieee.h: Likewise.
1299 * config/obj-vms.c: Likewise.
1300 * config/obj-vms.h: Likewise.
1301
1302 2000-09-13 Anders Norlander <anorland@acc.umu.se>
1303
1304 * config/tc-mips.c (md_begin): Recognize 4Kc, 4Km and 4Kp processors.
1305 (md_parse_option): Ditto.
1306 (md_longopts): Add -mips32 option.
1307 (md_show_usage): Document new options.
1308 (mips_ip): Assemble sdbbp 20 bit 'm' args for MIPS32.
1309 (mips_ip): Assemble mfc0 with a sub-selection code.
1310 (validate_mips_insn): Handle 'H' (OP_*_SEL) and 'm' (OP_*_CODE20).
1311 (mips_cpu_to_str): New function.
1312 (mips_ip): Use mips_cpu_to_str instead of printing numeric cpu value.
1313 Use CPU_* defines instead of hardcoded numbers.
1314
1315 * doc/as.texinfo: Document new options.
1316 * doc/c-mips.texi: Ditto.
1317
1318 2000-09-12 Kazu Hirata <kazu@hxi.com>
1319
1320 * as.h: Fix formatting.
1321 * asintl.h: Likewise.
1322 * bit_fix.h: Likewise.
1323 * config/obj-aout.c: Likewise.
1324 * config/obj-aout.h: Likewise.
1325 * config/obj-bout.c: Likewise.
1326 * config/obj-bout.h: Likewise.
1327 * config/obj-coff.c: Likewise.
1328 * config/obj-coff.h: Likewise.
1329 * dwarf2dbg.h: Likewise.
1330 * expr.h: Likewise.
1331 * flonum.h: Likewise.
1332 * frags.h: Likewise.
1333 * itbl-ops.h: Likewise.
1334 * macro.h: Likewise.
1335 * read.h: Likewise.
1336 * sb.h: Likewise.
1337 * struc-symbol.h: Likewise.
1338 * subsegs.h: Likewise.
1339 * symbols.h: Likewise.
1340 * tc.h: Likewise.
1341 * write.h: Likewise.
1342
1343 2000-09-11 Kazu Hirata <kazu@hxi.com>
1344
1345 * bignum-copy.c: Fix formatting.
1346 * config/tc-i370.c: Likewise.
1347 * config/tc-i960.c: Likewise.
1348 * config/tc-m68k.c: Likewise.
1349 * ehopt.c: Likewise.
1350 * flonum-copy.c: Likewise.
1351 * flonum-konst.c: Likewise.
1352 * flonum-mult.c: Likewise.
1353 * literal.c: Likewise.
1354 * read.c: Likewise.
1355 * sb.c: Likewise.
1356 * stabs.c: Likewise.
1357 * subsegs.c: Likewise.
1358
1359 2000-09-09 Philip Blundell <philb@gnu.org>
1360
1361 * configure.in (arm*-*-uclinux*): New target.
1362 * configure: Regenerate.
1363
1364 2000-09-09 Kazu Hirata <kazu@hxi.com>
1365
1366 * input-file.c: Fix formatting.
1367 * itbl-ops.c: Likewise.
1368 * messages.c: Likewise.
1369
1370 2000-09-08 Philip Blundell <philb@gnu.org>
1371
1372 * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when
1373 offset is negative.
1374
1375 2000-09-07 H.J. Lu <hjl@gnu.org>
1376
1377 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
1378 * configure: Rebuild.
1379
1380 2000-09-07 Kazu Hirata <kazu@hxi.com>
1381
1382 * atof-generic.c: Fix formatting.
1383 * config/tc-mips.c: Likewise.
1384 * config/tc-vax.c: Likewise.
1385 * input-scrub.c: Likewise.
1386
1387 2000-09-07 Alexandre Oliva <aoliva@redhat.com>
1388
1389 * config/tc-sh.h (TARGET_FORMAT): Use sh-linux targets.
1390 * configure.in (sh-*-linux*): Added.
1391 * configure: Rebuilt.
1392
1393 2000-09-06 Kazu Hirata <kazu@hxi.com>
1394
1395 * config/tc-hppa.c: Fix formatting.
1396
1397 * ecoff.c: Fix formatting.
1398
1399 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
1400
1401 * configure: Rebuilt with new libtool.m4.
1402
1403 2000-09-05 Kazu Hirata <kazu@hxi.com>
1404
1405 * cgen.c: Fix formatting.
1406 * config/tc-ia64.c: Likewise.
1407
1408 2000-09-05 Nick Clifton <nickc@redhat.com>
1409
1410 * aclocal.m4: Regenerate.
1411 * config.in: Regenerate.
1412 * configure: Regenerate.
1413 * po/gas.pot: Regenerate.
1414
1415 2000-09-05 Hans-Peter Nilsson <hp@axis.com>
1416
1417 * config/tc-cris.c: Correct comment typos.
1418
1419 2000-09-05 Eric Christopher <echristo@cygnus.com>
1420
1421 * config/tc-mn10300.c: Cleanup.
1422 (md_pcrel_from): Enable.
1423
1424 2000-09-05 Alan Modra <alan@linuxcare.com.au>
1425
1426 * expr.c (operand): Fix a comment typo.
1427 * write.c (write_relocs): Fix a signed/unsigned warning.
1428
1429 * config/tc-hppa.c (fudge_reg_expressions): New
1430 (hppa_force_reg_syms_absolute): New.
1431 (pa_equ): Allow reg_section expressions.
1432 * config/tc-hppa.c (md_optimize_expr): Define.
1433 (hppa_force_reg_syms_absolute): Prototype.
1434
1435 * config/tc-hppa.c (pa_11_fp_reg_struct): Delete.
1436 (pa_parse_number): Pass in arg to select fp reg parsing.
1437 Return 1 to indicate format checks pass. If strict, then only
1438 accept a register or register symbol. Return value in...
1439 (pa_number): New static for pa_parse_number.
1440 (FP_REG_BASE): Define.
1441 (FP_REG_RSEL): Define.
1442 (pre_defined_registers): Apply FP_REG_BASE and FP_REG_RSEL as
1443 appropriate. White space changes.
1444 (need_pa11_opcode): Don't bother passing any params, get them from
1445 globals instead.
1446 (pa_ip): Modify all calls to pa_parse_number and need_pa11_opcode.
1447 Remove extraneous check in case 'Q'.
1448 (pa_equ): Modify call to pa_parse_number to do strict parsing. If
1449 reg, set section of resulting symbol to reg_section.
1450 (pa_parse_space_stmt): Modify call to pa_parse_number.
1451 (pa_space): Likewise.
1452
1453 * config/tc-hppa.c: (md_apply_fix): Handle vtable relocs.
1454 (hppa_force_relocation): Handle vtable relocs.
1455 (pa_vtable_entry): New.
1456 (pa_vtable_inherit): New.
1457 (md_pseudo_table): Add entries for vtable pseudos.
1458 (hppa_fix_adjustable): Reject reduction of R_PARISC_GNU_VTINHERIT
1459 and R_PARISC_GNU_VTENTRY relocs. Reject reduction of relocs
1460 against weak syms.
1461 (tc_gen_reloc): Remove ELF_ARG_RELOC_INSN code.
1462 (pa_type_args): Don't call symbol_get_bfdsym multiple times.
1463 Set STT_PARISC_MILLICODE for OBJ_ELF when encountering a
1464 millicode import.
1465 * config/obj-elf.c (obj_elf_type): Allow md_elf_symbol_type to
1466 specify a symbol type.
1467
1468 * config/tc-hppa.h: Reorganize file a little, grouping OBJ_ELF
1469 dependent things together.
1470 (md_elf_symbol_type): Define.
1471
1472 * config/tc-hppa.c (fix_new_hppa): Elide "$PIC_pcrel$0" pseudo
1473 symbol.
1474 * config/tc-hppa.h (tc_frob_symbol): Elide "$PIC_pcrel$0" here too.
1475
1476 * config/obj-elf.h (obj_elf_vtable_inherit): Declare.
1477 (obj_elf_vtable_entry): Declare.
1478
1479 * config/obj-elf.c (obj_elf_vtable_inherit): Return struct fix *
1480 and export function.
1481 (obj_elf_vtable_entry): Similarly.
1482 (elf_pseudo_table): Fix the damage with a cast.
1483
1484 2000-09-03 Richard Henderson <rth@cygnus.com>
1485
1486 * config/tc-ia64.c (emit_one_bundle): Stop collecting insns
1487 for template selection when a label is needed.
1488
1489 2000-09-02 Kazu Hirata <kazu@hxi.com>
1490
1491 * config/tc-ia64.c: Fix formatting.
1492
1493 2000-09-02 Nick Clifton <nickc@redhat.com>
1494
1495 * configure.in: Increase version number to 2.10.91.
1496 * configure: Regenerate.
1497 * aclocal.m4: Regenerate.
1498 * config.in: Regenerate.
1499 * po/gas.pot: Regenerate.
1500 * Makefile.in: Regenerate.
1501
1502 2000-09-01 Alexandre Oliva <aoliva@redhat.com>
1503
1504 * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define.
1505 * config/tc-sh.c (md_apply_fix): Map 32-bit relocations that
1506 become PC-relative to BFD_RELOC_32_PCREL. Reject 16- or 8-bit
1507 similar relocs.
1508 (sh_obj_adjustable): Return 1 for PC-relative offsets used in
1509 branches.
1510
1511 2000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
1512
1513 * config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
1514 TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define.
1515 * config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions.
1516 [OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them.
1517 (GOT_symbol): New variable.
1518 (md_undefined_symbol): Set it.
1519
1520 2000-09-01 Richard Henderson <rth@cygnus.com>
1521
1522 * config/tc-ia64.c (match): Don't inline.
1523 (extra_goodness): New.
1524 (md_begin): Prefer nop.f and nop.b for best_template.
1525
1526 2000-08-31 Kazu Hirata <kazu@hxi.com>
1527
1528 * as.c: Fix formatting.
1529 * cond.c: Likewise.
1530 * frags.c: Likewise.
1531 * macro.c: Likewise.
1532
1533 2000-08-31 Eric Christopher <echristo@cygnus.com>
1534
1535 * config/tc-mn10300.c: Cleanup and fix warnings.
1536 (md_pseudo_table): Add initializers.
1537 (md_show_usage): Cleanup.
1538 (md_parse_option): Fix warnings.
1539 (md_undefined_symbol): Fix warnings.
1540 (md_conver_frag): Fix warnings.
1541 (tc_gen_reloc): Fix warnings.
1542 (md_apply_fix3): Fix warnings.
1543 (check_operand): Fix warnings.
1544
1545 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
1546
1547 * acinclude.m4: Include libtool and gettext macros from the
1548 top level.
1549 * aclocal.m4, configure: Rebuilt.
1550
1551 2000-08-30 Mark Hatle <mhatle@mvista.com>
1552
1553 * config/tc-ppc.c (md_parse_option): Recognize -m405.
1554
1555 2000-08-31 Kazu Hirata <kazu@hxi.com>
1556
1557 * listing.c: Fix formatting.
1558
1559 2000-08-29 Kazu Hirata <kazu@hxi.com>
1560
1561 * app.c: Fix a comment typo. Fix formatting.
1562
1563 2000-08-25 J. David Anglin <dave@hiauly1.hia.nrc.ca>
1564
1565 * tc-vax.c (md_convert_frag): Correctly calculate the pc relative
1566 offset of the target destination for jmp instructions.
1567 (md_assemble): Change mode to VAX_ABSOLUTE_MODE as per comments.
1568
1569 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
1570
1571 * NEWS: Mention support for CRIS.
1572
1573 Thu Aug 24 20:41:05 2000 Denis Chertykov <denisc@overta.ru>
1574
1575 * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
1576 Sets `.lcomm' alignment to zero.
1577
1578 2000-08-23 Alexandre Oliva <aoliva@redhat.com>
1579
1580 * config/tc-i386.h <OBJ_MAYBE_ELF, OBJ_MAYBE_COFF>
1581 (TC_FIX_ADJUSTABLE): Define.
1582
1583 2000-08-23 Jim Wilson <wilson@cygnus.com>
1584
1585 * config/tc-ia64.c (output_unw_records): Set U & E flags only if
1586 unwind.personality_routine is set.
1587
1588 2000-08-23 H.J. Lu <hjl@gnu.org>
1589
1590 * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate.
1591
1592 2000-08-23 Alexandre Oliva <aoliva@redhat.com>
1593
1594 * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target
1595 environment is pe.
1596
1597 2000-08-22 H.J. Lu <hjl@gnu.org>
1598
1599 * config.in (STRICTCOFF): New for strict COFF.
1600
1601 * configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*,
1602 i386-*-go32* and i386-go32-rtems*.
1603 * configure: Rebuilt.
1604
1605 * config/obj-coff.c (obj_coff_endef): Follow the historical
1606 behavior if STRICTCOFF is not defined.
1607
1608 * doc/internals.texi: Document STRICTCOFF.
1609
1610 2000-08-22 Alexandre Oliva <aoliva@redhat.com>
1611
1612 * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined.
1613 (fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE.
1614 * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
1615 <OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define.
1616 * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
1617 <OBJ_ELF> (TC_FIX_ADJUSTABLE): Define.
1618 * config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h:
1619 Likewise.
1620
1621 2000-08-22 Eric Christopher <echristo@cygnus.com>
1622
1623 * config/tc-mn10300.c: (md_apply_fix): New function.
1624 (mn10300_force_relocation): New function.
1625 (mn10300_fix_adjustable): New function.
1626
1627 * config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define.
1628 (TC_HANDLES_FX_DONE): Define.
1629 (obj_fix_adjustable): Define.
1630 (MD_APPLY_FIX3): Define.
1631 (TC_LINKRELAX_FIXUP): Define.
1632
1633 * write.c: (TC_LINKRELAX_FIXUP): Define if not
1634 previously defined.
1635 (fixup_segment): Use TC_LINKRELAX_FIXUP.
1636
1637 * doc/internals.texi: Document TC_LINKRELAX_FIXUP.
1638
1639 2000-08-21 Jason Eckhardt <jle@cygnus.com>
1640
1641 * config/tc-i860.c (md_apply_fix3): Do not insert the immediate
1642 if the fixup resulted in a relocation.
1643
1644 2000-08-18 Nick Clifton <nickc@redhat.com>
1645
1646 * config/tc-arm.c (decode_shift): Replace as_tsktsk with as_warn.
1647 Make reference to first element of shift_names explicit.
1648
1649 2000-08-18 Alexandre Oliva <aoliva@redhat.com>
1650
1651 * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
1652 obj_fix_adjustable() and tc_fix_adjustable() to tell whether to
1653 add a symbol's address. Removed all target-specific #ifdefs that
1654 used to accomplished the same.
1655 * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1656 * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1657 * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1658 * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1659 * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
1660
1661 2000-08-17 Kazu Hirata <kazu@hxi.com>
1662
1663 * dwarf2dbg.c: Fix formatting.
1664
1665 2000-08-17 Nick Clifton <nickc@redhat.com>
1666
1667 * config/tc-arm.c (decode_shift): Allow illegal shifts by zero
1668 to be recoded as logical shift lefts by zero.
1669
1670 2000-08-16 Jim Wilson <wilson@cygnus.com>
1671
1672 * config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
1673 postincrement modified registers. Handle IA64_OPND_R3_2 addl
1674 source registers.
1675 (note_register_values): Handle IA64_OPND_R3_2 operands.
1676
1677 2000-08-16 Jason Eckhardt <jle@cygnus.com>
1678
1679 * config/tc-i860.c (md_operand): Silly typo fixed.
1680
1681 2000-08-16 Nick Clifton <nickc@redhat.com>
1682
1683 * config/tc-arm.c (struct asm_shift): Delete.
1684 (shift[]): Delete.
1685 (enum asm_shift_index): New.
1686 (struct asm_shift_properties): New.
1687 (struct asm_shift_name): New.
1688 (shift_properties[]); New.
1689 (shift_names[]); New.
1690
1691 (decode_shift): Use new structures.
1692 Issue a warning is "ROR #0" is used.
1693 Issue a warning if "ASR #0" or "LSR #0" is used.
1694
1695 (md_begin): Initialise arm_shift_hsh table from new
1696 asm_shift_name array.
1697
1698 2000-08-16 Jakub Jelinek <jakub@redhat.com>
1699
1700 * config/tc-sparc.c: Kill all warnings.
1701 (md_parse_option): Set -32/-64 for -xarch=, allow all -A archs
1702 in -xarch= as well.
1703 (md_show_usage): Update usage text.
1704
1705 2000-08-16 Nick Clifton <nickc@redhat.com>
1706
1707 * config/tc-arm.c (do_bx): Warn about "bx px" not being very
1708 useful.
1709
1710 2000-08-15 Will Cohen <wcohen@redhat.com>
1711
1712 * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined.
1713
1714 * config/tc-sh.c (md_assemble): Changed so debug_type
1715 test performed for ppi_assemble
1716 * config/tc-sh.c: Included dwarf2dbg.h.
1717 (debug_line): Defined.
1718 (md_assemble): Generates dwarf2 line info.
1719 (sh_finalize): New function. Finalize dwarf2 info.
1720 (assemble_ppi): Returns size of code generated.
1721 (build_Mytes): Returns size of code generated.
1722 (md_pseudo_table): Added "file" and "loc" psuedo ops.
1723 * config/tc-sh.h (md_end): Defined.
1724 (sh_finalize): Declared.
1725
1726 2000-08-15 Alexandre Oliva <aoliva@redhat.com>
1727
1728 * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use
1729 md_number_to_chars.
1730
1731 2000-08-14 Nick Clifton <nickc@redhat.com>
1732
1733 * config/tc-arm.c (do_bx): Allow "bx pc".
1734
1735 2000-08-14 Jim Wilson <wilson@cygnus.com>
1736
1737 * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic.
1738 (md_parse_option): Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC.
1739 (md_begin): Change assignment to md.flag to OR in the new bit.
1740
1741 2000-08-14 Mark Elbrecht <snowball3@bigfoot.com>
1742
1743 * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Set the debug
1744 flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE,
1745 C_MOU, and C_EOS.
1746
1747 2000-08-14 Jason Eckhardt <jle@cygnus.com>
1748
1749 * NEWS: Mention i860 support.
1750
1751 Mon Aug 14 11:49:12 2000 Jeffrey A Law (law@cygnus.com)
1752
1753 * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
1754
1755 2000-08-14 Andreas Schwab <schwab@suse.de>
1756
1757 * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo.
1758
1759 2000-08-11 Andreas Schwab <schwab@suse.de>
1760
1761 * doc/c-i860.texi (Opcodes for i860): Remove braces from @item
1762 argument.
1763
1764 2000-08-11 Kazu Hirata <kazu@hxi.com>
1765
1766 * expr.c: Fix formatting.
1767 * config/obj-bout.c: Likewise.
1768
1769 2000-08-10 Jason Eckhardt <jle@cygnus.com>
1770
1771 * doc/c-i860.texi: Flesh out the i860 section more.
1772
1773 2000-08-10 Kazu Hirata <kazu@hxi.com>
1774
1775 * symbols.c: Fix formatting.
1776 * expr.c: Likewise.
1777
1778 Wed Aug 9 16:28:21 EDT 2000 Diego Novillo <dnovillo@cygnus.com>
1779
1780 * tc-i386.c (md_assemble): Skip suffix check if the opcode modifier
1781 has the IgnoreSize bit set.
1782
1783 2000-08-09 Alan Modra <alan@linuxcare.com.au>
1784
1785 From Rodney Brown <RodneyBrown@mynd.com>
1786 * configure.in: Use elf on Unixware 7 (i586-sco-sysv5uw7.1.0)
1787 * configure: Regenerate.
1788
1789 2000-08-09 Kazu Hirata <kazu@hxi.com>
1790
1791 * hash.c: Fix formatting.
1792 * gasp.c: Likewise.
1793
1794 2000-08-08 Jason Eckhardt <jle@cygnus.com>
1795
1796 * config/tc-i860.h: Rework completely for BFD_ASSEMBLER.
1797 (i860_fix_info): New enum.
1798 (MD_APPLY_FIX3): Define.
1799 (WORKING_DOT_WORD): Define.
1800 (TC_HANDLES_FX_DONE): Define.
1801 (DIFF_EXPR_OK): Define.
1802 (LISTING_HEADER): Define.
1803 (TARGET_FORMAT): Select target format based on endian flag.
1804 (TARGET_BYTES_BIG_ENDIAN): Default to little endian.
1805 (target_big_endian): Add external declaration.
1806
1807 * config/tc-i860.c: All existing code reworked completely. Other
1808 new code shown below.
1809 (SYNTAX_SVR4): Define.
1810 (target_warn_expand): New variable.
1811 (md_shortopts): Declare and define (-Qy, -Qn, and -V options).
1812 (md_longopts): Declare and define with new options (-EL, -EB,
1813 and -mwarn-expand).
1814 (md_show_usage): New function.
1815 (md_operand): New function.
1816 (obtain_reloc_for_imm16): New function.
1817 (md_apply_fix3): New function.
1818 (tc_gen_reloc): New function.
1819
1820 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1821
1822 * config/tc-m68hc11.c (build_jump_insn): Make sure the
1823 2 bytes of the jump address are in the same frag.
1824 (find): Accept 68hc12 register indirect modes.
1825
1826 * NEWS: Mention 68HC11 & 68HC12 support.
1827
1828 2000-08-07 Richard Henderson <rth@cygnus.com>
1829
1830 * config/tc-ia64.c (unwind): Add prologue_mask member.
1831 (dot_vframe): Elide psp_gr record if it overlaps prologue_gr.
1832 (dot_save): Likewise for pfs_gr, rp_gr, and preds_gr.
1833 (dot_body): Clear unwind.prologue_mask.
1834 (dot_prologue): Set it. Accept a register second argument.
1835
1836 2000-08-07 Kazu Hirata <kazu@hxi.com>
1837
1838 * config/atof-ieee.c: Fix formatting.
1839 * config/atof-tahoe.c: Likewise.
1840
1841 2000-08-06 Nick Clifton <nickc@cygnus.com>
1842
1843 * config/tc-sparc.c (md_begin): Fix typo in recent formatting
1844 work.
1845
1846 * doc/as.texinfo (Pseudo Ops): Update to include descriptions
1847 of .popsection, .previous, .pushsection, .subsection,
1848 .version, .vtable_entry, .vtable_inherit and .weak.
1849
1850 2000-08-05 Kazu Hirata <kazu@hxi.com>
1851
1852 * config/tc-cris.c: Fix formatting.
1853 * config/tc-i386.c: Likewise.
1854 * config/tc-sparc.c (sparc_ip): Simplify the code.
1855
1856 2000-08-04 Kazu Hirata <kazu@hxi.com>
1857
1858 * config/tc-cris.c: Rearrange code for readability.
1859 * config/tc-d10v.c: Fix formatting.
1860 * config/tc-m32r.c: Likewise.
1861 * config/tc-sparc.c: Likewise.
1862
1863 2000-08-02 Jim Wilson <wilson@cygnus.com>
1864
1865 * config/tc-ia64.c (emit_one_bundle): Call ia64_free_opcode
1866 before ia64_find_opcode.
1867 (md_assemble): Likewise.
1868
1869 2000-08-01 Nick Clifton <nickc@cygnus.com>
1870
1871 * config/tc-arm.c (do_mrs): Fix skip of 'cpsr_all' flag.
1872 Undo some formatting fixes.
1873
1874 2000-08-01 Kazu Hirata <kazu@hxi.com>
1875
1876 * config/obj-som.c: Fix formatting.
1877 * config/obj-ieee.c: Likewise.
1878 * config/tc-arm.c: Likewise.
1879 * config/tc-v850.c: Likewise.
1880
1881 2000-08-01 Nick Clifton <nickc@redhat.com>
1882
1883 * doc/c-m68k.texi (section M680x0 Options): Turn into a table
1884 index by command line option.
1885
1886 2000-08-01 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1887
1888 * doc/c-m68k.texi (@cindex @samp{--pcrel}): Rewrite option description.
1889 (@node M68K-Branch): Rewrite to match the reality.
1890
1891 2000-07-31 Jason Eckhardt <jle@cygnus.com>
1892
1893 * doc/c-i860.texi: New file.
1894 * doc/Makefile.am (CPU_DOCS): Add c-i860.texi.
1895 * doc/Makefile.in: Regenerate.
1896 * doc/all.texi: Add I860 as relevant architecture.
1897 * doc/as.texinfo: Include i860 dependent file c-i860.texi.
1898
1899 2000-07-31 Kazu Hirata <kazu@hxi.com>
1900
1901 * config/tc-d30v.c: Fix formatting.
1902
1903 2000-07-31 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1904
1905 * config/tc-m68k.c (flag_keep_pcrel, OPTION_PCREL): Add --pcrel option.
1906 (md_convert_frag_1, md_estimate_size_before_relax): When making DBcc
1907 long emit a long branch if available instead of an absolute jump, never
1908 emit absolute jumps for anything with --pcrel.
1909
1910 * doc/c-m68k.texi: Document new command line option.
1911
1912 2000-07-29 Marek Michalkiewicz <marekm@linux.org.pl>
1913
1914 * config/tc-avr.c: Use PARAMS macro in function declarations.
1915 Don't declare md_pcrel_from_section (already in tc-avr.h).
1916 (avr_operands): Use AVR_UNDEF_P and AVR_SKIP_P macros.
1917 (avr_operand): Don't set (unsigned) op_mask to -1.
1918
1919 2000-07-28 Jason Eckhardt <jle@cygnus.com>
1920
1921 * configure.in: Add bits for i860-stardent-{sysv4, elf}*.
1922 * configure: Regenerated.
1923 * config/obj-elf.c (obj_elf_type): Recognize a fifth type
1924 of operand to the .type directive (.e.g, "type").
1925
1926 2000-07-28 Alan Modra <alan@linuxcare.com.au>
1927
1928 * as.h (warn_comment, found_comment, found_comment_file): Declare.
1929 * app.c (do_scrub_chars): Record where first comment found.
1930 * read.c (read_a_source_file): Init found_comment on entry, and
1931 notify whether comments found on exit.
1932 * config/tc-hppa.c (md_shortopts): Add "c".
1933 (md_longopts): Add warn-comment.
1934 (md_parse_option): Handle it.
1935 (md_show_usage): Show available options.
1936 * config/tc-hppa.h (WARN_COMMENTS): Define if TE_LINUX
1937
1938 Thu Jul 27 11:25:01 2000 Andrew Cagney <cagney@b1.cygnus.com>
1939
1940 * config/tc-mn10300.c (md_convert_frag): Fix printfs.
1941 (tc_gen_reloc): Add cast when assigning bfd_abs_symbol to
1942 sym_ptr_ptr
1943 (md_estimate_size_before_relax): Don't fall off end of function.
1944
1945 2000-07-27 Kazu Hirata <kazu@hxi.com>
1946
1947 * config/tc-avr.c: Fix formatting.
1948 * config/tc-ns32k.c: Likewise.
1949
1950 2000-07-27 Alan Modra <alan@linuxcare.com.au>
1951
1952 * config/tc-d10v.c (find_opcode): Remove extraneous `='.
1953
1954 2000-07-27 Kazu Hirata <kazu@hxi.com>
1955
1956 * config/tc-d10v.c: Fix formatting.
1957 * config/tc-z8k.c: Likewise.
1958 * config/tc-sparc.c: Likewise.
1959
1960 2000-07-26 Dave Brolley <brolley@redhat.com>
1961
1962 * cgen.c (queue_fixup): Declare opinfo.
1963 (gas_cgen_parse_operand): Mark unused parameters with ATTRIBUTE_UNUSED.
1964 (gas_cgen_md_operand): Ditto.
1965 (gas_cgen_md_apply_fix3): Ditto.
1966
1967 2000-07-24 Mark Elbrecht <snowball3@bigfoot.com>
1968
1969 * config/obj-coff.c (obj_frob_symbol): Don't merge
1970 labels. Don't merge if the symbol isn't constant. Return
1971 immediately if a symbol is merged.
1972
1973 2000-07-22 Alan Modra <alan@linuxcare.com.au>
1974
1975 * frags.c (frag_align): Correct absolute section alignment.
1976
1977 2000-07-20 DJ Delorie <dj@redhat.com>
1978
1979 * config/obj-coff.c (obj_frob_symbol): revert previous change,
1980 it breaks linking against DLLs.
1981
1982 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
1983
1984 * configure.in: Add CRIS support.
1985 * configure: Regenerate.
1986 * Makefile.am: (CPU_TYPES): Add cris.
1987 (CPU_OBJ_VALID) [aout]: Add cris.
1988 (MULTI_CPU_TYPES): Add cris.
1989 (MULTI_CPU_OBJ_VALID) [aout]: Add cris.
1990 [coff]: Only i386 and mips are valid.
1991 (TARGET_CPU_CFILES): Add config/tc-cris.c.
1992 (TARGET_CPU_HFILES): Add config/tc-cris.h.
1993 (MULTI_CFILES): Add config/e-crisaout.c and config/e-criself.c.
1994 Regenerate dependencies.
1995 * Makefile.in: Regenerate.
1996 * aclocal.m4: Regenerate.
1997 * as.c: Declare crisaout, criself.
1998 * config/tc-cris.h, config/tc-cris.c: New.
1999 * config/e-criself.c, config/e-crisaout.c: New.
2000 * po/POTFILES.in, po/gas.pot: Regenerate.
2001
2002 2000-07-20 Kazu Hirata <kazu@hxi.com>
2003
2004 * read.c: Fix formatting.
2005 * write.c: Fix formatting.
2006
2007 2000-07-19 H.J. Lu <hjl@gnu.org>
2008
2009 * sb.c: Include <stdlib.h> if exists for abort ().
2010
2011 2000-07-19 Alan Modra <alan@linuxcare.com.au>
2012
2013 * config/tc-hppa.c (hppa_fix_adjustable): Correct LR%/RR% comment.
2014 (arg_reloc_stub_needed): #ifdef OBJ_SOM, not #ifdef SOM.
2015 (pa_type_args): Same here.
2016
2017 2000-07-17 Mark Elbrecht <snowball3@bigfoot.com>
2018
2019 * config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't
2020 merge if the symbol isn't constant. Don't call S_SET_EXTERNAL if
2021 the storage class is already set.
2022
2023 2000-07-17 Kazu Hirata <kazu@hxi.com>
2024
2025 * config/tc-m68hc11.c: Fix formatting.
2026 * config/tc-mn10200.c: Likewise.
2027 * config/tc-mn10300.c: Likewise.
2028 * config/tc-pj.c: Likewise.
2029 * config/tc-tic80.c: Likewise.
2030 * config/tc-w65.c: Likewise.
2031
2032 2000-07-17 Frank Ch. Eigler <fche@redhat.com>
2033
2034 * expr.c (operand): Permit %bin literals if LITERAL_PREFIXPERCENT_BIN
2035 is defined.
2036
2037 2000-07-15 Ian Lance Taylor <ian@zembu.com>
2038
2039 * doc/c-mips.texi (MIPS Opts): Remove erroneous space after
2040 @code.
2041
2042 2000-07-15 Alan Modra <alan@linuxcare.com.au>
2043
2044 * config/tc-hppa.c (hppa_fix_adjustable): Use the same checks for
2045 ELF as are used for SOM (except the 32-bit reloc one) to decide
2046 whether a symbol can be reduced to a section symbol. Expand on
2047 the comment for symbols involved in LR% and RR% expressions.
2048
2049 2000-07-14 Nick Clifton <nickc@cygnus.com>
2050
2051 * config/tc-mips.c (mips_disable_float_construction): New
2052 static variable. Set to true if doubles should not be
2053 constructed by loading two single width fp registers with
2054 halves of the value.
2055 (mips_ip): Test mips_disable_float_construction.
2056 (md_longopts): Add command line switches --construct-floats
2057 and --no-construct-floats.
2058 (md_parse_option): Parse new command line options.
2059 (md_show_usage): Describe new command line options.
2060
2061 * doc/c-mips.texi: Document new command line options.
2062
2063 2000-07-13 Koundinya K <kk@ddeorg.soft.net>
2064
2065 * configure.in: Remove the test /usr/dde for mips-*-sysv4*MP*
2066 * configure: Regenerate.
2067
2068 2000-07-13 Hans-Peter Nilsson <hp@axis.com>
2069
2070 * configure.in (DEFAULT_EMULATION setting): Revert part of
2071 2000-07-01 change that set te_multi=multi unless set to tmips.
2072 * configure: Regenerate.
2073
2074 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
2075
2076 * config/obj-coff.c (coff_frob_section): Add padding to the last
2077 section when aligning it increases its size.
2078
2079 2000-07-11 Kazu Hirata <kazu@hxi.com>
2080
2081 * config/tc-tic54x.c: Fix formatting.
2082
2083 2000-07-10 Kazu Hirata <kazu@hxi.com>
2084
2085 * config/tc-h8500.c: Fix formatting.
2086 * config/tc-tic54x.c: Fix formatting.
2087
2088 2000-07-10 Alan Modra <alan@linuxcare.com.au>
2089
2090 * config/tc-hppa.c (md_apply_fix): Check fmt 12 and 22 pc-rel
2091 displacements correctly.
2092
2093 * read.h (s_abort): Add ATTRIBUTE_NORETURN.
2094
2095 2000-07-10 Ryan Bradetich <rbradetich@uswest.net>
2096
2097 * hash.c (hash_insert): Add cast to obstruct_alloc to fix
2098 warning.
2099 (hash_jam): Ditto.
2100
2101 2000-07-09 Alan Modra <alan@linuxcare.com.au>
2102
2103 From David Huggins-Daines <dhd@linuxcare.com>
2104 * config/te-hppalinux64.h: Add a new emulation.
2105 * configure.in (emulations): Add configure bits to support the
2106 64-bit Linux/parisc target.
2107 * configure: Regenerate.
2108
2109 * config/tc-hppa.c (md_parse_option): Support `-V' for ELF.
2110 (md_shortopts): Add `V' for ELF.
2111
2112 * config/tc-hppa.c (arg_reloc_stub_needed): Define as zero except
2113 when SOM or ELF_ARG_RELOC are defined.
2114 (pa_type_args): Only set symbol_arg_reloc_info when SOM or
2115 ELF_ARG_RELOC are defined.
2116 (pa_stringer_aux): Don't pa_check_current_space_and_subspace here..
2117 (pa_stringer): ..Do it here instead. Fix comment typos.
2118 (hppa_force_relocation): Cast enums to int before comparing with
2119 ints.
2120
2121 From Ryan Bradetich <rbradetich@uswest.net>
2122 * config/tc-hppa.c: Removed unneeded libbfd.h to fix macro
2123 redifinition warning.
2124 (md_apply_fix): Added cast from enum to int for fixP->fx_r_type.
2125 (hppa_force_relocation): ditto
2126 (md_apply_fix): Added cast to buf to fix warnings.
2127
2128 * config/tc-hppa.h (pa_define_label, parse_cons_expression_hppa,
2129 cons_fix_new_hppa, hppa_force_relocation): Prototype.
2130
2131 * config/tc-hppa.c (reloc_type): It's an enum for OBJ_ELF.
2132 (R_N0SEL, R_N1SEL): Define only for OBJ_SOM.
2133 (tc_gen_reloc): Make `code' a reloc_type and `codes' a
2134 reloc_type** to avoid warnings in switch.
2135 (md_apply_fix): Make insn, val signed. Zap buf_wd and read insn a
2136 little earlier instead.
2137
2138 * config/tc-hppa.c (symbol_arg_reloc_info): Define for both som
2139 and elf.
2140 (pa_type_args): Use symbol_arg_reloc_info.
2141 (struct pa_it): Make arg_reloc unsigned int.
2142 (struct hppa_fix_struct): Likewise for fx_arg_reloc.
2143 (pa_text, pa_data, pa_comm): Don't compile for TE_LINUX.
2144 (pa_code): Delete. pa_text duplicates this function.
2145 (md_pseudo_table): Call obj_elf_text for ".code" if TE_LINUX.
2146 (fix_new_hppa): Argument offset is offsetT, arg_reloc is unsigned
2147 int.
2148 (cons_fix_new_hppa): Actually change selector to e_fsel when
2149 warning about assuming so.
2150 (tc_gen_reloc): More example elf arg reloc code.
2151 (md_apply_fix): Use arg_reloc_stub_needed for elf too.
2152 (hppa_force_relocation): Likewise.
2153
2154 * config/tc-hppa.h: Use TARGET_ARCH_SIZE to select target include
2155 files.
2156 (pa_end_of_source): Prototype.
2157 (hppa_fix_adjustable): Prototype.
2158 (LABELS_WITHOUT_COLONS): Move it..
2159 * config/te-hppa.h: To here.
2160
2161 * config/te-hppa64.h: New file.
2162
2163 * config/tc-hppa.c: Use TARGET_ARCH_SIZE to select target reloc
2164 type.
2165 (md_apply_fix): Pass stdoutput to bfd_hppa_insn2fmt. Handle
2166 format -10, -16, 16 relocs.
2167 (hppa_elf_mark_end_of_function): Test for null
2168 last_call_info->start_symbol
2169
2170 * config/tc-hppa.c (pa_ip): In case 'V', pass `strict' to
2171 CHECK_FIELD, not INSERT_FIELD_AND_CONTINUE. Don't pass opcode to
2172 re_assesmble_* functions. Delete extraneous statements. Fix
2173 typos in comments.
2174 (md_apply_fix): Compare against 1048575 in case 21. Don't pass
2175 insn to re_assemble_*.
2176
2177 2000-07-08 Ulf Carlsson <ulfc@engr.sgi.com>
2178
2179 * doc/internals.texi (Expressions): Fix typo.
2180
2181 2000-07-08 Kazu Hirata <kazu@hxi.com>
2182
2183 * config/tc-sh.c: Fix formatting.
2184 * config/tc-tic54x.c: Fix formatting.
2185 * depend.c: Fix formatting.
2186 * flonum-konst.c: Likewise.
2187 * flonum-mult.c: Likewise.
2188
2189 2000-07-07 Kazu Hirata <kazu@hxi.com>
2190
2191 * config/tc-sh.c: Fix comments.
2192 * config/obj-vms.c: Fix comments.
2193 * config/tc-a29k.c: Likewise.
2194 * config/tc-alpha.c: Likewise.
2195 * config/tc-h8300.c: Likewise.
2196 * config/tc-h8500.c: Likewise.
2197 * config/tc-i370.c: Likewise.
2198 * config/tc-ia64.c: Likewise.
2199 * config/tc-m68hc11.c: Likewise.
2200 * config/tc-m68k.c: Likewise.
2201 * config/tc-mips.c: Likewise.
2202 * config/tc-ns32k.c: Likewise.
2203 * config/tc-ppc.c: Likewise.
2204 * config/tc-z8k.c: Likewise.
2205
2206 2000-07-06 Mark Elbrecht <snowball3@bigfoot.com>
2207
2208 * config/obj-coff.c (TC_COFF_SECTION_DEFAULT_ATTRIBUTES): New.
2209 Default to '(SEC_LOAD | SEC_DATA)'.
2210 (obj_coff_section) [BFD_ASSEMBLER]: Use it.
2211
2212 * doc/internals.texi (CPU Backend): Describe
2213 TC_COFF_SECTION_DEFAULT_ATTRIBUTES.
2214
2215 Thu Jul 6 17:20:58 2000 Andrew Cagney <cagney@b1.cygnus.com>
2216
2217 * as.c (parse_args): NULL terminate the long option list.
2218
2219 Tue Jul 4 14:08:28 2000 Andrew Cagney <cagney@b1.cygnus.com>
2220
2221 * config/tc-d30v.h: Include "write.h" for fixS.
2222 (d30v_start_line, md_pcrel_from_section): Add function prototypes.
2223
2224 2000-07-05 Nick Clifton <nickc@cygnus.com>
2225
2226 * config/tc-d30v.c (write_2_short): Further changes to warning
2227 messages produced when combining EITHER_BUT_PREFER_MU attributed
2228 opcodes.
2229
2230 2000-07-05 DJ Delorie <dj@redhat.com>
2231
2232 * MAINTAINERS: new
2233
2234 2000-07-04 Alexandre Oliva <aoliva@redhat.com>
2235
2236 * config/tc-arm.c (psrs): Accept combinations of flags.
2237
2238 2000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
2239
2240 * config/tc-avr.c: Change _ () to _() around all strings marked
2241 for translation (exception from the usual coding style).
2242 (avr_opt): New struct variable, how the new switches are set.
2243 (OPTION_MMCU): Define as 'm' and actually use.
2244 (md_longopts): Add -mall-opcodes, -mno-skip-bug, -mno-wrap.
2245 (show_mcu_list): New function, display the list of known MCUs.
2246 (md_show_usage): Document the new switches. Call show_mcu_list.
2247 (avr_set_arch): Change 'm' to OPTION_MMCU.
2248 (md_parse_option): Call show_mcu_list if unknown MCU specified.
2249 Handle the new switches.
2250 (avr_operands): Disable warnings for undefined combinations of
2251 operands if -mall-opcodes. Disable warnings for skipping two-word
2252 instructions if enhanced core or -mno-skip-bug.
2253 (avr_operand): Accept all addressing modes on avr1 if -mall-opcodes.
2254 (md_apply_fix3): Reject 8K wrap if >8K or -mno-wrap.
2255 (md_assemble): Accept opcodes not supported by MCU if -mall-opcodes.
2256 (avr_ldi_expression): Warn about implicit lo8().
2257 * config/tc-avr.h (md_pcrel_from_section): Add prototype.
2258
2259 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
2260
2261 * configure.in: Add entry for mips-*-sysv4*MP*
2262 * configure: Rebuild
2263 * config/tc-mips.c (mips_target_format): Return elf32-tradbigmips or
2264 elf32-tradlittlemips for traditional mips targets.
2265 * config/tc-mips.c (md_estimate_size_before_relax): Duplicate the
2266 test for Link Once sections as in adjust_reloc_syms.
2267 * config/te-tmips.h: New file for traditional mips targets. Define
2268 TE_TMIPS.
2269
2270 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
2271
2272 * config/obj-coff.c (obj_coff_setcion) [BFD_ASSEMBLER]: If the
2273 flags argument is not present, don't change an existing section's
2274 section's attributes. If the flags argument is present, warn if the
2275 attributes don't match the section's current attributes. When
2276 long section names are supported, set SEC_LINK_ONCE and
2277 SEC_LINK_DUPLICATES_DISCARD for a new .gnu.linkonce section.
2278
2279 Thu Jun 29 21:30:00 2000 Hans-Peter Nilsson <hp@axis.com>
2280
2281 * config/obj-aout.c (obj_aout_type): Do not ignore for undefined
2282 symbols; create them.
2283
2284 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com>
2285
2286 * write.c (set_segment_vma): New: Set vma and lma for a segment.
2287 (write_object_file) [BFD_ASSEMBLER && OBJ_COFF && TE_GO32]: Use it.
2288
2289 2000-06-27 Aldy Hernandez <aldyh@redhat.com>
2290
2291 * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
2292 expressions. Ignore the problem when handling 16 bit signed
2293 immediates, because the assembler will take care of the relocation
2294 later.
2295
2296 2000-06-27 Nick Clifton <nickc@cygnus.com>
2297
2298 * config/tc-d30v.c (write_2_short): Do not allow opcodes with
2299 the EITHER_BUT_PREFER_MU attribute to be combined into a reverse
2300 sequential order, and emit warning messages if the input source
2301 code contains constructs like that, or parallel constructs
2302 containing such opcodes.
2303
2304 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
2305
2306 * config/tc-avr.c (mcu_types): Rename avr4 to avr5, add avr4.
2307 Add more MCU types for avr4 and avr5. Replace at94k{10,20,40}
2308 with just at94k. Change AVR_ISA_85xx back to AVR_ISA_2xxx.
2309 (md_show_usage): Update usage message.
2310 (md_parse_option): Allow redefinition of MCU type within the
2311 same avr[1-5] bfd machine type. Show both old and new MCU type
2312 in the error message.
2313 (md_apply_fix3): Support 8K wrap if AVR_ISA_MEGA is not set.
2314 Simplify 8K wrap code.
2315
2316 2000-06-25 Kazu Hirata <kazu@hxi.com>
2317
2318 * config/obj-aout.c: Remove all uses of DEFUN.
2319 * config/obj-ieee.c: Likewise.
2320 * config/tc-sh.c: Fix comment typos.
2321 * config/tc-tahoe.c: Likewise.
2322 * config/tc-vax.c: Likewise.
2323 * config/tc-w65.c: Likewise.
2324 * config/tc-z8k.c: Likewise.
2325 * config/tc-h8300.c (build_bytes): Assemble ldmac correctly.
2326
2327 2000-06-24 DJ Delorie <dj@cygnus.com>
2328
2329 * config/tc-i386.c (md_estimate_size_before_relax): Revert
2330 more changes from Sept 1999
2331 (tc_i386_fix_adjustable): ditto
2332 (md_apply_fix3): ditto
2333
2334 2000-06-24 Frank Ch. Eigler <fche@redhat.com>
2335
2336 * cgen.c (expr_jmp_buf_p): New validity flag for expr_jmp_buf.
2337 (gas_cgen_parse_operand): Set it around expression() call.
2338 (gas_cgen_md_operand): Test for it before longjmp().
2339
2340 2000-06-24 Kazu Hirata <kazu@hxi.com>
2341
2342 * config/tc-h8500.c: Remove all uses of DEFUN.
2343 * config/tc-sh.c: Likewise.
2344 * config/tc-w65.c: Likewise.
2345 * config/tc-z8k.c: Likewise.
2346
2347 * config/tc-h8500.c: Fix typos in comments.
2348
2349 2000-06-23 Frank Ch. Eigler <fche@redhat.com>
2350
2351 * expr.c (operand): Permit $hex literals if LITERAL_PREFIXDOLLAR_HEX
2352 is defined.
2353
2354 2000-06-23 matthew green <mrg@redhat.com>
2355
2356 * expr.c (operand): Do not as_bad() if RELAX_PAREN_GROUPING is
2357 defined. Fix error message for `[' grouping.
2358
2359 2000-06-22 Kazu Hirata <kazu@hxi.com>
2360
2361 * config/tc-h8300.c: Fix formatting and comment typos.
2362
2363 2000-06-22 Timothy Wall <twall@cygnus.com>
2364
2365 * config/tc-ia64.c (note_register_values): Move premature QP
2366 notation clearing into the appropriate place.
2367
2368 2000-06-22 Alan Modra <alan@linuxcare.com.au>
2369
2370 * dep-in.sed: Escape literal `.'s on patterns. Trim off `../'
2371 first before anything else. Add bin-bugs.h, emul.h and progress.h
2372 Sort list of files as for $(OBJS) in Makefile.am.
2373
2374 * Makefile.am (DEP): grep for leading `/' in DEPA, and fail if we
2375 find one. Remake dependencies.
2376 ($(OBJS)): Add bin-bugs.h, emul.h, and progress.h Sort the list.
2377 * Makefile.in: Regenerate.
2378 * doc/Makefile.in: Regenerate.
2379
2380 * config/tc-i386.c (i386_displacement): Don't assume a constant
2381 displacement is necessarily 16 bits when in 16 bit code mode.
2382 (md_assemble): Instead size the displacement here after we know
2383 for sure that a .code16gcc operand hasn't automatically added
2384 operand size prefixes.
2385
2386 2000-06-21 H.J. Lu <hjl@gnu.org>
2387
2388 * Makefile.am: Rebuild dependency.
2389 * Makefile.in: Rebuild.
2390
2391 2000-06-21 Kazu Hirata <kazu@hxi.com>
2392
2393 * config/tc-h8300.c (parse_reg): Make the function static.
2394 (parse_exp): Likewise.
2395
2396 2000-06-20 DJ Delorie <dj@cygnus.com>
2397
2398 * config/tc-i386.c (tc_i386_fix_adjustable): Revert change from
2399 Sept 1999; RVA relocs need to be treated more like DIR32 relocs
2400 for cygwin import libraries to work properly.
2401
2402 2000-06-20 H.J. Lu <hjl@gnu.org>
2403
2404 * Makefile.am: Rebuild dependency.
2405 * Makefile.in: Rebuild.
2406 * configure: Likewise.
2407 * doc/Makefile.in: Likewise.
2408
2409 2000-06-20 Timothy Wall <twall@cygnus.com>
2410
2411 * doc/internals.texi (CPU backend): Add @itemx for
2412 TC_START_LABEL_WITHOUT_COLON.
2413 * doc/c-tic54x.texi: New.
2414 * doc/as.texinfo: Add tic54x features and include primary tic54x
2415 documentation file.
2416 * doc/all.texi: Add C54X.
2417 * doc/Makefile.am (CPU_DOCS): Add c-tic54x.texi.
2418 * doc/Makefile.in: Regenerate.
2419 * configure.in: Add tic54x and define LIBM for tic54x.
2420 * configure: Regenrate.
2421 * config/tc-tic54x.[ch]: New.
2422 * config/obj-coff.h: Add tic54x.
2423 * Makefile.am: (CPU_TYPES): Add tic54x.
2424 (TARGET_CPU_CFILES): Add 'tc-tic54x.c'.
2425 (TARGET_CPU_HFILES): Add 'tc-tic54x.h'.
2426 (as_new_LDADD): Add $(LIBM).
2427 * Makefile.in: Regenerate.
2428
2429 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
2430
2431 * doc/Makefile.am (CPU_DOCS): Added 68hc11 file.
2432 * doc/c-m68hc11.texi: Document 68HC11 and 68HC12 port.
2433 * doc/as.texinfo: Likewise.
2434
2435 * configure, Makefile.in: Regenerate.
2436 * configure.in (emulations): Recognize m6811 and m6812.
2437 * Makefile.am (CPU_TYPES, TARGET_CPU_CFILES, TARGET_CPU_HFILES):
2438 Added files for 68hc11 and 68hc12 assembler.
2439 * config/tc-m68hc11.c: Assembler for 68hc11 and 68hc12.
2440 * config/tc-m68hc11.h: Header definition for that assembler.
2441
2442 2000-06-18 Nick Clifton <nickc@redhat.com>
2443
2444 * symbols.c (resolve_symbol_value): Use bfd_octets_per_byte
2445 instead of OCTETS_PER_BYTE.
2446
2447 * config/tc-v850.c: Fix compile time warnings.
2448 * config/tc-ppc.c: Fix compile time warnings.
2449
2450 2000-06-18 H.J. Lu <hjl@gnu.org>
2451
2452 * configure.in: Don't emulate i386-pc-pe-coff with i386coff.
2453 * configure: Rebuild.
2454
2455 2000-06-17 Mark Elbrecht <snowball3@bigfoot.com>
2456
2457 * config/obj-coff.c (obj_coff_weak): Typo fix: Change BFD_ASSEMLER
2458 to BFD_ASSEMBLER.
2459
2460 2000-06-16 Nick Clifton <nickc@cygnus.com>
2461
2462 * config/tc-mips.c (md_parse_option): Accept RM5200,RM5230,
2463 RM5231, RM5261, RM5721 and RM7000 as r5000 cpu variants.
2464
2465 * doc/c-mips.texi: Document newly accepted cpu variants.
2466
2467 2000-06-15 Ulf Carlsson <ulfc@engr.sgi.com>
2468
2469 * config/tc-mips.h: Remove definition of ONLY_STANDARD_ESCAPES.
2470
2471 2000-06-13 Ulf Carlsson <ulfc@engr.sgi.com>
2472
2473 * macro.c (getstring): Make it possible to escape the quote
2474 character.
2475
2476 Tue Jun 13 20:58:28 2000 Catherine Moore <clm@redhat.com>
2477
2478 * config/tc-hppa.c (pa_export): Weak symbols can be global.
2479
2480 2000-06-13 H.J. Lu <hjl@gnu.org>
2481
2482 * configure: Regenerate.
2483
2484 2000-06-09 Alan Modra <alan@linuxcare.com.au>
2485
2486 * app.c (do_scrub_begin): Don't default lex[';'] as a line
2487 separator.
2488 * doc/internals.texi (line_separator_chars): Semicolon is no
2489 longer a default. Mention null and newline as defaults.
2490
2491 * read.c (is_end_of_line): Remove ifdef TC_HPPA.
2492
2493 * config/tc-i386.h (line_separator_chars): Explicitly mention `;'
2494 * config/tc-i860.h (line_separator_chars): Likewise.
2495 * config/tc-h8300.c (line_separator_chars): Likewise.
2496 * config/tc-i960.c (line_separator_chars): Likewise.
2497 * config/tc-m68k.c (line_separator_chars): Likewise.
2498 * config/tc-mips.c (line_separator_chars): Likewise.
2499 * config/tc-ns32k.c (line_separator_chars): Likewise.
2500 * config/tc-sparc.c (line_separator_chars): Likewise.
2501 * config/tc-vax.c (line_separator_chars): Likewise.
2502
2503 * config/tc-h8300.c (comment_chars): Use string initialiser.
2504 * config/tc-i960.c (line_comment_chars): Likewise.
2505 * config/tc-z8k.c (comment_chars, line_comment_chars,
2506 line_separator_chars): Likewise.
2507
2508 * config/tc-arm.c (line_separator_chars): Always use `;', not just
2509 for TE_LINUX.
2510
2511 2000-06-08 Nick Clifton <nickc@cygnus.com>
2512
2513 * config/tc-arm.c (cons_fix_new_arm): Assign correct reloc value
2514 for size 1 fixes.
2515
2516 2000-06-08 David O'Brien <obrien@FreeBSD.org>
2517
2518 * configure.in (VERSION): Update to show this is the CVS mainline.
2519
2520 2000-06-08 Matthew Jacob <mjacob@feral.com>
2521
2522 * config/tc-alpha.c (md_undefined_symbol): Properly understand that
2523 $at is the integer register $r28, vs. both $r28 and the floating
2524 point register $f28.
2525
2526 2000-06-08 James E. Wilson <wilson@cygnus.com>
2527
2528 * config/tc-ia64.c (generate_unwind_image): Call ia64_flush_insns.
2529 (dot_endp): Don't call ia64_flush_insns.
2530 (emit_one_bundle): Don't delete prologue/body records from
2531 unwind_record list in first loop. Rewrite second loop to account for
2532 this.
2533
2534 2000-06-07 David Mosberger <davidm@hpl.hp.com>
2535
2536 * config/tc-ia64.c: Add missing prototypes.
2537 (generate_unwind_image): Cast argument to output_unw_records call.
2538
2539 Wed Jun 7 22:44:14 2000 Denis Chertykov <denisc@overta.ru>
2540
2541 * config/tc-avr.c (avr_operand): fix the formatting of the comment.
2542
2543 Wed Jun 7 21:26:15 2000 Denis Chertykov <denisc@overta.ru>
2544
2545 * config/tc-avr.c (AVR_ISA_???): moved to include/opcode/avr.h
2546 (REGISTER_P): likewise.
2547 (avr_opcodes): uses include/opcode/avr.h
2548 (avr_operand): enable ld r,Z or st r,Z for at90s1200.
2549
2550 2000-06-04 Alan Modra <alan@linuxcare.com.au>
2551
2552 * read.c (is_end_of_line): No ';' for TC_HPPA. Add missing
2553 initializers too.
2554
2555 2000-06-03 H.J. Lu <hjl@gnu.org>
2556
2557 * read.c (is_end_of_line): Put back `;'.
2558
2559 2000-06-03 Alan Modra <alan@linuxcare.com.au>
2560
2561 * config/tc-i386.c (md_shortopts): Remove 'm', add 'q' to non-elf.
2562
2563 2000-06-01 Alan Modra <alan@linuxcare.com.au>
2564
2565 * expr.c (operand): Test is_end_of_line outside switch to catch
2566 line separator chars that are also operators.
2567 (operator): Return O_illegal for line separator chars.
2568
2569 * read.c (is_end_of_line): Use 1 instead of 99. Don't set `;'
2570 entry (or `!' entry for TC_HPPA).
2571
2572 * config/tc-arm.c (my_get_float_expression): Cast to unsigned char
2573 before indexing is_end_of_line. Remove redundant check for '\0'.
2574 (fp_op2): Likewise.
2575 * config/tc-h8500.c (md_assemble): Likewise.
2576 * config/tc-mcore.c (md_assemble): Likewise.
2577 * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
2578 (md_atof): Likewise
2579
2580 * config/tc-m88k.c (s_bss): Cast to unsigned char before indexing
2581 is_end_of_line.
2582 * config/tc-mcore.c (mcore_cons): Likewise.
2583 (mcore_float_cons): Likewise.
2584 (mcore_stringer): Likewise.
2585 * config/tc-tic30.c (tic30_find_parallel_insn): Likewise.
2586
2587 2000-06-01 Scott Bambrough <scottb@netwinder.org>
2588
2589 * config/tc-arm.c (do_mrs): Allow SPSR_BIT to be set correctly.
2590
2591 2000-05-29 Nick Clifton <nickc@cygnus.com>
2592
2593 * config/tc-sh.c: Fix compile time warning messages.
2594
2595 * config/tc-mips.c: Fix compile time warning messages.
2596
2597 2000-05-29 Philip Blundell <philb@gnu.org>
2598
2599 * doc/as.texinfo: Update copyright dates.
2600 (Local Labels): Delete misplaced mention of ARM.
2601 * NEWS: Mention ARM ELF support.
2602
2603 2000-05-27 Alexandre Oliva <aoliva@cygnus.com>
2604
2605 * config/tc-mn10300.c (md_assemble): Copy size to real_size before
2606 it is modified, and use the real_size to compute the frag address
2607 for dwarf2 line info.
2608
2609 2000-05-27 Alan Modra <alan@linuxcare.com.au>
2610
2611 * Makefile.am (DEP, DEP1, dep, dep-in, dep-am): Use a better sed
2612 line-matching scheme to cope with automake moving variables around.
2613 ($(TARG_CPU_O)): Remove dependency on TARG_CPU_DEP_@target_cpu_type@
2614 * Makefile.in: Regenerate.
2615
2616 2000-05-26 Jakub Jelinek <jakub@redhat.com>
2617
2618 * config/tc-sparc.c (sparc_relax): New.
2619 (md_longopts): Add -relax and -no-relax options.
2620 (md_parse_options, md_show_usage): Likewise.
2621 (md_apply_fix3): Optimize tail call into branch always if possible.
2622
2623 Thu May 4 15:27:07 2000 Donald Lindsay <dlindsay@cygnus.com>
2624
2625 * config/tc-d10v.c (write_2_short, parallel_ok, md_assemble,
2626 d10v_cleanup) implement Mitsubishi's newly explained branch-packing
2627 rules, with warning when a GAS statement specifies a packing that
2628 will result in an instruction being squashed.
2629 Added typdef packing_type and enumerals, changed various integer
2630 literals to use the enumerals.
2631
2632 2000-05-24 David Mosberger <davidm@hpl.hp.com>
2633
2634 * config/tc-ia64.c (dot_restorereg_p): New function.
2635 (md_pseudo_table): Add restorereg.p.
2636 (output_X3_format): Fix typo: record type should be UNW_X3, not UNW_X1.
2637 (output_X4_format): Fix typo: record type should be UNW_X4, not UNW_X2.
2638
2639 * config/tc-ia64.h (unw_record_type): Add unwabi.
2640 (unw_r_record): Rename member MASK to GRMASK. Add sub-structure
2641 called MASK with members for imask, and the masks produced by
2642 fr_mem, gr_mem, br_mem, and frgr_mem.
2643 (unw_p_record): Add members ABI and CONTEXT.
2644 (unw_x_record): Add member AB.
2645 * config/tc-ia64.c (enum reg_symbol): Add REG_PSP and REG_PRIUNAT
2646 as pseudo-register for use during unwind info generation.
2647 (AR_PFS, AR_LC): New macros.
2648 (enum pseudo_type): Add PSEUDO_FUNC_REG to permit declaring registers
2649 whose names start with an at sign (as in "@priunat").
2650 (pseudo_func): Add "svr4", "hpux", "nt" constants and "priunat"
2651 register.
2652 (unwind_list, unwind_tail, current_unwind_entry, proc_start,
2653 proc_end, unwind_info, personality_routine): Consolidate into
2654 "unwind" structure to reduce offset-table use. Add member
2655 NEXT_SLOT_NUMBER to track the slot number for the next instruction
2656 to be emitted.
2657 (output_R1_format, output_R3_format, output_P3_format,
2658 output_P6_format): Initialize R with zero to reduce compiler warnings.
2659 (output_P7_format): Ditto. Add `default' branch to switch
2660 statement to reduce compiler warnings.
2661 (output_P8_format, output_B1_format, output_B4_format): Ditto.
2662 (output_P4_format): Rename 2nd & 3rd arg to IMASK and IMASK_SIZE.
2663 (format_ab_reg): Rename from format_a_b_reg. Merge A and B args
2664 into single argument.
2665 (output_X1_format, output_X3_format): Initialize R with zero to reduce
2666 compiler warnings. Merge A and B args into single argument.
2667 (output_X2_format, output_X4_format): Remove unused variable R. Merge
2668 A and B args into single argument.
2669 (free_record): Removed (wasn't used).
2670 (free_list_records): Also free imasks in prologue records.
2671 (output_prologue, output_prologue_gr): Initialize mask bits to zero.
2672 (output_spill_mask): Remove.
2673 (output_unwabi): New function.
2674 (output_epilogue, output_label_state, output_copy_state): Call
2675 alloc_record.
2676 (output_spill_psprel, output_spill_sprel, output_spill_psprel_p,
2677 output_spill_sprel_p, output_spill_reg, output_spill_reg_p): Add AB
2678 argument.
2679 (process_one_record): New locals FR_MASK and GR_MASK. Ignore
2680 gr_mem, fr_mem, br_mem, and frgr_mem records and instead emit them
2681 as part of handling the prologue records. Emit region's imask if
2682 we have one. Handle unwabi, epilogue, label_state, copy_state,
2683 spill_psprel, spill_sprel, spill_reg, spill_psprel_p,
2684 spill_sprel_p, and spill_reg_p records.
2685 (set_imask, count_bits, slot_index): New function.
2686 (fixup_unw_records): Fix region size computation. Handle
2687 epilogue, spill_reg, spill_sprel, spill_psprel, spill_reg_p,
2688 spill_sprel_p, and spill_psprel_p records. Merge mask bits of
2689 frgr_mem, fr_mem, gr_mem, br_mem on a per-region basis and
2690 set_imask accordingly. Update imask for gr_gr, and br_gr records.
2691 (convert_expr_to_ab_reg, convert_expr_to_xy_reg): New function.
2692 (dot_save): Use manifest constants for applicaton registers.
2693 Handle REG_PR and REG_PRIUNAT.
2694 (dot_restore): Don't just ignore it.
2695 (dot_restorereg): New function..
2696 (generate_unwind_image): Ensure unwind info is a multiple of eight
2697 bytes, not just four bytes.
2698 (dot_handlerdata, dot_unwentry): Demand empty rest of line.
2699 (dot_altrp): Don't just ignore it.
2700 (dot_savemem): New function. Replaces dot_savesp() and
2701 dot_savepsp(). Use manifest constants for applicaton registers.
2702 Handle REG_PR and REG_PRIUNAT.
2703 (dot_savef): Simplify.
2704 (dot_saveb): Support generation of br_gr.
2705 (dot_spillreg, dot_spillmem, dot_spillreg_p, dot_spillmem_p,
2706 dot_label_state, dot_copy_state): New function.
2707 (dot_unwabi): Don't just ignore it.
2708 (md_pseudo_table): Add restorereg, spillreg, spillsp, spillpsp,
2709 spillreg.p, spillsp.p, spillpsp, label_state, copy_state,
2710 unwabi, vframesp, and vframepsp. Fix typo alprp->altrp.
2711 (emit_one_bundle): Set slot number for prologue/body records
2712 *before* emitting the first insn.
2713 (emit_one_bundle): Set UNWIND.NEXT_SLOT_NUMBER.
2714 (md_begin): Declare "psp" pseudo-register.
2715 (md_operand): Handle PSEUDO_FUNC_REG. Fix printing of error message
2716 so we don't get segfault.
2717 (output_psp_sprel): Output sp/psp relative offsets as 4-byte word
2718 counts as required per SW Conventions manual
2719 (output_rp_psprel, output_rp_sprel, output_pfs_psprel,output_pfs_sprel,
2720 output_preds_psprel, output_preds_sprel, output_spill_base,
2721 output_unat_psprel, output_unat_sprel, output_lc_psprel,
2722 output_lc_sprel, output_fpsr_psprel, output_fpsr_sprel,
2723 output_priunat_psprel, output_priunat_sprel, output_bsp_psprel,
2724 output_bsp_sprel, output_bspstore_psprel, output_bspstore_sprel,
2725 output_rnat_psprel, output_rnat_sprel, output_spill_psprel,
2726 output_spill_sprel, output_spill_psprel_p, output_spill_sprel_p):Ditto.
2727 (dot_vframe): Implement.
2728 (dot_vframesp, dot_vframepsp): New function.
2729
2730 Tue May 23 00:57:05 2000 Hans-Peter Nilsson <hp@axis.com>
2731
2732 * configure.in (i386-*-freebsd a.out entry): Quote properly.
2733 * configure: Regenerate.
2734
2735 2000-05-23 Alan Modra <alan@linuxcare.com.au>
2736
2737 * config/tc-i386.c (md_assemble): Pass jump reloc in fr_var...
2738 (md_estimate_size_before_relax): so we can use it here instead of
2739 old kludges. Localise vars to blocks. Comment.
2740
2741 * frags.c (frag_new): Update fr_var comments.
2742 * frags.h (struct frag): Ditto.
2743
2744 2000-05-22 Richard Henderson <rth@cygnus.com>
2745
2746 * config/tc-ia64.c (FUNC_PC_RELATIVE): New.
2747 (pseudo_func): Add pcrel.
2748 (operand_match): Handle IA64_OPND_TGT64.
2749 (build_insn): Likewise.
2750 (md_begin): Initialize pseudo_func[FUNC_PC_RELATIVE].
2751 (ia64_gen_real_reloc_type): Handle FUNC_PC_RELATIVE.
2752 (fix_insn): Handle all three 64-bit relocation types.
2753
2754 Mon May 22 22:43:32 2000 Hans-Peter Nilsson <hp@axis.com>
2755
2756 * obj.h (struct format_ops): New members begin, app_file,
2757 s_set_other, s_set_desc, s_get_type, s_set_type,
2758 separate_stab_sections, init_stab_section.
2759
2760 * config/obj-multi.h: Update GPL notice to v2.
2761 (obj_begin): New.
2762 (obj_app_file): New.
2763 (S_SET_SIZE): Test s_set_size for NULL before calling.
2764 (S_SET_ALIGN): Similar for s_set_align.
2765 (S_SET_OTHER): New.
2766 (S_SET_DESC): New.
2767 (S_GET_TYPE): New.
2768 (S_SET_TYPE): New.
2769 (SEPARATE_STAB_SECTIONS): New.
2770 (INIT_STAB_SECTION): New.
2771 (EMIT_SECTION_SYMBOLS): New.
2772 (AOUT_STABS) [OBJ_MAYBE_AOUT]: Define.
2773
2774 * config/obj-elf.h: Update GPL notice to v2.
2775 Mention that this file is included from obj-multi.h.
2776 (obj_begin): Wrap definition in ifndef.
2777 (elf_file_symbol): Constify declaration.
2778 (obj_app_file): Ditto.
2779 (SEPARATE_STAB_SECTIONS, INIT_STAB_SECTION, OBJ_PROCESS_STAB):
2780 Wrap in ifndef SEPARATE_STAB_SECTIONS.
2781
2782 * config/obj-elf.c (elf_s_set_other): New.
2783 (elf_file_symbol): Constify argument.
2784 (elf_separate_stab_sections): New.
2785 (elf_init_stab_section): New.
2786 (elf_format_ops): Add new members. Remove comma at end.
2787
2788 * config/obj-ecoff.c (ecoff_separate_stab_sections): New.
2789 (ecoff_format_ops): Add new fields. Remove comma at end.
2790 Mention inconsistency for emit_section_symbols.
2791
2792 * config/obj-coff.h (c_dot_file_symbol): Constify declaration.
2793
2794 * config/obj-coff.c (c_dot_file_symbol): Constify argument.
2795 (coff_separate_stab_sections): New.
2796 (coff_format_ops): Add new members.
2797
2798 * config/obj-aout.c (obj_aout_sec_sym_ok_for_reloc): New.
2799 (obj_aout_s_set_other): New.
2800 (obj_aout_s_set_desc): New.
2801 (obj_aout_s_get_type): New.
2802 (obj_aout_s_set_type): New.
2803 (obj_aout_separate_stab_sections): New.
2804 (aout_format_ops): New members added. Use obj_aout_process_stab,
2805 not 0. Use obj_aout_sec_sym_ok_for_reloc, not 0.
2806 (obj_aout_frob_symbol): Add ATTRIBUTE_UNUSED to args as
2807 appropriate.
2808 (obj_aout_line, obj_aout_weak, obj_aout_type): Ditto.
2809
2810 2000-05-22 Alan Modra <alan@linuxcare.com.au>
2811
2812 * config/tc-i386.c (tc_i386_fix_adjustable): Prevent adjustment
2813 for OBJ_MAYBE_ELF too. Use S_IS_EXTERNAL instead of S_IS_EXTERN.
2814 (md_estimate_size_before_relax): Ensure jumps to weak and
2815 externally visible symbols are relocatable.
2816
2817 Sat May 20 16:41:55 2000 Hans-Peter Nilsson <hp@axis.com>
2818
2819 * stabs.c (aout_process_stab): Make global.
2820 (s_desc): Add ATTRIBUTE_UNUSED to args as appropriate.
2821 * read.h (aout_process_stab): Declare.
2822
2823 * configure.in (EMULATIONS) [i386aout, i386coff, i386elf]:
2824 Generalize to *aout, *coff *elf.
2825 * configure: Regenerated.
2826
2827 * doc/internals.texi (Object format backend): Say
2828 SEPARATE_STAB_SECTIONS needs to be nonzero, not just defined.
2829
2830 * Makefile.am (TARG_ENV_HFILES): Delete te-multi.h.
2831 * Makefile.in: Regenerated.
2832
2833 2000-05-19 Catherine Moore <clm@cygnus.com>
2834
2835 * cgen.h (GAS_CGEN_MAX_FIXUPS): Check if already defined.
2836
2837 2000-05-18 Alan Modra <alan@linuxcare.com.au>
2838
2839 * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
2840 instruction to reflect change in re_assemble_*.
2841
2842 Thu May 18 10:52:14 2000 Jeffrey A Law (law@cygnus.com)
2843
2844 * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
2845 build PA64 ELF tools.
2846 * configure: Rebuilt.
2847
2848 2000-05-17 Alan Modra <alan@linuxcare.com.au>
2849
2850 * Makefile.am: Regenerate dependencies.
2851 * Makefile.in: Regenerate.
2852
2853 2000-05-15 Nick Clifton <nickc@cygnus.com>
2854
2855 * config/tc-arm.c (struct asm_psr): Add boolean field
2856 distinguishing between CSPR and SPSR. Rename 'number' field
2857 to 'field'.
2858 (psrs): Rearrange contents to match new asm_psr structure.
2859 (arm_psr_parse): Move next to psr_required_here. Make it
2860 return an asm_psr structure.
2861 (psr_required_here): Use asm_psr structure returned by
2862 arm_psr_parse.
2863 (do_msr): Reorganise to allow psr_required_here to be called
2864 only once.
2865 (md_undefined_name): Mark 'name' parameter as unused, since
2866 the COFF target does not use it.
2867
2868 2000-05-14 David O'Brien <obrien@FreeBSD.org>
2869
2870 * config/te-386bsd.h: Clean up comments to adhere to the GNU coding
2871 standards.
2872 * config/te-aux.h: Likewise.
2873 * config/te-dpx2.h: Likewise.
2874 * config/te-go32.h: Likewise.
2875 * config/te-hp300.h: Likewise.
2876 * config/te-hppa.h: Likewise.
2877 * config/te-i386aix.h: Likewise.
2878 * config/te-ic960.h: Likewise.
2879 * config/te-interix.h: Likewise.
2880 * config/te-nbsd532.h: Likewise.
2881 * config/te-pc532mach.h: Likewise.
2882 * config/te-ppcnw.h: Likewise.
2883 * config/te-psos.h: Likewise.
2884 * config/te-sparcaout.h: Likewise.
2885 * config/te-sun3.h: Likewise.
2886 * config/te-sysv32.h: Likewise.
2887
2888 2000-05-14 Alan Modra <alan@linuxcare.com.au>
2889
2890 * config/tc-h8300.c (do_a_fix_imm): Don't rely on `short' being 16
2891 bits. Instead explicitly mask and sign extend. Do the 8 bit mask
2892 and sign extend without an if statement.
2893 (build_bytes): Likewise.
2894
2895 2000-05-14 Kazu Hirata <kazu@hxi.com>
2896
2897 * config/tc-h8300.c (do_a_fix_imm): Output a reloc for no
2898 X_add_symbol L_32 case.
2899
2900 2000-05-14 David O'Brien <obrien@FreeBSD.org>
2901
2902 * config/te-freebsd.h: New file.
2903
2904 2000-05-13 Alan Modra <alan@linuxcare.com.au>
2905
2906 * asintl.h (gettext, dgettext, dcgettext, textdomain,
2907 bindtextdomain): Replace defines with those from intl/libgettext.h
2908 to quieten gcc warnings.
2909
2910 * NEWS: Mention x86 .arch and -q.
2911
2912 * config/tc-i386.c (quiet_warnings): New.
2913 (md_assemble): Use quiet_warnings.
2914 (md_parse_option): Set quiet_warnings from -q.
2915 (md_show_usage): Mention -q, delete -m.
2916 (flag_do_long_jump): Delete.
2917 (md_parse_option): Remove -m.
2918 (md_show_usage): Remove -m.
2919 (md_create_long_jump): Remove useless flag_do_long_jump code.
2920
2921 * as.c (parse_args): In case OPTION_DEFSYM, use a valueT to hold
2922 the symbol value, and use bfd_scan_vma if BFD_ASSEMBLER.
2923
2924 2000-05-13 Alan Modra <alan@linuxcare.com.au>
2925 Alexander Sokolov <robocop@netlink.ru>
2926
2927 * doc/c-i386.texi (i386-Arch): New section.
2928 (i386-Syntax): Mention .intel_syntax and .att_syntax.
2929
2930 * config/tc-i386.c (cpu_arch_name, cpu_arch_flags): New.
2931 (smallest_imm_type): Use smallest opcode for shift by one if cpu
2932 architecture has been given and is not 486.
2933 (set_cpu_arch): New.
2934 (md_pseudo_table): Add .arch.
2935 (md_assemble): Warn if cpu architecture has been given and an
2936 unsupported instruction.
2937
2938 * config/tc-i386.h (SMALLEST_DISP_TYPE): Delete.
2939 Move operand_types bit defines after relevant template field.
2940 (template): Add cpu_flags.
2941 (Cpu*): Define.
2942 (arch_entry): New.
2943
2944 2000-05-12 Alexandre Oliva <aoliva@cygnus.com>
2945
2946 * config/tc-mn10300.h (md_end): Define.
2947 (mn10300_finalize): Declare.
2948 * config/tc-mn10300.c: Include dwarf2dbg.h.
2949 (debug_line): Define.
2950 (md_assemble): Generate dwarf2 line info.
2951 (mn10300_finalize): New function. Finalize dwarf2 info.
2952
2953 2000-05-11 Ulf Carlsson <ulfc@engr.sgi.com>
2954
2955 * config/tc-mips.c (md_estimate_size_before_relax): Use the
2956 external version of the relocation for weak symbols.
2957
2958 2000-05-08 David Mosberger <davidm@hpl.hp.com>
2959
2960 * config/tc-ia64.c (output_P7_format, case mem_stack_f): Output fixed
2961 frame size in units of 16 bytes, as required per SW Conventions manual.
2962 (output_unw_records): Output info-block header as a dword to get
2963 byte-order right.
2964
2965 2000-05-08 Alan Modra <alan@linuxcare.com.au>
2966
2967 * as.h: #include "file", not <file> on files from ../include.
2968 (as_abort, as_fatal): Add ATTRIBUTE_NORETURN.
2969 * config/tc-m68k.c (m68k_ip): Fix signed/unsigned warnings.
2970 (md_convert_frag): Add ATTRIBUTE_UNUSED.
2971 (tc_coff_symbol_emit_hook): Ditto.
2972 (OPTCOUNT): Cast to int to avoid compiler warning.
2973 (md_begin): Fix signed/unsigned warnings.
2974
2975 2000-05-08 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2976
2977 * config/tc-m68k.c (md_convert_frag_1): Abort if we end up in the
2978 ABRANCH LONG case for a conditional branch on a 68000.
2979 (md_estimate_size_before_relax): Likewise. Also handle
2980 flag_short_refs correctly for ABRANCH, BCC68000, and DBCC.
2981 (m68k-ip: case ABSL): Relax absolute references to 16-bit
2982 PC-relative on all CPUs.
2983 (md_estimate_size_before_relax): Likewise.
2984
2985 2000-05-04 Alan Modra <alan@linuxcare.com.au>
2986
2987 * as.c (parse_args): Just mention current year in printed
2988 copyright message.
2989
2990 2000-05-03 J.T. Conklin <jtc@redback.com>
2991
2992 * config/tc-ppc.c (pre_defined_registers): Add entries for vector
2993 unit registers.
2994 (md_parse_option): Recognize -m7400.
2995
2996 2000-05-03 Ian Lance Taylor <ian@zembu.com>
2997
2998 * config/atof-ieee.c (gen_to_words): When adding carry back in,
2999 don't permit lp to become less than the words array.
3000
3001 2000-05-03 Rodney Brown <RodneyBrown@pmsc.com>
3002
3003 config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
3004 Fix little-endian case.
3005
3006 2000-05-03 David O'Brien <obrien@NUXI.com>
3007
3008 * as.c (parse_args): Update copyright.
3009
3010 2000-05-03 Mark Elbrecht <snowball3@bigfoot.com>
3011
3012 * gas/config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4
3013 for the .bss section too.
3014
3015 2000-05-02 Alan Modra <alan@linuxcare.com.au>
3016
3017 * configure.in: Set em=linux for hppa-*-linux.
3018 * configure: Regenerate.
3019 * doc/Makefile.in: Regenerate with correct automake.
3020
3021 * frags.c (frag_grow): Sanity check chunk_size.
3022
3023 * config/obj-elf.h: #include "bfd.h" not <bfd.h>
3024 * config/obj-som.h: Likewise.
3025 * config/obj-ieee.h: Likewise.
3026
3027 * config/tc-hppa.h: Test BFD_ARCH_SIZE, not BFD64.
3028
3029 * config/tc-hppa.c (log2): Only compile when OBJ_SOM.
3030 (md_pseudo_table): Fully initialise OBJ_ELF cases.
3031 (fix_new_hppa): Add ATTRIBUTE_UNUSED to args as appropriate.
3032 (pa_ip): low_sign_unext now returns via function value. Use
3033 re_assemble_* instead of dis_assemble_* and
3034 INSERT_FIELD_AND_CONTINUE combination. Don't call sign_unext
3035 unnecessarily.
3036 (md_convert_frag): Add ATTRIBUTE_UNUSED to args as appropriate.
3037 (md_section_align, md_parse_option, md_show_usage,
3038 md_undefined_symbol, pa_align, pa_block, pa_brtab, pa_try,
3039 pa_callinfo, pa_code, pa_comm, pa_end, pa_enter, pa_entry,
3040 pa_exit, pa_export, pa_import, pa_label, pa_leave, pa_level,
3041 pa_origin, pa_param, pa_proc, pa_procend, pa_space, pa_spnum,
3042 pa_version, pa_compiler, pa_copyright, pa_data, pa_fill, pa_lsym,
3043 pa_text): Likewise.
3044 (md_apply_fix): Change type of new_val to offsetT. Delete w1, w2,
3045 w, resulti. Add insn, val. Move bfd_get_32 and bfd_put_32
3046 outside of switch. Correct mask and shifting errors in case 10
3047 and case -11. In case 21, compare against signed range to suit
3048 hppa_field_adjust changes. In case 12, use re_assemble_12. In
3049 case 17 and case 22, use offsetT variable to properly check range.
3050 Use re_assemble_* here too.
3051 (evaluate_absolute): Change type of value to offsetT. Call
3052 hppa_field_adjust to do the work for us.
3053 (pa_parse_cmpb_64_cmpltr): Delete save_s.
3054 (pa_parse_cmpib_64_cmpltr): Ditto.
3055 (pa_build_unwind_subspace): Delete unused var subseg. Change type
3056 of i to unsigned int.
3057 (pa_type_args): Conditionally declare symbol if OBJ_SOM.
3058 (pa_end_of_source): Return type is void.
3059
3060 Mon May 1 08:54:23 2000 Catherine Moore <clm@cygnus.com>
3061
3062 * macro.c (macro_expand_body): Don't prepend macro number with zeroes.
3063
3064 Mon May 1 14:19:39 2000 Denis Chertykov <denisc@overta.ru>
3065
3066 * config/tc-avr.c: ATTRIBUTE_UNUSED added to the necessary places.
3067 More comments added.
3068 (md_begin): Removed "construct symbols for each register name".
3069 Because register names conflicts with GCC generated function
3070 names.
3071 (avr_operand): Now constant numbers can be used as a register
3072 identifiers (0 as r0, 31 as r31).
3073 (md_assemble): use skip_space () before parsing instruction
3074 operands.
3075
3076 2000-05-01 Alan Modra <alan@linuxcare.com.au>
3077
3078 * configure.in: Set bfd_gas=yes on i386-*-pe and i386-*-nt* to
3079 ensure all pe targets use bfd. Remove unnecessary bfd_gas=yes on
3080 arm-*-netbsd* and arm-*-wince as this is set for all arm*.
3081 * configure: Regenerate.
3082
3083 2000-04-29 Andreas Jaeger <aj@suse.de>
3084
3085 * as.h: Correctly check GCC version.
3086
3087 2000-04-26 David O'Brien <obrien@FreeBSD.org>
3088
3089 * doc/as.1: Fix unbalanced brackets.
3090
3091 * config/tc-i386.c (comment_chars): Don't use '/' as comment start if
3092 TE_FreeBSD.
3093 (line_comment_chars): Set to '/' if TE_FreeBSD.
3094
3095 Tue Apr 25 11:02:02 2000 Jeffrey A Law (law@cygnus.com)
3096
3097 * configure.in: Configury support for PA64 (currently disabled).
3098 * configure: Rebuilt.
3099
3100 2000-04-25 Machida Hiroyuki <machida@sm.sony.co.jp>
3101
3102 * config/tc-mips.c (s_change_sec): Use record_alignment, not
3103 bfd_set_section_alignment.
3104
3105 2000-04-25 Alan Modra <alan@linuxcare.com.au>
3106
3107 * config/tc-i386.c (offset_in_range): Ensure shift counts are less
3108 than 32.
3109
3110 2000-04-24 Nick Clifton <nickc@cygnus.com>
3111
3112 * doc/c-arm.texi (ARM Directives): Document behaviour of .align 0.
3113 * doc/as.texinfo (Align): Include arm and strongarm in list of
3114 targets that have the second form of the behaviour of the .align
3115 directive.
3116
3117 2000-04-24 Mark Klein <mklein@dis.com>
3118
3119 * obj-som.c: Terminate obj_pseudo_table.
3120
3121 Mon Apr 24 15:21:11 2000 Clinton Popetz <cpopetz@cygnus.com>
3122
3123 * as.c (parse_args): Allow md_parse_option to override -a listing
3124 option.
3125 * config/obj-coff.c (add_lineno): Change type of offset parameter
3126 from "int" to "bfd_vma."
3127 * config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
3128 (ppc_mach, ppc_subseg_align, ppc_target_format): New.
3129 (ppc_change_csect): Align correctly for XCOFF64.
3130 (ppc_machine): New function, which discards "ppc_machine" line.
3131 (ppc_tc): Cons for 8 when code is 64 bit.
3132 (md_apply_fix3): Don't check operand->insert. Handle 64 bit
3133 relocations.
3134 (md_parse_option): Handle -a64 and -a32.
3135 (ppc_xcoff64): New.
3136 * config/tc-ppc.h (TARGET_MACH): Define.
3137 (TARGET_FORMAT): Move to function.
3138 (SUB_SEGMENT_ALIGN): Use ppc_subseg_align.
3139
3140 Sun Apr 23 16:45:45 2000 Denis Chertykov <denisc@overta.ru>
3141
3142 * config/tc-avr.c: New AVR_ISA_ defined.
3143 (md_assemble): Handle opcodes with optional operands (lpm,elpm).
3144 (avr_operand): Handle 'a', 'v' and 'z' constraint letters needed
3145 for `fmul', `movw' and `lpm R,Z' instructions.
3146 (avr_operands): Warn if current opcode is a two-word instruction
3147 and previous opcode was cpse/sbic/sbis/sbrc/sbrs.
3148 (avr_opcodes): New commands added.
3149 (REGISTER_P): Check 'a' and 'v' constraint letters.
3150 (mcu_types): New MCU added.
3151
3152 2000-04-22 Timothy Wall <twall@cygnus.com>
3153
3154 * config/tc-ia64.c (pseudo_func[]): Add new "nat" entry equivalent
3155 to "natval".
3156 (operand_match): Conditionally insert default bit values for IMMU9.
3157
3158 2000-04-14 Matthew Green <mrg@cygnus.com>
3159
3160 * configure.in: Add NetBSD/sparc ELF and NetBSD/sparc64 support.
3161 * configure: Rebuilt.
3162
3163 Fri Apr 21 14:29:43 2000 Jeffrey A Law (law@cygnus.com)
3164 Jason Eckhardt <jle@cygnus.com>
3165
3166 * config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
3167
3168 * config/tc-hppa.c (CHECK_ALIGN): New macro.
3169 Added handling of new operand types l,y,&,fe,fE,fx.
3170
3171 Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
3172 David Mosberger <davidm@hpl.hp.com>
3173 Timothy Wall <twall@cygnus.com>
3174 Andrew MacLeod <amacleod@cygnus.com>
3175 Jim Wilson <wilson@cygnus.com>
3176
3177 * Makefile.am (CPU_TYPES): Add ia64.
3178 (TARGET_CPU_CFILES): Add config/tc-ia64.c.
3179 (TARGET_CPU_HFILES): Add config/tc-ia64.h.
3180 * Makefile.in: Rebuild.
3181 * app.c (do_scrub_chars): Handle DOUBLESLASH_COMMENTS.
3182 * configure: Rebuild.
3183 * configure.in: Recognize ia64 as cpu type. Set bfd_gas.
3184 (ia64-*-elf*, ia64-*-linux-gnu*): New targets.
3185 * expr.c (expr): Handle md_optimize_expr.
3186 * read.c (LEX_HASH): Add comment.
3187 * config/tc-ia64.c, config/tc-ia64.h: New files.
3188
3189 2000-04-21 Richard Henderson <rth@cygnus.com>
3190
3191 * config/tc-d30v.c (write_2_short): Disregard opcode1->ecc when
3192 bundling a non-delayed branch type instruction.
3193
3194 2000-04-20 Alexandre Oliva <aoliva@cygnus.com>
3195
3196 * config/tc-mn10300.c (HAVE_AM30): Define.
3197 (md_assemble): Use it.
3198
3199 2000-04-19 Alan Modra <alan@linuxcare.com.au>
3200
3201 * config/obj-elf.c (obj_elf_change_section): Check for changed
3202 section attributes.
3203
3204 * Makefile.am: (CPU_MULTI_VALID): Remove.
3205 (MULTI_CPU_TYPES): Define.
3206 (MULTI_CPU_OBJ_VALID): Define.
3207 (DEPTC): Use the above.
3208 (DEPOBJ): Same here.
3209 (DEP2): And here.
3210 Regenerate dependencies.
3211 * Makefile.in: Regenerate.
3212
3213 2000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3214
3215 * Makefile.am (YACC, LEX): Get them from configure.
3216
3217 2000-04-18 H.J. Lu (hjl@gnu.org)
3218
3219 * config/tc-i386.c (offset_in_range): Use addressT instead of
3220 bfd_vma for non-bfd assemblers.
3221
3222 2000-04-17 Alan Modra <alan@linuxcare.com.au>
3223
3224 * config/tc-i386.c (offset_in_range): Sign extend val so BFD64
3225 doesn't give spurious errors.
3226
3227 2000-04-14 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3228
3229 * as.h (SEEK_SET): Define if undefined.
3230
3231 2000-04-13 Alan Modra <alan@linuxcare.com.au>
3232
3233 * config/tc-arm.c (md_apply_fix3): Don't use UL suffix on
3234 constants, and don't assume offsetT is 32 bits.
3235
3236 2000-04-12 Andrew Cagney <cagney@b1.cygnus.com>
3237
3238 * config/tc-d10v.h: Include "write.h" to get definition of fixS.
3239 (md_pcrel_from_section): Add prototype.
3240 (d10v_fix_adjustable): Add prototype.
3241 (d10v_force_relocation): Replace 'struct fix' with 'fixS'.
3242
3243 * config/tc-d10v.c (md_apply_fix3): Add paren around &&.
3244
3245 2000-04-12 Nick Clifton <nickc@cygnus.com>
3246
3247 * config/tc-d10v.c (find_opcode): Correctly calculate position of
3248 symbol in frag chain.
3249
3250 2000-04-10 Alan Modra <alan@linuxcare.com.au>
3251
3252 * config/tc-i386.c (fits_in_signed_byte): Change arg to offsetT.
3253 (fits_in_unsigned_byte, fits_in_unsigned_word): Ditto.
3254 (fits_in_signed_word, smallest_imm_type): Ditto.
3255 (md_assemble): Use an offsetT var to hold offsetT values, not a
3256 long.
3257 (offset_in_range): New.
3258 (md_assemble): Use it.
3259 (md_convert_frag): Change type of target_address, opcode_address,
3260 and displacement_from_opcode_start to offsetT.
3261 (md_create_short_jump): Change type of offset to offsetT.
3262 (md_create_long_jump): Ditto.
3263 (md_apply_fix3): Use -4, not 0xfffffffc for BFD_RELOC_386_PLT32.
3264 (md_chars_to_number): Remove.
3265 (output_invalid): Remove duplicate prototype.
3266
3267 2000-04-09 Nick Clifton <nickc@cygnus.com>
3268
3269 * Makefile.am (CPU_TYPES): Add 'avr'.
3270 (TARGET_CPU_CFILES): Add 'tc-avr.c'.
3271 (TARGET_CPU_HFILES): Add 'tc-avr.h'.
3272
3273 * Makefile.in: Regenerate.
3274
3275 * doc/as.texinfo: Add M32R documentation.
3276
3277 Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
3278
3279 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
3280 --enable-build-warnings option.
3281 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
3282 * Makefile.in, configure: Re-generate.
3283
3284 2000-04-07 Nick Clifton <nickc@cygnus.com>
3285
3286 * config/tc-arm.c (md_apply_fix3): Treat BFD_RELOC_ARM_PCREL_BLX
3287 in the same way as BFD_RELOC_ARM_PCREL_BRANCH, and
3288 BFD_RELOC_THUMB_PCREL_BLX lie BFD_RELOC_THUMB_PCREL_BRANCH.
3289 (tc_gen_reloc): Accept BFD_RELOC_{ARM|THUMB}_PCREL_BLX.
3290 (arm_force_relocation): Force relocations for
3291 BFD_RELOC_{ARM|THUMB}_PCREL_BLX as well.
3292
3293 Wed Apr 5 22:26:32 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
3294
3295 * config/tc-sh.c (get_operands): There's no third operand if the
3296 first operand is an immediate.
3297
3298 Wed Apr 5 22:07:19 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
3299
3300 * config/tc-sh.c (immediate): Delete.
3301 (sh_operand_info): Add immediate member.
3302 (parse_reg): Use A_PC for pc.
3303 (parse_exp): Add second argument 'op'. All callers changed.
3304 (parse_at): Expect pc to be coded as A_PC.
3305 Use immediate field in *op.
3306 (insert): Add fourth argument 'op'. All callers changed.
3307 (build_relax): Add second argument 'op'. All callers changed.
3308 (insert_loop_bounds): New function.
3309 (build_Mytes): Remove DISP_4.
3310 Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT.
3311 (assemble_ppi): Use immediate field in *operand.
3312 (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
3313 (md_apply_fix): Likewise.
3314 (tc_gen_reloc): Likewise. Check for a pcrel BFD_RELOC_SH_LABEL.
3315
3316 Wed Apr 5 06:35:45 2000 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3317
3318 * config/tc-sparc.c (sparc_ip): Avoid string pasting.
3319
3320 Tue Apr 4 19:27:50 2000 Hans-Peter Nilsson <hp@axis.com>
3321
3322 * internals.texi (CPU backend): Document
3323 TC_CHECK_ADJUSTED_BROKEN_DOT_WORD.
3324
3325 2000-04-04 Alan Modra <alan@linuxcare.com.au>
3326
3327 * po/gas.pot: Regenerate.
3328
3329 * as.c (show_usage): Restore translated part of bug string.
3330 * gasp.c (show_usage): Likewise.
3331
3332 * Makefile.am (MKDEP): Use gcc -MM rather than ../mkdep.
3333 (DEP): Quote when passing vars to sub-make. Use "mv -f" rather
3334 than move-if-change.
3335 (DEP1): Modify for "gcc -MM".
3336 (DEPTC): Likewise.
3337 (DEPOBJ): Likewise.
3338 (DEP2): Likewise.
3339 (CLEANFILES): Add DEPTCA, DEPOBJA, DEP2a, DEPA.
3340 Update dependencies.
3341 * Makefile.in: Regenerate.
3342
3343 2000-04-03 Alexandre Oliva <aoliva@cygnus.com>
3344
3345 * config/tc-mn10300.c (md_pseudo_table): Use constant names.
3346 (md_begin): Likewise.
3347 (HAVE_AM33): New macro.
3348 (md_assemble): Use it. Match r_regs and xr_regs only if
3349 HAVE_AM33.
3350
3351 2000-04-03 Alan Modra <alan@linuxcare.com.au>
3352
3353 * as.h: #include "bin-bugs.h"
3354 * as.c (show_usage): Use REPORT_BUGS_TO.
3355 * gasp.c: #include "bin-bugs.h"
3356 (show_usage): Use REPORT_BUGS_TO.
3357
3358 * config/tc-sparc.c (md_show_usage): Add a trailing newline.
3359
3360 Mon Apr 3 13:56:03 2000 Hans-Peter Nilsson <hp@axis.com>
3361
3362 * write.c (write_object_file) [! WORKING_DOT_WORD]: If defined,
3363 call TC_CHECK_ADJUSTED_BROKEN_DOT_WORD for each word after
3364 adjustments.
3365
3366 2000-04-03 Alan Modra <alan@linuxcare.com.au>
3367
3368 * config/tc-i386.c (i386_immediate): Don't assume a constant
3369 immediate is necessarily 16 bits when in 16 bit code mode.
3370 (md_assemble): Instead set guess_suffix here after we have checked
3371 registers.
3372
3373 2000-04-02 Richard Henderson <rth@cygnus.com>
3374
3375 * config/tc-d30v.c (check_range): Allow signed or unsigned 32-bit
3376 quantities. Correct right shift sign extension.
3377 (build_insn): Make `number' unsigned long. Mask top 6 bits of
3378 32-bit value when shifting into place.
3379
3380 2000-04-01 Ian Lance Taylor <ian@zembu.com>
3381
3382 * app.c: Add ATTRIBUTE_UNUSED as needed.
3383 * config/tc-ppc.c: Likewise.
3384 (ppc_size): Make unsigned long.
3385 (ppc_insert_operand): Add casts to avoid warnings.
3386
3387 2000-03-31 Nick Clifton <nickc@cygnus.com>
3388
3389 * config/tc-d10v.h (md_flush_pending_output): Define.
3390
3391 2000-03-29 Nick Clifton <nickc@cygnus.com>
3392
3393 * config/tc-sh.h (SEG_NAME): New macro: return the name of a
3394 segment. Works for both BFD_ASSEMBLER and others.
3395 (SUB_SEGMENT_ALIGN): Use SEG_NAME.
3396
3397 2000-03-29 Nick Clifton <nickc@cygnus.com
3398
3399 * config/tc-arm.c (tinsns): Add "bal" instruction pattern.
3400
3401 2000-03-28 Alan Modra <alan@linuxcare.com.au>
3402
3403 * listing.c (LISTING_LHS_WIDTH): Default depends on
3404 LISTING_WORD_SIZE.
3405 (LISTING_LHS_WIDTH_SECOND): Default to LISTING_LHS_WIDTH.
3406
3407 2000-03-27 Ian Lance Taylor <ian@zembu.com>
3408
3409 * config/tc-sh.c (md_show_usage): Use backslash before newline in
3410 string literal.
3411
3412 2000-03-27 Alan Modra <alan@linuxcare.com.au>
3413
3414 * config/tc-avr.h (TC_HANDLES_FX_DONE): Define.
3415
3416 * config/tc-avr.c (mcu_types): Add missing initialiser.
3417 (md_pcrel_from_section): Add prototype.
3418 (avr_operand): Remove redundant test of unsigned < 0.
3419 (avr_cons_fix_new): Ensure exp_mod_pm zero on function exit.
3420
3421 2000-03-27 Denis Chertykov <denisc@overta.ru>
3422
3423 * config/tc-avr.c: New file for AVR support.
3424 * config/tc-avr.h: Likewise.
3425 * configure.in: Add AVR support.
3426 * configure: Regenerate.
3427
3428 2000-03-26 Timothy Wall <twall@cygnus.com>
3429
3430 * gasp.c (macro_op): Add new argument to check_macro call.
3431 Macro structure definitions moved to macro.h
3432 * sb.h: Add argument to prototype for input_scrub_include_sb.
3433 * input-scrub.c (input_scrub_include_sb): Allow disabling of sb
3434 nesting checks with an additional flag.
3435 (struct input_save): Add flag to indicate whether current sb
3436 should be checked for proper macro/conditional nesting.
3437 (input_scrub_push/pop): Save/restore nest check flag.
3438 (input_scrub_next_buffer): Ditto. Also call end of macro hook if
3439 defined.
3440 * macro.c (check_macro): Allow caller to retrieve parsed macro
3441 information if a pointer is provided. This information may be
3442 used by the new macro hooks.
3443 * macro.h: Update prototype for check_macro. Macro struct
3444 definitions moved here from macro.c/gasp.c.
3445 * read.c (read_a_source_file): Add parameter to check_macro call,
3446 and pass macro info to the macro hook, if defined.
3447 (input_scrub_insert_line): New. Allow insertion of a line of
3448 characters into the input stream.
3449 (input_scrub_insert_file): New. Allow insertion of an arbitrary
3450 file into the input stream.
3451 (s_include): Use input_scrub_insert_file.
3452 * internals.texi: Document new macro hooks.
3453 * as.h: New prototypes added.
3454
3455 2000-03-26 Alan Modra <alan@linuxcare.com.au>
3456
3457 * config/tc-i386.c: Don't start any as_bad or as_warn message with
3458 an initial capital letter.
3459 (i386_index_check): Reindent.
3460
3461 2000-03-19 Nick Clifton <nickc@cygnus.com>
3462
3463 * config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
3464 relative branches.
3465
3466 2000-03-17 Thomas de Lellis <tdel@windriver.com>
3467
3468 * config/tc-arm.c (do_t_adr): Flag "adr Rd,label"
3469 instruction operand bad if Rd > 7 when generating
3470 thumb instructions. Prevents for example,
3471 "adr r12,label" from silently failing and generating
3472 the wrong instruction.
3473
3474 2000-03-17 Nick Clifton <nickc@cygnus.com>
3475
3476 * config/tc-arm.c (md_apply_fix3): Handle same-section relocations
3477 that have a destingation >= 0x400000.
3478 Fix compile time warning messages.
3479
3480 Thu Mar 16 23:45:16 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
3481
3482 * config/tc-sh.c (md_begin): When encountering insn that are
3483 not supported by the current arch, only change the name if
3484 its contents are the same as prev_name.
3485 (get_specific): If the the architecture doesn't match, fail.
3486
3487 Thu Mar 16 21:18:13 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
3488
3489 * config/tc-sh.c (IDENT_CHAR): Define.
3490 (parse_reg): Use it instead of isalnum. Put r[0..7]_bank operand
3491 matching back where it came from.
3492
3493 Thu Mar 16 20:58:10 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
3494
3495 * config/tc-sh.c (md_show_usage): Add description of -dsp.
3496
3497 2000-03-15 Jonathan Larmour <jlarmour@redhat.co.uk>
3498
3499 * config/tc-sh.c (parse_reg): Match r[0..7]_bank operands before
3500 normal operands.
3501
3502 2000-03-15 Kazu Hirata <kazu@hxi.com>
3503
3504 * config/tc-h8300.c: Add ATTRIBUTE_UNUSED as appropriate.
3505
3506 Mon Mar 13 22:02:59 2000 Hans-Peter Nilsson <hp@axis.se>
3507
3508 * expr.c (operand) [case 'f']: When testing if '0f' can start a
3509 floating-point-number, make sure 'f' is in FLT_CHARS.
3510
3511 Sat Mar 11 00:01:39 2000 Hans-Peter Nilsson <hp@axis.se>
3512
3513 * read.c (TC_IMPLICIT_LCOMM_ALIGNMENT): New default-definition.
3514 (s_lcomm_internal): Use it.
3515 * doc/internals.texi (CPU backend): Document it.
3516 * config/obj-evax.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Set to 2**3
3517 bytes.
3518
3519 2000-03-10 Geoffrey Keating <geoffk@cygnus.com>
3520
3521 * config/tc-mips.c (mips_ip): Don't put stuff in .rodata
3522 when embedded-pic.
3523
3524 * config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
3525 implementation doesn't have special handling for switch
3526 statements.
3527 (macro_build): Allow for code in sections other than .text.
3528 (macro): Likewise.
3529 (mips_ip): Likewise.
3530 (md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
3531 Don't perform relocs if we will be outputting them.
3532 (tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
3533 relocations. Allow BFD_RELOC_16_PCREL_S2 relocs when
3534 embedded-pic.
3535
3536 2000-03-09 Catherine Moore <clm@cygnus.com>
3537
3538 * config/tc-m32r.c (m32r_fix_adjustable): Look up the
3539 relocation type based on the entry in the fixup structure.
3540 Put S_IS_EXTERN processing back in.
3541
3542 2000-03-08 H.J. Lu (hjl@gnu.org)
3543
3544 * Makefile.am (install-exec-tooldir): Depend on
3545 install-exec-bindir for parallel make.
3546 * Makefile.in: Regenerated.
3547
3548 2000-03-06 Nick Clifton <nickc@cygnus.com>
3549
3550 * config/tc-m32r.c (struct md_longopts): Add -m32r command line
3551 switch.
3552 (md_parse_option): Parse -m32r command line switch - disable m32rx
3553 compatability.
3554 (md_show_usage): Document new option.
3555
3556 * doc/Makefile.am (CPU_DOCS): Add c-m32r.texi.
3557 * doc/Makefile.in: Regenerate.
3558 * doc/c-m32r.texi (M32R-Opts): Document new command line switch.
3559
3560 2000-03-02 Michael Meissner <meissner@redhat.com>
3561
3562 * config/tc-d30v.c (check_range): Remove code that incorrectly
3563 sign extended values where bits < 32.
3564
3565 2000-03-02 H.J. Lu (hjl@gnu.org)
3566
3567 * configure.in: Support --enable-targets=all on ia32.
3568 * configure: Regenerated.
3569
3570 2000-03-01 Nick Clifton <nickc@cygnus.com>
3571
3572 * gasp.c (do_align): Remove bogus check of alignment value.
3573
3574 2000-02-27 Thomas de Lellis <tdel@windriver.com>
3575
3576 * config/obj-elf.c (elf_frob_symbol): Remove code which when
3577 TC_PPC was defined forced the type of a symbol with no other type
3578 to be BSF_OBJECT.
3579
3580 2000-02-27 Hans-Peter Nilsson <hp@axis.com>
3581
3582 * doc/internals.texi (CPU backend): Mention that
3583 line_separator_chars do not break up comments. Fix typos for
3584 LEX_AT and LEX_NAME descriptions. Document operands for
3585 TC_EQUAL_IN_INSN, md_operand and md_section_align. Correct
3586 description of md_create_short_jump usage. Document argument for
3587 md_undefined_symbol.
3588
3589 2000-02-27 Jakub Jelinek <jakub@redhat.com>
3590
3591 * config/tc-sparc.c (OPTION_UNDECLARED_REGS): New option.
3592 (md_parse_option): Handle it.
3593 (md_show_usage): Document it.
3594
3595 2000-02-27 Ian Lance Taylor <ian@zembu.com>
3596
3597 * config/tc-alpha.c (md_assemble): Accept `1' and `9' in an
3598 opcode, for the instruction `pal19'. From Andrea Arcangeli
3599 <andrea@suse.de>.
3600
3601 2000-02-26 Alan Modra <alan@spri.levels.unisa.edu.au>
3602
3603 * config/tc-i386.c (i386_immediate): Move constant operand sizing
3604 from here..
3605 (md_assemble): To here, before template operands are matched.
3606 Also ensure a constant immediate is sign extended when we know the
3607 size is at most 16 bits. This is to catch cases like "add
3608 $0xffc0,%ax" where we don't know the size, and thus that the
3609 immediate can be represented as Imm8S until after parsing the
3610 register operand.
3611 (i386_displacement): Similarly sign extend 16 bit constant
3612 displacements.
3613 (md_assemble): Relax 16-bit jump constant range check to suit sign
3614 extended displacements.
3615
3616 2000-02-26 Andreas Jaeger <aj@suse.de>
3617
3618 * doc/c-mips.texi (MIPS Opts): Fix typo in last patch.
3619
3620 2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
3621
3622 * config/tc-i386.c (md_assemble): Don't swap intersegment jmp and
3623 call operands when intel_syntax.
3624 (intel_float_operand): Return 2 for "fi...".
3625 (i386_operand_modifier): Change "DWORD PTR" test to suit above.
3626 Return SHORT_MNEM_SUFFIX for "WORD PTR" when "fi...". Revert
3627 earlier "SHORT" change.
3628 (md_assemble): When determining suffix from Regs, exclude
3629 InOutPortReg.
3630
3631 2000-02-24 Nick Clifton <nickc@cygnus.com>
3632
3633 * configure: Add arm-wince, mips-pe and sh-pe targets.
3634 * configure: Regenerate.
3635
3636 * config/obj-coff.h (COFF_WITH_PE): Define for mips-pe and
3637 sh-pe targets.
3638 (TARGET_FORMAT): Set to "pe-shl" for the sh-pe target and to
3639 "pe-mips" for the mips-pe target.
3640
3641 * config/tc-arm.c (insns): Change displacement encoded in BL
3642 and B instructions if the target port is arm-wince.
3643 (do_ldst): Do not bias the relocation offset if the target
3644 port is arm-wince.
3645 (md_pcrel_from): Add in missing relocation offset bias if the
3646 target os arm-wince.
3647
3648 * config/tc-mips.c (mips_target_format): Support COFF flavour.
3649 (md_begin): Disable -G support for mips-pe target.
3650 (md_apply_fix): Treat BFD_RELOC_RVA reloc as BFD_RELOC_32.
3651 * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Add support for
3652 COFF flavour.
3653
3654 * config/tc-sh.c (md_begin): sh-pe target is little endian.
3655 * config/tc-sh.h (SUB_SEGMENT_ALIGN): If using a BFD
3656 assembler, just set the alignment to 4.
3657
3658 * config/te-wince-pe.h: New file for WinCE targets. Define
3659 TE_WINCE.
3660
3661 2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
3662
3663 * config/tc-i386.c (md_assemble): Swap segments too for intel mode
3664 string instructions.
3665 (i386_operand_modifier): Set i.suffix = WORD_MNEM_SUFFIX for SHORT.
3666 (i386_intel_memory_operand): After finding a segment override,
3667 check again for no `[' before looking for a displacement. Bomb if
3668 more than one displacement rather than silently discarding the
3669 second and subsequent ones. Free strings malloc'd by
3670 build_displacement_string.
3671
3672 2000-02-24 Catherine Moore <clm@cygnus.com>
3673
3674 * config/obj-som.c (obj_pseudo_table): Add "weak".
3675 (obj_som_weak): New routine.
3676
3677 2000-02-24 Alan Modra <alan@spri.levels.unisa.edu.au>
3678
3679 * config/tc-i386.c (union i386_op): New.
3680 (struct _i386_insn): Delete disps[], imms[], regs[]. Add op[].
3681 Throughout file replace occurences of disps[n], imms[n], regs[n]
3682 with equivalent op[n].disps, op[n].imms, op[n].regs. Simplify
3683 intel mode operand swapping. Add assert in regKludge and
3684 fake_zero_displacement code. Test i.types[n] when outputting
3685 displacements and immediates. Combine output of Disp16 with
3686 Disp32.
3687 (md_assemble): Don't try to fix broken UNIXWARE_COMPAT opcodes
3688 when in intel mode by (not) reversing fsub and fdiv operands
3689 before the template search. This fails for single operand
3690 shorthand forms of the instruction, and if UNIXWARE_COMPAT is
3691 undefined. Instead fix the base_opcode after we've found the
3692 template. Move base_opcode xor with found_reverse_match from
3693 opcode output code to before this fix so we test for the correct
3694 opcodes.
3695 (md_assemble): Don't use strcmp when deciding to ignore the suffix
3696 check in intel mode. Instead compare opcodes.
3697
3698 * config/tc-i386.h (TC_RELOC): Delete.
3699 * config/tc-i386.c (TC_RELOC): Delete. Replace usage of TC_RELOC
3700 with equivalent call to reloc.
3701
3702 * as.h (flag_m68k_mri): Move declaration after target include, and
3703 only declare when TC_M68K defined. Define as zero otherwise.
3704 (LABELS_WITHOUT_COLONS, NO_PSEUDO_DOT): If undefined, define as 0.
3705 * app.c (scrub_m68k_mri): Declare only when TC_M68K defined.
3706 Define as zero otherwise.
3707 (do_scrub_begin): Use m68k_mri parameter only when TC_M68K defined.
3708 (struct app_save): Declare scrub_m68k_mri only when TC_M68K.
3709 (app_push, app_pop): Save scrub_m68k_mri only when TC_M68K.
3710 (do_scrub_chars): Use LABELS_WITHOUT_COLONS directly rather than
3711 testing whether defined.
3712 * cond.c (ignore_input): Use NO_PSEUDO_DOT directly.
3713 * expr.c (operand): #ifdef unused case labels when TC_M68K undefined.
3714 * read.c: Use LABELS_WITHOUT_COLONS and NO_PSEUDO_DOT directly
3715 rather than testing whether defined.
3716 (s_mri): Set flag_m68k_mri only when TC_M68K defined.
3717 (parse_mri_cons): Declare and use only when TC_M68K.
3718 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define as 1.
3719 * config/tc-m68k.h (NO_PSEUDO_DOT): Define as 1.
3720 * config/tc-m88k.h (NO_PSEUDO_DOT): Define as 1.
3721
3722 * NEWS: Mention IBM 370 support.
3723
3724 2000-02-23 Richard Henderson <rth@cygnus.com>
3725
3726 * config/tc-i386.c (md_assemble): When swapping operands for
3727 intel_syntax, assume everything that's not Imm or Disp is a
3728 register.
3729
3730 2000-02-23 Linas Vepstas <linas@linas.org>
3731
3732 * config/tc-i370.c, config/tc-i370.h: New files.
3733 * Makefile.am: Add support for Linux/IBM 370.
3734 * configure.in: Likewise.
3735 * app.c (do_scrub_begin): Don't lex single quote when TC_I370.
3736 * config/obj-elf.c: Include elf/i370.h
3737 (obj_elf_section): Don't do anything special for flag_mri if TC_I370.
3738
3739 * Makefile.in: Regenerate.
3740 * configure: Regenerate.
3741
3742 * doc/c-i370.texi: New file.
3743 * doc/all.texi: Include it.
3744 * doc/as.texinfo: And here.
3745 * doc/Makefile.am(CPU_DOCS): Add c-i370.texi.
3746 * doc/Makefile.in: Regenerate.
3747
3748 2000-02-19 Michael Meissner <meissner@redhat.com>
3749
3750 * config/tc-d30v.c (parallel_ok): Use FLAG_NOT_WITH_ADDSUBppp to
3751 determine if an instruction can be used in parallel with an ADDppp
3752 or SUBppp instruction.
3753
3754 2000-02-22 Andrew Haley <aph@cygnus.com>
3755
3756 * doc/c-mips.texi (MIPS Opts): Document -mgp32 and -mgp64.
3757
3758 1999-12-30 Andrew Haley <aph@cygnus.com>
3759
3760 * config/tc-mips.c (mips_gp32): New variable.
3761 (macro_build) Use mips_gp32.
3762 (mips_ip): Ditto.
3763 (md_longopts): Add "-mgp32" and "-mgp64".
3764 (md_parse_option): Add OPTION_GP32 and OPTION_GP64.
3765
3766 (OPTION_M7900): Change offset
3767 (OPTION_NO_M7900): Ditto.
3768
3769 2000-02-22 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3770
3771 * config/obj-coff.c (add_lineno): Accept non-positive lineno with
3772 warning, and bump it to 1.
3773
3774 2000-02-22 Ian Lance Taylor <ian@zembu.com>
3775
3776 From Brad Lucier <lucier@math.purdue.edu>:
3777 * dwarf2dbg.c (print_stats): Add cast to force printf argument to
3778 match format.
3779
3780 2000-02-21 Catherine Moore <clm@cygnus.com>
3781
3782 * config/tc-mips.c (MF_HILO_INSN): Define.
3783 (mips_7000_hilo_fix): Declare.
3784 (append_insn): Conditionally insert nops after an mfhi/mflo insn.
3785 (md_parse_option): Check for 7000_HILO_FIX options.
3786 (OPTION_M7000_HILO_FIX): Define.
3787 (OPTION_NO_M7000_HILO_FIX): Define.
3788 * doc/c-mips.texi (-mfix7000): Describe.
3789
3790 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
3791
3792 * listing.c (print_lines): Remove unused variable `end'.
3793
3794 * config/tc-i386.c (md_assemble): Use `reloc()' to select reloc
3795 type for JumpInterSegment output. Use enum bfd_reloc_code_real for
3796 reloc_type when BFD_ASSEMBLER.
3797 (md_estimate_size_before_relax): Use enum bfd_reloc_code_real for
3798 reloc_type when BFD_ASSEMBLER. Move common code out of switch
3799 statement and quell signed vs. unsigned comparison warning.
3800
3801 2000-02-18 Nick Clifton <nickc@cygnus.com>
3802
3803 * config/tc-d10v.c (find_opcode): Add a symbol's value to
3804 the computed frag offset, rather than overwriting it.
3805
3806 Thu Feb 17 00:11:08 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
3807
3808 * config/tc-sh.c ("elf/sh.h"): Include.
3809 (sh_dsp, valid_arch, reg_x, reg_y, reg_efg): New static variables.
3810 (md.begin): Initialize target_arch.
3811 Only include opcodes in has table that match selected architecture.
3812 (parse_reg): Recognize register names for sh-dsp.
3813 (parse_at): Recognize post-modify addressing.
3814 (get_operands): The leading space is now optional.
3815 (get_specific): Remove FDREG_N support. Add support for sh-dsp
3816 arguments. Update valid_arch.
3817 (build_Mytes): Add support for SDT_REG_N.
3818 (find_cooked_opcode): New function, broken out of md_assemble.
3819 (assemble_ppi, sh_elf_final_processing): New functions.
3820 (md_assemble): Use find_cooked_opcode and assemble_ppi.
3821 (md_longopts, md_parse_option): New option: -dsp.
3822 * config/tc-sh.h (elf_tc_final_processing): Define.
3823 (sh_elf_final_processing): Declare.
3824
3825 Fri Feb 11 14:21:51 2000 Jeffrey A Law (law@cygnus.com)
3826
3827 * config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
3828 the unwinder subspace. Save the current seg/subseg before creating
3829 the new seg/subseg.
3830
3831 2000-02-10 Nick Clifton <nickc@cygnus.com>
3832
3833 * config/tc-mcore.c (INST_BYTE0): Redefine to handle big and
3834 little endian targets.
3835 (INST_BYTE1): Redefine to handle big and little endian
3836 targets.
3837 (cpu_type): New type: Select between M340 and M210.
3838 (parse_psrmod): New function: Parse the PSRCLR and PSRSET
3839 instructions of the M340.
3840 (md_assemble): Add support for the MULSH and OPSR classes of
3841 instructions.
3842 (md_atof): Add support for little endian targets.
3843 (md_parse_option): Add support for -EL, -EB and -mcpu command
3844 line switches.
3845 (md_convert_frag): Add support for little endian targets.
3846 (md_apply_fix3): Add support for little endian targets.
3847 (md_number_to_chars): Add support for little endian targets.
3848
3849 2000-02-10 Timothy Wall <twall@redhat.com>
3850
3851 * read.c (read_a_source_file): If TC_START_LABEL_WITHOUT_COLON is
3852 defined, use it to verify the symbol just read should be a label.
3853
3854 2000-02-10 Timothy Wall <twall@redhat.com>
3855
3856 * app.c (do_scrub_chars): Handle "||" for parallel instructions
3857 when DOUBLEBAR_PARALLEL is defined. Avoid stripping whitespace
3858 around colons when KEEP_WHITE_AROUND_COLON is defined.
3859 * doc/internals.texi (CPU backend): Document DOUBLEBAR_PARALLEL
3860 and KEEP_WHITE_AROUND_COLON.
3861
3862 2000-02-08 Timothy Wall <twall@redhat.com>
3863
3864 * read.c (s_rept): Call do_repeat, which abstracts the repeat
3865 logic.
3866 (do_repeat): New. Abstract repeat logic so that a "break" can be
3867 implemented.
3868 (end_repeat): New. Provide support for a "break" out of the
3869 repeat loop.
3870 * read.h: Add prototypes for new functions.
3871
3872 2000-02-08 Timothy Wall <twall@redhat.com>
3873
3874 * doc/internals.texi: Document NUMBERS_WITH_SUFFIX macro.
3875 * as.h: Provide a default NUMBERS_WITH_SUFFIX definition (zero).
3876 * expr.c: Handle numbers with suffixes if NUMBERS_WITH_SUFFIX is
3877 non-zero.
3878
3879 2000-02-08 Timothy Wall <twall@redhat.com>
3880
3881 * read.c: Added elseif to directives table.
3882 * read.h: Added prototype for s_elseif.
3883 * doc/as.texinfo: Added description for elseif.
3884 * cond.c (s_elseif): New function
3885
3886 2000-02-04 Timothy Wall <twall@redhat.com>
3887
3888 * listing.c (print_lines): Remove conditionals causing bug in
3889 listings.
3890
3891 2000-02-03 Timothy Wall <twall@cygnus.com>
3892
3893 * as.h: Define OCTETS_PER_BYTE and OCTETS_PER_BYTE_POWER
3894 default values.
3895 * frags.c (frag_new): Calculate fr_fix in octets
3896 (frag_now_fix) Return offset as target address offset (bytes).
3897 (frag_now_fix_octets) New - Return offset in octets (8-bit
3898 quantities).
3899 * frags.h: Added prototype for frag_now_fix_octets().
3900 Distinguish between octets and bytes in field descriptions.
3901 * listing.c (calc_hex): Account for octets vs bytes when
3902 printing addresses/offsets.
3903 (print_lines) Ditto. Also, if LISTING_WORD_SIZE is not 1, and
3904 target is little-endian, print the octets in a word in big-endian
3905 order so that the display looks like a proper hexadecimal number,
3906 instead of having the octets reversed.
3907 * read.c (do_align): When recording alignment, alignment power
3908 should be in terms of target bytes (minimum addressible unit)
3909 instead of octets.
3910 (do_org) Convert ORG target address (byte) argument into an
3911 octet offset when generating a variable fragment.
3912 * symbols.c (resolve_symbol_value): Symbol final value
3913 converted to a target address offset (bytes) from its octet offset.
3914 * config/obj-coff.c (coff_frob_symbol): Symbol target address
3915 offset (bytes) is adjusted by the frag offset (octets) converted
3916 to bytes.
3917 (coff_frob_section) Section alignment power is in terms of bytes;
3918 convert it to an octet alignment power when calculating size (and
3919 size mask) in octets. Don't modify the section size in order to
3920 "align" it for TI COFF, since that format has a different method
3921 for storing alignment information.
3922
3923 2000-02-01 Timothy Wall <twall@cygnus.com>
3924
3925 * stabs.c (generate_asm_file): Escape backslashes in stabs file
3926 entries, matching the way GCC generates them. If not escaped, the
3927 filename is encoded incorrectly.
3928
3929 2000-01-31 Nick Clifton <nickc@cygnus.com>
3930
3931 * config/tc-arm.c (reg_table): Add support for ATPCS register
3932 naming conventions.
3933
3934 2000-01-31 Geoff Keating <geoffk@cygnus.com>
3935
3936 * config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
3937 already defined.
3938 * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES):
3939 New macro.
3940 * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag
3941 of a symbol when we really care about its value.
3942
3943 2000-01-19 Chandra Chavva <cchavva@cygnus.com>
3944
3945 * config/tc-mcore.c (md_assemble): Give warning message if
3946 operands passes to instruction are more than the spec.
3947
3948 2000-01-27 Thomas de Lellis <tdel@windriver.com>
3949
3950 * config/tc-arm.c (armadjust_symtab): If the assembler is in
3951 Thumb mode but the label seen was not declared as '.thumb_func'
3952 then set the ST_INFO type to STT_ARM_16BIT mode. This allows
3953 correct disassembly of Thumb code bounded by non function labels.
3954
3955 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
3956
3957 * Makefile.am (MULTI_CFILES): Add config/e-i386aout.c
3958 Add dependencies for e-i386aout.o. Fix 2 comment lines.
3959
3960 * Makefile.in: Same here.
3961 Update copyright.
3962
3963 * configure.in: Set bfd_gas for i386-aout when primary target
3964 is bfd. Handle i386aout emulation. Don't use te_file=multi, as
3965 we may need the primary te_file. Remove incorrect comment.
3966
3967 * configure: Regenerate.
3968
3969 * config/e-i386aout.c: New file.
3970
3971 * as.c (USE_EMULATIONS): Move to before print_version_id.
3972 (struct emulation): Add i386aout.
3973 (show_usage): Split text strings. Reformat -a text. Add --em
3974 help.
3975 Update copyright.
3976
3977 * obj.h (struct format_ops): Add s_get_other and s_get_desc.
3978 (aout_format_ops): New.
3979 Update copyright.
3980
3981 * read.c (s_lcomm_internal): Rewrite OBJ_AOUT,OBJ_BOUT
3982 preprocessor conditional and add aout USE_EMULATIONS tests.
3983 (read_a_source_file): Don't pass error strings to printf as
3984 format arg.
3985 Update copyright.
3986
3987 * gasp.c (exp_get_abs): Don't pass error strings to printf as
3988 format arg.
3989 (do_data): Same here.
3990 (process_file): And here.
3991 Update copyright.
3992
3993 * symbols.c (colon): Rewrite "already defined" fatal message
3994 code for aout with USE_EMULATIONS.
3995 Update copyright.
3996
3997 * config/obj-aout.c (OBJ_HEADER): Define.
3998 (obj_pseudo_table): Rename to aout_pseudo_table. Init all
3999 fields of sentinel.
4000 (obj_aout_frob_symbol): Expand S_GET_DESC, S_GET_TYPE,
4001 S_GET_OTHER, S_SET_TYPE macros since we don't need obj-multi
4002 forms here.
4003 (obj_aout_type): Expand S_SET_OTHER here too.
4004 (obj_read_begin_hook): Remove.
4005 (aout_pop_insert): New.
4006 (obj_aout_s_get_other): New.
4007 (obj_aout_s_get_desc): New.
4008 (aout_format_ops): New.
4009 Update copyright.
4010
4011 * config/obj-aout.h (obj_pop_insert): Define so non-multi usage
4012 gets aout_pseudo_table.
4013 (aout_pseudo_table): Declare.
4014 (obj_read_begin_hook): Define.
4015 Update copyright.
4016
4017 * config/obj-coff.c (obj_pseudo_table): Rename to
4018 coff_pseudo_table.
4019 (coff_pop_insert): Use coff_pseudo_table.
4020 (coff_sec_sym_ok_for_reloc): Remove.
4021 (coff_format_ops): Add 0 entries for s_get_size, s_set_size,
4022 and comment all zero entries and remove #if 0 code.
4023 Update copyright.
4024
4025 * config/obj-coff.h (obj_pop_insert): Define.
4026 (coff_pseudo_table): Declare.
4027 Update copyright.
4028
4029 * config/obj-ecoff.c (ecoff_format_ops): Add 0 entries for
4030 s_get_size, s_set_size. Comment all zero entries.
4031 Update copyright.
4032
4033 * config/obj-elf.c (elf_s_get_other): New function.
4034 (obj_read_begin_hook): Rename to elf_obj_read_begin_hook.
4035 (obj_symbol_new_hook): Rename to elf_obj_symbol_new_hook.
4036 (elf_format_ops): Add elf_s_get_other, 0 s_get_size entry, and
4037 comment.
4038 (obj_elf_parse_section_letters): Don't pass error strings to
4039 printf as format arg.
4040 Update copyright.
4041
4042 * config/obj-elf.h (ECOFF_DEBUGGING): Define when
4043 OBJ_MAYBE_ECOFF.
4044 (elf_s_get_other): Declare.
4045 (S_GET_OTHER) Define as elf_s_get_other if not already
4046 defined.
4047 (S_SET_OTHER): Only define when not already defined.
4048 (elf_obj_read_begin_hook): Declare.
4049 (obj_read_begin_hook): Define.
4050 (elf_obj_symbol_new_hook): Declare.
4051 (obj_symbol_new_hook): Define.
4052 Update copyright.
4053
4054 * config/obj-multi.h: Add copyright header and protect against
4055 multiple inclusion. Add * to all function pointers.
4056 (OBJ_HEADER): If defined, include it rather than other defines
4057 in this file.
4058 (obj_frob_file_after_relocs): Test for NULL.
4059 (obj_symbol_new_hook): Here too.
4060 (obj_sec_sym_ok_for_reloc): And here.
4061 (S_GET_OTHER): Define.
4062 (S_GET_DESC): Define.
4063 (ECOFF_DEBUGGING): Remove as it's done in obj-elf.h
4064 (OBJ_MAYBE_ELF): Update comment.
4065
4066 * config/tc-i386.c (i386_immediate): Add OBJ_MAYBE_AOUT to
4067 OBJ_AOUT preprocessor conditional and handle emulation by
4068 testing OUTPUT_FLAVOR.
4069 (i386_displacement): Here too.
4070 (md_section_align): Similarly here.
4071 (i386_target_format): Conditionally compile when more than one
4072 of OBJ_MAYBE_{ELF,COFF,AOUT} defined. Add aout case.
4073 (i386_immediate): Fix error message for aout BFD_ASSMBLER.
4074 (i386_displacement): Here too.
4075 Update copyright.
4076
4077 * config/tc-i386.h (AOUT_TARGET_FORMAT): Define for each TE_*.
4078 Define TARGET_FORMAT for aout only when not multi.
4079 Update copyright.
4080
4081 * config/te-multi.h: Delete file as it's identical to te-generic.h
4082
4083 2000-01-15 Alan Modra <alan@spri.levels.unisa.edu.au>
4084
4085 * config/tc-i386.h (DWORD_MNEM_SUFFIX): Delete.
4086 * config/tc-i386.c (DWORD_MNEM_SUFFIX): Rename all occurrences to
4087 LONG_MNEM_SUFFIX.
4088
4089 * config/tc-i386.h (INTEL_DWORD_MNEM_SUFFIX): Rename to
4090 DWORD_MNEM_SUFFIX.
4091 * config/tc-i386.c (INTEL_DWORD_MNEM_SUFFIX): Here too. Fix some
4092 comments.
4093
4094 2000-01-13 Clinton Popetz <cpopetz@cygnus.com>
4095
4096 * config/tc-mips.c (mips_do_align): New function.
4097 * config/tc-mips.h (md_do_align): Define.
4098
4099 2000-01-10 Philip Blundell <philb@gnu.org>
4100
4101 * doc/c-arm.texi (ARM Options): Fix typo.
4102 (ARM-Chars): Correct description of `#'. Mention that `;' is a
4103 line separator for Linux.
4104 * doc/as.texinfo (Comments): Mention the ARM.
4105
4106 2000-01-10 Philip Blundell <pb@futuretv.com>
4107
4108 * configure.in (arm*-*-conix*): New target.
4109 (arm*-*-linux-gnu*): Match instead of arm-*-linux* and
4110 armv*-*-linux-gnu.
4111 * configure: Regenerate.
4112
4113 2000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de>
4114
4115 * config/obj-elf.c (elf_pseudo_table): Define visibility pseudos.
4116 (obj_elf_visibility): New function.
4117
4118 * doc/as.texinfo (Visibility): New node: document visibility
4119 pseudo ops.
4120
4121 1999-12-27 Alan Modra <alan@spri.levels.unisa.edu.au>
4122
4123 * config/tc-i386.c (MATCH): Relax JumpAbsolute check. Emit a
4124 warning for absolute jump/call without `*' in non-intel mode. No
4125 need to set i.types[0] JumpAbsolute in intel mode.
4126
4127 1999-12-22 Philip Blundell <pb@futuretv.com>
4128
4129 * config/tc-arm.c (arm_s_text): If OBJ_ELF, call the appropriate
4130 hook function when changing sections.
4131 (arm_s_data): Likewise.
4132
4133 1999-12-14 Nick Clifton <nickc@cygnus.com>
4134
4135 * config/tc-arm.c (md_parse_option): Add support for -marm720
4136 command line switch.
4137
4138 Tue Nov 30 22:59:00 1999 Jeffrey A Law (law@cygnus.com)
4139
4140 * config/tc-mn10300.c (md_pseudo_table): Add ".am33" pseudo-op.
4141 (r_registers, xr_registers): Define.
4142 (r_register_name, xr_register_name): New functions.
4143 (md_assemble): Handle new am33 operand types and instruction
4144 formats.
4145 (mn10300_insert_operand, check_operand): Likewise.
4146
4147 1999-11-29 Nick Clifton <nickc@cygnus.com>
4148
4149 * config/tc-arm.c (thumb_mode): Turn into a tristate variable.
4150 (s_force_thumb): Set thumb_mode to 2.
4151 (md_assemble): Do not complain about thumb instructions on a
4152 non-thumb target if thumb_mode is set to 2.
4153
4154 1999-11-28 Michael Meissner <meissner@cygnus.com>
4155
4156 * config/tc-alpha.c (toplevel): Include struc-symbol.h.
4157 (alpha_macro_arg): Add MACRO_{LITERAL,BASE,BYTOFF,JSR} cases.
4158 (O_...): Add new machine dependent expressions if we are handling
4159 explicit relocations.
4160 (alpha_reloc_op): New static table holding the explicit relocation
4161 information.
4162 (alpha_literal_hash): New static to hold the hash table for
4163 explicit relocations.
4164 (alpha_macros): Add support for explicit relocations.
4165 (md_begin): If explicit relocations, initialize hash table.
4166 (md_assemble): Don't print a second error if tokenize_arguments
4167 already printed an error message.
4168 (md_apply_fix): Add support for explicit relocations.
4169 (alpha_force_relocation): Ditto.
4170 (alpha_fix_adjustable): Ditto.
4171 (alpha_adjust_symtab): New function to support explicit
4172 relocations.
4173 (alpha_adjust_symtab_relocs): Ditto.
4174 (debug_exp): Debug stub compiled if DEBUG_ALPHA is defined.
4175 (tokenize_arguments): Add debug code if DEBUG_ALPHA is defined.
4176 Add support for explicit relocations. Return -2 if an error
4177 message was already printed.
4178 (find_macro_match): Add support for explicit relocations. Comment
4179 each of the cases.
4180 (emit_insn): Add support for explicit relocations.
4181 (assemble_tokens): Ditto.
4182 (emit_ldgp): Ditto.
4183 (load_expression): Ditto.
4184 (emit_lda): Ditto.
4185 (emit_ldah): Ditto.
4186 (emit_ir_load): Ditto.
4187 (emit_loadstore): Ditto.
4188 (emit_ldXu): Ditto.
4189 (emit_ldil): Ditto.
4190 (emit_sextX): Ditto.
4191 (emit_division): Ditto.
4192 (emit_jsrjmp): Ditto.
4193 (emit_retjcr): Ditto.
4194
4195 * config/tc-alpha.h (RELOC_OP_P): Enable explicit relocations if
4196 ELF object format.
4197 (tc_adjust_symtab): If explicit relocations, call the function
4198 alpha_adjust_symtab.
4199 (TC_FIX_TYPE): Add fields to be able to move explicit lituse
4200 relocations next to the literal relocation they reference.
4201 (TC_INIT_FIX_DATA): Initialize the new fields.
4202 (TC_FIX_DATA_PRINT): Print the new fields if DEBUG5 is defined.
4203
4204 Wed Nov 24 20:27:58 1999 Jeffrey A Law (law@cygnus.com)
4205
4206 * config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers. Handle
4207 'B' operand for PA2.0 bb instruction.
4208
4209 1999-11-18 Nick Clifton <nickc@cygnus.com>
4210
4211 * config/tc-mcore.h (TC_FORCE_RELOCATION): Define for Mcore-pe
4212 target.
4213
4214 * config/tc-mcore.c (tc_gen_reloc): Support generation of RVA
4215 relocs.
4216 (mcore_force_relocation): Force relocations to be generated for
4217 RVA relocs.
4218
4219 1999-11-16 Alan Modra <alan@spri.levels.unisa.edu.au>
4220
4221 * config/tc-i386.c (i386_immediate): Disallow O_big immediates.
4222 (i386_displacement): Disallow O_big displacements.
4223
4224 Mon Nov 15 20:12:43 1999 Donald Lindsay <dlindsay@cygnus.com>
4225
4226 * config/tc-arm.c (do_mia,do_mar,do_mra,do_pld,do_ldrl,do_co_reg):
4227 Small improvements in error checking.
4228 (md_assemble): Support for unconditional ARM instructions.
4229 (md_parse_option): Support for -m[arm]v5e flag.
4230
4231 1999-11-12 Nick Clifton <nickc@cygnus.com>
4232
4233 * macro.c (buffer_and_nest): Do not check beyond the end of the
4234 buffer.
4235
4236 1999-11-11 Nick Clifton <nickc@cygnus.com>
4237
4238 * macro.c (buffer_and_nest): Look for seperator after TO and
4239 FROM tokens.
4240
4241 1999-11-08 Andrew Haley <aph@cygnus.com>
4242
4243 * app.c (do_scrub_chars): When in State 10, treat backslash
4244 characters in the same way as as symbol characters.
4245
4246 1999-11-07 Richard Henderson <rth@cygnus.com>
4247
4248 * config/tc-alpha.c (alpha_align): Check, don't assert, that
4249 the previous label was in the current section before playing
4250 with auto-alignment.
4251
4252 1999-11-06 Nick Clifton <nickc@cygnus.com>
4253
4254 * config/tc-v850.c (v850_force_relocation): Force relocation
4255 for weak symbols.
4256 (v850_pcrel_from_selection): Do not compute a pcrel offset if
4257 the symbol is weak.
4258
4259 1999-11-05 Michael Meissner <meissner@cygnus.com>
4260
4261 * expr.h (operatorT): Increase machine dependent operators to 16.
4262 * expr.c (op_rank): Ditto.
4263
4264 1999-11-03 Ian Lance Taylor <ian@zembu.com>
4265
4266 * read.c (pseudo_set): Reject attempts to set the value of a
4267 section symbol.
4268
4269 * config/obj-elf.c (obj_elf_ident): Call md_flush_pending_output
4270 if it is defined.
4271
4272 * config/obj-elf.c (elf_set_index): Add ATTRIBUTE_UNUSED.
4273
4274 * config/obj-elf.c (elf_frob_file_after_relocs): Don't pass NULL
4275 to bfd_set_section_contents.
4276
4277 1999-11-03 Nick Clifton <nickc@cygnus.com>
4278
4279 * config/tc-mcore.h (TARGET_BYTES_BIG_ENDIAN): Change to false.
4280
4281 1999-11-01 Gavin Romig-Koch <gavin@cygnus.com>
4282
4283 * config/tc-mips.c (macro_build): Use OPCODE_IS_MEMBER.
4284 (mips_ip): Use OPCODE_IS_MEMBER.
4285
4286 Wed Oct 27 16:50:44 1999 Don Lindsay <dlindsay@cygnus.com>
4287
4288 * config/tc-arm.c (reg_required_here): Improve comments.
4289
4290 * config/tc-arm.c (thumb_opcode): Add "variants" field.
4291 (tinsns): Initialize variants field.
4292
4293 * config/tc-arm.c (bad_args, bad_pc): Renamed to BAD_ARGS and
4294 BAD_PC respectively.
4295
4296 1999-10-27 Scott Bambrough <scottb@netwinder.org>
4297
4298 * config/tc-arm.c (reloc_map[]): Fix compiler warning.
4299 * config/tc-arm.h: Fix compile time warnings.
4300
4301 Mon Oct 18 18:11:10 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
4302
4303 * tc_d10v.c (find_opcode): Allow ATSIGN to match expressions of the
4304 form @abs16, @(abs16) and @(abs16 + imm).
4305
4306 1999-10-21 Gavin Romig-Koch <gavin@cygnus.com>
4307
4308 * config/tc-mips.c (ISA_HAS_COPROC_DELAYS) : New.
4309 (ISA_HAS_64_BIT_REGS) New.
4310 (gpr_interlocks,md_begin,reg_needs_delay,append_insn,
4311 mips_emit_delays,macro_build,load_register,load_addresss,
4312 macro,macro2,mips_ip,s_cprestore,s_cpadd): Simplify
4313 and/or use new ISA_xxx macros in expressions involving
4314 ISA, particularly mips_opts.isa.
4315
4316 1999-10-18 Michael Meissner <meissner@cygnus.com>
4317
4318 * expr.h (operatorT): Add machine dependent operators md1..md8.
4319 (expressionS): Make X_op 8 bits instead of 7. Add a X_md field
4320 for the machine dependent operators to use.
4321
4322 * expr.c (op_rank): Add machine dependent operators.
4323
4324 * config/tc-alpha.c (O_pregister): Define as a machine dependent
4325 operator.
4326 (O_cpregister): Ditto.
4327 (md_begin): Change X_op test that field is wide enough to use
4328 O_max instead of O_alpha_max.
4329 (cpu_types): Fill in missing initializer.
4330 (alpha_num_macros): Make unsigned.
4331 (md_assemble): Make opnamelen be size_t.
4332 (md_apply_fix): Cast alpha_num_operands to int before testing.
4333 (alpha_force_relocation): Ditto.
4334 (alpha_fix_adjustable): Ditto.
4335 (alpha_fix_adjustable): Mark unused arguments ATTRIBUTE_UNUSED.
4336 (tc_gen_reloc): Ditto.
4337 (tc_get_register): Ditto.
4338 (emit_ldgp): Ditto.
4339 (emit_lda): Ditto.
4340 (emit_ldah): Ditto.
4341 (emit_ldil): Ditto.
4342 (s_alpha_ent): Ditto.
4343 (s_alpha_end): Ditto.
4344 (s_alpha_frame): Ditto.
4345 (s_alpha_prologue): Ditto.
4346 (s_alpha_file): Ditto.
4347 (s_alpha_gprel32): Ditto.
4348 (s_alpha_proc): Ditto.
4349 (s_alpha_set): Ditto.
4350 (s_alpha_base): Ditto.
4351 (s_alpha_align): Ditto.
4352 (s_alpha_arch): Ditto.
4353 (alpha_align): Ditto.
4354 (assemble_insn): Suppress unused variable warning.
4355 (emit_insn): Ditto.
4356 (assemble_insn): Don't assume X_op and X_unsigned are in a given
4357 order in the structure.
4358 (s_alpha_coff_wrapper): Avoid int/unsigned comparison.
4359
4360 Sun Oct 17 17:15:58 1999 Jeffrey A Law (law@cygnus.com)
4361
4362 * config/tc-hppa.c (md_apply_fix): Make "fmt" an int.
4363
4364 1999-10-12 Alan Modra <alan@spri.levels.unisa.edu.au>
4365
4366 * config/tc-i386.c (i386_index_check): Correct #endif location.
4367
4368 Mon Oct 11 14:02:40 1999 Geoffrey Keating <geoffk@cygnus.com>
4369
4370 * as.c (show_usage): Document new options.
4371 (parse_args): Add --no-warn, --warn, --fatal-warnings,
4372 which become 'W', OPTION_WARN, and OPTION_WARN_FATAL.
4373 (parse_args): Parse the new options.
4374 (main): If there were warnings, and --fatal-warnings
4375 was specified, print an error.
4376 * as.h: New variable, flag_fatal_warnings, for new option.
4377
4378 Sun Oct 10 01:47:23 1999 Jerry Quinn <jerry.quinn.adv91@alum.dartmouth.org>
4379
4380 * config/tc-hppa.c (pa_ip): Add new codes 'cc', 'cd', 'cC', 'co',
4381 '@'. Change autoincrement completers to fall through to cache control
4382 completers.
4383
4384 * config/tc-hppa.c (pa_ip): Remove unused args. Add code to '?W'
4385 arg.
4386 (pa_parse_addb_64_cmpltr): New function.
4387
4388 * config/tc-hppa.c (pa_ip): Change error message.
4389 (pa_ip,pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr) Fix '?N' and
4390 '?Q' args to allow falling through.
4391
4392 * config/tc-hppa.c (pa_ip): Implement conditional codes "?N", "?Q".
4393 Remove unused conditional codes.
4394 (pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr): New.
4395
4396 Thu Oct 7 00:23:53 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
4397
4398 * config/tc-d30v.c (CHAR_BIT): Define.
4399 (check_range): Fix bit operations to support integers bigger than
4400 32 bits.
4401
4402 Thu Oct 7 00:11:50 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
4403
4404 * config/tc-d10v.c (check_range): Check range for RESTRICTED_NUM3
4405 operands.
4406
4407 Mon Oct 4 17:24:23 1999 Nick Clifton <nickc@cygnus.com>
4408 Doug Evans <devans@cygnus.com>
4409
4410 Add support for m32rx.
4411 * config/tc-m32r.c (enable_m32rx): New static global.
4412 (enable_special,warn_explicit_parallel_conflicts,optimize): Ditto.
4413 (allow_m32rx): New function.
4414 (M32R_SHORTOPTS): Add `O'.
4415 (md_longopts): Add --m32rx plus several warning options.
4416 (md_parse_option): Handle new options.
4417 (md_show_usage): Print them.
4418 (md_begin): Enable m32rx.
4419 (OPERAND_IS_COND_BIT): New macro.
4420 (first_writes_to_seconds_operands): New function.
4421 (writes_to_pc,can_make_parallel,make_parallel): New functions.
4422 (target_make_parallel,assemble_two_insns): New functions.
4423 (md_assemble): Recognize "insn1 -> insn2" and "insn1 || insn2".
4424 If optimizing and m32rx, try to make consecutive insns parallel.
4425
4426 Tue Sep 28 14:06:44 1999 Geoffrey Keating <geoffk@cygnus.com>
4427
4428 * config/tc-mips.c (nopic_need_relax): Allow for the
4429 .sdata.foo sections generated by -fdata-sections,
4430 and for the .gnu.linkonce.s sections generated by C++.
4431
4432 Thu Sep 23 07:13:45 1999 Jerry Quinn <jquinn@nortelnetworks.com>
4433
4434 * config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
4435 with cleaner code using completer prefixes. Add 'Y'.
4436
4437 * config/tc-hppa.c (pa_ip): Add parens to silence compiler.
4438
4439 Wed Sep 22 09:37:19 1999 Jeffrey A Law (law@cygnus.com)
4440
4441 * config/tc-hppa.c (pa_ip): Avoid ANSI specific initialization.
4442 (pa_ip, case 'm'): Failure to get a CBIT specifier just means the
4443 insn does not match and we should try the next insn in the table.
4444
4445 1999-09-22 Nick Clifton <nickc@cygnus.com>
4446
4447 * config/tc-arm.c (MULTI_SET_PSR): Rename to LDM_TYPE_2_OR_3.
4448
4449 Mon Sep 20 04:01:41 1999 Jeffrey A Law (law@cygnus.com)
4450
4451 * config/tc-hppa.c (pa_ip): Fix thinkos in recent cleanup
4452 of PA2.0 support.
4453
4454 1999-09-19 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
4455
4456 * config/tc-i386.c (md_shortopts): Check OBJ_MAYBE_ELF as well as
4457 OBJ_ELF. If ELF, add "sq".
4458 (md_parse_option): If ELF, ignore -s and -q.
4459 (md_show_usage): Mention ELF options.
4460
4461 Sun Sep 19 10:43:31 1999 Jeffrey A Law (law@cygnus.com)
4462
4463 * config/tc-hppa.c (pa_ip): Handle 'J', 'K' and 'cc'
4464 operands.
4465
4466 * config/tc-hppa.c (pa_ip); Handle "fe", and 'cJ'.
4467
4468 * config/tc-hppa.c (pa_ip): Handle 'd', '#' and 'cq'.
4469
4470 * config/tc-hppa.c (struct pa_it): New field "trunc".
4471 (pa_ip): Hadnle 'h', 'm', '=', '{', and '_' operands.
4472 (pa_parse_ftest_gfx_completer): New function
4473 (pa_parse_fp_cnv_format): New function.
4474
4475 * config/tc-hppa.c (pa_ip): Handle 'X' operand.
4476 (md_apply_fix): Handle 22bit pc-rel branches.
4477
4478 * config/tc-hppa.c (pa_ip): Handle 'B' operand.
4479
4480 * config/tc-hppa.c (pa_ip): Handle 'L' and 'M' operands.
4481
4482 * config/tc-hppa.c (pa_ip): Handle 'l' operand.
4483
4484 * config/tc-hppa.c (pa_ip): Handle 'g' operand.
4485
4486 Sat Sep 18 12:13:28 1999 Jeffrey A Law (law@cygnus.com)
4487
4488 * config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
4489 (pa_ip): Handle 'fX'.
4490
4491 Fri Sep 17 11:57:34 1999 Jeffrey A Law (law@cygnus.com)
4492
4493 * config/tc-hppa.c (pa_build_unwind_subspace): Do not build
4494 unwinds unless the function is in the text space.
4495 (pa_type_args): Set BSF_FUNCTION for an exproted data symbol.
4496
4497 Wed Sep 15 05:14:32 1999 Jeffrey A Law (law@cygnus.com)
4498
4499 * config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
4500 (md_assemble): To here. Tweak address generation.
4501
4502 * config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF. Declare
4503 debug_line.
4504 (md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
4505 (md_assemble): Call dwarf2_where for OBJ_ELF.
4506 (pa_ip): Call dwarf2_gen_line_info for OBJ_ELF.
4507 (pa_end_of_source): New function.
4508 * tc-hppa.h (md_end): Define for OBJ_ELF.
4509
4510 1999-09-14 Michael Meissner <meissner@cygnus.com>
4511
4512 * configure.in (Canonicalization of target names): Remove adding
4513 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
4514 generates $ac_config_sub with a ${CONFIG_SHELL} already.
4515 * configure: Regenerate.
4516
4517 1999-09-14 Donn Terry <donn@interix.com>
4518
4519 * config/te-interix.h (GLOBAL_OFFSET_TABLE_NAME): Define.
4520
4521 1999-09-13 Alan Modra <alan@spri.levels.unisa.edu.au>
4522
4523 * config/tc-i386.c (md_assemble): Handle "jmp/call constant" as a
4524 pc-relative jmp/call to an absolute symbol.
4525 (md_apply_fix3): When OBJ_ELF, don't add the values in twice for
4526 absolute section symbols.
4527
4528 * config/tc-i386.c (md_assemble): Correct frag_var size. Tidy
4529 jump handling code and comments.
4530
4531 1999-09-12 Ian Lance Taylor <ian@zembu.com>
4532
4533 * config/tc-i386.c (md_apply_fix3): Add horrible adjustments to
4534 the value if TE_PE and a global defined symbol.
4535
4536 1999-09-11 Ian Lance Taylor <ian@zembu.com>
4537
4538 * write.c (dump_section_relocs): Call print_symbol_value_1 to
4539 print the symbol, rather than printing it here.
4540
4541 1999-09-11 Donn Terry <donn@interix.com>
4542
4543 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
4544 BFD_RELOC_RVA relocations.
4545
4546 * config/tc-i386.c (md_undefined_symbol): Compare the name against
4547 the macro GLOBAL_OFFSET_TABLE_NAME, rather than assuming that it
4548 starts with "_G".
4549
4550 * write.c (write_relocs): Call SET_SECTION_RELOCS if it is
4551 defined.
4552 * config/obj-coff.h (SET_SECTION_RELOCS): Define.
4553 * doc/internals.texi (Object format backend): Document
4554 SET_SECTION_RELOCS.
4555
4556 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
4557 relocations against global symbols if TE_PE.
4558
4559 * config/obj-coff.c (obj_coff_ident): Add BFD_ASSEMBLER version.
4560 (obj_pseudo_table): Always handle ".ident" with obj-coff_ident.
4561
4562 * config/obj-coff.c (coff_frob_symbol): Prohibit weak common
4563 symbols.
4564
4565 * config/obj-coff.c (obj_coff_endef): Don't merge labels, or
4566 symbols which do not have a constant value, or tags with
4567 non-tags. Remove the symbol from the list before adding it at the
4568 end.
4569
4570 * config/obj-coff.c (obj_coff_endef) [BFD_ASSEMBLER]: Handle .ef
4571 C_FCN symbol differently if TE_PE.
4572 (obj_coff_line) [BFD_ASSEMBLER]: Always use the line number which
4573 appears in the pseudo-op, rather coff_line_base which is only set
4574 for a .bf symbol.
4575
4576 * config/obj-coff.c (obj_coff_loc): New static function.
4577 (obj_pseudo_table): Add "loc".
4578
4579 * config/obj-coff.c (add_lineno): Check that the line number is
4580 positive.
4581
4582 * config/atof-ieee.c (atof_ieee): Change what_kind to int.
4583 * config/atof-vax.c (flonum_gen2vax): Change format_letter to
4584 int.
4585 (md_atof): Return NULL rather than 0.
4586 * config/tc-i386.c (md_atof): Change type to int.
4587 * expr.c (expr): Change first parameter to int.
4588 * config/obj-coff.c: Add declarations for static functions.
4589 (coff_frob_symbol): Use SYM_AUXENT.
4590 * config/tc-i386.h (flag_16bit_code): Don't declare.
4591
4592 * config/obj-coff.c (obj_coff_section): Default to setting
4593 SEC_LOAD. Don't set SEC_DATA for 'w' modifier.
4594
4595 * write.c (adjust_reloc_syms): Print adjusted fixup.
4596
4597 * expr.c (integer_constant): Correct too_many_digits calculation
4598 in base 10 case.
4599
4600 1999-09-09 Andreas Schwab <schwab@suse.de>
4601
4602 * doc/c-arm.texi: Fix arguments of @var to not contain
4603 punctuation.
4604
4605 1999-09-08 Philip Blundell <pb@nexus.co.uk>
4606
4607 * config/tc-arm.c (s_thumb_set): Only support interworking for ELF
4608 and COFF targets.
4609 (md_parse_option): Only support -k flag for ELF and COFF targets.
4610
4611 Tue Sep 7 13:28:59 1999 Jeffrey A Law (law@cygnus.com)
4612
4613 * config/tc-hppa.c (pa_ip): Put strict register checks before
4614 call to pa_parse_number.
4615
4616 * config/tc-hppa.c (pa_ip): Support 'Z' argument.
4617
4618 1999-09-06 Ian Lance Taylor <ian@zembu.com>
4619
4620 * config/obj-coff.c: Add ATTRIBUTE_UNUSED as needed for
4621 BFD_ASSEMBLER code.
4622
4623 1999-09-06 Donn Terry <donn@interix.com>
4624
4625 * as.c (perform_an_assembly_pass): Set SEC_DATA for data_section.
4626
4627 Mon Sep 6 04:26:56 1999 Jeffrey A Law (law@cygnus.com)
4628
4629 * config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
4630 candidate instruction. Require registers for register arguments
4631 when in strict mode. Require assemble-time constants for
4632 constants when in strict mode.
4633 (pa_get_absolute_expression): Require a constant when in strict
4634 mode.
4635
4636 1999-09-06 Nick Clifton <nickc@cygnus.com>
4637
4638 * config/tc-m32r.c (md_longopts): Fix value for -Wnuh.
4639
4640 1999-09-04 Steve Chamberlain <sac@pobox.com>
4641
4642 * config/tc-pj.c: New file, supports picoJava in ELF.
4643 * config/tc-pj.h: Ditto.
4644 * configure.in (pjl*, pj*): New targets.
4645 * Makefile.am: Rebuild dependencies.
4646 (CPU_TYPES): Add pj.
4647 (TARGET_CPU_CFILES): Add config/tc-pj.c.
4648 (TARGET_CPU_HFILES): Add config/tc-pj.h.
4649 * doc/c-pj.texi: New file.
4650 * doc/as.texinfo: Add some PJ specifics.
4651 * doc/all.texi: Add PJ to the list of all architectures, sort them
4652 all alphabetically.
4653 * doc/Makefile.in (CPU_DOCS): Add c-pj.texi.
4654 * configure, Makefile.in, doc/Makefile.in: Rebuild.
4655
4656 1999-09-02 Alan Modra <alan@spri.levels.unisa.edu.au>
4657
4658 * config/obj-multi.h: Include obj-elf.h if OBJ_MAYBE_ELF. Reformat.
4659 (obj_frob_file): Test for null pointer.
4660 (OBJ_COPY_SYMBOL_ATTRIBUTES): Here too.
4661 (OBJ_PROCESS_STAB): And here.
4662 (elf_obj_sy): Remove
4663
4664 * config/obj-elf.h: #ifndef everything defined in obj-multi.h,
4665 except OBJ_PROCESS_STAB, which we #undef for ecoff.
4666 (elf_obj_sy): Remove #ifndef OBJ_SYMFIELD_TYPE.
4667
4668 * config/obj-coff.c (no_func): Remove.
4669 (coff_format_ops): Change occurrences of no_func to 0, as we test
4670 for 0 in obj-multi.h.
4671
4672 * configure.in: Enable bfd for i386-coff when primary target is
4673 bfd. Enable i386 elf,coff emulation support. Don't set
4674 USE_EMULATIONS=1 or te_file=multi unless there is more than one
4675 emulation to support.
4676 *configure: Regenerate.
4677
4678 1999-09-02 Nick Clifton <nickc@cygnus.com>
4679
4680 * config/tc-mcore.c (mcore_s_section): Do not dump literals if a
4681 .section .line directive is encountered.
4682
4683 1999-09-01 Nick Clifton <nickc@cygnus.com>
4684
4685 * config/tc-arm.c (md_section_align): Do not align sections in ELF
4686 format.
4687
4688 * as.c (show_usage): Add --gdwarf2 to list of options displayed.
4689 * as.texinfo: Document --gdwarf2 command line option.
4690 Add additional documentation of ARM command line switches.
4691
4692 1999-08-30 Alan Modra <alan@spri.levels.unisa.edu.au>
4693
4694 * config/tc-i386.c (i386_intel_memory_operand): Combine
4695 i386_is_reg and parse_register calls. Remove END_STRING_AND_SAVE
4696 and RESTORE_END_STRING around parse_register calls.
4697 (i386_operand): Here too.
4698 (i386_is_reg): Remove.
4699 (parse_register): Move as_bad calls from within this function to
4700 callers.
4701
4702 1999-08-29 Alan Modra <alan@spri.levels.unisa.edu.au>
4703
4704 Based on a patch from H.J. Lu <hjl@gnu.org>
4705 * config/tc-i386.c (parse_register): Handle FP regs specially.
4706 (md_begin): Remove '(' and ')' from register_chars.
4707
4708 1999-08-29 Doug Evans <devans@casey.cygnus.com>
4709
4710 * config/tc-m32r.c (md_parse_option): Delete unrecognized option
4711 error message (done elsewhere).
4712
4713 Sat Aug 28 01:23:11 1999 Jeffrey A Law (law@cygnus.com)
4714
4715 * config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers.
4716
4717 Sat Aug 28 00:26:26 1999 Jerry Quinn <jquinn@nortelnetworks.com>
4718
4719 * config/tc-hppa.c (pa_ip): Replace 'f' by 'v'. Prefix float register
4720 args by 'f'.
4721
4722 * config/tc-hppa.c (pa_ip): Add args q, %, and |.
4723
4724 * config/tc-hppa.c (pa_ip): Absorb white space in instructions
4725 between args.
4726 Add new completers. Fix bug in 64 bit condition handling.
4727
4728 * config/tc-hppa.c (pa_ip): Add completer codes 'a', 'ch', 'cH',
4729 'cS', and 'c*'.
4730
4731 * config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'.
4732
4733 * config/tc-hppa.c (pa_ip): Add cases for '.', '~'. '$'. and '!'
4734
4735 * config/tc-hppa.c (pa_ip): Add case for 'I'.
4736
4737 1999-08-27 Jim Wilson <wilson@cygnus.com>
4738
4739 * dwarf2dbg.c (MAX_SPECIAL_ADDR_DELTA): Correct typo in comment.
4740 (struct ls): Add frag field. Initialize it to zero.
4741 (out_end_sequence): New local text_frag. Set it while in text section.
4742 Replace address check with frag check. Set ls.frag to text_frag if
4743 out_set_addr called.
4744 (dwarf2_gen_line_info): Add explanatory comment. New local saved_frag.
4745 Set it before switching sections. Replace address check with frag
4746 check. Set ls.frag to saved_frag if out_set_addr called.
4747
4748 1999-08-26 David Mosberger <davidm@hpl.hp.com>
4749
4750 * dwarf2dbg.c (out_end_sequence): If address changed, directly
4751 output "advance_pc" opcode instead of calling gen_addr_line().
4752 The latter has the undesired side-effect of creating a new row
4753 in the debug line info matrix.
4754
4755 1999-08-26 Jim Wilson <wilson@cygnus.com>
4756
4757 * dwarf2dbg.c (out_end_sequence): Correct comments. Set last to
4758 ls.last_filename if last is less than zero. Set ls.last_filename
4759 when allocating new entry.
4760 (dwarf2_gen_line_info): Save seg and subseg info before subseg_new
4761 call.
4762
4763 1999-08-20 Alan Modra <alan@spri.levels.unisa.edu.au>
4764
4765 * config/tc-i386.c (i386_index_check): Fix the displacement size
4766 when INFER_ADDR_PREFIX.
4767
4768 1999-08-18 Nick Clifton <nickc@cygnus.com>
4769
4770 * config/tc-arm.c (md_apply_fix3): If an offset is invalid,
4771 display its value.
4772
4773 1999-08-17 Ian Lance Taylor <ian@zembu.com>
4774
4775 * config/tc-ppc.c (md_assemble): Trim @ha constant to 16 bits, to
4776 handle 0xffffNNNN constants correctly.
4777
4778 1999-08-16 Nick Clifton <nickc@cygnus.com>
4779
4780 * config/tc-arm.c (do_ldst): Look for register conflicts on stores
4781 as well as loads.
4782
4783 1999-08-13 Nick Clifton <nickc@cygnus.com>
4784
4785 * config/tc-arm.c (validate_offset_imm): Work on unsigned values.
4786 (md_apply_fix3): Always pass positive values to
4787 validate_offset_imm.
4788
4789 1999-08-12 Nick Clifton <nickc@cygnus.com>
4790
4791 * config/tc-arm.c (skip_whitespace): New macro.
4792 Formatting tidy ups.
4793
4794 (md_apply_fix3): Store relocation offset in addend for ELF based
4795 relocs.
4796 (arm_force_relocation): Always generate relocs for Thumb function
4797 calls.
4798
4799 1999-08-11 Alan Modra <alan@spri.levels.unisa.edu.au>
4800
4801 * config/tc-i386.c (md_assemble): Remove dead code. intel_syntax
4802 LONG_DOUBLE_MNEM_SUFFIX floating point is done in opcode/i386.h
4803
4804 Tue Aug 10 12:58:31 1999 Jeffrey A Law (law@cygnus.com)
4805
4806 * config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
4807 flags for the unwind subspace.
4808
4809 * config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
4810 (pa_build_unwind_subspace): Remove #if 0 wrapper. Select a
4811 suitable relocation based on the size of the target's pointer.
4812 Always Use subsegment zero for the unwinders.
4813 (pa_level): Handle "2.0w".
4814
4815 Mon Aug 9 20:02:22 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
4816
4817 * config/tc-d30v.c (write_2_short): Don't group repeat instructions
4818 with the following instruction unless this was specified.
4819
4820 1999-08-09 Ian Lance Taylor <ian@zembu.com>
4821
4822 * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 for
4823 certain sections, to match BFD changes.
4824
4825 1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
4826
4827 * Makefile.am (noinst_SCRIPTS): Change .gdbinit to $(GDBINIT).
4828 (EXTRA_SCRIPTS): Define to keep automake happy.
4829 * Makefile.in: Rebuild.
4830
4831 1999-08-08 Ian Lance Taylor <ian@zembu.com>
4832
4833 * Makefile.am: Rename .dep* files to DEP*.
4834 (MKDEP): Rename from DEP. Change all uses. Use $${srcdir} rather
4835 than $(srcdir). Rename TCDEP targets to DEPTC. Rename OBJDEP
4836 targets to DEPOBJ.
4837 * Makefile.in: Rebuild.
4838
4839 1999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
4840
4841 * config/tc-sparc.c (sparc_ip): Allow assembly of %lo()+%reg.
4842
4843 1999-08-08 Ian Lance Taylor <ian@zembu.com>
4844
4845 * Makefile.am: Change all uses of itbl-test-ops to itbl-tops to
4846 avoid problems on DOS filesystems.
4847 * Makefile.in: Rebuild.
4848
4849 * doc/as.texinfo (Section): Document 's' flag for COFF version.
4850
4851 1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
4852
4853 * config/obj-coff.c (obj_coff_section): Handle 's' (shared)
4854 section flag.
4855
4856 1999-08-08 Ian Lance Taylor <ian@zembu.com>
4857
4858 * configure.in: Define and substitute GDBINIT. Change AC_OUTPUT
4859 line to create ${GDBINIT} rather than .gdbinit.
4860 * configure, Makefile.in, doc/Makefile.in: Rebuild.
4861
4862 Fri Aug 6 12:12:44 1999 Jeffrey A Law (law@cygnus.com)
4863
4864 * config/tc-hppa.c (pa_ip, case '?'): Add missing break.
4865
4866 Fri Aug 6 09:46:35 1999 Jerry Quinn <jquinn@nortelnetworks.com>
4867
4868 * config/tc-hppa.c (pa_ip): Add 64 bit condition completers.
4869
4870 1999-08-06 Jakub Jelinek <jj@ultra.linux.cz>
4871
4872 * config/tc-sparc.h (tc_fix_adjustable): Fix check for PIC local
4873 non-adjustable symbols.
4874
4875 Thu Aug 5 16:52:51 1999 Jerry Quinn <jquinn@nortelnetworks.com>
4876
4877 * config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix.
4878
4879 Thu Aug 5 23:05:56 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
4880
4881 * config/tc-sh.c (md_assemble): Call as_bad when there are excess
4882 operands.
4883
4884 1999-08-05 Donn Terry <donn@interix.com>
4885
4886 * config/te-interix.h: New file.
4887 * configure.in (i386-*-interix*): New target.
4888 * configure: Rebuild.
4889
4890 Wed Aug 4 13:12:17 1999 Jeffrey A Law (law@cygnus.com)
4891
4892 * config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
4893 selectors for ELF too.
4894 (selector_table): Add "ltp" and "rtp" selectors.
4895
4896 1999-08-04 Alan Modra <alan@spri.levels.unisa.edu.au>
4897
4898 * config/tc-i386.c (i386_operand): No need to change
4899 operand_string pointer in segment reg case before goto
4900 do_memory_reference. Initialise displacement_string_start and
4901 displacement_string_end after do_memory_reference label.
4902 (i386_index_check): Add operand_string param, and print error
4903 message on failure here.
4904 (i386_intel_memory_operand): Instead of here.
4905 (i386_operand): And here.
4906 (INFER_ADDR_PREFIX): Enable.
4907
4908 * doc/c-i386.texi (i386-16bit): Document .code16gcc.
4909
4910 * config/tc-i386.h (DefaultSize): Define. Renumber following
4911 opcode_modifier defines.
4912
4913 From Etienne Lorrain <etienne.lorrain@ibm.net>
4914 * config/tc-i386.c (stackop_size): New variable.
4915 (set_16bit_code_flag): Clear it here.
4916 (set_16bit_gcc_code_flag): New function.
4917 (md_pseudo_table): Add "code16gcc" entry.
4918 (md_assemble): Set i.suffix for insns with DefaultSize modifier.
4919
4920 1999-08-03 Ian Lance Taylor <ian@zembu.com>
4921
4922 * config/obj-coff.c (coff_frob_symbol): Always update set_end with
4923 next_set_end even if the end symbol is being discarded.
4924
4925 * gasp.c: Add ATTRIBUTE_UNUSED as needed for non-BFD_ASSEMBLER.
4926 * output-file.c, symbols.c, config/tc-i386.c: Likewise.
4927 * config/obj-coff.c: Likewise.
4928 (seg_info_type): Remove.
4929 (seg_info_off_by_4): Change to array of segT.
4930 (s_get_segment): Adjust accordingly.
4931 (obj_pseudo_table): Fully initialize sentinel entry.
4932
4933 * config/tc-mips.c (append_insn): Correct INSN_SYNC test. From
4934 Ralf Baechle <ralf@uni-koblenz.de>.
4935
4936 1999-08-03 Etienne Lorrain <etienne.lorrain@ibm.net>
4937
4938 * config/tc-i386.c (f16_3): New. Fixes 16 bit 3 byte nop.
4939
4940 1999-08-03 Alan Modra <alan@spri.levels.unisa.edu.au>
4941
4942 * config/tc-i386.c: Indentation and white space changes.
4943 (i386_index_check): New function. Add INFER_ADDR_PREFIX code, but
4944 don't enable it by default.
4945 (i386_intel_operand): Remove redundant prototype.
4946 Move check on number of memory operands, and i.mem_operands++
4947 (i386_intel_memory_operand): To here.
4948 Remove i386_immediate code from here. Remove special case code
4949 for input and output using (%dx). Remove base/index checks and
4950 call i386_index_check instead. Save initial operand_string
4951 argument for error message.
4952 (i386_operand): Remove redundant prototype. Move base/index
4953 checks to i386_index_check.
4954 (i386_displacement): Move intel mode check for non-zero
4955 i.disp_operand
4956 (i386_intel_memory_operand): To here.
4957
4958 1999-07-30 Jakub Jelinek <jj@ultra.linux.cz>
4959
4960 * config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
4961 (sparc_ip): Warn if %g2 or %g3 register is used and not covered
4962 by .register pseudo-op if -64 and --no-undeclared-regs.
4963 (s_register, sparc_adjust_symtab): New functions.
4964 * config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
4965 Declare sparc_adjust_symtab as tc_adjust_symtab.
4966 * doc/c-sparc.texi: Add description of #ignore special literal
4967 for .register pseudo-op.
4968
4969 1999-07-30 Catherine Moore <clm@cygnus.com>
4970
4971 * config/tc-arm.c (tc_gen_reloc): Record the vtable entry in
4972 the relocation's section offset.
4973
4974 1999-07-29 Alan Modra <alan@spri.levels.unisa.edu.au>
4975
4976 * write.c (fixup_segment): Fix generic error check overflow test.
4977
4978 * config/tc-i386.c (pe): Change %d to %ld, %x to %lx, and cast
4979 X_add_number to long.
4980
4981 Wed Jul 28 02:04:24 1999 "Jerry Quinn" <jquinn@nortelnetworks.com>
4982
4983 * config/tc-hppa.c (pa_ip): Add 'J' and 'K' code
4984 processing.
4985
4986 1999-07-27 Ian Lance Taylor <ian@zembu.com>
4987
4988 * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
4989 VTABLE relocations.
4990
4991 1999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
4992
4993 * config/te-go32.h (COFF_LONG_SECTION_NAMES): Define.
4994
4995 * configure.bat: Remove; obsolete.
4996 * config/go32.cfg: Likewise.
4997
4998 1999-07-21 Brad M. Garcia <bgarcia@fore.com>
4999
5000 * configure.in (i386-*-vxworks*): New target.
5001 * configure: Rebuild.
5002
5003 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
5004
5005 * doc/c-sparc.texi: Document .register and .nword pseudo-ops.
5006
5007 1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
5008
5009 * config/tc-sparc.c (sparc_ip): Allow OLO10 relocations
5010 on -64 and not pic.
5011 (output_insn): Put OLO10's secondary addend into tc_fix_data.
5012 (md_apply_fix3): Handle BFD_RELOC_SPARC_OLO10.
5013 (tc_gen_reloc): Return two relocs for OLO10, LO10 and SPARC13.
5014 * config/tc-sparc.h (RELOC_EXPANSION_POSSIBLE,
5015 MAX_RELOC_EXPANSION): Define.
5016 (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
5017
5018 1999-07-16 Alan Modra <alan@spri.levels.unisa.edu.au>
5019
5020 * config/tc-i386.c (intel_float_operand): Add prototype, make static.
5021 (md_assemble): Localize *exp variable to if (fake_zero_displacement)
5022 block. Print a warning if an 8-bit or 16-bit constant
5023 displacement or immediate is truncated on output.
5024 (i386_immediate): Ensure Imm16 is always legal for a 16-bit mode
5025 immediate.
5026 (i386_operand): Disallow immediate jump absolute operand.
5027
5028 1999-07-15 Ian Lance Taylor <ian@zembu.com>
5029
5030 * configure.in: Bump version number to 2.9.5.
5031 * configure: Rebuild.
5032
5033 * dwarf2dbg.c (dwarf2_gen_line_info): Don't assume that long long
5034 or %llx work.
5035
5036 Thu Jul 15 02:45:30 1999 Jeffrey A Law (law@cygnus.com)
5037
5038 * config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
5039 (cons_fix_new_hppa): Derive size of fixup from size of the object.
5040
5041 1999-07-14 Philip Blundell <pb@nexus.co.uk>
5042
5043 * symbols.c (dollar_label_name): Prepend LOCAL_LABEL_PREFIX if it
5044 is defined.
5045 * config/tc-arm.h (LOCAL_LABEL_PREFIX): Define to '.' for ELF.
5046
5047 * config/tc-arm.c (md_begin): Set F_SOFTFLOAT in the output file
5048 if -mno-fpu was given.
5049 (tc_gen_reloc): Fix typo. Delete bogus code related to GOTPC
5050 relocs.
5051 (cons_fix_new_arm): Remove misleading comments.
5052
5053 1999-07-14 Ian Lance Taylor <ian@zembu.com>
5054
5055 * write.c (cvt_frag_to_fill): Use frag file and line in rs_org
5056 error message.
5057 (relax_segment): Likewise. After giving a rs_org error, convert
5058 the frag to rs_align to avoid cascading errors.
5059
5060 1999-07-12 Andreas Schwab <schwab@suse.de>
5061
5062 * config/tc-m68k.c: Add some ATTRIBUTE_UNUSED.
5063
5064 1999-07-11 Ian Lance Taylor <ian@zembu.com>
5065
5066 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
5067 as appropriate. Fill in structure initializations. Add variable
5068 initializations. Add casts.
5069 * dwarf2dbg.c (print_stats): Change i to size_t.
5070 * listing.c (listing_listing): Change list_line to unsigned int.
5071
5072 1999-07-10 Ian Lance Taylor <ian@zembu.com>
5073
5074 * config/tc-ppc.h (tc_fix_adjustable) [OBJ_ELF]: Call S_IS_LOCAL
5075 rather than checking for \001 and \002 in symbol name.
5076 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: Likewise.
5077
5078 Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
5079
5080 * configure.in (hppa*-linux-gnu*): New target.
5081 * configure: Rebuilt.
5082
5083 1999-07-08 Nick Clifton <nickc@cygnus.com>
5084
5085 * doc/c-arm.texi (ARM Directives): Document .thumb_set directive.
5086
5087 1999-07-07 Nick Clifton <nickc@cygnus.com>
5088
5089 * config/tc-v850.c (v850_comm): Use symbol_get_obj() rather than
5090 accessing symbolP directly.
5091
5092 Tue Jul 6 10:41:42 1999 Jeffrey A Law (law@cygnus.com)
5093
5094 * config/tc-hppa.h (tc_frob_symbol): Always punt "$global$" symbol
5095 for ELF.
5096
5097 1999-07-05 Nick Clifton <nickc@cygnus.com>
5098
5099 * config/tc-arm.c (ARM_EXT_V5): Define.
5100 (ARM_ARCH_V5, ARM_ARCH_V5T): Define.
5101 (md_begin): Detect ARM v5 architectures.
5102 (md_parse_option): Accept arm v5 specification.
5103 (md_show_usage): Documment -marmv5 switch.
5104
5105 * doc/c-arm.texi: Document -marmv5 command line option.
5106
5107 * config/tc-arm.c (do_adrl): New function. Implement ADRL pseudo
5108 op.
5109 (validate_immediate_twopart): New function. Determine if a
5110 constant can be computed by two ADD instructions.
5111 (output_inst): Remove its command line parameter - it was never
5112 used.
5113 (md_apply_fix3): Support BFD_RELOC_ARM_ADRL_IMMEDIATE, used to
5114 implememt the ADRL pseudo op.
5115 (tc_gen_reloc): Generate a suitable error message if an ADRL
5116 instruction tries to generate a real reloc.
5117
5118 * doc/c-arm.texi: Document NOP, ADR and ADRL pseudo ops.
5119
5120 Thu Jul 1 15:33:10 1999 Jeffrey A Law (law@cygnus.com)
5121
5122 * config/tc-hppa.c (pa_ip): Convert the opcode and all completers
5123 into lower case.
5124
5125 1999-06-27 H.J. Lu <hjl@gnu.org>
5126
5127 * subsegs.c (subseg_text_p): Use 1/0 instead of true/false for
5128 non BFD_ASSEMBLER case.
5129
5130 1999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
5131
5132 * config/obj-coff.c (obj_coff_section): Mark writable sections as
5133 data.
5134
5135 1999-06-26 David Mosberger <davidm@hpl.hp.com>
5136
5137 * dwarf2dbg.c (dwarf2_gen_line_info): Don't call
5138 out_end_sequence() when the address decreases due to a new frag.
5139 (gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
5140 numbering starts with 1.
5141
5142 1999-06-23 Nick Clifton <nickc@cygnus.com>
5143
5144 * config/tc-mcore.c (md_pseudo_table): Add .comm for ELF and allow
5145 .section for COFF.
5146 (mcore_s_text): Call obj_elf_text for ELF target.
5147 (mcore_s_data): Call obj_elf_data for ELF target.
5148 (mcore_s_section): No longer ELF specific. Call obj_coff_section
5149 for COFF target.
5150 (mcore_s_bss): New function: Dump literal table before changing
5151 sections.
5152 (mcore_s_comm): New function: Dump literal table before changing
5153 sections.
5154
5155 * config/obj-elf.c (obj_elf_common, obj_elf_data, obj_elf_text):
5156 No longer static functions.
5157 * config/obj-elf.h (obj_elf_common, obj_elf_data, obj_elf_text):
5158 Provide prototypes for these functions.
5159
5160 1999-06-22 Ian Lance Taylor <ian@zembu.com>
5161
5162 * subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
5163 a list of names, to try obj_segment_name, and to try abbreviated
5164 names when using COFF without long section names.
5165
5166 * config/tc-alpha.c: More use of symbol accessor functions.
5167 * config/tc-arc.c: Likewise.
5168 * config/tc-d30v.c: Likewise.
5169 * config/tc-fr30.c: Likewise.
5170 * config/tc-i860.c: Likewise.
5171 * config/tc-m88k.c: Likewise.
5172 * config/tc-mcore.c: Likewise.
5173 * config/tc-ns32k.c: Likewise.
5174 * config/tc-sparc.c: Likewise.
5175 * config/tc-v850.c: Likewise.
5176
5177 * config/tc-arc.c (get_arc_exp_reloc_type): Change uses of
5178 sy_value with appropriate accessor functions.
5179 * config/tc-arm.c (md_apply_fix3): Likewise.
5180 * config/tc-d10v.c (AT_WORD_P): Likewise.
5181 * config/tc-v850.c (reg_name_search): Likewise.
5182
5183 * config/obj-ecoff.c (obj_ecoff_set_ext): Change uses of bsym to
5184 use symbol_get_bfdsym instead.
5185 * config/tc-ppc.c (md_assemble): Likewise.
5186 * config/tc-v850.c (v850_comm): Likewise.
5187
5188 1999-06-22 Jonathan Larmour <jlarmour@cygnus.co.uk>
5189
5190 * config/tc-arc.c (tc_gen_reloc): Use symbol_get_bfdsym to get at
5191 the symbol, rather than accessing the bsym member.
5192 * config/tc-d10v.c (tc_gen_reloc): Likewise.
5193 * config/tc-d30v.c (tc_gen_reloc): Likewise.
5194 * config/tc-mcore.c (tc_gen_reloc): Likewise.
5195 * config/tc-mn10200.c (tc_gen_reloc): Likewise.
5196 * config/tc-mn10300.c (tc_gen_reloc): Likewise.
5197 * config/tc-ns32k.c (tc_gen_reloc): Likewise.
5198 * config/tc-tic30.c (tc_gen_reloc): Likewise.
5199 * config/tc-v850.c (tc_gen_reloc): Likewise.
5200
5201 Mon Jun 21 16:45:19 1999 Jeffrey A Law (law@cygnus.com)
5202
5203 * tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
5204 (hppa_gen_reloc_type): Conditionalize on BFD64.
5205 (tc_gen_reloc): Re-enable ELF relocations.
5206 * tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
5207
5208 1999-06-21 Ian Lance Taylor <ian@zembu.com>
5209
5210 * config/tc-arm.c (ldst_extend): Add parentheses to avoid
5211 warning.
5212 (do_ldst): Move assignment out of if condition.
5213 (md_apply_fix3): Add casts to avoid printf format warnings. Add
5214 parentheses to avoid warning.
5215
5216 1999-06-21 Nick Clifton <nickc@cygnus.com>
5217
5218 * config/tc-arm.c (arm_adjust_symtab): Use symbol_get_bfdsym()
5219 macro to get at the BFD symbol associated with a GAS symbol.
5220
5221 1999-06-19 Ian Lance Taylor <ian@zembu.com>
5222
5223 * config/tc-ppc.c: Update for symbol handling changes.
5224 * config/obj-coff.c: Likewise.
5225
5226 Fri Jun 18 14:34:18 1999 Jeffrey A Law (law@cygnus.com)
5227
5228 * tc-hppa.c: General cleanups of ELF support. No more spaces
5229 and subspaces for ELF.
5230 (GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
5231 (GDB_STRINGS_SUBSPACE_NAME): Likewise.
5232 (GDB_SYMBOLS_SUBSPACE_NAME): Likewise
5233 (UNWIND_SECTION_NAME): Likewise.
5234 (space/subspace related structures): Conditionalize definitions
5235 on OBJ_SOM.
5236 (space/subspace directives and support routines): Conditionalize
5237 definitions and references/uses on OBJ_SOM.
5238 (label_symbol_struct): For ELF, track the symbol's segment. For
5239 SOM track its space.
5240 (pa_define_label, pa_undefine_label, pa_get_label): Corresponding
5241 changes.
5242 (USE_ALIASES): Kill for both SOM & ELF.
5243 (pa_def_subspaces, pa_def_spaces): Corresponding changes.
5244 (pa_space, pa_subspace): Corresponding changes.
5245 (pa_spaces_begin): Corresponding chagnes.
5246 (md_begin): Do not muck around with space/subspace stuff for
5247 OBJ_ELF.
5248 (md_apply_fix): Temporarily disable argument relocation stuff
5249 for OBJ_ELF.
5250 (tc_gen_reloc): Temporarily disable relocation generation for
5251 OBJ_ELF
5252 (pa_build_unwind_subspace): Similarly.
5253
5254 1999-06-16 Nick Clifton <nickc@cygnus.com>
5255
5256 * config/tc-arm.c (thumb_set): New pseudo op.
5257 (text, data, section): Override these pseudo ops with ARM
5258 specific versions.
5259 (s_thumb_set): New function: Perform the same as a .set pseudo
5260 op, but also mark the alias'ed symbol as being a Thumb
5261 function.
5262 (arm_s_text): New function: Perform the same as the .text
5263 pseudo op, but dump the literal pool before changing
5264 sections.
5265 (arm_s_data): New function: Perform the same as the .data
5266 pseudo op, but dump the literal pool before changing
5267 sections.
5268 (arm_s_section): New function: Perform the same as the
5269 .section pseudo op, but dump the literal pool before changing
5270 sections.
5271 (arm_cleanup): Do not reset the current section before dumping
5272 the literal pool.
5273
5274 1999-06-17 Nick Clifton <nickc@cygnus.com>
5275
5276 * config/tc-m32r.c (md_longopts): Fix OPTION_WARN_UNMATCHED and
5277 OPTION_NO_WARN_UNMATCHED entries.
5278 (md_parse_option): Generate a warning message if an unrecognised
5279 option is encountered.
5280
5281 * config/tc-d10v.c (do_not_ignore_hash): New variable.
5282 (get_operands): When parsing an expression after an '@' symbol
5283 has been detected, do not ignore '#' symbols.
5284 (md_operand): Only ignore '#' symbols if do_not_ignore_hash is
5285 false.
5286
5287 1999-06-13 Ian Lance Taylor <ian@zembu.com>
5288
5289 From K. Richard Pixley <rich@noir.com>:
5290 * configure.in (ppc-*-vxworks*): New target.
5291 * configure: Rebuild.
5292
5293 1999-06-12 Philip Blundell <philb@gnu.org>
5294
5295 * config/tc-arm.c (tc_gen_reloc): Fix handling of GOTPC relocs.
5296
5297 1999-06-13 Ian Lance Taylor <ian@zembu.com>
5298
5299 * write.c (adjust_reloc_syms): Rather than never reducing reloc
5300 which refer to symbols in linkonce sections, permit reducing the
5301 relocs if the symbol is local.
5302
5303 1999-06-12 Ian Lance Taylor <ian@zembu.com>
5304
5305 * subsegs.c (subseg_text_p): New function.
5306 * as.h (subseg_text_p): Declare.
5307 * read.c (do_align): Use subseg_text_p to set the default fill.
5308 * write.c (subsegs_finish): Likewise.
5309 * config/obj-coff.c (write_object_file): Likewise.
5310 * config/tc-i386.h (md_maybe_text): Don't define.
5311 (md_do_align): Use subseg_text_p to set the default fill.
5312 * config/tc-m32r.c (m32r_do_align): Likewise.
5313 * config/tc-sh.c (sh_do_align): Likewise.
5314 * config/tc-sparc.h (md_do_align): Likewise.
5315
5316 1999-06-12 David O'Brien <obrien@freebsd.org>
5317
5318 * configure.in: (i[3456]86-*-freebsd*): Now defaults to ELF.
5319 * configure: Rebuild.
5320
5321 1999-06-12 Ian Lance Taylor <ian@zembu.com>
5322
5323 * dwarf2dbg.c: Include elf/dwarf2.h with "", not <>.
5324 * Makefile.am: Rebuild dependencies.
5325 * Makefile.in: Rebuild.
5326
5327 * config/tc-i386.c (i386_immediate): Remove unused label
5328 seg_unimplemented.
5329
5330 * struc-symbol.h: Put local_symbol code in ifdef BFD_ASSEMBLER.
5331 * symbols.c: Likewise.
5332 * config/obj-aout.c (obj_crawl_symbol_chain): Refer directly to
5333 sy_next field when taking address, rather than symbol_next.
5334
5335 * dwarf2dbg.c: Change bfd_vma to addressT and bfd_signed_vma to
5336 offsetT.
5337 (out_set_addr): Don't use BYTES_PER_ADDRESS. Instead, get the
5338 value from the output file architecture.
5339 (dwarf2_gen_line_info): Ifdef BFD_ASSEMBLER specific code.
5340 * dwarf2dbg.h: Change bfd_vma to addressT.
5341
5342 1999-06-11 Ian Lance Taylor <ian@zembu.com>
5343
5344 * dwarf2dbg.h: Use PARAMS in function declarations.
5345
5346 1999-06-11 Martin Dorey <mdorey@madge.com>
5347
5348 * write.c (fixup_segment): Don't add symbol value for i960 ELF.
5349 * config/tc-i960.c (s_leafproc): Don't call tc_set_bal_of_cal if
5350 OBJ_ELF.
5351 (md_apply_fix): Simplify BFD_ASSEMBLER handling.
5352
5353 1999-06-11 Ian Lance Taylor <ian@zembu.com>
5354
5355 * config/tc-i386.c (md_apply_fix3): Add default case to switch.
5356
5357 * config/tc-sparc.c (md_pseudo_table): Remove pushsection and
5358 popsection.
5359
5360 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch.
5361
5362 * read.c (read_a_source_file): Only declare inescape if
5363 QUOTES_IN_INSN.
5364
5365 * itbl-ops.c (itbl_disassemble): Change sprintf format strings to
5366 match parameters.
5367 (find_entry_byval): Add parens to avoid warning.
5368
5369 * as.c: If HAVE_ITBL_CPU, include "itbl-ops.h".
5370
5371 * symbols.c (resolve_symbol_value): Don't permit subtraction of
5372 undefined symbols.
5373
5374 1999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
5375
5376 * config/tc-sparc.c (sparc_ip): Don't use side-effect expression
5377 with isoctal.
5378
5379 * config/tc-sparc.c (synthetize_setuw, synthetize_setsw,
5380 synthetize_setx): New functions.
5381 (md_assemble): Broken the special cases into the above
5382 functions. Make compiler happy if sizeof(bfd_vma)==4.
5383 Fix sethi generated from set/setuw. If instructions have a relloc,
5384 always clear the fields to be relocated in the opcode.
5385 (sparc_ip): Remove special_case global variable.
5386
5387 1999-06-10 Ian Lance Taylor <ian@zembu.com>
5388
5389 Based on patches from John W. Woznack <jwoznack@concentric.net>:
5390 * itbl-ops.c (itbl_get_reg_val): Add pval parameter. Return
5391 indication of success rather than a value.
5392 (itbl_get_val): Likewise.
5393 (itbl_get_field): Use strcspn. Change delimiters to include
5394 parens.
5395 * itbl-ops.h (itbl_get_reg_val): Update declaration.
5396 (itbl_get_val): Likewise.
5397 * config/tc-mips.c (mips_ip): Update call to itbl_get_reg_val.
5398
5399 * symbols.c (copy_symbol_attributes): Convert local symbols to
5400 regular symbols.
5401
5402 1999-06-10 Nick Clifton <nickc@cygnus.com>
5403
5404 * config/tc-arm.c (md_parse_option): Add support for ARM920 and
5405 ARM920t.
5406
5407 1999-06-07 Jakub Jelinek <jj@ultra.linux.cz>
5408
5409 * config/tc-sparc.c (md_assemble): Fix up setx, support setsw.
5410 Optimize set if sizeof(bfd_vma) == 64.
5411 (sparc_ip): Fix sethi - without %hi() it should generate
5412 R_SPARC_22 reloc, not R_SPARC_HI22.
5413 (tc_gen_reloc): Handle BFD_RELOC_SPARC22.
5414
5415 1999-06-07 Jakub Jelinek <jj@ultra.linux.cz>
5416
5417 * config/tc-sparc.c (md_begin): Handle native wordsize aliases.
5418 (s_ncons): New function.
5419 (native_op_table): New table.
5420 (sparc_ip): Be more strict on %hi() etc.; prepare assembler for
5421 R_SPARC_OLO10 handling.
5422
5423 Mon Jun 7 10:22:16 1999 Richard Henderson <rth@cygnus.com>
5424
5425 * expr.h (struct expressionS): Revert last change; widen X_op.
5426 * config/tc-alpha.c (md_begin): Check the field is wide enough.
5427
5428 Mon Jun 7 11:25:16 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
5429
5430 * Makefile.am (TARGET_CPU_CFILES): Add config/tc-fr30.c.
5431 (TARGET_CPU_HFILES): Add config/tc-fr30.h.
5432 (TARG_ENV_HFILES): Add config/te-epoc-pe.h.
5433 * Makefile.in: Regenerated.
5434
5435 * config/obj-elf.c (obj_elf_common): In MRI mode if called as
5436 `common' pass on to s_mri_common.
5437 (elf_pseudo_table): Pass 1 to obj_elf_common for `common'.
5438
5439 1999-06-06 Richard Henderson <rth@cygnus.com>
5440
5441 * config/obj-elf.c (obj_elf_section): Don't free the return
5442 value of demand_copy_C_string.
5443
5444 1999-06-05 Richard Henderson <rth@cygnus.com>
5445
5446 * dwarf2dbg.c (dwarf2_gen_line_info): Mirror the section symbol
5447 creation logic from obj_elf_create_section.
5448
5449 * config/obj-elf.c (elf_pseudo_tab): Add pushsection/popsection.
5450 (section_stack): New.
5451 (special_sections): Make const.
5452 (obj_elf_section): Gut and rewrite parsing.
5453 (obj_elf_change_section): New function broken out of obj_elf_section.
5454 (obj_elf_parse_section_letters): Likewise.
5455 (obj_elf_section_word): Likewise.
5456 (obj_elf_section_type): Likewise.
5457 (obj_elf_previous): Treat as a toggle.
5458 (obj_elf_popsection): New.
5459 * config/tc-ppc.c (ppc_section_word): Take str+len not ptr_str.
5460 (ppc_section_type): Likewise.
5461 * config/tc-ppc.h: Likewise.
5462
5463 * expr.h (struct expressionS): Don't make X_op a bitfield.
5464 * config/tc-alpha.c: Update for symbol handling changes.
5465 (md_apply_fix) [case GPREL]: Use now_seg instead of absolute_section.
5466 (load_expression, emit_ir_load, emit_loadstore, emit_jsrjmp): Likewise.
5467
5468 1999-06-05 Richard Henderson <rth@cygnus.com>
5469
5470 * dwarf2dbg.c (*): Convert to K&R + prototypes.
5471 (dwarf2_gen_line_info): Kill unused variables.
5472 (dwarf2_finish): Likewise.
5473 (dwarf2_where): Likewise.
5474 (dwarf2_directive_file): If we've only got a string,
5475 hand off to s_app_file.
5476 * ecoff.c: Move the include of ecoff.h.
5477 * symbols.h (S_IS_FUNCTION): Prototype.
5478
5479 * read.c (LEX_HASH): Supply a default.
5480 (lex_type): Use it.
5481 (s_globl): Update `c' after skipping whitespace.
5482 * read.h (LEX_END_NAME, is_name_ender): New.
5483 * expr.c (get_symbol_end): Respect it.
5484
5485 1999-06-04 Mark Klein <mklein@dis.com>
5486
5487 * config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
5488 to real if OBJ_SOM
5489 (tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
5490
5491 * config/tc-hppa.c: Update for symbol handling changes.
5492
5493 1999-06-03 Ian Lance Taylor <ian@zembu.com>
5494
5495 * cgen.c: Update for symbol handling changes.
5496 * config/tc-m32r.c: Likewise.
5497
5498 * config/tc-hppa.h: Update for symbol handling changes.
5499 * config/tc-hppa.c: Likewise.
5500
5501 * config/tc-arm.h: Update for symbol handling changes.
5502 * config/tc-arm.c: Likewise.
5503 (symbol_make_empty): Remove. Just use symbol_create.
5504
5505 * symbols.c (symbol_set_tc): Correct name.
5506
5507 * Makefile.am: Rebuild dependencies.
5508 ($(OBJS)): Don't depend upon struc-symbol.h.
5509 (.dep1, .tcdep, .objdep): Create itbl-parse.h.
5510 * dep-in.sed: Don't remove struc-symbol.h.
5511 * Makefile.in: Rebuild.
5512
5513 * doc/internals.texi (Symbols): Describe changes in symbol
5514 handling.
5515
5516 1999-06-03 Richard Henderson <rth@cygnus.com>
5517
5518 * dwarf2dbg.c (dwarf2_gen_line_info): Use section_symbol
5519 instead of doing the work by hand.
5520
5521 1999-06-03 David Mosberger <davidm@hpl.hp.com>
5522
5523 * dwarf2dbg.c (INITIAL_STATE): New macro encapsulating initial
5524 state of line state-machine.
5525 (struct ls): Collect DWARF2 line state-machine state in new member
5526 SM. Add member EMPTY_SEQUENCE to keep track if a code sequence
5527 resulted in any DWARF2 directives.
5528 (reset_state_machine): New function.
5529 (out_end_sequence): Ditto.
5530 (dwarf2_gen_line_info): When switching sections or switching to a
5531 lower text address, call out_end_sequence() first to terminate the
5532 previous code sequence as code sequences MUST have monotonically
5533 increasing addresses.
5534 (dwarf2_finish): Call out_end_sequence() instead of open coding it.
5535
5536 1999-06-03 David Mosberger <davidm@hpl.hp.com>
5537
5538 * as.c (parse_args): Add option -gdwarf2 to allow requesting
5539 DWARF2 debug info (line information only, at this point).
5540 * as.h: Update comment about supported debug formats.
5541 * dwarf2dbg.c, dwarf2dbg.h: New files.
5542 * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
5543
5544 * expr.c (operand): Don't use [ for parens if we want an index op.
5545 (op_encoding): Switch [ into O_index, if desired.
5546 (op_rank): Renumber with O_index on bottom.
5547 (expr): If O_index, match closing bracket.
5548 * expr.h (O_index): New.
5549
5550 * read.c (read_a_source_file): Conditionally allow matched "
5551 in lines passed to md_assemble.
5552
5553 * config/obj-elf.c (elf_pseudo_table): Add `common'.
5554
5555 1999-06-03 Ian Lance Taylor <ian@zembu.com>
5556
5557 Add support for storing local symbols in a small structure to save
5558 memory when assembling large files.
5559 * as.h: Don't include struc-symbol.h.
5560 (symbolS): Add typedef.
5561 * symbols.c: Include struc-symbol.h.
5562 (local_hash): New static variable.
5563 (save_symbol_name): New static function, from symbol_create.
5564 (symbol_create): Call save_symbol_name.
5565 (local_symbol_count): New static variable.
5566 (local_symbol_conversion_count): Likewise.
5567 (LOCAL_SYMBOL_CHECK): Define.
5568 (local_symbol_make): New static function.
5569 (local_symbol_convert): New static function.
5570 (colon): Handle local symbols. Create local symbol for local
5571 label name.
5572 (symbol_table_insert): Handle local symbols.
5573 (symbol_find_or_make): Create local symbol for local label name.
5574 (symbol_find_base): Check for local symbol.
5575 (symbol_append, symbol_insert): Check for local symbols.
5576 (symbol_clear_list_pointers, symbol_remove): Likewise.
5577 (verify_symbol_chain): Likewise.
5578 (copy_symbol_attributes): Likewise.
5579 (resolve_symbol_value): Handle local symbols.
5580 (resolve_local_symbol): New static function.
5581 (resolve_local_symbol_values): New function.
5582 (S_GET_VALUE, S_SET_VALUE): Handle local symbols.
5583 (S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
5584 (S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
5585 (S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
5586 (S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
5587 (symbol_previous, symbol_next): New functions.
5588 (symbol_get_value_expression): Likewise.
5589 (symbol_set_value_expression): Likewise.
5590 (symbol_set_frag, symbol_get_frag): Likewise.
5591 (symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
5592 (symbol_mark_used_in_reloc): Likewise.
5593 (symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
5594 (symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
5595 (symbol_mri_common_p): Likewise.
5596 (symbol_mark_written, symbol_clear_written): Likewise.
5597 (symbol_written_p): Likewise.
5598 (symbol_mark_resolved, symbol_resolved_p): Likewise.
5599 (symbol_section_p, symbol_equated_p): Likewise.
5600 (symbol_constant_p): Likewise.
5601 (symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
5602 (symbol_get_obj, symbol_set_obj): Likewise.
5603 (symbol_get_tc, symbol_set_tc): Likewise.
5604 (symbol_begin): Initialize local_hash.
5605 (print_symbol_value_1): Handle local symbols.
5606 (symbol_print_statistics): Print local symbol statistics.
5607 * symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
5608 Declare new symbols.c functions. Move many declarations here from
5609 struc-symbol.h.
5610 (SYMBOLS_NEED_BACKPOINTERS): Define if needed.
5611 * struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
5612 (struct symbol): Move bsym to make it clearly the first field.
5613 Remove TARGET_SYMBOL_FIELDS.
5614 (symbolS): Don't typedef.
5615 (struct broken_word): Remove.
5616 (N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
5617 (SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
5618 (symbol_clear_list_pointers): Likewise.
5619 (symbol_insert, symbol_remove): Likewise.
5620 (symbol_previous, symbol_append): Likewise.
5621 (verify_symbol_chain, verify_symbol_chain_2): Likewise.
5622 (struct local_symbol): Define.
5623 (local_symbol_converted_p, local_symbol_mark_converted): Define.
5624 (local_symbol_resolved_p, local_symbol_mark_resolved): Define.
5625 (local_symbol_get_frag, local_symbol_set_frag): Define.
5626 (local_symbol_get_real_symbol): Define.
5627 (local_symbol_set_real_symbol): Define.
5628 Define.
5629 * write.c (write_object_file): Call resolve_local_symbol_values.
5630 * config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
5631 (TARGET_SYMBOL_FIELDS): Don't define.
5632 * config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field. If
5633 ECOFF_DEBUGGING, add ECOFF fields.
5634 (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
5635 * config/obj-multi.h (struct elf_obj_sy): Add local field. If
5636 ECOFF_DEBUGGING, add ECOFF fields.
5637 (ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
5638 (ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
5639 * config/tc-mcore.h: Don't include struc-symbol.h.
5640 (TARGET_SYMBOL_FIELDS): Don't define.
5641 (struct mcore_tc_sy): Define.
5642 (TC_SYMFIELD_TYPE): Define.
5643 * Many files: Use symbolS instead of struct symbol. Use new
5644 accessor functions rather than referring to symbolS fields
5645 directly.
5646
5647 * read.c (s_mri_common): Don't add in value of line_label.
5648
5649 * config/tc-mips.c (md_apply_fix): Correct parenthesization when
5650 checking for SEC_LINK_ONCE.
5651
5652 * config/tc-sh.h (sh_fix_adjustable): Declare.
5653
5654 * app.c (input_buffer): New static variable.
5655 (app_push): Save saved_input in allocated buffer.
5656 (app_pop): Restored saved_input.
5657 (do_scrub_chars): Change get parameter to take char * and int as
5658 arguments. Change GET macro to pass input_buffer to get
5659 function. Don't save input into allocated buffer.
5660 * as.h (do_scrub_chars): Update declaration.
5661 * input-file.c (input_file_get): Change to take char * and int.
5662 Read data into passed in buffer. Remove static buffer.
5663 * read.c (scrub_from_string): Change to take char * and int. Copy
5664 data into passed in buffer.
5665
5666 * hash.h: Neaten. Declare hash_traverse.
5667 * hash.c: Complete rewrite based on BFD hashing code.
5668 * gasp.c (chunksize): New variable.
5669 * macro.c (macro_expand_body): Call hash_jam with NULL rather than
5670 hash_delete.
5671
5672 1999-05-28 Nick Clifton <nickc@cygnus.com>
5673
5674 * config/tc-arm.c (md_apply_fix3): Add pipeline offset into reloc
5675 addend unless the target uses an old ABI.
5676
5677 Mon May 24 13:36:55 1999 Doug Evans <devans@canuck.cygnus.com>
5678
5679 -Wchar-subscripts cleanup
5680 * listing.c (listing_newline): Use unsigned char variable, so
5681 calls to isascii,iscntrl are correct.
5682 * atof-generic.c (atof_generic): Cast arg to isdigit, et. al. with
5683 (unsigned char).
5684 * ecoff.c (ecoff_directive_ent,ecoff_stab): Ditto.
5685 * config/obj-elf.c (obj_elf_vtable_inherit): Ditto.
5686 * config/tc-mips.c (mips_ip,mips16_ip): Ditto.
5687 (my_getSmallExpression,get_number,s_mips_ent): Ditto.
5688
5689 1999-05-28 Torbjorn Granlund <tege@matematik.su.se>
5690
5691 * config/tc-m68k.c (m68k_ip): Check for disallowed index register
5692 width for Coldfire.
5693 (arch_coldfire_p): New #define.
5694 (m68k_ip, m68k_init_after_args): Use arch_coldfire_p.
5695
5696 1999-05-28 Linus Nordberg <linus.nordberg@canit.se>
5697
5698 * config/tc-m68k.c (install_operand): Add places `n', `o'.
5699
5700 * config/tc-m68k.c (m68k_ip): Add formats `E', `G', `H'.
5701 (install_operand): Add place `N'.
5702 (init_table): Add registers ACC, MACSR, MASK.
5703
5704 * config/m68k-parse.h (m68k_register): Add ACC, MACSR, MASK.
5705
5706 * config/tc-m68k.c: Change mcf5200 --> mcf.
5707 (archs): Add mcf5206e, mcf5307.
5708 (m68k_ip): Add format `u'.
5709 (install_operand): Add place `m', `M', `h'.
5710 (init_table): Add upper/lower registers.
5711
5712 * config/m68k-parse.h (m68k_register): Add upper/lower registers.
5713
5714 1999-05-28 Martin Dorey <mdorey@madge.com>
5715
5716 * config/tc-i960.c: Several minor changes to add ELF and
5717 BFD_ASSEMBLER support.
5718 * config/tc-i960.h: Likewise.
5719 * configure.in (i960-*-elf*): New target.
5720 * aclocal.m4, configure: Rebuild.
5721
5722 1999-05-25 Alan Modra <alan@spri.levels.unisa.edu.au>
5723
5724 * config/tc-i386.c (md_apply_fix3): Only do 1999-05-17 fx_pcrel
5725 reloc changes when defined(BFD_ASSEMBLER).
5726
5727 1999-05-17 Alan Modra <alan@spri.levels.unisa.edu.au>
5728
5729 * config/tc-i386.c (tc_gen_reloc): Remove F and MAP macros.
5730
5731 * write.c (write_print_statistics): Output to file, not stderr.
5732
5733 * expr.c (generic_bignum_to_int32,64): Prototype.
5734
5735 * read.c (s_lcomm_internal, sizeof_sleb128, sizeof_uleb128,
5736 output_sleb128, output_uleb128, output_big_sleb128,
5737 output_big_uleb128, output_big_leb128): Prototype.
5738 (output_big_sleb128, output_big_uleb128): Make inline.
5739 (output_big_leb128): Remove inline
5740
5741 From Maciej W. Rozycki <macro@ds2.pg.gda.pl>
5742 * config/tc-i386.c (md_apply_fix3): Convert BFD_RELOC_16 with
5743 fx_pcrel set to BFD_RELOC_16_PCREL. Similarly for BFD_RELOC_8.
5744 Handle BFD_RELOC_16_PCREL and BFD_RELOC_8_PCREL. Return changed
5745 value for correct overflow check in write.c:fixup_segment.
5746 * write.c (fixup_segment): Move bitfield overflow checks to after
5747 the md_apply_fix call.
5748 * config/obj-coff.c (fixup_segment): Likewise.
5749 * doc/internals.texi (CPU backend): Mention md_apply_fix modifying
5750 valueT *val argument.
5751
5752 Fri May 14 10:52:13 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
5753
5754 * config/atof-ieee.c (gen_to_words): Correctly round a
5755 denormalized number. Fix off-by-one in range checking for
5756 exponent in a denormal.
5757
5758 1999-05-10 Nick Clifton <nickc@cygnus.com>
5759
5760 * config/tc-mcore.c (parse_reg): Accept 'sp' as a valid register
5761 name.
5762
5763 Thu May 13 09:46:59 1999 Joel Sherrill (joel@OARcorp.com)
5764
5765 * configure.in (i386-*-rtemself*, sh-*-rtemself*): New targets.
5766
5767 1999-05-12 Alan Modra <alan@spri.levels.unisa.edu.au>
5768
5769 * config/tc-i386.h (InvMem): New flag. Add to AnyMem.
5770 (ReverseRegRegmem): Remove.
5771 (ImmExt): New flag. Renumber some of the opcode_modifier bits.
5772 * config/tc-i386.c (md_assemble): Test for PIII SIMD and AMD
5773 3DNow! via ImmExt opcode_modifier. Remove ReverseRegRegmem
5774 kludge.
5775
5776 From Doug Ledford <dledford@redhat.com>
5777 * config/tc-i386.h (RegXMM): New for P/III.
5778 * config/tc-i386.c: Add support for P/III.
5779
5780 Sat May 8 23:28:50 1999 Richard Henderson <rth@cygnus.com>
5781
5782 * config/tc-ppc.c (md_parse_option): Recognize -mppc64bridge.
5783 (md_begin): Allow ppc32 insns in ppc64bridge mode.
5784 (ppc_insert_operand): Accept SIGNOPT in ppc64 mode.
5785
5786 Thu May 6 23:13:39 1999 Richard Henderson <rth@cygnus.com>
5787
5788 * config/tc-i386.c (i386_immediate): Skip whitespace before
5789 complaining about junk after expression.
5790 (i386_displacement): Likewise.
5791
5792 Thu May 6 19:50:14 1999 Richard Henderson <rth@cygnus.com>
5793
5794 * symbols.c (symbol_find_base): Use memcpy instead of strcpy.
5795 Don't copy before downcaseing.
5796
5797 1999-05-05 Catherine Moore <clm@cygnus.com>
5798
5799 * tc-m68k.c: Include elf/m68k.h.
5800 (m68k_elf_final_processing): New routine.
5801 * tc-m68k.h (elf_tc_final_processing m68k_elf_final_processing):
5802 Define.
5803
5804 Mon May 3 10:26:03 1999 Jeffrey A Law (law@cygnus.com)
5805
5806 * config/tc-hppa.c (md_apply_fix): Handle 22 bit fmt insn like a
5807 17 bit fmt insn.
5808
5809 1999-04-30 Nick Clifton <nickc@cygnus.com>
5810
5811 * config/tc-mcore.c (mcore_s_section): Dump literals before
5812 changing section.
5813
5814 1999-04-29 Nick Clifton <nickc@cygnus.com>
5815
5816 * config/tc-mcore.c (md_apply_fix3): Insert reloc addend into insn
5817 for COFF/PE port.
5818
5819 Mon Apr 26 12:34:37 1999 Doug Evans <devans@canuck.cygnus.com>
5820
5821 * config/tc-fr30.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
5822 (TC_INIT_FIX_DATA): Delete.
5823 * config/tc-m32r.h (TC_FIX_TYPE): Delete, cgen fields moved to write.h.
5824 (TC_INIT_FIX_DATA): Delete.
5825 * write.h (struct fix): New member fx_cgen, ifdef USING_CGEN.
5826 * write.c (fix_new_internal): Initialize fx_cgen member.
5827 * cgen.c (gas_cgen_record_fixup,gas_cgen_record_fixup_exp): Update.
5828 (gas_cgen_md_apply_fix3): Update.
5829 * config/tc-m32r.c (md_cgen_lookup_reloc): Update.
5830 (md_cgen_record_fixup_exp): Update.
5831 (FX_OPINFO_R_TYPE): Update.
5832
5833 * frags.c (frag_var,frag_variant): Initialize fr_cgen here.
5834 * config/tc-fr30.h (TC_FRAG_INIT): Delete.
5835 * config/tc-m32r.h (TC_FRAG_INIT): Delete.
5836 * frags.h (struct frag): Make opindex, opinfo ints.
5837
5838 * config/tc-fr30.c (FX_OPINFO_R_TYPE): Delete, unused.
5839
5840 1999-04-26 Tom Tromey <tromey@cygnus.com>
5841
5842 * aclocal.m4, configure: Updated for new version of libtool.
5843
5844 1999-04-22 Nick Clifton <nickc@cygnus.com>
5845
5846 * config/tc-mcore.c (md_apply_fix3): Renamed function from
5847 md_apply_fix.
5848 (md_apply_fix3): Do not fix up absolute relocations against
5849 symbolic values.
5850
5851 * config/tc-mcore.h (MD_APPLY_FIX3): Define.
5852
5853 1999-04-20 Nick Clifton <nickc@cygnus.com>
5854
5855 * config/tc-mcore.c (md_pseudo_table): Add intercepts for section
5856 changes and data-in-text directives.
5857 (mcore_cons): New function: intercept cons() operations.
5858 (mcore_float_cons): New function: intercept float_cons()
5859 operations.
5860 (mcore_stringer): New function: intercept stringer() operations.
5861
5862 1999-04-18 Ian Lance Taylor <ian@zembu.com>
5863
5864 * obj.h (struct format_ops): Change generate_asm_lineno field to
5865 take no parameters.
5866 * config/obj-ecoff.h (OBJ_GENERATE_ASM_LINENO): Don't define.
5867
5868 * config/tc-alpha.c (find_opcode_match): Add default case to
5869 switch.
5870 (find_macro_match): Likewise.
5871 (load_expression): Parenthesize && within ||.
5872
5873 * config/tc-alpha.h (TC_RELOC_RTSYM_LOC_FIXUP): Define.
5874
5875 1999-04-17 Nick Clifton <nickc@cygnus.com>
5876
5877 * config/tc-mcore.c (md_pseudo_table): Add overrides for .bss
5878 .text .data .section pseudo ops.
5879 (mcore_s_section): New function. Dump lits before changing secs.
5880 (mcore_s_text): New function. Dump lits before changing secs.
5881 (mcore_s_data): New function. Dump lits before changing secs.
5882
5883 1999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
5884
5885 * config/tc-mips.c (mips_32bitmode): New.
5886 (md_begin): Set mips_32bitmode if needed.
5887 (mips_elf_final_processing): Don't set EF_MIPS_ARCH.
5888 Set EF_MIPS_32BITMODE.
5889
5890 Fri Apr 16 12:26:39 1999 Bob Manson <manson@charmed.cygnus.com>
5891
5892 * config/obj-coff.c (c_section_symbol): Fix typo in previous
5893 change.
5894
5895 1999-04-16 Nick Clifton <nickc@cygnus.com>
5896
5897 * config/tc-mcore.h (LOCAL_LABELS_FB): Define to 1.
5898
5899 Thu Apr 15 16:52:09 1999 Jeffrey A Law (law@cygnus.com)
5900
5901 * tc-hppa.c (pa_get_absolute_exression): Try to handle "5 %r3"
5902 expressions correctly.
5903
5904
5905 1999-04-15 Gavin Romig-Koch <gavin@cygnus.com>
5906
5907 * config/tc-mips.c (mips_elf_final_processing): Set EF_MIPS_ARCH.
5908
5909 Mon Apr 12 23:45:07 1999 Jeffrey A Law (law@cygnus.com)
5910
5911 * tc-hppa.c (pa_ip, case '3'): New case for PA2.0 fmpyfadd
5912 and fmpynfadd instructions.
5913
5914 1999-04-11 Richard Henderson <rth@cygnus.com>
5915
5916 * as.h (environ): Declare it, if needed.
5917 * as.c (dump_statistics): Don't declare environ.
5918 * configure.in (environ): Detect declaration.
5919 * configure, config.in: Rebuild
5920
5921 * config/tc-i386.c (i386_immediate): Accept @GOT relocations.
5922 (i386_displacement): Allocate enough space for replacement buffer.
5923 Clean up replacement buffer initialization.
5924
5925 1999-04-11 Bob Manson <manson@charmed.cygnus.com>:
5926
5927 * subsegs.c (section_symbol): Don't create a new symbol if one
5928 already exists; instead, use the existing one, but set its segment
5929 and frag data if it hasn't already been defined.
5930 * config/obj-coff.c (c_section_symbol): Likewise.
5931
5932 Sat Apr 10 20:10:02 1999 Richard Henderson <rth@cygnus.com>
5933
5934 * tc-alpha.c (load_expression): Call as_bad instead of abort.
5935
5936 1999-04-08 Nick Clifton <nickc@cygnus.com>
5937
5938 * config/tc-mcore.c: New File: Support routines for MCore
5939 assembler.
5940 * config/tc-mcore.h: New File: Definitions for MCore assembler.
5941 * config/obj-coff.c: Add support for mcore-pe target.
5942
5943 * Makefile.am: Add support for MCore targets.
5944 * Makefile.in: Regenerate.
5945 * configure.in: Add support for MCore targets.
5946 * configure: Regenerate.
5947
5948 * doc/all.texi: Set MCORE.
5949 * doc/as.texinfo: Document MCore specific command line options.
5950
5951 * write.h: Prevent multiple inclusion.
5952
5953 1999-04-06 Ian Lance Taylor <ian@zembu.com>
5954
5955 * asintl.h (LC_MESSAGES): Never define.
5956 * as.c (main): Don't pass LC_MESSAGES to setlocale if the system
5957 does not define it.
5958 * gasp.c (main): Don't pass LC_MESSAGES to setlocale if the system
5959 does not define it.
5960
5961 * Makefile.am (m68k-parse.c): If configuring in the source
5962 directory, copy m68k-parse.y into the local directory before
5963 running ylwrap, to remove spurious differences when generating
5964 snapshots.
5965 * Makefile.in: Rebuild.
5966
5967 * config/tc-sparc.h (md_do_align): Just allocate the number of
5968 bytes necessary, rather than always allocating 1024.
5969
5970 1999-04-04 Ian Lance Taylor <ian@zembu.com>
5971
5972 * listing.c (listing_newline): Add cast to avoid warning.
5973 * read.c (generate_lineno_debug): Add cases to switch. Reindent.
5974 * config/tc-i386.c (i386_scale): Add return value.
5975 (build_displacement_string): Remove unused local temp_disp2.
5976 (i386_intel_memory_operand): Add parentheses to avoid warning.
5977 (i386_intel_operand): Remove unused local end_of_operand_string.
5978 (i386_operand): Remove unused local operand_modifier.
5979 (i386_operand): Add parens to avoid warning.
5980
5981 1999-04-04 Don Bowman <don@pixsci.com>
5982
5983 * configure.in: Add mips*-*-vxworks* target; have it define
5984 MIPS_STABS_ELF.
5985 * configure, config.in: Rebuild.
5986
5987 1999-03-31 Nick Clifton <nickc@cygnus.com>
5988
5989 * configure.in (emulations): Add support for arm-epoc-pe.
5990 * configure: Regenerate.
5991 * config/te-epoc-pe.h: New file. Define macros specific to
5992 arm-epoc-pe target.
5993 * config/tc-arm.h: Select epoc-pe-arm target format if configured
5994 for arm-epoc-pe target.
5995
5996 Mon Mar 29 10:15:40 CST 1999 Catherine Moore <clm@cygnus.com>
5997
5998 * tc-mips.c (md_apply_fix): Adjust value for linkonce sections.
5999
6000 Wed Mar 24 14:11:10 1999 Jeffrey A Law (law@cygnus.com)
6001
6002 * tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Clean up code to
6003 detect ",n" without a condition.
6004 (pa_parse_neg_cmpsub_cmpltr): Likewise.
6005
6006
6007 Tue Mar 23 11:28:23 1999 Jeffrey A Law (law@cygnus.com)
6008
6009 * tc-hppa.c (pa_ip, case '~'): The condition for a branch on bit
6010 instruction is encoded with one bit.
6011
6012
6013 1999-03-23 Ian Lance Taylor <ian@zembu.com>
6014
6015 * doc/internals.texi (CPU backend): Mention that
6016 line_separator_chars should not include newline. From thi
6017 <ttn@mingle.glug.org>.
6018
6019 1999-03-22 Doug Evans <devans@casey.cygnus.com>
6020
6021 * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
6022 * config/tc-m32r.c (md_begin): Update call to m32r_cgen_cpu_open.
6023
6024 Sun Mar 21 18:08:18 1999 Richard Henderson <rth@cygnus.com>
6025
6026 * tc-alpha.c (md_assemble): Allow '6' in an opcode.
6027
6028 Thu Mar 18 10:55:30 1999 Jeffrey A Law (law@cygnus.com)
6029
6030 * tc-hppa.c (pa_ip, case 'a'): Do not call pa_parse_..._cmpsub_cmpltr.
6031
6032
6033 Thu Mar 18 02:30:07 1999 Jeffrey A Law (law@cygnus.com)
6034
6035 * tc-hppa.c (pa_ip, case 'd'): Do not allow ",n".
6036
6037 1999-03-15 Martin Hunt <hunt@cygnus.com>
6038
6039 * app.c (do_scrub_begin): Change '-' back to a symbol char
6040 so we can use multiple opcodes on a line again.
6041
6042 * config/tc-d30v.c: By default, warn if a symbol has
6043 the same name as a register. Plus some minor
6044 updates from the branch.
6045
6046 1999-03-13 Nick Clifton <nickc@cygnus.com>
6047
6048 * config/tc-d30v.c (md_apply_fix3): Handle BFD_RELOC_8,
6049 BFD_RELOC_16 and BFD_RELOC_64.
6050
6051 1999-03-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
6052
6053 * expr.c (expr): Add missing else.
6054
6055 1999-03-12 Nick Clifton <nickc@cygnus.com>
6056
6057 * config/tc-arm.c (md_apply_fix3): Improve error message.
6058
6059 1999-03-11 Doug Evans <devans@casey.cygnus.com>
6060
6061 * Makefile.am (CPU_TYPES): Add fr30.
6062 (cgen.o): Add $(CGEN_CPU_PREFIX)-desc.h dependency.
6063 (fr30,m32r dependencies): Update.
6064 * Makefile.in: Rebuild.
6065
6066 * cgen.c (gas_cgen_record_fixup): Update use of operand->type.
6067 (gas_cgen_record_fixup_exp): Ditto.
6068 (gas_cgen_finish_insn): Call cgen_operand_lookup_by_num.
6069 (gas_cgen_md_apply_fix3): Ditto. Update call to set_vma_operand.
6070 * config/tc-fr30.c (md_begin): Update call to fr30_cgen_cpu_open.
6071 (md_cgen_lookup_reloc): Update use of operand->type.
6072 * config/tc-m32r.c (md_begin): Update call to fr30_cgen_cpu_open.
6073 (md_convert_frag): Call cgen_operand_lookup_by_num.
6074 (md_cgen_lookup_reloc): Update use of operand->type.
6075 (m32r_cgen_record_fixup_exp): Ditto.
6076
6077 1999-03-09 Jim Blandy <jimb@zwingli.cygnus.com>
6078
6079 * config/tc-mips.c (md_show_usage): Fix message.
6080
6081 1999-03-03 Nick Clifton <nickc@cygnus.com>
6082
6083 * doc/c-arm.texi (ARM Syntax): Document new command line switches
6084 and LDR reg,=<expr> instruction.
6085
6086 * config/tc-arm.c: Add support for -mcpu=arm810, -mcpu=arm9 and
6087 -mcpu=arm9tdmi.
6088
6089 Fri Feb 19 09:36:30 1999 Ian Lance Taylor <ian@cygnus.com>
6090
6091 * doc/c-arm.texi (ARM-Chars): Fix typo in use of '@'.
6092
6093 1999-02-17 Nick Clifton <nickc@cygnus.com>
6094
6095 This patch was created by: Scott Bambrough
6096 <scottb@corelcomputer.com>
6097
6098 * app.c:
6099 Special cased '@' character. The '@' character is used as the
6100 ARM assembler comment character, as a special character
6101 and in ELF .symver pseudo-op's, and as a special character in
6102 .type and .section pseudo-ops.
6103 (symver_pseudo): New static variable.
6104 (symver_state): New static variable.
6105 (struct app_save): Add field 'symver_state'.
6106 (app_push): Save global symver_state int struct app_save.
6107 (app_pop): Restore global symver_state from struct app_save.
6108 (do_scrub_chars): Special case handling of '@' character in
6109 .symver pseudo-ops.
6110
6111 * configure.in: Modified to recognize armv* uname syntax from ARM
6112 Linux kernel.
6113 * configure: Regenerated.
6114
6115 * config/obj-elf.c (obj_elf_section): Allow '%' as well as '@' as
6116 a prefix to the section's type.
6117 (obj_elf_type): Allow '%' as well as '@' and '#' as prefixes to
6118 the type's typename.
6119
6120 * config/tc-arm.h: Add support for PIC generation:
6121 (pic_code): New boolean.
6122 (obj_relocate_extern): Define.
6123 (TC_RELOC_RTSYM_LOC_FIXUP): Define
6124 (TC_CONS_FIX_NEW): Define.
6125 (tc_fix_adjustable): Define.
6126 (GLOBAL_OFFSET_TABLE_NAME): Define.
6127
6128 * config/tc-arm.c: Add support for PIC generation:
6129 (line_seperator_chars): Allow ';' as a seperator for Linux.
6130 (is_immediate_prefix): New macro.
6131 (arm_parse_reloc): New function.
6132 (s_arm_elf_cons): New function.
6133 (do_branch): Special case for BFD_RELOC_ARM_PLT32.
6134 (md_undefined_symbol): Special case handling for the Global Offset
6135 Table's symbol.
6136 (md_apply_fix3): Handle PIC relocs.
6137 (tc_gen_reloc): Handle PIC relocs.
6138 (md_parse_option): Add support for '-k' command line switch to
6139 enable PIC generation.
6140 (cons_fix_new_arm): New function.
6141 (s_arm_elf_cons): New function.
6142
6143 Tue Feb 16 16:31:53 1999 Ian Lance Taylor <ian@cygnus.com>
6144
6145 * configure.in: Add comments for uses of AC_DEFINE.
6146 * acinclude.m4: Likewise.
6147 * acconfig.h: Remove.
6148 * aclocal.m4: Rebuild.
6149 * configure: Rebuild.
6150 * Makefile.in: Rebuild.
6151 * config.in: Rebuild.
6152
6153 1999-02-15 Jim Lemke <jlemke@cygnus.com>
6154
6155 * config/tc-mips.c (mips_ip: case 'o'): Fix assertion failure for
6156 non-constant offset from a base register.
6157
6158 1999-02-14 Ken Raeburn <raeburn@raeburn.org>
6159
6160 * config/tc-alpha.c (md_show_usage): Put \ before newline in
6161 strings always.
6162
6163 Sat Feb 13 14:10:10 1999 Richard Henderson <rth@cygnus.com>
6164
6165 * config/tc-alpha.c (cpu_types): Enable EV6 PALcode with -m21264.
6166 (emit_insn): Look for pc-relative and no-overflow specifiers on
6167 internal relocation types.
6168
6169 1999-02-13 Jim Blandy <jimb@zwingli.cygnus.com>
6170
6171 * doc/c-mips.texi (MIPS Opts): Updated list of -mNNNN and
6172 -mcpu=NNNN flags.
6173
6174 * config/tc-mips.c: Remove all the mips_NNNN variables; just use
6175 mips_cpu instead.
6176 (mips_4650, mips_4010, mips_4100): Variables removed.
6177 (hilo_interlocks, gpr_interlocks, append_insn, macro_build, macro,
6178 macro2, mips16_macro, mips_ip): Test mips_cpu, not the mips_NNNN
6179 variables.
6180 (md_begin): Don't bother initializing the mips_NNNN variables;
6181 mips_cpu is set, and that's good enough now.
6182 (md_parse_option): Have the -mNNNN options set mips_cpu instead of
6183 the mips_NNNN variable. The -no-mNNNN flags are now no-ops.
6184 (show): New function, to handle wrapping in the CPU lists.
6185 (md_show_usage): Update lists of -mcpu and -mNNNN switches.
6186
6187 Sat Feb 13 00:17:26 1999 Richard Henderson <rth@cygnus.com>
6188
6189 * config/tc-i386.c (i386_intel_operand): Ignore `SHORT' rather
6190 than treat as an immediate specifier.
6191
6192 Thu Feb 11 16:18:31 1999 Richard Henderson <rth@cygnus.com>
6193
6194 * config/tc-i386.c: Prototype many functions.
6195 (set_intel_syntax): Accept `prefix'/`noprefix' specifiers.
6196 (i386_immediate): Remove unused second argument.
6197 (i386_intel_operand): Fix i386_is_reg typo.
6198 (i386_operand): Use allow_naked_reg.
6199 (output_invalid): Make operand int for K&R.
6200
6201 Thu Feb 11 11:21:02 1999 Ian Lance Taylor <ian@cygnus.com>
6202
6203 * Makefile.am (EXTRA_as_new_SOURCES): Uncomment--fixed by automake
6204 patch.
6205 * Makefile.in: Rebuild.
6206
6207 1999-02-09 Doug Evans <devans@casey.cygnus.com>
6208
6209 * Makefile.am (DISTCLEANFILES): Change cgen-opc.h to cgen-desc.h.
6210 (cgen.o): Ditto.
6211 (EXTRA_as_new_SOURCES): Comment out.
6212 (.tcdep): <arch>-opc.h renamed to <arch>-desc.h.
6213 * Makefile.in: Rebuild.
6214 * doc/Makefile.in: Rebuild.
6215 * configure.in: Require autoconf 2.13. Redo using_cgen handling.
6216 Delete call to AM_CYGWIN32. Replace AM_EXEEXT with AC_EXEEXT.
6217 (AC_OUTPUT): <arch>-opc.h renamed to <arch>-desc.h.
6218 * configure: Rebuild.
6219 * aclocal.m4: Rebuild.
6220 * config.in: Rebuild.
6221 * cgen.c: Include cgen-desc.h, not cgen-opc.h.
6222 (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
6223 (gas_cgen_cpu_desc): Renamed from gas_cgen_opcode_desc.
6224 CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
6225 CGEN_OPERAND_ATTR renamed to CGEN_OPERAND_ATTR_VALUE.
6226 (gas_cgen_record_fixup): Remove unnecessary != 0 test.
6227 (gas_cgen_record_fixup_exp): Ditto.
6228 (gas_cgen_finish_insn): Ditto. Refer to operand table via cpu
6229 descriptor, not global variable.
6230 (gas_cgen_md_apply_fix3): Refer to operand_table via cpu
6231 descriptor, not global variable. Refer to insert_operand handler
6232 via cpu descriptor, not global function.
6233 * cgen.h (*): CGEN_OPCODE_DESC renamed to CGEN_CPU_DESC.
6234 * config/tc-fr30.c: Include opcodes/fr30-desc.h.
6235 (*): gas_cgen_opcode_desc renamed to gas_cgen_cpu_desc.
6236 CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
6237 Update call to CGEN_OPERAND_TYPE,CGEN_INSN_OPERANDS.
6238 * config/tc-m32r.c: Ditto.
6239 (assemble_two_insns): Update calls to cgen_lookup_get_insn_operands.
6240 (md_assemble): Ditto.
6241 (md_convert_frag): Update call to CGEN_OPERAND_ENTRY.
6242
6243 1999-02-09 Nick Clifton <nickc@cygnus.com>
6244
6245 * config/tc-arm.c (md_apply_fix3): Fix handling of label1 - label2
6246 relocations for ELF targets.
6247
6248 1999-02-08 Nick Clifton <nickc@cygnus.com>
6249
6250 * configure.in: Add support for StrongARM target.
6251 * configure: Regenerate.
6252
6253 1999-02-05 Nick Clifton <nickc@cygnus.com>
6254
6255 * config/tc-arm.h: Tidy OBJ_ELF and OBJ_COFF definitions.
6256
6257 * config/tc-arm.c (md_apply_fix3): Fix BFD_RELOC_ARM_PCREL_BRANCH
6258 for COFF ports.
6259
6260 Wed Feb 3 11:35:47 1999 Richard Henderson <rth@cygnus.com>
6261
6262 * config/tc-alpha.c (md_show_usage): Document pca56 and ev6 options.
6263
6264 Mon Feb 1 20:37:30 1999 Catherine Moore <clm@cygnus.com>
6265
6266 * config/tc-i386.h (LONG_DOUBLE_MNEM_SUFFIX): Define.
6267 (INTEL_DWORD_MNEM_SUFFIX): Define.
6268 (BYTE_PTR): Define.
6269 (WORD_PTR): Define.
6270 (DWORD_PTR): Define.
6271 (XWORD_PTR): Define.
6272 (SHORT): Define.
6273 (OFFSET_FLAT): Define.
6274 (FLAT): Define.
6275 (NONE_FOUND): Define.
6276 (No_dSuf): Define.
6277 (No_xSuf): Define.
6278 * config/tc-i386.c (set_intel_syntax): New routine.
6279 (intel_syntax): Declare.
6280 (allow_naked_reg): Declare.
6281 (md_pseudo_table): Support .intel_syntax and .att_syntax.
6282 (intel_float_operand): New routine.
6283 (md_assemble): Handle INTEL_DWORD_MNEM_SUFFIX.
6284 Handle brackets as well as parens. Call i386_intel_operand for
6285 intel syntax. Reverse operands if appropriate. Handle new
6286 suffixes. Handle movzx and movsx.
6287 (i386_is_reg): New routine.
6288 (i386_immediate): New routine.
6289 (i386_scale): New routine.
6290 (i386_displacement): New routine.
6291 (i386_operand_modifier): New routine.
6292 (build_displacement_string): New routine.
6293 (i386_parse_seg): New routine.
6294 (i386_intel_memory_operand): New routine.
6295 (i386_intel_operand): New routine.
6296 (i386_operand): Call i386_displacement, i386_immediate,
6297 i386_scale, etc. instead of handling inline.
6298 (parse_register): Handle registers without prefix.
6299
6300 Mon Feb 1 12:24:58 1999 Catherine Moore <clm@cygnus.com>
6301
6302 * configure: Regenerate.
6303 * configure.in (arm-*-oabi): New.
6304 (thumb-*-oabi): New.
6305 * config/tc-arm.c (target_oabi): Declare.
6306 (md_apply_fix3): Support REL relocs.
6307 (md_parse_option): Handle -oabi.
6308 (elf32_arm_target_format): New routine.
6309 (md_longopts): Add OPTION_OABI.
6310 * config/tc-arm.h: Redefine TARGET_FORMAT.
6311
6312
6313 1999-01-28 Nick Clifton <nickc@cygnus.com>
6314
6315 * write.c (write_relocs): Handle out of range error.
6316
6317 * config/tc-fr30.c (fr30_fix_adjustable): New function.
6318 (fr30_force_relocation): Default to 0.
6319
6320 * config/tc-fr30.h (obj_fix_adjustable): Define.
6321 (TC_FORCE_RELOCATION): Define.
6322
6323 * cgen.c (gas_cgen_md_apply_fix3): Do not apply fixes to VTABLE
6324 relocs.
6325
6326 1999-01-16 Nick Clifton <nickc@cygnus.com>
6327
6328 * config/tc-d30v.c (write_2_short): Do not generate a sequential
6329 merge of two instructions if the left instruciton kills the right.
6330
6331 1999-01-11 Doug Evans <devans@casey.cygnus.com>
6332
6333 * Makefile.in: Regenerate.
6334 * configure.in: Redo test for using cgen.
6335 * configure: Regenerate.
6336
6337 1999-01-09 Nick Clifton <nickc@cygnus.com>
6338
6339 * config/obj-coff.h (obj_adjust_symtab): Prevent accidental
6340 redefinition of this macro.
6341
6342 Tue Jan 5 21:58:03 1999 Doug Evans <devans@canuck.cygnus.com>
6343
6344 * config/tc-mips.c (mips_frob_file): Disable "Unmatched %hi reloc"
6345 warning.
6346
6347 1998-12-29 Gavin Romig-Koch <gavin@cygnus.com>
6348
6349 * config/tc-mips.c (append_insn): For mips16, insert a nop between
6350 a read of HI or LO and an immediatly following branch.
6351
6352 1998-12-29 Gavin Romig-Koch <gavin@cygnus.com>
6353
6354 * config/tc-mips.c (md_begin): Another correction to the setting of
6355 mips_eabi64.
6356
6357 1998-12-23 Gavin Romig-Koch <gavin@cygnus.com>
6358
6359 * config/tc-mips.c (md_begin): Correct type-o in setting of
6360 mips_eabi64.
6361
6362 1998-12-21 Nick Clifton <nickc@cygnus.com>
6363
6364 * config/tc-m32r.c (md_assemble): Emit a NOP after a relaxable 16
6365 bit insn when optimizing, so that parallelised instructions will
6366 start on a 32 bit boundary.
6367
6368 1998-12-19 Gavin Romig-Koch <gavin@cygnus.com>
6369
6370 * config/tc-mips.c (mips_eabi64): New.
6371 (md_begin): Set mips_eabi64.
6372 (mips_elf_final_processing): Use it.
6373
6374 1998-12-18 Gavin Romig-Koch <gavin@cygnus.com>
6375
6376 * config/tc-mips.c (mips_elf_final_processing):
6377 Correct setting of ABI in e_flags.
6378
6379 Wed Dec 16 16:17:22 1998 Dave Brolley <brolley@cygnus.com>
6380
6381 * config/tc-fr30.c (md_assemble): Warn about invalid instructions
6382 in delay slots.
6383
6384 1998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
6385
6386 * config/tc-mips.c (md_begin,md_parse_option): Handle vr4111.
6387
6388 1998-12-15 Doug Evans <devans@casey.cygnus.com>
6389
6390 * cgen.c (gas_cgen_md_apply_fix3): Mark as an error, rather than a
6391 warning, values that don't fit in the field.
6392
6393 1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
6394
6395 * config/tc-mips.c (mips_abi_string): New.
6396 (md_parse_option,md_longopts): Add mabi.
6397 (mips_elf_final_processing): Set e_flags based on mabi flag.
6398
6399 1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
6400
6401 * config/tc-mips.c (md_parse_option): Handle vr4111.
6402
6403 98-12-11 Ken Raeburn <raeburn@cygnus.com>
6404
6405 * config/tc-h8300.c (build_bytes): Change message given if the
6406 instruction requires H8/300H mode and we're not in Hmode, to
6407 suggest that it may be the operand modes that are the problem, not
6408 necessarily the opcode.
6409
6410 1998-12-10 Nick Clifton <nickc@cygnus.com>
6411
6412 * config/tc-fr30.c: Add line separator character.
6413
6414 Tue Dec 8 19:51:50 1998 Mark Klein <mklein@dis.com>
6415
6416 * configure.in (hppa-*-mpeix*): New target.
6417 * config/obj-som.h (obj_som_compiler): Declare.
6418 * config/obj-som.c (compiler_seen): New static variable.
6419 (obj_som_compiler): New function.
6420 * config/tc-hppa.c: Update tc_data uses for change to bfd/som.h.
6421 (md_pseudo_table): Add "compiler" if OBJ_SOM.
6422 (pa_type_args): Set hppa_priv_level.
6423 (pa_compiler): New static function if OBJ_SOM.
6424 * configure: Rebuild.
6425
6426 Tue Dec 8 15:00:50 1998 Ian Lance Taylor <ian@cygnus.com>
6427
6428 * read.c (output_leb128): Don't mark as inline.
6429
6430 1998-12-08 Andrew MacLeod <amacleod@cygnus.com>
6431
6432 * config/tc-ppc.c (ppc_vbyte): Prototype and new function for
6433 AIX .vbyte unaligned data support.
6434 (md_pseudo_table): Add 'vbyte' to list of valid pseudos.
6435 (ppc_elf_validate_fix): Add eh_frame to list of ELF relocatable
6436 sections.
6437
6438 1998-12-07 Nick Clifton <nickc@cygnus.com>
6439
6440 * config/tc-d30v.c (md_assemble, do_assemble): Improve erroneous
6441 input handling.
6442
6443 Mon Dec 7 09:48:34 1998 Catherine Moore <clm@cygnus.com>
6444
6445 * config/tc-arm.c (elf32_arm_force_relocation): Check for
6446 BFD_RELOC_ARM_PCREL_BRANCH.
6447
6448 Sun Dec 6 12:46:36 1998 Ian Lance Taylor <ian@cygnus.com>
6449
6450 * configure.in: Define TARGET_BYTES_{BIG,LITTLE}_ENDIAN after
6451 checking the target type.
6452 (mips-dec-bsd*): Set endian to little.
6453 * configure: Rebuild.
6454
6455 COFF weak symbol support, based on patches from Mark Elbrecht
6456 <snowball3@usa.net>:
6457 * config/obj-coff.h (S_IS_WEAK): Define if not BFD_ASSEMBLER.
6458 * config/obj-coff.c (obj_coff_weak): New static function.
6459 (obj_coff_endef) [both versions]: Handle weak symbols.
6460 (coff_frob_symbol): Likewise.
6461 (yank_symbols): Likewise.
6462 (obj_pseudo_table): Add "weak".
6463
6464 * configure.in (m68k-*-gnu*): New target. From Aymeric Vincent
6465 <aymeric.vincent@emi.u-bordeaux.fr>.
6466 * aclocal.m4: Rebuild with current tools.
6467 * configure: Rebuild.
6468
6469 * config/tc-alpha.c (emit_ldgp): Give an error message rather than
6470 an assertion failure for a case we can't handle when OBJ_ECOFF.
6471
6472 * expr.c (operator): And with 0xff to avoid problems with signed
6473 char.
6474
6475 1998-12-03 Nick Clifton <nickc@cygnus.com>
6476
6477 * config/tc-fr30.c (md_cgen_lookup_reloc): Generate
6478 BFD_RELOC_FR30_48 instead of BFD_RELOC_FR30_32.
6479
6480 1998-12-02 Nick Clifton <nickc@cygnus.com>
6481
6482 * config/tc-fr30.c (md_cgen_lookup_reloc): Enable relocs for
6483 LDI:20 insn.
6484
6485 Thu Nov 26 11:23:48 1998 Dave Brolley <brolley@cygnus.com>
6486
6487 * config/tc-fr30.c (md_pcrel_from_section): Restore previous
6488 calculation of pcrel point.
6489
6490 Tue Nov 24 17:21:52 1998 Nick Clifton <nickc@cygnus.com>
6491
6492 * config/tc-fr30.c (md_pcrel_from_section): Fix calculation of
6493 pcrel point.
6494
6495 Tue Nov 24 14:54:38 1998 Nick Clifton <nickc@cygnus.com>
6496
6497 * config/tc-d10v.c (md_assemble): Make static 'etype' have file
6498 scope.
6499 (d10v_cleanup): Only generate previous insn if a multiline insn is
6500 not pending.
6501
6502 Fri Nov 20 11:41:13 1998 Nick Clifton <nickc@cygnus.com>
6503
6504 * config/tc-fr30.c (md_cgen_lookup_reloc): Add support for
6505 FR30_OPERAND_I32.
6506
6507 Thu Nov 19 15:01:29 1998 Nick Clifton <nickc@cygnus.com>
6508
6509 * config/tc-arm.c (md_parse_option): Add support for -marm7xxx and
6510 -marm6xxx command line switches.
6511
6512 1998-11-18 Doug Evans <devans@casey.cygnus.com>
6513
6514 * Makefile.am (DEP): Use $(srcdir)/../mkdep.
6515 (itbl-ops.o): Delete duplicate dependencies.
6516 Rebuild dependencies.
6517 Add fr30 dependencies.
6518 * Makefile.in: Rebuild.
6519
6520 Tue Nov 17 13:42:42 1998 Nick Clifton <nickc@cygnus.com>
6521
6522 * config/tc-fr30.c (md_cgen_lookup_reloc): Updated to match latest
6523 opcode list.
6524 * listing.c: Ignore line terminator characters found inside
6525 strings.
6526
6527 Thu Nov 12 19:21:24 1998 Dave Brolley <brolley@cygnus.com>
6528
6529 * po/gas.pot: Regenerated.
6530
6531 Thu Nov 12 10:54:16 1998 Nick Clifton <nickc@cygnus.com>
6532
6533 * config/tc-fr30.c (fr30_is_colon_insn): New name for
6534 fr30_is_label_start(). Also checks for delay slot insns.
6535
6536 * config/tc-fr30.c (fr30_is_label_start): New function: Handle
6537 FR30 instructions which contain a colon in the mnemonic.
6538
6539 * config/tc-fr30.h (TC_START_LABEL): Define this macro.
6540
6541 Wed Nov 11 09:58:21 1998 Nick Clifton <nickc@cygnus.com>
6542
6543 * config/tc-fr30.c: Removed currently superflous code.
6544
6545 Tue Nov 10 13:13:05 1998 Nick Clifton <nickc@cygnus.com>
6546
6547 * config/tc-fr30.h: New file.
6548 * config/tc-fr30.c: Tweaking so that it will compile.
6549
6550 Tue Nov 10 14:41:33 1998 Catherine Moore <clm@cygnus.com>
6551
6552 * config/tc-d10v.h (obj_fix_adjustable): Define.
6553 (TC_FORCE_RELOCATION): Define.
6554 (d10v_force_relocation): Declare.
6555 * config/tc-d10v.c (tc_gen_reloc): Handle Vtable relocs.
6556 (md_apply_fix3): Handle Vtable relocs.
6557 (d10v_fix_adjustable): New.
6558 (d10v_force_relocation): New.
6559
6560 Mon Nov 9 14:25:06 1998 Nick Clifton <nickc@cygnus.com>
6561
6562 * config/tc-d30v.c: Change default behaviour to ignore potential
6563 conflicts between register name and symbol names.
6564
6565 Wed Nov 4 18:42:00 1998 Dave Brolley <brolley@cygnus.com>
6566
6567 * configure.in: Add fr30-*-*.
6568 * config/tc-fr30.c: New file.
6569 * Makefile.in: Regenerated.
6570 * config.in: Regenerated.
6571 * configure: Regenerated.
6572 * doc/Makefile.in: Regenerated.
6573 * po/gas.pot: Regenerated.
6574
6575 Mon Nov 2 20:54:16 1998 Doug Evans <devans@canuck.cygnus.com>
6576
6577 * config/tc-m32r.c (assemble_two_insns): Ensure both insns
6578 are 16 bit insns.
6579
6580 Mon Nov 2 20:10:18 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
6581
6582 * app.c (do_scrub_begin): Set characters above 127 to be symbol
6583 characters.
6584 (do_scrub_chars): Add some casts to unsigned char to avoid
6585 unwanted sign extension.
6586 * read.c (lex_type): Set characters about 127 to be symbol
6587 characters.
6588 * config/tc-i386.c (md_begin): Set identifier_chars and
6589 operand_chars for values above 127.
6590
6591 Mon Nov 2 15:05:33 1998 Geoffrey Noer <noer@cygnus.com>
6592
6593 * configure.in: detect cygwin* instead of cygwin32*
6594 * configure: regenerate
6595
6596 Tue Oct 27 13:18:40 1998 Nick Clifton <nickc@cygnus.com>
6597
6598 * listing.c: Add support for producing a listing from piped
6599 input.
6600
6601 Tue Oct 27 08:56:44 1998 Gavin Romig-Koch <gavin@cygnus.com>
6602
6603 * config/tc-mips.c (hilo_interlocks): Remove mips_3900.
6604 (append_insn): Account for the tx39's multiply behavior.
6605
6606 1998-10-26 Michael Meissner <meissner@cygnus.com>
6607
6608 * config/tc-m32r.c (assemble_two_insns): Rename assemble_two_insns
6609 from assemble_parallel_insns. Add support for '->' to indicate
6610 explicitly serializing the instructions.
6611 (md_assemble): Ditto.
6612
6613 Sat Oct 24 15:12:19 1998 Catherine Moore <clm@cygnus.com>
6614
6615 * config/tc-sh.c (sh_fix_adjustable): Adjust EXTERN and
6616 WEAK handling.
6617
6618 Thu Oct 22 12:41:33 1998 Catherine Moore <clm@cygnus.com>
6619
6620 * cgen.c (gas_cgen_md_apply_fix3): Revert last change.
6621
6622 Thu Oct 22 10:03:15 1998 Ron Unrau <runrau@cygnus.com>
6623
6624 * config/tc-mips.c : support frame and regmask/fregmask when
6625 MIPS_STABS_ELF is specified.
6626
6627 Wed Oct 21 11;34:51 1998 Catherine Moore <clm@cygnus.com>
6628
6629 * config/tc-sh.c (sh_fix_adjustable): Only include if OBJ_ELF.
6630 (md_apply_fix): Don't return 1 for VTABLE relocs.
6631 * config/tc-sh.h (obj_fix_adjustable): Define only if OBJ_ELF.
6632
6633 Tue Oct 20 11:18:28 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6634
6635 * doc/c-i386.texi: Replace occurences of "opcode" with
6636 "instruction mnemonic", "instruction", or "mnemonic" when
6637 referring to the name of an instruction. Use "opcode" when
6638 referring to the sequence of machine bytes.
6639
6640 * config/tc-i386.c (opcode_chars): Rename to mnemonic_chars.
6641 (is_opcode_char): Rename to is_mnemonic_char.
6642 (md_assemble and i386_operand): Correct error messages from
6643 "opcode" to "instruction mnemonic"
6644 Rename throughout opcode[] -> mnemonic[], opp -> mnem_p,
6645 MAX_OPCODE_SIZE -> MAX_MNEM_SIZE,
6646 DWORD_OPCODE_SUFFIX -> DWORD_MNEM_SUFFIX,
6647 WORD_OPCODE_SUFFIX -> WORD_MNEM_SUFFIX,
6648 BYTE_OPCODE_SUFFIX -> BYTE_MNEM_SUFFIX,
6649 SHORT_OPCODE_SUFFIX -> SHORT_MNEM_SUFFIX
6650 LONG_OPCODE_SUFFIX -> LONG_MNEM_SUFFIX
6651
6652 * config/tc-i386.h (*_MNEM_SUFFIX): Rename from *_OPCODE_SUFFIX.
6653
6654 * config/tc-i386.c (i386_operand): Check for garbage after
6655 register name.
6656
6657 Tue Oct 20 10:49:42 1998 Ian Lance Taylor <ian@cygnus.com>
6658
6659 * config/tc-i386.c (md_apply_fix3): Change handling of PCREL reloc
6660 for BFD_ASSEMBLER to only change value when COFF if TE_PE.
6661
6662 Mon Oct 19 20:20:42 1998 Catherine Moore <clm@cygnus.com>
6663
6664 * config/tc-sh.h (obj_fix_adjustable): Define.
6665 * config/tc-sh.c (sh_force_relocation): Handle VT relocs.
6666 (md_apply_fix): Likewise.
6667 (tc_gen_reloc): Likewise.
6668 (sh_fix_adjustable): New.
6669
6670 Mon Oct 19 12:35:43 1998 Doug Evans <devans@seba.cygnus.com>
6671
6672 * cgen.c (gas_cgen_finish_insn): Update handling of CGEN_INT_INSN_P.
6673 * cgen.h (gas_cgen_finish_insn): Update prototype.
6674 * config/tc-m32r.c (m32r_insn): CGEN_INT_INSN -> CGEN_INT_INSN_P.
6675 cgen_insn_t -> CGEN_INSN_INT.
6676 (make_parallel): Update handling of CGEN_INT_INSN_P.
6677 (assemble_parallel_insn): Ditto.
6678 (target_make_parallel): New function.
6679 (md_assemble): Use it.
6680
6681 Mon Oct 19 13:16:12 1998 Catherine Moore <clm@cygnus.com>
6682
6683 * config/tc-m32r.c (m32r_force_relocation): Fix typo.
6684
6685 Sun Oct 18 18:48:57 1998 Jeffrey A Law (law@cygnus.com)
6686
6687 * config/tc-sh.c (md_assemble): Make sure the entire opcode is
6688 converted into lower case.
6689
6690 Fri Oct 16 13:36:34 CDT Catherine Moore <clm@cygnus.com>
6691
6692 * cgen.c (gas_cgen_md_apply_fix3): Handle VTABLE relocs.
6693 (gas_cgen_tc_gen_reloc): Likewise.
6694 * config/tc-m32r.h (obj_fix_adjustable): Define.
6695 * config/tc-m32r.c (m32r_fix_adjustable): New.
6696 (m32r_force_relocation): Handle VTABLE relocs.
6697
6698 Wed Oct 14 11:33:38 1998 Nick Clifton <nickc@cygnus.com>
6699
6700 * doc/c-arm.texi (ARM Directives): Document .ltorn directive.
6701
6702 Mon Oct 12 11:07:21 1998 Nick Clifton <nickc@cygnus.com>
6703
6704 * config/tc-m32r.c (assemble_parallel_insn): Convert second opcode
6705 to lower case before parsing.
6706
6707 * config/tc-d30v.c (parallel_ok): Ignore conflicts when explicitly
6708 parallel insns modift buts in the PSW as a side effect.
6709
6710 Thu Oct 8 10:18:33 1998 Nick Clifton <nickc@cygnus.com>
6711
6712 * config/tc-d30v.c (find_format): Test for missing flag and
6713 control registers.
6714
6715 (md_apply_fix3): Fix error messages to avoid
6716 assumption about presence of a symbol.
6717
6718 (parallel_ok): Disallow parallel instructions that both modify the
6719 same flag register.
6720
6721 (find_format): Generate a warning if an odd numbered register is
6722 used as the first register in a mutli-register instruction.
6723
6724 Wed Oct 7 14:09:14 1998 Nick Clifton <nickc@cygnus.com>
6725
6726 * config/tc-d30v.c (md_apply_fix3): Do not assume that bad
6727 relocations are always associated with a symbol.
6728
6729 Tue Oct 6 09:31:15 1998 Catherine Moore <clm@cygnus.com>
6730
6731 * tc-sparc.h (TC_FORCE_RELOCATION): Define.
6732 (elf32_sparc_force_relocation): Declare.
6733 * tc-sparc.c (md_apply_fix3): Handle vtable relocs.
6734 (tc_gen_reloc): Handle vtable relocs.
6735 (elf32_sparc_force_relocation): New.
6736
6737 Mon Oct 5 09:25:32 1998 Catherine Moore <clm@cygnsu.com>
6738
6739 * symbols.c (S_IS_FUNCTION): New.
6740 * config/tc-v850.h (obj_fix_adjustable): Define.
6741 (TC_FORCE_RELOCATION): Define.
6742 (v850_force_relocation): Declare.
6743 * config/tc-v850.c (tc_gen_reloc): Use offset instead
6744 of fx_addnumber for VTABLE reloc addends.
6745 (md_apply_fix3): Handle VTABLE relocs.
6746 (v850_fix_adjustable): New.
6747 (v850_force_relocation): New.
6748
6749 Mon Oct 5 00:48:52 1998 Jeffrey A Law (law@cygnus.com)
6750
6751 * tc-hppa.c (fp_operand_format): Add some additional formats.
6752 (pa_ip): Do not automatically promote into pa2.0 mode.
6753 (pa_level): Handle ".level 2.0".
6754
6755 Sun Oct 4 20:57:43 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6756
6757 * config/tc-i386.c (md_assemble): Handle AMD_3DNOW_OPCODE.
6758 * config/tc-i386.h (template.extension_opcode): Change to
6759 unsigned int to allow full range of 8-bit opcode suffixes.
6760 (None): Redefine as 0xffff.
6761
6762 From Jeff B Epler <jepler@usgs.gov>
6763 * doc/c-i386.texi (i386-SIMD): New section.
6764
6765 Thu Oct 1 15:37:54 1998 Richard Henderson <rth@cygnus.com>
6766
6767 * read.c (discard_rest_of_line): New function.
6768 * read.h: Declare it.
6769 * config/tc-alpha.c (s_alpha_mask, s_alpha_frame): Use it.
6770
6771 Thu Oct 1 10:33:53 1998 Nick Clifton <nickc@cygnus.com>
6772
6773 * config/tc-d10v.c (find_symbol_matching_register): New function.
6774 (find_opcode): Cope with the case where a register name matches
6775 a symbol name.
6776
6777 Wed Sep 30 10:52:32 1998 Nick Clifton <nickc@cygnus.com>
6778
6779 * config/tc-v850.c (md_pcrel_from): Rename to
6780 v850_pcrel_from_section.
6781 (v850_pcrel_from_section): Do not resolves symbols in other
6782 sections.
6783
6784 * config/tc-v850.h (MD_PCREL_FROM_SECTION): Define.
6785
6786 Mon Sep 28 11:01:20 1998 Nick Clifton <nickc@cygnus.com>
6787
6788 * config/tc-d10v.c (find_opcode): Generate an error if a register
6789 is supplied for an operand that should not be a register.
6790
6791 Fri Sep 25 10:04:21 1998 Nick Clifton <nickc@cygnus.com>
6792
6793 * config/tc-d30v.c (write_2_short): But do allow delayed branch
6794 instructions to have another instruction in the right bin.
6795
6796 Thu Sep 24 09:28:34 1998 Nick Clifton <nickc@cygnus.com>
6797
6798 * config/tc-d30v.c (write_2_short): Do not allow instructions in
6799 the right container if the left container holds a branch
6800 instruction.
6801
6802 Wed Sep 23 10:54:29 1998 Nick Clifton <nickc@cygnus.com>
6803
6804 * config/tc-d30v.c (reg_name_search): Only warn if a name matches
6805 both a register name and symbol name.
6806 (find_format): Allow correct parsing of MVTSYS and MVFSYS insns.
6807
6808 Tue Sep 22 17:49:16 1998 Nick Clifton <nickc@cygnus.com>
6809
6810 * config/tc-d30v.c (write_2_short): Implement EITHER_BUT_PREFER_MU
6811 execution unit class.
6812
6813 (reg_name_search): If a name matches a register and a symbol,
6814 prefer the register.
6815 (find_format): Disallow flag registers when a general purpose
6816 register is required.
6817 If a number is required, but a register has been given, check to
6818 see if a symbol with the same name as the register exists, and if
6819 so, use that symbol.
6820
6821 Tue Sep 22 16:40:52 1998 Jim Wilson <wilson@cygnus.com>
6822
6823 * config/obj-elf.h (ECOFF_DEBUGGING): Add missing parens.
6824
6825 Tue Sep 22 15:44:21 1998 Nick Clifton <nickc@cygnus.com>
6826
6827 * config/tc-d30v.c (find_format): Do not accept flag registers as
6828 general purpose registers.
6829 (find_format): If an immediate value is expected at a given place
6830 in a format, but a register name has been provided instead, check
6831 to see if that register name matches the name of a predefined
6832 symbol and if it does, then use the symbol instead.
6833 (reg_name_search): If a register name matches a symbol name,
6834 prefer the register name to the symbol name.
6835
6836 Mon Sep 21 10:42:57 1998 Nick Clifton <nickc@cygnus.com>
6837
6838 * config/tc-m32r.c (m32r_do_align): After inserting NOPs, reset
6839 the previous insn to empty.
6840
6841 1998-09-20 Michael Meissner <meissner@cygnus.com>
6842
6843 * config/tc-ppc.c (md_apply_fix3): Do not break string into two
6844 pieces, forcing the use of an ANSI compiler.
6845
6846 Sun Sep 20 00:58:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6847
6848 * config/tc-m68k.h (TC_FORCE_RELOCATION): New macro. Force vtable
6849 relocs.
6850 * config/tc-m68k.c (md_apply_fix_2): Do nothing for vtable relocs.
6851
6852 Tue Sep 15 08:51:07 1998 Catherine Moore <clm@cygnus.com>
6853
6854 * config/obj-elf.c (obj_elf_vtable_inherit): Handle arm
6855 assembler syntax.
6856 (obj_elf_vtable_entry): Likewise.
6857 * config/tc-arm.h: Define TC_FORCE_RELOCATION for OBJ_ELF.
6858 * config/tc-arm.c (md_apply_fix3): Handle VTABLE relocations.
6859 (tc_gen_reloc): Likewise.
6860 (arm_fix_adjustable): Likewise.
6861 (elf32_arm_force_relocation): New.
6862 (armelf_frob_symbol): Remove coff-style symbol support.
6863
6864 Wed Sep 9 11:27:16 1998 Richard Henderson <rth@cygnus.com>
6865
6866 * config/tc-i386.c (i386_operand): Fix typo in last patch.
6867
6868 Tue Sep 8 18:10:01 1998 Catherine Moore <clm@cygnus.com>
6869
6870 * config/tc-arm.c (arm_adjust_symtab): Move #ifdef
6871 OBJ_COFF so that routine is defined for a.out format.
6872
6873 Tue Sep 8 15:56:19 1998 Richard Henderson <rth@cygnus.com>
6874
6875 * config/tc-i386.c (i386_operand): Detect non-segment registers
6876 used as segment prefixes.
6877
6878 Sat Sep 5 19:00:38 1998 Ian Lance Taylor <ian@cygnus.com>
6879
6880 * ehopt.c (check_eh_frame): Check the size of the FDE, and don't
6881 optimize across FDE boundaries.
6882
6883 * config/obj-coff.c (obj_coff_section): Preserve any link once
6884 flags when setting the section flags.
6885
6886 Fri Sep 4 17:07:14 1998 Nick Clifton <nickc@cygnus.com>
6887
6888 * config/tc-arm.h (obj_adjust_symtab): Fixed typo.
6889 * config/tc-arm.c (armelf_adjust_symtab): Reformatted.
6890
6891 Fri Sep 4 13:57:43 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
6892
6893 * config/tc-sparc.c (in_signed_range): Sign extend 32-bit words
6894 to the host width.
6895
6896 Wed Sep 2 11:31:14 1998 Richard Henderson <rth@cygnus.com>
6897
6898 * frags.c (frag_grow): Include the size of the frag struct in the
6899 obstack chunk size.
6900
6901 * subsegs.c (subseg_set_rest): Adjust the seginfo frchain start
6902 if the new subseg comes before the old.
6903
6904 Tue Sep 1 15:01:33 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
6905
6906 * config/tc-sparc.c (sparc_ip): Allow all digits in an instruction
6907 to handle edge8 and edge16.
6908
6909 Mon Aug 31 09:51:14 1998 Richard Henderson <rth@cygnus.com>
6910
6911 * config/obj-elf.c (obj_elf_vtable_inherit): Print error message
6912 before we clobber the symbol involved.
6913
6914 Mon Aug 31 10:58:06 1998 Catherine Moore <clm@cygnus.com>
6915
6916 * config/tc-arm.c: Remove OBJ_ELF definitions for
6917 S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS. Only
6918 use arm_adjust_symtab for OBJ_COFF.
6919 (armelf_adjust_symtab): New Routine.
6920 * config/tc-arm.h: Define obj_adjust_symtab to
6921 armelf_adjust_symtab for OBJ_ELF.
6922
6923 Sat Aug 29 22:18:51 1998 Richard Henderson <rth@cygnus.com>
6924
6925 * configure.in: Make all i386-elf targets use bfd_gas.
6926 * config/tc-i386.c (tc_i386_force_relocation): New.
6927 (tc_i386_fix_adjustable): Don't fix vtable relocs.
6928 (md_apply_fix3): Likewise.
6929 (tc_gen_reloc): Handle them.
6930 * config/tc-i386.h (TC_FORCE_RELOCATION): Always define, calling
6931 tc_i386_force_relocation.
6932
6933 Mon Aug 24 13:40:21 1998 Nick Clifton <nickc@cygnus.com>
6934
6935 * config/tc-arm.c (md_show_usage): Improve formatting of --help output.
6936
6937 Fri Aug 21 18:43:48 1998 Nick Clifton <nickc@cygnus.com>
6938
6939 * config/tc-d30v.c (md_assemble): Copy previous opcode over
6940 current opcode after writing the first insturction of a reverse
6941 sequential pair.
6942
6943 Fri Aug 21 07:30:35 1998 Doug Evans <devans@canuck.cygnus.com>
6944
6945 * read.h (generate_lineno_debug): Add prototype.
6946 * read.c (generate_lineno_debug): Make non-static.
6947
6948 Thu Aug 20 23:17:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6949
6950 * config/tc-i386.c (md_assemble): Only warn for address/data size
6951 prefixes.
6952
6953 Thu Aug 20 14:45:08 1998 Nick Clifton <nickc@cygnus.com>
6954
6955 * config/tc-arm.c (arm_fix_adjustable): Do not adjust relocations
6956 against Thumb function names, as the linker needs this information.
6957
6958 1998-08-20 Vladimir N. Makarov <vmakarov@cygnus.com>
6959
6960 * expr.c (operand): Check also that there is no advance in operand
6961 after atof_generic in order to decide "is it label 0f or floating
6962 point number?".
6963
6964 Wed Aug 19 09:30:16 1998 Nick Clifton <nickc@cygnus.com>
6965
6966 * config/tc-m32r.c: Replace double dash prefix to M32R specific
6967 command line options with a single dash.
6968 * doc/c-m32r.texi: Replace double dash prefix with a single dash.
6969
6970 Tue Aug 18 11:59:43 1998 Catherine Moore <clm@cygnus.com>
6971
6972 * tc-arm.h: Define obj_fix_adjustable for OBJ_ELF.
6973 * tc-arm.c (arm_fix_adjustable): New routine.
6974
6975 1998-08-13 Vladimir N. Makarov <vmakarov@cygnus.com>
6976
6977 * read.c (s_align, s_comm, s_mri_common, s_fail, s_globl, s_space,
6978 s_float_space, s_struct, cons_worker): Move ignore_rest_of_line or
6979 demand_empty_rest_of_line before mri_comment_end.
6980 (equals): Check garbage after expression before
6981 mri_comment_end in MRI mode.
6982
6983 Thu Aug 13 15:08:42 1998 Ian Lance Taylor <ian@cygnus.com>
6984
6985 * config/tc-mips.c (macro): Correct M_SGE_I/M_SGEUI_I case for a
6986 small immediate constant to use the constant itself rather than
6987 always using 1.
6988
6989 Wed Aug 12 18:47:38 1998 Ian Lance Taylor <ian@cygnus.com>
6990
6991 * config/tc-hppa.c (pa_enter): Call as_bad rather than abort.
6992 (pa_leave): Likewise.
6993
6994 Wed Aug 12 13:25:03 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
6995
6996 * config/tc-i386.c (md_assemble): Emit a warning for stand-alone
6997 prefixes.
6998 (i386_operand): Fix an error message.
6999
7000 Tue Aug 11 14:44:32 1998 Nick Clifton <nickc@cygnus.com>
7001
7002 * doc/c-arm.texi (ARM Directives): Document .req directive.
7003
7004 * config/tc-arm.c (reg_required_here): Display erroneous string if
7005 the register name could not be decoded.
7006 Do not set inst.instruction if the sift is -1.
7007
7008 Mon Aug 10 15:39:56 1998 Richard Henderson <rth@cygnus.com>
7009
7010 * config/tc-alpha.c (tc_gen_reloc): Bias WEAK symbols just as
7011 we do for EXTERN.
7012
7013 Mon Aug 10 15:06:18 1998 Nick Clifton <nickc@cygnus.com>
7014
7015 * config/tc-d30v.c (d30v_align): Always perform alignment request,
7016 even if it is belived to be unnecessary.
7017
7018 Mon Aug 10 17:48:09 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7019
7020 config/tc-i386.c (i386_operand): Size immediate constants by
7021 suffix (erroneously removed as part of July 7 change).
7022
7023 Sun Aug 9 20:45:32 1998 Catherine Moore <clm@cygnus.com>
7024
7025 * config/obj-elf.h: Check for redefinition of obj_frob_symbol.
7026 * config/tc-arm.c: Define S_GET_STORAGE_CLASS and S_SET_STORAGE_CLASS.
7027 (armelf_frob_symbol): New Routine.
7028 * config/tc-arm.h: Define obj_frob_symbol if OBJ_ELF.
7029
7030 Sat Aug 8 15:21:28 1998 Richard Henderson <rth@cygnus.com>
7031
7032 * config/tc-alpha.c (alpha_fix_adjustable): Don't adjust weak syms.
7033
7034 Wed Aug 5 15:54:14 1998 Nick Clifton <nickc@cygnus.com>
7035
7036 * config/tc-arm.c (md_begin): Set BFD private flags depending upon
7037 command line switches passed to assembler.
7038
7039 Mon Aug 3 14:02:52 1998 Doug Evans <devans@seba.cygnus.com>
7040
7041 * cgen.h (GAS_CGEN_MAX_FIXUPS): GAS_ prepended, all uses updated.
7042 (gas_cgen_opcode_desc): Declare.
7043 (gas_cgen_parse_operand): Declare.
7044 (*): Prepend gas_ to gas specific fns to denote them as such.
7045 All uses updated.
7046 * cgen.c (gas_cgen_opcode_desc): New global
7047 (gas_cgen_init_parse): Renamed from cgen_asm_init_parse.
7048 (queue_fixup): Renamed from cgen_queue_fixup.
7049 (*): Prepend gas_ to gas specific fns to denote them as such.
7050 All uses updated.
7051 (gas_cgen_md_apply_fix3): Update call to insert_operand.
7052 (gas_cgen_finish_insn): Renamed from cgen_asm_finish_insn.
7053 * config/tc-m32r.c (md_begin): Remove use of CGEN_SYM.
7054 Open opcode table and initialize it.
7055 (make_parallel): Use gas_cgen_opcode_desc.
7056 (assemble_parallel_insn): Ditto. Remove use of CGEN_SYM.
7057 (md_assemble): Ditto.
7058
7059 Sat Aug 1 19:27:30 1998 Richard Henderson <rth@cygnus.com>
7060
7061 * as.h (debug_info_type): Add entries for unspecified and dwarf*.
7062 * ecoff.c (ecoff_generate_asm_lineno): Take no arguments; call
7063 as_where ourselves. Provide a stub for !ECOFF_DEBUGGING.
7064 * ecoff.h: Move ECOFF_DEBUGGING protection inside GAS_ECOFF_H.
7065 Move ecoff_generate_asm_lineno outside ECOFF_DEBUGGING protection.
7066 * read.c (generate_lineno_debug): Tidy ECOFF bits. Use
7067 DEBUG_UNSPECIFIED rather than DEBUG_NONE for initial test.
7068 * config/obj-elf.h (ECOFF_DEBUGGING) [TC_ALPHA]: Define to a variable.
7069 (SEPARATE_STAB_SECTIONS): Conditionalize on value of ECOFF_DEBUGGING.
7070 (INIT_STAB_SECTION): Likewise.
7071 (OBJ_PROCESS_STAB): Likewise.
7072
7073 * config/tc-alpha.c (md_longopts): New options -mdebug/-no-mdebug.
7074 (md_parse_option): Watch for them.
7075 (alpha_cur_ent_sym, alpha_flag_mdebug): New variables.
7076 (md_begin): Kill neverdef code.
7077 (s_alpha_ent, s_alpha_end, s_alpha_mask, s_alpha_frame): New.
7078 (s_alpha_prologue): Watch alpha_cur_ent_sym.
7079 (s_alpha_coff_wrapper): New.
7080 (md_pseudo_table): Trap all ECOFF pseudos.
7081
7082 Fri Jul 31 16:45:54 1998 Ron Unrau <runrau@cygnus.com>
7083
7084 Start of changes to remove mdebug section from mips*-elf
7085 Based on MIPS_STAB_ELF definition
7086 * acconfig.h: undef if not configured
7087 * config.in: undef if not configured
7088 * config/mips-elf.h: only set ECOFF debugging if not stabs-in-elf
7089 * config/tc-mips.c (s_ent): set BSF_FUNCTION
7090 * stabs.c (s_stab_generic): flush frag
7091
7092 Fri Jul 31 16:14:45 1998 Catherine Moore <clm@cygnus.com>
7093
7094 * configure.in: (arm-*-elf): Handle.
7095 (thumb-*-elf): Handle.
7096 * configure: Regenerate.
7097 * read.c (stringer): Fix typo in comment.
7098 * write.c (fixup_segment): Don't add symbol value to addend if
7099 TC_ARM and OBJ_ELF.
7100 * config/tc-arm.c (md_section_align): Don't align dwarf debug
7101 sections.
7102 (tc_gen_reloc): Always set the reloc addend to fixp->fx_offset
7103 for OBJ_ELF.
7104
7105 Thu Jul 30 21:38:43 1998 Frank Ch. Eigler <fche@cygnus.com>
7106
7107 * config/tc-d30v.c ({cur,prev}_left_kills_right_p): New variables.
7108 (write_2_short): Emit warning if new flag is set.
7109 (do_assemble): Set flags if left instruction is one of special
7110 "right-instruction-killer" type.
7111
7112 Tue Jun 28 18:12:28 1998 Stan Cox <scox@cygnus.com>
7113
7114 * config/tc-sparc.c (md_number_to_chars, cons_fix_new_sparc):
7115 Always output words in debug_info section as big endian.
7116 (sparc_target_format): Choose correct bfd target.
7117 (md_apply_fix3): Rename BFD_RELOC_SPARC_32LE to BFD_RELOC_SPARC_REV32.
7118
7119 Tue Jul 28 11:01:21 1998 Jeffrey A Law (law@cygnus.com)
7120
7121 * config/tc-mn10300.c (md_assemble): Fix "errmsg" initialization
7122 to work with internationalization code. Issue an error when two
7123 operands match that are not allowed to match.
7124
7125 Mon Jul 27 16:25:58 1998 Doug Evans <devans@canuck.cygnus.com>
7126
7127 * configure.in (install_tooldir): Allow target to specify whether
7128 it wants to be installed in $(tooldir)/bin.
7129 * configure: Regenerate.
7130 * Makefile.am (install-exec-local): Set install-exec-tooldir
7131 dependency via configure.
7132 * Makefile.in: Regenerate.
7133
7134 Fri Jul 24 19:58:59 1998 Doug Evans <devans@canuck.cygnus.com>
7135
7136 * Makefile.am (install-exec-local): Split into two ...
7137 (install-exec-bindir,install-exec-tooldir): New rules.
7138 * Makefile.in: Regenerate.
7139
7140 Fri Jul 24 16:31:49 1998 Ian Lance Taylor <ian@cygnus.com>
7141
7142 * Makefile.am (install-exec-local): Don't remove the file before
7143 checking whether $(bindir) == $(tooldir)/bin. From Maciej
7144 W. Rozycki <macro@ds2.pg.gda.pl>.
7145 * Makefile.in: Rebuild.
7146
7147 Fri Jul 24 09:13:46 1998 Doug Evans <devans@canuck.cygnus.com>
7148
7149 * cgen.c: Include libiberty.h.
7150 (cgen_md_apply_fix3): Update call to md_cgen_lookup_reloc.
7151 (cgen_tc_gen_reloc): Use xmalloc, not bfd_alloc.
7152 * cgen.h (cgen_md_apply_fix3,cgen_tc_gen_reloc): Declare.
7153 (md_cgen_lookup_reloc)): Declare.
7154 (md_cgen_record_fixup_exp): Declare.
7155 * config/tc-m32r.h (md_pcrel_from_section): Declare.
7156 (m32r_relax_frag): Declare.
7157 (cgen_md_apply_fix3): Decls moved to cgen.h.
7158 (cgen_record_fixup_exp,cgen_tc_gen_reloc): Ditto.
7159 (m32r_cgen_record_fixup_exp): Delete decl.
7160 * config/tc-m32r.c (m32r_cpu_desc): #if 0 out.
7161 (assemble_nop): Delete.
7162 (expand_debug_syms): Delete unused `exp'.
7163 (md_cgen_lookup_reloc): Renamed from CGEN_SYM (lookup_reloc).
7164 Add default case for -Wall.
7165 (m32r_cgen_record_fixup_exp): Add default case for -Wall.
7166 (md_atof): Delete unused wordP.
7167
7168 Thu Jul 23 13:19:50 1998 Jeffrey A Law (law@cygnus.com)
7169
7170 * config/tc-mn10300.c (md_assemble): Make sure "errmsg" has a non-NULL
7171 value.
7172
7173 Wed Jul 22 14:36:56 1998 Ian Lance Taylor <ian@cygnus.com>
7174
7175 * doc/as.texinfo: Add documentation for .end, .exitm, .fail,
7176 .ifc, .ifeqs, .ifge, .ifgt, .ifle, .iflt, .ifnc, .ifne, .ifnes,
7177 .print, .purgem, and .struct. Remove documentation for
7178 .app-file.
7179
7180 Tue Jul 21 16:50:52 1998 Doug Evans <devans@seba.cygnus.com>
7181
7182 * cgen.c (cgen_md_apply_fix3): set_operand renamed to set_vma_operand.
7183 Update call to insert_operand.
7184
7185 Fri Jul 17 11:42:20 1998 Nick Clifton <nickc@cygnus.com>
7186
7187 * config/tc-m32r.c (ms_show_usage): Formatting changes.
7188
7189 Wed Jul 15 15:38:28 1998 Ian Lance Taylor <ian@cygnus.com>
7190
7191 * config/tc-i386.c (md_assemble): Don't get confused by trailing
7192 whitespace after a prefix operator.
7193
7194 Tue Jul 14 15:32:56 1998 Richard Henderson <rth@cygnus.com>
7195
7196 * configure.in (i386-*-beos{pe,elf,}*): Recognize.
7197
7198 Tue Jul 14 12:33:44 1998 Chris Torek <torek@bsdi.com>
7199
7200 * config/tc-sparc.c (log2): New static function.
7201 (s_reserve): Use log2 to convert alignment before calling
7202 record_alignment.
7203 (s_common): Use log2 to convert alignment before calling
7204 record_alignment and frag_align.
7205 (sparc_cons_align): Use log2.
7206
7207 Tue Jul 14 11:58:40 1998 Ian Lance Taylor <ian@cygnus.com>
7208
7209 * config/tc-sparc.c (s_reserve): Set symbol size if OBJ_ELF.
7210 (s_common): Likewise.
7211
7212 * config/tc-sparc.c (sparc_handle_align): Reindent a bit. Correct
7213 initialization of waddr.
7214 (sparc_elf_final_processing): Add default case to switch.
7215
7216 Tue Jul 14 11:00:16 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7217
7218 * doc/c-i386.texi: Fix a typo. Use the term 80-bit real rather
7219 than temporary real.
7220
7221 Mon Jul 13 13:55:42 1998 Ian Lance Taylor <ian@cygnus.com>
7222
7223 * write.c (subsegs_finish): Don't align the segments if there were
7224 any errors.
7225
7226 * config/obj-coff.c (c_symbol_merge): Correct number of bytes when
7227 copying aux information.
7228
7229 * expr.c (make_expr_symbol): Catch attempts to turn an O_big
7230 expression into a symbol.
7231
7232 Mon Jul 13 13:29:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7233
7234 * config/tc-i386.c (mode_from_disp_size): Change arg and return
7235 type to unsigned int.
7236 (md_assemble): Change type used to store offsets from unsigned
7237 long to long.
7238 (i386_operand): Switch error check to only call RESTORE_END_STRING
7239 once after parse_register.
7240
7241 Fri Jul 10 16:00:04 1998 Nick Clifton <nickc@cygnus.com>
7242
7243 * config/tc-v850.c (md_show_usage): Changed format to match that
7244 of gcc, ld, etc.
7245
7246 * as.c (show_usage): Changed format to match that of gcc, ld, etc.
7247
7248 Thu Jul 9 12:09:57 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7249
7250 * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't adjust vtable
7251 relocs.
7252 (md_apply_fix_2): Force the symbol of the vtable reloc to be
7253 weak.
7254
7255 Thu Jul 9 11:31:54 1998 Ian Lance Taylor <ian@cygnus.com>
7256
7257 * doc/Makefile.am (MAINTAINERCLEANFILES): Define.
7258 * doc/Makefile.in: Rebuild.
7259
7260 Wed Jul 8 12:18:56 1998 Jeffrey A Law (law@cygnus.com)
7261
7262 * config/tc-mips.c (mips_ip, case 'i' and 'j'): Mask off high bits
7263 for %lo expressions.
7264 (mips_ip, case 'u'): Move range check after code to mask
7265 off bits in %hi/%lo expressions. Mask off high bits for
7266 %lo expressions.
7267
7268 Tue Jul 7 17:57:38 1998 Ian Lance Taylor <ian@cygnus.com>
7269
7270 * doc/Makefile.am (gasver.texi): New target.
7271 (as.info, as.dvi): Depends upon gasver.texi.
7272 * doc/as.texinfo: Include gasver.texi. Mention version number on
7273 title page and in top node.
7274 * doc/Makefile.in: Rebuild.
7275
7276 Tue Jul 7 11:42:16 1998 Richard Henderson <rth@cygnus.com>
7277
7278 * listing.c (listing_listing): For EDICT_LIST, skip all lines up to
7279 but not including the line containing the edict.
7280 * listing.h (LISTING_EOF): New.
7281 * input-scrub.c (input_scrub_next_buffer): Call it.
7282
7283 Tue Jul 7 13:00:37 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7284
7285 * config/tc-i386.c (i386_operand): Don't set the size of an
7286 immediate address based solely on the suffix and the mode.
7287
7288 * config/tc-i386.c (md_assemble): Add assertion to make sure
7289 overlap2 does not set Imm.
7290
7291 * config/tc-i386.c (space_chars): Remove. The scrubber converts
7292 sequences of whitespace to a single space.
7293 (is_space_chars): Just compare with space.
7294 (md_begin): Don't initialize space_chars.
7295 (md_assemble): Just skip a single whitespace character.
7296 (i386_operand): Rewrite base-index parsing to use new
7297 parse_register, and to skip white space. Skip white space in a
7298 number of other places too. Don't give error message if
7299 parse_register fails.
7300 (parse_register): Change reg_string parameter to be non-const.
7301 Add end_op parameter. Skip white space after the `%', and return
7302 end of register string. Give error message here rather than
7303 caller.
7304
7305 Fri Jul 3 15:34:34 1998 Ian Lance Taylor <ian@cygnus.com>
7306
7307 Based on patch from Matt Semersky <matts@scd.hp.com>:
7308 * expr.c (op_encoding): Make const.
7309 (expr_set_precedence): New function.
7310 (expr_begin): Don't set operator rankings, just call
7311 expr_set_precedence.
7312 * expr.h (expr_set_precedence): Declare.
7313 * read.c (s_mri): Call expr_set_precedence.
7314
7315 Thu Jul 2 16:24:58 1998 Ian Lance Taylor <ian@cygnus.com>
7316
7317 * doc/as.texinfo (Statements): Remove paragraph discussing
7318 continuing lines with a backslash. This hasn't worked for years,
7319 if it ever did.
7320
7321 Thu Jul 2 14:06:22 1998 Klaus Kaempf <kkaempf@rmi.de>
7322
7323 * obj-vms.c: Add C++ support with ctors/dtors sections. Add weak
7324 symbol definitions.
7325 (Ctors_Symbols, Dtors_Symbols): New symbol chains.
7326 (ps_CTORS, ps_DTORS): New section types.
7327 (vms_fixup_xtors_section): New function
7328 (Ctors_Psect, Dtors_Psect): Define.
7329 (IS_GXX_XTOR): Define
7330 (global_symbol_directory): Change check of gxx_bug_fixed to 0.
7331 Filter static constructors/destructors and add to
7332 Ctors_Symbols/Dtors_Symbols chain.
7333 (vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
7334 appropriate section.
7335
7336 * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
7337 * makefile.vms: Merge vax/vms support.
7338
7339 Wed Jul 1 20:06:20 1998 Richard Henderson <rth@cygnus.com>
7340
7341 * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
7342 (elf_pseudo_table): Add them.
7343 * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
7344 (md_apply_fix): Accept them.
7345 (mips_fix_adjustable): Don't adjust them.
7346 (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
7347 * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
7348 * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
7349 (tc_fix_adjustable): Don't adjust them.
7350
7351 Wed Jul 1 16:35:32 1998 Doug Evans <devans@seba.cygnus.com>
7352
7353 * Makefile.am (CGEN_CPU_PREFIX): New variable.
7354 (cgen.o): Use it.
7355 * Makefile.in: Regenerate.
7356 * configure.in: AC_SUBST cgen_cpu_prefix.
7357 * configure: Regenerate.
7358
7359 Wed Jul 1 21:38:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7360
7361 * config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
7362 Changed all users of COND12_DELAY.
7363
7364 Fri Jun 26 11:21:11 1998 Jeffrey A Law (law@cygnus.com)
7365
7366 * config/tc-mn10300.c (set_arch_mach): New function.
7367 (md_pseudo_table): Add pseudo-ops to set the current machine type.
7368 (md_begin): Default to mn10300 mode.
7369 (md_assemble): Only accept instructions for the core mn10300
7370 chip and the active machine type.
7371
7372 Wed Jun 24 19:06:04 1998 Ian Lance Taylor <ian@cygnus.com>
7373
7374 * subsegs.h (segment_info_type): Give the struct a name.
7375 * config/tc-h8300.h (tc_reloc_mangle): Add prototype.
7376 * config/tc-h8500.h (tc_reloc_mangle): Declare.
7377 * config/tc-sh.h (sh_coff_reloc_mangle): Add prototype.
7378 * config/tc-w65.h (tc_reloc_mangle): Declare.
7379 * config/tc-z8k.h (tc_reloc_mangle): Declare.
7380
7381 Wed Jun 24 13:45:00 1998 Catherine Moore <clm@cygnus.com>
7382
7383 * config/tc-v850.c (v850_comm): Restore old section
7384 after common processing.
7385
7386 Wed Jun 24 11:50:54 1998 Klaus Kaempf <kkaempf@progis.de>
7387
7388 * config/obj-vms.c (Create_VMS_Object_File): Force binary file.
7389
7390 Tue Jun 23 17:47:31 1998 Jim Wilson <wilson@cygnus.com>
7391
7392 * config/tc-h8300.c (do_a_fix_imm, build_bytes): Replace cast to
7393 char with code that explicitly sign-extends.
7394
7395 Tue Jun 23 13:54:57 1998 Nick Clifton <nickc@cygnus.com>
7396
7397 * config/tc-v850.c (md_begin): Restore text section as the current
7398 section after creating call table sections.
7399 * config/obj-coff.h (SYM_AUXINFO): New macro to conceal ugly
7400 code.
7401
7402 * config/obj-coff.c (c_symbol_merge): Replace complex expresion
7403 with call to macro SYM_AUXINFO.
7404
7405 Tue Jun 23 15:09:27 1998 Mike Stump <mrs@wrs.com>
7406
7407 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
7408 with the program transform name.
7409 * Makefile.in: Rebuild.
7410
7411 Mon Jun 22 19:52:42 1998 Ian Lance Taylor <ian@cygnus.com>
7412
7413 * config/obj-coff.c (c_symbol_merge): Fix copying of auxiliary
7414 information.
7415
7416 Mon Jun 22 15:18:58 1998 Ian Lance Taylor <ian@cygnus.com>
7417
7418 * config/tc-i386.c (i386_operand): Be prepared for a space between
7419 the open parenthesis and the start of the register operand,
7420 because of the June 16 change.
7421
7422 Sun Jun 21 21:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
7423
7424 * config/tc-sh.c (md_apply_fix): Handle weak symbols correctly if
7425 BFD_ASSEMBLER.
7426
7427 Sun Jun 21 12:26:36 1998 Nick Clifton <nickc@cygnus.com>
7428
7429 * config/tc-d30v.c (d30v_align): Always perform alignment request,
7430 even if it is belived to be unnecessary.
7431
7432 Fri Jun 19 13:57:06 1998 Ian Lance Taylor <ian@cygnus.com>
7433
7434 * write.c (adjust_reloc_syms): Never adjust relocs against weak
7435 symbols.
7436 * config/tc-mips.c (md_apply_fix): Adjust accordingly.
7437
7438 Fri Jun 19 09:50:17 1998 Jeffrey A Law (law@cygnus.com)
7439
7440 * config/tc-mn10300.c (mn10300_insert_operand): Do not hardcode the
7441 shift amount for a repeated operand. The shift amount for the
7442 repeated copy comes from the size of the operand.
7443
7444 Fri Jun 19 00:44:19 1998 Jeffrey A Law (law@cygnus.com)
7445
7446 * config/tc-h8300.c (get_operand): Fix typos in ldm/stm support.
7447
7448 Wed Jun 17 13:07:05 1998 Ian Lance Taylor <ian@cygnus.com>
7449
7450 * config/tc-mips.c (md_show_usage): Fix -mipsN usage.
7451
7452 Tue Jun 16 13:06:21 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7453
7454 * app.c (do_scrub_begin): If tc_symbol_chars is defined, treat all
7455 characters in it as LEX_IS_SYMBOL_COMPONENT.
7456 * config/tc-i386.h (tc_symbol_chars): Define.
7457 (extra_symbol_chars): Declare.
7458 * config/tc-i386.c (extra_symbol_chars): Define.
7459 (comment_chars): Don't use '/' as comment start if TE_LINUX.
7460 (line_comment_chars): Set to '/' if TE_LINUX.
7461 * doc/c-i386.texi (i386-prefixes): Update.
7462 * doc/internals.texi (CPU backend): Document tc_symbol_chars.
7463
7464 Fri Jun 12 13:36:54 1998 Tom Tromey <tromey@cygnus.com>
7465
7466 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
7467 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
7468
7469 1998-06-12 Vladimir N. Makarov <vmakarov@cygnus.com>
7470
7471 * config/tc-d10v.c (md_apply_fix3): Checking displacement
7472 constraint in instructions REP & REPI.
7473
7474 Thu Jun 11 08:56:46 1998 Nick Clifton <nickc@cygnus.com>
7475
7476 * config/tc-d30v.c (md_apply_fix3): Catch BFD_RELOC_8,
7477 BFD_RELOC_16, BFD_RELOC_64 and issue appropriate error messages.
7478
7479 (check_range): If the operand is shifted, then shift the number
7480 before checking its range.
7481
7482 * write.c (adjust_reloc_syms): Add more checks for NULL pointers.
7483
7484 * config/tc-v850.c (v850_comm): Set SEC_COMMON bit on special
7485 common sections.
7486
7487 Wed Jun 10 17:26:35 1998 Nick Clifton <nickc@cygnus.com>
7488
7489 * config/tc-v850.c (v850_comm): Create special sections as needed.
7490
7491 1998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
7492
7493 * config/tc-d10v.c (write_2_short): Addition of swapping
7494 instructions for sequential and reverse sequential order when
7495 given order is not possible.
7496
7497 Tue Jun 9 13:52:53 1998 Ian Lance Taylor <ian@cygnus.com>
7498
7499 * Makefile.am: Rebuild dependencies.
7500 (DEP_INCLUDES): Fix reference to intl build directory.
7501 * Makefile.in: Rebuild.
7502
7503 Tue Jun 9 12:20:05 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7504
7505 * doc/c-i386.texi: Update 16 bit documentation.
7506
7507 * config/tc-i386.h: Change Data16 to Size16, Data32 to Size32,
7508 IgnoreDataSize to IgnoreSize as they are used for address size as
7509 well as data size.
7510 * config/tc-i386.c: Likewise. Add code to reject addr32/data32 in
7511 32-bit mode, similarly addr16/data16 and variants.
7512
7513 Mon Jun 8 18:32:01 1998 Nick Clifton <nickc@cygnus.com>
7514
7515 * config/tc-d30v.c (md_assemble): Fix handling of reverse
7516 sequential word multiply instructions.
7517
7518 (do_assemble): Add extra command line argument, to allow mul32
7519 attribute to be preserved across parallel insns.
7520 (md_assemble): Insert NOPs between explicitly parallel insns which
7521 contain an 32 bit multiply and a 16 multiply.
7522
7523 Mon Jun 8 12:20:30 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7524
7525 * config/tc-i386.c: REPNE renamed to REPNE_PREFIX_OPCODE, and
7526 likewise for REPE.
7527
7528 * config/tc-i386.c (reloc): Add braces.
7529
7530 * config/tc-i386.c (struct _i386_insn): Rename bi to sib to be
7531 consistent with Intel naming.
7532 * config/tc-i386.h (base_index_byte): Rename to sib_byte. Don't
7533 use bitfields in sib_byte.
7534 (modrm_byte): Don't use bitfields here either.
7535
7536 * config/tc-i386.c (current_templates): Add const.
7537 (parse_register): Add const to return, param, and char *s.
7538 (i386_operand): Add const to reg_entry *r.
7539 * config/tc-i386.h (templates): Add const to start, end.
7540
7541 Inspired by code for 16 bit gas support from Martynas Kunigelis
7542 <martynas@nm3.ktu.lt>:
7543 * config/tc-i386.c (md_assemble): Add full support for 16 bit
7544 modrm, and Jump, JumpByte, JumpDword, JumpInterSegment insns.
7545 (uses_mem_addrmode): Remove.
7546 (md_estimate_size_before_relax): Add support here too.
7547 (md_relax_table): Rewrite interface to md_relax for 16 bit
7548 support.
7549 (BYTE, WORD, DWORD, UNKNOWN_SIZE): Remove.
7550 (opcode_suffix_to_type): Remove.
7551 (CODE16, SMALL, SMALL16, BIG, BIG16): Define.
7552 (SIZE_FROM_RELAX_STATE): Modify to suit above.
7553 (md_convert_frag): Likewise.
7554 (i386_operand): Add support for 16 bit base/index regs,
7555 immediates, and displacements. Remove some unnecessary casts, and
7556 localise end_of_operand_string, displacement_string_start,
7557 displacement_string_end variables. Add GCC_ASM_O_HACK.
7558 * config/tc-i386.h (NO_BASE_REGISTER_16): Define.
7559
7560 * config/tc-i386.c (prefix_hash): Remove.
7561 (md_begin): Rewrite without obstacks. Remove prefix hash table
7562 handling. Rewrite lexical table handling.
7563 (i386_print_statistics): Don't print prefix statistics.
7564 (md_assemble): Rewrite instruction parser so that line is not
7565 converted to lower case. Don't do a hash_find for prefixes,
7566 instead recognise them via opcode modifier.
7567 (expecting_operand, paren_not_balanced): Localise variables.
7568 * config/tc-i386.h (IsPrefix): Define.
7569 (prefix_entry): Remove.
7570
7571 * config/tc-i386.h (PREFIX_SEPERATOR): Don't define.
7572 * config/tc-i386.c (PREFIX_SEPARATOR): Define here instead, using
7573 '\\' in case where comment_chars contains '/'.
7574
7575 * config/tc-i386.c (MATCH): Ensure given operand and template
7576 match for JumpAbsolute. Makes e.g. `ljmp table(%ebx)' invalid;
7577 you must write `ljmp *table(%ebx)'.
7578
7579 From H.J. Lu <hjl@gnu.org>:
7580 * config/tc-i386.c (BFD_RELOC_16, BFD_RELOC_16_PCREL): Define
7581 as 0 ifndef BFD_ASSEMBLER.
7582 (md_assemble): Allow immediate operands without suffix or
7583 other reg operand to default in size to the current code size.
7584
7585 Mon Jun 8 09:45:00 1998 Catherine Moore <clm@cygnus.com>
7586
7587 * config/tc-v850.c (md_begin): Restore creation of
7588 .call_table_text and .call_table_data sections.
7589
7590 Sat Jun 6 00:02:41 1998 Nick Clifton <nickc@cygnus.com>
7591
7592 * config/tc-d30v.c (md_assemble): Set execution type to unknown
7593 after emitting a word of noops.
7594
7595 Fri Jun 5 23:27:04 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7596
7597 * config/tc-i386.c (mode_from_disp_size): Disp16 is mode 2.
7598 (i386_operand): Simplify checks for valid base/index combinations.
7599 Disallow `in 4(%dx),%al'.
7600
7601 * config/tc-i386.c (struct _i386_insn): Make regs, base_reg, and
7602 index_reg const.
7603 (add_prefix): Change parameter from char to int.
7604
7605 * config/tc-i386.h (Ugh): Define opcode modifier.
7606 * config/tc-i386.c (md_assemble): Print warnings for Ugh insns.
7607
7608 * config/tc-i386.c (md_assemble): Rewrite MATCH and
7609 CONSISTENT_REGISTER_MATCH macros to check register types more
7610 thoroughly. Check for illegal suffix/operand combinations
7611 when matching insns with operands. Handle new `s' suffix, and
7612 associated FloatMF opcode modifier for float insns with memory
7613 operands.
7614 * config/tc-i386.h (FloatMF): Define new opcode modifier.
7615 (No_sSuf, No_bSuf, No_wSuf, No_lSuf): Likewise.
7616 (SHORT_OPCODE_SUFFIX, LONG_OPCODE_SUFFIX): Define.
7617 * config/tc-i386.c: Rename WORD_PREFIX_OPCODE to
7618 DATA_PREFIX_OPCODE throughout.
7619
7620 * config/tc-i386.c (REGISTER_WARNINGS): Define.
7621 (md_assemble): Rewrite suffix/register operand checking code to be
7622 more thorough. Remove Abs8,16,32. Change occurrences of Mem to
7623 AnyMem, the better to grep.
7624 (pi): Remove Abs.
7625 (i386_operand): Don't set Mem bits in i.types[this_operand] when
7626 given a memory operand. Don't set Abs bits either.
7627 (type_names): Remove Mem*, Abs*.
7628 * config/tc-i386.h (Mem8, Mem16, Mem32, Abs8, Abs16, Abs32): Don't
7629 define opcode_modifiers as these cases are handled by Disp8,
7630 Disp16, Disp32 and suffix checks.
7631 (COMES_IN_BOTH_DIRECTIONS): Remove.
7632 (FloatR): Define. It's OK to share the bit with ReverseRegRegmem.
7633
7634 * config/tc-i386.c (md_assemble): Don't emit operand size prefix
7635 if IgnoreDataSize modifier given. Remove ShortformW modifier
7636 test. Add test for ShortForm in W base_opcode modification.
7637 Merge Seg2ShortForm and Seg3ShortForm code.
7638 * config/tc-i386.h (ShortFormW): Remove.
7639 (IgnoreDataSize): Define.
7640
7641 Fri Jun 5 10:50:53 1998 Nick Clifton <nickc@cygnus.com>
7642
7643 * config/tc-d30v.c (md_assemble): Store previous segment state
7644 with previous instruction.
7645
7646 Wed Jun 3 18:21:56 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
7647
7648 * config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
7649 (ebp, esp): Remove static variables.
7650 (MATCH): Remove test for InOutPortReg.
7651 (i386_operand): Properly handle InOutPortReg here instead.
7652 Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
7653 (md_assemble): Simplify and correct modrm and sib generation.
7654 (i386_operand): Add warning for scale without index.
7655 Rewrite checks for valid base/index combinations.
7656
7657 * config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
7658 macros and enclose in do while(0).
7659 (RESTORE_END_STRING): Likewise.
7660 (md_assemble): Add one to printed operand number so we start
7661 from 1 not 0. Add some more gettext invocations.
7662 (i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
7663 number here too.
7664
7665 * config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
7666 DATA_PREFIX, SEG_PREFIX): Define.
7667 * config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
7668 (check_prefix): Remove function.
7669 (add_prefix): New function. Add prefix to i.prefix as well as
7670 doing checks.
7671 (md_assemble): Changes for add_prefix. Remove hack for wait
7672 prefix, instead always output prefixes in fixed order. Test
7673 for jcxz/loop when selecting between word & dword operations,
7674 and add address size prefix rather than operand size prefix.
7675 Remove operand -> address size hack when emitting jcxz/loop.
7676 (i386_operand): Remove O_Absent check as it's done in expr.
7677
7678 Wed Jun 3 15:09:10 1998 Ian Lance Taylor <ian@cygnus.com>
7679
7680 * configure.in: Recognize m5200 as a cpu_type of m68k.
7681 * aclocal.m4: Rebuild with current libtool.
7682 * configure: Rebuild.
7683
7684 Wed Jun 3 14:11:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7685
7686 * config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
7687 to relaxable_symbol to prevent references to external symbol from
7688 being relaxed.
7689
7690 Wed Jun 3 14:10:36 1998 Ian Lance Taylor <ian@cygnus.com>
7691
7692 * config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
7693 symbols are relaxable.
7694
7695 Wed Jun 3 09:16:00 1998 Catherine Moore <clm@cygnus.com>
7696
7697 * config/tc-v850.c (md_begin): Don't create special
7698 sections by default.
7699
7700 Tue Jun 2 14:52:56 1998 Jeffrey A Law (law@cygnus.com)
7701
7702 * config/tc-mips.c (macro): For div and udiv, close the
7703 reorder block as soon as possible.
7704
7705 Tue Jun 2 15:36:13 1998 Ian Lance Taylor <ian@cygnus.com>
7706
7707 From Matt Semersky <matts@scd.hp.com>:
7708 * macro.c (macro_mri_mode): New function.
7709 * macro.h (macro_mri_mode): Declare.
7710 * read.c (s_mri): Call macro_mri_mode when switching in and out of
7711 MRI mode.
7712
7713 Tue Jun 2 13:32:22 1998 Klaus Kaempf <kkaempf@progis.de>
7714
7715 * config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
7716 OBJ_EVAX case.
7717
7718 * config/tc-alpha.c (s_alpha_comm): Defer restoring character
7719 until after xstrdup in OBJ_EVAX case.
7720
7721 Tue Jun 2 13:11:13 1998 Pat Rankin <rankin@eql.caltech.edu>
7722
7723 * config/tc-vax.c (md_create_short_jump): Fix off by two bug in
7724 offset calculation. Also, use VAX_BRW from vax-inst.h instead
7725 of hardcoded magic number.
7726 (md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
7727
7728 Tue Jun 2 09:25:34 1998 Doug Evans <devans@canuck.cygnus.com>
7729
7730 * read.c (do_s_func): New function.
7731 (s_func): Call it.
7732 * read.h (do_s_func): Add prototype.
7733
7734 Mon Jun 1 12:47:30 1998 Doug Evans <devans@canuck.cygnus.com>
7735
7736 * config/tc-m32r.c (m32r_do_align): Only fill code sections with
7737 nops if fill pattern not specified.
7738
7739 Mon Jun 1 14:08:35 1998 Ian Lance Taylor <ian@cygnus.com>
7740
7741 From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
7742 * config/te-go32.h (TE_GO32): Define.
7743 * config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
7744
7745 Sun May 31 15:43:06 1998 Doug Evans <devans@canuck.cygnus.com>
7746
7747 Implement .func/.endfunc pseudo-ops.
7748 * read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
7749 (s_func): Declare.
7750 * read.c (potable): Add .func,.endfunc.
7751 (s_func): New function.
7752 * stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
7753 functions.
7754 (in_doc_func_p,current_function_label): New static globals.
7755 (stabs_generate_asm_lineno): Emit function relative stabs if in .func.
7756
7757 Fri May 29 18:13:12 1998 Ian Lance Taylor <ian@cygnus.com>
7758
7759 * config/tc-a29k.h (WORKING_DOT_WORD): Define.
7760 * config/tc-alpha.h (WORKING_DOT_WORD): Define.
7761 * config/tc-arm.h (WORKING_DOT_WORD): Define.
7762 * config/tc-h8300.h (WORKING_DOT_WORD): Define.
7763 * config/tc-h8500.h (WORKING_DOT_WORD): Define.
7764 * config/tc-hppa.h (WORKING_DOT_WORD): Define.
7765 * config/tc-i860.h (WORKING_DOT_WORD): Define.
7766 * config/tc-i960.h (WORKING_DOT_WORD): Define.
7767 * config/tc-tic30.h (WORKING_DOT_WORD): Define.
7768 * config/tc-w65.h (WORKING_DOT_WORD): Define.
7769 * config/tc-z8k.h (WORKING_DOT_WORD): Define.
7770 * config/tc-a29k.c: Don't define md_short_jump_size,
7771 md_long_jump_size, md_create_short_jump or md_create_long_jump.
7772 * config/tc-alpha.c: Likewise.
7773 * config/tc-alpha.h: Likewise.
7774 * config/tc-arm.c: Likewise.
7775 * config/tc-h8300.c: Likewise.
7776 * config/tc-h8500.c: Likewise.
7777 * config/tc-hppa.c: Likewise.
7778 * config/tc-i860.c: Likewise.
7779 * config/tc-i960.c: Likewise.
7780 * config/tc-ppc.c: Likewise.
7781 * config/tc-sh.c: Likewise.
7782 * config/tc-sparc.h: Likewise.
7783 * config/tc-tic30.c: Likewise.
7784 * config/tc-w65.c: Likewise.
7785 * config/tc-z8k.c: Likewise.
7786
7787 Fri May 29 16:03:26 1998 Pat Rankin <rankin@eql.caltech.edu>
7788
7789 * config/tc-vax.c (_): Delete this macro used for placeholder
7790 values in vax_operand_width_size; it conflicts with the _() macro
7791 used for internationalization.
7792
7793 Fri May 29 13:46:07 1998 Ian Lance Taylor <ian@cygnus.com>
7794
7795 * symbols.c (symbol_find_base): Fix case insensitive symbol name
7796 code. From Chris Moller <moller@bops.com>.
7797
7798 Based on patch from Klaus Kaempf <kkaempf@progis.de>:
7799 * struc-symbol.h (struct broken_word): Add seg and subseg fields.
7800 * read.c (emit_expr): Initialize seg and subseg fields of a new
7801 broken word.
7802 * write.c (write_object_file): Switch to the appropriate segment
7803 and subsegment when processing a broken word.
7804
7805 * config/tc-m68k.c (mri_assemble): New static function.
7806 (build_mri_control_operand): Call mri_assemble rather than
7807 md_assemble.
7808 (s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
7809 (s_mri_endf, s_mri_endw): Likewise.
7810
7811 Wed May 27 11:16:25 1998 Ian Lance Taylor <ian@cygnus.com>
7812
7813 * read.c (s_org): Call md_flush_pending_output if it is defined.
7814
7815 * config/tc-sparc.c (md_show_usage): Add \n\ to new string.
7816
7817 Tue May 26 19:27:52 1998 Stan Cox <scox@equinox.cygnus.com>
7818
7819 * config/tc-sparc.c (OPTION_LITTLE_ENDIAN_DATA): New.
7820 (md_parse_option): Add for same.
7821 (sparc_md_end): Set bfd_mach_sparc_sparclite_le.
7822 (md_apply_fix3, tc_gen_reloc): Allow BFD_RELOC_SPARC_32LE.
7823 (cons_fix_new_sparc): Added to create BFD_RELOC_SPARC_32LE.
7824
7825 * config/tc-sparc.h (cons_fix_new_sparc): Added.
7826
7827 Thu May 21 15:02:41 1998 Nick Clifton <nickc@cygnus.com>
7828
7829 * config/tc-arm.c (find_real_start): Relax definition of local
7830 labels.
7831
7832 Tue May 19 16:59:44 1998 Nick Clifton <nickc@cygnus.com>
7833
7834 * config/tc-d30v.c (d30v_align): Apply address adjustment to all
7835 symbols at the given address, not just the last one specified.
7836
7837 Tue May 19 08:25:19 1998 Catherine Moore <clm@cygnus.com>
7838
7839 * config/tc-sparc.c (sparc_handle_align): Use number_to_chars_bigendian
7840 or number_to_chars_littleendian to write data.
7841
7842 Mon May 18 17:09:30 1998 Nick Clifton <nickc@cygnus.com>
7843
7844 * config/tc-v850.c (md_assemble): Remove artificially created
7845 register name symbols.
7846
7847 Mon May 18 13:47:06 1998 Doug Evans <devans@canuck.cygnus.com>
7848
7849 * write.c (fixup_segment): Change "segment" to "section" in
7850 error message.
7851
7852 Mon May 18 16:55:40 1998 Michael Meissner <meissner@cygnus.com>
7853
7854 * write.c (fixup_segment): Change sym1-sym2 message again.
7855
7856 Mon May 18 09:31:43 1998 Michael Meissner <meissner@cygnus.com>
7857
7858 * write.c (fixup_segment): Improve error message for sym1-sym2
7859 errors when sym1 is in a different segment from sym2.
7860
7861 Wed May 13 10:16:37 1998 Doug Evans <devans@canuck.cygnus.com>
7862
7863 * config/tc-m32r.c (warn_unmatched_high): New static local.
7864 (OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
7865 (OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
7866 (md_longopts): Recognize --{no-,}warn-unmatched-high.
7867 (md_parse_option): Likewise.
7868 (md_show_usage): Likewise.
7869 (m32r_frob_file): Likewise.
7870
7871 * read.c (generate_file_debug,generate_lineno_debug): New functions.
7872 (read_a_source_file): Call them.
7873 * read.h (stabs_generate_asm_file): Declare.
7874 * stabs.c (stabs_generate_asm_file): New function.
7875 (generate_asm_file): New function.
7876 (stabs_generate_asm_lineno): Move file name handling into
7877 generate_asm_file.
7878
7879 Tue May 12 12:03:44 1998 Richard Henderson <rth@cygnus.com>
7880
7881 * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
7882 (d30v_current_align, d30v_current_align_seg): New variables.
7883 (d30v_last_label): New variable.
7884 (d30v_align, s_d30v_align, s_d30v_text): New functions.
7885 (s_d30v_data, s_d30v_section): Likewise.
7886 (md_pseudo_table): Call them.
7887 (md_begin): Initialize d30v_current_align_seg.
7888 (md_assemble): Call d30v_align when needed by known current alignment.
7889 (d30v_frob_label, d30v_cons_align): New functions.
7890 * config/tc-d30v.h (md_do_align): Remove.
7891 (tc_frob_label): Call d30v_frob_label.
7892 (md_cons_align): New.
7893
7894 * config/tc-d30v.c (find_format): Convert complex expressions to
7895 expression symbols before processing. Clean up code formatting.
7896
7897 Sun May 10 22:35:02 1998 Jeffrey A Law (law@cygnus.com)
7898
7899 * po/Make-in (install-info): New target.
7900
7901 Thu May 7 15:49:07 1998 Jeffrey A Law (law@cygnus.com)
7902
7903 * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
7904 instructions.
7905 * config/tc-mn10300.c (md_assemble): Likewise.
7906
7907 Thu May 7 11:47:22 1998 Doug Evans <devans@canuck.cygnus.com>
7908
7909 * Makefile.am: Update with `make dep-am'.
7910 (HFILES): Add cgen.h.
7911 (cgen.o): Depend on cgen.h.
7912 * Makefile.in: Regenerate.
7913
7914 * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where.
7915
7916 Thu May 7 13:20:56 1998 Anders Blomdell <anders.blomdell@control.lth.se>
7917
7918 * gasp.c (grab_label): Permit a label to be a preprocessor
7919 variable by permitting a label to start with a backslash.
7920
7921 Thu May 7 12:50:33 1998 Frank Ch. Eigler <fche@cygnus.com>
7922
7923 * config/tc-mips.c (validate_mips_insn): Removed hack
7924 for previously inaccessible bitfields in some INSN_TRAP
7925 instructions.
7926
7927 Thu May 7 11:13:00 1998 Frank Ch. Eigler <fche@cygnus.com>
7928
7929 * config/tc-d30v.c (do_assemble): Abort with error message
7930 if opcode operands do not match.
7931
7932 Thu May 7 09:36:06 1998 Frank Ch. Eigler <fche@cygnus.com>
7933
7934 * config/tc-mips.c (macro_build, validate_mips_insn): Implement
7935 'q' operand format for 20-bit "break"/"sdbbp" instructions.
7936 (mips_ip): Truncate overflowed "break" 'c' operand. Implement
7937 similar new 'q' operand.
7938
7939 Thu May 7 07:47:14 1998 Michael Meissner <meissner@cygnus.com>
7940
7941 * cgen.c (cgen_asm_finish_insn): Fix typo.
7942
7943 Thu May 7 02:19:14 1998 Doug Evans <devans@charmed.cygnus.com>
7944
7945 * cgen.h: New file.
7946 * cgen.c: Include it.
7947 (MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
7948 (cgen_asm_finish_insn): Result is now void. New arg `result'.
7949 All callers updated.
7950 * config/tc-m32r.c: Include cgen.h.
7951 (m23r_insn): New members num_fixups,fixups.
7952
7953 Wed May 6 16:29:19 1998 Jeffrey A Law (law@cygnus.com)
7954
7955 * config/tc-hppa.c (md_apply_fix): Slightly rework some code
7956 to avoid compiler warning.
7957
7958 Wed May 6 15:26:34 1998 Klaus Kaempf <kkaempf@progis.de>
7959
7960 * makefile.vms: Run dec c with /nodebug. Pass CC value when
7961 calling make.
7962
7963 * makefile.vms (OBJS): Add ehopt.obj
7964
7965 Wed May 6 15:11:12 1998 Klaus Kaempf <kkaempf@progis.de>
7966
7967 * doc/c-vax.texi: Correct and extend vax/vms documentation.
7968
7969 Wed May 6 11:51:51 1998 Richard Henderson <rth@cygnus.com>
7970
7971 * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
7972 a short format insn.
7973 (md_assemble): Set it for explicitly packed insns.
7974
7975 Tue May 5 13:23:13 1998 Nick Clifton <nickc@cygnus.com>
7976
7977 * config/obj-coff.c (c_symbol_merge): Do not take address of
7978 native fields when performing the memcpy.
7979
7980 Tue May 5 13:10:41 1998 Gavin Koch <gavin@cygnus.com>
7981
7982 * config/tc-mips.c (macro,macro2): Implement
7983 M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
7984
7985 Mon May 4 17:49:14 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7986
7987 * config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
7988 relocations against globally visible symbols.
7989 * config/tc-m68k.c (relaxable_symbol): New macro.
7990 (m68k_ip, md_estimate_size_before_relax): Use it.
7991 (tc_m68k_fix_adjustable): Also handle weak symbols.
7992
7993 Mon May 4 16:12:23 1998 Ian Lance Taylor <ian@cygnus.com>
7994
7995 * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
7996 references to externally visible symbols.
7997 * config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
7998 values in twice for a PC relative reloc if the symbol is
7999 externally defined.
8000
8001 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
8002 don't adjust a PC relative reloc against an externally visible
8003 symbol.
8004 * config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
8005 for a PC relative fixup against an externally visible defined
8006 symbol, arrange to store object file and addend values as though
8007 the symbol were not defined.
8008 (tc_gen_reloc): Likewise.
8009
8010 Thu Apr 30 13:09:39 1998 Fred Fish <fnf@ninemoons.com>
8011
8012 * read.c (sizeof_leb128): Referenced externally by write.c so
8013 don't inline.
8014
8015 Wed Apr 29 15:45:57 1998 Michael Meissner <meissner@cygnus.com>
8016
8017 * config/tc-m32r.c ({,expand_}debug_sym): New functions to record
8018 and expand a 'debug' symbol associated with the next instruction
8019 that does not cause a short instruction to be filled with a NOP.
8020 (md_pseudo_table): Add support for .debugsym.
8021 (assemble_parallel_insn): Add calls to expand_debug_sym as
8022 appropriate.
8023 (md_assemble): Ditto.
8024
8025 Tue Apr 28 19:16:26 1998 Tom Tromey <tromey@cygnus.com>
8026
8027 * as.c (main): Conditionally call setlocale.
8028 * gasp.c (main): Likewise.
8029 * asintl.h: Include <locale.h> if HAVE_LOCALE_H.
8030 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
8031
8032 Tue Apr 28 18:33:23 1998 Frank Ch. Eigler <fche@cygnus.com>
8033
8034 * config/tc-d30v.c (md_show_usage): Correct gettext typo.
8035
8036 Tue Apr 28 12:16:30 1998 Ian Lance Taylor <ian@cygnus.com>
8037
8038 * config/tc-hppa.c: Change all calls to bzero to use memset.
8039 (pa_ip): Add cast to avoid warning.
8040 (tc_gen_reloc, md_apply_fix): Likewise.
8041 (pa_find_space_by_number): Likewise.
8042 (hppa_force_relocation): Likewise.
8043 (pa_block): Change i to unsigned int.
8044 * config/obj-som.h (obj_som_copyright): Declare.
8045
8046 Tue Apr 28 11:35:56 1998 Frank Ch. Eigler <fche@cygnus.com>
8047
8048 * ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
8049 for line numbers for assembly source.
8050
8051 Mon Apr 27 15:58:46 1998 Ian Lance Taylor <ian@cygnus.com>
8052
8053 * configure.in: Change version number to 2.9.4
8054 * configure: Rebuild.
8055
8056 Mon Apr 27 12:07:33 1998 Doug Evans <devans@seba.cygnus.com>
8057
8058 * cgen.c (cgen_asm_finish_insn): New arg relax_p. All callers updated.
8059
8060 Mon Apr 27 15:16:12 1998 Ian Lance Taylor <ian@cygnus.com>
8061
8062 * ecoff.h: Change symbolS in function declaration to struct
8063 symbol.
8064
8065 Sun Apr 26 13:44:22 1998 Ian Lance Taylor <ian@cygnus.com>
8066
8067 * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
8068 (md_convert_frag): Fix i18n typo.
8069
8070 Sat Apr 25 20:12:02 1998 Richard Henderson <rth@cygnus.com>
8071
8072 * ecoff.c (ecoff_get_cur_proc_sym): New function.
8073 * ecoff.h: Protoype it.
8074 * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
8075 [EVAX] (s_alpha_prologue): Delete.
8076 (md_pseudo_table): Update.
8077
8078 Sat Apr 25 14:00:52 1998 Ian Lance Taylor <ian@cygnus.com>
8079
8080 * config/tc-i960.c (md_assemble): Change bp_error_msg from static
8081 array to local pointer.
8082 (get_args, parse_expr): Add casts to avoid warnings.
8083
8084 Fri Apr 24 12:47:42 1998 Philippe De Muyter <phdm@macqel.be>
8085
8086 * read.c (s_set): Cast xmalloc return value to fragS *.
8087 * config/tc-m68k.c (m68k_ip): Function made static to match
8088 previous forward declaration.
8089 (insert_reg, init_regtable, md_convert_frag_1): Likewise.
8090
8091 Fri Apr 24 09:26:46 1998 Nick Clifton <nickc@cygnus.com>
8092
8093 * config/tc-v850.c: Add internationalisation macros to error
8094 strings.
8095
8096 * config/tc-m32r.c (can_make_parallel): Add internationalisation
8097 macros to error strings.
8098
8099 Thu Apr 23 19:23:23 1998 Ian Lance Taylor <ian@cygnus.com>
8100
8101 * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
8102 reloc is in the TOC csect.
8103 (md_apply_fix3): Correct gettext typo.
8104
8105 Thu Apr 23 14:58:31 1998 Nick Clifton <nickc@cygnus.com>
8106
8107 * config/tc-arm.c (find_real_start): Ignore symbols starting with
8108 .L - they are local labels and the branches are not really
8109 function calls but rather far jumps.
8110
8111 Wed Apr 22 15:57:21 1998 Tom Tromey <tromey@cygnus.com>
8112
8113 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
8114
8115 Wed Apr 22 14:52:36 1998 Ian Lance Taylor <ian@cygnus.com>
8116
8117 * config/tc-i386.c (md_assemble): Print operand number rather than
8118 using ordinal_names.
8119 (i386_operand): Likewise.
8120
8121 Tue Apr 21 22:34:25 1998 Tom Tromey <tromey@scribbles.cygnus.com>
8122
8123 * Makefile.am (INTLLIBS): Define to work around apparent automake
8124 bug.
8125 All Makefiles: Regenerated.
8126
8127 * Many files: Added gettext invocations around user-visible
8128 strings.
8129 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
8130 HAVE_LC_MESSAGES): Define.
8131 * dep-in.sed: Added asintl.h.
8132 * po/Make-in: New file.
8133 * gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
8134 Include "asintl.h".
8135 * read.c (Z_): Renamed from `_'.
8136 * Makefile.am (SUBDIRS): Added po.
8137 (POTFILES): new macro.
8138 (po/POTFILES.in): New target.
8139 ($(OBJS)): Added asintl.h.
8140 (HFILES): Likewise.
8141 (INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
8142 (as_new_LDADD): Added $(INTLLIBS).
8143 (as_new_DEPENDENCIES): Added $(INTLDEPS).
8144 (gasp_new_LDADD): Added $(INTLLIBS).
8145 (gasp_new_DEPENDENCIES): New macro.
8146 * configure, aclocal.m4: Rebuilt.
8147 * configure.in: Call CY_GNU_GETTEXT. Generate po/Makefile.in and
8148 po/Makefile.
8149 (ALL_LINGUAS): Define.
8150 * macro.c: Include "asintl.h".
8151 * as.c (main): Call setlocale, bindtextdomain, and textdomain.
8152 * as.h: Include "asintl.h".
8153 * config/tc-i386.c (ordinal_names): Removed.
8154 (md_assemble): Changed error text to avoid ordinal_names.
8155 (i386_operand): Likewise.
8156 (reloc): Added as_bad to avoid i18n problems.
8157 (tc_gen_reloc): Likewise.
8158 * config/tc-arm.c (bad_args): Now a #define.
8159 (bad_pc): Likewise.
8160 * config/obj-vms.c (VMS_stab_parse): Changed type of
8161 `long_const_msg'.
8162 (global_symbol_directory): Unified strings to avoid i18n
8163 problems.
8164 * config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
8165 avoid i18n problems.
8166 * config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
8167 * config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
8168 i18n problems.
8169 * config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
8170 problems.
8171 * config/tc-v850.c (md_assemble): Changed C++ comment into C
8172 comment.
8173 * config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
8174 problems.
8175 * as.c (print_version_id): Added an fprintf to avoid i18n
8176 problems.
8177 * cond.c (cond_finish_check): Added as_bad call to avoid i18n
8178 problems.
8179 * expr.c (expr): Added as_warn call to avoid i18n problems.
8180 * messages.c (as_assert): Changed code to avoid i18n problems.
8181 (as_abort): Likewise.
8182 * read.c (pseudo_set): Added as_bad call to avoid i18n problems.
8183 (s_space): Likewise.
8184 * po/Make-in, po/POTFILES.in, po/gas.pot: New files.
8185
8186 Tue Apr 21 17:01:22 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
8187
8188 * config/tc-i386.c (check_prefix): New static function, split out
8189 from md_assemble.
8190 (struct _i386_insn): Add wait_prefix field.
8191 (md_assemble): Remove wait_prefix local variable. Use
8192 check_prefix when adding a prefix.
8193
8194 * config/tc-i386.c (current_templates): New static variable.
8195 (md_assemble): Remove current_templates local variable.
8196 (md_assemble, i386_operand): Improve error and warning messages in
8197 many places. Add RESTORE_END_STRING in many places before error
8198 return. Clarify some comments.
8199
8200 * config/tc-i386.c (struct _i386_insn): Change seg field to a two
8201 element array.
8202 (md_assemble): Parse string instruction operands, looking for
8203 segment override prefixes. Check for invalid segment prefixes on
8204 string instruction.
8205 (i386_operand): i.seg[] and max mem_operand changes for string
8206 insns.
8207 * config/tc-i386.h (EsSeg): Define.
8208
8209 * config/tc-i386.h (regKludge): Define.
8210 (iclrKludge, imulKludge): Don't define.
8211 * config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
8212 code. Move ReverseRegRegmem fudges into Modrm case. Reorder
8213 opcode_modifier checks to look for more common cases first. Add
8214 default_seg for IsString case.
8215
8216 Tue Apr 21 16:18:12 1998 Ian Lance Taylor <ian@cygnus.com>
8217
8218 * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
8219 AC_DECL_YYTEXT.
8220 * configure: Rebuild with new automake and libtool.
8221 * aclocal.m4, Makefile.in: Likewise.
8222
8223 * doc/Makefile.am (as.dvi): New target.
8224 * doc/Makefile.in: Rebuild.
8225
8226 Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
8227
8228 * configure.in: Added sparc86x support.
8229
8230 * configure: Rebuild.
8231
8232 * config/tc-sparc.c (lookup_arch): Added arch_type to struct
8233 sparc_arch.
8234 (md_parse_option): Warn if -EL is not supported for this architecture.
8235
8236 * config/tc-sparc.h (SPARC_BIENDIAN) Always define.
8237
8238 Sat Apr 18 01:19:01 1998 Jeffrey A Law (law@cygnus.com)
8239
8240 * config/tc-mips.c (mips_ip): Note when we use get match on
8241 the full instruction name.
8242
8243 Wed Apr 15 15:17:27 1998 Richard Henderson <rth@cygnus.com>
8244
8245 * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
8246 back into the expression to handle add/sub simplification correctly.
8247
8248 Wed Apr 15 07:06:04 1998 Catherine Moore <clm@cygnus.com>
8249
8250 * config/tc-mips.c (hilo_interlocks): Remove 4300.
8251
8252 Mon Apr 13 16:51:04 1998 Nick Clifton <nickc@cygnus.com>
8253
8254 * config/tc-arm.c (do_msr): Support undocumented 'msr cpsr_flg,
8255 #<n>' instruction.
8256
8257 Thu Apr 9 10:29:42 1998 Doug Evans <devans@canuck.cygnus.com>
8258
8259 * symbols.c (max_indent_level): New global.
8260 (print_symbol_value_1): Use it.
8261 * expr.h (expr_build_dot): Declare.
8262 * expr.c (expr_build_dot): New function.
8263
8264 Wed Apr 8 16:16:11 1998 Doug Evans <devans@canuck.cygnus.com>
8265
8266 * symbols.c (print_binary): New function.
8267 (print_expr_1): Call it.
8268
8269 Mon Apr 6 12:06:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8270
8271 * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
8272 operand in the opcode.
8273
8274 Fri Apr 3 11:58:19 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
8275
8276 * config/tc-i386.h: Reorder operand flags and opcode modifier
8277 flags for clarity. Remove unused definitions: Unknown,
8278 ImmUnknown, DispUnknown, NoModrm.
8279 * config/tc-i386.c (type_names): Add missing Debug type.
8280 (md_assemble): Better duplicate prefix checking. Quicker string
8281 instruction check via new opcode_modifier flag.
8282
8283 Fri Apr 3 11:44:34 1998 Ian Lance Taylor <ian@cygnus.com>
8284
8285 * doc/as.texinfo (Invoking): Clarify -Wa example.
8286
8287 Fri Apr 3 09:12:23 1998 Gavin Koch <gavin@cetus.cygnus.com>
8288
8289 * config/tc-mips.c (mips_pseudo_table): Add weakext entry.
8290 (s_mips_weakext): Define.
8291 * ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
8292 * config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if
8293 defined(TC_MIPS).
8294
8295 Thu Apr 2 22:42:02 1998 Jeffrey A Law (law@cygnus.com)
8296
8297 * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
8298 is an error if the value can not be computed at assembly time.
8299 * config/tc-mn10300.c (tc_gen-reloc): Likewise.
8300
8301 Thu Apr 2 16:36:47 1998 Ian Lance Taylor <ian@cygnus.com>
8302
8303 * gasp.c (main): Set next field of new include_path structure to
8304 NULL. From Avery Pennarun <averyp@gdc.ca>.
8305
8306 * read.c (s_mri_sect): Call as_bad rather than abort for an
8307 unsupported MRI target.
8308
8309 Wed Apr 1 11:08:27 1998 Nick Clifton <nickc@cygnus.com>
8310
8311 * config/tc-arm.c (arm_validate_fix): New function. Determine if
8312 the destination of a branch instruction should be altered.
8313 (find_real_start): New function: Locate the real, Thumb coded
8314 start of a Thumb function.
8315 (do_t_branch23): Alter the destination of branches to Thumb
8316 functions.
8317
8318 * config/tc-arm.h: Define TC_VALIDATE_FIX.
8319
8320 Tue Mar 31 13:27:33 1998 Dean M. Deaver <deaver@amt.tay1.dec.com>
8321
8322 * config/tc-arm.c (decode_shift): Handle addressing mode 2 w/rrx
8323 also.
8324
8325 Wed Apr 1 13:13:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8326
8327 * doc/as.texinfo: Use @itemx for a secondary item in a table.
8328 * doc/c-hppa.texi: Likewise.
8329
8330 Tue Mar 31 17:52:40 1998 Ian Lance Taylor <ian@cygnus.com>
8331
8332 * Makefile.am: Rebuild dependencies.
8333 * Makefile.in: Rebuild.
8334
8335 * Makefile.am (DEP_INCLUDES): New variable.
8336 (.dep1): Change to work when srcdir is not an absolute path.
8337 (.tcdep, .objdep, .dep2, dep.sed): Likewise.
8338 * Makefile.in: Rebuild.
8339
8340 Mon Mar 30 12:46:48 1998 Ian Lance Taylor <ian@cygnus.com>
8341
8342 * config/tc-i386.h, config/tc-i386.c: Revert March 24
8343 LinearAddress patch.
8344
8345 * configure.in: Set version to 2.9.1.
8346 * configure: Rebuild.
8347
8348 * Branched binutils 2.9.
8349
8350 Mon Mar 30 11:22:08 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
8351
8352 * config/tc-i386.h (FWait): Define.
8353 * config/tc-i386.c (md_assemble): Emit fwait prefix before any
8354 other prefixes. Check FWait flag in opcode table to see which
8355 instructions require an fwait prefix.
8356
8357 Mon Mar 30 10:12:00 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8358
8359 * stabs.c (get_stab_string_offset): Always create a stab string
8360 section.
8361
8362 Sat Mar 28 22:28:02 1998 Ian Lance Taylor <ian@cygnus.com>
8363
8364 Fix some gcc -Wall warnings:
8365 * atof-generic.c (atof_generic): Add casts to avoid warnings.
8366 * ehopt.c (eh_frame_code_alignment): Likewise.
8367 * expr.c (integer_constant, operand): Likewise.
8368 * frags.c (frag_align): Likewise.
8369 * gasp.c (level_0, change_base, doinstr): Likewise.
8370 * hash.c (hash_ask): Likewise.
8371 * listing.c (listing_page, calc_hex, print_lines): Likewise.
8372 (debugging_pseudo): Likewise.
8373 * macro.c (define_macro, check_macro): Likewise.
8374 * read.c (read_a_source_file, s_align, s_float_space): Likewise.
8375 (ignore_rest_of_line, float_cons): Likewise.
8376 * symbols.c (decode_local_label_name): Likewise.
8377 * write.c (record_alignment, cvs_frag_to_fill): Likewise.
8378 (fixup_segment, number_to_chars_bigendian): Likewise.
8379 (number_to_chars_littleendian): Likewise.
8380 * config/atof-ieee.c (gen_to_words): Likewise.
8381 * config/tc-sparc.c (md_begin, md_assemble): Likewise.
8382 (sparc_ip, parse_keyword_arg, s_common): Likewise.
8383 * read.c (output_big_sleb128): Initialize locals to avoid
8384 warnings.
8385 (output_big_uleb128, equals): Likewise.
8386 * atof-generic.c (atof_generic): Change number_of_digits_* locals
8387 to unsigned int. Change zeros to unsigned int.
8388 * cond.c (s_if): Add return to default case.
8389 * frags.c (frag_now_fix): Change return type to addressT.
8390 * frags.h (frag_now_fix): Update declaration.
8391 * listing.c (file_info_struct): Change linenum to unsigned int.
8392 (struct list_info_struct): Change hll_line to unsigned int.
8393 (print_source): Update format string.
8394 * read.c (emit_expr): Change scan to unsigned int, and don't
8395 bother to initialize it.
8396 * symbols.c (dollar_label_count): Change to unsigned long.
8397 * write.c (adjust_reloc_syms): Remove unused label reduce_fixup.
8398 * config/tc-sparc.c (sparc_memory_model): Only define if OBJ_ELF.
8399 * config/tc-sparc.c (tc_gen_reloc): Add return to default case.
8400
8401 Fri Mar 27 12:46:47 1998 Ian Lance Taylor <ian@cygnus.com>
8402
8403 * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
8404 mcf5200 just as we do for m68000.
8405 (m68k_init_after_args): Likewise.
8406 (md_estimate_size_before_relax): Likewise.
8407
8408 Fri Mar 27 10:30:01 1998 Catherine Moore <clm@cygnus.com>
8409
8410 * config/tc-v850.c (md_assemble): Store relocation addend in
8411 fixup instead of instruction.
8412
8413 Thu Mar 26 23:07:18 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
8414
8415 * config/tc-i386.c (md_assemble): Swap template arguments to
8416 CONSISTENT_REGISTER_MATCH macro in reverse direction test.
8417 This macro is currently symmetric, so passing them the wrong
8418 way didn't cause any problem, but may if the macro is changed
8419 in the future.
8420 After copying template to i.tm, use i.tm. rather than t-> to
8421 access fields, and make t a const*
8422 Move i.tm.operand_types[] swap to immediately after the copy.
8423
8424 Wed Mar 25 13:44:18 1998 Doug Evans <devans@canuck.cygnus.com>
8425
8426 * expr.h (expr_build_uconstant): Add prototype.
8427 (expr_build_unary,expr_build_binary): Add prototypes.
8428 * expr.c (expr_build_uconstant): New function.
8429 (expr_build_unary,expr_build_binary): New functions.
8430
8431 Wed Mar 25 13:10:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
8432
8433 * gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
8434 * macro.c (macro_expand_body): Increase buffer size.
8435 * messages.c (as_warn): Likewise.
8436 (as_warn_where, as_bad, as_bad_where): Likewise.
8437
8438 Wed Mar 25 12:59:07 1998 Ian Lance Taylor <ian@cygnus.com>
8439
8440 Based on patch from H.J. Lu <hjl@gnu.org>:
8441 * Makefile.am (DISTSTUFF): New variable.
8442 (diststuff): New target.
8443 * Makefile.in: Rebuild.
8444
8445 Tue Mar 24 16:51:29 1998 Nick Clifton <nickc@cygnus.com>
8446
8447 * config/tc-m32r.h (md_cleanup, md_elf_section_change_hook): Call
8448 m32r_elf_section_change_hook.
8449
8450 * config/tc-m32r.c (m32r_elf_section_change_hook): New function to
8451 emit a nop if a section ends with a 16 bit instruction.
8452
8453 Tue Mar 24 19:48:09 1998 Ian Lance Taylor <ian@cygnus.com>
8454
8455 * config/obj-coff.c (obj_coff_bss): Compile unconditionally. Call
8456 s_lcomm rather than obj_coff_lcomm.
8457 (obj_pseudo_table): Compile .bss pseudo-op unconditionally.
8458
8459 Tue Mar 24 18:30:58 1998 H.J. Lu <hjl@gnu.org>
8460
8461 * config/tc-i386.h (LinearAddress): Define.
8462 * config/tc-i386.c (md_assemble): If LinearAddress is set for the
8463 instruction, don't use a default segment.
8464
8465 Mon Mar 23 18:53:40 1998 Joel Sherrill <joel@OARcorp.com>
8466
8467 * configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
8468 * configure: Rebuild.
8469
8470 Fri Mar 20 19:15:44 1998 Ian Lance Taylor <ian@cygnus.com>
8471
8472 * aclocal.m4, configure: Rebuild with libtool 1.2.
8473
8474 Thu Mar 19 16:03:12 1998 Nick Clifton <nickc@cygnus.com>
8475
8476 * config/tc-arm.c (md_apply_fix3): fix code to test the range of
8477 PC relative branches. Patch courtesy of Jonathan Walton.
8478
8479
8480 Wed Mar 18 09:29:51 1998 Nick Clifton <nickc@cygnus.com>
8481
8482 * configure.in (emulations): Add thumb-pe target.
8483
8484 * configure (emulations): Add thumb-pe target.
8485
8486 1998-03-17 Ken Raeburn <raeburn@cygnus.com>
8487
8488 * itbl-lex.l (yywrap): Don't define if already defined as a
8489 macro.
8490
8491 Fri Mar 13 16:31:38 1998 Tom Tromey <tromey@cygnus.com>
8492
8493 * depend.c (quote_string_for_make): New function.
8494 (wrap_output): Use it.
8495
8496 Thu Mar 12 18:28:22 1998 Nick Clifton <nickc@cygnus.com>
8497
8498 * config/obj-elf.c (obj_elf_section): Set bss flag in seg_info
8499 structure if type is SHT_NOBITS. [Bug fix courtesy of rth]
8500
8501 Sat Feb 28 17:28:55 1998 Richard Henderson <rth@cygnus.com>
8502
8503 * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
8504 Recognize -GN and -relax.
8505 (md_begin): Initialize gp size from -G switch.
8506 (alpha_force_relocation): Always force if -relax.
8507 (alpha_align): Take a new argument that will specify when to
8508 emit an R_ALPHA_ALIGN relocation (though we don't do that now).
8509 Change all callers. Emit nop alignment padding as nop+unop pair.
8510
8511 Sat Feb 28 17:06:22 1998 Richard Henderson <rth@cygnus.com>
8512
8513 * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
8514 * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
8515
8516 Thu Feb 26 15:49:04 1998 Michael Meissner <meissner@cygnus.com>
8517
8518 * config/tc-d30v.c (write_2_short): Delayed jsr instructions don't
8519 require padding to the next long word boundary.
8520
8521 Mon Feb 23 11:29:06 1998 Doug Evans <devans@seba.cygnus.com>
8522
8523 * cgen.c: #include symcat.h.
8524 * config/tc-m32r.c: Likewise.
8525
8526 Mon Feb 23 10:27:40 1998 Jeffrey A Law (law@cygnus.com)
8527
8528 * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
8529 absolute expressions instead of '$' prefixed register names.
8530
8531 Sat Feb 21 22:36:52 1998 Richard Henderson <rth@cygnus.com>
8532
8533 * read.c (s_set): Record file and line info for symbols when -as.
8534 (pseudo_set): Don't overwrite that dummy fragment.
8535
8536 Fri Feb 20 15:03:13 1998 Ian Lance Taylor <ian@cygnus.com>
8537
8538 * config/tc-ppc.c (md_pseudo_table): Add "section".
8539 (ppc_named_section): New static function.
8540
8541 Thu Feb 19 22:25:42 1998 Richard Henderson <rth@cygnus.com>
8542
8543 * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
8544 so we don't have to scan the entire list.
8545
8546 Tue Feb 17 17:02:15 1998 Fred Fish <fnf@cygnus.com>
8547
8548 * config/tc-d30v.c (parallel_ok): For the explicitly parallel
8549 case, allow the parallel instructions to modify the same flag
8550 bits.
8551
8552 Thu Feb 19 16:08:15 1998 Richard Henderson <rth@cygnus.com>
8553
8554 * listing.c (list_symbol_table): Categorize symbols by
8555 undefined_section rather than sy_frag->line == NULL.
8556
8557 Wed Feb 18 23:39:46 1998 Richard Henderson <rth@cygnus.com>
8558
8559 * Makefile.am (install-exec-local): Install properly when ln
8560 fails or tooldir == prefix.
8561
8562 Tue Feb 17 18:58:51 1998 Doug Evans <devans@seba.cygnus.com>
8563
8564 * cgen.c (cgen_md_apply_fix3): Delete call to validate_operand.
8565 Test result of insert_operand for error.
8566
8567 Fri Feb 13 16:41:42 1998 Ian Lance Taylor <ian@cygnus.com>
8568
8569 * Makefile.am (AUTOMAKE_OPTIONS): Add cygnus.
8570 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
8571 * doc/Makefile.am (AUTOMAKE_OPTIONS): Define.
8572 * doc/Makefile.in: Rebuild.
8573
8574 Fri Feb 13 00:47:44 1998 Ian Lance Taylor <ian@cygnus.com>
8575
8576 * config/tc-mips.c (macro_build): Handle operand type 'C'.
8577 (macro): Fix handling of M_COP[0-3].
8578
8579 Thu Feb 12 14:06:59 1998 Ian Lance Taylor <ian@cygnus.com>
8580
8581 Based on patches from Ross Harvey <ross@teraflop.com>:
8582 * macro.c (ISSEP): Only treat '<' and '>' as separator characters
8583 if macro_alternate or macro_mri.
8584 (getstring): Remove support for byte constants between < and >.
8585 (get_any_string): '<' only starts a string if macro_alternate or
8586 macro_mri.
8587 (macro_expand_body): Permit keyword parameters following
8588 positional parameters.
8589
8590 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
8591 * configure.in (alpha*-*-netbsd*): New target.
8592 * config/te-nbsd.h (LOCAL_LABELS_FB): Define.
8593 * configure: Rebuild.
8594
8595 * as.h (flag_warn_suppress_instructionswap): Move from here...
8596 * config/tc-d10v.c (flag_warn_suppress_instructionswap): ...to
8597 here, and make static.
8598
8599 * ehopt.c (eh_frame_code_alignment): Only use seg_info if
8600 BFD_ASSEMBLER or MANY_SEGMENTS.
8601
8602 * as.c (show_usage): Update bug-gnu-utils address.
8603 * gasp.c (show_usage): Likewise.
8604 * doc/as.texinfo (Bug Reporting): Likewise.
8605
8606 Wed Feb 11 23:26:28 1998 Jeffrey A Law (law@cygnus.com)
8607
8608 * config/tc-mips.c (load_address): Don't use mips III or mips IV
8609 insns regardless of the size of a pointer if we're in mips I or
8610 MIPS II mode.
8611 (macro, macro2, s_cprestore, s_cpadd): Likewise.
8612
8613 Thu Feb 12 03:41:00 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8614
8615 Fix rac to accept only a0:
8616 * tc-d10v.c (parallel_ok, find_opcode):
8617 Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
8618 Introduce OPERAND_GPR.
8619
8620 Wed Feb 11 16:28:13 1998 Richard Henderson <rth@cygnus.com>
8621
8622 * read.c (s_fill): Handle non-constant repeat counts by creating
8623 an rs_space fragment.
8624
8625 Tue Feb 10 18:31:31 1998 Ian Lance Taylor <ian@cygnus.com>
8626
8627 * config/tc-i386.c (i386_operand): Change error added Jan 2 1998
8628 from as_bad to as_warn.
8629
8630 Tue Feb 10 18:04:00 1998 Jim Lemke <jlemke@cygnus.com>
8631
8632 * as.c: (perform_an_assembly_pass): Use [TEXT|DATA|BSS]_SECTION_NAME
8633 * as.h: Define default values of [TEXT|DATA|BSS]_SECTION_NAME
8634 * config/obj-elf.c (elf_begin): Use [TEXT|DATA|BSS]_SECTION_NAME
8635
8636 Tue Feb 10 17:58:18 1998 Ian Lance Taylor <ian@cygnus.com>
8637
8638 * ehopt.c (eh_frame_code_alignment): If not BFD_ASSEMBLER, use
8639 seg_fix_rotP rather than fix_root from seg_info.
8640
8641 Tue Feb 10 15:32:22 1998 Ian Carmichael <iancarm@cygnus.com>
8642
8643 * expr.c: Add support for 0x1_2_3_4 bignums.
8644
8645 Tue Feb 10 14:43:40 1998 Ian Lance Taylor <ian@cygnus.com>
8646
8647 * configure.in: Change -linux* to -linux-gnu*.
8648 * configure: Rebuild.
8649
8650 * app.c (do_scrub_begin): Treat \r as whitespace.
8651
8652 Mon Feb 9 14:16:11 1998 Ian Lance Taylor <ian@cygnus.com>
8653
8654 * Makefile.am: Update dependencies.
8655 * Makefile.in: Rebuild.
8656
8657 Sat Feb 7 15:33:51 1998 Ian Lance Taylor <ian@cygnus.com>
8658
8659 * configure, aclocal.m4: Rebuild with new libtool.
8660
8661 Fri Feb 6 16:08:30 1998 Jeffrey A Law (law@cygnus.com)
8662
8663 * config/tc-mips.c (md_begin): If mips_cpu is set, then use it as
8664 the argument to bfd_set_arch_mach.
8665 (load_address): Use bfd_arch_bits_per_address to determine the
8666 bit size of an address instead of looking at the isa level.
8667 (macro, macro2, s_cprestore, s_cpadd): Likewise.
8668
8669 Fri Feb 6 14:44:34 1998 Nick Clifton <nickc@cygnus.com>
8670
8671 * config/tc-v850.c (md_parse_option): Add -mv850any command line option.
8672
8673 Thu Feb 5 12:39:08 1998 Ian Lance Taylor <ian@cygnus.com>
8674
8675 * ehopt.c: New file.
8676 * as.h (enum _relax_state): Add rs_cfa.
8677 (check_eh_frame, eh_frame_estimate_size_before_relax): Declare.
8678 (eh_frame_relax_frag, eh_frame_convert_frag): Declare.
8679 * read.c (emit_expr): Call check_eh_frame.
8680 * write.c (cvt_frag_to_fill): Handle rs_cfa.
8681 (relax_segment): Likewise.
8682 * Makefile.am: Rebuild dependencies.
8683 (GAS_CFILES): Add ehopt.c.
8684 (GENERIC_OBJS): Add ehopt.o.
8685 * doc/internals.texi (Frags): Document rs_cfa.
8686
8687 * as.c (show_usage): Mention --traditional-format.
8688 (parse_args): Accept --traditional-format.
8689 * as.h (flag_traditional_format): Declare.
8690 * output-file.c (output_file_create): If flag_traditional_format,
8691 set BFD_TRADITIONAL_FORMAT on stdoutput.
8692 * doc/as.texinfo, doc/as.1: Document --traditional-format.
8693
8694 * config/tc-mips.c (append_insn): Make sure that if we have a
8695 fixup for an unmatched %hi reloc, it does not associated with a
8696 variant frag.
8697
8698 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
8699 * doc/Makefile.in: Likewise.
8700
8701 Wed Feb 4 15:41:54 1998 Nick Clifton <nickc@cygnus.com>
8702
8703 * config/tc-m32r.c (check_for_side_effects): New function.
8704 (can_make_parallel): Add checks for instruction side effects
8705 clashing with the other instruction.
8706 (assemble_parallel_insn): Improve warning messages. Return error
8707 message from non-swapped instruction order.
8708
8709 Wed Feb 4 20:00:26 1998 James G. Smith <jsmith@teknema.demon.co.uk>
8710
8711 * config/tc-arm.c: Rename arm_after_pass_hook() to arm_cleanup().
8712
8713 * config/tc-arm.h: Replace md_after_pass_hook definition with a
8714 md_cleanup definition. This moves the forced literal output to
8715 the end of the source pass, and avoids macro's inserting literals
8716 into the code immediately after the macro expansion.
8717
8718 Wed Feb 4 13:17:19 1998 Ian Lance Taylor <ian@cygnus.com>
8719
8720 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
8721 a gas internal symbol is adjustable.
8722 * config/tc-ppc.h (tc_fix_adjustable): Likewise.
8723
8724 * as.h: If gcc version greater than 2.6, use `__format__' and
8725 `__printf__' in function attributes, rather than `format' and
8726 `printf'.
8727
8728 Mon Feb 2 18:38:18 1998 Ian Lance Taylor <ian@cygnus.com>
8729
8730 * config/tc-sparc.c: Only include elf/sparc.h if OBJ_ELF.
8731
8732 Mon Feb 2 18:30:34 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
8733
8734 Add tms320c30 support:
8735 * config/tc-tic30.h: New file.
8736 * config/tc-tic30.c: New file.
8737 * config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
8738 TARGET_FORMAT as "coff-tic30".
8739 * configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
8740 * Makefile.am: Rebuild dependencies.
8741 (CPU_TYPES): Add tic30.
8742 (CPU_OBJ_VALID): tic30-aout is valid.
8743 (TARGET_CPU_CFILES): Add config/tc-tic30.c.
8744 (TARGET_CPU_HFILES): Add config/tc-tic30.h.
8745 * configure, Makefile.in: Rebuild.
8746
8747 Mon Feb 2 10:20:37 1998 Nick Clifton <nickc@cygnus.com>
8748
8749 * config/tc-v850.c (md_assemble): Improvements to error messages.
8750
8751 Mon Feb 2 12:39:05 1998 Geoff Keating <geoffk@ozemail.com.au>
8752
8753 * config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
8754 BFD_RELOC_HI16_S to store the high bits of any value.
8755
8756 * config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
8757 (TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
8758 assembler calculate relocations to any external symbol at all.
8759 * config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
8760 involving generation of pc-relative relocs.
8761 (md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
8762 has been moved to md_apply_fix3.
8763
8764 * config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
8765 (ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
8766 which actually means (the address of identifier's GOT entry) +
8767 constant, which is not particularly useful.
8768
8769 Fri Jan 30 11:02:35 1998 Doug Evans <devans@canuck.cygnus.com>
8770
8771 * read.h (include_dirs): Declare.
8772 (include_dir_count,include_dir_maxlen): Declare.
8773
8774 Fri Jan 30 11:47:02 1998 Ian Lance Taylor <ian@cygnus.com>
8775
8776 * configure.in: Correct check for shared opcodes library.
8777 * configure: Rebuild.
8778
8779 * listing.c (buffer_line): If we can't open the file, set at_end.
8780 (listing_print): Remove unused local variable fi.
8781
8782 * config/m68k-parse.y (reglistpair): Handle register list in
8783 either order.
8784
8785 * config/vms-conf.h: Don't undef VERSION.
8786
8787 Thu Jan 29 14:42:44 1998 Pat Rankin <rankin@eql.caltech.edu>
8788
8789 * Makefile.am (CONFIG_OBJS): New variable, containing part of old
8790 OBJS variable.
8791 (GENERIC_OBJS): New variable, with the rest of the old OBJS
8792 variable.
8793 (OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
8794 ($(srcdir)/make-gas.com): Rename from make-gas.com.
8795 (stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
8796 (EXTRA_DIST): Define.
8797 * vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
8798 explicitly rather than via the list of object files.
8799 (gcc-as.opt): New file created when make-gas.com is run.
8800 * config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
8801 itbl-cpu.h} to #include appropriate file rather than copying that
8802 file.
8803 * config/vms-conf.h: Synchronize with current config.in.
8804 * Makefile.in: Rebuild.
8805
8806 Thu Jan 29 18:48:19 1998 Bill Moyer <billm@cygnus.com>
8807
8808 * config/tc-d30v.c (do_assemble): Added flag_explicitly_parallel.
8809 (parallel_ok): Relaxed parallel subinstruction dependency check.
8810
8811 Wed Jan 28 14:35:00 1998 Bill Moyer <billm@cygnus.com>
8812
8813 * as.h (flag_warn_suppress_instructionswap): added new flag.
8814 * tc-d10v.c (md_parse_option,md_longopts): added "--nowarnswap"
8815 command line argument.
8816 * tc-d10v.c (write_2_short): emit "Swapping instructions"
8817 warning only if flag_warn_suppress_instructionswap is false.
8818
8819 Wed Jan 28 16:41:19 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
8820
8821 * configure.in (i386-*-mingw32*): New target.
8822 * configure: Rebuild.
8823
8824 Wed Jan 28 14:51:18 1998 Ian Lance Taylor <ian@cygnus.com>
8825
8826 * symbols.c (resolve_symbol_value): Don't set the segment if it
8827 hasn't changed, and this is OBJ_AOUT without BFD_ASSEMBLER.
8828
8829 * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
8830 S_GET_SEGMENT.
8831
8832 Wed Jan 28 13:54:50 1998 Pat Rankin <rankin@eql.caltech.edu>
8833
8834 as.h (unlink): Reverse 13-Feb-97 change; use of unlink vs remove
8835 depends upon HAVE_{UNLINK,REMOVE} values rather than host
8836 compiler.
8837
8838 Wed Jan 28 13:48:08 1998 Ian Lance Taylor <ian@cygnus.com>
8839
8840 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define.
8841
8842 Wed Jan 28 09:52:00 1998 Nick Clifton <nickc@cygnus.com>
8843
8844 * config/tc-v850.c (v850_insert_operand): Display instruction when
8845 an error is encountered.
8846
8847 Tue Jan 27 13:32:01 1998 Robert Lipe <robertl@dgii.com>
8848
8849 * configure.in (i386-*-sco3.2v5*): Defaults to ELF now.
8850 (i386-*-sco3.2v5*coff): New target.
8851 (i386-*-sco3.2*): New target.
8852 * configure: Rebuild.
8853
8854 Tue Jan 27 11:06:52 1998 Nick Clifton <nickc@cygnus.com>
8855
8856 * config/tc-v850.c: Tidy error message production.
8857
8858 Tue Jan 27 12:24:32 1998 Ian Lance Taylor <ian@cygnus.com>
8859
8860 * config/tc-arm.c (md_apply_fix3): Add new variable newimm to hold
8861 validate_immediate return value in the right type for comparisons
8862 to FAIL.
8863
8864 Tue Jan 27 06:51:59 1998 Richard Henderson <rth@cygnus.com>
8865
8866 * listing.c (MAX_BYTES): Use listing variables not constants.
8867 (data_buffer): No longer an array, but a pointer.
8868 (calc_hex): sizeof(data_buffer) -> MAX_BYTES.
8869 (listing_listing): Allocate data_buffer.
8870
8871 Tue Jan 27 06:38:35 1998 Richard Henderson <rth@cygnus.com>
8872
8873 * as.c (parse_args): Add --listing-lhs-width, --listing-lhs-width2,
8874 --listing-rhs-width, --listing-cont-lines.
8875 (show_usage): Update.
8876 * listing.c (listing_lhs_width, listing_lhs_width_second): New vars.
8877 (listing_lhs_cont_lines, listing_rhs_width): New vars.
8878 (print_lines): Use the variables instead of the constants.
8879 (listing_listing): Likewise.
8880 * listing.h: Declare the new vars.
8881
8882 Tue Jan 27 05:32:05 1998 Richard Henderson <rth@cygnus.com>
8883
8884 * as.c (parse_args): Add --keep-locals alias for -L.
8885 Add --strip-local-absolute.
8886 (show_usage): Update.
8887 * as.h (flag_strip_local_absolute): New flag.
8888 * symbols.c (S_IS_LOCAL): Use it.
8889 * config/obj-aout.h (S_IS_LOCAL): Likewise.
8890 * config/obj-bout.h (S_IS_LOCAL): Likewise.
8891 * config/obj-coff.h (S_IS_LOCAL): Likewise.
8892
8893 Mon Jan 26 13:07:41 1998 Nick Clifton <nickc@cygnus.com>
8894
8895 * config/tc-m32r.c: Detect if explicitly parallel instructions
8896 might have an io conflict and issue a warning message.
8897
8898 Thu Jan 22 17:51:44 1998 Nick Clifton <nickc@cygnus.com>
8899
8900 * cgen.c (cgen_save_fixups, cgen_restore_fixups,
8901 cgen_swap_fixups): Functions to save, restore and swap the fixup
8902 chain with a backup copy.
8903 (cgen_asm_finish_insn): Returns address of constructed insn.
8904
8905 Wed Jan 21 16:49:10 1998 Richard Henderson <rth@cygnus.com>
8906
8907 * listing.c (file_info_struct): Remove FILE, add POS.
8908 (last_open_file_info, last_open_file): New; a one entry FILE* cache.
8909 (file_info): Don't open the file.
8910 (buffer_line): Check for the file in the last_open cache, updating
8911 as necessary.
8912 (print_source): Don't reference file_info->file.
8913 (listing_listing): Likewise.
8914 (listing_print): Close the file in the cache, if any.
8915
8916 Fri Jan 16 14:51:48 1998 Ian Lance Taylor <ian@cygnus.com>
8917
8918 * read.c (dwarf_file_string): New file static variable.
8919 (emit_expr): Look for constant sequence that leads up to a file
8920 name in DWARF debugging output.
8921 (stringer): Use dwarf_file_string to decide whether to accept a
8922 string as a file name.
8923
8924 Fri Jan 16 11:30:37 1998 Richard Henderson <rth@cygnus.com>
8925
8926 * tc-m68k.c (m68k_ip): Remove absl->reglst MRI hack.
8927 (crack_operand): Add reg->reglst MRI hack.
8928 (r_seg): Put reglst symbols in reg_section.
8929 (m68k_frob_symbol): Frob reglst symbols into absolute_section.
8930
8931 Thu Jan 15 14:19:01 1998 Richard Henderson <rth@cygnus.com>
8932
8933 * tc-sh.c (get_specific): Handle SGR & DBR.
8934
8935 Thu Jan 15 13:46:48 1998 Richard Henderson <rth@cygnus.com>
8936
8937 * tc-h8300.c (parse_reg): Take the length of the symbol into
8938 account when attempting to match a register name.
8939 * tc-h8500.c (parse_reg): Likewise.
8940
8941 Wed Jan 14 17:52:33 1998 Nick Clifton <nickc@cygnus.com>
8942
8943 * cgen.c: Formatting changes to improve readability.
8944
8945 Wed Jan 14 15:41:41 1998 Jeffrey A Law (law@cygnus.com)
8946
8947 * config/tc-mips.c (macro): Rework division code to avoid unfilled
8948 delay slot.
8949
8950 Wed Jan 14 18:04:20 1998 Michael Meissner <meissner@cygnus.com>
8951
8952 Based on a patch from Jim Wilson
8953 * config/tc-d30v.c (do_assemble): Remove non-ansi default case.
8954 (tc_gen_reloc): Handle cross section PC relative relocs
8955 correctly.
8956
8957 Wed Jan 14 15:02:19 1998 Doug Evans <devans@seba.cygnus.com>
8958
8959 * config/tc-mips.c (mips_ip): Don't test pinfo flags if INSN_MACRO.
8960
8961 Mon Jan 12 13:04:57 1998 Doug Evans <devans@seba.cygnus.com>
8962
8963 * cgen.c: #include setjmp.h. Clean up pass over `struct foo' usage.
8964 (expr_jmp_buf): New static local.
8965 (cgen_parse_operand): Allow use of longjmp in parsing to handle errors.
8966 (cgen_md_operand): New function.
8967 * tc-m32r.c: Clean up pass over `struct foo' usage.
8968 (md_estimate_size_before_relax): Use CGEN_INSN_MNEMONIC.
8969
8970 Tue Jan 6 15:36:02 1998 Richard Henderson <rth@cygnus.com>
8971
8972 * symbols.c (S_SET_SEGMENT): Don't set the segment for section syms.
8973 (S_IS_EXTERNAL, S_IS_LOCAL): Correct parenthetication.
8974
8975 Fri Jan 2 16:08:54 1998 Ian Lance Taylor <ian@cygnus.com>
8976
8977 * config/tc-i386.c (i386_operand): Give an error if there are
8978 unrecognized characters after an expression.
8979
8980 For older changes see ChangeLog-9697
This page took 0.238986 seconds and 4 git commands to generate.