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