47c820c4a2065565b535debd2bd080e67f594d20
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 2003-09-26 Matt Thomas <matt@3am-software.com>
2
3 * config/tc-vax.c (md_shortopts): Fix a typo. Remove 'K'.
4 (OPTION_PIC): Define.
5 (md_longopts): Add "pic" option.
6 (md_parse_option): Change 'K' to OPTION_PIC.
7
8 2003-09-23 Alan Modra <alan@modra.org>
9
10 * config/obj-elf.c (obj_elf_change_section): Adjust for
11 _bfd_elf_get_sec_type_attr changes. Allow SHF_MERGE and SHF_STRINGS
12 to be set when defaults are not. Don't set attr from defaults if
13 old_sec.
14
15 2003-09-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
16
17 * config/tc-mips.c (macro_build_ldst_constoffset): Don't silently
18 truncate values which won't fit im 32 bits.
19 (load_register): Likewise.
20 (macro): Likewise.
21
22 2003-09-17 Dmitry Diky <diwil@mail.ru>
23
24 * config/tc-msp430.c (MAX_OP_LEN): Set to 256.
25 (msp430_operands): Remove redundant l2[16] within switch-case.
26
27 2003-09-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
28
29 * configure.in: Handle arm-*-rtems* and thumb-*rtems*.
30 * configure: Regenerate.
31
32 2003-09-14 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
33
34 * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): Remove.
35 (macro_build_ldst_constoffset): Sign-extend 32-bit constants. Change
36 the function prototype.
37 (load_register): Likewise. Simplify the checks for sign-extended
38 constants.
39 (macro): Likewise. Fix code generation for 64-bit address constants
40 outside the 32-bit compatibility space. Adjust
41 macro_build_ldst_constoffset calls.
42 (s_cprestore): Adjust macro_build_ldst_constoffset call.
43
44 2003-09-11 Bob Wilson <bob.wilson@acm.org>
45
46 * config/tc-xtensa.c (insn_labels, free_insn_labels, saved_insn_labels,
47 literal_syms): New global variables.
48 (xtensa_define_label, add_target_symbol, xtensa_find_label,
49 map_over_defined_symbols, is_loop_target_label,
50 xtensa_mark_target_fragments, xtensa_move_frag_symbol,
51 xtensa_move_frag_symbols, defined_symbols, branch_targets): Delete.
52 (xtensa_begin_directive): Call md_flush_pending_output. Move symbols
53 from insn_labels to saved_insn_labels when entering a literal region.
54 (xtensa_end_directive): Call md_flush_pending_output. Restore
55 insn_labels list when leaving a literal region.
56 (xtensa_literal_position): Call xtensa_clear_insn_labels.
57 (xtensa_literal_pseudo): Add check to disallow .literal inside a
58 literal region. Move insn_labels to saved_insn_labels and then restore
59 insn_labels on exit.
60 (xg_add_branch_and_loop_targets): Replace add_target_symbol calls with
61 code to set is_loop_target or is_branch_target flag on the symbol
62 (xtensa_create_literal_symbol): Call xtensa_add_literal_sym.
63 (xtensa_add_literal_sym, xtensa_add_insn_label,
64 xtensa_clear_insn_labels): New functions.
65 (xtensa_move_labels): Remove old_frag and old_offset arguments. Add
66 loops_ok argument. Rewrite to use insn_labels list instead of
67 calling xtensa_find_label and to check the is_loop_target flag on
68 symbols when loops_ok is false.
69 (xtensa_frob_label): Remove call to xtensa_define_label. Add call
70 to either xtensa_add_literal_sym or xtensa_add_insn_label. Adjust
71 call to xtensa_move_labels. Propagate is_branch_target and
72 is_loop_target flags from symbols to frags.
73 (xtensa_flush_pending_output): Call xtensa_clear_insn_labels.
74 (md_assemble): Use xtensa_move_labels with loops_ok = FALSE when
75 aligning a loop instruction. Adjust call to xtensa_move_labels for
76 aligning entry instructions. Add call to xtensa_clear_insn_labels.
77 (xtensa_end): Remove call to xtensa_mark_target_fragments.
78 (xtensa_move_literals): Replace xtensa_move_frag_symbols call with
79 code to use new literal_syms list.
80 * config/tc-xtensa.h (xtensa_symfield_type): Add is_loop_target and
81 is_branch_target flags.
82
83 2003-09-09 Bob Wilson <bob.wilson@acm.org>
84
85 * config/tc-xtensa.c (xtensa_mark_literal_pool_location): Remove
86 "move_labels" argument and corresponding call to xtensa_move_labels.
87 (md_assemble): Add a separate call to xtensa_move_labels and remove
88 argument for call to xtensa_mark_literal_pool_location.
89 (xtensa_literal_position, xtensa_switch_to_literal_fragment): Fix
90 calls to xtensa_mark_literal_pool_location.
91 (xtensa_create_local_symbol): Delete and inline the code into...
92 (xtensa_create_literal_symbol): ...here.
93 (xtensa_frob_label): Combine conditionals.
94 (expression_maybe_register, xtensa_symbol_new_hook,
95 fix_new_exp_in_seg): Use symbol_get_tc.
96
97 2003-09-09 Bob Wilson <bob.wilson@acm.org>
98
99 * config/tc-xtensa.c (xtensa_literal_pseudo): Remove code for
100 combining identical literals.
101 (expression_maybe_register): Remove call to find_lit_sym_translation.
102 (is_duplicate_expression, cache_literal, is_duplicate_literal,
103 add_lit_sym_translation, find_lit_sym_translation): Delete.
104
105 2003-09-07 Nick Clifton <nickc@redhat.com>
106
107 * doc/as.texinfo (Comments): Comment character for PPC is #.
108
109 2003-09-06 Stephane Carrez <stcarrez@nerim.fr>
110
111 PR savannah/4358:
112 * config/tc-m68hc11.c (s_m68hc11_relax): Use 2 for size to avoid
113 overflow complain.
114
115 2003-09-05 Richard Sandiford <rsandifo@redhat.com>
116
117 * config/tc-frv.c (md_pcrel_from_section): Heed TC_FORCE_RELOCATION.
118
119 2003-09-04 Nick Clifton <nickc@redhat.com>
120
121 * config/tc-v850.c (set_machine): Accept v850e1 machine number.
122 (md_pseudo_table): Add .v850e1 pseudo op.
123 (md_show_usage): Document -mv850e1 switch.
124 (md_parse_option): Accept -mv850e1 switch.
125 (md_begin): Allow TARGET_CPU to be v850e1.
126 * doc/c-v850.texi: Document -mv850e1 switch and .v850e1 pseudo op.
127 * NEWS: Mention support for v850e1.
128
129 2003-09-04 Alan Modra <amodra@bigpond.net.au>
130
131 * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ANY to existing
132 ppc_cpu selection rather than replacing.
133 (ppc_set_cpu): Ignore and preserve PPC_OPCODE_ANY in ppc_cpu.
134 (md_begin): When PPC_OPCODE_ANY, insert all opcodes in ppc_hash.
135
136 2003-09-03 Robert Millan <robertmh@gnu.org>
137
138 * configure.in: Match GNU/KFreeBSD with new kfreebsd*-gnu
139 triplet.
140 * configure: Regenerate.
141
142 2003-09-02 Daniel Jacobowitz <drow@mvista.com>
143
144 * configure.in: Update AC_PREREQ to 2.57. Use AC_CONFIG_FILES
145 and AC_CONFIG_COMMANDS instead of the three-argument AC_OUTPUT.
146 Specify AC_CONFIG_AUX_DIR.
147 * aclocal.m4: Regenerated with aclocal-1.7.
148 * configure: Regenerated with autoconf 2.57.
149 * Makefile.in, doc/Makefile.in: Regenerated with automake-1.7.
150
151 2003-08-29 Jakub Jelinek <jakub@redhat.com>
152
153 * dw2gencfi.c (cfi_pseudo_table): Add cfi_window_save.
154 (dot_cfi, output_cfi_insn): Handle DW_CFA_GNU_window_save.
155 (output_cie): Don't use DW_EH_PE_pcrel if neither DIFF_EXPR_OK
156 nor tc_cfi_emit_pcrel_expr are defined.
157 (output_fde): Use tc_cfi_emit_pcrel_expr if available and
158 DIFF_EXPR_OK is not defined.
159 * config/tc-sparc.h (TARGET_USE_CFIPOP): Define.
160 (tc_cfi_frame_initial_instructions, tc_regname_to_dw2regnum,
161 tc_cfi_emit_pcrel_expr): Define.
162 (sparc_cfi_frame_initial_instructions, sparc_regname_to_dw2regnum,
163 sparc_cfi_emit_pcrel_expr): New prototypes.
164 (sparc_cie_data_alignment): New decl.
165 (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Define.
166 * config/tc-sparc.c: Include dw2gencfi.h.
167 (sparc_cie_data_alignment): New variable.
168 (md_begin): Initialize it.
169 (sparc_cfi_frame_initial_instructions): New function.
170 (sparc_regname_to_dw2regnum): Likewise.
171 (sparc_cfi_emit_pcrel_expr): Likewise.
172 * doc/as.texinfo: Document .cfi_window_save.
173
174 * config/tc-sparc.c (s_common): Cast last argument to long and
175 change format string to shut up warning.
176
177 2003-08-25 Jason Eckhardt <jle@rice.edu>
178
179 * doc/c-i860.texi: Update text about relocatable address expansions.
180
181 2003-08-24 Jason Eckhardt <jle@rice.edu>
182
183 * config/tc-i860.c (md_assemble): Use isrc2 from the original
184 instruction when expanding E_ADDR.
185
186 2003-08-21 Nick Clifton <nickc@redhat.com>
187
188 * po/tr.po: Updated Turkish translation.
189
190 2003-08-20 Alan Modra <amodra@bigpond.net.au>
191
192 * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ISEL and
193 PPC_OPCODE_RFMCI to -m440 selected ppc_cpu.
194
195 2003-08-19 Nick Clifton <nickc@redhat.com>
196
197 * config/tc-arm.c (cp_address_required_here): Add code to handle
198 unindexed addressing mode.
199
200 2003-08-19 Alan Modra <amodra@bigpond.net.au>
201
202 * config/tc-ppc.c (md_parse_option): Handle -m440.
203 (md_show_usage): Add -m440.
204 (md_apply_fix3): Warning fix.
205 * doc/c-ppc.texi: Document -m440.
206
207 2003-08-16 Benjamin Kalytta <bkausbk@web.de>
208
209 * read.c (s_print): Check for NULL.
210
211 2003-08-16 Alan Modra <amodra@bigpond.net.au>
212
213 * write.c (fixup_segment): When handling an expression involving
214 the subtraction of two symbols in the same segment, don't clear
215 fx_pcrel except for TC_M68K.
216
217 2003-08-14 Alan Modra <amodra@bigpond.net.au>
218
219 * config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER
220 code.
221 * config/tc-i386.c: Likewise.
222 (RELOC_ENUM): Don't define. Replace throughout with enum.
223
224 * dep-in.sed: Remove libintl.h. Ignore include/fopen-*.h
225 * Makefile.am (POTFILES.in): Unset LC_COLLATE.
226 Run "make dep-am".
227 * Makefile.in: Regenerate.
228
229 2003-08-08 Andreas Schwab <schwab@suse.de>
230
231 * config/tc-m68k.h (TARGET_USE_CFIPOP)
232 (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT)
233 (tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions):
234 Define.
235 * config/tc-m68k.c: Include "dw2gencfi.h".
236 (tc_m68k_regname_to_dw2regnum)
237 (tc_m68k_frame_initial_instructions): New functions.
238
239 2003-08-08 Dmitry Diky <diwil@mail.ru>
240
241 * config/tc-msp430.c: Add xW42 and xE42 parts. Sort MPU list
242 according to gcc order.
243
244 2003-08-07 Jason Eckhardt <jle@rice.edu>
245
246 * config/tc-i860.c (i860_check_label): New function.
247 * config/tc-i860.h (i860_check_label): New prototype.
248 (tc_check_label): Define macro as i860_check_label.
249
250 2003-08-06 Jason Eckhardt <jle@rice.edu>
251
252 * config/tc-i860.c (s_align_wrapper): New function and prototype.
253 (md_pseudo_table): Change s_align_bytes to s_align_wrapper, remove
254 surrounding OBJ_ELF ifdef, and re-format slightly.
255 * doc/c-i860.texi: Document the special .align syntax available
256 in Intel mode.
257
258 2003-08-06 Jason Eckhardt <jle@rice.edu>
259
260 * config/tc-i860.c (i860_handle_align): New function.
261 * config/tc-i860.h (HANDLE_ALIGN): Define macro.
262 (MAX_MEM_FOR_RS_ALIGN_CODE): Define macro.
263
264 2003-08-06 Jason Eckhardt <jle@rice.edu>
265
266 * config/tc-i860.c (i860_process_insn): Check that instructions
267 with their dual-bit set are 8-byte aligned.
268
269 2003-08-06 Nick Clifton <nickc@redhat.com>
270
271 * po/fr.po: Updated French translation.
272
273 2003-08-05 Jason Eckhardt <jle@rice.edu>
274
275 * config/tc-i860.c (i860_process_insn): Don't handle dual-bit
276 setting during flop argument parsing. Instead, do it after
277 instruction is fully parsed.
278
279 2003-08-05 Jason Eckhardt <jle@rice.edu>
280
281 * doc/c-i860.texi: Mention that .dual, .enddual, and .atmp
282 directives are only available in Intel syntax mode.
283
284 2003-08-05 Jason Eckhardt <jle@rice.edu>
285
286 * config/tc-i860.c (s_dual): Accept .dual directive only in
287 the Intel syntax mode.
288 (s_enddual): Likewise for .enddual.
289 (s_atmp): Likewise for .atmp.
290
291 2003-08-04 Alan Modra <amodra@bigpond.net.au>
292
293 * config/tc-i386.c (i386_intel_operand): Always call i386_index_check
294 for memory operands. Pass the full operand_string to i386_index_check.
295
296 2003-08-01 Jason Eckhardt <jle@rice.edu>
297
298 * config/tc-i860.c: Remove SYNTAX_SVR4 macro and occurrences.
299 (target_intel_syntax): Declare variable.
300 (OPTION_INTEL_SYNTAX): Declare macro.
301 (md_longopts): Add option -mintel-syntax.
302 (md_parse_option): Set target_intel_syntax.
303 (md_show_usage): Add -mintel-syntax usage.
304 (md_begin): Set reg_prefix based on target_intel_syntax.
305 (i860_process_insn): Skip register prefix only if there is one.
306 Parse relocatable expressions in either Intel or AT&T syntax based
307 on target_intel_syntax instead of the SYNTAX_SVR4 macro.
308 * doc/c-i860.texi: Document -mintel-syntax option and give blurb
309 about the differences in syntax.
310
311 2003-08-01 Dmitry Diky <diwil@mail.ru>
312
313 * config/tc-msp430.c (msp430_srcoperand): Extend 'push' bug workaround
314 to all arches.
315
316 2003-07-30 J"orn Rennecke <joern.rennecke@superh.com>
317
318 * config/tc-sh.c (md_assemble): For branches, check & update
319 valid_arch here.
320
321 2003-07-30 Jason Eckhardt <jle@rice.edu>
322
323 * config/tc-i860.c: Convert to ISO C90.
324
325 2003-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
326
327 * read.c (s_space): Revert 2003-07-28 change.
328
329 2003-07-30 Alan Modra <amodra@bigpond.net.au>
330
331 * config/obj-elf.c (obj_elf_change_section): Allow "x" for .note*.
332
333 2003-07-29 Alan Modra <amodra@bigpond.net.au>
334
335 * config/tc-sh.c (tc_gen_reloc): Test for R_SH_IND12W only when ELF.
336
337 2003-07-29 Jakub Jelinek <jakub@redhat.com>
338
339 * config/tc-ppc.c (md_apply_fix3): Fix check for lq insns.
340
341 2003-07-28 H.J. Lu <hongjiu.lu@intel.com>
342
343 * config/obj-elf.c (obj_elf_section_type): Also accept "note".
344
345 2003-07-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
346
347 * read.c (s_space): Don't warn about .space 0.
348
349 2003-07-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
350
351 * config/tc-mips.c (mips_flag_pdr): Define.
352 (md_begin) [OBJ_ELF]: Use it to control .pdr creation.
353 (s_mips_end) [OBJ_ELF]: Likewise.
354 (md_longopts) [OBJ_ELF]: Define OPTION_PDR, OPTION_NO_PDR.
355 (md_parse_option) [OBJ_ELF]: Handle them.
356 (md_show_usage) [OBJ_ELF]: Document -mpdr, -mno-pdr.
357
358 * doc/c-mips.texi (MIPS Opts): Document -mpdr, -mno-pdr.
359 * doc/as.texinfo (Overview) [MIPS]: Likewise.
360
361 2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
362
363 * config/obj-elf.c (obj_elf_change_section): Update
364 elf_section_type and elf_section_flags only when they are
365 specified.
366
367 2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
368
369 * config/obj-elf.c (obj_elf_change_section): Always set section
370 type and flags.
371
372 2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
373
374 * config/obj-elf.c (special_sections): Removed.
375 (obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set
376 elf_section_type and elf_section_flags.
377 (elf_frob_file): Set SHT_GROUP.
378
379 * config/obj-elf.h (obj_sec_set_private_data): New.
380
381 * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed.
382 * config/tc-ia64.h: Likewise.
383 * config/tc-m32r.h: Likewise.
384 * config/tc-m68hc11.h: Likewise.
385 * config/tc-mcore.h: Likewise.
386 * config/tc-mips.h: Likewise.
387 * config/tc-ppc.h: Likewise.
388 * config/tc-sh64.h: Likewise.
389 * config/tc-v850.h: Likewise.
390 * config/tc-xtensa.h: Likewise.
391
392 * config/tc-v850.h (SHF_V850_GPREL): Removed.
393 (SHF_V850_EPREL): Likewise.
394 (SHF_V850_R0REL): Likewise.
395
396 * subsegs.c (subseg_get): Call obj_sec_set_private_data if it
397 is defined.
398
399 2003-07-24 Stephane Carrez <stcarrez@nerim.fr>
400
401 * config/tc-m68hc11.h (DWARF2_ADDR_SIZE): Use 32-bit address for
402 debugging symbols so that we handle page memory correctly.
403
404 2003-07-24 Nick Clifton <nickc@redhat.com>
405
406 * po/fr.po: Updated French translation.
407
408 2003-07-23 Daniel Jacobowitz <drow@mvista.com>
409
410 * config/tc-arm.c (arm_archs): Add iwmmxt.
411
412 2003-07-22 H.J. Lu <hongjiu.lu@intel.com>
413
414 * read.c (do_parse_cons_expression): Mark nbytes unused to
415 silence gcc.
416
417 2003-07-22 Alexandre Oliva <aoliva@redhat.com>
418
419 * config/tc-h8300.c (get_specific): No PCREL8 encoding for bsr/bc
420 or bsr/bs.
421
422 * config/tc-h8300.c (md_assemble): Make sure characters after
423 slash and dot are lower-case.
424
425 2003-07-17 Nick Clifton <nickc@redhat.com>
426
427 * po/es.po: New Spanish translation.
428 * po/tr.po: New Turkish translation.
429 * po/opcodes.pot: Regenerate.
430
431 2003-07-16 Alan Modra <amodra@bigpond.net.au>
432
433 * dwarf2dbg.c (get_frag_fix): Revert 2001-11-15 change.
434 (generic_dwarf2_emit_offset): Don't define function when
435 TC__DWARF2_EMIT_OFFSET is defined.
436
437 2003-07-15 Richard Sandiford <rsandifo@redhat.com>
438
439 * config/tc-mips.c (hilo_interlocks): True for CPU_RM7000.
440 (mips_cpu_info_table): Add rm7000 and rm9000 entries.
441 * doc/c-mips.texi: Document -march=rm9000.
442
443 2003-07-15 Alan Modra <amodra@bigpond.net.au>
444
445 * config/tc-v850.c (md_assemble): When no reloc, create pcrel fixups
446 only for V850_OPERAND_DISP operands.
447
448 2003-07-15 Alan Modra <amodra@bigpond.net.au>
449
450 * frags.c (frag_more): Move segment checks to..
451 (frag_alloc_check): ..here. New function.
452 (frag_append_1_char): Call frag_alloc_check.
453
454 2003-07-14 Nick Clifton <nickc@redhat.com>
455
456 * po/tr.po: Update with latest version.
457 * po/POTFILES.in: Regenerate.
458 * po/gas.pot: Regenerate.
459 * configure: Regenerate.
460
461 2003-07-14 Nick Clifton <nickc@redhat.com>
462
463 * config/tc-ip2k.c: Remove inclusion of <ctype.h>
464 * config/tc-tic4x.c: Replace inclusion of <ctype.h> with
465 "safe-ctype.h" and update use of macros.
466 * Makefile.am: Update dependencies.
467 * Makefile.in: Regenerate.
468
469 2003-07-11 Alan Modra <amodra@bigpond.net.au>
470
471 * po/gas.pot: Regenerate.
472
473 2003-07-10 Jakub Jelinek <jakub@redhat.com>
474
475 * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
476 (TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
477 tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
478 DWARF2_CIE_DATA_ALIGNMENT): Define.
479 (ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
480 prototypes.
481 (ppc_cie_data_alignment): Declare.
482 * config/tc-ppc.c: Include dw2gencfi.h.
483 (ppc_cie_data_alignment): Define.
484 (md_begin): Initialize ppc_cie_data_alignment.
485 (ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
486 functions.
487 * config/tc-s390.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
488 (TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
489 tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
490 DWARF2_CIE_DATA_ALIGNMENT): Define.
491 (s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
492 New prototypes.
493 (s390_cie_data_alignment): Declare.
494 * config/tc-s390.c: Include dw2gencfi.h.
495 (s390_cie_data_alignment): Define.
496 (md_begin): Initialize s390_cie_data_alignment.
497 (s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
498 New functions.
499
500 2003-07-10 Alexandre Oliva <aoliva@redhat.com>
501
502 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
503 * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Don't define to zero.
504 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
505 * configure.in (am33_2.0, mn10300-*-linux*): Added.
506 * configure: Rebuilt.
507 * config/tc-mn10300.h (TARGET_FORMAT) [TE_LINUX]: Define to
508 elf32-am33lin.
509 * config/tc-mn10300.c (md_begin) [TE_LINUX]: Choose AM33/2.0
510 by default.
511
512 2003-07-09 Alexandre Oliva <aoliva@redhat.com>
513
514 2003-02-25 Alexandre Oliva <aoliva@redhat.com>
515 * config/tc-mn10300.c (mn10300_check_fixup): Set GOT_PCREL type
516 for subtracts from GLOBAL_OFFSET_TABLE that could not be
517 simplified.
518 2002-07-18 Alexandre Oliva <aoliva@redhat.com>
519 * config/tc-mn10300.c (mn10300_check_fixup): Accept subtracts that
520 could not be simplified.
521 (tc_gen_reloc): Turn an absolute fx_subsy into part of fx_offset.
522 2001-11-04 Alexandre Oliva <aoliva@redhat.com>
523 * config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't adjust
524 BDF_RELOC_MN10300_GOT32.
525 * config/tc-mn10300.c (mn10300_fix_adjustable): If
526 TC_RELOC_RTSYM_LOC_FIXUP doesn't hold, it's not adjustable.
527 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
528 * config/tc-mn10300.c (mn10300_parse_name): Don't return a
529 symbol if we know its value.
530 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
531 * config/tc-mn10300.h (GLOBAL_OFFSET_TABLE_NAME): Remove
532 duplicate underscore prefix.
533 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
534 * config/tc-mn10300.c (mn10300_parse_name): Store relocation
535 type in X_md, not X_add_number. Zero X_add_number.
536 (mn10300_check_fixup): Extract relocation type from X_md.
537 * config/tc-mn10300.h: Update comment.
538 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
539 * config/tc-mn10300.h (O_GOTOFF, O_PLT, O_GOT): Replace with...
540 (O_PIC_reloc): this.
541 * config/tc-mn10300.c (mn10300_PIC_related_p): Use it.
542 (mn10300_check_fixup): Likewise.
543 (mn10300_parse_name): Set X_add_number to relocation type.
544 * config/tc-mn10300.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
545 TC_RELOC_RTSYM_LOC_FIXUP, md_parse_name, TC_CONS_FIX_NEW,
546 O_GOTOFF, O_PLT, O_GOT): Define.
547 * config/tc-mn10300.c (mn10300_PIC_related_p): New fn.
548 (mn10300_check_fixup): New fn.
549 (md_assemble): Call it. Check for PIC-related relocs.
550 (mn10300_cons_fix_new): Likewise. New fn.
551 (mn10300_end_of_match): New fn.
552 (mn10300_md_parse_name_cont): New fn.
553
554 2003-07-09 Alexandre Oliva <aoliva@redhat.com>
555
556 2000-05-25 Alexandre Oliva <aoliva@cygnus.com>
557 * config/tc-mn10300.c (mn10300_insert_operand): Negate negative
558 accumulator's shift.
559 2000-05-08 Alexandre Oliva <aoliva@cygnus.com>
560 * config/tc-mn10300.c (md_relax_table, md_convert_frag,
561 md_assemble, md_estimate_size_before_relax): Handle fbCC.
562 2000-04-20 Alexandre Oliva <aoliva@cygnus.com>
563 * config/tc-mn10300.c (HAVE_AM33): Redefine in terms of
564 HAVE_AM33_2.
565 2000-04-03 Alexandre Oliva <aoliva@cygnus.com>
566 * config/tc-mn10300.c (md_pseudo_table): Use AM33_2 constant.
567 (HAVE_AM33): Match AM33_2 too.
568 (HAVE_AM33_2): New macro.
569 (md_assemble): Use it. Match 2.0 registers only if HAVE_AM33_2.
570 2000-04-01 Alexandre Oliva <aoliva@cygnus.com>
571 * config/tc-mn10300.c (md_pseudo_table): Added `am33_2'.
572 (float_registers, double_registers): New variables.
573 (float_register_name, double_register_name): New functions.
574 (md_assemble): Recognize FP registers. Implement FMT_D3.
575 (mn10300_insert_operand): Support FP registers.
576
577 2003-07-08 Chris Demetriou <cgd@broadcom.com>
578
579 * config/tc-mips.c (mips_validate_fix): Do not warn about branch
580 target being a global symbol if not compiling SVR4 PIC code.
581
582 2003-07-07 Nick Clifton <nickc@redhat.com>
583
584 * doc/c-m32r.texi (M32R-Directives): New node. Document the
585 .high, .shigh and .low directives.
586
587 2003-07-07 Richard Sandiford <rsandifo@redhat.com>
588
589 * config/tc-h8300.c (h8300sxnmode): Add prototype.
590 (DSYMMODE): Remove.
591 (parse_exp): Replace expressionS argument with a h8_op. Parse the
592 operand size as well.
593 (skip_colonthing): Remove unused expression argument. Tighten checks
594 for 2-digit sizes.
595 (colonmod24): Remove.
596 (get_mova_operands): Combine calls to parse_exp and skip_colonthing.
597 (get_operand): Likewise. Use the standard code to read the size of
598 pc-relative operands.
599 (fix_operand_size): Include the size-guessing logic that used to be
600 in colonmod24 and get_operand. Don't apply dd:2 optimizations to
601 offsets with a symbolic component.
602
603 2003-07-04 Nick Clifton <nickc@redhat.com>
604
605 * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Use ARRAY_SIZE
606 macro to compute size of selected register name array.
607
608 2003-07-01 Martin Schwidefsky <schwidefsky@de.ibm.com>
609
610 * config/tc-s390.c (md_parse_option): Add cpu type z990.
611 (md_begin): Add minimal cpu type logic for instructions with different
612 binary format depending on the cpu.
613 (md_assemble): Remove check for minimal cpu.
614 (s390_insert_operand): Add support for long displacements.
615 (md_gather_operands): Likewise.
616 (tc_s390_fix_adjustable): Likewise.
617 (tc_s390_force_relocation): Likewise.
618 (md_apply_fix3): Likewise.
619
620 2003-06-30 Chris Demetriou <cgd@broadcom.com>
621
622 * config/tc-mips.c (s_mipsset): Implement -march= handling
623 differently.
624
625 2003-06-30 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
626
627 * config/tc-mips.c: Convert to ISO C90 prototypes. Remove unnecessary
628 prototypes and casts. Replace PTR with void *. Reformat.
629 * config/tc-mips.h: Likewise.
630
631 2003-06-30 Alan Modra <amodra@bigpond.net.au>
632
633 * config/tc-ia64.c (note_register_values): Warning fix.
634 * config/tc-mips.c (append_insn): Likewise.
635
636 2003-06-29 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
637
638 * config/tc-mips.c (mips_set_options,mips_opts): Support for
639 .set arch=FOO.
640 (file_mips_arch): Rename mips_arch.
641 (mips_arch_info,mips_tune_info): Remove.
642 (hilo_interlocks,gpr_interlocks,cop_interlocks): Use mips_opts.arch.
643 (mips_cpu_info_from_arch): New function.
644 (md_begin): Use file_mips_arch.
645 (macro_build,macro,mips_ip): Use mips_opts.arch.
646 (mips_set_architecture): Init file_mips_arch and mips_opts.arch.
647 (mips_after_parse_args): Remove mips_arch_info and mips_tune_info.
648 Use file_mips_arch.
649 (s_mipsset): Support for .set arch=FOO.
650 (mips_cpu_info_table): Fix typo.
651
652 2003-06-26 H.J. Lu <hongjiu.lu@intel.com>
653
654 * config/tc-i386.c (md_assemble): Declare "exp" before "if".
655
656 2003-06-25 Richard Sandiford <rsandifo@redhat.com>
657
658 * config/tc-h8300.c (get_specific): Allow ':8' to be used for
659 unsigned 8-bit operands.
660
661 2003-06-24 Nick Clifton <nickc@redhat.com>
662
663 * read.c (s_comm): Change error message to assume an unsigned size
664 has been passed to .comm.
665 * config/tc-sparc.c (s_common): Likewise.
666 * write.c (write_contents): Replace 'unsigned long' with
667 'addressT' and 'long' with offsetT in order to allow computations
668 with very large values to work for 64-bit addressed targets.
669 (relax_and_size_all_segments): Likewise.
670 (relax_frag): Likewise.
671 (relax_segment): Likewise.
672
673 2003-06-23 Mark Mitchell <mark@codesourcery.com>
674
675 * config/tc-ppc.c (ppc_cleanup): Use bytes to count APUinfo slots.
676
677 2003-06-23 H.J. Lu <hongjiu.lu@intel.com>
678
679 * gas/config/tc-i386.c (md_assemble): Support Intel Precott New
680 Instructions.
681
682 * gas/config/tc-i386.h (CpuPNI): New.
683 (CpuUnknownFlags): Add CpuPNI.
684
685 2003-06-23 <davidm@hpl.hp.com>
686
687 * config/tc-ia64.c (pseudo_func): Add ABI constants for linux,
688 freebsd, openvms, and nsk (non-stop kernel).
689
690 2003-06-22 Jason Thorpe <thorpej@wasabisystems.com>
691
692 * config/tc-ns32k.c (md_begin): Initialize inst_hash_table after
693 all locals have been declared.
694
695 2003-06-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
696
697 * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove
698 special handling for n32 ABI.
699 (macro): Likewise.
700
701 2003-06-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
702
703 * config/tc-mips.c (s_cpsetup,s_cprestore,s_cpreturn): Revert
704 2003-06-11 change.
705
706 2003-06-19 Christian Groessler <chris@groessler.org>
707
708 * config/tc-z8k.c (parse_reg): Invalid registers generate an error
709 now, not only a warning. Add some more checks to detect invalid
710 registers.
711 (get_operand): For CLASS_IR remember register size in mode struct.
712 (get_specific): Handle new CLASS_IRO type. Add register size
713 checks for CLASS_IR and CLASS_IRO.
714 (md_apply_fix3): Fix undefined usage of buf.
715
716 2003-06-19 Alan Modra <amodra@bigpond.net.au>
717
718 * config/tc-ppc.c (ppc_csect): Pass alignment to ppc_change_csect.
719 (ppc_change_csect): Add align param. Align frag at start of csect.
720 (ppc_section, ppc_named_section): Adjust ppc_change_csect calls.
721 (ppc_frob_section): Align vma.
722
723 2003-06-18 Jakub Jelinek <jakub@redhat.com>
724
725 * dw2gencfi.c (EH_FRAME_ALIGNMENT): Define if not defined.
726 (output_cie): Don't pad.
727 (output_fde): Add align argument. Pad to align if not 0.
728 (cfi_finish): Set .eh_frame alignment to EH_FRAME_ALIGNMENT.
729 Pad just last FDE to EH_FRAME_ALIGNMENT.
730
731 2003-06-18 Martin Schwidefsky <schwidefsky@de.ibm.com>
732
733 * config/tc-s390.c (init_default_arch): Make current_mode_mask
734 dependent on s390_arch_size and current_cpu dependent on
735 current_mode_mask.
736
737 2003-06-18 Svein E. Seldal <Svein.Seldal@solidas.com>
738
739 * configure.in: Add c4x as an architecture variant to tic4x.
740 * configure: Regenerate.
741 * Makefile.in: Regenerate.
742 * doc/Makefile.in: Regenerate.
743
744 2003-06-18 Alan Modra <amodra@bigpond.net.au>
745
746 * config/tc-ppc.c (ppc_elf_suffix): Don't remove symbols other than
747 ".TOC." from PPC64_TOC relocs.
748
749 2003-06-17 Alan Modra <amodra@bigpond.net.au>
750
751 * config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs.
752
753 2003-06-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
754
755 * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN,
756 ADDRESS_LOAD_INSN,ADDRESS_STORE_INSN): New macros.
757 (macro_build_ldst_constoffset,load_address,macro,s_cpsetup,
758 s_cprestore,s_cpadd): Use them.
759
760 2003-06-16 Hans-Peter Nilsson <hp@axis.com>
761
762 * configure.in: Add specific case for cris-*-linux-gnu* with
763 em=linux.
764 * configure: Regenerate.
765 * config/tc-cris.c (DEFAULT_CRIS_AXIS_LINUX_GNU): New macro, TRUE
766 if TE_LINUX defined, else FALSE.
767 (bfd_boolean demand_register_prefix): Set default from
768 DEFAULT_CRIS_AXIS_LINUX_GNU.
769 (symbols_have_leading_underscore): Similar.
770 * config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1.
771
772 2003-06-13 Richard Earnshaw <rearnsha@arm.com>
773
774 * tc-arm.c (FPU_DEFAULT, case TE_LINUX): Default to FPU_ARCH_FPA.
775 (FPU_DEFAULT, case TE_NetBSD): Default to FPU_ARCH_VFP for ELF,
776 FPU_ARCH_FPA for AOUT.
777 (md_begin): Don't try to guess the floating point architecture from
778 the CPU if the OS ABI (Linux, NetBSD) mandates a particular form.
779
780 2003-06-13 Robert Millan <zeratul2@wanadoo.es>
781
782 * configure.in: Add i386-netbsd-gnu target.
783 * configure: Regenerate.
784
785 2003-06-12 Tom Tromey <tromey@redhat.com>
786
787 * doc/as.texinfo (Comm): Added @node. Moved before CFI
788 directives node.
789
790 2003-06-12 Richard Sandiford <rsandifo@redhat.com>
791
792 * config/tc-mips.c (append_insn): In a compound relocation, take the
793 field width from the final (outermost) operator.
794
795 2003-06-11 Richard Henderson <rth@redhat.com>
796
797 * dw2gencfi.c (struct cfi_escape_data): New.
798 (cfi_add_CFA_nop): Remove.
799 (CFI_escape, dot_cfi_escape): New.
800 (dot_cfi): Remove nop.
801 (cfi_pseudo_table): Remove nop; add escape.
802 (output_cfi_insn): Likewise.
803 (select_cie_for_fde): Stop on escape.
804 * dw2gencfi.h (cfi_add_CFA_nop): Remove.
805 * read.c, read.h (do_parse_cons_expression): New.
806 * doc/as.texinfo (.cfi_escape): New.
807
808 2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
809
810 * config/tc-mips.c (s_cpsetup): Use mips_frame_reg instead of SP.
811 (s_cprestore): Likewise.
812 (s_cpreturn): Likewise.
813
814 2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
815
816 * config/tc-mips.c (tc_gen_reloc): Initialize retval amd reloc
817 with zeros.
818
819 2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
820
821 * config/tc-mips.c (md_pcrel_from): Return actual pcrel address.
822 (md_apply_fix3): Ignore non-special relocations. Remove superfluous
823 exceptions from size assert. Remove most of the addend fixup
824 specialcasing. Remove value, use valP directly. simplify fx_addnumber
825 handling. Remove zero addend specialcases.
826 (tc_gen_reloc): Use appropriate value for reloc2 addend. Remove
827 the addend fixup specialcase.
828 * config/tc-mips.h (MD_APPLY_SYM_VALUE): Define as 0.
829
830 2003-06-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
831
832 * write.c (write_relocs): Use xcalloc. Fix relocs initialization
833 in the RELOC_EXPANSION_POSSIBLE case.
834
835 2003-06-11 Alan Modra <amodra@bigpond.net.au>
836
837 * config/tc-i960.c (line_comment_chars): Add '#'.
838 * config/tc-mn10200.c (tc_gen_reloc): Don't ignore fx_subsy.
839
840 2003-06-11 H.J. Lu <hongjiu.lu@intel.com>
841
842 * po/Make-in (DESTDIR): New.
843 (install-data-yes): Support $(DESTDIR).
844 (uninstall): Likewise.
845
846 2003-06-11 Alan Modra <amodra@bigpond.net.au>
847
848 * Makefile.am: Run "make dep-am".
849 * Makefile.in: Regenerate.
850 * po/POTFILES.in: Regenerate.
851
852 2003-06-10 Doug Evans <dje@sebabeach.org>
853
854 * cgen.c (gas_cgen_finish_insn): CGEN_INSN_RELAX renamed to
855 CGEN_INSN_RELAXED.
856 * config/tc-fr30.c (md_estimate_size_before_relax): Ditto.
857 * config/tc-m32r.c (md_estimate_size_before_relax): Ditto.
858 * config/tc-openrisc.c (md_estimate_size_before_relax): Ditto.
859
860 2003-06-10 Alan Modra <amodra@bigpond.net.au>
861 Gary Hade <garyhade@us.ibm.com>
862
863 * config/tc-ppc.c (md_assemble): Handle PPC_OPERAND_DQ.
864 (md_apply_fix3): Special case lq insn.
865
866 2003-06-10 Richard Sandiford <rsandifo@redhat.com>
867
868 * config/tc-h8300.c (get_rtsl_operands): Accept unbracketed register
869 lists. Allow single-register ranges.
870
871 2003-06-10 Richard Sandiford <rsandifo@redhat.com>
872
873 * config/tc-h8300.c (h8300sxnmode): New.
874 (md_pseudo_table): Add .h8300sxn entry.
875
876 2003-06-09 H.J. Lu <hongjiu.lu@intel.com>
877
878 * NEWS: Updated for the new -n option for the i386 assembler.
879
880 * config/tc-i386.c (optimize_align_code): New.
881 (md_shortopts): Add 'n'.
882 (md_parse_option): Handle 'n'.
883 (md_show_usage): Add '-n'.
884
885 * config/tc-i386.h (optimize_align_code): Declared.
886 (md_do_align): Optimize code alignment only if optimize_align_code
887 is not 0.
888
889 * doc/as.texinfo: Add the new -n option.
890
891 * doc/c-i386.texi: Document the new -n option.
892
893 2003-06-07 Richard Henderson <rth@redhat.com>
894
895 * doc/as.texinfo: Document .cfi_rel_offset.
896
897 * dw2gencfi.c (struct cfa_save_data, cfa_save_stack): New.
898 (cfi_add_CFA_offset): Detect invalid offsets.
899 (cfi_add_CFA_remember_state): Save cur_cfa_offset.
900 (cfi_add_CFA_restore_state): Restore it.
901 (CFI_rel_offset): New.
902 (cfi_pseudo_table): Add it.
903 (dot_cfi): Handle it.
904
905 2003-06-07 H.J. Lu <hongjiu.lu@intel.com>
906
907 * app.c (do_scrub_chars): Add states 14 and 15 to handle
908 predicate for ia64.
909
910 2003-06-05 Michael Snyder <msnyder@redhat.com>
911
912 * config/tc-h8sx.c (get_specific): Distinguish h8h from h8s ops.
913 (build_bytes): Ditto.
914
915 2003-06-05 Richard Sandiford <rsandifo@redhat.com>
916
917 * config/tc-h8sx.c (DMODE): Remove.
918 (colonmod24): Don't choose a default if the operand is a 16-bit
919 constant integer.
920 (fix_operand_size): New function.
921 (md_assemble): Use it to choose between @(d:2, ERn) and @(d:16,ERn).
922 Adjust @(d:2,ERn) operands before choosing the specific opcodes.
923
924 2003-06-05 Michal Ludvig <mludvig@suse.cz>
925
926 * dw2gencfi.c (cfi_add_CFA_insn, cfi_add_CFA_insn_reg)
927 (cfi_add_CFA_insn_reg_reg, cfi_add_CFA_insn_reg_offset): New.
928 (cfi_add_CFA_offset, cfi_add_CFA_def_cfa)
929 (cfi_add_CFA_register, cfi_add_CFA_def_cfa_register)
930 (cfi_add_CFA_def_cfa_offset): Use cfi_add_CFA_insn_*().
931 (cfi_add_CFA_restore, cfi_add_CFA_undefined)
932 (cfi_add_CFA_same_value, cfi_add_CFA_remember_state)
933 (cfi_add_CFA_restore_state, cfi_add_CFA_nop): New.
934 (cfi_pseudo_table): New directives .cfi_return_column,
935 .cfi_restore, .cfi_undefined, .cfi_same_value,
936 .cfi_remember_state, .cfi_restore_state, .cfi_nop.
937 (dot_cfi, output_cfi_insn): Handle new directives.
938 * dw2gencfi.h (cfi_add_CFA_restore, cfi_add_CFA_undefined)
939 (cfi_add_CFA_same_value, cfi_add_CFA_remember_state)
940 (cfi_add_CFA_restore_state, cfi_add_CFA_nop): New prototypes.
941
942 2003-06-04 Richard Henderson <rth@redhat.com>
943
944 * dw2gencfi.c (output_cfi_insn): Fix typo for negative offsets.
945
946 * dw2gencfi.c (cfi_finish): Set .eh_frame read-only.
947
948 2003-06-04 Richard Henderson <rth@redhat.com>
949
950 * config/tc-alpha.c (s_alpha_usepv): New.
951 (md_pseudo_table): Add it.
952 (alpha_cfi_frame_initial_instructions): New.
953 * config/tc-alpha.h (TARGET_USE_CFIPOP): New.
954 (tc_cfi_frame_initial_instructions): New.
955 * doc/c-alpha.texi: Document .usepv.
956
957 2003-06-04 Jakub Jelinek <jakub@redhat.com>
958
959 * as.c (show_usage): Document --execstack and --noexecstack.
960 (parse_args): Add --execstack and --noexecstack.
961 (main): Create .note.GNU-stack section if --execstack or
962 --noexecstack was given on comand line, set its SHF_EXECINSTR bit.
963 * as.h (flag_execstack, flag_noexecstack): New.
964
965 2003-06-03 Chris Demetriou <cgd@broadcom.com>
966
967 * config/tc-mips.c: (OPTION_ARCH_BASE, OPTION_ASE_BASE)
968 (OPTION_COMPAT_ARCH_BASE, OPTION_FIX_BASE)
969 (OPTION_MISC_BASE): New defines.
970 (OPTION_BREAK, OPTION_CONSTRUCT_FLOATS, OPTION_EB, OPTION_EL)
971 (OPTION_ELF_BASE, OPTION_FIX_VR4122, OPTION_FP32, OPTION_FP64)
972 (OPTION_GP32, OPTION_GP64, OPTION_M3900, OPTION_M4010, OPTION_M4100)
973 (OPTION_M4650, OPTION_M7000_HILO_FIX, OPTION_MARCH, OPTION_MDMX)
974 (OPTION_MEMBEDDED_PIC, OPTION_MIPS1, OPTION_MIPS16, OPTION_MIPS2)
975 (OPTION_MIPS3, OPTION_MIPS32, OPTION_MIPS32R2, OPTION_MIPS3D)
976 (OPTION_MIPS4, OPTION_MIPS5, OPTION_MIPS64)
977 (OPTION_MNO_7000_HILO_FIX, OPTION_MTUNE, OPTION_NO_CONSTRUCT_FLOATS)
978 (OPTION_NO_FIX_VR4122, OPTION_NO_M3900, OPTION_NO_M4010)
979 (OPTION_NO_M4100, OPTION_NO_M4650, OPTION_NO_MDMX, OPTION_NO_MIPS16)
980 (OPTION_NO_MIPS3D, OPTION_NO_RELAX_BRANCH, OPTION_RELAX_BRANCH)
981 (OPTION_TRAP): Redefine in terms of new defines.
982 (md_longopts): Reorder entries.
983
984 2003-05-14 Michael Snyder <msnyder@redhat.com>
985 From Bernd Schmidt <bernds@redhat.com>
986 and Michael Snyder <msnyder@redhat.com>
987 and Alexandre Oliva <aoliva@redhat.com>
988 * config/tc-h8300.c: Add insns and addressing modes for h8300sx.
989 * config/tc-h8300.h: Ditto.
990
991 2003-06-03 Nick Clifton <nickc@redhat.com>
992
993 * tc-v850.c (tc-gen_reloc): Translate BFD_RELOC_32 into
994 BFD_RELOC_32_PCREL if the reloc is pc-relative. Do this
995 before calling bfd_reloc_type_lookup.
996
997 2003-06-02 Alan Modra <amodra@bigpond.net.au>
998
999 * read.c (emit_expr): Set dot_value.
1000 * dw2gencfi.c (output_fde): Remove pcrel reloc hack.
1001
1002 2003-06-02 Alan Modra <amodra@bigpond.net.au>
1003
1004 * macro.c (sub_actual): Don't lose string if it turns out that
1005 &string wasn't an arg.
1006
1007 2003-05-31 Richard Henderson <rth@redhat.com>
1008
1009 * dw2gencfi.c (output_fde): Use fix_new to emit pc-relative reloc.
1010 (cfi_finish): Set flag_traditional_format around .eh_frame data.
1011
1012 2003-05-29 Richard Henderson <rth@redhat.com>
1013
1014 * config/tc-alpha.c (alpha_cur_ent_sym): Remove.
1015 (all_frame_data, plast_frame_data, cur_frame_data): New.
1016 (s_alpha_ent): Record data for dwarf2 cfi.
1017 (s_alpha_end, s_alpha_mask, s_alpha_frame, s_alpha_prologue): Likewise.
1018 (alpha_elf_md_end): Emit dwarf2 cfi for ecoff unwind directives.
1019 * config/tc-alpha.h (md_end): New.
1020 (DWARF2_DEFAULT_RETURN_COLUMN): New.
1021 (DWARF2_CIE_DATA_ALIGNMENT): New.
1022
1023 2003-05-29 Nick Clifton <nickc@redhat.com>
1024
1025 * configure.in: Add i386-*-freebsd* entry.
1026 * configure: Regenerate.
1027
1028 2003-05-29 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1029
1030 * config/tc-m32r.c: Amend comment to refer to Renesas
1031
1032 2003-05-27 Richard Henderson <rth@redhat.com>
1033
1034 * expr.c (make_expr_symbol): Fold FAKE_LABEL_NAME use into the
1035 symbol_create call.
1036 (current_location): Use symbol_temp_new_now.
1037 * stabs.c (s_stab_generic): Use symbol_temp_new.
1038 * symbols.c (temp_label_name): Remove.
1039 (symbol_temp_new, symbol_temp_make): Use FAKE_LABEL_NAME.
1040
1041 2003-05-27 Richard Henderson <rth@redhat.com>
1042
1043 * dw2gencfi.c, dw2gencfi.h: Rewrite from scratch.
1044 * as.c (main): Always call cfi_finish.
1045 * config/tc-i386.c (x86_dwarf2_return_column): New.
1046 (x86_cie_data_alignment): New.
1047 (md_begin): Set them.
1048 (tc_x86_cfi_init): Remove.
1049 (tc_x86_regname_to_dw2regnum): Fix 32-bit register numbers;
1050 return int, not unsigned long; don't as_bad here.
1051 (tc_x86_frame_initial_instructions): Streamline; use
1052 updated api.
1053 * config/tc-i386.h (tc_cfi_init): Remove.
1054 (DWARF2_DEFAULT_RETURN_COLUMN): New.
1055 (DWARF2_CIE_DATA_ALIGNMENT): New.
1056
1057 2003-05-27 Richard Henderson <rth@redhat.com>
1058
1059 * symbols.c (temp_label_name): New.
1060 (symbol_temp_new, symbol_temp_new_now, symbol_temp_make): New.
1061 (symbol_set_value_now): New.
1062 * symbols.h: Prototype them.
1063 * dwarf2dbg.c: Use them.
1064 (fake_label_name, symbol_new_now, set_symbol_value_now): Remove.
1065
1066 2003-05-23 Jason Eckhardt <jle@rice.edu>
1067
1068 * config/tc-i860.c (target_xp): Declare variable.
1069 (OPTION_XP): Declare macro.
1070 (md_longopts): Add option -mxp.
1071 (md_parse_option): Set target_xp.
1072 (md_show_usage): Add -mxp usage.
1073 (i860_process_insn): Recognize XP registers bear, ccr, p0-p3.
1074 (md_assemble): Don't try expansions if XP_ONLY is set.
1075 * doc/c-i860.texi: Document -mxp option and i860XP support.
1076
1077 2003-05-23 Eric Christopher <echristo@redhat.com>
1078
1079 * config/tc-mips.c (macro_build_jalr): Warning patrol.
1080
1081 2003-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1082
1083 * config/tc-mips.c (append_insn): Use actual relocation size for new
1084 fixp's. Don't relax overflow checking for partial_inplace relocations.
1085 Use the actual relocation type in combined relocs, not just the type
1086 of the first one.
1087 (macro_build_jalr): Use actual relocation size for new fix.
1088 (s_cpsetup, s_gpdword): Likewise.
1089
1090 2003-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1091
1092 * config/tc-mips.c (macro): Don't use uninitialized tempreg.
1093
1094 2003-05-22 Nick Clifton <nickc@redhat.com>
1095
1096 * config/tc-xstormy16.c (md_pcrel_from_section): Do not produce
1097 section relative offsets for relocs that will not be based on the
1098 section symbol.
1099 (xstormy16_md_apply_fix3): Remove previous patch to this
1100 function.
1101
1102 2003-05-07 Eric Christopher <echristo@redhat.com>
1103
1104 * config/tc-mips.c (mips_abicalls): New variable.
1105 (md_parse_option): Use.
1106 (s_option): Ditto.
1107 (s_abicalls): Ditto.
1108 (mips_elf_final_processing): Set EF_MIPS_PIC and
1109 EF_MIPS_CPIC dependent on above.
1110
1111 2003-05-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1112
1113 * tc-hppa.c (hppa_symbol_chars): Remove `,' and `!'.
1114
1115 2003-05-21 Nick Clifton <nickc@redhat.com>
1116
1117 * config/obj-elf.c: Include dwarf2dbg.h.
1118 (elf_pseudo_tab): Add .file and .loc.
1119 * config/tc-arc.c (md_pseudo_table): Remove .file and .loc.
1120 * config/tc-arm.c: Likewise.
1121 * config/tc-h8300.c: Likewise.
1122 * config/tc-hppa.c: Likewise.
1123 * config/tc-ia64.c: Likewise.
1124 * config/tc-m68hc11.c: Likewise.
1125 * config/tc-m68k.c: Likewise.
1126 * config/tc-mmix.c: Likewise.
1127 * config/tc-mn10300.c: Likewise.
1128 * config/tc-ppc.c: Likewise.
1129 * config/tc-sh.c: Likewise.
1130 * config/tc-sparc.c: Likewise.
1131 * config/tc-v850.c: Likewise.
1132 * config/tc-frv.c: Likewise, and remove redundant inclusion of
1133 dwarf2dbg.h.
1134 * config/tc-ip2k.c: Likewise.
1135 * config/tc-iq2000.c: Likewise.
1136 * config/tc-xstormy16.c: Likewise.
1137 * config/tc-xtensa.c: Likewise.
1138 * Makefile.am: Regenerate dependencies.
1139 * Makefile.in: Regenerate.
1140 * aclocal.m4: Regenerate.
1141 * config.in: Regenerate.
1142 * configure: Regenerate.
1143 * po/POTFILES.in: Regenerate.
1144 * po/gas.pot: Regenerate.
1145
1146 2003-05-21 Nick Clifton <nickc@redhat.com>
1147
1148 * dw2gencfi.c (cfi_get_label): Use symbol_make for non
1149 BFD_ASSEMBLER targets.
1150 (cfi_startproc): Change type of saved_seg and cfi_seg to segT.
1151 (dot_cfi_endproc): Only call bfd_set_section_flags for targets
1152 defining BFD_ASSEMBLER.
1153
1154 2003-05-20 Michal Ludvig <mludvig@suse.cz>
1155
1156 * as.c (main): Remove tc_cfi_init().
1157 * dw2gencfi.c (cfi_parse_arg): Allow regnames beginning
1158 with '%'.
1159 (cfi_pseudo_table): Add "cfi_register" entry.
1160 (cfi_make_insn): Handle CFA_register.
1161 (cfi_output_insn): Ditto.
1162 (dot_cfi): Ditto.
1163 (cfi_get_label): Add 'simple' modifier to .cfi_startproc.
1164 (dot_cfi_endproc): Reuse already emitted CIEs.
1165 * testsuite/gas/cfi/cfi-i386.d: New pattern.
1166 * testsuite/gas/cfi/cfi-x86-64.d: Ditto.
1167
1168 2003-05-20 Nick Clifton <nickc@redhat.com>
1169
1170 * config/tc-xstormy16.c: Include dwarf2dbg.h.
1171 (md_pseudo_table): Add entries for .loc and .line.
1172
1173 2003-05-20 Alan Modra <amodra@bigpond.net.au>
1174
1175 * dw2gencfi.c (cfi_parse_arg): Only use tc_regname_to_dw2regnum if
1176 defined.
1177 (dot_cfi_endproc): Avoid C99 construct.
1178
1179 2003-05-20 Michal Ludvig <mludvig@suse.cz>
1180
1181 * dw2gencfi.c, dw2gencfi.h: New files.
1182 * config/tc-i386.c (tc_x86_cfi_init): New function.
1183 * config/tc-i386.h (TARGET_USE_CFIPOP, tc_cfi_init): New defines.
1184 * as.c (parse_args): Set verbose flag on --verbose.
1185 (main): Call tc_cfi_init()/cfi_finish().
1186 * as.h (verbose): New external variable.
1187 * read.c (pobegin): Insert CFI pops to the list.
1188 * symbols.c (local_symbol_make): Make symbol external.
1189 * symbols.h (local_symbol_make): New prototype.
1190 * Makefile.am: Add dw2gencfi.[ch] files. Run "make dep-am".
1191 * Makefile.in: Regenerate.
1192 * doc/as.texinfo: Added node "CFI directives" with description of
1193 all implemented .cfi_* directives.
1194 * doc/Makefile.in: Regenerate.
1195 * po/POTFILES.in: Regenerate.
1196
1197 2003-05-19 Svein E. Seldal <Svein.Seldal@solidas.com>
1198
1199 * config/tc-tic4x.c (md_assemble): Added support for one-line parallel
1200 insns.
1201 * config/tc-tic4x.h: Added DOUBLEBAR_PARALLEL definition
1202
1203 2003-05-18 Jason Eckhardt <jle@rice.edu>
1204
1205 * config/tc-i860.c (i860_process_insn): Initialize fc after
1206 each opcode mismatch.
1207
1208 2003-05-16 Kelley Cook <kelleycook@wideopenwest.com>
1209
1210 * configure.in: Accept i[3-7]86 variants.
1211 * configure: Regenerate.
1212
1213 2003-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1214
1215 * config/tc-mips.h: Fix comment formatting.
1216
1217 2003-05-13 Hans-Peter Nilsson <hp@axis.com>
1218
1219 * read.c (old_buffer, old_input, old_limit): Remove variables.
1220 (read_a_source_file): Delete label contin.
1221 <handling #APP/#NO_APP>: Use an "sb" to push #APP expansion into
1222 input as with macros, instead of in separate old_* variables.
1223 Zero-terminate string being scrubbed.
1224
1225 2003-05-12 Nick Clifton <nickc@redhat.com>
1226
1227 * config/tc-xstormy16.c (skipping_fptr): New local variable.
1228 (md_assemble): Reset skipping_fptr.
1229 (md_operand): If @fptr() is followed by a minus sign, set
1230 skipping_fptr and ignore the fptr. If skipping_fptr is set and an
1231 @fptr is detected, ignore it and reset skipping_fptr.
1232
1233 2003-05-11 Jason Eckhardt <jle@rice.edu>
1234
1235 * config/tc-i860.c (MAX_FIXUPS): Define.
1236 (struct i860_fi fi[]): New struct.
1237 (struct i860_it the_insn): Add above as member and move fields
1238 exp, reloc, pcrel and fup into i860_fi.
1239 (md_assemble): Replace all instances of exp, reloc, pcrel
1240 and fup with fi[].exp, fi[].reloc, fi[].pcrel, fi[].fup.
1241 Add a loop to possibly emit multiple fix-ups for each insn.
1242 (i860_process_insn): Likewise.
1243 (i860_get_expression): Likewise.
1244 (md_apply_fix3): Use a bitwise check for OP_IMM_U5, not equality.
1245
1246 2003-05-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
1247
1248 * config/tc-s390.c (s390_target_format): Always call init_default_arch.
1249
1250 2003-05-07 H.J. Lu <hongjiu.lu@intel.com>
1251
1252 * config/tc-ia64.c (alias_hash): New.
1253 (alias_name_hash): New.
1254 (secalias_hash): New.
1255 (secalias_name_hash): New.
1256 (md_pseudo_table): Add "secalias".
1257 (md_begin): Initialize alias_hash, alias_name_hash,
1258 secalias_hash and secalias_name_hash.
1259 (struct alias): New.
1260 (dot_alias): Implement .alias and .secalias directives.
1261 (do_alias): New.
1262 (ia64_adjust_symtab): New.
1263 (do_secalias): New.
1264 (ia64_frob_file): New.
1265
1266 * config/tc-ia64.h (ia64_adjust_symtab): New.
1267 (tc_adjust_symtab): Defined.
1268 (ia64_frob_file): New.
1269 (tc_frob_file): Defined.
1270
1271 2003-05-07 Dmitry Diky <diwil@mail.ru>
1272
1273 * tc-msp430.c: Add missing lines to known cpus list.
1274
1275 2003-05-06 Alexandre Oliva <aoliva@redhat.com>
1276
1277 * configure.in (MIPS_DEFAULT_ABI): AC_DEFINE.
1278 * config/tc-mips.c (mips_after_parse_args): Set mips_abi to it.
1279 * config.in, configure: Rebuilt.
1280
1281 2003-05-05 H.J. Lu <hjl@gnu.org>
1282
1283 * config/tc-mips.c (tc_gen_reloc): Add addend just once if
1284 howto->partial_inplace is false.
1285
1286 2003-05-05 Daniel Jacobowitz <drow@mvista.com>
1287
1288 * config/tc-mips.c (mips_need_elf_addend_fixup): Remove
1289 symbol_used_in_reloc_p check.
1290 (md_apply_fix3): Remove check for howto->pcrel_offset.
1291
1292 2003-05-03 H.J. Lu <hjl@gnu.org>
1293
1294 * config/obj-elf.c (obj_elf_parse_section_letters): Make it a
1295 fatal error for unknown section attribute.
1296
1297 * config/tc-alpha.c (alpha_elf_section_letter): Return -1 for
1298 unknown section attribute.
1299 * config/tc-ia64.c (ia64_elf_section_letter): Likewise.
1300 * config/tc-ppc.c (ppc_section_letter): Likewise.
1301
1302 * config/tc-ia64.c (ia64_elf_section_letter): Handle 'o'.
1303 (ia64_elf_section_type): Accept "unwind".
1304
1305 2003-05-02 H.J. Lu <hjl@gnu.org>
1306
1307 * read.h (demand_copy_string): New.
1308
1309 * config/tc-alpha.c (demand_copy_string): Removed.
1310
1311 2003-05-02 Michael Snyder <msnyder@redhat.com>
1312
1313 * write.h (FAKE_LABEL_NAME): Allow override
1314 (for targets that like eg. a leading dot in a local label).
1315
1316 2003-05-02 Nick Clifton <nickc@redhat.com>
1317
1318 * config/tc-xstormy16.c (xstormy16_md_apply_fix3): Do not bias the
1319 addend with the symbol's value for pc-relative relocations against
1320 a defined symbol - this will be done automatically.
1321
1322 2003-05-01 H.J. Lu <hjl@gnu.org>
1323
1324 * config/obj-elf.c (obj_elf_type): Accept "notype" and
1325 "STT_NOTYPE".
1326
1327 2003-05-01 H.J. Lu <hjl@gnu.org>
1328
1329 * config/tc-ia64.h (tc_canonicalize_section_name): New.
1330
1331 * config/obj-elf.c (obj_elf_section_name): Call
1332 tc_canonicalize_section_name if it is defined.
1333
1334 2003-05-01 H.J. Lu <hjl@gnu.org>
1335
1336 * config/tc-ia64.c (ia64_check_label): New.
1337 * config/tc-ia64.h (tc_check_label): New.
1338
1339 * read.c (read_a_source_file): Call tc_check_label after
1340 creating a user-defined label if defined.
1341
1342 2003-05-02 Alan Modra <amodra@bigpond.net.au>
1343
1344 * config/tc-ppc.c (md_show_usage): Mention -a32, -a64, -l, -le, -b,
1345 -be and split strings to below 509 bytes in length.
1346
1347 2003-05-01 Christian Groessler <chris@groessler.org>
1348
1349 * expr.h: Fix comments in operatorT typedef.
1350 * config/tc-z8k.c: Add 2003 to copyright message.
1351 Fold s_segm() and s_unseg() into one function s_segm(parm) which
1352 decides by the parameter.
1353 (md_begin): Don't set linkrelax. Only set Z8002 default if no
1354 command line argument was given to select the intended
1355 architecure.
1356 (get_interrupt_operand): Warn if NOP type code is emitted.
1357 (newfix): New parameter 'size', forward it to 'fix_new_exp'.
1358 (apply_fix): Call newfix with additional 'size' parameter.
1359 (build_bytes): Remove unused variable 'nib'. Detect overflow in
1360 4 bit immediate arguments.
1361 (md_longopts): Add 'linkrelax' option.
1362 (md_parse_option): Adapt to new s_segm function. Set 'linkrelax'
1363 variable when 'linkrelax' command line option is specified.
1364 (md_show_usage): Display 'linkrelax' option.
1365 (md_apply_fix3): Fix cases R_IMM4L, R_JR, and R_IMM8. Add cases
1366 R_CALLR and R_REL16.
1367 * config/tc-z8k.h: Undef WARN_SIGNED_OVERFLOW_WORD.
1368
1369 2003-04-30 H.J. Lu <hjl@gnu.org>
1370
1371 * config/tc-ia64.c (ia64_number_to_chars): New function pointer.
1372 (ia64_float_to_chars): Likewise.
1373 (dot_byteorder): Set target_big_endian, ia64_number_to_chars
1374 and ia64_float_to_chars by tc_segment_info_data.endian from
1375 the current segment if byteorder == -1.
1376 (md_begin): Call dot_byteorder to set target_big_endian.
1377 (md_atof): Call ia64_float_to_chars to convert floating point.
1378 (ia64_float_to_chars_bigendian): New function.
1379 (ia64_float_to_chars_littleendian): Likewise.
1380 (ia64_elf_section_change_hook): Likewise.
1381
1382 * config/tc-ia64.h (ia64_number_to_chars): New.
1383 (md_number_to_chars): Changed to (*ia64_number_to_chars)
1384 (ia64_elf_section_change_hook): New.
1385 (md_elf_section_change_hook): Defined.
1386 (ia64_segment_info_type): New struct.
1387 (TC_SEGMENT_INFO_TYPE): Defined.
1388
1389 2003-04-30 H.J. Lu <hjl@gnu.org>
1390
1391 * config/tc-ia64.c (md_section_align): Deleted.
1392
1393 * config/tc-ia64.h (SUB_SEGMENT_ALIGN): New.
1394 (md_section_align): New.
1395
1396 2003-04-30 H.J. Lu <hjl@gnu.org>
1397
1398 * config/tc-ia64.c (stmt_float_cons): Fix alignment for real10
1399 and add real16.
1400 (md_pseudo_table): Add "xreal16", "xreal16.ua", "real16" and
1401 "real16.ua".
1402 (md_atof): Add 6 byte padding of zero for real16.
1403
1404 2003-04-29 Nick Clifton <nickc@redhat.com>
1405
1406 * config/obj-elf.c (obj_elf_symver): Skip whitespace before the
1407 start of a version name.
1408
1409 2003-04-28 Chris Demetriou <cgd@broadcom.com>
1410
1411 * configure.in (mips-*-*n*bsd*): Replace with...
1412 (mips-*-netbsd*, mips-*-openbsd*): These.
1413 * configure: Regenerate.
1414
1415 2003-04-28 H.J. Lu <hjl@gnu.org>
1416
1417 * config/tc-hppa.c (hppa_symbol_chars): New.
1418 * config/tc-hppa.h (tc_symbol_chars): Likewise.
1419
1420 2003-04-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1421
1422 * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define again.
1423
1424 2003-04-25 Chris Demetriou <cgd@broadcom.com>
1425
1426 * NEWS: Belatedly mention support for MIPS32 Release 2.
1427
1428 2003-04-24 Eric Christopher <echristo@redhat.com>
1429
1430 * config/tc-mips.c (nopic_need_relax): Revert previous
1431 change.
1432
1433 2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
1434
1435 * config/tc-h8300.h (DWARF2_LINE_MIN_INSN_LENGTH): New
1436 * config/tc-h8300.c (dwarf2dbg.h): Include
1437 (md_pseudo_table): Handle .loc and .file
1438 (md_assemble): Call dwarf2_emit_insn if BFD_ASSEMBLER.
1439 * Makefile.am: Add dependency on dwarf2dbg.h for h8300 targets.
1440 * Makefile.in: Regenerate.
1441
1442 2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
1443
1444 * config/tc-h8300.c (Nmode, h8300hnmode, h8300snmode): New.
1445 (md_pseudo_table): Add h8300hn, h8300sn.
1446 * config/tc-h8300.h (COFF_MAGIC): Handle h8300hn, h8300sn.
1447 * doc/c-h8300.texi : Add documentation for new machine directives.
1448
1449 2003-04-24 Nick Clifton <nickc@redhat.com>
1450
1451 * config/tc-ppc.c (ppc_symbol_chars): Define.
1452 * config/tc-ppc.h (tc_symbol_chars): Define.
1453
1454 2003-04-23 J"orn Rennecke <joern.rennecke@superh.com>
1455
1456 * config/tc-sh.c: Amend comment to refer to SuperH.
1457 * config/tc-sh.h: Likewise.
1458 (LISTING_HEADER): Amend to refer to SuperH.
1459 * config/tc-sh64.c: Change comment to refer to SuperH.
1460 * config/tc-sh64.h (LISTING_HEADER): Change to refer to SuperH.
1461 * doc/as.texinfo [SH, GENERIC]: Amend / Change to refer to SuperH.
1462 * doc/c-sh.texi: Amend to refer to SuperH.
1463 Add SuperH architecture documentation references.
1464 * doc/c-sh64.texi: Change to refer to SuperH.
1465
1466 2003-04-23 H.J. Lu <hjl@gnu.org>
1467
1468 * app.c (do_scrub_chars): More checks for valid labels.
1469
1470 2003-04-22 H.J. Lu <hjl@gnu.org>
1471
1472 * app.c (do_scrub_chars): Check for valid label.
1473
1474 2003-04-22 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1475
1476 * doc/as.texinfo: Replace references to Mitsubishi M32R with
1477 references to Renesas M32R.
1478 * doc/c-m32r.texi: Likewise.
1479
1480 2003-04-21 Richard Henderson <rth@redhat.com>
1481
1482 * dwarf2dbg.c (get_filenum): Skip as-yet unassigned file numbers.
1483 (out_file_list): Assign non-null filename after generating error.
1484
1485 2003-04-18 Jakub Jelinek <jakub@redhat.com>
1486
1487 * ehopt.c (check_eh_frame): For aug_size == 0
1488 in state_seeing_aug_size state skip the state_skipping_aug
1489 state.
1490
1491 2003-04-15 Rohit Kumar Srivastava <rohits@kpitcummins.com>
1492
1493 * doc/c-h8300.texi: Replace occurrances of 'Hitachi' with
1494 'Renesas'.
1495 * doc/c-h8500.texi: Likewise.
1496 * doc/c-sh.texi: Likewise.
1497 * doc/c-sh64.texi: Likewise.
1498 * doc/h8.texi: Likewise.
1499 * config/tc-h8300.c: Likewise.
1500 * config/tc-h8300.h: Likewise.
1501 * config/tc-h8500.c: Likewise.
1502 * config/tc-h8500.h: Likewise.
1503 * config/tc-sh.c: Likewise.
1504 * config/tc-sh.h: Likewise.
1505 * config/tc-sh64.c: Likewise.
1506 * config/tc-sh64.h: Likewise.
1507
1508 2003-04-10 Alexandre Oliva <aoliva@redhat.com>
1509
1510 * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): New.
1511 * config/tc-mips.c: Use signed add for n32 address arithmetic.
1512 (append_insn): When filling delay slots with instructions
1513 that have fixups that tc_gen_reloc might consider modifyable
1514 in variant frags, start a new frag.
1515 (load_address): Generate GOT_DISP with of without offset
1516 depending on whether symbol is local. For -xgot, use
1517 GOT_PAGE/GOT_OFST or GOT_HI16/GOT_LO16.
1518 (macro) <M_DLA_AB, M_LA_AB>: Likewise.
1519 <M_JAL_A>: In NewABI, use CALL16 or GOT_DISP for small got,
1520 CALL_HI16/CALL_LO16 or GOT_PAGE/GOT_OFST for big got.
1521 <ld_st>: In NewABI with small got, always use
1522 GOT_PAGE/GOT_OFST, with the latter in the load/store
1523 instruction. With big got, use GOT_HI16/GOT_LO16 or
1524 GOT_PAGE/GOT_OFST.
1525 (tc_gen_reloc): Adjust variant frags with GOT_DISP in NewABI.
1526 Add tc_frag_data.tc_fr_offset to addends. Decay CALL16,
1527 GOT_OFST and GOT_DISP to GOT_DISP in NewABI.
1528 (md_convert_frag): Use memmove for safe copying of overlapping
1529 regions.
1530
1531 2003-04-09 Stephane Carrez <stcarrez@nerim.fr>
1532
1533 * doc/c-m68hc11.texi (M68HC11-Opts): Document -m68hcs12, -mshort,
1534 -mlong, -mshort-double and -mlong-double options; use table @code.
1535 (M68HC11-Syntax): Update to document 68HC12 operands.
1536 (M68HC11-Modifiers): New section for operand modifiers.
1537 (M68HC11-Directives): New section for specific assembler directives.
1538 (M68HC11-Branch): Fix Overfull hbox error.
1539
1540 2003-04-09 Alexandre Oliva <aoliva@redhat.com>
1541
1542 * config/tc-mips.c (macro): Add comments explaining the rationale
1543 for Chris' change.
1544
1545 2003-04-09 Chris Demetriou <cgd@broadcom.com>
1546
1547 * config/tc-mips.c (macro): Put back `+ 0x8000' in test for 64-bit
1548 constant address that Alexandre took out by accident. Reject
1549 64-bit addresses that are not sign extensions of 32 bits only if
1550 we don't support 64-bit address constants.
1551
1552 2003-04-09 Alan Modra <amodra@bigpond.net.au>
1553
1554 * config/tc-ppc.c (md_apply_fix3): Generate ADDR16 relocs.
1555
1556 2003-04-08 Nick Clifton <nickc@redhat.com>
1557
1558 * as.c (perform_an_assembly_pass): If using cgen, call
1559 gas_cgen_begin.
1560 * cgen.c (gas_cgen_begin): New function. If
1561 flag_signed_overflow_ok is set call cgen_set_signed_overflow_ok
1562 otherwise call cgen_clear_signed_overflow_ok.
1563 * cgen.h: Prototype gas_cgen_begin.
1564
1565 2003-04-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1566
1567 * write.c (write_relocs): Remove unused variable.
1568
1569 2003-04-06 Chris Demetriou <cgd@broadcom.com>
1570
1571 * config/tc-mips.c (HAVE_64BIT_ADDRESS_CONSTANTS): New.
1572 (macro): Use new macro to decide whether to emit constant address
1573 as 32 or 64 bits if addresses are 32-bit wide but registers are
1574 64-bit wide.
1575
1576 2003-04-05 Stephane Carrez <stcarrez@nerim.fr>
1577
1578 * config/tc-m68hc11.c (M6811_OP_CALL_ADDR): New internal define.
1579 (M6811_OP_PAGE_ADDR): New internal define.
1580 (get_operand): New modifier %page and %addr to obtain page and
1581 address part of a far-function.
1582 (fixup8): Use BFD_RELOC_M68HC11_PAGE for a %page modifier; don't
1583 complain on overflow for the BFD_RELOC_M68HC11_PAGE and truncation
1584 relocs.
1585 (fixup16): Use BFD_RELOC_M68HC11_LO16 for a %addr modifier.
1586 (find_opcode): Add comment.
1587 (md_estimate_size_before_relax): Force relocation of
1588 STATE_UNDEXED_OFFSET types when the symbol is not absolute.
1589 (tc_m68hc11_fix_adjustable): Check for BFD_RELOC_M68HC11_LO16
1590 instead of BFD_RELOC_LO16; temporarily make the BFD_RELOC_32
1591 on the symbol itself so that DWARF2 strings are merged correctly.
1592
1593 2003-04-04 Svein E. Seldal <Svein.Seldal@solidas.com>
1594
1595 * config/obj-coff.h (TARGET_FORMAT): Namespace cleanup, changed
1596 default tic4x target format to 'coff2-tic4x'.
1597 * config/tc-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/ and
1598 s/c3x/tic3x/
1599 * config/tc-tic4x.h: Ditto
1600
1601 2003-04-03 Nick Clifton <nickc@redhat.com>
1602
1603 * NEWS: Mention support for Xtensa architecture.
1604
1605 2003-04-02 Philip Blundell <philb@gnu.org>
1606
1607 * config/tc-arm.c (arm_force_relocation): Return 0 for OFFSET_IMM.
1608
1609 2003-04-02 Chris Demetriou <cgd@broadcom.com>
1610
1611 * config/tc-mips.c (macro2): Adjust implementation of
1612 M_ULH, M_ULHU, M_ULW, and M_ULD so that they work properly
1613 in the case where the source and destination registers
1614 are the same.
1615
1616 2003-04-01 Bob Wilson <bob.wilson@acm.org>
1617
1618 * Makefile.am (CPU_TYPES): Add xtensa.
1619 (TARGET_CPU_CFILES): Add config/tc-xtensa.c.
1620 (TARGET_CPU_HFILES): Add config/tc-xtensa.h.
1621 (xtensa-relax.o): New target.
1622 Run "make dep-am".
1623 * Makefile.in: Regenerate.
1624 * configure.in: Handle xtensa-*-*. Add xtensa-relax.o to
1625 extra_objects for xtensa targets.
1626 * configure: Regenerate.
1627 * write.c (write_object_file): Add new md_post_relax_hook.
1628 * config/tc-xtensa.c: New file.
1629 * config/tc-xtensa.h: Likewise.
1630 * config/xtensa-istack.h: Likewise.
1631 * config/xtensa-relax.c: Likewise.
1632 * config/xtensa-relax.h: Likewise.
1633 * doc/Makefile.am (CPU_DOCS): Add c-xtensa.texi.
1634 * doc/Makefile.in: Regenerate.
1635 * doc/all.texi: Set new XTENSA variable.
1636 * doc/as.texinfo: Set new Xtensa variable. Describe
1637 Xtensa-specific options. Define line comment character for
1638 Xtensa. Add Xtensa processors to list of ELF targets where
1639 alignment is specified in bytes. Add new Xtensa-Dependent node.
1640 Add acknowledgements for those contributing to the Xtensa port.
1641 * doc/internals.texi: Describe new md_post_relax_hook.
1642 * doc/c-xtensa.texi: New file.
1643
1644 2003-04-01 Nick Clifton <nickc@redhat.com>
1645 Richard Earnshaw <rearnsha@arm.com>
1646
1647 * config/tc-arm.c: Remove presence of (r) and (tm) symbols.
1648 (ARM_ARCH_IWMMXT): Simplify.
1649 (insns): Place iwmmx instructions in correct place in table.
1650 (arm_add_note): New function: Add a note entry to a .note section.
1651 (md_begin): Make the default architecture be unknown.
1652 Suppress the creation of an arm note section.
1653
1654 2003-03-26 Eric Christopher <echristo@redhat.com>
1655
1656 * config/tc-mips.c (nopic_need_relax): Check for S_IS_EXTERN.
1657
1658 2003-03-25 Stan Cox <scox@redhat.com>
1659 Nick Clifton <nickc@redhat.com>
1660
1661 Contribute support for Intel's iWMMXt chip - an ARM variant:
1662
1663 * config/tc-arm.c: (ARM_CEXT_IWMMXT, ARM_ARCH_IWMMXT, WR_PREFIX,
1664 WC_PREFIX, REG_TYPE_IWMMXT): New constants.
1665 (enum wreg_type, enum iwmmxt_insn_type): New types.
1666 (wr_register, wc_register, wcg_register): New macros.
1667 (iwmmxt_table): New variable.
1668 (wreg_required_here, do_iwmmxt_byte_addr, do_iwmmxt_tandc,
1669 do_iwmmxt_tbcst, do_iwmmxt_textrc, do_iwmmxt_textrm,
1670 do_iwmmxt_tinsr, do_iwmmxt_tmcr, do_iwmmxt_tmcrr, do_iwmmxt_tmia,
1671 do_iwmmxt_tmovmsk, do_iwmmxt_tmrc, do_iwmmxt_tmrrc,
1672 do_iwmmxt_torc, do_iwmmxt_waligni, do_iwmmxt_wmov,
1673 do_iwmmxt_word_addr, do_iwmmxt_wrwr, do_iwmmxt_wrwrwcg,
1674 do_iwmmxt_wrwrwr, do_iwmmxt_wshufh, do_iwmmxt_wzero,
1675 cp_byte_address_offset, cp_byte_address_required_here,
1676 check_iwmmxt_insn): New functions.
1677 (asm_opcode_insns): Add iWMMXt instructions.
1678 (md_begin): Set the mach value for iWMMXt targets. Create a note
1679 section to identify iwmmxt binaries.
1680 (md_apply_fix3): Handle BFD_RELOC_ARM_CP_OFF_IMM_S2.
1681 * doc/c-arm.texi: Document the support for the iWMMXt.
1682 * NEWS: Mention new support.
1683
1684 2003-03-24 Daniel Néri <dne@mayonnaise.net>
1685
1686 * doc/as.texinfo: Rename the all occurances of C54X to TIC54X.
1687 * doc/all.texi: Likewise.
1688 * doc/c-tic54x.texi: Likewise.
1689
1690 2003-03-21 Andreas Schwab <schwab@suse.de>
1691
1692 * config/tc-ia64.c (generate_unwind_image): Fix type of unw_rec to
1693 avoid aliasing issue.
1694
1695 2003-03-21 Martin Schwidefsky <schwidefsky@de.ibm.com>
1696
1697 * config/tc-s390.c (s390_arch_size): Initialize to zero.
1698 (current_arch_mask): Rename to current_mode_mask.
1699 (current_arch_requested): Remove variable.
1700 (current_cpu): New variable.
1701 (init_default_arch): Set defaults values for s390_arch_size,
1702 current_mode_mask and current_cpu.
1703 (md_parse_option): New options -mesa, -mzarch and -march={g5,g6,z900}.
1704 (md_begin): Replace current_arch_mask by current_cpu.
1705 (md_assemble): Adapt check and error message to current_mode_mask and
1706 current_cpu.
1707
1708 2003-03-09 James E Wilson <wilson@tuliptree.org>
1709
1710 * macro.c (buffer_and_nest): Store more to sb instead of '\n'.
1711 * read.c (get_line_sb): Return end of line character or '\n' if
1712 it is zero or non-existent.
1713
1714 2003-03-12 Alexandre Oliva <aoliva@redhat.com>
1715
1716 * config/tc-mips.c (mips_validate_fix): New function.
1717 * config/tc-mips.h (TC_VALIDATE_FIX): Define.
1718 (mips_validate_fix): Declare.
1719
1720 2003-03-12 Alexandre Oliva <aoliva@redhat.com>
1721
1722 * Reverted 2003-03-02's patch.
1723
1724 2003-03-11 Steve Ellcey <sje@cup.hp.com>
1725
1726 * dwarf2dbg.c (generic_dwarf2_emit_offset): New.
1727 (TC_DWARF2_EMIT_OFFSET): Provide default.
1728 (out_debug_aranges, out_debug_info): Use it.
1729 * config/tc-ia64.c (ia64_dwarf2_emit_offset): New.
1730 (ia64_cons_fix_new): Move FUNC_DTP_RELATIVE handling ...
1731 (ia64_gen_real_reloc_type): ... here.
1732 * config/tc-ia64.h (TC_DWARF2_EMIT_OFFSET): New.
1733
1734 2003-03-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1735
1736 * config/tc-mips.c (s_mips_end): Remove !BFD_ASSEMBLER case.
1737 (s_mips_ent): Likewise.
1738
1739 2003-03-04 Dmitry Diky <diwil@mail.ru>
1740
1741 * config/tc-msp430.c (mcu_types): Add recently announced x1122
1742 and x1123 devices, add missed x437.
1743 (md_show_usage): Sort device list.
1744
1745 2003-03-03 J"orn Rennecke <joern.rennecke@superh.com>
1746
1747 * config/tc-sh.c (sh_dsp): Replace with preset_target_arch.
1748 (md_begin): Use preset_target_arch.
1749 (md_longopts): Make isa option unconditional.
1750 (md_parse_option): Make OPTION_DSP and OPTION_ISA sh4 / any
1751 set preset_target_arch.
1752 (md_apply_fix3): If BFD_ASSEMBLER, adjust SWITCH_TABLE fixups
1753 by -S_GET_VALUE (fixP->fx_subsy).
1754 (tc_gen_reloc): For SWITCH_TABLE fixups, the symbol is fixp->fx_subsy,
1755 and the addend is 0.
1756 Adjust addend of R_SH_IND12W relocations by fixp->fx_offset - 4.
1757 * config/tc-sh.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
1758
1759 2003-03-02 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1760
1761 * config/tc-mips.c (append_insn): Add handling of
1762 BFD_RELOC_MIPSEMB_16_PCREL_S2. Avoid emitting unneeded
1763 BFD_RELOC_16_PCREL_S2 relocs and add earlier warnings about
1764 misaligned address and reange overflow.
1765 (macro_build): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. Add
1766 earlier warnings about misaligned address and reange overflow.
1767 (mips_ip): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
1768 (md_apply_fix): Likewise. Fix warning output.
1769 (tc_gen_reloc): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
1770 Allow BFD_RELOC_16_PCREL_S2 for all ABIs.
1771 (md_convert_frag): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
1772
1773 2003-02-21 Nick Clifton <nickc@redhat.com>
1774
1775 * NEWS: Mention availability of test generator program.
1776
1777 2003-02-21 Miles Bader <miles@gnu.org>
1778
1779 * config/tc-v850.c (system_registers): Add v850e debug registers.
1780 (system_register_name): Accept up to 27 (the last v850e sys register).
1781
1782 2003-02-21 Bob Wilson <bob.wilson@acm.org>
1783
1784 * doc/as.texinfo: Define new COFF-ELF variable to conditionalize text
1785 relevant to both COFF and ELF. Fix obvious typos and texinfo bugs.
1786 Capitalize section headings consistently. Format index entries more
1787 consistently. Unconditionalize text about whether text and data
1788 sections are alterable. Use @ifnottex for alternatives to @tex output
1789 so that HTML works. Clean up COFF vs. ELF descriptions of .section,
1790 .size and .type directives. Be more polite about bad bug reports.
1791 Move FDL into a separate file.
1792 * doc/fdl.texi: New file.
1793
1794 2003-02-21 Richard Sandiford <rsandifo@redhat.com>
1795
1796 * config/tc-mips.c (prev_reloc_op_frag): New variable.
1797 (macro): Check it to decide whether a new frag is needed.
1798 (my_getSmallExpression): Set it.
1799
1800 2003-02-20 jmc <jmc@prioris.mini.pw.edu.pl>
1801
1802 * cgen.c: Fix typo: intial -> initial.
1803
1804 2003-02-19 Jie Zhang <zhangjie@magima.com.cn>
1805
1806 * app.c (do_scrub_chars): Handle '||' in two states.
1807
1808 2003-02-13 Alan Modra <amodra@bigpond.net.au>
1809
1810 * write.c (TC_FORCE_RELOCATION_SUB_SAME): Revert last change.
1811 * config/tc-s390.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
1812
1813 2003-02-11 Uwe Stieber <uwe@wwws.de>
1814
1815 * configure.in: Add support for kaOS as cross build target system.
1816 * configure: Regenerated.
1817
1818 2003-02-10 Nick Clifton <nickc@redhat.com>
1819
1820 * config/tc-arm.c (md_begin): If the Maverick co-processor is
1821 selected, set the EF_ARM_MAVERICK_FLOAT flag and
1822 bfd_mach_arm_ep9312 machine number.
1823
1824 2003-02-08 Richard Sandiford <rsandifo@redhat.com>
1825
1826 * config/tc-mips.c (reloc_needs_lo_p): New function.
1827 (fixup_has_matching_lo_p): New function.
1828 (append_insn): Use reloc_needs_lo_p to check whether a relocation
1829 might need a matching %lo(). Reuse the head of mips_hi_fixup_list
1830 if that fixup already has a matching %lo(). Don't call frag_wane here.
1831 (macro): Call frag_wane here if the last unmatched hi was in the
1832 current frag.
1833 (pic_need_relax): New function, split out from...
1834 (md_estimate_size_before_relax): ...here.
1835 (mips_frob_file): Use reloc_needs_lo_p. Use pic_need_relax to test
1836 whether BFD_RELOC_MIPS_GOT16 fixups refer to global symbols.
1837
1838 2003-02-07 Richard Sandiford <rsandifo@redhat.com>
1839
1840 * config/tc-mips.c (my_getSmallExpression): Rework bracket handling.
1841
1842 2003-02-06 Alan Modra <amodra@bigpond.net.au>
1843
1844 * config/tc-ppc.c (ppc_elf_suffix): Undo part of last change so that
1845 x@toc+off works.
1846
1847 2003-02-05 Alan Modra <amodra@bigpond.net.au>
1848
1849 * config/tc-ppc.c (mapping): Handle new TLS reloc specs.
1850 (ppc_elf_suffix): Don't warn for x+off@got when ppc64 and don't
1851 accept x@got+off etc.
1852 (md_assemble): Handle TLS relocs.
1853 (ppc_force_relocation): Force for all TLS relocs.
1854 (ppc_fix_adjustable): Likewise.
1855 (md_apply_fix3): Handle TLS relocs.
1856
1857 2003-02-04 Alan Modra <amodra@bigpond.net.au>
1858
1859 * config/obj-elf.c (obj_elf_change_section): Set SEC_LINK_ONCE and
1860 SEC_LINK_DUPLICATES_DISCARD directly rather than using elf_linkonce_p.
1861
1862 2003-02-02 Richard Sandiford <rsandifo@redhat.com>
1863
1864 * config/tc-mips.c (enum small_ex_type): Remove.
1865 (imm_unmatched_hi): Remove.
1866 (md_assemble): Remove use of imm_unmatched_hi. Remove the last
1867 argument from calls to append_insn.
1868 (append_insn): Remove unmatched_hi parameter; check reloc_type[0]
1869 instead.
1870 (macro_build): Update append_insn calls.
1871 (mips16_macro_build, macro_build_lui): Likewise.
1872 (mips_ip): Rework handling of small expressions. Move explicit
1873 relocation handling into my_getSmallExpression. Assume that the
1874 value of 'o' operands is zero if there is only one bracketed
1875 expression left.
1876 (percent_op): Make constant. Record the BFD relocation code
1877 associated with each operator.
1878 (my_getSmallParser, my_getPercentOp): Remove.
1879 (parse_relocation): New function.
1880 (my_getSamllExpression): Rework. Fill in relocations here
1881 rather than in mips_ip.
1882
1883 2003-01-29 Nick Clifton <nickc@redhat.com>
1884
1885 * config/tc-i386.c (line_comment_chars): Add '#'. This makes the
1886 assembler's handling of # <linenum> "<filename>" directives work.
1887
1888 2003-01-28 Jakub Jelinek <jakub@redhat.com>
1889
1890 * dwarf2dbg.c: Include filenames.h.
1891 (struct file_entry): Make filename const char *.
1892 (dirs, dirs_in_use, dirs_allocated): New variables.
1893 (get_filenum): Add NUM argument. Build directory table.
1894 (dwarf2_where): Adjust caller.
1895 (dwarf2_directive_file): Use get_filenum to allocate
1896 slot in file and directory tables.
1897 (dwarf2_directive_loc): Recreate full filename from
1898 directory and filename part if needed for listing.
1899 (out_file_list): Output directory table.
1900 Output main source file dirname before its filename.
1901
1902 2003-01-28 Dmitry Diky <diwil@mail.ru>
1903
1904 * config/tc-msp430.c: Replace occurences of 'tolower' with
1905 'TOLOWER'.
1906
1907 2003-01-27 David Mosberger <davidm@hpl.hp.com>
1908
1909 * config/tc-ia64.c (dot_vframesp): Correct error message.
1910 (dot_vframepsp): Ditto.
1911
1912 2003-01-27 Alexandre Oliva <aoliva@redhat.com>
1913
1914 * configure.in (em): Set to irix on all Irix systems.
1915 * configure: Rebuilt.
1916 * config/te-irix.h: New file.
1917 * config/tc-mips.c (mips_dwarf2_format): Use TE_IRIX to decide
1918 whether to use Irix-specific 64-bit format.
1919
1920 2003-01-27 Martin Schwidefsky <schwidefsky@de.ibm.com>
1921
1922 * config/tc-s390.c (s390_elf_cons): Avoid designated initializers.
1923
1924 2003-01-25 Jakub Jelinek <jakub@redhat.com>
1925
1926 * config/tc-sparc.c (sparc_ip): Handle TLS % operators.
1927 (tc_gen_reloc): Handle TLS relocs.
1928 (sparc_cons, cons_fix_new_sparc): Handle %r_tls_dtpoff.
1929 * config/tc-sparc.h (tc_fix_adjustable): Don't adjust TLS
1930 relocs.
1931 * config/obj-elf.c (obj_elf_section_word): Handle tls.
1932 (obj_elf_type): Handle tls_object.
1933
1934 2003-01-24 Martin Schwidefsky <schwidefsky@de.ibm.com>
1935
1936 * config/tc-s390.c (s390_tls_suffix): New function.
1937 (elf_suffix_type): Add suffix enums for TLS relocations.
1938 (s390_elf_suffix): Add suffix strings for TLS relocations.
1939 (s390_elf_cons): Map new lenght/elf suffix combinations for TLS to
1940 bfd relocations.
1941 (md_gather_operands): Map new instruction operand/elf suffix
1942 combinations for TLS to bfd relocations.
1943 (tc_s390_fix_adjustable): Add new TLS relocations.
1944 (tc_s390_force_relocation): Likewise.
1945 (md_apply_fix3): Likewise.
1946
1947 2003-01-24 Alan Modra <amodra@bigpond.net.au>
1948
1949 * as.h: Update copyright date.
1950 * symbols.c: Likewise.
1951 * config/tc-d10v.h: Likewise.
1952 * config/tc-fr30.h: Likewise.
1953 * config/tc-i960.h: Likewise.
1954 * config/tc-mips.h: Likewise.
1955
1956 * config/tc-hppa.h (DIFF_EXPR_OK): Define.
1957 (MD_APPLY_SYM_VALUE): Move.
1958
1959 2003-01-23 Nick Clifton <nickc@redhat.com>
1960
1961 * NEWS: Announce sh2e support.
1962
1963 Add sh2e support:
1964 2002-04-02 Alexandre Oliva <aoliva@redhat.com>
1965 * config/tc-sh.c (md_show_usage): Added sh2e next to sh3e.
1966 (sh_elf_final_processing): Handle arch_sh2e.
1967
1968 2003-01-23 Alan Modra <amodra@bigpond.net.au>
1969
1970 * symbols.c (S_FORCE_RELOC): Add "strict" param.
1971 * symbols.h (S_FORCE_RELOC): Likewise.
1972 * config/obj-aout.h (S_FORCE_RELOC): Likewise.
1973 * config/obj-bout.h (S_FORCE_RELOC): Likewise.
1974 * config/obj-coff.h (S_FORCE_RELOC): Likewise.
1975 * config/obj-ieee.h (S_FORCE_RELOC): Likewise.
1976 * config/obj-vms.h (S_FORCE_RELOC): Likewise.
1977 * write.c (generic_force_reloc): New function.
1978 (TC_FORCE_RELOCATION): Use it here instead of S_FORCE_RELOC.
1979 (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
1980 (adjust_reloc_syms): Adjust S_FORCE_RELOC call.
1981 * as.h (generic_force_reloc): Declare.
1982 * doc/internals.texi (S_FORCE_RELOC): Update.
1983 (TC_FORCE_RELOCATION_SUB_SAME): Update.
1984
1985 * config/tc-alpha.c (alpha_force_relocation): Adjust to use
1986 generic_force_reloc.
1987 (alpha_fix_adjustable): Likewise.
1988 * config/tc-arm.c (arm_force_relocation): Likewise.
1989 * config/tc-cris.c (md_cris_force_relocation): Likewise.
1990 * config/tc-frv.c (frv_force_relocation): Likewise.
1991 * config/tc-i386.c (md_apply_fix3): Likewise.
1992 * config/tc-ia64.c (ia64_force_relocation): Likewise.
1993 * config/tc-ip2k.c (ip2k_force_relocation): Likewise.
1994 * config/tc-m32r.c (m32r_force_relocation): Likewise.
1995 * config/tc-m68hc11.c (tc_m68hc11_force_relocation): Likewise.
1996 * config/tc-mcore.c (mcore_force_relocation): Likewise.
1997 * config/tc-mips.c (mips_force_relocation): Likewise.
1998 * config/tc-mmix.c (mmix_force_relocation): Likewise.
1999 * config/tc-ppc.c (ppc_force_relocation): Likewise.
2000 * config/tc-s390.c (tc_s390_force_relocation): Likewise.
2001 * config/tc-sh.c (sh_force_relocation): Likewise.
2002 (md_pcrel_from_section): Likewise.
2003 * config/tc-sparc.c (tc_gen_reloc): Likewise.
2004 * config/tc-v850.c (v850_force_relocation): Likewise.
2005 * config/tc-xstormy16.c (xstormy16_force_relocation): Likewise.
2006 * config/tc-i386.h (TC_FORCE_RELOCATION): Likewise.
2007 * config/tc-mcore.h (TC_FORCE_RELOCATION): Likewise.
2008 * config/tc-sparc.h (tc_fix_adjustable): Likewise.
2009
2010 * config/tc-d10v.c (d10v_force_relocation): Delete.
2011 * config/tc-d10v.h (TC_FORCE_RELOCATION): Don't define.
2012 * config/tc-dlx.c (md_dlx_force_relocation): Delete.
2013 * config/tc-dlx.h (TC_FORCE_RELOCATION): Don't define.
2014 * config/tc-fr30.c (fr30_force_relocation): Delete.
2015 * config/tc-fr30.h (TC_FORCE_RELOCATION): Don't define.
2016 * config/tc-mn10300.c (mn10300_force_relocation): Delete.
2017 * config/tc-mn10300.h (TC_FORCE_RELOCATION): Don't define.
2018 (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
2019 * config/tc-i960.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2020 * config/tc-hppa.c (hppa_force_relocation): Adjust S_FORCE_RELOC call.
2021 * config/tc-mips.c (RELAX_BRANCH_TOOFAR): Warning fix.
2022 * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Don't define.
2023 * config/tc-openrisc.c (openrisc_force_relocation): Delete.
2024 * config/tc-openrisc.h (TC_FORCE_RELOCATION): Don't define.
2025 * config/tc-sparc.c (elf32_sparc_force_relocation): Delete.
2026 * config/tc-sparc.h (TC_FORCE_RELOCATION): Don't define for ELF.
2027 * config/tc-i386.c (i386_force_relocation): Delete.
2028 * config/tc-i386.h (TC_FORCE_RELOCATION): Don't define for
2029 BFD_ASSEMBLER.
2030 (EXTERN_FORCE_RELOC): Fix TE_PE and STRICT_PE_FORMAT nesting.
2031 * config/tc-m68k.h (TC_FORCE_RELOCATION): Don't define.
2032 * config/tc-pj.h (TC_FORCE_RELOCATION): Don't define.
2033 * config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Don't call
2034 S_FORCE_RELOC.
2035 (TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
2036 * config/tc-sh64.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2037
2038 2003-01-23 Alan Modra <amodra@bigpond.net.au>
2039
2040 * config/tc-sh64.c (shmedia_frob_section_type): Adjust for changed
2041 sh64_elf_section_data.
2042 * config/tc-sh64.h: Include elf32-sh64.h.
2043 * config/tc-m68hc11.c: Don't include stdio.h.
2044 (md_show_usage): Fix missing continuation.
2045 * Makefile.am: Run "make dep-am".
2046 * Makefile.in: Regenerate.
2047
2048 2003-01-22 Nick Clifton <nickc@redhat.com>
2049
2050 * as.h: Include fopen-bin.h not fopen-same.h for mingw32 hosts.
2051
2052 2003-01-21 Fabio Alemagna <falemagn@aros.org>
2053
2054 * configure.in: Handle *-*-aros*.
2055 * configure: Regenerated from configure.in.
2056
2057 2003-01-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
2058
2059 * config/tc-s390.c (elf_suffix_type): Add suffix enums for gotoff,
2060 gotplt and pltoff relocations.
2061 (s390_elf_suffix): Add suffix strings for gotoff, gotplt and pltoff.
2062 (s390_elf_cons): Map new lenght/elf suffix combinations for gotoff,
2063 gotplt and pltoff to bfd relocations.
2064 (md_gather_operands): Map new instruction operand/elf suffix
2065 combinations to bfd relocations.
2066 (tc_s390_fix_adjustable): Add new gotoff, gotplt and pltoff relocations
2067 to the list of unadjustable relocations.
2068 (tc_s390_force_relocation): Always emit relocations for gotoff, gotplt
2069 and pltoff relocations.
2070 (md_apply_fix3): Add the new relocations.
2071
2072 2003-01-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
2073
2074 * config/tc-s390.c (md_apply_fix3): Emit error message for relocations
2075 with a subsy symbol.
2076
2077 2003-01-17 Stephane Carrez <stcarrez@nerim.fr>
2078
2079 * config/tc-m68hc11.c (tc_m68hc11_fix_adjustable): Prevent adjustment
2080 of relocs for memory bank addressing.
2081
2082 2003-01-17 Stephane Carrez <stcarrez@nerim.fr>
2083
2084 * config/tc-m68hc11.c (md_show_usage): Update usage.
2085 (md_parse_option): Recognize -m68hcs12.
2086 (m68hc11_elf_final_processing): Set EF_M68HCS12_MACH flag to identify
2087 HCS12.
2088 * doc/as.texinfo (Overview): Document new option -m68hcs12.
2089
2090 2003-01-16 Jakub Jelinek <jakub@redhat.com>
2091
2092 * config/tc-ia64.c (ia64_cons_fix_new): Handle @dtprel() in data.
2093
2094 2003-01-16 Alan Modra <amodra@bigpond.net.au>
2095
2096 * Makefile.am: Run "make dep-am".
2097 * Makefile.in: Regenerate.
2098 * po/POTFILES.in: Regenerate.
2099
2100 2003-01-11 Alan Modra <amodra@bigpond.net.au>
2101
2102 * read.c (get_absolute_expr): New, split out from..
2103 (get_absolute_expression): ..here.
2104 * read.h (get_absolute_expr): Declare.
2105 * config/obj-elf.c (elf_common): Use offsetT for "temp" and "size".
2106 Trim size to arch bits_per_address, and test for negative input
2107 via get_absolute_expr.
2108
2109 2003-01-07 DJ Delorie <dj@redhat.com>
2110
2111 * config/tc-xstormy16.c (md_cgen_lookup_reloc): Adjust value based
2112 on operand type.
2113 (xstormy16_md_apply_fix3): Use adjustment.
2114
2115 2003-01-02 Ben Elliston <bje@redhat.com>
2116
2117 * configure.in: Add iq2000-elf target.
2118 * configure: Regenerate.
2119 * config/tc-iq2000.c: New file.
2120 * config/tc-iq2000.h: Likewise.
2121 * po/gas.pot: Regenerate.
2122
2123 2003-01-02 Chris Demetriou <cgd@broadcom.com>
2124
2125 * config/tc-mips.c: Update copyright years to include 2003.
2126 (mips_ip): Fix indentation of "+A", "+B", and "+C" handling.
2127 Additionally, clean up their code slightly and clean up their
2128 comments some more.
2129
2130 * doc/c-mips.texi: Add MIPS32r2 to ".set mipsN" documentation.
2131
2132 2003-01-01 Daniel Jacobowitz <drow@mvista.com>
2133
2134 * doc/Makefile.am (as.1): Depend on "asconfig.texi gasver.texi
2135 $(CPU_DOCS)".
2136 * doc/Makefile.in: Regenerate.
2137
2138 2003-01-01 John David Anglin <dave.anglin@nrc.ca>
2139
2140 * config/obj-elf.c (special_sections): Work around HP's incorrect usage
2141 of .init and .fini sections for array initializers and finalizers.
2142
2143 2002-12-31 Chris Demetriou <cgd@broadcom.com>
2144
2145 * config/tc-mips.c (validate_mips_insn, mips_ip): Recognize
2146 the "+D" operand, which will be used only by the disassembler.
2147
2148 2002-12-30 Chris Demetriou <cgd@broadcom.com>
2149
2150 * configure.in: Recognize mipsisa32r2, mipsisa32r2el, and
2151 CPU variants.
2152 * configure: Regenerate.
2153 * config/tc-mips.c (ISA_HAS_DROR, ISA_HAS_ROR): New defines.
2154 (macro_build): Handle "K" operand.
2155 (macro2): Use ISA_HAS_DROR and ISA_HAS_ROR in the places where
2156 CPU_HAS_DROR and CPU_HAS_ROR are currently used.
2157 (mips_ip): New variable "lastpos", and implement "+A", "+B",
2158 and "+C" operands for MIPS32 Release 2 ins/ext instructions.
2159 Implement "K" operand for MIPS32 Release 2 rdhwr instruction.
2160 (validate_mips_insn): Implement "+" as a way to extend the
2161 allowed operands, and implement "K", "+A", "+B", and "+C"
2162 operands.
2163 (OPTION_MIPS32R2): New define.
2164 (md_longopts): Add entry for OPTION_MIPS32R2.
2165 (OPTION_ELF_BASE): Adjust to accomodate OPTIONS_MIPS32R2.
2166 (md_parse_option): Handle OPTION_MIPS32R2.
2167 (s_mipsset): Reimplement handling of ".set mipsN" options
2168 and add support for ".set mips32r2".
2169 (mips_cpu_info_table): Add entry for "mips32r2" (MIPS32 Release 2).
2170 (md_show_usage): Document "-mips32r2" option.
2171 * doc/as.texinfo: Document "-mips32r2" option.
2172 * doc/c-mips.texi: Likewise.
2173
2174 2002-12-30 Dmitry Diky <diwil@mail.ru>
2175
2176 * configure.in: Add msp430 target.
2177 * configure: Regenerate.
2178 * Makefile.am: Add msp430 target.
2179 * Makefile.in: Regenerate.
2180 * config/tc-msp430.c: New file: msp430 assembler.
2181 * config/tc-msp430.h: New file: target macros for msp430.
2182 * doc/Makefile.am: Add msp430 target.
2183 * doc/Makefile.in: Regenerate.
2184 * doc/as.texinfo: Include msp430 documenation.
2185 * doc/all.texi: Enable msp430 documentation.
2186 * doc/c-msp430.texi: New file: document msp430 specific features
2187 of the assembler.
2188
2189 2002-12-25 Alexandre Oliva <aoliva@redhat.com>
2190
2191 * dwarf2dbg.c (DWARF2_ADDR_SIZE): New macro.
2192 (dwarf2_finish): Use it.
2193 * doc/internals.texi (DWARF2_ADDR_SIZE): Document it.
2194 * config/tc-mips.h (DWARF2_ADDR_SIZE): Override.
2195
2196 2002-12-20 DJ Delorie <dj@redhat.com>
2197
2198 * config/tc-xstormy16.c (md_cgen_lookup_reloc): Support
2199 BFD_RELOC_XSTORMY16_12.
2200
2201 2002-12-19 Alan Modra <amodra@bigpond.net.au>
2202
2203 * doc/as.texinfo (Invoking): Typo fix.
2204 * config/tc-tic54x.c (encode_operand): Comment typo fix.
2205
2206 2002-12-18 Kazu Hirata <kazu@cs.umass.edu>
2207
2208 * doc/c-alpha.texi: Fix typos.
2209 * doc/c-arm.texi: Likewise.
2210 * doc/c-d10v.texi: Likewise.
2211 * doc/c-i370.texi: Likewise.
2212 * doc/c-i960.texi: Likewise.
2213 * doc/c-ia64.texi: Likewise.
2214 * doc/c-mmix.texi: Likewise.
2215 * doc/c-ns32k.texi: Likewise.
2216 * doc/c-pdp11.texi: Likewise.
2217 * doc/c-pj.texi: Likewise.
2218 * doc/c-sh64.texi: Likewise.
2219 * doc/c-sparc.texi: Likewise.
2220 * doc/c-tic54x.texi: Likewise.
2221 * doc/c-v850.texi: Likewise.
2222 * doc/c-vax.texi: Likewise.
2223 * doc/internals.texi: Likewise.
2224
2225 2002-12-18 Chris Demetriou <cgd@broadcom.com>
2226
2227 * config/tc-mips.c (macro): In M_DROL, M_DROR, M_ROL, and M_ROR,
2228 use hardware rotate ops as appropriate. In M_DROL_I, M_DROR_I,
2229 M_ROL_I, and M_ROR_I, simplify code, clean up warnings, and
2230 arrange not to issue warnings about use of AT when AT is not
2231 actually used.
2232
2233 2002-12-17 Nick Clifton <nickc@redhat.com>
2234
2235 * as.c (std_longopts): Duplicate --keep-locals entry in order to
2236 prevent it being confused with -k.
2237
2238 2002-12-16 Andrew MacLeod <amacleod@redhat.com>
2239
2240 * config/tc-xstormy16.c (md_cgen_lookup_reloc): If a relocation
2241 has already been set up, use it.
2242
2243 2002-12-16 Kazu Hirata <kazu@cs.umass.edu>
2244
2245 * ChangeLog-9295: Fix a typo.
2246 * README: Likewise.
2247 * config/tc-d10v.c: Fix a comment typo.
2248 * config/tc-dlx.c: Likewise.
2249 * config/tc-h8300.h: Likewise.
2250 * config/tc-h8500.h: Likewise.
2251 * config/tc-mips.c: Likewise.
2252 * config/tc-s390.c: Likewise.
2253 * config/tc-sh.h: Likewise.
2254 * config/tc-tic80.h: Likewise.
2255 * config/tc-w65.h: Likewise.
2256 * config/tc-z8k.c: Likewise.
2257 * config/tc-z8k.h: Likewise.
2258 * testsuite/gas/h8300/cmpsi2.s: Likewise.
2259
2260 2002-12-16 Alan Modra <amodra@bigpond.net.au>
2261
2262 * config/tc-d30v.c (check_range): Warning fixes, formatting.
2263 Simplify sign extension. Remove redundant unsigned < 0 test.
2264 * config/tc-i960.c (md_ri_to_chars): Prototype.
2265 * config/tc-mcore.c (md_pseudo_table): Fix typo.
2266 (dump_literals): Init brarsym, and test later instead of isforce.
2267
2268 * config/tc-ns32k.c (encode_operand): Constify operandsP and suffixP.
2269 (parse): Constify line and lineptr.
2270 (md_begin): Calculate endop here.
2271
2272 2002-12-13 Alan Modra <amodra@bigpond.net.au>
2273
2274 * config/obj-vms.c: Formatting. Include fnctl.h.
2275 (Create_VMS_Object_File): Fix creat call for sane unix systems.
2276 (Object_Record_Offset): Make it a size_t.
2277 (Flush_VMS_Object_Record_Buffer): Fix signed/unsigned warning.
2278 (VMS_TBT_Routine_End <Size>): Make var unsigned long.
2279 (VMS_Fix_Indirect_Reference <Offset>): Make arg addressT.
2280 (synthesize_data_segment <data_size>): Remove ATTRIBUTE_UNUSED.
2281 (vms_fixup_data_section <data_size>): Add here instead.
2282 * config/e-criself.c: Fix typo in last change.
2283
2284 2002-12-13 Alan Modra <amodra@bigpond.net.au>
2285
2286 * write.c (write_object_file): Fix signed/unsigned warning.
2287 * config/e-crisaout.c (crisaout_bfd_name): Prototype.
2288 * config/e-criself.c (criself_bfd_name): Prototype.
2289 * config/obj-aout.c (s_sect): Remove unused function.
2290 * config/obj-bout.c (obj_bout_line <ignore>): Add ATTRIBUTE_UNUSED.
2291 * config/obj-coff.c (coff_last_bf): Don't declare for OBJ_XCOFF.
2292 (fixup_mdeps <h>): Add ATTRIBUTE_UNUSED.
2293 * config/obj-ecoff.c (ecoff_frob_file <addr>): Likewise.
2294 * config/obj-vms.c (setup_basic_type <spnt>): Likewise.
2295 (VMS_RSYM_Parse <Current_Routine>): Likewise.
2296 (vms_fixup_text_section <text_siz>): Likewise.
2297 (synthesize_data_segment <data_size>): Likewise.
2298 (vms_fixup_xtors_section <sect_no>): Likewise.
2299 (structure_count): Don't use implicit int type.
2300 * config/tc-a29k.c (insert_sreg): Prototype.
2301 (define_some_regs): Prototype, make static.
2302 (parse_operand): Likewise.
2303 (md_parse_option <c,arg>): Add ATTRIBUTE_UNUSED.
2304 (md_show_usage <stream>): Likewise.
2305 (md_section_align <segment>): Likewise.
2306 (md_convert_frag <all args>): Likewise.
2307 (md_estimate_size_before_relax <all args>): Likewise.
2308 (md_apply_fix3): Don't cast valP pointer type. Fix bogus >>='s.
2309 * config/tc-arm.c (arm_validate_fix): Only for OBJ_COFF or OBJ_ELF.
2310 * config/tc-d30v.c (md_parse_option <arg>): Add ATTRIBUTE_UNUSED.
2311 (md_undefined_symbol <name>): Likewise.
2312 (md_convert_frag <all args>): Likewise.
2313 (write_long <opcode>): Likewise.
2314 (tc_gen_reloc <seg>): Likewise.
2315 (md_estimate_size_before_relax <all args>): Likewise.
2316 (md_apply_fix3 <seg>): Likewise.
2317 (s_d30v_align <ignore>): Likewise.
2318 (build_insn): Correct format string.
2319 (md_apply_fix3): Likewise.
2320 * config/tc-fr30.c (md_parse_option <c,arg>): Add ATTRIBUTE_UNUSED.
2321 (md_undefined_symbol <name>): Likewise.
2322 (md_convert_frag <all args>): Likewise.
2323 (md_cgen_lookup_reloc <insn>): Likewise.
2324 (md_begin): Delete unused vars.
2325 (md_assemble): Likewise.
2326 (md_estimate_size_before_relax): Likewise.
2327 (fr30_relax_frag): #if 0 out, seems unused.
2328 (md_atof): Remove declaration of atof_ieee.
2329 (restore_colon): Prototype.
2330 * config/tc-frv.c (frv_insert_vliw_insn): Prototype.
2331 (frv_find_in_vliw): Likewise.
2332 (frv_debug_tomcat): Likewise.
2333 (frv_adjust_vliw_count): Likewise.
2334 (frv_tomcat_shuffle): Likewise.
2335 (frv_tomcat_analyze_vliw_chains): Likewise. Correct args to
2336 frv_find_in_vliw call.
2337 (md_atof): Remove declaration of atof_ieee.
2338 * config/tc-h8500.c (cons): Delete declaration.
2339 (md_begin <opcode>): Constify.
2340 (displacement_size, immediate_size, absolute_size): Remove.
2341 (build_relaxable_instruction <operand>): Add ATTRIBUTE_UNUSED.
2342 (tc_crawl_symbol_chain <headers>): Likewise.
2343 (md_undefined_symbol <name>): Likewise.
2344 (tc_headers_hook <headers>): Likewise.
2345 (md_parse_option <c,arg>): Likewise.
2346 (md_show_usage <stream>): Likewise.
2347 (md_convert_frag <headers, seg>): Likewise.
2348 (tc_coff_symbol_emit_hook <ignore>): Likewise.
2349 (md_atof): Remove declaration of atof_ieee.
2350 (tc_aout_fix_to_chars): Remove unused function.
2351 (parse_reg): Prototype.
2352 (parse_exp): Prototype.
2353 (skip_colonthing): Prototype. Use &&, not & in logical expressions.
2354 (parse_reglist): Prototype.
2355 (get_operand): Prototype.
2356 (get_operands): Prototype.
2357 (get_specific): Prototype. Make "this_index" signed.
2358 (check): Prototype, make static.
2359 (insert): Prototype
2360 (build_relaxable_instruction): Prototype, make static.
2361 (build_bytes): Prototype.
2362 (wordify_scb): Prototype.
2363 * config/tc-h8500.h (start_label): Declare.
2364 (tc_coff_sizemachdep): Declare.
2365 * config/tc-i370.c (i370_ebcdic <unused>): Add ATTRIBUTE_UNUSED.
2366 (i370_rmode <unused>): Likewise.
2367 (i370_csect <unused>): Likewise.
2368 (i370_dc <unused>): Likewise.
2369 (i370_ds <unused>): Likewise.
2370 (i370_elf_lcomm <unused>): Likewise.
2371 (i370_ltorg <ignore>): Likewise.
2372 (i370_using <ignore>): Likewise.
2373 (i370_drop <ignore>): Likewise.
2374 (i370_byte <ignore>): Likewise.
2375 (i370_tc <ignore>): Likewise.
2376 (md_estimate_size_before_relax <fragp, seg>): Likewise.
2377 (md_convert_frag <all args>): Likewise.
2378 (md_undefined_symbol <name>): Likewise.
2379 (md_pcrel_from_section <sec>): Likewise.
2380 (tc_gen_reloc <seg>): Likewise.
2381 (i370_section_letter): #if 0 unused functions.
2382 (i370_section_word, i370_section_type, i370_section_flags): Likewise.
2383 (symbol_locate): Prototype.
2384 * config/tc-i860.c (md_atof): Remove declaration of atof_ieee.
2385 (md_number_to_disp, md_number_to_field): Remove.
2386 (md_apply_fix3): Correct format string and cast "fup".
2387 * config/tc-i960.c (md_convert_frag): Add ATTRIBUTE_UNUSED to args.
2388 (s_endian <ignore>): Likewise.
2389 (md_undefined_symbol <name>): Likewise.
2390 (tc_crawl_symbol_chain <headers>): Likewise.
2391 (tc_set_bal_of_call): Likewise.
2392 (tc_coff_symbol_emit_hook <symbolP>): Likewise.
2393 (i960_handle_align <fragp>): Likewise.
2394 (i960_validate_fix <this_segment_type>): Likewise
2395 (tc_gen_reloc <section>): Likewise.
2396 (tc_coff_symbol_emit_hook): Only define for OBJ_COFF.
2397 (struct memS, struct regop): Forward declare.
2398 (brcnt_emit, brlab_next, cobr_fmt, ctrl_fmt, emit, get_args,
2399 get_cdisp, get_ispec, get_regnum, i_scan, mem_fmt, mema_to_memb,
2400 parse_expr, parse_ldconst, parse_memop, parse_po, parse_regop,
2401 reg_fmt, relax_cobr, s_leafproc, s_sysproc, shift_ok, syntax,
2402 targ_has_sfr, targ_has_iclass, tc_bfd_fix2rtype): Prototype.
2403 (md_chars_to_number, md_number_to_imm): Make static, prototype.
2404 (md_number_to_field): Likewise.
2405 (md_number_to_disp): Remove unused function.
2406 (md_atof): Remove declaration of atof_ieee.
2407 (md_apply_fix3): Correct md_number_to_imm call.
2408 * config/tc-ip2k.c (md_assemble): Warning fix.
2409 * config/tc-m32r.c (md_parse_option <arg>): Add ATTRIBUTE_UNUSED.
2410 (fill_insn <ignore>): Likewise.
2411 (debug_sym <ignore>): Likewise.
2412 (md_undefined_symbol <name>): Likewise.
2413 (m32r_scomm <ignore>): Likewise.
2414 (md_convert_frag <abfd>): Likewise.
2415 (md_cgen_lookup_reloc <insn>): Likewise.
2416 (m32r_record_hi16 <seg>): Likewise.
2417 (md_estimate_size_before_relax): #if 0 old_fr_fix.
2418 (allow_m32rx): Prototype.
2419 (first_writes_to_seconds_operands): Prototype.
2420 (writes_to_pc): Prototype.
2421 (can_make_parallel): Prototype.
2422 (make_parallel): Prototype.
2423 (target_make_parallel): Prototype.
2424 (assemble_two_insns): Prototype.
2425 (m32r_record_hi16): Prototype.
2426 (md_atof): Remove declaration of atof_ieee.
2427 * config/tc-m32r.h (m32r_fix_adjustable): Declare.
2428 (m32r_force_relocation): Prototype.
2429 (m32r_elf_section_change_hook): Prototype.
2430 * config/tc-m68k.c (tc_gen_reloc <section>): Add ATTRIBUTE_UNUSED.
2431 (md_show_usage): Fix signed/unsigned warning.
2432 * config/tc-m88k.c (get_reg): Make reg_prefix param unsigned.
2433 (calcop): Ditto for reg_prefix var.
2434 (hexval): Add cast to fix signed/unsigned warning.
2435 (md_number_to_disp): Delete unused function.
2436 (md_number_to_field): Likewise.
2437 (float_cons, cons, s_globl, s_space, s_set, s_lcomm): Remove decl.
2438 (match_name): Prototype.
2439 (get_bf2): Prototype.
2440 (get_bf_offset_expression): Prototype.
2441 * config/tc-mcore.c (mcore_s_literals <ignore>): Add ATTRIBUTE_UNUSED.
2442 (md_undefined_symbol <ignore>): Likewise.
2443 (md_create_short_jump <all args>): Likewise.
2444 (md_create_long_jump <all args>): Likewise.
2445 (md_convert_frag <abfd, sec>): Likewise.
2446 (md_apply_fix3 <segment>): Likewise.
2447 (md_section_align <segment>): Likewise.
2448 (md_pcrel_from_section <sec>): Likewise.
2449 (tc_gen_reloc <section>): Likewise.
2450 (reg_m, reg_n, immediate): Delete unused vars.
2451 (dump_literals): Fix signed/unsigned warning.
2452 (enter_literal): Likewise.
2453 (parse_imm): Likewise. Also fix format string.
2454 (parse_mem): Remove unused var.
2455 (md_assemble <LS>): Abort on unexpected inst.
2456 (md_atof): Remove declaration of atof_ieee.
2457 (md_parse_option): Remove unused vars.
2458 (md_apply_fix3): Fix format strings, cast args.
2459 (tc_gen_reloc): Delete unused var.
2460 * config/tc-mcore.h (tc_coff_sizemachdep): Declare.
2461 * config/tc-mn10200.c (md_parse_option <c, arg>): Add ATTRIBUTE_UNUSED.
2462 (md_undefined_symbol <name>): Likewise.
2463 (md_convert_frag <abfd>): Likewise.
2464 (tc_gen_reloc <seg>): Likewise.
2465 (check_operand <insn>): Likewise.
2466 (md_convert_frag): Fix format strings.
2467 (tc_gen_reloc): Delete fx_addsy - fx_subsy code.
2468 * config/tc-openrisc.c (ignore_pseudo): Prototype.
2469 (md_atof): Remove declaration of atof_ieee.
2470 * config/tc-or32.c (parse_operand): Prototype non-BFD too.
2471 (md_apply_fix3): Fix bogus >>='s.
2472 (md_undefined_symbol): Delete unused var.
2473 * config/tc-pj.c (little, big, parse_exp_save_ilp): Prototype.
2474 (c_to_r, ipush_code, fake_opcode, alias): Likewise.
2475 (fake_opcode): Adjust for pj_opc_int_t change.
2476 (md_begin): Likewise.
2477 (md_assemble): Likewise.
2478 (ipush_code): Correct parse_exp_save_ilp call. Test pending_reloc
2479 instead of non-existent third arg of parse_exp_save_ilp.
2480 (md_parse_option): Correct "little" and "big" calls.
2481 * config/tc-sparc.c (s_register): Only declare #ifdef OBJ_ELF.
2482 (md_apply_fix3 <segment>): Add ATTRIBUTE_UNUSED.
2483 (tc_gen_reloc <section>): Likewise.
2484 * config/tc-tic30.c: #include stdarg.h or varargs.h.
2485 (debug): Rewrite using VA_* macros.
2486 (md_estimate_size_before_relax): Add ATTRIBUTE_UNUSED to args.
2487 (md_convert_frag): Likewise.
2488 (md_parse_option): Likewise.
2489 (md_show_usage): Likewise.
2490 (md_undefined_symbol): Likewise.
2491 (tc_gen_reloc): Likewise.
2492 (md_operand): Likewise.
2493 (tc_aout_pre_write_hook): Delete.
2494 (struct tic30_insn): Make "operands" unsigned.
2495 (struct tic30_par_insn): Likewise.
2496 (md_assemble): Likewise for "count", "i" and "numops".
2497 (tic30_parallel_insn): Likewise for vars here.
2498 (tic30_operand): Likewise. Remove useless unsigned >= 0 comparison.
2499 * config/tc-tic30.h (tc_aout_pre_write_hook): Define as empty.
2500 * config/tc-tic80.c (obj_coff_section): Delete declaration.
2501 (md_estimate_size_before_relax): Add ATTRIBUTE_UNUSED on args.
2502 (md_undefined_symbol): Likewise.
2503 (md_parse_option): Likewise.
2504 (md_convert_frag): Likewise.
2505 (tc_coff_symbol_emit_hook): Likewise.
2506 (md_atof): Remove declaration of atof_ieee.
2507 (const_overflow): Warning fixes, tidy.
2508 (get_operands): Delete unused vars.
2509 (internal_error_a): Adjust format string to expect a long for arg.
2510 (find_opcode): Warning fixes, simplify.
2511 (build_insn): Cast internal_error_a arg.
2512 (md_begin): Likewise.
2513 (md_apply_fix3): Likewise.
2514 (md_assemble): Delete unused var.
2515 * config/tc-tic80.h (tc_coff_fix2rtype): Prototype.
2516 * config/tc-z8k.c (cons, obj_coff_section): Delete declarations.
2517 (whatreg, parse_reg, parse_exp): Make static, prototype.
2518 (checkfor, regword, regaddr, get_ctrl_operand): Prototype.
2519 (get_flags_operand, get_interrupt_operand, get_cc_operand): Likewise.
2520 (get_operand, get_operands, get_specific, newfix): Likewise.
2521 (apply_fix, build_bytes): Likewise.
2522 (md_atof): Remove declaration of atof_ieee.
2523 (tc_aout_fix_to_chars): Delete.
2524 (md_begin): Constify "opcode". Don't try to init opcode->idx.
2525 Fix s_unseg call.
2526 (md_parse_option): Fix s_segm and s_unseg calls.
2527
2528 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
2529
2530 * tc-mips.c (RELAX_BRANCH_ENCODE): Remove reloc_s2 argument.
2531 Adjust callers.
2532 (RELAX_BRANCH_RELOC_S2): Delete.
2533 (append_insn): Use only BFD_RELOC_16_PCREL_S2 for branches.
2534 Do not handle BFD_RELOC_16_PCREL.
2535 (macro_build, mips_ip): Likewise.
2536 (md_pcrel_from): Return 4 for undefined symbols regardless of
2537 mips_pic.
2538 (md_apply_fix3): Use only BFD_RELOC_16_PCREL_S2 for branches.
2539 Don't dereference howto if no such relocation is available.
2540 Do not apply hack for in-place zero addend in NEWABI.
2541 (md_convert_frag): Use only BFD_RELOC_16_PCREL_S2 for branches.
2542
2543 2002-12-12 Alexandre Oliva <aoliva@redhat.com>,
2544 Alan Modra <amodra@bigpond.net.au>
2545
2546 * config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Define.
2547 (TC_LINKRELAX_FIXUP): Add comments.
2548
2549 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
2550
2551 * config/tc-mn10300.c (set_arch_mach): Change argument type to
2552 avoid warnings.
2553 (r_register_name, xr_register_name): Add prototype declarations.
2554
2555 2002-12-08 H.J. Lu <hjl@gnu.org>
2556
2557 * config/tc-ia64.c (md_apply_fix3): Remove the PCREL hack
2558 copied from tc-i386.c.
2559
2560 2002-12-08 Stephane Carrez <stcarrez@nerim.fr>
2561
2562 Fix Bug savannah/1825:
2563 * config/tc-m68hc11.c (STATE_INDEXED_PCREL): New relax code.
2564 (md_relax_table): Define specific relax for PC-rel offsets.
2565 (build_indexed_byte): Use a STATE_INDEXED_PCREL relax code.
2566 (m68hc11_relax_frag): Handle the new relax code.
2567 (md_convert_frag): Likewise.
2568 (md_estimate_size_before_relax): Likewise.
2569
2570 2002-12-08 Alan Modra <amodra@bigpond.net.au>
2571
2572 * subsegs.c (section_symbol): Use the symbol, not the section, name.
2573
2574 2002-12-05 Richard Henderson <rth@redhat.com>
2575
2576 * config/ia64.c (enum reloc_func): Add FUNC_LT_RELATIVE_X.
2577 (ia64_gen_real_reloc_type): Handle it.
2578 (pseudo_func): Add @ltoffx.
2579 (md_begin): Build .<ltoffx>.
2580 (ia64_force_relocation): True for LTOFF22X and LDXMOV.
2581
2582 2002-12-05 Alan Modra <amodra@bigpond.net.au>
2583
2584 * config/tc-arm.c (arm_force_relocation): Move out of #if OBJ_ELF.
2585 Move OBJ_COFF TC_FORCE_RELOCATION code here so that COFF handles
2586 ARM_IMMEDIATE and ARM_ADRL_IMMEDIATE relocs as for ELF.
2587 * config/tc-arm.h (TC_FORCE_RELOCATION): Define for both ELF and
2588 COFF to call arm_force_relocation.
2589
2590 2002-12-04 David Mosberger <davidm@hpl.hp.com>
2591
2592 * config/tc-ia64.c (pseudo_func): Add "@pause" constant for "hint"
2593 instruction.
2594 (emit_one_bundle): Handle "hint" instruction.
2595 (operand_match): Match IA64_OPND_AR_CSD.
2596
2597 2002-12-04 Alan Modra <amodra@bigpond.net.au>
2598
2599 * dwarf2dbg.c (scale_addr_delta): Correct parameter. Move prototype
2600 inside #if.
2601
2602 2002-12-03 Nick Clifton <nickc@redhat.com>
2603
2604 * config/tc-ppc.c (ppc_cleanup): Do not set SEC_MERGE flag on
2605 .PPC.EMB.apuinfo sections.
2606
2607 2002-12-03 Richard Henderson <rth@redhat.com>
2608
2609 * config/tc-ia64.c (operand_match): Add IA64_OPND_LDXMOV case.
2610
2611 2002-12-03 Alan Modra <amodra@bigpond.net.au>
2612
2613 * config/tc-w65.c (s_longa): Prototype. Make static, specify int arg.
2614 (cons, s_align_bytes): Delete declaration.
2615 (relax): Delete.
2616 (md_begin): Constify "struct opinfo *" var. Don't try to make "name"
2617 strings common.
2618 (dot): Delete unused function.
2619 (w65_expression): Remove unused arg.
2620 (parse_exp): Prototype. Remove unused arg. Adjust w65_expression
2621 call.
2622 (get_operands): Prototype. Constify "struct opinfo *" arg. Fix
2623 parse_exp call.
2624 (get_specific): Prototype. Constify "struct opinfo *" arg and return
2625 value.
2626 (check): Remove unused function.
2627 (build_Mytes): Prototype. Constify "struct opinfo *" arg. Abort
2628 on unhandled switch case.
2629 (md_assemble): Remove unused op_start, op_end, nlen, p vars. Constify
2630 "opcode".
2631 (tc_crawl_symbol_chain): Delete unused function.
2632 (tc_headers_hook): Likewise.
2633 (tc_Nout_fix_to_chars): Likewise.
2634 (md_undefined_symbol): Add ATTRIBUTE_UNUSED.
2635 (md_parse_option): Likewise.
2636 (md_convert_frag): Likewise.
2637 (tc_coff_symbol_emit_hook): Likewise.
2638 (md_show_usage): Likewise.
2639 * config/tc-w65.h (tc_coff_sizemachdep): Declare.
2640 (TC_PARSE_CONS_EXPRESSION): w65_expression takes one arg.
2641 (w65_expression): Declare.
2642
2643 * po/POTFILES.in: Regenerate.
2644
2645 * config/tc-arm.c (arm_force_relocation): Return 0 for ARM_IMMEDIATE
2646 and ARM_ADRL_IMMEDIATE.
2647
2648 2002-12-02 Nick Clifton <nickc@redhat.com>
2649
2650 * gasp.c: Delete. It has been deprecated.
2651 * NEWS: Mention that gasp has been removed.
2652 * Makefile.am: Remove references to gasp.
2653 * makefile.vms: Likewise.
2654 * mpw-make.sed: Likewise.
2655 * Makeile.in: Regenerate.
2656 * doc/gasp.texi: Delete.
2657 * doc/Makefile.am: Remove references to gasp.texi.
2658 * doc/Makefile.in: Regenerate.
2659 * macro.c: Delete references to gasp.
2660 Remove use of comment_char function parameter as it is no longer
2661 needed.
2662 * macro.h: Update prototypes to remove comment_char parameter.
2663 Fix formatting.
2664 * read.c (read_a_source_file, s_irp): Remove comment_char
2665 parameter from invocation of functions in macro.c
2666
2667 2002-12-02 Hans-Peter Nilsson <hp@axis.com>
2668
2669 * read.c (emit_expr) [!WORKING_DOT_WORD]: Initialize x->use_jump.
2670
2671 2002-12-01 Stephane Carrez <stcarrez@nerim.fr>
2672
2673 * config/tc-m68hc11.c (md_begin): Fix qsort warning.
2674 (tc_gen_reloc): Mark section param as not used.
2675
2676 2002-12-01 Stephane Carrez <stcarrez@nerim.fr>
2677
2678 Fix Bug savannah/1825:
2679 * config/tc-m68hc11.h (md_relax_frag): Define to support relaxations
2680 that are not pc-relative.
2681 (m68hc11_relax_frag): Declare.
2682
2683 * config/tc-m68hc11.c (build_indexed_byte): Use a frag_var to handle
2684 the offsetable indexed addressing modes (n,r).
2685 (build_insn): Cleanup some locals.
2686 (m68hc11_relax_frag): New function imported from tc-cris.c to handle
2687 relaxation of difference between two symbols of same section.
2688 (md_convert_frag): For INDEXED_OFFSET relaxs, use the displacement
2689 only when this is a PC-relative operand and the offset is not absolute.
2690 (md_estimate_size_before_relax): Convert the INDEXED_OFFSET,UNDEF frag
2691 to INDEXED_OFFSET,STATE_BITS5 when the symbol is absolute; this will
2692 be handled by m68hc11_relax_frag.
2693
2694 2002-12-01 Stephane Carrez <stcarrez@nerim.fr>
2695
2696 * config/tc-m68hc11.c (elf_flags): Set default ABI to gcc default
2697 (32-bit int, 64-bit double).
2698 (md_longopts): New options -mshort, -mlong, -mshort-double and
2699 -mlong-double to control the ABI.
2700 (md_show_usage): Update.
2701 (md_parse_option): Handle new options.
2702 * doc/as.texinfo (Overview): Document new options for HC11/HC12.
2703
2704 2002-12-01 Nathan Sidwell <nathan@codesourcery.com>
2705
2706 * symbols.c (report_op_error): New function, broken out of ...
2707 (resolve_symbol_value): ... here. Use for both monadic and dyadic
2708 operators.
2709
2710 2002-11-30 Kaz Kojima <kkojima@rr.iij4u.or.jp>
2711
2712 * config/tc-sh.c (md_apply_fix3): Take account of fx_offset
2713 for BFD_RELOC_32_PLT_PCREL.
2714
2715 2002-11-30 Alan Modra <amodra@bigpond.net.au>
2716
2717 * dwarf2dbg.c, write.c, config/obj-aout.c, config/obj-coff.c,
2718 config/obj-ecoff.c, config/obj-elf.c, config/obj-som.c,
2719 config/tc-arm.c, config/tc-arm.h, config/tc-avr.c, config/tc-cris.c,
2720 config/tc-d10v.c, config/tc-d10v.h, config/tc-d30v.c, config/tc-d30v.h,
2721 config/tc-dlx.c, config/tc-dlx.h, config/tc-fr30.c, config/tc-fr30.h,
2722 config/tc-frv.c, config/tc-frv.h, config/tc-hppa.c, config/tc-i370.c,
2723 config/tc-i386.c, config/tc-i386.h, config/tc-m32r.c,
2724 config/tc-m68hc11.c, config/tc-mcore.c, config/tc-mcore.h,
2725 config/tc-mips.c, config/tc-mips.h, config/tc-mn10200.c,
2726 config/tc-mn10300.c, config/tc-mn10300.h, config/tc-openrisc.c,
2727 config/tc-openrisc.h, config/tc-ppc.c, config/tc-s390.c,
2728 config/tc-sh.c, config/tc-sh.h, config/tc-sh64.c, config/tc-tic54x.c,
2729 config/tc-v850.c, config/tc-v850.h, config/tc-xstormy16.c,
2730 config/tc-xstormy16.h: Replace boolean with bfd_boolean, true with
2731 TRUE, false with FALSE. Simplify comparisons of bfd_boolean vars with
2732 TRUE/FALSE. Formatting.
2733
2734 2002-11-29 Nick Clifton <nickc@redhat.com>
2735
2736 * config/tc-arm.c (do_t_bkpt): If no operand is specified,
2737 assume a value of zero.
2738 (do_bkpt): Likewise.
2739
2740 2002-11-29 Kaz Kojima <kkojima@rr.iij4u.or.jp>
2741
2742 * config/tc-sh.c (md_apply_fix3): Call S_SET_THREAD_LOCAL
2743 for TLS relocations.
2744
2745 2002-11-29 Jakub Jelinek <jakub@redhat.com>
2746
2747 * config/tc-ia64.c (md_apply_fix3): Add default case.
2748
2749 2002-11-28 Jakub Jelinek <jakub@redhat.com>
2750
2751 * symbols.c (S_SET_THREAD_LOCAL): New function.
2752 * symbols.h (S_SET_THREAD_LOCAL): New prototype.
2753 * config/tc-i386.c (md_apply_fix3): Call S_SET_THREAD_LOCAL
2754 for TLS relocations.
2755 * config/tc-ia64.c (md_apply_fix3): Likewise.
2756 * config/tc-alpha.c (md_apply_fix3): Likewise.
2757
2758 2002-11-28 Jakub Jelinek <jakub@redhat.com>
2759
2760 * write.c (subsegs_finish): For SEC_MERGE sections pad last fragment
2761 to entsize.
2762
2763 2002-11-26 DJ Delorie <dj@redhat.com.
2764
2765 * dwarf2dbg.c (scale_addr_delta): New.
2766 (size_inc_line_addr): Use it.
2767 (emit_inc_line_addr): Use it.
2768
2769 2002-11-26 Hans-Peter Nilsson <hp@axis.com>
2770
2771 * config/tc-cris.c (cris_relax_frag): Fix typo in comment.
2772 (md_assemble): Don't pass on branches to constants as relaxable.
2773 Tweak comment.
2774
2775 2002-11-25 Svein E. Seldal <Svein.Seldal@solidas.com>
2776
2777 * config/tc-tic4x.c (c4x_operands_match): Bugfix in direct mode
2778
2779 2002-11-21 Randolph Chung <randolph@tausq.org>
2780
2781 * config/tc-hppa.h (tc_frob_symbol): Frob undefined unused symbols
2782 only if they have default visibility.
2783
2784 2002-11-21 Richard Henderson <rth@redhat.com>
2785
2786 * config/tc-alpha.c (alpha_fix_adjustable): Remove redundant
2787 S_IS_DEFINED test.
2788
2789 2002-11-21 Alan Modra <amodra@bigpond.net.au>
2790
2791 * config/tc-mcore.c (mcore_pool_count): New function.
2792 (mcore_cons, mcore_float_cons, mcore_stringer, mcore_fill): Use it.
2793
2794 2002-11-20 Klee Dienes <kdienes@apple.com>
2795
2796 * config/tc-mcore.c (md_begin): Use a const iterator. Don't
2797 coalesce the name fields to use the same pointer.
2798
2799 * config/tc-sh.c (md_begin): Use a const iterator. Don't coalesce
2800 the name fields to use the same pointer.
2801 (get_specific): Check for opcodes with the same name using strcmp
2802 as well as comparing the pointer.
2803
2804 2002-11-20 Alan Modra <amodra@bigpond.net.au>
2805
2806 * write.c (adjust_reloc_syms): Don't reduce SEC_MERGE fixups with
2807 fx_subsy non-NULL.
2808
2809 2002-11-19 Richard Henderson <rth@redhat.com>
2810
2811 * config/obj-elf.c (obj_elf_visibility): Overwrite only the
2812 visibility portion of st_other.
2813
2814 2002-11-19 Klee Dienes <kdienes@apple.com>
2815
2816 * config/tc-h8300.c (struct h8_instruction): New type, used to
2817 wrap h8_opcodes with length, noperands, idx, and size fields
2818 (computed at run-time).
2819 (h8_instructions): New variable.
2820 (md_begin): Allocate the storage for h8_instructions. Fill
2821 h8_instructions with pointers to the appropriate opcode and the
2822 correct value for the additional fields.
2823 (clever_message): Update to use h8_instructions instead of
2824 h8_opcodes.
2825 (build_bytes): Ditto.
2826 (get_specific): Ditto.
2827 (md_assemble): Ditto.
2828
2829 2002-11-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
2830
2831 * config/tc-s390.c (tc_s390_fix_adjustable): Re-add patch to prevent
2832 adjustments to symbols in merge sections.
2833
2834 2002-11-19 Luke Deller <luked@cse.unsw.edu.au>
2835
2836 * config/tc-alpha.c (s_alpha_prologue): as_bad when sym is NULL.
2837
2838 2002-11-18 Kevin Buettner <kevinb@redhat.com>
2839
2840 * dwarf2dbg.h (dwarf2_format): New enum.
2841 * dwarf2dbg.c (DWARF2_FORMAT): Provide default definition.
2842 (out_debug_line, out_debug_info): Add code for handling 64-bit
2843 DWARF 2 formats.
2844 * config/tc-mips.h (mips_dwarf2_format): Declare.
2845 * config/tc-mips.c (mips_dwarf2_format): New function.
2846 * doc/internals.texi (DWARF2_FORMAT): Document.
2847
2848 2002-11-18 Alexandre Oliva <aoliva@redhat.com>
2849
2850 * config/tc-mips.c (s_change_section): Make sure input buffer
2851 is not accessed past the end. Don't hand
2852 obj_elf_change_section a pointer into the input buffer.
2853
2854 2002-11-18 Alexandre Oliva <aoliva@redhat.com>, Chris Demetriou <cgd@broadcom.com>
2855
2856 * config/tc-mips.c (tc_gen_reloc): Fix typo in handling of
2857 GOT_LO16 on NEWABI.
2858
2859 2002-11-18 Svein E. Seldal <Svein.Seldal@solidas.com>
2860
2861 * config/tc-tic4x.c: Fixed proper commandline
2862 parameters. Added support for new opcode-list format. General
2863 error message fixups.
2864 (c4x_inst_add): Reject insn not for our CPU
2865 (md_begin): Added matrix for setting the proper opcode-level &
2866 device-flags according to cpu type and revision. Rewrite the
2867 opcode hasher.
2868 (c4x_operand_parse): Fix opcode bug
2869 (c4x_operands_match): New function argument. Added dry-run
2870 mechanism, that is optional error generation. Added constraint 'i'
2871 and 'j'.
2872 (c4x_insn_check): Added new function for post-verification of the
2873 generated insn.
2874 (md_assemble): Check all opcodes before croaking because of an
2875 argument mismatch. Need this to be able to fully support
2876 ortogonally arguments.
2877 (md_parse_options): Revised commandprompt swicthes and added new
2878 ones.
2879 (md_show_usage): Complete rewrite of printout.
2880
2881 2002-11-16 Svein E. Seldal <Svein.Seldal@solidas.com>
2882
2883 * config/tc-tic4x.c: Remove c4x_pseudo_ignore function.
2884 (c4x_operands_match): Added check for 8-bits LDF insn. Give
2885 warning when using constant direct bigger than 2^16. Add the new
2886 arguments.
2887
2888 2002-11-11 Christopher Faylor <cgf@redhat.com>
2889
2890 * configure.in: Use .gdbinit under Cygwin.
2891 * configure: Regenerate.
2892
2893 2002-11-11 Christopher Faylor <cgf@redhat.com>
2894
2895 * config/tc-i386.h (EXTERN_FORCE_RELOC): Define only if
2896 STRICT_PE_FORMAT.
2897
2898 2002-11-11 Svein E. Seldal <Svein.Seldal@solidas.com>
2899
2900 * config/tc-tic4x.c: Declare as many functions as possible as
2901 static. Maintenance on the general indenting. Removed unnecessary
2902 pseudo-ops and added new ones. Removed obsoleted c4x_pseudo_ignore
2903 function. Add support for new DSP, TMS320VC33. Fix bug for
2904 converting flonum constants.
2905 (c4x_do_align): Add proper align handling. Setup align to insert
2906 NOP's.
2907 (c4x_gen_to_words): Support for extended TI type floats.
2908 (md_atof): Proper dumping of multiple-word littlenums.
2909 (c4x_atof): Added support for extended TI type floats.
2910 (c4x_stringer): Added new function to handle compact strings.
2911 (c4x_emit_char): Added new function argument to handle custom
2912 length inserts, like single-byte strings.
2913 * config/tc-tic4x.h: Add proper align handling with NOP's.
2914 * Makefile.am: Added tic4x dependecy
2915 * Makefile.in: Regenerate
2916
2917 2002-11-11 Hans-Peter Nilsson <hp@bitrange.com>
2918
2919 * macro.c (get_any_string): Correct logic for not going beyond end
2920 of in->ptr[].
2921
2922 2002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
2923
2924 * config/tc-mmix.c (get_putget_operands): Mark both possible
2925 operands as invalid at beginning.
2926
2927 * config/tc-mmix.c (md_convert_frag) <case STATE_GREG_DEF>:
2928 Initialize target of fixup to zero.
2929
2930 2002-11-07 Alexandre Oliva <aoliva@redhat.com>
2931
2932 * config/tc-mips.c (macro_build_lui): _gp_disp is not special on
2933 NEWABI, but we should still emit HI16_S for non-PIC n32.
2934
2935 2002-11-06 Richard Henderson <rth@redhat.com>
2936
2937 * config/tc-alpha.c (alpha_validate_fix): Move code ...
2938 (alpha_fix_adjustable): ... here.
2939 * config/tc-alpha.h (TC_VALIDATE_FIX): Remove.
2940
2941 2002-11-07 Eric Kohl <ekohl@rz-online.de>
2942
2943 * config/te-pe.h (LEX_AT): Accept at-sign (@) as first character
2944 of a label.
2945
2946 2002-11-05 H.J. Lu <hjl@gnu.org>
2947
2948 * config/tc-mips.c (support_64bit_objects): Check *l before it
2949 is freed.
2950
2951 2002-11-04 Danny Smith <dannysmith@users.sourceforge.net>
2952
2953 * config/obj-coff.c (obj-coff-section): Set SEC_DATA and
2954 SEC_LOAD flags for sections marked as 's'.
2955
2956 2002-11-01 Alan Modra <amodra@bigpond.net.au>
2957
2958 * write.c (TC_FORCE_RELOCATION_SUB_ABS): Default to zero.
2959 (TC_FORCE_RELOCATION_SUB_LOCAL): Likewise when DIFF_EXPR_OK.
2960 * doc/internals.texi (TC_FORCE_RELOCATION_SUB_ABS): Document changed
2961 default.
2962
2963 * dep-in.sed: Fix typo.
2964
2965 2002-10-30 Daniel Jacobowitz <drow@mvista.com>
2966
2967 * configure.in: Update ARM CPU patterns.
2968 * configure: Regenerated.
2969
2970 2002-10-29 Daniel Jacobowitz <drow@mvista.com>
2971
2972 * itbl-lex.l: Use #include <> for generated headers.
2973 * itbl-ops.c: Likewise.
2974
2975 2002-10-28 Daniel Jacobowitz <drow@mvista.com>
2976
2977 * doc/gasp.texi: Fix typo in deprecation note.
2978
2979 2002-10-23 Nick Clifton <nickc@redhat.com>
2980
2981 * config/tc-arm.c (tc_gen_reloc): Allow an absolute reference to
2982 _GLOBAL_TABLE_OFFSET_ to be converted into a GOT reloc.
2983
2984 2002-10-23 Hans-Peter Nilsson <hp@bitrange.com>
2985
2986 * config/tc-mmix.h (mmix_frob_file_before_adjust): Don't declare.
2987 (tc_frob_file_before_adjust): Don't define.
2988 * config/tc-mmix.c (mmix_frob_local_reloc): Remove unused
2989 function.
2990 (mmix_frob_file_before_adjust): Remove ineffective function.
2991
2992 2002-10-23 Hans-Peter Nilsson <hp@axis.com>
2993
2994 * config/tc-cris.c (SIMPLE_EXPR): New macro.
2995 (cris_relax_frag): New function.
2996 (md_estimate_size_before_relax) <case ENCODE_RELAX
2997 (STATE_BASE_PLUS_DISP_PREFIX, STATE_UNDF)>: Pass on unresolved
2998 expressions that will become absolute expressions to relaxation.
2999 (md_convert_frag) <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX,
3000 STATE_WORD)>: Expect only absolute expressions. Use the symbol
3001 value, not distance to symbol.
3002 <case ENCODE_RELAX (STATE_BASE_PLUS_DISP_PREFIX, STATE_BYTE)>:
3003 Ditto. Correct placement of fixup.
3004 (md_assemble): Use SIMPLE_EXPR when dissecting expressions.
3005 (gen_bdap): Ditto.
3006 * config/tc-cris.h (cris_relax_frag): Declare.
3007 (md_relax_frag): Define.
3008
3009 2002-10-22 Alan Modra <amodra@bigpond.net.au>
3010
3011 * config/obj-elf.c (special_sections): Use correct types for init
3012 array sections.
3013 (obj_elf_change_section): Don't mess with init array section type.
3014
3015 2002-10-21 Richard Sandiford <rsandifo@redhat.com>
3016
3017 * config/tc-mips.c (mips_need_elf_addend_fixup): Return true
3018 for relocs against symbols in a merged section.
3019
3020 2002-10-18 Alexandre Oliva <aoliva@redhat.com>
3021
3022 * config/tc-mips.c (md_begin): Add $fcc registers to the symbol
3023 table as register names.
3024
3025 2002-10-18 Ulrich Weigand <uweigand@de.ibm.com>
3026
3027 * config/tc-s390.c (md_parse_option): Set s390_arch_size to 32
3028 for option -m31.
3029
3030 2002-10-18 Svein E. Seldal <Svein.Seldal@solidas.com>
3031
3032 * expr.c (operand): Add support for n.nn flonums.
3033
3034 2002-10-17 Johannes Stezenbach <js@convergence.de>
3035
3036 * itbl-parse.y (entry): Provide empty action.
3037
3038 2002-10-16 Alan Modra <amodra@bigpond.net.au>
3039
3040 * configure.in (BFDVER_H): Set and subst.
3041 * dep-in.sed: Replace bfdver.h with $(BFDVER_H).
3042 * Makefile.am: Run "make dep-am".
3043 (BFDVER_H): Define.
3044 * configure: Regenerate.
3045 * Makefile.in: Regenerate.
3046 * doc/Makefile.in: Regenerate.
3047
3048 2002-10-15 Alan Modra <amodra@bigpond.net.au>
3049
3050 * config/tc-i386.h (EXTERN_FORCE_RELOC): Define.
3051 (MD_APPLY_SYM_VALUE): Define for PE too.
3052
3053 2002-10-14 Alan Modra <amodra@bigpond.net.au>
3054
3055 * Makefile.am: Run "make dep-am".
3056 (CPU_OBJ_VALID): sh64 coff is invalid.
3057 * as.c: #include "bfdver.h".
3058 * Makefile.in: Regenerate.
3059 * config.in: Regenerate.
3060
3061 2002-10-14 Momchil Velikov <velco@fadata.bg>
3062
3063 * config/tc-v850.c (CHECK_): Remove token pasting operator.
3064
3065 2002-10-14 Richard Sandiford <rsandifo@redhat.com>
3066
3067 * configure.in (mips64vr-elf, mips64vrel-elf): New config.
3068 * configure: Regenerate.
3069
3070 2002-10-13 Eric Christopher <echristo@redhat.com>
3071 Alexandre Oliva <aoliva@redhat.com>
3072
3073 * config/tc-mips.c (s_gpdword): New function.
3074 (mips_pseudo_table): Add .gpdword.
3075 (mips_need_elf_addend_fixup): never for NEWABI.
3076 (md_apply_fix3): Don't mark BFD_RELOC64 after GPREL16 or
3077 GPREL32 as done.
3078 (s_cpadd): Generate .cpadd on NEWABI.
3079
3080 2002-10-12 Elias Athanasopoulos <eathan@otenet.gr>
3081
3082 * config/tc-ppc.c (ppc_cleanup): Make 'i' unsigned int.
3083
3084 2002-10-12 Alexandre Oliva <aoliva@redhat.com>
3085
3086 * config/tc-mips.h (mips_relax_frag): Take segment as argument.
3087 (md_relax_frag): Adjust macro.
3088 * config/tc-mips.c (mips_relax_branch): New variable.
3089 (RELAX_BRANCH_ENCODE, RELAX_BRANCH_P, RELAX_BRANCH_LIKELY,
3090 RELAX_BRANCH_LINK, RELAX_BRANCH_TOOBAR): New.
3091 (RELAX_MIPS16_P): Adjust.
3092 (append_insn): Emit branch to non-constant in a frag_var if
3093 branch-relaxation is desirable and possible.
3094 (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH): New options.
3095 (OPTION_ELF_BASE): Adjust.
3096 (md_parse_option): Handle new options.
3097 (md_apply_fix3): Update comment on EMBEDDED_PIC conditional
3098 branch relaxation.
3099 (relaxed_branch_length): New function.
3100 (md_estimate_size_before_relax): Handle branch frags.
3101 (mips_relax_frag): Likewise.
3102 (md_convert_frag): Handle branch frags. Warn if branch is
3103 relaxed.
3104
3105 2002-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3106
3107 * config/tc-sh.c (sh_force_relocation): Make sure TLS relocs get
3108 emitted.
3109 (md_apply_fix3): Add TLS relocs.
3110 (sh_parse_name): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF and
3111 @DTPOFF.
3112
3113 2002-10-11 Michel Six <msix@ccr.jussieu.fr>
3114 Alan Modra <amodra@bigpond.net.au>
3115
3116 * config/tc-i386.c (output_jump): Set fx_signed for loop/jcxz.
3117 (md_estimate_size_before_relax): Likewise for 8 bit branches.
3118
3119 Thu Oct 10 14:31:30 2002 J"orn Rennecke <joern.rennecke@superh.com>
3120
3121 * config/tc-sh.c (assemble_ppi): Initialize reg_x / reg_y / reg_n
3122 inside loop.
3123
3124 2002-10-09 Richard Shann <richard.shann@superh.com>
3125 Stephen Clarke <stephen.clarke@superh.com>
3126
3127 * config/tc-sh64.c (sh64_target_format): Add support for sh64
3128 Linux environment.
3129
3130 2002-10-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3131
3132 * contig/tc-sh.c (sh_local_pcrel): New.
3133 (sh_force_relocation): Use sh_local_pcrel.
3134 (md_pcrel_from_section): Check the relocation type whether it
3135 should be resolved locally. Use S_FORCE_RELOC.
3136
3137 2002-10-01 Alan Modra <amodra@bigpond.net.au>
3138
3139 * config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Define.
3140 (TC_FORCE_RELOCATION): Tidy arg.
3141
3142 2002-09-30 Gavin Romig-Koch <gavin@redhat.com>
3143 Ken Raeburn <raeburn@cygnus.com>
3144 Aldy Hernandez <aldyh@redhat.com>
3145 DJ Delorie <dj@redhat.com>
3146 Michael Meissner <meissner@redhat.com>
3147 Eric Christopher <echristo@redhat.com>
3148 Richard Sandiford <rsandifo@redhat.com>
3149
3150 * doc/c-mips.texi: Add entries for -march=vr4120,vr4130,vr4181,
3151 vr5400 and vr5500. Add entry for -mfix-vr4122-bugs.
3152 * config/tc-mips.c (CPU_HAS_DROR, CPU_HAS_ROR): New macros.
3153 (hilo_interlocks): True for CPU_VR5500.
3154 (gpr_interlocks, cop_interlocks): True for CPU_VR5400 and CPU_VR5500.
3155 (mips_fix_vr4122_bugs): New.
3156 (append_insn): Work around 4122 errors if mips_fix_vr4122_bugs.
3157 (mips_emit_delays): Likewise.
3158 (macro2) [M_DROLI]: Use dror or dror32 if CPU_HAS_DROR.
3159 [M_ROLI]: Likewise ror if CPU_HAS_ROR.
3160 (validate_mips_insn, mips_ip): Handle '[', ']', 'e' and '%'.
3161 (OPTION_FIX_VR4122, OPTION_NO_FIX_VR4122): New options.
3162 (md_longopts): Add -mfix-vr4122-bugs and -no-mfix-vr4122-bugs.
3163 (OPTION_ELF_BASE): Bump.
3164 (md_parse_option): Handle the new options.
3165 (mips_cpu_info_table): Add entries for vr4120, vr4130, vr4181,
3166 vr5400 and vr5500.
3167
3168 2002-09-29 H.J. Lu <hjl@gnu.org>
3169
3170 * config/tc-mips.c (md_apply_fix3): Subtract the symbol value
3171 twice if howto->pcrel_offset is true.
3172
3173 2002-09-28 Matt Thomas <matt@3am-software.com>
3174 Jason Thorpe <thorpej@wasabisystems.com>
3175
3176 * config/tc-vax.c (md_estimate_size_before_relax): Only try to
3177 convert undefined references to GOT32/PLT32 if PIC code is
3178 requested. Fix comment.
3179
3180 2002-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3181
3182 * config/tc-sh.c (sh_force_relocation): Return 0 for
3183 some PC relative relocations when not relaxing.
3184
3185 2002-09-26 Jakub Jelinek <jakub@redhat.com>
3186
3187 * config/tc-i386.c (tc_i386_fix_adjustable): Add x86-64 TLS relocs.
3188 Define them if not BFD_ASSEMBLER.
3189 (lex_got): Handle @tlsgd, @dtpoff and @tpoff in 64-bit mode, add
3190 @tlsld.
3191 (md_apply_fix3): No addend for BFD_RELOC_X86_64_TLSGD,
3192 BFD_RELOC_X86_64_TLSLD and BFD_RELOC_X86_64_GOTTPOFF.
3193 (tc_gen_reloc): Handle x86-64 TLS relocs.
3194
3195 2002-09-27 Alan Modra <amodra@bigpond.net.au>
3196
3197 * config/tc-avr.c (md_apply_fix3): Reinstate code handling pcrel
3198 fixups to current or absolute section.
3199
3200 2002-09-26 Jim Wilson <wilson@redhat.com>
3201
3202 * config/tc-v850.c (v850_offset): Use frag_var instead of frag_now_fix
3203 and frag_more.
3204
3205 2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3206
3207 * config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16
3208 capable configuration.
3209 (macro_build): Check for MIPS16 capability, not for actual MIPS16 code
3210 generation.
3211 (mips_ip): Likewise.
3212
3213 2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3214
3215 * config/tc-mips.c (append_insn): Fix jump overflow check.
3216
3217 2002-09-24 Alan Modra <amodra@bigpond.net.au>
3218
3219 * config/tc-i386.c (process_operands): Warn about "lea" segment
3220 overrides.
3221
3222 2002-09-22 Mark Elbrecht <snowball3@softhome.net>
3223
3224 * write.c: Delete set_segment_vma and prototype. Update all callers.
3225
3226 2002-09-21 Alan Modra <amodra@bigpond.net.au>
3227
3228 * config/tc-i386.c (md_apply_fix3): Replace S_IS_EXTERNAL,
3229 S_IS_WEAK etc. with S_FORCE_RELOC call. Correct comment.
3230 Rename "fseg" to "sym_seg".
3231 * Makefile.am: Run "make dep-am".
3232 * Makefile.in: Regenerate.
3233 * doc/Makefile.in: Regenerate.
3234
3235 2002-09-20 Nick Clifton <nickc@redhat.com>
3236
3237 * symbols.c (colon): Do not allow symbols to be created in the
3238 absolute section if WORKING_DOT_WORD is not defined and
3239 new_broken_words would require a new frag to be created.
3240
3241 2002-09-20 Alan Modra <amodra@bigpond.net.au>
3242
3243 * expr.c (expr): Simplify foo-foo here.
3244 (clean_up_expression): Remove O_subtract code.
3245
3246 * write.h (struct fix): Add fx_dot_value.
3247 (dot_value): Declare.
3248 * write.c (dot_value): New var.
3249 (fix_new_internal): Save dot_value as fx_dot_value.
3250 (fixup_segment): Adjust fx_offset using fx_dot_value.
3251 * expr.c (expr): Update dot_value.
3252
3253 2002-09-19 Jakub Jelinek <jakub@redhat.com>
3254
3255 * config/tc-i386.c (tc_i386_fix_adjustable): Handle
3256 BFD_RELOC_386_TLS_IE and BFD_RELOC_386_TLS_GOTIE.
3257 (BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE): Define to 0
3258 if not defined.
3259 (lex_got): Handle @GOTNTPOFF and @INDNTPOFF.
3260 (md_apply_fix3, tc_gen_reloc): Handle BFD_RELOC_386_TLS_IE and
3261 BFD_RELOC_386_TLS_GOTIE.
3262
3263 2002-09-19 Richard Henderson <rth@redhat.com>
3264
3265 * config/tc-alpha.c (md_pcrel_from): Only adjust special for
3266 branch type relocs.
3267 (alpha_force_relocation): Don't special-case branch type relocs.
3268
3269 2002-09-19 Nick Clifton <nickc@redhat.com>
3270
3271 * config/tc-m68k.c (select_control_regs): Handle situation where
3272 architecture has not yet been selected.
3273
3274 2002-09-18 Chris Demetriou <cgd@broadcom.com>
3275
3276 * config/tc-mips.c (IS_SEXT_32BIT_NUM): Move closer to top of file.
3277 (IS_SEXT_16BIT_NUM): New macro.
3278 (macro_build_ldst_constoffset): New function, to build a set of
3279 instructions to do a load or store from a constant offset relative
3280 to a given register.
3281 (macro, s_cprestore): Use macro_build_ldst_constoffset to implement
3282 .cprestore pseudo-op.
3283
3284 2002-09-18 Chris Demetriou <cgd@broadcom.com>
3285
3286 * config/tc-mips.c (md_apply_fix3): Just return for BFD_RELOC_8.
3287
3288 2002-09-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3289
3290 * config/tc-mips.c (s_change_section): Fix parsing. Code cleanup.
3291
3292 2002-09-17 Stan Cox <scox@redhat.com>
3293
3294 * tc-mips.c (load_address): Use BFD_RELOC_MIPS_GOT_DISP for newabi.
3295 (macro): Likewise for la. Likewise for ld.
3296 (mips_after_parse_args): Make -xgot optional, not the default.
3297 (md_apply_fix3): Allow composite relocation to set up gp.
3298 (tc_gen_reloc): Allow relaxing for newabi.
3299 Relax R_MIPS_CALL16 to R_MIPS_GOT_PAGE/R_MIPS_GOT_OFST if local.
3300 Relax R_MIPS_GOT16/R_MIPS_LO16 to R_MIPS_GOT_DISP if local.
3301
3302 2002-09-17 Nick Clifton <nickc@redhat.com>
3303
3304 * config/tc-arm.c (md_apply_fix3): Note that an implemented
3305 BFD_RELOC_ARM_IMMEDIATE has been done.
3306 (tc_gen_reloc): Do not issue reloc number of unimplemented
3307 BFD_RELOC_ARM_IMMEDIATE and BFD_RELOC_ARM_OFFSET_IMM relocs -
3308 their name is already in the error message - plus remove them
3309 from the default case.
3310
3311 * config/tc-arm.c (do_ldmstm): Warn about unpredictable
3312 behavior of instructions.
3313
3314 2002-09-17 Svein E. Seldal <Svein.Seldal@solidas.com>
3315
3316 * config/tc-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
3317 Convert functions to K&R format.
3318
3319 2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3320
3321 * config/tc-mips.c (pdr_seg): Define only for ELF.
3322 (s_change_section): Remove unused variable. Don't use for nonELF.
3323
3324 2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3325
3326 * config/obj-elf.c (obj_elf_change_section): Move prototype to
3327 obj-elf.h
3328 * config/obj-elf.h (obj_elf_change_section): Likewise.
3329
3330 2002-09-16 Elias Athanasopoulos <eathan@otenet.gr>
3331
3332 * dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field.
3333 (out_debug_info): Likewise.
3334
3335 2002-09-16 Bruno Haible <bruno@clisp.org>
3336
3337 * config/tc-i386.h (ELF_TARGET_FORMAT): New macro.
3338 (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386".
3339 * config/tc-i386.c (i386_target_format): Likewise.
3340 * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro.
3341 (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha".
3342
3343 2002-09-13 Nick Clifton <nickc@redhat.com>
3344
3345 * config/tc-ppc.c (md_assemble): Do not count FAKE operands
3346 when deciding if any operands have been skipped.
3347
3348 2002-09-11 Nick Clifton <nickc@redhat.com>
3349
3350 * NEWS: New TI port supports both C4x and C3x series of DSPs.
3351
3352 * po/tr.po: Updated Turkish translation.
3353
3354 2002-09-11 Jakub Jelinek <jakub@redhat.com>
3355
3356 * config/tc-i386.c (md_apply_fix3): Allow addend for
3357 BFD_RELOC_386_TLS_LDO_32, BFD_RELOC_386_TLS_LE and
3358 BFD_RELOC_386_TLS_LE_32.
3359
3360 2002-09-05 Jeff Law <law@redhat.com>
3361
3362 * config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
3363 marker relocations such as ENTRY/EXIT.
3364 * config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
3365 to both OBJ_ELF and OBJ_SOM.
3366
3367 2002-09-05 Alan Modra <amodra@bigpond.net.au>
3368
3369 * doc/internals.texi (md_apply_fix3): Expand.
3370 (TC_VALIDATE_FIX, TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_ABS,
3371 TC_FORCE_RELOCATION_LOCAL, TC_FORCE_RELOCATION_SUB_SAME,
3372 TC_FORCE_RELOCATION_SUB_ABS, TC_FORCE_RELOCATION_SUB_LOCAL,
3373 TC_VALIDATE_FIX_SUB, MD_APPLY_SYM_VALUE, S_FORCE_RELOC,
3374 EXTERN_FORCE_RELOC): Document.
3375 (TC_HANDLES_FX_DONE, obj_fix_adjustable): Remove.
3376 * as.h: Don't include struc-symbol.h for arc.
3377 (IS_ELF): Define.
3378 * cgen.c (gas_cgen_md_apply_fix3): Remove *valP fudges and code to
3379 subtract absolute symbol.
3380 * obj.h (struct format_ops): Add frob_file_before_fix.
3381 * subsegs.c (section_symbol): Set BSF_SECTION_SYM flag.
3382 * symbols.c (S_FORCE_RELOC): New function.
3383 * symbols.h (S_FORCE_RELOC): Declare.
3384 * write.c (TC_FORCE_RELOCATION): Change default.
3385 (TC_FORCE_RELOCATION_ABS): Define.
3386 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3387 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3388 (TC_FORCE_RELOCATION_SECTION): Don't define.
3389 (TC_FORCE_RELOCATION_SUB_SAME): Define this instead.
3390 (TC_FORCE_RELOCATION_SUB_ABS): Define.
3391 (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
3392 (TC_VALIDATE_FIX_SUB): Define.
3393 (TC_FIX_ADJUSTABLE): Don't define.
3394 (MD_APPLY_SYM_VALUE): Define this instead.
3395 (abs_section_sym): New variable.
3396 (adjust_reloc_syms): Use S_FORCE_RELOC. Remove obj_fix_adjustable
3397 call. Don't symbol_mark_used_in_reloc here. Simplify link_once tests.
3398 Don't put the absolute section sym on fixups here.
3399 (fix_segment): New function.
3400 (write_relocs): Don't call fixup_segment from here.
3401 (write_object_file): Instead call tc_frob_file_before_fix,
3402 obj_frob_file_before_fix, and fix_segment prior to symbol table code.
3403 Don't output the absolute section symbol.
3404 (fixup_segment): Rewrite.
3405 * write.h (abs_section_sym): Declare.
3406 * config/obj-aout.c (obj_aout_frob_file_before_fix): Rename from
3407 obj_aout_frob_file.
3408 (aout_format_ops): Adjust to suit.
3409 * config/obj-aout.h (obj_frob_file): Don't define.
3410 (obj_frob_file_before_fix): Define.
3411 (obj_aout_frob_file_before_fix): Rename from obj_aout_frob_file.
3412 (S_FORCE_RELOC): Define.
3413 * config/obj-bout.h (S_FORCE_RELOC): Define.
3414 * config/obj-coff.c (coff_format_ops): Init new field.
3415 * config/obj-coff.h: Formatting fixes.
3416 (obj_sec_sym_ok_for_reloc): Define.
3417 (S_FORCE_RELOC): Define.
3418 * config/obj-ecoff.c (ecoff_frob_file_before_fix): Split out ..
3419 (ecoff_frob_file): .. from here.
3420 (ecoff_format_ops): Add new function.
3421 * config/obj-ecoff.h (ecoff_frob_file_before_fix): Declare.
3422 (obj_frob_file_before_fix): Define.
3423 * config/obj-elf.c (elf_format_ops): Init new field.
3424 * config/obj-elf.h (obj_sec_sym_ok_for_reloc): Expand comment.
3425 * config/obj-ieee.h: Formatting fixes.
3426 (S_FORCE_RELOC): Define.
3427 * config/obj-multi.h (obj_frob_file_before_fix): Define.
3428 * config/obj-vms.h (S_FORCE_RELOC): Define.
3429 * config/tc-alpha.c (md_apply_fix3): Correct GPDISP comment.
3430 (alpha_force_relocation): Use S_FORCE_RELOC, and don't return 0
3431 for BFD_RELOC_32 and BFD_RELOC_64.
3432 (alpha_fix_adjustable): Remove extern and weak tests.
3433 (alpha_before_fix): Rename from alpha_adjust_symtab.
3434 (alpha_adjust_relocs): Rename from alpha_adjust_symtab_relocs.
3435 * config/tc-alpha.h (struct fix, struct alpha_reloc_tag): Declare.
3436 (TC_VALIDATE_FIX): Tweak param name.
3437 (TC_FORCE_RELOCATION, tc_fix_adjustable): Likewise.
3438 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3439 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3440 (MD_APPLY_SYM_VALUE): Define.
3441 (tc_adjust_symtab): Don't define.
3442 (alpha_adjust_symtab): Don't declare.
3443 (tc_frob_file_before_fix): Define.
3444 (alpha_before_fix): Declare.
3445 (TC_INIT_FIX_DATA): Tweak param names.
3446 * config/tc-arc.c: Include "struc-symbol.h".
3447 (md_pcrel_from): Remove undefined sym fudge.
3448 (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
3449 Don't set fx_addnumber.
3450 (tc_gen_reloc): Remove spurious fx_addnumber comment.
3451 * config/tc-arc.h (MD_APPLY_SYM_VALUE): Define.
3452 (EXTERN_FORCE_RELOC): Define.
3453 * config/tc-arm.c (md_apply_fix3 <case BFD_RELOC_ARM_GOTPC>): Remove.
3454 (tc_gen_reloc): Fudge ARM_GOTPC addend.
3455 (arm_validate_fix): Return void.
3456 (arm_fix_adjustable <elf version>): Remove extern and weak tests.
3457 Add plt and got reloc tests.
3458 (arm_force_relocation): Call S_FORCE_RELOC.
3459 * config/tc-arm.h (struct fix): Forward declare.
3460 (TC_VALIDATE_FIX): No longer set add_symbolP.
3461 (arm_validate_fix): Adjust declaration.
3462 (TC_FORCE_RELOCATION <pe version): Call S_FORCE_RELOC.
3463 (TC_FORCE_RELOCATION): Tweak param name.
3464 (TC_INIT_FIX_DATA): Likewise.
3465 (obj_fix_adjustable): Don't define.
3466 (tc_fix_adjustable): Call arm_fix_adjustable.
3467 (TC_FIX_ADJUSTABLE): Don't define.
3468 (MD_APPLY_SYM_VALUE): Define.
3469 (EXTERN_FORCE_RELOC): Define.
3470 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3471 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3472 * config/tc-avr.c (md_apply_fix3): Don't cast valP pointer type.
3473 Remove *valP fudges and code to subtract abs sym. Don't set
3474 fx_addnumber.
3475 * config/tc-avr.h: Formatting.
3476 (EXTERN_FORCE_RELOC): Define.
3477 (MD_APPLY_SYM_VALUE): Define.
3478 * config/tc-cris.c (tc_gen_reloc): Don't use fx_addnumber.
3479 (md_apply_fix3): Remove code to subtract abs sym.
3480 (md_cris_force_relocation): Update comment. Call S_FORCE_RELOC.
3481 * config/tc-cris.h (TC_FORCE_RELOCATION): Tweak param name.
3482 (IS_CRIS_PIC_RELOC, tc_fix_adjustable): Likewise.
3483 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3484 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3485 (tc_fix_adjustable): Remove extern, weak tests.
3486 * config/tc-d10v.c (tc_gen_reloc): Don't fiddle address of
3487 BFD_RELOC_VTABLE_INHERIT relocs. Don't use fx_addnumber.
3488 (md_apply_fix3): Don't cast valP pointer type. Remove *valP fudges
3489 and code to subtract abs sym.
3490 (d10v_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
3491 (d10v_force_relocation): Call S_FORCE_RELOC.
3492 * config/tc-d10v.h: Don't include write.h.
3493 (struct fix): Instead, forward declare.
3494 (MD_PCREL_FROM_SECTION): Tweak param names.
3495 (md_pcrel_from_section): Use "struct fix" instead of "fixS".
3496 (d10v_fix_adjustable): Likewise.
3497 (obj_fix_adjustable): Don't define.
3498 (tc_fix_adjustable): Define.
3499 (TC_FORCE_RELOCATION): Tweak param name.
3500 (MD_APPLY_SYM_VALUE): Define.
3501 (EXTERN_FORCE_RELOC): Define.
3502 * config/tc-d30v.c (tc_gen_reloc): Don't use fx_addnumber.
3503 (md_apply_fix3): Don't cast valP pointer type. Remove *valP fudges
3504 and code to subtract abs sym.
3505 * config/tc-d30v.h: Don't include write.h.
3506 (struct fix): Instead, forward declare.
3507 (MD_PCREL_FROM_SECTION): Tweak param names.
3508 (md_pcrel_from_section): Use "struct fix" instead of "fixS".
3509 (MD_APPLY_SYM_VALUE): Define.
3510 (EXTERN_FORCE_RELOC): Define.
3511 * config/tc-dlx.c (md_dlx_force_relocation): Call S_FORCE_RELOC.
3512 (md_dlx_fix_adjustable): Don't test for NULL fx_addsy.
3513 (md_apply_fix3): No need to test fx_pcrel before setting fx_done.
3514 (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
3515 Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
3516 Don't use fx_addnumber.
3517 * config/tc-dlx.h: Don't include write.h.
3518 (md_convert_frag): We're not alpha twice over.
3519 (EXTERN_FORCE_RELOC): Define.
3520 (obj_fix_adjustable): Don't define.
3521 (tc_fix_adjustable): Define.
3522 (TC_FIX_ADJUSTABLE): Don't define.
3523 (MD_APPLY_SYM_VALUE): Define.
3524 (LOCAL_LABELS_DOLLAR): Undef always.
3525 * config/tc-fr30.c (fr30_force_relocation): Call S_FORCE_RELOC.
3526 (fr30_fix_adjustable): Remove extern, weak tests.
3527 * config/tc-fr30.h (MD_APPLY_SYM_VALUE): Define.
3528 (obj_fix_adjustable): Don't define.
3529 (tc_fix_adjustable): Define.
3530 (struct fix): Forward declare.
3531 (MD_PCREL_FROM_SECTION): Tweak param name. Remove duplicate.
3532 * config/tc-frv.c (frv_force_relocation): Call S_FORCE_RELOC.
3533 (frv_fix_adjustable): Don't do extern, weak tests.
3534 * config/tc-frv.h (MD_APPLY_SYM_VALUE): Define.
3535 (TC_FIX_ADJUSTABLE): Don't define.
3536 (obj_fix_adjustable): Don't define.
3537 (tc_fix_adjustable): Define.
3538 (struct fix): Forward declare.
3539 (MD_PCREL_FROM_SECTION): Tweak param name. Remove duplicate.\
3540 * config/tc-h8300.c (md_apply_fix3): Don't cast valP pointer type.
3541 * config/tc-h8300.h (struct fix): Forward declare.
3542 (EXTERN_FORCE_RELOC): Define.
3543 * config/tc-hppa.c (md_apply_fix3): Remove subtraction of sym value.
3544 (hppa_fix_adjustable): Don't test extern or weak. Don't
3545 symbol_mark_used_in_reloc.
3546 (hppa_force_relocation): Use S_FORCE_RELOC instead of S_IS_EXTERNAL
3547 and S_IS_WEAK.
3548 * config/tc-hppa.h (EXTERN_FORCE_RELOC): Define
3549 (TC_FORCE_RELOCATION, TC_INIT_FIX_DATA): Tweak param name.
3550 (TC_FORCE_RELOCATION_SECTION): Don't define.
3551 (MD_APPLY_SYM_VALUE): Define.
3552 * config/tc-i370.c (md_apply_fix3): Remove *valP fudges and code
3553 to subtract abs sym.
3554 * config/tc-i370.h: Remove ifdef OBJ_ELF tests.
3555 (MD_APPLY_SYM_VALUE): Define.
3556 (MD_PCREL_FROM_SECTION): Tweak param name.
3557 * config/tc-i386.c (tc_i386_fix_adjustable): Remove weak, extern tests.
3558 (md_apply_fix3): Test fx_addsy, not fx_pcrel.
3559 (i386_force_relocation): New function.
3560 * config/tc-i386.h (TC_COFF_FIX2RTYPE): Tweak param name.
3561 (TC_VALIDATE_FIX): Likewise.
3562 (TC_FIX_ADJUSTABLE): Don't define.
3563 (MD_APPLY_SYM_VALUE): Define.
3564 (TC_FORCE_RELOCATION <elf version>): Call i386_force_relocation.
3565 (i386_force_relocation): Declare.
3566 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3567 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3568 (TC_FORCE_RELOCATION <coff version>): Call S_FORCE_RELOC.
3569 * config/tc-i860.c (md_apply_fix3): Don't cast valP pointer type.
3570 * config/tc-i860.h (MD_APPLY_SYM_VALUE): Define.
3571 (EXTERN_FORCE_RELOC): Define.
3572 * config/tc-i960.c (reloc_callj): Remove declaration. Return false.
3573 (md_apply_fix3): Don't cast valP pointer type. Move code here from
3574 old fixup_segment. No need to test fx_pcrel before setting fx_done.
3575 (i960_validate_fix): Remove add_symbolPP arg and add_symbolP macro.
3576 Use fx_addsy instead of add_symbolP, as_bad_where instead of as_bad.
3577 Remove #if 0 code. Invert return boolean.
3578 * config/tc-i960.h (TC_COUNT_RELOC): Tweak param name.
3579 (TC_COFF_FIX2RTYPE, TC_ADJUST_RELOC_COUNT, TC_VALIDATE_FIX): Likewise.
3580 (tc_headers_hook, tc_coff_fix2rtype): Remove declaration.
3581 (tc_coff_sizemachdep): Prototype.
3582 (i960_handle_align): Likewise.
3583 (i960_validate_fix): Adjust declaration.
3584 (reloc_callj): Likewise.
3585 (EXTERN_FORCE_RELOC): Define.
3586 (TC_FORCE_RELOCATION_SUB_SAME): Define.
3587 (TC_FORCE_RELOCATION_ABS): Define.
3588 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3589 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3590 (TC_FIX_ADJUSTABLE): Don't define.
3591 (MD_APPLY_SYM_VALUE): Define.
3592 * config/tc-ia64.c (ia64_force_relocation): Call S_FORCE_RELOC.
3593 * config/tc-ia64.h (MD_APPLY_SYM_VALUE): Define.
3594 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3595 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3596 * config/tc-ip2k.c (ip2k_force_relocation): Call S_FORCE_RELOC.
3597 * config/tc-ip2k.h (MD_APPLY_FIX3): Don't define.
3598 (MD_APPLY_SYM_VALUE): Define.
3599 (EXTERN_FORCE_RELOC): Define.
3600 (TC_FORCE_RELOCATION): Tweak param name.
3601 * config/tc-m32r.c (m32r_force_relocation): Call S_FORCE_RELOC.
3602 (m32r_fix_adjustable): Don't test extern, weak.
3603 * config/tc-m32r.h (MD_PCREL_FROM_SECTION): Tweak param name.
3604 (MD_APPLY_SYM_VALUE): Define.
3605 (obj_fix_adjustable): Don't define.
3606 (tc_fix_adjustable): Define.
3607 (tc_frob_file): Don't define.
3608 (tc_frob_file_before_fix): Define.
3609 (EXTERN_FORCE_RELOC): Define.
3610 * config/tc-m68hc11.c (tc_gen_reloc): Set addend to zero. Adjust
3611 BFD_RELOC_VTABLE_ENTRY address.
3612 (tc_m68hc11_force_relocation): Call S_FORCE_RELOC.
3613 (tc_m68hc11_fix_adjustable): Don't test relaxable_symbol.
3614 (md_apply_fix3): Remove *valP fudges and code to subtract abs sym.
3615 Remove duplicated fx_done code.
3616 * config/tc-m68hc11.h (MD_APPLY_SYM_VALUE): Define.
3617 (EXTERN_FORCE_RELOC): Define.
3618 * config/tc-m68k.c (tc_m68k_fix_adjustable): Don't test
3619 relaxable_symbol.
3620 * config/tc-m68k.h (TC_COFF_FIX2RTYPE): Tweak param name.
3621 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3622 (TC_FIX_ADJUSTABLE): Don't define.
3623 (EXTERN_FORCE_RELOC): Define.
3624 (MD_APPLY_SYM_VALUE): Define.
3625 (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
3626 * config/tc-mcore.c (md_apply_fix3): Don't cast valP pointer type.
3627 Remove fx_addsy tests.
3628 (mcore_force_relocation): Call S_FORCE_RELOC.
3629 (mcore_fix_adjustable): Don't test fx_addsy.
3630 * config/tc-mcore.h (MD_PCREL_FROM_SECTION): Tweak param name.
3631 (EXTERN_FORCE_RELOC): Define.
3632 (obj_fix_adjustable): Don't define.
3633 (tc_fix_adjustable): Define.
3634 (MD_APPLY_SYM_VALUE): Define.
3635 * config/tc-mips.c (enum mips_pic_level): Move to tc-mips.h.
3636 (mips_pic): No longer static.
3637 (mips_force_relocation): Call S_FORCE_RELOC.
3638 (mips_fix_adjustable): Remove extern, weak tests.
3639 * config/tc-mips.h (enum mips_pic_level): Declare.
3640 (mips_pic): Declare.
3641 (tc_frob_file): Don't define.
3642 (tc_frob_file_before_fix): Define this instead.
3643 (EXTERN_FORCE_RELOC): Define.
3644 * config/tc-mmix.c (md_apply_fix3): Replace real_reg_section tests
3645 with reg_section tests. Set fx_done instead of calling
3646 symbol_clear_used_in_reloc on bad relocs.
3647 (tc_gen_reloc): Zero fx_addsy on bad relocs.
3648 (mmix_force_relocation): Remove weak sym test. Call S_FORCE_RELOC.
3649 (mmix_adjust_symtab): Simplify list handling. Abort on any
3650 nonsense.
3651 * config/tc-mmix.h (tc_fix_adjustable): Remove weak tests. Check
3652 BFD_RELOC_MMIX_LOCAL.
3653 (tc_frob_symbol): Keep user defined syms in reg_section. Don't punt.
3654 (EXTERN_FORCE_RELOC): Define.
3655 (MD_PCREL_FROM_SECTION): Tweak param name.
3656 (tc_frob_file): Don't define.
3657 (tc_frob_file_before_fix): Define this instead.
3658 * config/tc-mn10300.c (mn10300_force_relocation): Call S_FORCE_RELOC.
3659 Remove SEC_CODE checks.
3660 (mn10300_fix_adjustable): Remove extern and weak tests.
3661 * config/tc-mn10300.h (EXTERN_FORCE_RELOC): Define.
3662 (TC_FORCE_RELOCATION): Tweak param name.
3663 (obj_fix_adjustable): Don't define.
3664 (TC_FORCE_RELOCATION_SUB_SAME): Define to handle SEC_CODE.
3665 * config/tc-ns32k.h (TC_FIX_DATA_PRINT): Tweak param name.
3666 * config/tc-openrisc.c (openrisc_force_relocation): Call S_FORCE_RELOC.
3667 (openrisc_fix_adjustable): Don't test fx_addsy.
3668 * config/tc-openrisc.h (MD_APPLY_SYM_VALUE): Define.
3669 (obj_fix_adjustable): Don't define.
3670 (tc_fix_adjustable): Define this instead.
3671 (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
3672 * config/tc-or32.c (md_apply_fix3): Don't cast valP pointer type.
3673 (tc_gen_reloc): Don't fiddle with BFD_RELOC_VTABLE_INHERIT relocs.
3674 Adjust the address for BFD_RELOC_VTABLE_ENTRY, not the addend.
3675 * config/tc-or32.h (EXTERN_FORCE_RELOC): Define.
3676 (MD_APPLY_SYM_VALUE): Define.
3677 * config/tc-pj.c (md_apply_fix3): Don't cast valP pointer type.
3678 Don't subtract symbol value.
3679 * config/tc-pj.h (md_pcrel_from): Tweak param name.
3680 (EXTERN_FORCE_RELOC): Define.
3681 (TC_FORCE_RELOCATION): Call S_FORCE_RELOC.
3682 (MD_APPLY_SYM_VALUE): Define.
3683 (obj_fix_adjustable): Don't define.
3684 (tc_fix_adjustable): Define this instead.
3685 * config/tc-ppc.c (ppc_frob_symbol <coff version>): Ignore absolute
3686 section sym.
3687 (ppc_force_relocation <coff version>): Call S_FORCE_RELOC.
3688 (ppc_force_relocation <elf version>): New.
3689 (ppc_fix_adjustable <elf version>): Remove extern and weak tests.
3690 (md_apply_fix3): Don't subtract symbol values for ELF. Update
3691 comments. Don't subtract fx_subsy as that is already done.
3692 * config/tc-ppc.h (tc_fix_adjustable): Tweak param name.
3693 (MD_PCREL_FROM_SECTION): Likewise.
3694 (TC_FORCE_RELOCATION): Define for both ELF and XCOFF as calling
3695 ppc_force_relocation.
3696 (TC_FORCE_RELOCATION_SECTION): Delete.
3697 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3698 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3699 (MD_APPLY_SYM_VALUE): Define.
3700 * config/tc-s390.c: #include "dwarf2dbg.h".
3701 (s390_insn): Remove excess parens.
3702 (tc_s390_fix_adjustable): Remove extern, weak, SEC_MERGE tests.
3703 (tc_s390_force_relocation): Call S_FORCE_RELOC.
3704 (md_apply_fix3): Add ATTRIBUTE_UNUSED on "seg". Abort when fx_subsy
3705 non-NULL. Don't subtract off fx_addsy value.
3706 * config/tc-s390.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3707 (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
3708 (TC_FIX_ADJUSTABLE): Don't define.
3709 (MD_APPLY_SYM_VALUE): Define.
3710 * config/tc-sh.c (SWITCH_TABLE_CONS): Move to tc-sh.h.
3711 (SWITCH_TABLE): Likewise.
3712 (sh_force_relocation): Call S_FORCE_RELOC.
3713 (sh_fix_adjustable): Remove "return 1" cases handled by the default.
3714 Replace TC_RELOC_RTSYM_LOC_FIXUP with reloc type tests.
3715 (md_apply_fix3 <case BFD_RELOC_32_PLT_PCREL>): Simplify,
3716 fx_addnumber is zero on entry. Save val in fx_addnumber.
3717 (tc_gen_reloc): Don't subtract fx_subsy.
3718 * config/tc-sh.h (struct fix): Move.
3719 (obj_fix_adjustable): Don't define.
3720 (tc_fix_adjustable): Define this instead.
3721 (TC_FIX_ADJUSTABLE): Don't define.
3722 (MD_APPLY_SYM_VALUE): Define.
3723 (SWITCH_TABLE_CONS): Define.
3724 (SWITCH_TABLE): Define.
3725 (TC_FORCE_RELOCATION_SUB_SAME): Define.
3726 (TC_VALIDATE_FIX_SUB): Define.
3727 (MD_PCREL_FROM_SECTION): Tweak param name.
3728 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3729 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3730 (TC_FORCE_RELOCATION_SUB_ABS): Define.
3731 * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3732 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3733 (TC_FORCE_RELOCATION_SUB_SAME): Define.
3734 (TC_VALIDATE_FIX_SUB): Define.
3735 (MD_PCREL_FROM_SECTION): Tweak param name.
3736 * config/tc-sparc.c (md_apply_fix3): Don't subtract off symbol value.
3737 (tc_gen_reloc): Use S_FORCE_RELOC.
3738 (elf32_sparc_force_relocation): Call S_FORCE_RELOC.
3739 * config/tc-sparc.h (TC_FORCE_RELOCATION <coff version>): Remove.
3740 (TC_FORCE_RELOCATION_ABS): Define this instead.
3741 (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3742 (TC_FORCE_RELOCATION_LOCAL): Define this instead.
3743 (tc_fix_adjustable): Remove extern and weak tests. Use S_FORCE_RELOC.
3744 (MD_APPLY_SYM_VALUE): Define.
3745 (TC_FIX_DATA_PRINT): Tweak param name.
3746 * config/tc-tic30.c (USE_STDOUT): Don't define.
3747 (md_parse_option): Remove stupid debug code.
3748 (tc_gen_reloc): Don't use fx_addnumber.
3749 * config/tc-v850.c (v850_fix_adjustable): Remove extern and weak tests.
3750 (v850_force_relocation): Remove weak test. Call S_FORCE_RELOC.
3751 * config/tc-v850.h (obj_fix_adjustable): Don't define.
3752 (tc_fix_adjustable): Define this instead.
3753 (TC_FIX_ADJUSTABLE): Don't define.
3754 (MD_APPLY_SYM_VALUE): Define this instead.
3755 (TC_FORCE_RELOCATION, MD_PCREL_FROM_SECTION): Tweak param name.
3756 * config/tc-vax.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't define.
3757 (TC_FIX_ADJUSTABLE): Don't define.
3758 (MD_APPLY_SYM_VALUE): Define this instead.
3759 (tc_fix_adjustable): Remove extern and weak tests.
3760 * config/tc-w65.h (struct fix): Forward declare.
3761 * config/tc-xstormy16.c (xstormy16_force_relocation): Call
3762 S_FORCE_RELOC.
3763 (xstormy16_fix_adjustable): Remove extern and weak tests. Don't
3764 call xstormy16_force_relocation; Instead test for FPTR16 reloc.
3765 (xstormy16_md_apply_fix3): Remove *valP fudges and code to subtract
3766 absolute symbol.
3767 * config/tc-xstormy16.h (MD_APPLY_FIX3): Don't define.
3768 (MD_APPLY_SYM_VALUE): Define.
3769 (obj_fix_adjustable): Don't define.
3770 (tc_fix_adjustable): Define this instead.
3771 (MD_PCREL_FROM_SECTION): Remove duplicate. Tweak param name.
3772
3773 2002-09-04 Alan Modra <amodra@bigpond.net.au>
3774
3775 * config/tc-ppc.c (ppc_frob_symbol): Formatting, warning fix.
3776 (ppc_fix_adjustable <coff version>): Cleanup.
3777
3778 * config/tc-ppc.c (PPC_HIGHER, PPC_HIGHEST): Fix warning.
3779 (md_parse_option): No -a64 without BFD64.
3780 (ppc_set_cpu): Select appropriate cpu when ppc_obj64.
3781 (ppc_arch): Use bfd_mach_rs6k for bfd_arch_rs6000.
3782
3783 2002-09-04 Nick Clifton <nickc@redhat.com>
3784
3785 * config/tc-ppc.c (md_begin): Do not insert non-BookE32
3786 instructions into the hash table if the target cpu is the BookE32.
3787
3788 2002-08-31 Hans-Peter Nilsson <hp@bitrange.com>
3789
3790 * read.c (do_align): Use ATTRIBUTE_UNUSED_LABEL for label, not
3791 ATTRIBUTE_UNUSED.
3792
3793 2000-08-28 Catherine Moore <clm@redhat.com>
3794
3795 * tc-v850.c (v850_relax): Declare.
3796 (v850_longcode): New routine.
3797 (v850_handle_align): New routine.
3798 (md_pseudo_table): Add longcall and longjump.
3799 (md_parse_option): Check for relax option.
3800 (tc_gen_reloc): Handle BFD_RELOC_V850_LONGCALL,
3801 BFD_RELOC_V850_LONGJUMP, and BFD_RELOC_V850_ALIGN.
3802 (md_apply_fix3): Likewise.
3803 (v850_force_relocation): Likewise.
3804 (v850_comm): Change the current section.
3805 (md_assemble): Ensure that the correct value is put in the
3806 fixup.
3807 (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
3808 v850_zbss, v850_rosdata, v850_rozdata): Fix section book keeping.
3809 Remove redundant v850ea support.
3810 * tc-v850.h (HANDLE_ALIGN): Define.
3811 (v850_handle_align): Declare.
3812 * doc/c-v850.c: Document -mrelax, .longcall and .longjump.
3813
3814 2002-08-28 Svein E. Seldal <Svein.Seldal@solidas.com>
3815
3816 * configure.in: Add tic4x-coff* and c4x-coff*-coff-coff targets.
3817 * configure: Regenerate.
3818 * NEWS: Mention new port.
3819
3820 2002-08-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
3821
3822 * config/obj-coff.c: Add sdef definition.
3823 * config/obj-coff.h: Add tic4x include file and set
3824 target format.
3825 * config/tc-tic4x.c: New file.
3826 * config/tc-tic4x.h: New file.
3827
3828 2002-08-28 Alan Modra <amodra@bigpond.net.au>
3829
3830 * write.c (BFD_FAST_SECTION_FILL): Remove unused macro.
3831 (TC_ADJUST_RELOC_COUNT): Tweak param name.
3832 (TC_FORCE_RELOCATION, TC_FORCE_RELOCATION_SECTION): Likewise.
3833 (TC_FIX_ADJUSTABLE, MD_PCREL_FROM_SECTION): Likewise.
3834 (RELOC_ENUM): Define.
3835 (fix_new_internal): Use RELOC_ENUM.
3836 (fix_new, fix_new_exp): Likewise.
3837 (adjust_reloc_syms): Comment. Remove unnecessary tests on sym != NULL.
3838 Replace gotos with continue.
3839 (write_relocs): Formatting. Avoid symbol loops in
3840 RELOC_EXPANSION_POSSIBLE case too. Report bfd_reloc_outofrange
3841 errors, and error number in other cases.
3842 (fixup_segment): Remove param names from prototype. Rename
3843 "this_segment_type" to "this_segment". Update linkrelax comment.
3844 Remove "size, "place" and "where" local vars. Formatting. Update
3845 "no symbol" comment. Remove #if 0 and #if 1.
3846
3847 * app.c (do_scrub_chars): Don't test IGNORE_NONSTANDARD_ESCAPES. Tidy.
3848
3849 2002-08-27 Alan Modra <amodra@bigpond.net.au>
3850
3851 * dwarf2dbg.c: Always include dwarf2dbg.h.
3852 (dwarf2_directive_file): Adjust dummy version args.
3853 * ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED.
3854 * expr.c (clean_up_expression <O_subtract>): Allow subtraction
3855 when symbol values differ.
3856 * read.c (do_align): Add ATTRIBUTE_UNUSED to label.
3857 (pseudo_set <O_subtract>): Remove unnecessary segment test.
3858 * config/obj-bout.c (obj_pseudo_table): Warning fix.
3859
3860 2002-08-26 Alan Modra <amodra@bigpond.net.au>
3861
3862 * config/tc-w65.c (md_section_align): Fix typo.
3863 (md_parse_option): Return 0, not 1.
3864
3865 2002-08-22 Nick Clifton <nickc@redhat.com>
3866
3867 * doc/as.texinfo (Section): Note that if '@' is a comment
3868 character then another symbol is used to prefix the section's
3869 type.
3870
3871 2002-08-22 Christian Groessler <chris@groessler.org>
3872
3873 * config/tc-z8k.c (get_operands): Adjust ptr variable also in
3874 "case 0" case.
3875
3876 2002-08-12 Graeme Peterson <gp@qnx.com>
3877
3878 * configure.in: Add support for sh-**-nto* target.
3879 * configure: Regenerate.
3880
3881 2002-08-21 Nitin Gupta <niting@noida.hcltech.com>
3882
3883 * config/tc-h8300.h (TC_LINKRELAX_FIXUP): Define.
3884
3885 2002-08-21 Elena Zannoni <ezannoni@redhat.com>
3886
3887 * config/tc-ppc.c (ppc_cleanup): Do something only if format
3888 is ELF.
3889 (ppc_apuinfo_section_add): Define only if format is ELF.
3890 (md_assemble): Emit APUinfo section only if format is ELF.
3891 Fix formatting.
3892
3893 2002-08-21 Alan Modra <amodra@bigpond.net.au>
3894
3895 * config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast.
3896 * config/tc-frv.c: Likewise.
3897 * config/tc-hppa.c: Likewise.
3898 * config/tc-ia64.c: Likewise.
3899 * config/tc-ip2k.c: Likewise.
3900 * config/tc-m68hc11.c: Likewise.
3901 * config/tc-m68k.c: Likewise.
3902 * config/tc-mmix.c: Likewise.
3903 * config/tc-mn10300.c: Likewise.
3904 * config/tc-sh.c: Likewise.
3905 * config/tc-sparc.c: Likewise.
3906 * config/tc-v850.c: Likewise.
3907
3908 2002-08-20 Richard Sandiford <rsandifo@redhat.com>
3909
3910 * config/tc-mips.c (macro2): Implement rotates by zero using shifts
3911 by zero.
3912
3913 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
3914
3915 From matthew green <mrg@redhat.com>
3916
3917 * config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere
3918 PPC_OPCODE_PPC is, except for BookE architectures.
3919 (md_parse_option): Add support for -mspe.
3920 (md_show_usage): Add -mspe.
3921 (md_parse_option): Add support for -me500 and
3922 -me500x2 to generate code for Motorola e500 core complex.
3923 (md_show_usage): Add -me500 and -me500x2.
3924
3925 (PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI,
3926 PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS,
3927 PPC_APUINFO_BRLOCK): New macros.
3928
3929 (ppc_cleanup): New function.
3930 (ppc_apuinfo_section_add): New function.
3931 (APUID): New macro.
3932 (md_assemble): Collect info and write the APUinfo section.
3933
3934 * config/tc-ppc.h (md_cleanup): Define.
3935 (ppc_cleanup): Export.
3936 (ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section.
3937
3938 2002-08-17 Stan Cox <scox@redhat.com>
3939
3940 * config/obj-elf.c (obj_elf_change_section): Make non-static.
3941 config/tc-mips.c (s_change_section): New function to support
3942 IRIX .section pseudo-op.
3943
3944 2002-08-16 Nick Clifton <nickc@redhat.com>
3945
3946 * config/tc-v850.c (md_assemble): Fix assembling of "callt 0x3f".
3947
3948 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
3949
3950 * config/tc-mips.c (macro_build_jalr): Make sure we generate
3951 the fix-up against on the right frag.
3952 (s_cpsetup): Likewise. Parse third argument as expression, to
3953 handle global symbols and forward/backward labels correctly.
3954
3955 2002-08-14 Nick Clifton <nickc@redhat.com>
3956
3957 * read.c (stringer): Catch attempts to create strings in the abs
3958 section.
3959
3960 * config/tc-alpha.c: Fix compiling for COFF targets.
3961 Some minor formatting tidyups.
3962
3963 2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
3964
3965 * config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove.
3966 (TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag
3967 according to the reloc.
3968 (tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
3969 (TC_FORCE_RELOCATION): Define.
3970 (tc_m68hc11_force_relocation): Declare.
3971
3972 * config/tc-m68hc11.c (md_pseudo_table): Add relax command.
3973 (s_m68hc11_relax): New function for relax group.
3974 (build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at
3975 beginning of jump instruction.
3976 (md_pcrel_from): Rename from md_pcrel_from_section and fix
3977 address computation.
3978 (tc-gen_reloc): Update.
3979 (md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as
3980 PC-relative fixup.
3981 (tc_m68hc11_force_relocation): New function, handle new relocs.
3982 (tc_m68hc11_fix_adjustable): New to make sure there are enough
3983 reloc for the linker relax pass.
3984 (md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP
3985 and VTABLE relocs.
3986
3987 2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
3988
3989 * config/tc-m68hc11.c (m68hc11_elf_final_processing): New function.
3990 (md_pseudo_table): Add .mode, .far and .interrupt pseudo op.
3991 (s_m68hc11_mode): New function for .mode pseudo op.
3992 (s_m68hc11_mark_symbol): New function for .far and .interrupt
3993 pseudo op.
3994 * config/tc-m68hc11.h (elf_tc_final_processing): Define.
3995 (m68hc11_elf_final_processing): Declare.
3996
3997 2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
3998
3999 * config/tc-m68hc11.c (md_begin): Take into account additional
4000 page operand for call instruction.
4001 (print_opcode_format): Likewise.
4002 (check_range): Likewise for page range checking.
4003 (get_operand): Don't skip a possible comma in operands.
4004 (fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc.
4005 (fixup16): Likwise with BFD_RELOC_M68HC11_LO16.
4006 (fixup24): New to handle call reloc.
4007 (build_insn): Handle missing page operand for call instruction.
4008 (find): Likewise.
4009 (md_apply_fix3): Take into account new relocs.
4010 (get_operand): Fix the mode for indexed indirect addressing.
4011 (build_indexed_byte): Fix post index byte for indexed indirect mode.
4012
4013 2002-08-12 Richard Sandiford <rsandifo@redhat.com>
4014
4015 * config/tc-mips.c (mips_ip): Don't work out the value of
4016 constant %hi()s here.
4017
4018 2002-08-10 Alan Modra <amodra@bigpond.net.au>
4019
4020 * config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR
4021 for ELF, and don't bother checking ELF relocs when non-ELF.
4022 (i386_immediate): Allow absolute_section expressions for aout.
4023 (i386_displacement): Likewise. Also test bfd_is_com_section.
4024 (md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF.
4025 (md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel,
4026 not when fx_addsy. Remove dead code.
4027
4028 2002-08-09 Graeme Peterson <gp@qnx.com>
4029
4030 * configure.in: Add support for ppc-*-nto* target.
4031 * configure: Regenerate.
4032
4033 2002-08-09 Alan Modra <amodra@bigpond.net.au>
4034
4035 * config/tc-i386.h: Reorganize.
4036
4037 2002-08-09 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4038
4039 * config/tc-mips.c (macro): Handle a register plus a 16-bit
4040 immediate offset in "dla" and "la" expansions.
4041
4042 2002-08-09 Alan Modra <amodra@bigpond.net.au>
4043
4044 * configure.in: bfd_gas=yes for all i386 targets. Formatting.
4045 Remove "bfd_gas=yes" from target table when covered later.
4046 Consolidate some entries.
4047 * configure: Regenerate
4048
4049 2002-08-09 Jakub Jelinek <jakub@redhat.com>
4050
4051 * config/tc-i386.c (output_insn): Save frag_now and frag_now_fix ()
4052 at start of insn, pass it to output_disp and output_imm.
4053 (output_disp): Added arguments. If _GLOBAL_OFFSET_TABLE_ is seen
4054 in displacement for R_386_32 reloc, use R_386_GOTPC and compute
4055 properly addend.
4056 (output_imm): Added arguments. Compute properly addend for
4057 R_386_GOTPC.
4058 (md_apply_fix3): Remove R_386_GOTPC handling.
4059
4060 2002-08-06 George France <france@handhelds.org>
4061
4062 * config/tc-alpha.c (cpu_types): Enabled ev67, ev68, -m21264a
4063 and m21264b processor names and cpu types.
4064 * doc/c-alpha.texi: Documented new types.
4065
4066 2002-08-06 Alan Modra <amodra@bigpond.net.au>
4067
4068 * config/tc-ppc.c (md_apply_fix3): Adjust 16 bit XCOFF reloc offset.
4069
4070 2002-08-01 Richard Sandiford <rsandifo@redhat.com>
4071
4072 * config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend
4073 handling to BFD_RELOC_MIPS16_GPREL.
4074
4075 2002-08-01 Nick Clifton <nickc@redhat.com>
4076
4077 * config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal
4078 pool is computed using signed arithmetic so that proper sign
4079 extension is performed if X_add_number is a 64-bit integer.
4080
4081 2002-08-01 H.J. Lu <hjl@gnu.org>
4082 Daniel Jacobowitz <drow@mvista.com>
4083
4084 * dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced
4085 .debug_line section unless it has line information.
4086
4087 2002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au>
4088
4089 * config/tc-ns32k.h (md_pcrel_adjust): Supply prototype.
4090 * config/tc-ns32k.c (convert_iif, md_parse_option, md_show_usage):
4091 Allow default displacement size to be an option "--disp-size-default".
4092 (md_number_to_disp): Make error messages include value. Use %d to
4093 print integers, not %s.
4094 (fix_new_ns32k): Conditionally set fx_no_overflow so we don't
4095 get duplicate messages sometimes.
4096 (convert_iif): Grow frag to max possible instruction size. Avoid
4097 creating unnecessary fixes.
4098 (md_number_to_field) Add prototype.
4099 (encode_operand, parse, convert_iif, md_fix_pcrel_adjust): Add
4100 prototypes and make static.
4101 (struct addr_mode): Make mode and scaled_mode explicitly signed.
4102 (evaluate_expr): Use resultP argument instead of exprP global.
4103 (get_addr_mode): Quiten compiler warnings.
4104 (encode_operand): eliminate unused variables. Quiten compiler
4105 warnings. Eliminate nul character in format strings.
4106 (parse): argc is unsigned.
4107 (reloc): Type cast index to quieten compiler.
4108 (md_pcrel_adjust, md_apply_fix3): Remove unused variable.
4109 (md_convert_frag): Note unused parameters. Remove unused
4110 variables.
4111 (md_create_long_jump, md_create_short_jump,
4112 md_undefined_symbol_name, md_section_align, tc_gen_reloc): Note
4113 unused parameters.
4114
4115 2002-07-31 Nick Clifton <nickc@redhat.com>
4116
4117 * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
4118 of the PDP-11 and 2.11BSD a.out support.
4119
4120 2002-07-31 Momchil Velikov <velco@fadata.bg>
4121
4122 * config/tc-v850.c (md_assemble): Fix range check for immediate
4123 operand.
4124
4125 2002-07-30 Chris Demetriou <cgd@broadcom.com>
4126
4127 * config/tc-mips.c (mips_cpu_info_table): Clean up entries related
4128 to Broadcom SB-1 core support.
4129
4130 2002-07-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4131
4132 * config/tc-mips.c (mips_target_format): Fix formatting.
4133 Add recognition of n32 ABI formats.
4134
4135 2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4136
4137 * tc-mips.c (load_address): Don't clobber $at when loading a
4138 64-bit address in non-PIC code if noat is in effect.
4139 (macro): Likewise.
4140
4141 2002-07-30 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4142
4143 * config/tc-mips.c (macro): Use codes 6 and 7 in trap instructions
4144 used in division/multiply macro expansions similarly to how they
4145 are used in the variants with break instructions.
4146 (macro2): Likewise.
4147
4148 2002-07-30 Graeme Peterson <gp@qnx.com>
4149
4150 * configure.in: Add support for arm-*-nto target.
4151 * configure: Regenerate.
4152
4153 2002-07-30 Nick Clifton <nickc@redhat.com>
4154
4155 * config/tc-arm.c (struct literal_pool): Add fields to allow
4156 multiple literal pools to be maintained.
4157 (find_literal_pool): New function.
4158 (find_or_make_literal_pool): New function.
4159 (add_to_literal_pool): Use find_or_make_literal_pool.
4160 (arm_s_text, arm_s_data, arm_s_section): Remove - no longer
4161 needed.
4162 (s_ltorg): Use find_literal_pool.
4163 (arm_cleanup): Dump all literal pools.
4164 * doc/c-arm.texi: Document new behaviour of only dumping literal
4165 pools upon request.
4166
4167 2002-07-26 Alan Modra <amodra@bigpond.net.au>
4168
4169 * config/tc-ppc.c (ppc_set_cpu): Use PPC_OPCODE_64 as the default
4170 rather than PPC_OPCODE_32 for powerpc64*.
4171
4172 2002-07-25 Nick Clifton <nickc@redhat.com>
4173
4174 * po/es.po: Updated Spanish translation.
4175 * po/fr.po: Updated French translation.
4176
4177 2002-07-25 Richard Sandiford <rsandifo@redhat.com>
4178
4179 * doc/c-mips.texi: Remove -mcpu. Document -mabi.
4180 * configure.in (MIPS_CPU_STRING_DEFAULT): New configuration macro.
4181 (USE_E_MIPS_ABI_O32, MIPS_DEFAULT_64BIT): New configuration macros.
4182 * configure, config.in: Regenerate.
4183 * config/tc-mips.c (file_mips_abi): Rename to mips_abi.
4184 (mips_set_options): Remove "abi" field.
4185 (mips_opts): Update accordingly. Replace all uses of mips_opts.abi
4186 with mips_abi.
4187 (mips_cpu): Remove.
4188 (mips_arch_string, mips_arch_info): New vars.
4189 (mips_tune_string, mips_tune_info): New vars.
4190 (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New macros.
4191 (HAVE_32BIT_GPRS, HAVE_32BIT_FPRS): Don't check the ABI.
4192 (mips_isa_to_str, mips_cpu_to_str): Remove.
4193 (mips_ip): If the selected architecture is a generic ISA rather
4194 than a processor, only mention the ISA level in error messages.
4195 (OPTION_MCPU): Remove.
4196 (OPTION_FP64): New.
4197 (md_longopts): Add -mfp64, remove -mcpu.
4198 (mips_set_option_string): New fn.
4199 (md_parse_option): Make -mipsN update file_mips_isa rather than
4200 mips_opts.isa. Use mips_set_option_string to set -march or -mtune.
4201 Don't let -mgp32 and -mfp32 change the ABI.
4202 (show): Move to end of file. Constify string argument.
4203 (md_show_usage): Move to the end of the file. Read available
4204 architectures from mips_cpu_info_table.
4205 (mips_set_architecture): New fn.
4206 (mips_after_parse_args): Rework. Remove -mcpu handling. -mipsN
4207 is an alias for -march=mipsN. Don't change the ABI based on other
4208 flags. Infer the register size from the ABI as well as the
4209 architecture. Complain about more conflicting arguments.
4210 Unify logic with GCC.
4211 (s_mipsset): Don't change the ABI.
4212 (mips_elf_final_processing): Check USE_E_MIPS_ABI_O32.
4213 (mips_cpu_info_table): Remove Generic-MIPS* entries, keeping just
4214 "mipsN"-type entries. Remove entries that vary only in the
4215 manufacturer's prefix, or that have "000" replaced by "k".
4216 Remove TARGET_CPU entries. Make r2000 entry use CPU_R3000.
4217 (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
4218 (mips_parse_cpu): New fn.
4219 (mips_cpu_info_from_name, mips_cpu_info_from_cpu): Remove.
4220 (mips_cpu_info_from_isa): Minor formatting tweak.
4221
4222 2002-07-24 Nick Clifton <nickc@redhat.com>
4223
4224 * po/sv.po: Updated Swedish translation.
4225 * po/es.po: Updated Spanish translation.
4226
4227 2002-07-23 Alan Modra <amodra@bigpond.net.au>
4228
4229 * Makefile.am: Run "make dep-am".
4230 * Makefile.in: Regenerate.
4231 * doc/Makefile.in: Regenerate.
4232 * config.in: Regenerate.
4233 * po/POTFILES.in: Regenerate.
4234
4235 2002-07-23 Nick Clifton <nickc@redhat.com>
4236
4237 * po/fr.po: Updated French translation.
4238
4239 2002-07-23 Nick Clifton <nickc@redhat.com>
4240
4241 * CONTRIBUTORS: Ken Raeburn is no longer the maintainer for
4242 GAS.
4243
4244 2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4245
4246 * config/tc-mips.c (mips_need_elf_addend_fixup): Use S_IS_EXTERNAL
4247 instead of S_IS_EXTERN.
4248 (md_estimate_size_before_relax): Likewise.
4249 (mips_fix_adjustable): Likewise.
4250
4251 2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4252
4253 * config/tc-mips.c (mips_pic_level): Remove IRIX4_PIC.
4254
4255 2002-07-19 Miroslav Tichy <tichm9am@ss1000.ms.mff.cuni.cz>
4256 Nick Clifton <nickc@redhat.com>
4257
4258 * cond.c (s_ifdef): Treat a referenced but not yet defined
4259 symbol as if it were undefined, in exactly the same way as
4260 .equiv.
4261
4262 * doc/as.texinfo: Document that .ifdef, .ifndef and .equiv
4263 consider referenced bug not yet defined symbols to be
4264 undefined.
4265
4266 2002-07-18 Denis Chertykov <denisc@overta.ru>
4267 Frank Ch. Eigler <fche@redhat.com>
4268 Alan Lehotsky <alehotsky@cygnus.com>
4269 John Healy <jhealy@redhat.com>
4270 Jeff Johnston <jjohnstn@redhat.com>
4271
4272 * configure.in: Add ip2k configuraton.
4273 * configure: Regenerate.
4274 * Makefile.am: Add ip2k configuraton.
4275 * Makefile.in: Regenerate.
4276 * configure: Regenerate.
4277 * Makefile.in: Regenerate.
4278 * config/tc-ip2k.c: New file.
4279 * config/tc-ip2k.h: New files.
4280 * NEWS: Mention new support.
4281 * doc/Makefile.am (CPU_DOCS): Add c-ip2k.texi.
4282 * doc/Makefile.in: Regenerate.
4283 * doc/all.texi: Set IP2K
4284 * doc/as.texinfo: Add IP2K description.
4285 * doc/c-ip2k.texi: New file.
4286
4287 2002-07-19 Nick Clifton <nickc@cambridge.redhat.com>
4288
4289 * NEWS: Reformat to match style of other NEWS files.
4290
4291 2002-07-17 Jan Hubicka <jh@suse.cz>
4292
4293 * tc-i386.c (i386_align_code): Implement x86_64 neutral code fillers.
4294
4295 2002-07-16 Moritz Jodeit <moritz@jodeit.org>
4296
4297 * config/tc-z8k.c (build_bytes): Correct order of memset args.
4298
4299 2002-07-16 Nick Clifton <nickc@cambridge.redhat.com>
4300
4301 * NEWS: Add 'Changes in 2.13'.
4302
4303 2002-07-15 Matt Fredette <fredette@netbsd.org>
4304
4305 * config/tc-hppa.h (LABELS_WITHOUT_COLONS): Define if TE_NetBSD.
4306
4307 2002-07-12 Alan Modra <amodra@bigpond.net.au>
4308
4309 * config/tc-i386.c (process_suffix): Merge CODE_64BIT JumpByte
4310 case with non CODE_64BIT case. Don't warn on "qword ptr" if
4311 not CODE_64BIT.
4312
4313 2002-07-11 Alan Modra <amodra@bigpond.net.au>
4314
4315 * config/tc-ppc.c (ppc_elf_frob_symbol): Delete.
4316 (ppc_frob_file_before_adjust): New function.
4317 * config/tc-ppc.h (tc_frob_symbol): Don't define.
4318 (ppc_elf_frob_symbol): Don't declare.
4319 (tc_frob_file_before_adjust): Define.
4320 (ppc_frob_file_before_adjust): Declare.
4321
4322 * config/tc-ppc.c (md_pseudo_table): Warning fix.
4323 (ppc_cpu): Make it unsigned long to agree with struct powerpc_opcode
4324 flags.
4325 (ppc_size): Delete.
4326 (ppc_xcoff64): Rename to ppc_obj64.
4327 (md_parse_option <m>): Encode old ppc_size value in ppc_cpu.
4328 (ppc_set_cpu): Set PPC_OPCODE_32 too.
4329 (ppc_arch): Use ppc_obj64 instead of ppc_size to select bfd_mach_ppc64
4330 or bfd_mach_ppc.
4331 (ppc_target_format): Use ppc_obj64 to select format.
4332 (md_begin): Adjust for PPC_OPCODE_32/64 in ppc_cpu.
4333 (ppc_insert_operand): Use ppc_obj64 instead of ppc_size.
4334 (ppc_elf_suffix): Likewise. Don't depend on BFD_DEFAULT_TARGET_SIZE.
4335 (tc_frob_symbol): Likewise.
4336 (md_assemble): Use ppc_obj64 instead of ppc_size. Don't depend on
4337 BFD_DEFAULT_TARGET_SIZE.
4338 (ppc_tc): Likewise.
4339 (ppc_is_toc_sym): Likewise.
4340 (md_apply_fix3): Likewise.
4341 * config/tc-ppc.h (TC_FORCE_RELOCATION): Don't depend on
4342 BFD_DEFAULT_TARGET_SIZE.
4343 (ELF_TC_SPECIAL_SECTIONS): Likewise.
4344 (tc_frob_symbol): Likewise.
4345
4346 2002-07-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4347
4348 * config/tc-mips.c (macro_build): Handle MIPS16 insns.
4349 (mips_ip): Likewise.
4350
4351 2002-07-09 Alan Modra <amodra@bigpond.net.au>
4352
4353 * config/tc-i386.c (md_pseudo_table <file>): Warning fix.
4354 (BFD_RELOC_8, BFD_RELOC_8_PCREL): Define for non-BFD.
4355 (md_apply_fix3): Formatting. Remove redundant test.
4356 (tc_gen_reloc): Remove redundant code.
4357 (tc_i386_force_relocation): Delete. Movy body of function to..
4358 * config/tc-i386.h (TC_FORCE_RELOCATION): .. here.
4359
4360 2002-07-09 Federico G. Schwindt <fgsch@olimpo.com.br>
4361
4362 * configure.in: Add hppa-*-openbsd* target, change
4363 alpha*-*-openbsd* format to elf, and use elf for sparc-*-openbsd*
4364 with sparc64 cpu.
4365 * configure: Regenerate.
4366
4367 2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4368
4369 * config/tc-mips.c (macro): Shift the 32-bit address range
4370 accessible with a lone "lui" down by 32768.
4371
4372 2002-07-08 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4373
4374 * config/tc-mips.c (load_address): Use non-trapping "daddu"
4375 instead of "dadd" in address calculations.
4376 (macro): Likewise.
4377
4378 2002-07-08 Alan Modra <amodra@bigpond.net.au>
4379
4380 * config/tc-i386.c (process_suffix): Remove intel mode movsx and
4381 movzx fudges.
4382 (md_assemble): Instead, zap the suffix here.
4383
4384 2002-07-03 Nick Clifton <nickc@cambridge.redhat.com>
4385
4386 * NEWS: Remove next release number until the release is actually
4387 upon us.
4388
4389 2002-07-03 Alan Modra <amodra@bigpond.net.au>
4390
4391 * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
4392 Run "make dep-am".
4393 * Makefile.in: Regenerate.
4394
4395 2002-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
4396
4397 * config/tc-s390.c (tc_s390_fix_adjustable): Prevent any adjustment
4398 to symbols in merge sections, even non pc-relative ones.
4399
4400 2002-06-29 Stephane Carrez <stcarrez@nerim.fr>
4401
4402 * config/tc-m68hc11.h (m68hc11_listing_header): Fix warning.
4403
4404 2002-06-29 Stephane Carrez <stcarrez@nerim.fr>
4405
4406 * config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New sections
4407 .softregs and .eeprom.
4408
4409 2002-06-28 David O'Brien <obrien@FreeBSD.org>
4410
4411 * NEWS: Note the next release is 2.13.
4412
4413 2002-06-26 Nick Clifton <nickc@cambridge.redhat.com>
4414
4415 * po/tr.po: New translation imported.
4416
4417 2002-06-26 Elias Athanasopoulos <eathan@otenet.gr>
4418
4419 * ecoff.c: (get_tag): Replace strcpy with xstrdup.
4420 (ecoff_directive_def): Likewise.
4421 (ecoff_directive_tag): Likewise.
4422 * listing.c (file_info): Likewise.
4423 * hash.c (what): Likewise.
4424
4425 2002-06-25 H.J. Lu <hjl@gnu.org>
4426
4427 * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
4428 * Makefile.in: Regenerated.
4429
4430 2002-06-19 Dhananjay R. Deshpande <dhananjayd@kpit.com>
4431
4432 * config/tc-sh.c (get_specific): Revert 2002-05-01 change.
4433 (assemble_ppi): Generate warning if the same register is used
4434 twice as destination in the same padd / pmuls instruction.
4435
4436 2002-06-18 Dave Brolley <brolley@redhat.com>
4437
4438 From Catherine Moore, Michael Meissner, Richard Sandiford, Dave Brolley
4439 * po/POTFILES.in: Add tc-frv.c, tc-frv.h.
4440 * configure.in: Support frv-*-*.
4441 * Makefile.am (CPU_TYPES): Add frv.
4442 (TARGET_CPU_CFILES): Add tc-frv.c.
4443 (TARGET_CPU_HFILES): Add tc-frv.h.
4444 (DEPTC_frv_coff): New variable.
4445 (DEPTC_frv_elf): New variable.
4446 (DEPOBJ_frv_coff): New variable.
4447 (DEPOBJ_frv_elf): New variable.
4448 (DEP_frv_coff): New variable.
4449 (DEP_frv_elf): New variable.
4450 * tc-frv.c: New file.
4451 * tc-frv.h: New file.
4452
4453 2002-06-17 Catherine Moore <clm@redhat.com>
4454
4455 * config/obj-elf.h (TARGET_SYMBOL_FIELDS): Conditionally define.
4456
4457 2002-06-17 J"orn Rennecke <joern.rennecke@superh.com>
4458
4459 * config/tc-sh.c (assemble_ppi): Initialize reg_n.
4460
4461 2002-06-17 Tom Rix <trix@redhat.com>
4462
4463 * config/tc-i370.h (tc_comment_chars): Define for i370-elf.
4464
4465 2002-06-14 H.J. Lu <hjl@gnu.org>
4466 Daniel Jacobowitz <drow@mvista.com>
4467
4468 * dwarf2dbg.h (dwarf2_directive_file): Return char *.
4469 * dwarf2dbg.c (dwarf2_directive_file): Return filename.
4470 * config/tc-mips.c (s_mips_file): Call s_app_file_string
4471 and new_logical_line for the first .file directive.
4472 * read.c (s_app_file_string): New function.
4473 (s_app_file): Call it.
4474 * read.h (s_app_file_string): Add declaration.
4475
4476 2002-06-14 Daniel Jacobowitz <drow@mvista.com>
4477
4478 * configure.in: Remove MIPS_STABS_ELF.
4479 * configure: Regenerated.
4480 * config.in: Regenerated.
4481 * config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug
4482 for MIPS targets.
4483 * config/tc-mips.c (mips_pseudo_table): Remove #ifdef around
4484 ".extern".
4485 (pdr_seg): Declare unconditionally.
4486 (md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF.
4487 (s_mips_end): Likewise. Generate stabs function markers.
4488 (s_mips_ent): Generate stabs function markers.
4489 (s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not
4490 ELF.
4491 (s_mips_mask): Likewise.
4492 (mips_flag_mdebug): New.
4493 (md_longopts): Add "mdebug" and "no-mdebug".
4494 (md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG.
4495 (mips_after_parse_args): Set mips_flag_mdebug.
4496 * doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS.
4497
4498 2002-06-13 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4499
4500 * config/tc-mips.c (md_apply_fix3): Don't subtract the symbol's
4501 value twice for RELA relocations.
4502
4503 2002-06-12 Ben Elliston <bje@redhat.com>
4504
4505 * symbols.c (resolve_symbol_value): Initialise final_val.
4506
4507 * subsegs.c (subsegs_print_statistics): Cast frchp to void *.
4508
4509 2002-06-11 Tom Rix <trix@redhat.com>
4510
4511 * config/tc-ppc.c (ppc_subseg_align): Delete.
4512 (ppc_change_csect): Default csect align is 2.
4513 * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Delete
4514
4515 2002-06-09 Marek Michalkiewicz <marekm@amelek.gda.pl>
4516
4517 * config/tc-avr.c (mcu_types): Update.
4518
4519 2002-06-08 Matt Thomas <matt@3am-software.com>
4520
4521 * configure.in (vax-*-netbsdelf*, vax-*-netbsdaout*)
4522 (vax-*-netbsd*): New targets.
4523 * configure: Regenerate.
4524 * config/aout_gnu.h (enum machine_type): Add M_VAX4K_NETBSD.
4525 * config/tc-vax.c: Add support for ELF and PIC.
4526 (flag_want_pic): New flag.
4527 (float_cons): Fix prototype.
4528 (md_apply_fix3): Adjust for BFD_ASSEMBLER.
4529 (md_assemble): Introduce a new is_absolute local, and use it
4530 rather than repeating the test. Make fatal errors actually
4531 fatal by using as_fatal as appropriate. Adjust for BFD_ASSEMBLER.
4532 Add support for ELF. Add support for PIC.
4533 (md_convert_frag): Adjust for BFD_ASSEMBLER.
4534 (tc_aout_fix_to_chars): Only include if OBJ_AOUT and not
4535 BFD_ASSEMBLER.
4536 (vax_reg_parse): Make the % register prefix mandatory for ELF,
4537 optional for a.out, and not allowed for VMS. Adjust all callers.
4538 (md_create_short_jump): Add ATTRIBUTE_UNUSED to unused arguments.
4539 (md_create_long_jump): Likewise.
4540 (md_undefined_symbol): Likewise.
4541 (md_section_align): Likewise.
4542 (md_shortopts): Allow -k and -K for ELF.
4543 (md_parse_option): Set flag_want_pic if -k or -K.
4544 (tc_headers_hook): New function if OBJ_AOUT and not BFD_ASSEMBLER.
4545 (tc_gen_reloc): New function if BFD_ASSEMBLER.
4546 * config/tc-vax.h (tc_headers_hook): Remove.
4547 (TARGET_FORMAT): Set according to object format and target
4548 environment.
4549 (BFD_ARCH, TARGET_ARCH): Define.
4550 (NO_RELOC): Adjust for BFD_ASSEMBLER.
4551 (TC_RELOC_RTSYM_LOC_FIXUP, TC_FIX_ADJUSTABLE)
4552 (tc_fix_adjustable): Define if BFD_ASSEMBLER.
4553 * config/vax-inst.h (VAX_JSB, VAX_CALLS, VAX_CALLG): Define.
4554
4555 2002-06-08 Alan Modra <amodra@bigpond.net.au>
4556
4557 * Makefile.am: Run "make dep-am".
4558 * Makefile.in: Regenerate.
4559
4560 * as.c: Replace CONST with const.
4561 * write.c: Likewise.
4562 * config/obj-coff.c: Likewise.
4563 * config/tc-a29k.c: Likewise.
4564 * config/tc-arm.c: Likewise.
4565 * config/tc-dlx.c: Likewise.
4566 * config/tc-h8300.c: Likewise.
4567 * config/tc-h8500.c: Likewise.
4568 * config/tc-i370.c: Likewise.
4569 * config/tc-i860.c: Likewise.
4570 * config/tc-i960.c: Likewise.
4571 * config/tc-m68hc11.c: Likewise.
4572 * config/tc-m68k.c: Likewise.
4573 * config/tc-m88k.c: Likewise.
4574 * config/tc-mcore.c: Likewise.
4575 * config/tc-mips.c: Likewise.
4576 * config/tc-ns32k.c: Likewise.
4577 * config/tc-pdp11.c: Likewise.
4578 * config/tc-pj.c: Likewise.
4579 * config/tc-s390.c: Likewise.
4580 * config/tc-sh.c: Likewise.
4581 * config/tc-sparc.c: Likewise.
4582 * config/tc-tahoe.c: Likewise.
4583 * config/tc-tic80.c: Likewise.
4584 * config/tc-v850.c: Likewise.
4585 * config/tc-vax.c: Likewise.
4586 * config/tc-w65.c: Likewise.
4587 * config/tc-z8k.c: Likewise.
4588
4589 2002-06-08 Daniel Jacobowitz <drow@mvista.com>
4590
4591 Based on patch from Matt Green:
4592 * config/obj-elf.h (ECOFF_DEBUGGING): Make configurable.
4593 * config/tc-mips.c (s_mips_file): Renamed from s_file.
4594 (s_mips_loc): New function.
4595 (mips_nonecoff_pseudo_table): Call them.
4596 (append_insn): Call dwarf2_emit_insn.
4597
4598 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4599
4600 * config/tc-mips.c (mips_opts): Fix comment, all ASE fields are set
4601 to -1.
4602 (file_ase_mips16): New veriable.
4603 (mips_eabi64): Remove.
4604 (CPU_HAS_MIPS16): New define.
4605 (CPU_HAS_MDMX): Fix data type.
4606 (md_begin): Code cleanup. Use file_ase_mips16.
4607 (mips_elf_final_processing): Handle mips16 header flag.
4608 Handle EABI flag without intermediate variable.
4609
4610 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4611
4612 * doc/as.texinfo: Update MIPS documentation.
4613
4614 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4615
4616 * config/tc-mips.c: Add define for $zero register.
4617 (md_begin): Add $zero as alias name for $0.
4618 (insn_uses_reg): Use ZERO define.
4619 (mips_ip): Add $zero as alias name for $0.
4620 (mips16_ip): Likewise.
4621 (s_cplocal): Demand empty rest of input line.
4622 (tc_get_register): Likewise. Add support for $kt0, kt1 register
4623 names. Use ZERO define. Fix input_line_pointer progress.
4624
4625 2002-06-07 Alan Modra <amodra@bigpond.net.au>
4626
4627 * symbols.c: Replace CONST by const throughout.
4628 (symbol_find_exact): Split out from..
4629 (symbol_find_base): ..here.
4630 * symbols.h: Replace CONST by const throughout.
4631 (symbol_find_exact): Declare.
4632 * config/obj-elf.c: #include "struc-symbol.h".
4633 (elf_frob_file): If group name matches an exported symbol, use that
4634 symbol for the signature and ".group" as the section name.
4635
4636 2002-06-06 J"orn Rennecke <joern.rennecke@superh.com>
4637
4638 * config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again,
4639 but warn about it.
4640
4641 2002-06-06 Daniel Jacobowitz <drow@mvista.com>
4642
4643 * tc-mips.c (mips_after_parse_args): Always set mips_opts.ase_mips3d
4644 and mips_opts.ase_mdmx if they are uninitialized.
4645
4646 2002-06-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
4647
4648 * gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME.
4649 (hppa_force_relocation): Check if a stub just before the start symbol
4650 of the last call_info is reachable before forcing relocation. Fix
4651 typo.
4652
4653 2002-06-04 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
4654
4655 * config/tc-mips.c (mips_after_parse_args): New function.
4656 (md_begin): Move processing of defaults to mips_after_parse_args.
4657 config/tc-mips.h (md_after_parse_args): Define.
4658
4659 2002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
4660
4661 * configure.in (sh5*): Set cpu_type to sh64 and endian to big.
4662 (sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
4663 (sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
4664 * configure: Regenerate.
4665 * config/tc-sh64.c (sh64_target_format): Add support for NetBSD
4666 environment.
4667
4668 2002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
4669
4670 * config/tc-sh64.h (MD_PCREL_FROM_SECTION): Undef before redefining.
4671
4672 2002-06-04 Alan Modra <amodra@bigpond.net.au>
4673
4674 * config/obj-elf.c (obj_elf_change_section): Set and check elf
4675 linkonce flag. Print all warnings.
4676 (obj_elf_section): Parse ",comdat" for groups.
4677 (elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups. Check
4678 consistency of comdat flag.
4679
4680 2002-06-02 Richard Henderson <rth@redhat.com>
4681
4682 * config/tc-alpha.c (alpha_adjust_symtab_relocs): Fix thinko
4683 with LITERALs without sequence numbers.
4684
4685 2002-06-01 Richard Henderson <rth@redhat.com>
4686
4687 * config/tc-alpha.c: Move LITUSE constants to "elf/alpha.h".
4688 Rename them LITUSE_ALPHA_*.
4689
4690 2002-05-31 Shrinivas Atre <ShrinivasA@kpit.com>
4691
4692 * config/tc-h8300.c (get_operand): Allow stm.l and ldm.l insns to
4693 accept parentheses enclosed register lists.
4694
4695 2002-05-31 Alan Modra <amodra@bigpond.net.au>
4696
4697 * Makefile.am: Run "make dep-am".
4698 * Makefile.in: Regenerate.
4699 * po/POTFILES.in: Regenerate.
4700
4701 2002-05-31 Graeme Peterson <gp@qnx.com>
4702
4703 * configure.in: Add i386-*-nto-qnx*.
4704 * configure: Regenerate.
4705
4706 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4707
4708 * config/tc-mips.c (mips_ip): Use unsigned long values for
4709 warning output.
4710
4711 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4712
4713 * config/tc-mips.c (s_cpsetup): Fix initialization of
4714 mips_cpreturn_register and mips_cpreturn_offset.
4715
4716 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4717
4718 * config/tc-mips.c (s_cpsetup): Fix comment.
4719
4720 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4721
4722 * config/tc-mips.c (md_begin): Add $ra as alias name for $31.
4723 (mips_ip): Likewise.
4724 (mips16_ip): Likewise.
4725 (tc_get_register): Likewise.
4726
4727 2002-05-30 Chris G. Demetriou <cgd@broadcom.com>
4728 Ed Satterthwaite <ehs@broadcom.com>
4729
4730 * config/tc-mips.c (mips_set_options): New "ase_mdmx" member.
4731 (mips_opts): Initialize "ase_mdmx" member.
4732 (file_ase_mdmx): New variable.
4733 (CPU_HAS_MDMX): New macro.
4734 (md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx
4735 based on command line options and configuration defaults.
4736 (macro_build): Note in comment that use of MDMX in macros is
4737 not currently allowed.
4738 (validate_mips_insn): Add support for the "O", "Q", "X", "Y", and
4739 "Z" MDMX operand types.
4740 (mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set,
4741 and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand
4742 types.
4743 (OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option):
4744 Add support for "-mdmx" and "-no-mdmx" options.
4745 (OPTION_ELF_BASE): Move to accomodate new options.
4746 (s_mipsset): Support ".set mdmx" and ".set nomdmx".
4747 (mips_elf_final_processing): Set MDMX ASE ELF header flag if
4748 file_ase_mdmx was set.
4749 * doc/as.texinfo: Document -mdmx and -no-mdmx options.
4750 * doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set
4751 nomdmx" directives.
4752
4753 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4754
4755 * config/tc-mips.c (OPTION_NO_M7000_HILO_FIX): Rename to
4756 OPTION_MNO_7000_HILO_FIX. Add alternate "mno-fix7000"
4757 command line switch conforming to gcc conventions.
4758 * doc/c-mips.texi: Document -mno-fix7000 instead of no-mfix-7000.
4759
4760 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4761
4762 * config/tc-mips.c (macro_build_jalr): New Function.
4763 (md_begin): NewABI uses big GOTs.
4764 (macro_build): Recognize BFD_RELOC_MIPS_GOT_DISP,
4765 BFD_RELOC_MIPS_GOT_PAGE, BFD_RELOC_MIPS_GOT_OFST as valid.
4766 (load_address): Add some NewABI PIC support.
4767 (macro): Likewise.
4768 (md_apply_fix): Special handling for BFD_RELOC_MIPS_JALR.
4769 (tc_gen_reloc): Don't encode NewABI vtables in REL relocations.
4770
4771 2002-05-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4772
4773 * config/tc-mips.c (load_address): Use mips_gp_register instead
4774 of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES
4775 instead.
4776 (macro): Use mips_gp_register instead of hardcoded value.
4777
4778 2002-05-30 Richard Henderson <rth@redhat.com>
4779
4780 * expr.h (operatorT): Add O_md17..O_md32.
4781 * config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd,
4782 O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel,
4783 O_tprelhi, O_tprello, O_tprel): New.
4784 (USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them.
4785 (DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New.
4786 (LITUSE_TLSGD, LITUSE_TLSLDM): New.
4787 (struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld,
4788 saw_lu_tlsgd, saw_lu_tlsldm. Make multi_section_p a bit field.
4789 (md_apply_fix3): Handle TLS relocations.
4790 (alpha_force_relocation, alpha_fix_adjustable): Likewise.
4791 (alpha_adjust_symtab_relocs): Sort LITERAL relocs after the
4792 associated TLS reloc. Check lituse_tls relocs match up.
4793 (emit_insn): Handle TLS relocations.
4794 (ldX_op): Remove.
4795
4796 * doc/c-alpha.texi: Add docs for tls relocations.
4797
4798 2002-05-30 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4799
4800 * config/tc-mips.c (mips_gprel_offset): New variable.
4801 (s_gpvalue): Use it.
4802
4803 2002-05-30 Diego Novillo <dnovillo@redhat.com>
4804
4805 * gas/config/tc-d10v.c (check_resource_conflict): Only check
4806 write-write conflicts.
4807 (md_assemble): Reformat introductory comment.
4808 (parallel_ok): Prevent packing only if the first
4809 instruction cannot be packed.
4810
4811 2002-05-30 Jason Eckhardt <jle@redhat.com>
4812 Tom Rix <trix@redhat.com>
4813
4814 * config/tc-d10v.c (build_insn): Check for immediates.
4815
4816 2002-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4817
4818 * config/tc-mips.c: Replace GP in comments by $gp.
4819 (mips_big_got): Initialize.
4820 (mips_trap): Initialize.
4821 (load_address): Use mips_gp_register instead of hardcoded value.
4822 Remove dbl parameter, use HAVE_32BIT_ADDRESSES instead.
4823 (macro): Use mips_gp_register instead of hardcoded value.
4824 (macro2): Change load_address calls.
4825 (md_pcrel_from): Comment formatting.
4826 (s_cpload): Use mips_gp_register instead of hardcoded value.
4827 (s_cprestore): Likewise. Comment formatting.
4828 (s_gpword): Fix data type.
4829 (s_cpadd): Use mips_gp_register instead of hardcoded value.
4830 (nopic_need_relax): Replace GP in comments by $gp.
4831 (mips_elf_final_processing): Better comment.
4832
4833 2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
4834
4835 * configure.in: Add DLX configuraton
4836 * Makefile.am: Add DLX configuraton
4837 * configure: Regenerate.
4838 * Makefile.in: Regenerate.
4839 * config/tc-dlx.c: New file.
4840 * config/tc-dlx.h: New files.
4841 * NEWS: Mention new support.
4842
4843 2002-05-27 Nick Clifton <nickc@cambridge.redhat.com>
4844
4845 * config/obj-coff.c (write_object_file): Add missing semicolon.
4846
4847 2002-05-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4848
4849 * config/tc-mips.c (mips_emit_delays): Replace magic constant for RA
4850 by the define. Remove superfluous check of mips_opts.mips16.
4851 (append_insn): Likewise. Canonicalize variable increments.
4852 (macro_build): Canonicalize variable increments.
4853 (macro_build_lui): Likewise.
4854 (load_register): Likewise.
4855 (load_address): Move pointer initialization.
4856 (macro): Move pointer to a more local scope. Canonicalize variable
4857 increments. Better comments. Replace magic constant for RA by the
4858 define.
4859 (macro2): Replace magic constant for RA by the define. Canonicalize
4860 variable increments.
4861 (mips_ip): Canonicalize variable increments.
4862 (mips16_ip): Replace magic constant for RA by the define.
4863 (my_getSmallParser): Canonicalize variable increments/decrements.
4864 (my_getPercentOp): Likewise.
4865 (my_getSmallExpression): Likewise.
4866 (s_align): Likewise.
4867 (s_mipsset): Likewise.
4868 (s_cpsetup): Likewise.
4869 (s_insn): Remove superfluous check of mips_opts.mips16.
4870 (s_mips_stab): Likewise.
4871 (mips_handle_align): Canonicalize variable increments.
4872 (s_mips_ent): Likewise.
4873 (s_mips_end): Add comment.
4874
4875 2002-05-26 Jason Thorpe <thorpej@wasabisystems.com>
4876
4877 * configure.in: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
4878 * configure: Regenerate.
4879
4880 2002-05-25 Alan Modra <amodra@bigpond.net.au>
4881
4882 * Makefile.am (OBJS): Depend on ansidecl.h and fopen-same.h.
4883 * Makefile.in: Regenerate.
4884 * dep-in.sed: Reorder to match OBJS in Makefile.am.
4885 * configure.in (ALL_OBJ_DEPS): Add symcat.h when need_bfd.
4886 * configure: Regenerate.
4887 * as.h: Use #include "" instead of <> for local header files.
4888 * flonum-konst.c: Likewise.
4889 * flonum-mult.c: Likewise.
4890 * gasp.c: Likewise.
4891 * listing.c: Likewise.
4892 * config/tc-ia64.h: Likewise.
4893 * config/tc-v850.h: Likewise.
4894
4895 2002-05-24 TAMURA Kent <kent@netbsd.org>
4896
4897 * configure.in: Add a target for i386-netbsdpe.
4898 * configure: Regenerate.
4899
4900 2002-05-23 Jakub Jelinek <jakub@redhat.com>
4901
4902 * config/obj-elf.c (elf_common): Renamed from obj_elf_common.
4903 (obj_elf_common): Call elf_common.
4904 (obj_elf_tls_common): New function.
4905 (elf_pseudo_tab): Support .tls_common.
4906 (special_sections): Add .tdata and .tbss.
4907 (obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
4908 sections.
4909 (obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
4910 (obj_elf_parse_section_letters): Include T in error message.
4911 * config/tc-ppc.c (ppc_section_letter): Likewise.
4912 * config/tc-alpha.c (alpha_elf_section_letter): Likewise.
4913 (tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
4914 SEC_MERGE.
4915 * config/tc-sparc.c (md_apply_fix3): Likewise.
4916 * config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
4917 Define them if not BFD_ASSEMBLER.
4918 (lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
4919 and @NTPOFF.
4920 (md_apply_fix3): Add TLS relocs.
4921 * config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
4922 FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
4923 FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
4924 (pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
4925 (ia64_elf_section_letter): Include T in error message.
4926 (md_begin): Support TLS operators.
4927 (md_operand): Likewise.
4928 (ia64_gen_real_reloc_type): Support TLS relocs.
4929 * write.c (adjust_reloc_syms): Don't change symbols in
4930 SEC_THREAD_LOCAL sections to STT_SECTION + addend.
4931
4932 2002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
4933
4934 * config/tc-arm.c (md_apply_fix3): For the Thumb BLX reloc
4935 round the relocation up rather than down.
4936
4937 2002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
4938
4939 * config/obj-coff.c (obj_coff_section): Silently ignore an 'a'
4940 flag.
4941 * doc/as.texinfo: Document that the COFF version of .section
4942 ignores the 'a' flag.
4943
4944 2002-05-23 Alan Modra <amodra@bigpond.net.au>
4945
4946 * config/tc-alpha.c (assemble_tokens): Protect use of
4947 ALPHA_RELOC_TABLE with #ifdef RELOC_OP_P.
4948
4949 * write.c (size_seg): Check adjustment to last frag.
4950 (SUB_SEGMENT_ALIGN): If HANDLE_ALIGN defined, pad out last frag to
4951 section alignment.
4952 * config/obj-coff.c (SUB_SEGMENT_ALIGN): Likewise.
4953 * config/obj-ieee.c (SUB_SEGMENT_ALIGN): Likewise.
4954 (write_object_file): Invoke md_do_align if available, and use
4955 frag_align_code on text sections.
4956 * config/obj-vms.h (SUB_SEGMENT_ALIGN): Now two args.
4957 * config/tc-m88k.h (SUB_SEGMENT_ALIGN): Likewise.
4958 * config/tc-ppc.h (SUB_SEGMENT_ALIGN): Likewise.
4959 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Likewise.
4960 * config/tc-i386.h (SUB_SEGMENT_ALIGN): Likewise. Define for
4961 BFD_ASSEMBLER too.
4962
4963 2002-05-22 H.J. Lu <hjl@gnu.org>
4964
4965 * dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file
4966 for source file.
4967
4968 2002-05-22 Nick Clifton <nickc@cambridge.redhat.com>
4969
4970 * config/tc-arm.c (arm_s_section): Enable for COFF builds as well
4971 as ELF builds.
4972
4973 2002-05-22 H.J. Lu <hjl@gnu.org>
4974
4975 * dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol
4976 for one .loc for compiler.
4977
4978 2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4979
4980 * config/tc-mips.c (macro): Relax warning, it's toot strict for
4981 embedded-PIC.
4982
4983 2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4984
4985 * config/tc-mips.c (macro2): Add 64 bit drol, dror macros.
4986 Optimize the rotate by zero case.
4987
4988 2002-05-21 Nick Clifton <nickc@cambridge.redhat.com>
4989
4990 * configure.in: Remove accidental enabling of bfd_gas=yes for
4991 sh-coff targets.
4992 * configure: Regenerate.
4993
4994 2002-05-18 Kazu Hirata <kazu@cs.umass.edu>
4995
4996 * app.c: Fix formatting.
4997 * as.c: Likewise.
4998 * ehopt.c: Likewise.
4999 * expr.c: Likewise.
5000 * input-file.c: Likewise.
5001 * listing.c: Likewise.
5002 * macro.h: Likewise.
5003 * stabs.c: Likewise.
5004 * symbols.c: Likewise.
5005
5006 2002-05-17 Alan Modra <amodra@bigpond.net.au>
5007
5008 * config/obj-generic.c: Delete file.
5009 * config/obj-generic.h: Likewise.
5010
5011 2002-05-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
5012
5013 * config/tc-avr.c (mcu_types): Update for new devices.
5014
5015 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5016
5017 * config/tc-mips.c (macro): Warn about wrong la/dla use.
5018
5019 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5020
5021 * config/tc_mips.c (s_cpsetup): Fix completely bogus code which had
5022 worked sometimes by accident. Fix copy&paste comment.
5023
5024 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5025
5026 * config/tc-mips.c (md_begin): Fix .reginfo and .MIPS.option section
5027 alignment for NewABI. Let n32 use .reginfo. Remove useless casts.
5028 (mips_elf_final_processing): Let n32 use .reginfo.
5029
5030 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5031
5032 * config/tc-mips.c (append_insn): Fix too small range of variable.
5033
5034 2002-05-14 Nick Clifton <nickc@cambridge.redhat.com>
5035
5036 * config/tc-arm.c (arm_cleanup): Remove redundant call to
5037 listing_prev_line().
5038
5039 2002-05-13 Nick Clifton <nickc@cambridge.redhat.com>
5040
5041 * config/tc-arm.c (md_assemble): Remove redundant call to
5042 listing_prev().
5043
5044 * dwarf2dbg.c (dwarf2_emit_insn): Do not reset
5045 loc_directive_seen.
5046
5047 * stabs.c (s_stab_generic): Fix grammatical error in warning
5048 message.
5049
5050 2002-05-13 Alan Modra <amodra@bigpond.net.au>
5051
5052 * write.c (subsegs_finish): Don't specially align last subseg.
5053
5054 2002-05-11 Nick Clifton <nickc@cambridge.redhat.com>
5055
5056 * stabs.c (s_stab_generic): Warn about a description field that is
5057 too big.
5058
5059 * config/obj-coff.c: Fix compile time warnings when compiling
5060 without BFD_ASSEMBLER defined.
5061 Fix formatting.
5062
5063 * config/tc-sh.c (md_pcrel_from): Define for use with sh-hms
5064 target.
5065 (md_pcrel_from_section): Use md_pcrel_from().
5066
5067 2002-05-11 Bruno Haible <bruno@clisp.org>
5068
5069 * dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled
5070 by dwarf2_directive_loc, instead of calling dwarf2_where.
5071
5072 2002-05-11 Kazu Hirata <kazu@cs.umass.edu>
5073
5074 * config/obj-coff.h: Fix formatting.
5075 * config/tc-mcore.c: Likewise.
5076 * config/tc-mn10300.c: Likewise.
5077 * config/tc-openrisc.c: Likewise.
5078 * config/tc-or32.c: Likewise.
5079 * config/tc-pdp11.c: Likewise.
5080 * config/tc-ppc.c: Likewise.
5081 * config/tc-ppc.h: Likewise.
5082 * config/tc-sh64.c: Likewise.
5083 * config/tc-sh.c: Likewise.
5084 * config/tc-tic54x.c: Likewise.
5085 * config/tc-xstormy16.c: Likewise.
5086 * config/tc-xstormy16.h: Likewise.
5087
5088 2002-05-09 Kazu Hirata <kazu@cs.umass.edu>
5089
5090 * config/obj-coff.c: Fix formatting.
5091 * config/obj-elf.c: Likewise.
5092 * config/tc-alpha.c: Likewise.
5093 * config/tc-arm.c: Likewise.
5094 * config/tc-d10v.c: Likewise.
5095 * config/tc-d30v.c: Likewise.
5096 * config/tc-h8300.c: Likewise.
5097 * config/tc-hppa.c: Likewise.
5098
5099 2002-05-09 Alan Modra <amodra@bigpond.net.au>
5100
5101 * config/tc-i386.c (md_estimate_size_before_relax) Don't lose
5102 reloc when no_cond_jump_promotion.
5103
5104 2002-05-08 Jim Wilson <wilson@redhat.com>
5105
5106 * config/tc-i960.c (md_estimate_size_before_relax): Return size of
5107 current variable part of frag.
5108
5109 2002-05-08 Kazu Hirata <kazu@cs.umass.edu>
5110
5111 * config/tc-mmix.c: Fix formatting.
5112 * config/tc-mmix.h: Likewise.
5113
5114 2002-05-08 Alan Modra <amodra@bigpond.net.au>
5115
5116 * configure: Regenerate.
5117
5118 2002-05-07 Kazu Hirata <kazu@cs.umass.edu>
5119
5120 * config/tc-m68k.c: Fix formatting.
5121
5122 2002-05-07 Federico G. Schwindt <fgsch@olimpo.com.br>
5123
5124 * Makefile.am: Honour DESTDIR.
5125 * Makefile.in: Regenerate.
5126
5127 2002-05-06 Kazu Hirata <kazu@cs.umass.edu>
5128
5129 * config/tc-ia64.c: Fix formatting.
5130 * config/tc-ia64.h: Likewise.
5131
5132 2002-05-04 Kazu Hirata <kazu@cs.umass.edu>
5133
5134 * config/tc-mips.c: Fix formatting.
5135 * config/tc-s390.c: Likewise.
5136 * config/tc-s390.h: Likewise.
5137
5138 2002-05-03 Alexandre Oliva <aoliva@redhat.com>
5139
5140 * config/tc-s390.c (md_gather_operands): Emit dwarf2 line-number
5141 information for instructions.
5142
5143 2002-05-02 Kazu Hirata <kazu@cs.umass.edu>
5144
5145 * as.h: Fix formatting.
5146 * cgen.c: Likewise.
5147 * cgen.h: Likewise.
5148 * dwarf2dbg.c: Likewise.
5149 * frags.h: Likewise.
5150 * gasp.c: Likewise.
5151 * macro.c: Likewise.
5152 * read.c: Likewise.
5153 * stabs.c: Likewise.
5154 * symbols.c: Likewise.
5155
5156 2002-05-02 Alan Modra <amodra@bigpond.net.au>
5157
5158 * app.c (mri_pseudo): Only declare for TC_M68K.
5159
5160 * config/tc-ppc.c (mapping): Map sectoff to BFD_RELOC_16_BASEREL.
5161 (ppc_elf_validate_fix): Replace BFD_RELOC_32_BASEREL with
5162 BFD_RELOC_16_BASEREL.
5163 (md_assemble): Likewise.
5164 (md_apply_fix3): Likewise.
5165
5166 2002-05-02 Nick Clifton <nickc@cambridge.redhat.com>
5167
5168 * config/tc-arm.c (thumb_add_sub): Do not convert a subtract of
5169 zero into an add of zero - it is not the same.
5170
5171 2002-05-01 Arati Dikey <aratid@kpit.com>
5172
5173 * tc-sh.c (get_specific): Generate warning if the same
5174 destination register is used in parallel instructions.
5175
5176 2002-05-01 Andrew Macleod <amacleod@cygnus.com>
5177
5178 * config/tc-i386.c (extra_symbol_chars): Add '[' to the list.
5179
5180 2002-05-01 Alan Modra <amodra@bigpond.net.au>
5181
5182 * write.c (cvt_frag_to_fill): Set fr_offset to zero on .org
5183 backwards to prevent cascading errors.
5184
5185 2002-04-30 Mark Mitchell <mark@codesourcery.com>
5186
5187 * configure.in: Add support for powerpc-*-windiss.
5188 * configure: Regenerated.
5189
5190 2002-04-28 Alan Modra <amodra@bigpond.net.au>
5191
5192 * config/tc-s390.c (md_parse_option): Formatting.
5193
5194 * config/tc-i386.c: Formatting fixes, add missing space in error
5195 message.
5196
5197 2002-04-24 Christian Groessler <chris@groessler.org>
5198
5199 * config/tc-z8k.c (build_bytes): Add support for new cases:
5200 CLASS_IGNORE and ARG_NIM4.
5201 (md_assemble): Prevent destruction of input_line_pointer if
5202 get_operands returns failure.
5203
5204 2002-04-24 Chris G. Demetriou <cgd@broadcom.com>
5205
5206 * config/tc-mips.c (macro_build): Do _not_ allow MIPS-3D
5207 instructions to be generated by macros.
5208
5209 2002-04-24 Andreas Schwab <schwab@suse.de>
5210
5211 * config/tc-i386.c (output_jump, output_disp)
5212 (md_estimate_size_before_relax): Don't set fx_pcrel_adjust any
5213 more.
5214 (md_apply_fix3): Remember addend value for rela relocations.
5215 (tc_gen_reloc): Correctly compute pc-relative relocation addend.
5216
5217 2002-04-22 Chris Demetriou <cgd@broadcom.com>
5218
5219 * config/tc-mips.c (macro_build): Add close-parenthesis missing
5220 from previous change.
5221
5222 2002-04-22 Eric Christopher <echristo@redhat.com>
5223
5224 * config/tc-mips.c (macro_build): Add warning if macro instructions
5225 are expanded into a branch delay slot.
5226
5227 2002-04-17 Geoffrey Keating <geoffk@redhat.com>
5228
5229 * dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate line
5230 numbers, gdb relies on them to detect the start of the prologue.
5231
5232 2002-04-17 Martin Schwidefsky <schwidefsky@de.ibm.com>
5233
5234 * config/tc-s390.c (tc_s390_fix_adjustable): Prevent adjustments to
5235 symbols in merge sections.
5236
5237 2002-04-16 Alan Modra <amodra@bigpond.net.au>
5238
5239 * as.c (main): Don't reference _bfd_chunksize.
5240
5241 2002-04-15 Tom Rix <trix@redhat.com>
5242
5243 * config/tc-d10v.c (d10v_fix_adjustable): Prevent adjustments to
5244 symbols in merge sections.
5245
5246 2002-04-11 Richard Sandiford <rsandifo@redhat.com>
5247
5248 * doc/invoke.texi (TC_LARGEST_EXPONENT_IS_NORMAL): Document.
5249 * config/atof-ieee.c (TC_LARGEST_EXPONENT_IS_NORMAL): Add an
5250 argument for the precision.
5251 (gen_to_words): Update accordingly.
5252
5253 2002-04-10 Alan Modra <amodra@bigpond.net.au>
5254
5255 * as.c (parse_args <OPTION_VERSION>): Use VERSION is
5256 BFD_VERSION_STRING unavailable.
5257 * config/tc-i386.c (INLINE): Define (for non-BFD assembler).
5258
5259 2002-04-09 J"orn Rennecke <joern.rennecke@superh.com>
5260
5261 * config/tc-sh.h (TC_FIX_ADJUSTABLE): Disable adjusting if
5262 symbol_used_in_reloc_p is true.
5263
5264 * config/tc-sh.c (md_apply_fix3): Don't zero relocations on big
5265 endian hosts.
5266
5267 2002-04-04 Alan Modra <amodra@bigpond.net.au>
5268
5269 * dep-in.sed: Cope with absolute paths.
5270 * Makefile.am (dep.sed): Subst TOPDIR.
5271 Run "make dep-am".
5272 * Makefile.in: Regenerate.
5273
5274 2002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5275
5276 * config/tc-mips.c (mips16_macro_build): Cast type mismatch.
5277 (mips_ip): Remove unused variable.
5278 (md_apply_fix3): Cast signed/unsignes mismatches. Replace
5279 unsigned char with bfd_byte.
5280 (s_file): Remove unused variable.
5281 (s_mips_ent): Likewise.
5282
5283 2002-04-03 Tom Rix <trix@redhat.com>
5284
5285 * config/tc-d10v.c (d10v_insert_operand): Fix warning in as_bad_where.
5286 (build_insn): Same.
5287 (find_opcode): Fix warning in as_warn.
5288 * config/tc-d10v.h: Update Copyright.
5289
5290 2002-04-03 Alan Matsuoka <alanm@redhat.com>
5291 Tom Rix <trix@redhat.com>
5292
5293 From Jeff Knaggs <jknaggs@redhat.com>
5294 * config/tc-d10v.c (check_resource_conflict): New function to
5295 check for resource conflicts.
5296
5297 From Jason Eckhardt <jle@redhat.com>
5298 * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
5299 imm3 fields.
5300 * config/tc-d10v.c (find_opcode): Emit a warning if one of the
5301 reserved control registers is used.
5302 * config/tc-d10v.c (build_insn): Check for unresolved imm4 or
5303 imm3 fields.
5304
5305 From 2001-03-28 Diego Novillo <dnovillo@redhat.com>
5306 * tc-d10v.c (parallel_ok): Prevent packing only if the first
5307 instruction cannot be packed.
5308
5309 From 2001-03-30 Diego Novillo <dnovillo@redhat.com>
5310 * gas/config/tc-d10v.c (check_resource_conflict): Only check
5311 write-write conflicts.
5312 (md_assemble): Reformat introductory comment.
5313 * opcodes/d10v-opc.c (d10v_opcodes): `btsti' does not modify its
5314 arguments.
5315
5316 2002-04-03 Alan Modra <amodra@bigpond.net.au>
5317
5318 * symbols.c (resolve_symbol_value <O_uminus, O_bit_not,
5319 O_logical_not>): Derive final_seg from add_symbol.
5320 <O_multiply..O_logical_or>: More final_seg twiddles.
5321
5322 2002-04-01 Jessica Han <jessica@cup.hp.com>
5323
5324 * config/tc-ia64.c (ia64_cons_fix_new): Handle 8 byte iplt reloc
5325 in 32-bit mode.
5326
5327 2002-03-27 Andreas Schwab <schwab@suse.de>
5328
5329 * config/tc-i386.c (output_jump): Set fx_pcrel_adjust to size of
5330 field for pc-relative fixups.
5331 (output_disp): Likewise.
5332 (md_estimate_size_before_relax): Likewise.
5333 (tc_gen_reloc): Subtract fx_pcrel_adjust instead of fx_size for
5334 pc-relative fixups in 64bit mode.
5335
5336 2002-03-22 Alan Modra <amodra@bigpond.net.au>
5337
5338 * config/te-aix5.h: Typo fix.
5339
5340 2002-03-21 Alan Modra <amodra@bigpond.net.au>
5341
5342 * Makefile.am: Run "make dep-am".
5343 * Makefile.in: Regenerate.
5344 * doc/Makefile.in: Regenerate.
5345
5346 2002-03-20 Albert Chin-A-Young <china@thewrittenword.com>
5347
5348 * config/tc-arm.c (vfp_dp_reg_required_here): Fix typo
5349 (vfp_sp_reg_pos -> vfp_dp_reg_pos).
5350
5351 2002-03-18 Alexandre Oliva <aoliva@redhat.com>
5352
5353 * config/tc-mips.c (md_estimate_size_before_relax): Do not modify
5354 the EXTENDED bit here; report the estimate according to the
5355 current size.
5356
5357 2002-03-18 Tom Rix <trix@redhat.com>
5358
5359 * configure.in: Add AIX 5 support.
5360 * config/tc-ppc.c (ppc_target_format): Add AIX 5 64 bit target.
5361 * config/te-aix5.h: New file. AIX 5 support.
5362 * configure: Regenerate.
5363
5364 2002-03-18 Nick Clifton <nickc@cambridge.redhat.com>
5365
5366 * po/fr.po: Updated version.
5367
5368 2002-03-16 Andreas Jaeger <aj@suse.de>
5369
5370 * doc/c-mips.texi (Machine Dependencies): Add new node.
5371
5372 2002-03-15 Chris G. Demetriou <cgd@broadcom.com>
5373
5374 * config/tc-mips.c (mips_set_options): New "ase_mips3d" member.
5375 (mips_opts): Initialize "ase_mips3d" member.
5376 (file_ase_mips3d): New variable.
5377 (CPU_HAS_MIPS3D): New macro.
5378 (md_begin): Initialize mips_opts.ase_mips3d and file_ase_mips3d
5379 based on command line options and configuration defaults.
5380 (macro_build, mips_ip): Accept MIPS-3D instructions if
5381 mips_opts.ase_mips3d is set.
5382 (OPTION_MIPS3D, OPTION_NO_MIPS3D, md_longopts, md_parse_option):
5383 Add support for "-mips3d" and "-no-mips3d" options.
5384 (OPTION_ELF_BASE): Move to accomodate new options.
5385 (s_mipsset): Support ".set mips3d" and ".set nomips3d".
5386 (mips_elf_final_processing): Add a comment indicating that a
5387 MIPS-3D ASE ELF header flag should be set, when one exists.
5388 * doc/as.texinfo: Document -mips3d and -no-mips3d options.
5389 * doc/c-mips.texi: Likewise, and document ".set mips3d" and ".set
5390 nomips3d" directives.
5391
5392 2002-03-14 Hans-Peter Nilsson <hp@bitrange.com>
5393
5394 * config/tc-mmix.c (md_estimate_size_before_relax): Don't consider
5395 a weak symbol in same section to be within reach.
5396
5397 2002-03-13 Nick Clifton <nickc@cambridge.redhat.com>
5398
5399 * po/fr.po: Updated version.
5400
5401 2002-03-12 Andreas Schwab <schwab@suse.de>
5402
5403 * config/tc-ia64.c (fixup_unw_records): Clear region when seeing a
5404 body record so that an error is given for misplaced .save
5405 pseudo-ops.
5406
5407 2002-03-09 Alan Modra <amodra@bigpond.net.au>
5408
5409 * config/tc-i386.h (REX_OPCODE): Define.
5410 (REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define.
5411 (rex_byte): typedef to int.
5412 * config/tc-i386.c: Group prototypes and vars together.
5413 Formatting fixes. Remove occurrences of "register" keyword.
5414 (true): Delete.
5415 (false): Delete.
5416 (mode_from_disp_size): Add INLINE keyword to prototype.
5417 (fits_in_signed_byte): Likewise.
5418 (fits_in_unsigned_byte): Likewise.
5419 (fits_in_unsigned_word): Likewise.
5420 (fits_in_signed_word): Likewise.
5421 (fits_in_unsigned_long): Likewise.
5422 (fits_in_signed_long): Likewise.
5423 (type_names): Constify.
5424 (intel_float_operand): Constify param.
5425 (add_prefix): Use REX_OPCODE.
5426 (md_assemble): Likewise. Modify for changed rex_byte.
5427 (parse_insn): Split out of md_assemble.
5428 (parse_operands): Likewise.
5429 (swap_operands): Likewise.
5430 (optimize_imm): Likewise.
5431 (optimize_disp): Likewise.
5432 (match_template): Likewise.
5433 (check_string): Likewise.
5434 (process_suffix): Likewise.
5435 (check_byte_reg): Likewise.
5436 (check_long_reg): Likewise.
5437 (check_qword_reg): Likewise.
5438 (check_word_reg): Likewise.
5439 (finalize_imm): Likewise.
5440 (process_operands): Likewise.
5441 (build_modrm_byte): Likewise.
5442 (output_insn): Likewise.
5443 (output_branch): Likewise.
5444 (output_jump): Likewise.
5445 (output_interseg_jump): Likewise.
5446 (output_disp): Likewise.
5447 (output_imm): Likewise.
5448
5449 2002-03-07 Daniel Jacobowitz <drow@mvista.com>
5450
5451 * doc/as.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
5452
5453 2002-03-06 Alan Modra <amodra@bigpond.net.au>
5454
5455 * config/tc-i386.c (tc_gen_reloc): Don't attempt to handle 8 byte
5456 relocs except when BFD64.
5457
5458 * write.c (number_to_chars_bigendian): Don't abort when N is
5459 larger than sizeof (VAL).
5460 (number_to_chars_littleendian): Likewise.
5461
5462 2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
5463
5464 * config/tc-hppa.c (md_apply_fix3): Add cast.
5465 (hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
5466 e_rrsel.
5467
5468 2002-03-05 Paul Koning <pkoning@equallogic.com>
5469
5470 * tc-pdp11.c: Use VAX float format support for PDP-11 target.
5471 (parse_ac5): New function for parsing float regs in float operand.
5472 (parse_expression): Remove attempt to make literals be octal.
5473 (parse_op_no_deferred): Support float literals.
5474 (parse_op): Reject attempts to refer to float regs.
5475 (parse_fop): New function, like parse_op but for float operand.
5476 (md_assemble): Add cases to parse float operands. Also fix
5477 IMM3, IMM6, IMM8 cases to pick up the operand from the right spot.
5478
5479 2002-03-04 H.J. Lu <hjl@gnu.org>
5480
5481 * config/obj-elf.c (special_section): Add .init_array,
5482 .fini_array and .preinit_array.
5483
5484 * config/tc-ia64.h (ELF_TC_SPECIAL_SECTIONS): Remove
5485 .init_array and .fini_array.
5486
5487 2002-03-01 Jakub Jelinek <jakub@redhat.com>
5488
5489 * config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
5490 visibility.
5491 (obj_frob_symbol): Copy visibility.
5492
5493 2002-02-28 Jakub Jelinek <jakub@redhat.com>
5494
5495 * config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not
5496 s_text.
5497 (s_alpha_data): Use obj_elf_data for OBJ_ELF, not s_data.
5498
5499 2002-02-27 Nick Clifton <nickc@cambridge.redhat.com>
5500
5501 * po/es.po: Updated.
5502
5503 2002-02-26 Chris Demetriou <cgd@broadcom.com>
5504
5505 * config/tc-mips.c (mips_need_elf_addend_fixup): For embedded-PIC
5506 only, undo the changes made on 2001-06-08, with the
5507 effect being that common or extern symbols are
5508 adjusted for embedded-PIC, but weak symbols are not.
5509 (md_estimate_size_before_relax: Likewise, with the effect
5510 that extern symbols are treated the same as weak symbols
5511 only if not embedded-PIC.
5512 (mips_fix_adjustable) Likewise, with the effect that
5513 weak or extern symbols are not adjusted for embedded-PIC.
5514 (md_apply_fix3): Tweak so that the case where value is zero
5515 is handled more correctly for embedded-PIC code.
5516
5517 2002-02-26 Nick Clifton <nickc@cambridge.redhat.com>
5518
5519 * doc/as.texinfo (Overview): Add missing @ifset IA64
5520
5521 * configure.in (LINGUAS): Add es.po.
5522 * configure: Regenerate.
5523 * po/es.po: New file.
5524
5525 2002-02-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5526
5527 * config/tc-mips.c (set_at): Fix handling of 64bit register loads.
5528 (macro): Likewise. Fix la/dla address expansions for EMBEDDED_PIC
5529 and NO_PIC cases. Code cleanup.
5530 (macro2): Fix handling of 64bit register loads.
5531
5532 2002-02-25 David Mosberger <davidm@hpl.hp.com>
5533
5534 * doc/as.texinfo: Add entry for IA64.
5535 * doc/c-ia64.texi: New file.
5536
5537 2002-02-25 Alan Modra <amodra@bigpond.net.au>
5538
5539 * config/tc-hppa.c: Update copyright date.
5540
5541 * doc/c-ppc.texi (PowerPC-Opts): Add -mpower4, -maltivec and -m7400
5542 Remove references to chip manufacturers.
5543 * config/tc-ppc.c (md_parse_option): Handle -mpower4 option.
5544 Correct comments.
5545 (md_show_usage): Remove references to chip manufacturers. Mention
5546 -mpower4.
5547 (md_begin): Test power4 opcode flag bits.
5548
5549 2002-02-22 David Mosberger <davidm@hpl.hp.com>
5550
5551 * config/tc-ia64.c (dot_restore): Issue error message of epilogue
5552 count exceeds prologue count.
5553 (md_show_usage): Describe -mconstant-gp and -mauto-pic.
5554 (unwind.label_prologue_count): New member.
5555
5556 Based on a patch by Hans Boehm <hboehm@hpl.hp.com>:
5557
5558 (get_saved_prologue_count): New function.
5559 (save_prologue_count): New function.
5560 (free_saved_prologue_count): New function.
5561 (dot_label_state): Record state label by calling save_prologue_count().
5562 (dot_copy_state): Restore prologue count by calling
5563 get_saved_prologue_count().
5564 (generate_unwind_image): Free up list of saved prologue
5565 counts by calling free_saved_prologue_counts().
5566
5567 2002-02-22 Nick Clifton <nickc@cambridge.redhat.com>
5568
5569 * config/tc-tic54x.c: Add missing prototypes and remove ANSI style
5570 function declarations.
5571
5572 2002-02-21 Nick Clifton <nickc@cambridge.redhat.com>
5573
5574 * NEWS: Note that GASP is now deprecated.
5575 * Makefile.am: Do not build gasp-new by default.
5576 * Makefile.in: Regenerate.
5577 * doc/Makefile.am: Do not install gasp.info.
5578 * doc/Makefile.in: Regenerate.
5579 * gas/gasp.texi: Note that gasp is now deprecated.
5580
5581 2002-02-20 Nick Clifton <nickc@cambridge.redhat.com>
5582
5583 * NEWS: Mark 2.12 branch.
5584
5585 2002-02-19 Tom Tromey <tromey@redhat.com>
5586
5587 * config/tc-xstormy16.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
5588
5589 2002-02-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
5590
5591 * config/tc-mips.c (md_parse_option): Complain about invalid -mabi
5592 option input.
5593
5594 2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
5595
5596 * config/tc-s390.c (md_parse_option): Add switches -m31 and -m64.
5597 Make bit size independent of architecture switch.
5598 (md_begin): Add warning for -m64 with -Aesa.
5599 (s390_md_end): Use renamed architecture defines.
5600
5601 2002-02-18 Daniel Jacobowitz <drow@mvista.com>
5602
5603 * config/obj-coff.h: Check !target_big_endian, not shl, for coff-sh.
5604
5605 2002-02-16 Nick Clifton <nickc@cambridge.redhat.com>
5606
5607 * doc/as.texinfo (Machine Dependencies): Fix typo: MMIX used
5608 instead of CRIS.
5609
5610 2002-02-15 Chris Demetriou <cgd@broadcom.com>
5611
5612 * config/tc-mips.c (md_estimate_size_before_relax): Really
5613 make sure we treat weak like extern only for ELF. (Fixes
5614 patch from 2001-07-25.)
5615
5616 2002-02-15 Ben Elliston <bje@redhat.com>
5617
5618 * doc/as.texinfo: Add duplicate directory entry so that "info gas"
5619 works as expected.
5620
5621 2002-02-15 Hans-Peter Nilsson <hp@bitrange.com>
5622
5623 * NEWS: Mention support for MMIX.
5624
5625 2002-02-13 Chris Demetriou <cgd@broadcom.com>
5626
5627 * config/tc-mips.c (mips_need_elf_addend_fixup): Restructure into
5628 a sequence of indpendent 'if' statements for easier debugging
5629 and future modification.
5630
5631 2002-02-13 Matt Fredette <fredette@netbsd.org>
5632
5633 * config/tc-m68k.c (md_show_usage): No longer display a
5634 hard-coded "68020" for the default CPU, instead display the
5635 canonical name of the true, configured default CPU.
5636 (m68k_elf_final_processing): Mark objects for sub-68020
5637 CPUs with the new EF_M68000 flag.
5638
5639 2002-02-13 Andreas Schwab <schwab@suse.de>
5640
5641 * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust
5642 pc-relative relocations to merge sections in 64-bit mode.
5643
5644 2002-02-13 Ben Elliston <bje@redhat.com>
5645
5646 * NEWS: Document floating point number handling in gasp.
5647 * gasp.c: Include <assert.h> and "xregex.h".
5648 (is_flonum): New function.
5649 (chew_flownum): Likewise.
5650 (change_base): Consume flonums from the input, where possible.
5651 * doc/gasp.texi (Constants): Document floating point numbers.
5652
5653 2002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca>
5654
5655 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types
5656 that implicitly use LR and RR selectors.
5657
5658 2002-02-12 Alexandre Oliva <aoliva@redhat.com>
5659
5660 * config/tc-mn10300.c (other_registers): Added `epsw'. Mark `pc'
5661 and `epsw' as available on AM33 and above only.
5662 (other_register_name): Add logic to handle machine type encoded in
5663 reg_number.
5664
5665 2002-02-11 Tom Rix <trix@redhat.com>
5666
5667 * config/tc-ppc.c (md_apply_fix3): Check for insert fop invalid for
5668 xcoff64.
5669
5670 2002-06-11 Alexandre Oliva <aoliva@redhat.com>
5671
5672 * config/tc-sparc.c (U0x80000000, U0xffffffff): New constants.
5673 Use all over.
5674
5675 2002-02-11 Jan Hubicka <jh@suse.cz>
5676
5677 * i386.c (md_assemble): Support 32bit address prefix.
5678 (i386_displacement): Likewise.
5679 (i386_index_check): Accept 32bit addressing in 64bit mode.
5680
5681 2002-02-11 Alexandre Oliva <aoliva@redhat.com>
5682
5683 * config/tc-sh.c (dot): Removed unused function.
5684
5685 2002-02-11 Alan Modra <amodra@bigpond.net.au>
5686
5687 * Makefile.am: "make dep-am".
5688 * Makefile.in: Regenerate.
5689 * aclocal.m4: Regenerate.
5690 * config.in: Regenerate.
5691 * configure: Regenerate.
5692 * doc/Makefile.in: Regenerate.
5693
5694 2002-02-10 Richard Henderson <rth@redhat.com>
5695
5696 * doc/c-alpha.texi: New file.
5697 * doc/Makefile.am (CPU_DOCS): Add it.
5698 * doc/all.texi, doc/as.texinfo: Add hooks for Alpha.
5699
5700 2002-02-09 Richard Henderson <rth@redhat.com>
5701
5702 * config/tc-alpha.c (O_samegp): New.
5703 (USER_RELOC_P): Include it.
5704 (alpha_reloc_op_tag, debug_exp, find_macro_match): Add it.
5705 (md_apply_fix3): Handle BFD_RELOC_ALPHA_BRSGP.
5706 (alpha_force_relocation, alpha_fix_adjustable): Likewise.
5707 (alpha_validate_fix): New.
5708 * config/tc-alpha.h (TC_VALIDATE_FIX): New.
5709
5710 2002-02-09 Hans-Peter Nilsson <hp@axis.com>
5711
5712 * doc/c-cris.texi: New.
5713 * doc/all.texi: @set CRIS.
5714 * doc/as.texinfo: Ditto. Add CRIS gas manpage option overview.
5715 Include c-cris.texi.
5716 * doc/Makefile.am (CPU_DOCS): Add c-cris.texi
5717 * doc/Makefile.in: Regenerate.
5718
5719 2002-02-08 Chris Demetriou <cgd@broadcom.com>
5720
5721 * config/tc-mips.c (IS_SEXT_32BIT_NUM): New macro to
5722 determine if a number is a sign-extended 32-bit number.
5723 (load_register): Use IS_SEXT_32BIT_NUM.
5724 (macro): Check if load/store macro handling is using a
5725 constant 32-bit address on 64-bit address systems, and if
5726 so optimize the generation of that address.
5727
5728 2002-02-08 Richard Henderson <rth@redhat.com>
5729
5730 * config/tc-alpha.c (alpha_force_relocation): Don't assert that
5731 we've eliminated all foreign relocation types yet.
5732 (alpha_fix_adjustable): Likewise.
5733
5734 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
5735
5736 Contribute sh64-elf.
5737 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
5738 Stephen Clarke <Stephen.Clarke@st.com>
5739 * doc/c-sh64.texi: Fix citation of SH64 architecture manual.
5740 2002-01-31 Alexandre Oliva <aoliva@redhat.com>
5741 * config/tc-sh.c (md_relax_table): Added default sizes for
5742 non-PC-relative UNDEF_MOVI, and relaxation sequences for
5743 MOVI_16, MOVI_32 and MOVI_48.
5744 * config/tc-sh64.c (shmedia_md_apply_fix3): Fix warning.
5745 (shmedia_md_convert_frag): Handle non-PC-relative UNDEF_MOVI
5746 and MOVI_16.
5747 (shmedia_md_estimate_size_before_relax): Remove redundant
5748 blocks. Set fragP->fr_var even if relaxation type unchanged.
5749 Retain UNDEF_MOVI until expression decays to number.
5750 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
5751 * config/tc-sh64.c (shmedia_init_reloc): Handle new SHmedia PIC
5752 relocation types. Take fixP->fx_addnumber into account too.
5753 (shmedia_md_apply_fix): Likewise.
5754 (shmedia_md_convert_frag): Likewise.
5755 (shmedia_build_Mytes): Likewise.
5756 (sh64_consume_datalabel): Complain about nested datalabel.
5757 Support PIC relocs. Call sh_parse_name.
5758 * config/tc-sh64.h (TC_RELOC_RTSYM_LOC_FIXUP): Extend definition
5759 in tc-sh.h to SHmedia reloc types.
5760 * config/tc-sh.c (SH64PCRELPLT, MOVI_PLT, MOVI_GOTOFF,
5761 MOVI_GOTPC): New relaxation constants.
5762 (md_relax_table): Introduce relaxation directives for PIC-related
5763 constants.
5764 (sh_PIC_related_p): Handle datalabel.
5765 (sh_check_fixup): Choose SH5 PIC relocations.
5766 (sh_cons_fix_new): Added BDF_RELOC_64.
5767 (md_apply_fix3, sh_parse_name): Handle GOTPLT.
5768 2002-01-18 Alexandre Oliva <aoliva@redhat.com>
5769 * config/tc-sh64.c (sh64_max_mem_for_rs_align_code): If the
5770 current ISA is SHmedia, get 7 bytes.
5771 2001-11-28 Nick Clifton <nickc@cambridge.redhat.com>
5772 * config/tc-sh.c (md_apply_fix3): Treat shmedia_md_apply_fix3 as a
5773 void function.
5774 * config/tc-sh64.c (shmedia_apply_fix): Rename to
5775 shmedia_apply_fix3 and make void.
5776 2001-05-17 Alexandre Oliva <aoliva@redhat.com>
5777 * config/tc-sh64.c (s_sh64_abi): Remove unused arguments passed to
5778 as_bad.
5779 2001-04-12 Alexandre Oliva <aoliva@redhat.com>
5780 * config/tc-sh64.h (md_parse_name): Take &c as argument.
5781 2001-03-14 DJ Delorie <dj@redhat.com>
5782 * doc/Makefile.am (CPU_DOCS): Added c-sh64.texi
5783 * doc/Makefile.in(CPU_DOCS): Ditto.
5784 * doc/c-sh64.texi: New file.
5785 * doc/as.texinfo: Add SH64 support.
5786 2001-03-13 DJ Delorie <dj@redhat.com>
5787 * config/tc-sh64.c (shmedia_get_operands): Rename A_RESV_Fx to
5788 A_REUSE_PREV so that its purpose is more obvious.
5789 (shmedia_build_Mytes): Ditto.
5790 2001-03-07 DJ Delorie <dj@redhat.com>
5791 * config/tc-sh64.c (sh64_vtable_entry): New, strip datalabels
5792 before processing.
5793 (sh64_vtable_inherit): Ditto.
5794 (strip_datalabels): New, strip "datalabel" from given line.
5795 * config/tc-sh.c (md_pseudo_table): Add sh64-specific vtable
5796 pseudos.
5797 2001-03-06 Hans-Peter Nilsson <hpn@cygnus.com>
5798 * config/tc-sh64.c (shmedia_md_assemble): Move dwarf2_emit_insn
5799 call ...
5800 (shmedia_build_Mytes): ... to here.
5801 2001-03-06 DJ Delorie <dj@redhat.com>
5802 * config/tc-sh.c: Remove sh64-specific uaquad now that there
5803 is a generic one.
5804 2001-01-21 Hans-Peter Nilsson <hpn@cygnus.com>
5805 * config/tc-sh64.h (DWARF2_LINE_MIN_INSN_LENGTH): Override.
5806 * config/tc-sh64.c (shmedia_md_assemble): Offset recorded insn
5807 address by one in call to dwarf2_emit_insn.
5808 2001-01-13 Hans-Peter Nilsson <hpn@cygnus.com>
5809 Implement ".abi" pseudo and correct .cranges descriptors. Correct
5810 alignment handling broken by imported changes.
5811 * config/tc-sh64.h (HANDLE_ALIGN): Override definition in tc-sh.h.
5812 (sh64_handle_align): Declare.
5813 (MAX_MEM_FOR_RS_ALIGN_CODE): Override definition in tc-sh.h.
5814 (sh64_max_mem_for_rs_align_code): Declare.
5815 (enum sh64_isa_values): Moved here from tc-sh64.c.
5816 (md_do_align): Define.
5817 (sh64_do_align): Declare.
5818 (struct sh64_tc_frag_data): New.
5819 (TC_FRAG_TYPE): Change to struct sh64_tc_frag_data. Users
5820 changed.
5821 (TC_FRAG_INIT): Change to set new datatype.
5822 (struct sh64_segment_info_type): Rename member
5823 last_flushed_location to last_contents_mark. All users changed.
5824 (md_elf_section_change_hook, TC_CONS_FIX_NEW): Do not define.
5825 (shmedia_elf_new_section, sh64_tc_cons_fix_new): Do not prototype.
5826 * config/tc-sh.c (md_pseudo_table): Add ".abi".
5827 (sh_elf_cons) [HAVE_SH64]: Call sh64_update_contents_mark instead
5828 of unsetting seen_insn.
5829 (md_assemble) [HAVE_SH64] <before new SHcompact sequence>: Also
5830 call sh64_update_contents_mark.
5831 (sh_handle_align): Remove HAVE_SH64-conditioned code.
5832 * config/tc-sh64.c (sh64_isa_mode): Correct type from boolean to
5833 enum sh64_isa_values.
5834 (sh64_set_contents_type): Drop segT parameter. All callers changed.
5835 (emitting_crange): Boolean guard moved to file scope from function
5836 scope in sh64_set_contents_type.
5837 (s_sh64_abi): New.
5838 (sh64_update_contents_mark): New; most split out from
5839 sh64_flush_pending_output.
5840 (shmedia_md_end): Call sh64_update_contents_mark. Set
5841 sh64_isa_mode to sh64_isa_sh5_guard unless sh64_isa_unspecified.
5842 (sh64_do_align): New function.
5843 (sh64_max_mem_for_rs_align_code): New function.
5844 (sh64_handle_align): Rename from shmedia_do_align. Make
5845 non-static. Add head comment. Emit zero bytes for n bytes modulo
5846 four. Change return-type to void.
5847 (shmedia_elf_new_section): Remove.
5848 (shmedia_md_assemble): Call sh64_update_contents_mark.
5849 (s_sh64_mode): Ditto. Do not call md_flush_pending_output. Make
5850 new frag. Call sh64_update_contents_mark after making the new
5851 frag.
5852 (sh64_flush_pending_output): Just call sh64_update_contents_mark
5853 and sh_flush_pending_output.
5854 (sh64_flag_output): Also call md_flush_pending_output, but add
5855 condition on not emitting_crange.
5856 (sh64_tc_cons_fix_new): Remove.
5857 2001-01-12 Nick Clifton <nickc@redhat.com>
5858 * config/tc-sh64.c (shmedia_do_align): Fix to work with new
5859 alignment handling scheme imported from sourceware.
5860 2001-01-12 Hans-Peter Nilsson <hpn@cygnus.com>
5861 * config/tc-sh64.h (TARGET_FORMAT): Define.
5862 (sh64_target_format): Prototype.
5863 * config/tc-sh64.c (sh64_target_mach): New function.
5864 2001-01-07 Hans-Peter Nilsson <hpn@cygnus.com>
5865 * config/tc-sh64.c (shmedia_md_end): When equating a symbol, use
5866 zero_address_frag instead of copying the frag of the symbol.
5867 (shmedia_frob_file_before_adjust): Ditto.
5868 (shmedia_md_apply_fix) <case BFD_RELOC_SH_IMM_MEDLOW16>: Cast mask
5869 to valueT to remove signedness.
5870 (shmedia_md_convert_frag): Add parameter final. Rename parameter
5871 headers to output_bfd. Do not evaluate symbols if final is false;
5872 do emit fixups.
5873 (shmedia_md_estimate_size_before_relax) <case C (MOVI_IMM_32,
5874 UNDEF_MOVI) et al>: If symbol cannot be modified to be PC-relative
5875 to the current frag, call shmedia_md_convert_frag to emit fixups
5876 and make frag_wane neutralize the frag. Update comments.
5877 * config/tc-sh.c (md_convert_frag): Change caller of
5878 shmedia_md_convert_frag.
5879 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
5880 * config/tc-sh64.h: Tweak comments and correct formatting.
5881 * config/tc-sh64.c: Ditto.
5882 (shmedia_md_convert_frag) <PT/PTA/PTB 32, 48 and 64 bit
5883 expansion, MOVI pcrel expansion>: Fix thinko calculating offset
5884 for the no-relocation case.
5885 (shmedia_check_limits): Fix range check being off-by-one for PTA.
5886 * config/tc-sh.c: Ditto. Add proper comments to #ifdef/#ifndef
5887 wrappers.
5888 (SH64PCREL16_F): Increment for proper max-PTA handling. Update
5889 comment.
5890 (SH64PCREL16_M, MOVI_16_M): Correct range thinko.
5891 (SH64PCREL48_M, MOVI_48_M): Similar; don't count in length of
5892 expansion.
5893 (SH64PCREL32_M, MOVI_32_M): Ditto; handle overflowing expression.
5894 Correct comment.
5895 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
5896 * config/tc-sh64.c (shmedia_md_apply_fix) <second switch, case
5897 BFD_RELOC_SH_PT_16>: Set lowest bit in field to be relocated to 1.
5898 (shmedia_md_convert_frag) <case C (SH64PCREL16_32, SH64PCREL16) et
5899 al>: Set lowest bit of field to relocate to 1 and rest to empty,
5900 if reloc is emitted.
5901 2000-12-31 Hans-Peter Nilsson <hpn@cygnus.com>
5902 New options plus bugfixes.
5903 * config/tc-sh.c (md_longopts): New options "-no-expand" and
5904 "-expand-pt32".
5905 (md_parse_option): Handle new options.
5906 (md_show_usage): Add blurb for new options.
5907 * config/tc-sh64.c (SHMEDIA_BFD_RELOC_PT): New macro.
5908 (sh64_expand, sh64_pt32): New variables.
5909 (shmedia_init_reloc): Handle BFD_RELOC_SH_PT_16.
5910 (shmedia_md_apply_fix): Hold original fixP->fx_r_type in
5911 orig_fx_r_type. Change SHMEDIA_BFD_RELOC_PT into
5912 BFD_RELOC_SH_PT_16. Handle BFD_RELOC_SH_PT_16 as pc-relative.
5913 <resolved previously-pc-relative relocs>: Handle
5914 SHMEDIA_BFD_RELOC_PT and BFD_RELOC_SH_PT_16.
5915 (shmedia_md_convert_frag) <case C (SH64PCREL16PT_64, SH64PCREL16),
5916 case C (SH64PCREL16PT_32, SH64PCREL16)>: Modify to PTB if operand
5917 points to SHcompact code.
5918 <case C (SH64PCREL16_32, SH64PCREL16), case C (SH64PCREL16_64,
5919 SH64PCREL16)>: Check that ISA of what operand points at and
5920 PTA/PTB matches, or emit error.
5921 (shmedia_check_limits): Handle BFD_RELOC_SH_PT_16 and
5922 SHMEDIA_BFD_RELOC_PT.
5923 (shmedia_immediate_op): If pcrel, emit fixup also for constant
5924 operand.
5925 (shmedia_build_Mytes) <case A_IMMS16>: Also check sh64_expand in
5926 condition for MOVI expansion.
5927 <case A_PCIMMS16BY4>: Handle expansion to 32 bits only, if
5928 sh64_pt32. Emit only a BFD_RELOC_SH_PT_16 fixup if not
5929 sh64_expand.
5930 <case A_PCIMMS16BY4_PT>: Likewise, but emit a SHMEDIA_BFD_RELOC_PT
5931 fixup.
5932 (sh64_target_format): Error-check setting of sh64_pt32 and
5933 sh64_expand. Fix typo in check for sh64_shcompact_const_crange.
5934 (shmedia_md_pcrel_from_section): Handle BFD_RELOC_SH_PT_16 and
5935 SHMEDIA_BFD_RELOC_PT as coming from SHmedia code.
5936 2000-12-31 Hans-Peter Nilsson <hpn@cygnus.com>
5937 * config/tc-sh64.c: Improve comments.
5938 (shmedia_md_convert_frag): Remove inactive is_pt_variant code. Do
5939 not say the linker will check correctness of PTA/PTB expansion.
5940 (shmedia_md_end): Make non-static.
5941 * config/tc-sh64.h (md_end): Define to shmedia_md_end. Add
5942 prototype.
5943 * config/tc-sh.c (sh_finalize): Remove.
5944 * config/tc-sh.h (md_end): Do not define.
5945 Remove prototype for sh_finalize.
5946 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
5947 * config/tc-sh64.c (shmedia_frob_section_type): Use a struct
5948 sh64_section_data container when storing section type in tdata
5949 field in elf_section_data.
5950 * config/tc-sh.c (sh_elf_final_processing): Change from EF_SH64 to
5951 EF_SH5.
5952 * Makefile.am: Update dependencies.
5953 * Makefile.in: Regenerate.
5954 2000-12-22 Hans-Peter Nilsson <hpn@cygnus.com>
5955 * config/tc-sh64.c (shmedia_md_assemble): Don't protect
5956 dwarf2_emit_insn call with test on debug_type.
5957 2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
5958 * config/tc-sh64.c (sh64_set_contents_type): Make contents-type
5959 CRT_SH5_ISA32 sticky for 64-bit.
5960 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
5961 Generate .crange sections when switching ISA mode or emitting
5962 constants in same section as code.
5963 * config/tc-sh64.c: Reformat structure definitions.
5964 (sh64_end_of_assembly, sh64_mix, sh64_shcompact_const_crange): New
5965 variables.
5966 (sh64_set_contents_type): Rename from sh64_init_section. Rewrite
5967 to emit a .cranges descriptor when contents type changes. Only
5968 emit error if changing contents type and -no-mix is in effect.
5969 (sh64_emit_crange, sh64_flush_last_crange, sh64_flag_output,
5970 sh64_flush_pending_output, sh64_tc_cons_fix_new): New functions.
5971 (shmedia_md_end): Set sh64_end_of_assembly. Pass
5972 sh64_flush_last_crange over sections.
5973 When checking main symbol of datalabel symbol, check for
5974 STO_SH5_ISA32, not ISA type of section in definition.
5975 (shmedia_frob_file_before_adjust): Check main symbol for
5976 STO_SH5_ISA32; don't check ISA type of section in definition.
5977 (shmedia_frob_section_type): Adjust for .cranges; set section flag
5978 to SHF_SH5_ISA32_MIXED or SHF_SH5_ISA32 according to whether
5979 .cranges entries have been output.
5980 (shmedia_elf_new_section): Just call md_flush_pending_output.
5981 (shmedia_md_assemble): Do not emit a BFD_RELOC_SH_SHMEDIA_CODE
5982 fix. Do not set tc_segment_info_data.in_code for section. Call
5983 sh64_set_contents_type for SHmedia code.
5984 (s_sh64_mode): Do not call sh64_init_section or set seen_insn to
5985 false. Call md_flush_pending_output.
5986 (sh64_target_format): Check that -no-mix and
5987 -shcompact-const-crange are used in sane combination with other
5988 options.
5989 (shmedia_md_pcrel_from_section): Check type of fix for how to
5990 adjust pc-relative.
5991 (sh64_consume_datalabel): Check symbol for having STO_SH5_ISA32,
5992 not ISA type of section in definition.
5993 * config/tc-sh64.h (struct sh64_segment_info_type): Rewrite to
5994 hold contents-type state.
5995 (md_flush_pending_output): Redefine to sh64_flush_pending_output.
5996 (sh64_flush_pending_output): Declare.
5997 (TC_CONS_FIX_NEW): Define to sh64_tc_cons_fix_new.
5998 (sh64_tc_cons_fix_new): Declare.
5999 * config/tc-sh.c (sh_elf_cons) [HAVE_SH64]: Unset seen_insn and
6000 call sh64_flag_output.
6001 (md_assemble) [HAVE_SH64]: Do not emit BFD_RELOC_SH_CODE. Just
6002 call sh64_set_contents_type to mark SHcompact code and set
6003 seen_insn.
6004 (md_longopts): New options "-no-mix" and
6005 "-shcompact-const-crange".
6006 (md_parse_option): Handle new options.
6007 (md_show_usage): Add blurb for new options.
6008 (md_number_to_chars) [HAVE_SH64]: Call sh64_flag_output.
6009 2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
6010 * config/tc-sh64.c: Delete investigated and obsolete fixme:s.
6011 (sh64_last_insn_frag): New.
6012 (shmedia_md_convert_frag): Use tc_frag_data field of incoming frag
6013 to get frag for insn opcode for generating fixups; do not assume it
6014 is the same frag.
6015 (shmedia_build_Mytes): Set sh64_last_insn_frag after growing frag
6016 for new insn.
6017 * config/tc-sh64.h (ELF_TC_SPECIAL_SECTIONS): Define for .cranges
6018 section.
6019 (TC_FRAG_TYPE): Define as fragS *.
6020 (TC_FRAG_INIT): Define to set tc_frag_data to sh64_last_insn_frag.
6021 (sh64_last_insn_frag): Declare.
6022 (sh64_consume_datalabel): Fix typo; check for seginfo != NULL,
6023 not == NULL before dereferencing.
6024 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
6025 Get rid of BFD section flag and EF_SH64_ABI64.
6026 * config/tc-sh64.c (shmedia_frob_section_type): Use
6027 elf_section_data (sec)->tdata, not a specific BFD section flag, to
6028 communicate the section as containing SHmedia code. Describe why.
6029 * config/tc-sh.c (sh_elf_final_processing): Tweak comment. Set
6030 EF_SH64 regardless of ABI.
6031 * config/tc-sh64.c (shmedia_md_apply_fix): Decapitalize "invalid"
6032 in error message. Handle resolved expressions for
6033 BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
6034 BFD_RELOC_SH_IMMS10BY4 and BFD_RELOC_64.
6035 (shmedia_check_limits): Handle BFD_RELOC_64.
6036 (sh64_adjust_symtab): Do not decrement the GAS symbol value for
6037 a STO_SH5_ISA32 symbol, only the BFD value.
6038 2000-12-11 Ben Elliston <bje@redhat.com>
6039 * config/tc-sh64.c: Call dwarf2_emit_insn, not the defunct
6040 dwarf2_generate_asm_lineno.
6041 2000-12-11 Hans-Peter Nilsson <hpn@cygnus.com>
6042 Handle PC-relative MOVI expansions with assembler relaxation.
6043 Generate PC-relative relocs from 16-bit PC-relative expressions.
6044 * config/tc-sh64.c (SHMEDIA_MD_PCREL_FROM_FIX): Break out from...
6045 (shmedia_md_pcrel_from_section): ...here.
6046 (shmedia_md_apply_fix): Handle fixups for 16-bit operands that has
6047 turned completely resolved. Adjust relocation type for 16-bit
6048 immediate operands that has turned PC-relative. Adjust back for
6049 MD_PCREL_FROM_SECTION being applied twice.
6050 (shmedia_md_convert_frag): Always emit reloc for expression with
6051 global or weak symbol. Handle relaxation result for PC-relative
6052 expressions.
6053 (shmedia_md_estimate_size_before_relax): An expression with a weak
6054 or global symbol can not be relaxed. Break out tests for
6055 relaxable symbol into variable sym_relaxable.
6056 <cases C (MOVI_IMM_64, UNDEF_MOVI) and C (MOVI_IMM_32,
6057 UNDEF_MOVI)>: Break out any PC-relative expression and change
6058 relaxation type.
6059 (shmedia_build_Mytes): CSE &operands->operands[j] into variable
6060 opjp.
6061 <case A_IMMS16>: Fix typo for initial minor relaxation type of
6062 MOVI expansion. If X_op_symbol of the immediate expression is
6063 set, make an expression symbol for the argument to frag_var.
6064 * config/tc-sh.c (MOVI_IMM_32_PCREL, MOVI_IMM_64_PCREL): New
6065 relaxations.
6066 (END): Adjust for new relaxations.
6067 (md_relax_table): Add entries for new relaxations.
6068 2000-12-07 Ben Elliston <bje@redhat.com>
6069 * config/tc-sh64.c (shmedia_parse_reg): Initialize variable len.
6070 2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com>
6071 * config/tc-sh64.c (shmedia_md_convert_frag): Correct all MOVI and
6072 SHORI operand offsets in PT/PTA/PTB expansions.
6073 2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com>
6074 Implement DataLabel semantics.
6075 * config/tc-sh.c (sh_frob_file) [HAVE_SH64]: Call
6076 shmedia_frob_file_before_adjust.
6077 * config/tc-sh64.c [! OBJ_ELF]: Emit #error.
6078 (DATALABEL_SUFFIX): Define.
6079 (shmedia_md_end) <before adjusting STO_SH5_ISA32 symbols>: Walk
6080 symbol list to update "datalabel" symbols to their main symbol
6081 counterparts.
6082 (shmedia_frob_file_before_adjust): New.
6083 (sh64_adjust_symtab): For remaining datalabel symbols, set to
6084 undefined and set STT_DATALABEL.
6085 (sh64_frob_label): Initialize TC symbol field.
6086 (sh64_consume_datalabel): Actually implement semantics. New
6087 parameter operandf, call it instead of expression.
6088 (sh64_exclude_symbol): New.
6089 * config/tc-sh64.h (md_parse_name): Pass on the function operand
6090 to sh64_consume_datalabel.
6091 (tc_symbol_new_hook): Define to tc_frob_symbol.
6092 (TC_SYMFIELD_TYPE): Define to symbolS *.
6093 (tc_frob_symbol): Define to call sh64_exclude_symbol.
6094 2000-12-01 Hans-Peter Nilsson <hpn@cygnus.com>
6095 * config/tc-sh64.c (shmedia_init_reloc): Tweak comment for default
6096 case.
6097 (shmedia_md_assemble): Call dwarf2_generate_asm_lineno if
6098 generating dwarf2 debug information.
6099 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
6100 * config/tc-sh64.c (sh64_target_format): Use elf64-sh64l and
6101 elf64-sh64 for the 64-bit ABI.
6102 * config/tc-sh.c (md_show_usage): Tweak usage output for -abi=*
6103 option.
6104 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
6105 * config/tc-sh.c: Remove conditionalizing on HAVE_SH64 for
6106 case-insensitivity.
6107 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com>
6108 * config/tc-sh64.c: Tweak comments, formatting and error messages.
6109 (enum sh64_abi_values): New type.
6110 (enum sh64_isa_values): New type.
6111 (sh64_isa_mode): Replace shmedia_mode. All referers changed.
6112 (seen_shcompact_mode, seen_shmedia_mode): Delete.
6113 (sh64_abi): Replace shmedia_64.
6114 (shmedia_md_convert_frag) <C (MOVI_IMM_64, MOVI_64),
6115 C (MOVI_IMM_32, MOVI_32)>: Correct register number handling.
6116 (s_sh64_mode): Check validity for this target.
6117 (sh64_target_format): Initialize defaults for ISA and ABI.
6118 Fallback to old object format if no SH64 ISA or ABI has been
6119 specified.
6120 * config/tc-sh.c (md_parse_option): Check combinations for errors.
6121 (sh_elf_final_processing): Change to have EF_SH64_ABI64 for 64-bit
6122 ABI and EF_SH64 for 32-bit ABI, if SH64 options are specified.
6123 * config/tc-sh64.h: Fix typo in comment.
6124 2000-11-25 Hans-Peter Nilsson <hpn@cygnus.com>
6125 * config/tc-sh64.c (shmedia_md_estimate_size_before_relax)
6126 <PT fixups for absolute values>: Size will be longest, not
6127 shortest.
6128 (shmedia_md_convert_frag): Disable PTB-warning machinery. Correct
6129 all MOVI and SHORI operand offsets in PT/PTA/PTB expansions.
6130 * config/tc-sh.c (parse_reg) [HAVE_SH64]: Add local variables l0
6131 and l1 to hold lowercase of two first characters. Change all
6132 remaining TO_LOWER to tolower.
6133 * config/tc-sh64.c (TO_LOWER): Delete.
6134 (shmedia_find_cooked_opcode): Use tolower, not TO_LOWER.
6135 (md_parse_name): Define.
6136 (sh64_consume_datalabel): Declare.
6137 (DOLLAR_DOT): Define.
6138 * config/tc-sh64.c (shmedia_parse_exp): New.
6139 (sh64_consume_datalabel): New; just ignoring datalabel semantics.
6140 (shmedia_parse_reg): Remove const from src
6141 parameter.
6142 (shmedia_get_operands): Ditto for args parameter and ptr variable.
6143 (shmedia_md_assemble): Ditto for op_end variable.
6144 (shmedia_get_operand): Ditto for ptr parameter and src variable.
6145 Use shmedia_parse_exp, not parse_exp.
6146 * config/tc-sh64.c (shmedia_parse_reg): Add shmedia_arg_type
6147 parameter. All callers changed.
6148 (shmedia_get_operand): Add shmedia_arg_type parameter. All
6149 callers changed.
6150 (shmedia_parse_reg): Put first two character in local variables.
6151 Use tolower, not TO_LOWER. If no register is found and argtype
6152 indicates a control register, scan shmedia_creg_table
6153 case-insensitive.
6154 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
6155 * Makefile.am (CPU_TYPES): Add sh64.
6156 (TARGET_CPU_CFILES): Add config/tc-sh64.c.
6157 (TARGET_CPU_HFILES): Add config/tc-sh64.h.
6158 Regenerate dependencies.
6159 * Makefile.in: Regenerate.
6160 * configure.in: Add support for sh64-*-elf*.
6161 * configure: Regenerate.
6162 * config/tc-sh64.h: New.
6163 * config/tc-sh64.c: New.
6164 * config/tc-sh.c (md_pseudo_table) [HAVE_SH64]: New pseudos
6165 .mode, .isa and .uaquad.
6166 [HAVE_SH64] (SH64PCREL16_32, SH64PCREL16_64, SH64PCREL16PT_32,
6167 SH64PCREL16PT_64, MOVI_IMM_32, MOVI_IMM_64): Define.
6168 [HAVE_SH64] (END): Define as 10.
6169 [HAVE_SH64] (UNDEF_SH64PCREL, SH64PCREL16, SH64PCREL32,
6170 SH64PCREL48, SH64PCREL64, UNDEF_MOVI, MOVI_16, MOVI_32, MOVI_48,
6171 MOVI_64): Define.
6172 [HAVE_SH64] (SH64PCREL16_F, SH64PCREL16_M, SH64PCREL16_LENGTH,
6173 SH64PCREL32_F, SH64PCREL32_M, SH64PCREL32_LENGTH, SH64PCREL48_F,
6174 SH64PCREL48_M, SH64PCREL48_LENGTH, SH64PCREL64_LENGTH,
6175 MOVI_16_LENGTH, MOVI_32_LENGTH, MOVI_48_LENGTH, MOVI_64_LENGTH):
6176 Define.
6177 (md_relax_table) [HAVE_SH64]: Provide relaxations for SHmedia.
6178 (md_begin) [HAVE_SH64]: Call shmedia_md_begin.
6179 (parse_reg) [HAVE_SH64]: Parse register names case-insensitive.
6180 (md_assemble) [HAVE_SH64]: Call shmedia_md_assemble if assembling
6181 SHmedia instructions. Handle state-change after switching to
6182 SHcompact.
6183 (md_longopts) [HAVE_SH64]: New options --isa=* and --abi=*.
6184 (md_parse_option) [HAVE_SH64]: Parse new options.
6185 (md_show_usage) [HAVE_SH64]: Show usage of new options.
6186 (md_convert_frag) [HAVE_SH64] <default>: Call
6187 shmedia_md_convert_frag instead of abort.
6188 (sh_force_relocation) [HAVE_SH64]: Also force relocation for
6189 BFD_RELOC_SH_SHMEDIA_CODE.
6190 (sh_elf_final_processing) [HAVE_SH64]: Set flags identifying
6191 SHcompact or SHmedia code.
6192 (md_apply_fix) [HAVE_SH64] <default>: Return result from calling
6193 shmedia_md_apply_fix instead of abort.
6194 (md_estimate_size_before_relax) [HAVE_SH64] <default>: Return
6195 result from calling shmedia_md_estimate_size_before_relax instead
6196 of calling abort.
6197 (sh_do_align) [HAVE_SH64]: If shmedia_mode, let shmedia_do_align
6198 do the work.
6199 (tc_gen_reloc) [HAVE_SH64]: For unrecognized relocs, call
6200 shmedia_init_reloc and do nothing more if it returns non-zero.
6201 (sh_finalize) [HAVE_SH64]: Call shmedia_md_end.
6202 * po/POTFILES.in: Regenerate.
6203 * po/gas.pot: Regenerate.
6204
6205 2002-02-06 Alexandre Oliva <aoliva@redhat.com>
6206
6207 * config/tc-sh.c (parse_at): Install the correct version of
6208 2002-02-04's patch.
6209
6210 * config/tc-sh.c (md_apply_fix3) <BFD_RELOC_32_PLT_PCREL>: Don't
6211 assume fixP->fx_subsy is non-NULL.
6212
6213 2002-02-04 Alexandre Oliva <aoliva@redhat.com>
6214
6215 * config/tc-sh.c (parse_at): Set arg type of @(expr,pc) to
6216 A_DISP_PC_ABS, and adjust it by -4.
6217 (get_specific): Accept A_DISP_PC_ABS where A_DISP_PC is
6218 expected.
6219 (build_Mytes): Mark PCRELIMM fix-ups as pc-relative only if
6220 the operand type is not A_DISP_PC_ABS.
6221
6222 2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
6223
6224 * config/tc-mmix.c (tc_gen_reloc): Don't try and take the value of
6225 common and weak symbols. Handle common and weak symbols as
6226 undefined symbols with regards to GREG handling and merging.
6227 (mmix_frob_file): Ditto.
6228
6229 2002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
6230
6231 * configure.in (hppa-*-netbsd*): New target.
6232 * configure: Regenerate.
6233 * config/tc-hppa.h: Also define WARN_COMMENTS if TE_NetBSD.
6234
6235 2002-02-02 Alan Modra <amodra@bigpond.net.au>
6236
6237 * config/tc-v850.c: Add missing prototypes amd use old-style
6238 function definitions.
6239 (AREA_ZDA, AREA_SDA, AREA_TDA): Delete.
6240 (sdata_section tdata_section, zdata_section, sbss_section,
6241 tbss_section, zbss_section, rosdata_section, rozdata_section,
6242 scommon_section, tcommon_section, zcommon_section,
6243 call_table_data_section, call_table_text_section): Delete.
6244 (v850_sdata, v850_tdata, v850_zdata, v850_sbss, v850_tbss,
6245 v850_zbss, v850_bss, v850_rosdata, v850_rozdata,
6246 v850_call_table_data, v850_call_table_text): Delete.
6247 (struct v850_seg_entry): New.
6248 (v850_seg_table): New.
6249 (SDATA_SECTION TDATA_SECTION, ZDATA_SECTION, SBSS_SECTION,
6250 TBSS_SECTION, ZBSS_SECTION, BSS_SECTION, ROSDATA_SECTION,
6251 ROZDATA_SECTION, SCOMMON_SECTION, TCOMMON_SECTION, ZCOMMON_SECTION,
6252 CALL_TABLE_DATA_SECTION, CALL_TABLE_TEXT_SECTION): Define.
6253 (do_v850_seg): New.
6254 (v850_seg): New.
6255 (v850_comm): Use do_v850_seg and v850_seg_table. Simplify
6256 recording of alignment.
6257 (md_pseudo_table): Use v850_seg.
6258 (md_begin): Don't init .call_table_data and .call_table_text here.
6259 Set v850_seg_table bss entry.
6260
6261 2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
6262
6263 Support on-demand global register allocation by passing on
6264 base-plus-offset relocs to the linker.
6265 * config/tc-mmix.c: Tweak and fix typos in comments.
6266 (allocate_undefined_gregs_in_linker): New variable.
6267 (OPTION_LINKER_ALLOCATED_GREGS): New option macro.
6268 (md_longopts): Add --linker-allocated-gregs.
6269 (md_parse_option) <case 'x'>: Imply --linker-allocated-gregs.
6270 <case OPTION_LINKER_ALLOCATED_GREGS>: New.
6271 (md_show_usage): Update text for -x. Add text for
6272 --linker-allocated-gregs.
6273 (tc_gen_reloc): Derive default value for addend from val and
6274 baddsy. Use addsec and bfd_is_abs_section in more places. Don't
6275 emit error for BFD_RELOC_MMIX_BASE_PLUS_OFFSET without suitable
6276 GREG if allocate_undefined_gregs_in_linker.
6277 * doc/as.texinfo (Overview) <Target MMIX options>: Add
6278 --linker-allocated-gregs.
6279 * doc/c-mmix.texi (MMIX-Opts): Add blurb about
6280 --linker-allocated-gregs. Mention that it's implied by -x.
6281 (MMIX-Pseudos) <GREG>: Mention when and how a GREG can be omitted.
6282 (MMIX-mmixal): Clarify dated comparison and location of MMIXware.
6283
6284 * config/tc-mmix.h (md_parse_name): Use ISUPPER, not isupper.
6285
6286 2002-02-01 Alan Modra <amodra@bigpond.net.au>
6287
6288 * Makefile.am: Run "make dep-am"
6289 * Makefile.in: Regenerate.
6290
6291 2002-01-31 Ivan Guzvinec <ivang@opencores.org>
6292
6293 * config/tc-or32.c: New file.
6294 * config/tc-or32.h: New file.
6295 * configure.in: Add support for or32 targets.
6296 * configure: Regenerate.
6297 * config/obj-coff.c: Add support for or32 targets.
6298 * config/obj-coff.h: Add support for or32 targets.
6299 * Makefile.am: Add support for or32 targets.
6300 * Makefile.in: Regenerate.
6301 * NEWS: Mention support for OpenRISC.
6302 * doc/Makefile.in: Regenerate.
6303 * po/POTFILES.in: Regenerate.
6304 * po/gas.pot: Regenerate.
6305
6306 2002-01-30 Richard Sandiford <rsandifo@redhat.com>
6307
6308 * config/tc-sh.c (parse_reg): Fix end-of-word check for is, ix, iy
6309 and mod.
6310
6311 2002-01-29 Chris Demetriou <cgd@broadcom.com>
6312
6313 * config/tc-mips.c (tc_gen_reloc): Arrange for
6314 BFD_RELOC_PCREL_HI16_S relocations to be output relative to
6315 their LO16 parts, even for ELF.
6316
6317 2002-01-29 Daniel Jacobowitz <drow@mvista.com>
6318
6319 * config/tc-i386.c: Protect definitions of true and false
6320 from redefinition.
6321
6322 2002-01-28 Jakub Jelinek <jakub@redhat.com>
6323
6324 * config/obj-elf.c (elf_frob_file_before_adjust): Remove symbols
6325 made because of .weak, if they are neither defined nor used in any
6326 way.
6327
6328 2002-01-27 Daniel Jacobowitz <drow@mvista.com>
6329
6330 * configure: Regenerated.
6331
6332 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
6333
6334 * doc/Makefile.am (install): Depend on install-info.
6335 * doc/Makefile.in: Regenerate.
6336
6337 2002-01-26 Nick Clifton <nick@redhat.com>
6338
6339 * po/fr.po: Updated version
6340
6341 2002-01-24 Kazu Hirata <kazu@hxi.com>
6342
6343 * config/tc-h8300.c (check_operand): Don't print a warning
6344 when a valid 24-bit address is given to a 16-bit address
6345 operand.
6346
6347 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
6348
6349 * config/tc-sh.c (sh_elf_suffix): Removed.
6350 (sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
6351 sh_end_of_match, sh_parse_name): New functions.
6352 (sh_elf_cons): Simplify.
6353 (parse_exp): Reject misplaced PIC operands.
6354 (md_undefined_symbol): Simplify.
6355 (sh_fix_adjustable): Let @GOTOFF be adjusted.
6356 (md_apply_fix3): Write @PLT and @GOTOFF addends in place.
6357 (tc_gen_reloc): Move fixp subsy absolute value into addnumber.
6358 Complain if subsy remains at the end.
6359 * config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
6360 (md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.
6361
6362 2002-01-22 Alexandre Oliva <aoliva@redhat.com>
6363
6364 * config/tc-mn10300.c (xr_registers): Move `pc'...
6365 (other_registers): ... here.
6366
6367 2002-01-22 Alan Modra <amodra@bigpond.net.au>
6368
6369 * Makefile.am: Run "make dep-am".
6370 * Makefile.in: Regenerate.
6371 * gas/po/POTFILES.in: Regenerate.
6372
6373 2002-01-21 DJ Delorie <dj@redhat.com>
6374
6375 * config/obj-coff.c (obj_coff_init_stab_section): Make the
6376 stabstr_name allocation permanent, as it will be referenced from
6377 the section hash.
6378
6379 2002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
6380
6381 * configure.in (ia64-*-netbsd*): New target.
6382 * configure: Regenerate.
6383
6384 2002-01-21 Hans-Peter Nilsson <hp@bitrange.com>
6385
6386 * doc/as.texinfo (Overview) <Target ARM options>: Add missing {}
6387 to @dots call.
6388 <Detailed description, ARM options>: Ditto.
6389 * doc/c-arm.texi (ARM Options): Ditto.
6390
6391 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
6392
6393 * tc-arm.c (do_xsc_mia, do_xsc_mar, do_xsc_mra): Renamed from
6394 do_mia, do_mar and do_mra respectively.
6395 (do_mav_*): Renamed from do_c_*.
6396 (mav_reg_required_here, mav_parse_offset): Renamed from
6397 cirrus_reg_required_here and cirrus_parse_offset respectively.
6398 (MAV_MODE?): Renamed from CIRRUS_MODE?.
6399
6400 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
6401 Keith Walker <keith.walker@arm.com>
6402
6403 * tc-arm.c (ARM_EXT_V5J, ARM_ARCH_V5TEJ): Define.
6404 (insns): Add pattern for bxj instruction.
6405 (do_bxj): New function.
6406 (arm_cpus): Add arm926ej.
6407 (arm_archs): Add armv5tej.
6408
6409 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
6410
6411 * doc/c-arm.texi: Add new fpe options to list of supported flags.
6412
6413 2002-01-19 Keith Walker <keith.walker@arm.com>
6414
6415 * tc-arm.c (arm_fpus): Add fpe2 and fpe3.
6416
6417 2002-01-18 Richard Earnshaw <rearnsha@arm.com>
6418
6419 * NEWS: Mention new ARM command-line options and VFP support.
6420
6421 * config/tc-arm.c (ARM_CEXT_XSCALE): Replaces ARM_EXT_XSCALE. All
6422 uses changed.
6423 (ARM_CEXT_MAVERICK): Similarly.
6424 (ARM_ANY): Now means any core instruction.
6425 (CPU_DEFAULT): Default to ARM_ANY.
6426 (uses_apcs_26, atcps, support_interwork, uses_apcs_float)
6427 (pic_code): Declare for all object types. Make type int.
6428 (legacy_cpu, legacy_fpu, mcpu_cpu_opt, mcpu_fpu_opt, march_cpu_opt)
6429 (march_fpu_opt, mfpu_opt): Declare.
6430 (md_longopts): Tidy up conditional definitions.
6431 (arm_opts, arm_cpus, arm_archs, arm_fpus, arm_extensions)
6432 (arm_long_opts): New tables.
6433 (arm_parse_cpu, arm_parse_arch, arm_parse_fpu): New functions.
6434 (arm_parse_extension): New function.
6435 (md_parse_option): Rewrite using new table-driven system.
6436 (md_show_usage): Use new table-driven system.
6437 (md_begin): Calculate cpu_variant from command line option data.
6438 * doc/as.texinfo (ARM ISA options): Docuement new ARM-specific
6439 command-line options.
6440 * doc/c-arm.texi: Likewise.
6441
6442 2002-01-18 Andreas Jaeger <aj@suse.de>
6443
6444 * as.c (parse_args): Update year.
6445
6446 2002-01-17 Timothy Wall <twall@alum.mit.edu>
6447
6448 * config/tc-tic54x.c (encode_address): Add a more informative
6449 warning about incorrect syntax.
6450
6451 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
6452
6453 * po/gas.pot: Regenerate.
6454
6455 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
6456
6457 * macro.c (get_any_string): Add no-c-format comment to prevent
6458 confusion when translating string.
6459 * gasp.c (get_any_string): Add no-c-format comment to prevent
6460 confusion when translating string.
6461
6462 2002-01-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
6463 Johannes Stezenbach <js@convergence.de>
6464 * config/tc-mips.c (percent_op): Ensure longer percent_op's are
6465 matched before the shorter ones.
6466 (my_getSmallParser): Fix handling of nested parentheses in
6467 percent_op's. Code cleanup.
6468 (my_getPercentOp): New function, code from my_getSmallParser.
6469 (my_getSmallExpression): Fix handling of closing parentheses.
6470 Code cleanup. Better comments.
6471
6472 2002-01-16 Nick Clifton <nickc@redhat.com>
6473
6474 po/tr.po: New file: Turkish translation.
6475 configure.in (LINGUAS): Add "tr".
6476 configure: Regenerate.
6477
6478 2002-01-15 Richard Earnshaw <rearnsha@arm.com>
6479
6480 Support for VFP instructions
6481 * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
6482 (cp_address_required_here): New argument wb_ok. When false, do not
6483 accept write-back forms of addressing. Change all callers.
6484 (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
6485 (FPU_VFP_EXT_V2): Define.
6486 (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
6487 Define in terms of above.
6488 (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
6489 (vfp_reg): New struct.
6490 (vfp_regs): New array of registers.
6491 (insns): Add VFP instructions.
6492 (sn_table): New array of VFP single-precision register names.
6493 (dn_table): New array of VFP double-precision register names.
6494 (all_reg_maps): Add the new register tables.
6495 (arm_reg_type): Add new values for above. Increase RET_TYPE_MAX.
6496 (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
6497 (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
6498 (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
6499 (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
6500 (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
6501 (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
6502 (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
6503 (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
6504 (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
6505 (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
6506 (do_vfp_sp_dp_cvt): New functions.
6507 (md_begin): Set soft-float flag for appropriate VFP work.
6508 (md_atof): Handle VFP-format doubles.
6509 (md_parse_option): Handle VFP command-line options.
6510 (md_show_usage): Display VFP command-line options.
6511
6512 2002-01-15 Richard Earnshaw <rearnsha@arm.com>
6513
6514 * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
6515 various command line options.
6516
6517 2002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
6518
6519 * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
6520 vtinherit relocs.
6521 (xstormy16_md_apply_fix3): Do not return a value.
6522
6523 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
6524
6525 * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
6526 the -EL/-EB option that matches the target's endianness.
6527 (md_parse_option): Likewise.
6528
6529 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
6530
6531 * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
6532 is not dependent on ARM_BI_ENDIAN.
6533
6534 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
6535
6536 * tc-arm.c (all error messages): Normalize capitalization of messages.
6537
6538 * tc-arm.h (md_operand): Delete define.
6539 * tc-arm.c (in_my_get_expression): New static variable.
6540 (my_get_expression): Set and clear it.
6541 (md_operand): New function. If called from my_get_expression
6542 put the error in inst.error.
6543 (output_inst): Now takes argument of instruction being assembled.
6544 Print it out with any error message.
6545 (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
6546 with '=' syntax.
6547 (end_of_line): Don't update inst.error if it is already set.
6548
6549 2002-01-11 Richard Earnshaw <rearnsha@arm.com>
6550
6551 * tc-arm.c (do_ldst): Fix handling an immediate expression pseudo
6552 op that can be translated into a mvn instruction.
6553
6554 2002-01-11 Steve Ellcey <sje@cup.hp.com>
6555
6556 * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
6557 setting default md.flags.
6558 (SHT_INIT_ARRAY): New elf special section used by HP-UX.
6559 (SHT_FINI_ARRAY): New elf special section used by HP-UX.
6560 * gas/config/tc-ia64.c (setup_unwind_header): Add support
6561 for 32 bit unwind info blocks.
6562 (generate_unwind_image): Add support for different types
6563 of unwind images (32 bits and/or big-endian).
6564 (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
6565 (ia64_target_format): Add support for hpux target formats.
6566 (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
6567 (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
6568 SHT_FINI_ARRAY elf section types.
6569
6570 2002-01-10 Richard Earnshaw <rearnsha@arm.com>
6571
6572 * tc-arm.c (struct reg_entry): Move before prototypes.
6573 (int_register, cp_register, fp_register): Delete.
6574 (reg_table): Delete. Replaced with ...
6575 (rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
6576 (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
6577 (mav_dspsc_table): ... one table per register set.
6578 (arm_reg_hsh): Delete.
6579 (struct reg_map): New structure.
6580 (all_reg_maps): New array.
6581 (enum arm_reg_type): New enums.
6582 (build_reg_hsh): New function.
6583 (insert_reg_alias): Use hash table passed by caller. Adjust all
6584 callers.
6585 (create_register_alias): New function, split out from ...
6586 (md_assemble): ... here.
6587 (md_begin): Build new register hash tables.
6588 (arm_reg_parse): New argument for the hash table to search. Adjust all
6589 callers.
6590 (arm_reg_parse_any): New function.
6591 (co_proc_number): Look up the processor number in the processor hash
6592 table.
6593 (cirrus_regtype): Delete.
6594 (cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
6595 (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
6596 (ARM_EXT_MAVERICKsc_register): Delete.
6597 (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
6598 (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
6599 functions.
6600 (do_c_triple_4, do_c_triple_5): Delete.
6601 (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
6602 (do_c_quad_6): Delete.
6603 (do_c_quad_6[ab]): New functions.
6604 (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
6605 arguments to use new register parsing methods.
6606 (cirrus_reg_required_here): Likewise.
6607 (insns): Reclassify cirrus maverick worker functions.
6608 (cirrus_valid_reg): Delete.
6609
6610 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
6611
6612 * configure.in (sh*le): Set cpu_type=sh and endian=little.
6613 (sh*-*-netbsdelf*): New target.
6614 * configure: Regenerate.
6615 * tc-sh.h: Update copyright years.
6616 (TARGET_FORMAT): Add version for TE_NetBSD.
6617
6618 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
6619
6620 * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
6621 negative.
6622
6623 2002-01-06 Alan Modra <amodra@bigpond.net.au>
6624
6625 * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
6626 * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
6627
6628 2002-01-05 Daniel Jacobowitz <drow@mvista.com>
6629
6630 * tc-mips.c (mips_cprestore_valid): New flag.
6631 (mips_frame_reg_valid): New flag.
6632 (macro) [M_JAL_2]: Check both flags.
6633 [M_JAL_A]: Likewise.
6634 (s_cprestore): Set mips_cprestore_valid.
6635 (tc_get_register): If setting mips_frame_reg, set
6636 mips_frame_reg_valid and clear mips_cprestore_valid.
6637 (s_mips_ent): Clear both flags.
6638 (s_mips_end): Clear both flags.
6639
6640 2002-01-05 Alan Modra <amodra@bigpond.net.au>
6641
6642 * write.c (write_object_file): Make use of bfd_section_list_remove.
6643 * config/obj-ecoff.c (ecoff_frob_file): Likewise.
6644 * config/tc-mmix.c (mmix_frob_file): Likewise.
6645
6646 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
6647
6648 * configure.in (i386-*-netbsdelf*): Collapse target into...
6649 (i386-*-netbsd*): ...this. Add support for x86-64.
6650 * configure: Regenerated.
6651
6652 2002-01-03 matthew green <mrg@redhat.com>
6653
6654 * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.
6655
6656 2002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
6657
6658 * config/tc-m68k.c (md_estimate_size_before_relax): Test for a
6659 NULL frag link.
6660
6661 For older changes see ChangeLog-0001
6662 \f
6663 Local Variables:
6664 mode: change-log
6665 left-margin: 8
6666 fill-column: 74
6667 version-control: never
6668 End:
This page took 0.202195 seconds and 4 git commands to generate.