]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gas/ChangeLog
Update instructions that use the "never" value in the conditional field to use
[thirdparty/binutils-gdb.git] / gas / ChangeLog
CommitLineData
6f19c13c
AM
12005-03-21 Alan Modra <amodra@bigpond.net.au>
2
3 * configure.tgt: Handle setting of bfd_gas for fmt=multi targets
4 along with other formats that set bfd_gas. Remove unnecessary
5 setting of bfd_gas. Delete strongarm cases in generic_target
6 switch.
7
bd17c2c3
AM
82005-03-21 Alan Modra <amodra@bigpond.net.au>
9
10 PR gas/780
11 * config/tc-m68k.c (TRUNC, SEXT): Define.
12 (issbyte, isubyte, issword, isuword, isbyte, isword): Use the above.
13 (m68k_ip): Truncate or sign extend expressions as appropriate.
14 (get_num): Likewise.
15 (md_apply_fix3): Use SEXT.
16
ec91a2c2
AM
172005-03-21 Alan Modra <amodra@bigpond.net.au>
18
19 * Makefile.am (OBJ_FORMAT_CFILES): Prune config/obj-vms.c.
20 (OBJ_FORMAT_HFILES): Prune config/obj-vms.h.
21 (obj-vms.o): Delete rule.
22 Run "make dep-am".
23 * Makefile.in: Regenerate.
24 * aclocal.m4: Regenerate.
25 * doc/Makefile.in: Regenerate.
26 * po/POTFILES.in: Regenerate.
27
238d258f
NC
282005-03-18 C Jaiprakash <cjaiprakash@noida.hcltech.com>
29
30 * config/tc-m68k.c (m68k_elf_final_processing): Set file specific
31 flag for coldfire v4e.
32
30f725a1
BW
332005-03-17 Bob Wilson <bob.wilson@acm.org>
34
35 * config/tc-xtensa.c (xg_apply_tentative_value): Rename to
36 xg_apply_fix_value and return a value to indicate success.
37 (md_pcrel_from): Skip check of fx_done. Return 0 if not PC-relative.
38 (xtensa_force_relocation): Remove checks for VTABLE relocs.
39 (xtensa_validate_fix_sub): New.
40 (xtensa_fix_adjustable): Remove check for external or weak symbols.
41 (tc_gen_reloc): Move code to handle difference of symbols and code to
42 apply tentative fix values to ...
43 (md_apply_fix3): ...here. Enable standard overflow checks for simple
44 8, 16, and 32 bit relocations. Apply fixes for slot-specific
45 relocations when linkrelax flag is not set.
46 * config/tc-xtensa.h (xtensa_validate_fix_sub): Add prototype.
47 (TC_FORCE_RELOCATION_SUB_SAME, TC_VALIDATE_FIX_SUB): Define.
48
a724f0f4
JB
492005-03-17 Jan Beulich <jbeulich@novell.com>
50
51 * config/tc-i386.c (i386_scale): Beautify error message.
52 (Intel syntax comments): Update.
53 (struct intel_parser_s): Add fields in_offset, in_bracket, and
54 next_operand.
55 (intel_e04_1, intel_e05_1, intel_e05_1, intel_e09_1, intel_e10_1):
56 Remove declarations.
57 (intel_bracket_expr): Declare.
58 (i386_intel_operand): Initialize new intel_parser fields. Wrap most
59 of the function body in a loop allowing to split an operand into two.
60 Replace calls to malloc and checks of it returning non-NULL with
61 calls to xmalloc/xstrdup.
62 (intel_expr): SHORT no longer handled here. Add comment indicating
63 comparison ops need implementation.
64 (intel_e04, intel_e04_1): Combine, replace recursion with loop.
65 Check right operand of - does not specify a register when parsing
66 the address of a memory reference.
67 (intel_e05, intel_e05_1): Combine, replace recursion with loop.
68 Check operands do not specify a register when parsing the address of
69 a memory reference.
70 (intel_e06, intel_e06_1): Likewise.
71 (intel_e09, intel_e09_1): Combine, replace recursion with loop. Also
72 handle SHORT as well as unary + and -. Don't accept : except for
73 segment overrides or in direct far jump/call insns.
74 (intel_brack_expr): New.
75 (intel_e10, intel_e10_1): Combine, replace recursion with loop. Use
76 intel_brack_expr.
77 (intel_e11): Replace chain of if/else-if by switch, alloing fall-
78 through in certain cases. Use intel_brack_expr. Add new diagnostics.
79 Allow symbolic constants as register scale value.
80 (intel_get_token): Replace call to malloc and check of return value
81 with call to xmalloc. Change handling for FLAT to match MASM's.
82 (intel_putback_token): Don't try to back up/free current token if
83 that is T_NIL.
84
deeaaff8
DJ
852005-03-16 Daniel Jacobowitz <dan@codesourcery.com>
86
87 * configure.tgt: Set emulation for arm-*-eabi*.
88 * config/tc-arm.c (meabi_flags): Check EABI_DEFAULT.
89 * config/te-armeabi.h: New file.
90 * config/te-armlinuxeabi.h (EABI_DEFAULT): Define.
91 * config/te-symbian.h: Include "te-armeabi.h".
92
199fea98
NC
932005-03-16 Nick Clifton <nickc@redhat.com>
94
95 * cgen.c (gas_cgen_parse_operand): Copy opinfo parameter into a
96 local variable in case it is clobbered by the setjmp.
97
1ad12f97
NC
982005-03-16 Nick Clifton <nickc@redhat.com>
99 Ben Elliston <bje@au.ibm.com>
100
569acd2c 101 * configure.in (werror): New switch: Add -Werror to the
1ad12f97 102 compiler command line. Enabled by default. Disable via
569acd2c 103 --disable-werror.
1ad12f97
NC
104 * configure: Regenerate.
105
a5324a3e
NC
1062005-03-16 Nick Clifton <nickc@redhat.com>
107
108 * config/obj-coff.h: Convert to ISO C90 formatting.
109 * config/obj-coff.c: Convert to ISO C90 formatting.
110
b05fe5cf
ZW
1112005-03-15 Zack Weinberg <zack@codesourcery.com>
112
113 * config/tc-arm.c (do_mla): Rename to do_mlas, take second
114 is_mls parameter; do not diagnose Rm==Rd when is_mls.
115 (do_mla, do_mls, five_bit_unsigned_immediate, bfci_lsb_and_width)
116 (do_bfc, do_bfi, do_bfx, do_rbit, do_mov16, do_ldsttv4): New functions.
117 (insns): Add ARMv6T2 instructions:
118 bfc bfi mls movw movt rbit sbfx ubfx ldrht ldrsht ldrsbt strht.
119 (arm_archs): Add V6T2 variants.
120
957d91c1
NC
1212005-03-15 Nick Clifton <nickc@redhat.com>
122
123 * NEWS: Add cutoff for changes in 2.16 release.
124
43c3ab55
JB
1252005-03-15 Jan Beulich <jbeulich@novell.com>
126
127 * expr.c (operand): Merge handling of unary + into that for unary
128 -, !, and ~.
129
5862107c
EC
1302005-03-14 Eric Christopher <echristo@redhat.com>
131
132 * config/tc-mips.c: Include dw2gencfi.h.
133 (mips_cfi_frame_initial_instructions): New.
134 * config/tc-mips.h (TARGET_USE_CFIPOP): Define.
135 (tc_cfi_frame_initial_instructions): Ditto.
136 (DWARF2_DEFAULT_RETURN_COLUMN): Ditto.
137 (DWARF2_CIE_DATA_ALIGNMENT): Ditto.
138 * Makefile.am: Update dependencies.
139 * Makefile.in: Regenerate.
140
729ae8d2
AM
1412005-03-15 Alan Modra <amodra@bigpond.net.au>
142
143 * po/es.po: Commit new Spanish translation.
144
882cb63e
AM
1452005-03-14 Alan Modra <amodra@bigpond.net.au>
146
147 * po/tr.po: Commit new Turkish translation.
148
885fc257
ZW
1492005-03-12 Zack Weinberg <zack@codesourcery.com>
150
151 * config/tc-arm.c (tinsns): Add ARMv6K instructions sev, wfe,
152 wfi, yield.
153
e330299e
DJ
1542005-03-11 Daniel Jacobowitz <dan@codesourcery.com>
155
156 * config-gas.com: Mark vax-vms as obsolete.
157 * configure.in: Remove fmt=vms support.
158 * config.in: Regenerate.
159 * configure: Regenerate.
160 * config/obj-vms.h, config/obj-vms.c, config/vms-conf.h: Remove.
161
0fa77c95
BW
1622005-03-10 Bob Wilson <bob.wilson@acm.org>
163
164 * config/tc-xtensa.c (finish_vinsn): Include the last instruction slot
165 when checking if xg_resolve_literals needs to be called.
166 * config/tc-xtensa.h: Fix spelling typo in a comment.
167
4962e196
JB
1682005-03-10 Jan Beulich <jbeulich@novell.com>
169
170 * config/tc-tic54x.h (tic54x_macro_info): Change parameter type.
171 * config/tc-tic54x.c (tic54x_macro_info): Likewise. Replace hand-
172 crafted structure declarations with the types from macro.h.
173
4184909a
RS
1742005-03-09 Richard Sandiford <rsandifo@redhat.com>
175
176 * config/tc-mips.c (s_cpsetup): Use '__gnu_local_gp' instead of '_gp'
177 for -mno-shared optimization.
178
7d8e00cf
RS
1792005-03-09 Richard Sandiford <rsandifo@redhat.com>
180
181 * config/tc-mips.c (MAX_VR4130_NOPS, MAX_DELAY_NOPS): New macros.
182 (MAX_NOPS): Bump to 4.
183 (mips_fix_vr4130): New variable.
184 (nops_for_vr4130): New function.
185 (nops_for_insn): Use MAX_DELAY_NOPS rather than MAX_NOPS. Use
186 nops_for_vr4130 if working around VR4130 errata.
187 (OPTION_FIX_VR4130, OPTION_NO_FIX_VR4130): New macros.
188 (md_longopts): Add -mfix-vr4130 and -mno-fix-vr4130.
189 (md_parse_option): Handle them.
190 (md_show_usage): Print them.
191 * doc/c-mips.texi: Document -mfix-vr4130 and -mno-fix-vr4130.
192
dc36a61f
RS
1932005-03-09 Richard Sandiford <rsandifo@redhat.com>
194
195 * config/tc-mips.c (append_insn): Remove cop_interlocks test from
196 branch delay code.
197
7d10b47d
RS
1982005-03-09 Richard Sandiford <rsandifo@redhat.com>
199
200 * config/tc-mips.h (mips_flush_pending_output): Delete.
201 (mips_emit_delays): Declare.
202 (md_flush_pending_output): Use mips_emit_delays.
203 * config/tc-mips.c (mips_no_prev_insn): Remove parameter; always forget
204 the previous instructions.
205 (md_begin, append_insn, md_parse_option): Update callers.
206 (mips_emit_delay): Remove parameter. Move INSNS != 0 code to
207 start_noreorder.
208 (mips_align, s_change_sec, s_cons, s_float_cons, s_gpword)
209 (s_gpdword): Update callers.
210 (start_noreorder, end_noreorder): New functions.
211 (macro, macro2, mips16_macro, s_mipsset): Use them instead of
212 manipulating mips_opts or prev_nop_frag directly.
213 (mips_flush_pending_output): Delete.
214
404a8071
RS
2152005-03-09 Richard Sandiford <rsandifo@redhat.com>
216
217 * config/tc-mips.c (mips_move_labels): New function, taken from...
218 (append_insn, mips_emit_delays): ...here.
219
71400594
RS
2202005-03-09 Richard Sandiford <rsandifo@redhat.com>
221
222 * config/tc-mips.c (MAX_NOPS): New macro.
223 (history): Resize to 1 + MAX_NOPS.
224 (fix_vr4120_class): New enumeration.
225 (vr4120_conflicts): New variable.
226 (init_vr4120_conflicts): New function.
227 (md_begin): Call it.
228 (insn_uses_reg): Constify first argument.
229 (classify_vr4120_insn, insns_between, nops_for_insn, nops_for_sequence)
230 (nops_for_insn_or_target): New functions.
231 (append_insn): Use the new nops_for_* functions instead of inline
232 delay checks. Generalize prev_nop_frag handling to handle an
233 arbitrary history length. Insert nops into the history buffer
234 once the number of nops in prev_nop_frag is fixed.
235 (emit_delays): Use nops_for_insn instead of inline delay checks.
236
9b91f544
RS
2372005-03-09 Richard Sandiford <rsandifo@redhat.com>
238
239 * config/tc-mips.c (append_insn): Remove now-redundant nops != 0
240 check from branch delay code. Remove unnecessary check for branches.
241
1e915849
RS
2422005-03-09 Richard Sandiford <rsandifo@redhat.com>
243
244 * config/tc-mips.c (dummy_opcode): Delete.
245 (nop_insn, mips16_nop_insn): New variables.
246 (NOP_INSN): New macro.
247 (insn_length, create_insn, install_insn, move_insn, add_fixed_insn)
248 (add_relaxed_insn, insert_into_history, emit_nop): New functions.
249 (md_begin): Initialize nop_insn and mips16_nop_insn.
250 (append_insn): Use the new emit_nop function to add nops, recording
251 them in the history buffer. Use add_fixed_insn or add_relaxed_insn
252 to reserve room for the instruction and install_insn to install the
253 final form. Use insert_into_history to record the instruction in
254 the history buffer. Use move_insn to do delay slot filling.
255 (mips_emit_delays): Use add_fixed_insn instead of the emit_nop macro.
256 (macro_build, mips16_macro_build, macro_build_lui, mips_ip)
257 (mips16_ip): Use create_insn to initialize mips_cl_insns.
258
bf12938e
RS
2592005-03-09 Richard Sandiford <rsandifo@redhat.com>
260
261 * config/tc-mips.c (INSERT_BITS, EXTRACT_BITS, INSERT_OPERAND)
262 (EXTRACT_OPERAND, MIPS16_INSERT_OPERAND, MIPS16_EXTRACT_OPERAND): New.
263 (insn_uses_reg, reg_needs_delay, append_insn, macro_build)
264 (mips16_macro_build, macro_build_lui, mips16_macro, mips_ip)
265 (mips16_ip): Use the new macros instead of explicit masks and shifts.
266
a38419a5
RS
2672005-03-09 Richard Sandiford <rsandifo@redhat.com>
268
269 * config/tc-mips.c (mips_cl_insn): Replace the valid_p, delay_slot_p
270 and extended_p fields with a single fixed_p field.
271 (append_insn, mips_no_prev_insn): Adjust accordingly.
272
2fa15973
RS
2732005-03-09 Richard Sandiford <rsandifo@redhat.com>
274
275 * config/tc-mips.c (mips_cl_insn): Replace reloc_type array with
276 a single mips16_absolute_jump_p bit.
277 (append_insn): Adjust accordingly.
278
47e39b9d
RS
2792005-03-09 Richard Sandiford <rsandifo@redhat.com>
280
281 * config/tc-mips.h (mips_cl_insn): Move definition to...
282 * config/tc-mips.c (mips_cl_insn): ...here. Add new fields:
283 frag, where, fixp, reloc_type, valid_p, noreorder_p, delay_slot_p
284 and extended_p.
285 (history): New variable.
286 (prev_insn, prev_prev_insn, prev_insn_valid, prev_insn_frag)
287 (prev_insn_where, prev_insn_reloc_type, prev_insn_fixp)
288 (prev_insn_is_delay_slot, prev_insn_unreordered, prev_insn_extended)
289 (prev_prev_insn_unreordered): Delete.
290 (reg_needs_delay, append_insn, mips_no_prev_insn, mips_emit_delays)
291 (macro_start): Replace uses of prev_insn* with the equivalent history[]
292 field.
293
399132af
DJ
2942005-03-08 Daniel Jacobowitz <dan@codesourcery.com>
295
296 * doc/Makefile.am: Update as.info dependencies.
297 * aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
298
2992005-03-08 Jan Beulich <jbeulich@novell.com>
fffeaa5f
JB
300
301 * doc/as.texinfo: Add sentence to indicate redefining a macro is an
302 error, and point to .purgem documentation if someone really needs
303 re-definitions.
304 * NEWS: Mention macro redefinition is now an error.
305
9b505842
JB
3062005-03-08 Jan Beulich <jbeulich@novell.com>
307
308 * config/tc-ia64.c (emit_one_bundle): Track last slot user insn was
309 emitted to. Add more precise diagnostics for non-fitting insns based
310 on that. Eliminate now superfluous special casing of MLX. Clear out
311 slot information when dropping an insn.
312
ef6a2b41
JB
3132005-03-08 Jan Beulich <jbeulich@novell.com>
314
315 * config/tc-ia64.c (parse_section_name): Rename to...
316 (cross_section): In addition to separating the name from the rest of
317 the arguments, also carry out the operation.
318 (dot_xdata): Use cross_section.
319 (dot_float_cons): Likewise.
320 (dot_xstringer): Likewise.
321 (dot_xdata_ua): Likewise.
322 (dot_float_cons_ua): Likewise. Pass float_cons, not stmt_float_cons.
323
06647dfd
AM
3242005-03-05 Alan Modra <amodra@bigpond.net.au>
325
326 * po/gas.pot: Regenerate.
327
bbe506e8
TS
3282005-03-04 David Daney <ddaney@avtrex.com>
329
330 * config/tc-mips.c (macro_build_lui): Use '__gnu_local_gp'
331 instead of '_gp' for -mno-shared optimization.
332 (s_cpload): Ditto.
333 (s_abicalls): Document it in the comment.
334 (md_show_usage): Document the -mno-shared option.
335
aed1a261
RS
3362005-03-04 Richard Sandiford <rsandifo@redhat.com>
337
338 * config/tc-mips.c (mips_set_options): Add sym32 field.
339 (mips_opts): Initialize it.
340 (HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide.
341 (HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES.
342 (HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros.
343 (load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES
344 when deciding whether to use a symbolic %highest/%higher expansion.
345 (macro): Likewise. Remove o64/n32 linux hack. Always use
346 ADDRESS_ADD*_INSN for address addition in the expansion of "dla"
347 and "la". Handle constants separately from symbolic expressions in
348 the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES
349 and using load_register to load the high part of the address.
350 (OPTION_MSYM32, OPTION_NO_MSYM32): New macros.
351 (OPTION_ELF_BASE): Bump by 2.
352 (md_longopts): Add entries for -msym32 and -mno-sym32.
353 (md_parse_option): Handle them.
354 (usage): Document them.
355 (s_mipsset): Handle ".set sym32" and ".set nosym32".
356 (s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of
357 HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp".
358 * doc/c-mips.texi: Document ".set sym32", ".set nosym32",
359 -msym32 and -mno-sym32.
360
6caf9ef4
TS
3612005-03-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
362
363 * config/tc-mips.c (load_address): Implement GP optimization
364 for 64bit address space non-PIC. Fix formatting.
365 (macro): Likewise. Simplify code.
366 (md_parse_option): Don't bail out if -G 0 is set for PIC code.
367 (mips_after_parse_args): Simplify code.
368
406a7f05
NC
3692005-03-03 Nick Clifton <nickc@redhat.com>
370
fbacee5b
NC
371 * expr.c (operand): Remove redundant code enclosed by #ifdef
372 RELAX_PAREN_GROUPING....#endif.
373
77ccfee5
NC
374 * config/tc-mn10200.c (tc_gen_reloc): Handle the case where the
375 reloc is the difference of two symbols defined in the same
376 section.
377
406a7f05
NC
378 * config/tc-iq2000.c (line_comment_chars): Include the # character
379 as otherwise this breaks #APP/#NO_APP processing.
380
2f12d57f
RR
3812005-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
382
383 * config/tc-arc.c(md_assemble): Remove dead code for handling
384 immediate indexing of ld and st .
385
3f98094e
DJ
3862005-03-02 Daniel Jacobowitz <dan@codesourcery.com>
387 Joseph Myers <joseph@codesourcery.com>
388
389 * config/tc-mips.c (percent_op): Add %tlsgd, %tlsldm, %dtprel_hi,
390 %dtprel_lo, %tprel_hi, %tprel_lo, and %gottprel.
391 (parse_relocation): Check for a word break after a relocation
392 operator.
393 (md_apply_fix3): Handle TLS relocations, and mark thread-local
394 symbols.
395
ab1e9ef7
AM
3962005-03-02 Alan Modra <amodra@bigpond.net.au>
397
398 * config/tc-ppc.c (ppc_fix_adjustable <ELF>): Remove bogus checks.
399
bb14f524
JB
4002005-03-02 Jan Beulich <jbeulich@novell.com>
401
402 * as.c (main): Use unlink_if_ordinary instead of unlink.
403 * messages.c (as_fatal): Likewise.
404
c4a530c5
JB
4052005-03-02 Jan Beulich <jbeulich@novell.com>
406
407 * config/tc-i386.c (build_modrm_byte): Add lock prefix for cr8...15
408 accesses.
409 (parse_register): Allow cr8...15 in all modes.
410
167c3097
JB
4112005-03-02 Jan Beulich <jbeulich@novell.com>
412
413 * config/tc-i386.c (intel_e11): If not followed by T_PTR, treat T_BYTE
414 etc. like normal symbol references (T_ID).
415
71ba24a1
AM
4162005-03-02 Alan Modra <amodra@bigpond.net.au>
417
418 * symbols.c (fb_label_name): Fix silly thinko in last change.
419
a76903bf
AM
4202005-03-02 Alan Modra <amodra@bigpond.net.au>
421
9d0e75cb
AM
422 * expr.c (integer_constant): Remove TARGET_WORD_SIZE hack.
423 * config/tc-m68k.h (TARGET_WORD_SIZE): Delete.
424
a76903bf
AM
425 * symbols.c (fb_label_name): Allow an augend of 2 for mmix.
426
4272005-03-01 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
b15c27d7
RR
428
429 PR gas/708
a76903bf 430 * config/tc-arc.c (md_assemble): Initialize suffix for extension
b15c27d7 431 suffixes also.
b15c27d7 432
c9dea48b
AM
4332005-03-01 Alan Modra <amodra@bigpond.net.au>
434
c7f17d46
AM
435 * config/obj-coff.c (fixup_segment): Delete sy_mri_common assertion.
436
c9dea48b
AM
437 * as.h (assert): Warning fix.
438 * expr.c (expr): Correct assertion.
439 * read.c (s_comm_internal): Remove assertion.
440 * write.c (relax_segment): Enable vma assertion only for BFD_ASSEMBLER.
441 (fixup_segment): Remove assertion.
442 * config/tc-dlx.c (machine_ip): Remove untrue assertions.
443 (md_apply_fix3): Likewise.
444 * config/tc-i370.c (md_begin): Correct assertion.
445 (i370_macro): Warning fix for assertion.
446
44f2f9d2
AM
4472005-03-01 Alan Modra <amodra@bigpond.net.au>
448
449 * configure.in (AC_C_BIGENDIAN): Invoke.
450 * configure: Regenerate.
451 * write.c (write_object_file <!BFD_ASSEMBLER>): Don't use sizeof
452 host variable to set string header size.
453 * config/obj-aout.c (obj_header_append): Don't use host structs.
454 (obj_symbol_to_chars): Likewise.
455 (obj_emit_strings): Likewise. Use the passed in output pointer.
456 * config/obj-aout.h (H_GET_FILE_SIZE): Include H_GET_LINENO_SIZE.
457 * config/obj-bout.c (obj_emit_relocations): Use md_reloc_size,
458 not sizeof host struct.
459 (obj_header_append, obj_symbol_to_chars): Don't use host structs.
460 (obj_emit_strings): Likewise.
461 * config/obj-bout.h (EXEC_BYTES_SIZE): Define.
462 (N_TXTOFF, H_GET_FILE_SIZE, H_GET_HEADER_SIZE): Use instead of
463 sizeof host struct.
464 (H_SET_SYMBOL_TABLE_SIZE): Hard code sym size rather than using
465 sizeof host struct.
466 (host_number_to_chars): Define.
467 * config/obj-hp300.c (hp300_header_append): Don't use sizeof
468 host internal struct to set header sizes.
469 * config/tc-i960.c (md_number_to_field): Warning fix.
470 (md_ri_to_chars): Use host byte order.
471 (get_cdisp, md_apply_fix3): Warning fix.
055d1eb0 472 * config/tc-m68k.c (md_assemble): Don't use sizeof host short.
44f2f9d2 473
802a113d
NC
4742005-02-28 Ramana Radhakrishnan <ramana.radhakrishnan@codito.com>
475
476 * doc/c-arc.texi: Update documentation about ARC's extension
477 instructions.
478
e5f129ad
SS
4792005-02-27 Svein E. Seldal <svein@dev.seldal.com>
480
481 * config/tc-tic4x.c (tic4x_gen_to_words): Changed mail
482 address for myself.
483
2132e3a3
AM
4842005-02-23 Alan Modra <amodra@bigpond.net.au>
485
486 * cgen.c: Warning fixes.
487 * config/tc-arc.c: Likewise.
488 * config/tc-arm.c: Likewise.
489 * config/tc-avr.c: Likewise.
490 * config/tc-d10v.c: Likewise.
491 * config/tc-d30v.c: Likewise.
492 * config/tc-frv.c: Likewise.
493 * config/tc-frv.h: Likewise.
494 * config/tc-h8300.c: Likewise.
495 * config/tc-h8500.c: Likewise.
496 * config/tc-i370.c: Likewise.
497 * config/tc-i960.c: Likewise.
498 * config/tc-ia64.c: Likewise.
499 * config/tc-ip2k.c: Likewise.
500 * config/tc-m68hc11.c: Likewise.
501 * config/tc-maxq.c: Likewise.
502 * config/tc-mcore.c: Likewise.
503 * config/tc-mips.c: Likewise.
504 * config/tc-msp430.c: Likewise.
505 * config/tc-pj.c: Likewise.
506 * config/tc-ppc.c: Likewise.
507 * config/tc-ppc.h: Likewise.
508 * config/tc-s390.c: Likewise.
509 * config/tc-sh.c: Likewise.
510 * config/tc-sh64.c: Likewise.
511 * config/tc-tic4x.c: Likewise.
512 * config/tc-tic80.c: Likewise.
513 * config/tc-v850.c: Likewise.
514 * config/tc-vax.c: Likewise.
515 * config/tc-w65.c: Likewise.
516 * config/tc-xstormy16.c: Likewise.
517 * config/tc-z8k.c: Likewise.
518
ee3c9814
CM
5192005-02-22 Catherine Moore <clm@cm00re.com>
520
521 * read.c (read_a_source_file): Reinstate TC_EQUAL_IN_INSN test.
522 * doc/internals.texi (TC_EQUAL_IN_INSN): Reinstate.
523
9b2f1d35
EC
5242005-02-22 Eric Christopher <echristo@redhat.com>
525
526 * config/tc-mips.c (struct proc): Change isym to
527 func_sym. New member func_end_sym.
528 (s_mips_ent): Update.
529 (s_mips_end): Ditto. Add code to compute function size.
530
b7712f8d
AM
5312005-02-22 Alan Modra <amodra@bigpond.net.au>
532
533 * read.c: Warning fixes.
534 * config/obj-elf.c: Likewise.
535
58e2ea4d
MR
5362005-02-22 Maciej W. Rozycki <macro@mips.com>
537
538 * config/tc-mips.c (append_insn): Call dwarf2_emit_insn() before
539 emitting insn.
540
ebe372c1
L
5412005-02-21 H.J. Lu <hongjiu.lu@intel.com>
542
543 * config/obj-coff.c (obj_coff_section): Replace SEC_SHARED with
544 SEC_COFF_SHARED.
545
546 * config/tc-tic54x.c (tic54x_bss): Replace SEC_BLOCK with
547 SEC_TIC54X_BLOCK.
548 (demand_empty_rest_of_line): Likewise.
549 (tic54x_sblock): Likewise.
550 (tic54x_clink): Replace with SEC_CLINK with SEC_TIC54X_CLINK.
551
cc1bc22a
AM
5522005-02-21 Alan Modra <amodra@bigpond.net.au>
553
554 * read.c (address_bytes): New function.
555 (TC_ADDRESS_BYTES): Default for BSD_ASSEMBLER to address_bytes.
556 (potable): Add "dc.a".
557 (cons_worker): Handle "dc.a".
558 * doc/internals.texi (TC_ADDRESS_BYTES): Document.
559
ac4528d2
AM
5602005-02-21 Alan Modra <amodra@bigpond.net.au>
561
562 * input-file.c (input_file_open): Rearrange to avoid warning.
563
b5682e56
AM
5642005-02-19 Alan Modra <amodra@bigpond.net.au>
565
566 * config/tc-hppa.h (TC_EQUAL_IN_INSN): Delete.
567 * read.c (read_a_source_file): Remove TC_EQUAL_IN_INSN test.
568 * doc/internals.texi (TC_EQUAL_IN_INSN): Delete.
569
8fc2e39e
TS
5702005-02-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
571
572 * config/tc-mips.c (macro_build_ldst_constoffset): Fail on $at
573 uses after .set noat.
574 (load_address): Likewise.
575 (macro): Likewise. Don't try to avoid $at use by sacrificing
576 the target register before it is stored, it won't work.
577
744b6414
JW
5782005-02-17 James E Wilson <wilson@specifixinc.com>
579
580 * config/tc-ia64.c (emit_one_bundle): Stop filling a bundle if we
581 see an instruction that specifies a template.
582
30eb9c17
AM
5832005-02-18 Alan Modra <amodra@bigpond.net.au>
584
585 * config/tc-openrisc.c (openrisc_relax_frag): Delete unused function.
586 * config/tc-sparc.c (sparc_ip): Make op_exp static to silence warnings.
587 * config/tc-tic80.c (build_insn): Init insn[1] to silence warning.
588
91d777ee
L
5892005-02-17 H.J. Lu <hongjiu.lu@intel.com>
590
591 * NEWS: Mention "-mhint.b=[ok|warning|error]".
592
593 * config/tc-ia64.c (md): Add hint_b.
594 (emit_one_bundle): Handle md.hint_b for "hint".
595 (md_parse_option): Accepted "-mhint.b=[ok|warning|error]".
596 (md_show_usage): Add "-mhint.b=[ok|warning|error]".
597 (ia64_init): Set md.hint_b to error.
598 (md_assemble): Handle md.hint_b for "hint.b".
599
600 * doc/as.texinfo: Add "-mhint.b=[ok|warning|error]".
601 * doc/c-ia64.texi: Likewise.
602
f17c130b
AM
6032005-02-17 Alan Modra <amodra@bigpond.net.au>
604
605 * tc.h (struct relax_type, relax_typeS): Move from here..
606 * as.h: ..to here. Make rlx_forward and rlx_backward an offsetT.
607 * ecoff.c (ecoff_new_file): Add appfile param.
608 * ecoff.h (ecoff_new_file): Likewise.
609 * itbl-lex.h: New file.
610 * itbl-lex.l: Include itbl-lex.h.
611 * itbl-parse.y: Likewise.
612 (insntbl_line, yyparse, yylex): Move to itbl-lex.h.
613 * read.c (s_app_file_string): Mark appfile possibly unused.
614 * subsegs.c (seg_not_empty_p): Make sec possibly unused.
615 * subsegs.h (struct seg_info_trash): Delete.
616 (seg_info): Use segment_info_type instead.
617 * config/obj-coff.c (struct filename_list): Make filename const char *.
618 * config/obj-ecoff.h (obj_app_file): Pass app to ecoff_new_file.
619 * config/obj-elf.c (elf_file_symbol): Similarly.
620 * config/tc-a29k.c (md_apply_fix3): Make val a valueT. Don't use
621 signed right shift.
622 * config/tc-arc.c (md_operand): Warning fix.
623 * config/tc-arm.c (arm_parse_reloc): Only define when OBJ_ELF.
624 (md_begin): Rearrange #if defined OBJ_COFF || defined OBJ_ELF.
625 * config/tc-cris.h (TC_IMPLICIT_LCOMM_ALIGNMENT): Use do while.
626 * config/tc-frv.c (frv_force_relocation): Warning fix.
627 * config/tc-m68k.c (md_parse_option): Delete unused var.
628 * config/tc-mcore.c (mylog2): Rename from log2 throughout.
629 * config/tc-sparc.c: Likewise.
630 (s_common): Warning fix.
631 * config/tc-mips.c (append_insn): Use unsigned long long expressions.
632 * config/tc-mmix.c (PUSHJSTUB_MAX, PUSHJSTUB_MIN): Define from
633 addressT.
634 * config/tc-s390.c (s390_insn): Delete test of unsigned >= 0.
635 * config/tc-sh.c (sh_cfi_frame_initial_instructions,
636 sh_regname_to_dw2regnum): Only define for OBJ_ELF.
637 * config/tc-tic4x.c (tic4x_insert_reg): Use ISLOWER.
638 (tic4x_do_align): Use TIC_NOP_OPCODE.
639 * config/tc-tic4x.h (TIC_NOP_OPCODE): Rename from NOP_OPCODE.
640 * config/tc-vax.c: Include netinet/in.h.
641 (tc_headers_hook): Formatting.
642 * config/tc-xstormy16.c (md_pcrel_from_section): Correct parens.
643
26b810ce
JB
6442005-02-17 Jan Beulich <jbeulich@novell.com>
645
646 * config/tc-ia64.c (ia64_parse_name): Don't advance 'name' when
647 parsing inN, locN, outN. Set 'idx' to offset register number starts
648 at. Don't handle numbers with leading zeroes or beyond 95. Remove
649 pointless cast.
650
b8285c27
TS
6512005-02-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
652
653 * config/tc-mips.c (load_address): Fix formatting.
654 (macro): Don't use AT if .set noat is in effect. Fix formatting.
655 Catch macros which are unexpandable without AT. Remove duplicate
656 zeroing of used_at.
657 (macro2): Remove duplicate zeroing of used_at.
658
4df6ce47
AM
6592005-02-16 Alan Modra <amodra@bigpond.net.au>
660
661 * dw2gencfi.c (output_cie, output_fde): Use DW_CFA_nop rather
662 than zero.
663
d6f16593 6642005-02-15 Nigel Stephens <nigel@mips.com>
4df6ce47 665 Maciej W. Rozycki <macro@mips.com>
d6f16593
MR
666
667 * config/tc-mips.c (reloc_needs_lo_p): Handle
668 BFD_RELOC_MIPS16_HI16_S.
669 (fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16.
670 (append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S
671 and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow
672 complaints on.
673 (mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S,
674 BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants.
675 Call my_getSmallExpression() to parse percent operators.
676 (percent_op_match, mips_percent_op): Separate definitions.
677 (mips16_percent_op): Define percent operators for the MIPS16 mode.
678 (parse_relocation): Handle the MIPS16 mode using
679 mips16_percent_op.
680 (md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16,
681 BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16.
682
7b347e43
JB
6832005-02-15 Jan Beulich <jbeulich@novell.com>
684
685 * config/tc-ia64.c (md_apply_fix3): Call ia64_gen_real_reloc_type
686 instead of explicitly dealing with the translation; exclude
687 relocations that are already pcrel, however.
688
a66d2bb7
JB
6892005-02-15 Jan Beulich <jbeulich@novell.com>
690
691 * config/tc-ia64.c: Include limits.h (if available).
692 (gr_values[0]): Set path to INT_MAX.
693 (dot_reg_val): Don't allow changing value of r0. Limit range of
694 general registers at r127.
695 (specify_resource): Default resource index is -1. Don't set resource
696 index (in case IA64_RS_RSE) without setting the specific flag.
697 (note_register_values): Check operand is O_constant before tracking
698 input value of moves. Add tracking for dep.z with constant inputs.
699 (print_dependency): Resource index of specific resource may be zero.
700 (check_dependencies): Likewise.
701
4b09e828
JB
7022005-02-15 Jan Beulich <jbeulich@novell.com>
703
704 * config/tc-ia64.c (parse_operands): New local variables reg1, reg2,
705 reg_class. Check operands and emit diagnostics for illegal use of
706 registers.
707
0ca3e455
JB
7082005-02-15 Jan Beulich <jbeulich@novell.com>
709
710 * config/tc-ia64.c (ia64_gen_real_reloc_type): Define and initialize
711 new variables type, suffix, and width. Handle
712 BFD_RELOC_IA64_DIR(32|64)[LM]SB in FUNC_LT_FPTR_RELATIVE case.
713 Handle BFD_RELOC_IA64_DIR64[LM]SB in FUNC_TP_RELATIVE case. Add
714 FUNC_DTP_MODULE case. Handle BFD_RELOC_IA64_DIR32[LM]SB in
715 FUNC_DTP_RELATIVE case. Return incoming relocation type if
716 BFD_RELOC_IA64_IPLT[LM]SB in FUNC_IPLT_RELOC case. Generate warning
717 if unable to translate relocation type, using the new variables.
718
2fac3d48
JB
7192005-02-15 Jan Beulich <jbeulich@novell.com>
720
721 * config/tc-ia64.h (ia64_symbol_chars): Declare.
722 (ty_symbol_chars): Define.
723 * config/tc-ia64.c (ia64_symbol_chars): Define.
724
2f6d622e
JB
7252005-02-15 Jan Beulich <jbeulich@novell.com>
726
727 * config/tc-ia64.c (ia64_parse_name): Only update next character if
728 input_line_pointer was advanced.
729
28013b5c
KK
7302005-02-14 Kaz Kojima <kkojima@rr.iij4u.or.jp>
731
732 * config/tc-sh.c (md_apply_fix3): Add parentheses around &
733 within |.
734
f1dab70d
JB
7352005-02-13 Jan Beulich <jbeulich@novell.com>
736
737 * config/tc-ia64.c (md_parse_option): Handle -xnone and -xdebugn.
738 (md_show_usage): Add -xnone, -xdebugn, and -xdebugx. Relocate default
739 indicator.
740 (ia64_init): Set md.detect_dv.
741 (ia64_start_line): New static variable warned. Warn only once when
742 encountering explicit stops in automatic mode.
743 * doc/c-ia64.texi: Describe -xnone, -xdebugn, and -xdebugx.
744 * NEWS: Mention new default mode.
745
20b36a95
JB
7462005-02-13 Jan Beulich <jbeulich@novell.com>
747
748 * config/tc-ia64.c (dot_rot): Add comment that name strings should
749 be freed when wiping out previous state. Canonicalize names before
750 use. Free name string when detecting redefinition.
751 (dot_pred_rel): Call generic expression parser to process arguments.
752 Handle O_register case for individual predicates and O_subtract for
753 ranges.
754 (ia64_parse_name): Canonicalize name before looking it up in dynamic
755 register hash.
756 (ia64_canonicalize_symbol_name): Strip off all trailing # characters.
757 Warn if multiple found, issue error if resulting symbol name has zero
758 length.
759 (dot_alias): Canonicalize name before use.
760
07450571
L
7612005-02-11 H.J. Lu <hongjiu.lu@intel.com>
762
763 * config/tc-ia64.c (unwind_diagnostic): Return -1 for warning
764 and 0 for error.
765 (in_procedure): Return -1 for warning.
766 (in_prologue): Likewise.
767 (in_body): Likewise.
768
01b91374
L
7692005-02-11 H.J. Lu <hongjiu.lu@intel.com>
770
ac4528d2 771 * config/tc-ia64.c (dot_xdata): Undo the last change.
01b91374
L
772 (dot_float_cons): Likewise.
773 (dot_xstringer): Likewise.
774 (dot_xdata_ua): Likewise.
775 (dot_float_cons_ua): Likewise.
776
970d6792
L
7772005-02-11 H.J. Lu <hongjiu.lu@intel.com>
778
779 * NEWS: Mention "-munwind-check=[warning|error]".
780
781 * config/tc-ia64.c (md): Add unwind_check.
782 (unwind_diagnostic): New.
783 (in_procedure): Call unwind_diagnostic when a directive isn't
784 in procedure.
785 (in_prologue): Call unwind_diagnostic when a directive isn't in
786 prologue.
787 (in_body): Call unwind_diagnostic when a directive isn't in
788 body region.
789 (dot_endp): Set md.unwind_check to error before calling
790 in_procedure and restore it after. When the name is missing or
791 couldn't be found, use the one from the last .proc if
792 md.unwind_check isn't error. Warn if md.unwind_check is
793 warning.
794 (md_parse_option): Handle "-munwind-check=[warning|error]".
795 (md_show_usage): Add "-munwind-check=[warning|error]".
796 (ia64_init): Set md.unwind_check to warning.
797
798 * doc/as.texinfo: Add "-munwind-check=[none|warning|error]".
799 * doc/c-ia64.texi: Likewise.
800
16a48f83
JB
8012005-02-11 Jan Beulich <jbeulich@novell.com>
802
803 * config/tc-ia64.h (LEX_AT): Include LEX_BEGIN_NAME.
804 (LEX_QM): Likewise.
805 (ia64_parse_name): New third parameter.
806 (md_parse_name): Pass third argument.
807 * config/tc-ia64.c (pseudo_func): Placeholders use NULL as name.
808 (md_operand): Handling of '@'-prefixed symbols moved from here...
809 (ia64_parse_name): ...to here.
810
a911c10a
JB
8112005-02-11 Jan Beulich <jbeulich@novell.com>
812
813 * config/tc-ia64.c (md): Remove last_groups and group_idx.
814 (errata_nop_necessary_p): Remove declaraction and definition.
815 (emit_one_bundle): Don't call errata_nop_necessary_p. Don't
816 update md.group_idx. Don't reset md.last_groups.
817
b3f19c14
JB
8182005-02-11 Jan Beulich <jbeulich@novell.com>
819
820 * config/tc-ia64.c (parse_section_name): Handle non-quoted first
821 argument.
822 (dot_xdata): Free section name after use.
823 (dot_float_cons): Likewise.
824 (dot_xstringer): Likewise.
825 (dot_xdata_ua): Likewise.
826 (dot_float_cons_ua): Likewise.
827 (md_pseudo_table): Add xdata16 and xdata16.ua.
828
5cb53c21
L
8292005-02-10 H.J. Lu <hongjiu.lu@intel.com>
830
831 * doc/all.texi: Add IA64.
832 * doc/as.texinfo: Likewise.
833
834 * doc/c-ia64.texi: Fix typos.
835
620b81c1
JB
8362005-02-10 Julian Brown <julian@codesourcery.com>
837
838 * config/tc-arm.c (do_t_ldmstm): Change BFD_RELOC_NONE to
839 BFD_RELOC_UNUSED.
840 (do_t_push_pop): Likewise.
841 (md_assemble): Likewise.
842 (md_apply_fix3): Handle BFD_RELOC_NONE correctly, make
843 BFD_RELOC_UNUSED same as previous meaning of BFD_RELOC_NONE.
844 (create_unwind_entry): Output dependency on the required personality
845 routines.
846 testsuite/gas/arm/unwind.d: Alter expected output to include
847 dependency on __aeabi_unwind_cpp_pr[01].
848
4ee4d249
NS
8492005-02-07 Nathan Sidwell <nathan@codesourcery.com>
850
851 * as.h (seg_not_empty_p): Return int, not bfd_boolean.
852 * subsegs.c (seg_not_empty_p): Likewise.
853
9f5083a4
NC
8542005-02-07 Inderpreet Singh <inderpreetb@noida.hcltech.com>
855
856 * config/tc-maxq.c (md_estimate_size_before_relax): Correct the
4df6ce47 857 relative jump calculation.
9f5083a4
NC
858 <md_convert_frag) : Likewise.
859 <output_disp): Likewise.
860
aaac53f5
HPN
8612005-02-07 Hans-Peter Nilsson <hp@axis.com>
862
863 * write.c (write_object_file): Recognize warning-symbol construct
864 and skip object- and target- handling for the second symbol.
865
05ee4b0f
JB
8662005-02-02 Jan Beulich <jbeulich@novell.com>
867
868 * config/tc-ia64.c (dot_pred_rel): Update comment. Handle @-prefixed
869 designators along with quoted ones. Free copy of quoted designator
870 when done.
871
65ec77d2
BE
8722005-02-01 Ben Elliston <bje@au.ibm.com>
873
874 * config/atof-ieee.c, config/obj-coff.c, config/obj-elf.c,
875 config/obj-ieee.c, config/obj-som.c, config/obj-vms.c,
876 config/tc-a29k.c, config/tc-alpha.c, config/tc-arc.c,
877 config/tc-arm.c, config/tc-d30v.c, config/tc-dlx.c,
878 config/tc-fr30.c, config/tc-h8300.c, config/tc-h8500.c,
879 config/tc-i370.c, config/tc-i386.c, config/tc-i960.c,
880 config/tc-ia64.c, config/tc-m32r.c, config/tc-m32r.h,
881 config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-mips.c,
882 config/tc-mn10200.c, config/tc-msp430.c, config/tc-ns32k.c,
883 config/tc-openrisc.c, config/tc-or32.c, config/tc-pdp11.c,
884 config/tc-pj.c, config/tc-sparc.h, config/tc-tic54x.c,
885 config/tc-tic80.c, config/tc-v850.c, config/tc-w65.c,
886 config/tc-xtensa.c, config/tc-z8k.c, config/xtensa-relax.c: Remove
887 #if 0'd code throughout.
888
d342277e
NC
8892005-01-31 Nick Clifton <nickc@redhat.com>
890
891 * as.c (parse_args): Bump copyright date reported by --version to
892 2005.
893
d6486796
NC
8942005-01-31 Nick Clifton <nickc@redhat.com>
895
896 * configure.tgt: Remove obsolete targets m68k-lynxos, sparc-lynxos
897 and vax-vms.
898
ca3bc58f
JB
8992005-01-31 Jan Beulich <jbeulich@novell.com>
900
901 * macro.c (buffer_and_nest): Allow 'from' being NULL; handle anything
902 that can end with .endr in that case. Make requiring/permitting
903 pseudo-ops without leading dot closer to the logic in read.c serving
904 the same purpose.
905 (expand_irp): Don't pass a mnemonic to buffer_and_nest as it will be
906 ignored.
907
057f53c1
JB
9082005-01-31 Jan Beulich <jbeulich@novell.com>
909
910 * macro.c (do_formals): Adjust to no longer accept empty parameter
911 names.
912 (define_macro): Adjust to no longer accept empty macro name, garbage
913 following the parameters, or macros that were previously defined.
914 * read.c (s_bad_end): Declare.
915 (potable): Add endm. Handler for endr and endm is s_bad_end.
916 (s_bad_end): Rename from s_bad_endr. Adjust to handle both .endm
917 and .endr.
918 * read.h (s_bad_endr): Remove.
919
d3156ecc
JB
9202005-01-31 Jan Beulich <jbeulich@novell.com>
921
922 * config/tc-ia64.c (parse_operands): Parse all specified operands,
923 immediately discarding (but counting) those exceeding the maximum
924 possible amount. Track whether output and input operand counts ever
925 matched, and use this to better indicate which of the operands/
926 operand types was wrong; specifically don't default to pointing to
927 the first operand.
928
75e09913
JB
9292005-01-31 Jan Beulich <jbeulich@novell.com>
930
931 * config/tc-ia64.c (unwind): Remove proc_end (now an automatic
932 variable in dot_endp). Add body and insn. Make prologue,
933 prologue_mask, body, and insn bitfields.
934 (fixup_unw_records): Remove spurious new-lines from end of diagnostic
935 messages.
936 (in_procedure, in_prologue, in_body): New.
937 (dot_fframe, dot_vframe, dot_vframesp, dot_vframepsp, dot_save,
938 dot_restore, dot_restorereg, dot_restorereg_p, dot_handlerdata,
939 dot_unwentry, dot_altrp, dot_savemem, dot_saveg, dot_savef, dot_saveb,
940 dot_savegf, dot_spill, dot_spillreg, dot_spillmem, dot_spillreg_p,
941 dot_spillmem_p, dot_label_state, dot_copy_state, dot_unwabi,
942 dot_personality): Use the appropriate one of the above.
943 (dot_proc): Clear unwind.proc_start; set to current location only if
944 none of the entry points were valid. Check for non-zero-length entry
945 point names. Check that entry points aren't defined, yet. Clear
946 unwind.prologue, unwind.body, and unwind.insn.
947 (dot_body): Call in_procedure. Check that first directive in procedure
948 had no insns emitted before. Set unwind.body.
949 (dot_prologue): Call in_procedure. Check that not already in prologue.
950 Check that first directive in procedure had no insns emitted before.
951 Clear unwind.body.
952 (dot_endp): Call in_procedure. Declare proc_end. Check for non-zero-
953 length entry point names. Check that entry points became defined.
954 (md_assemble): Set unwind.insn once unwind.proc_start is defined.
955
f4660e2c
JB
9562005-01-31 Jan Beulich <jbeulich@novell.com>
957
958 * config/tc-ia64.c (emit_one_bundle): Snapshot manual bundling state
959 before actually using it. Don't generate an error in manual bundling
960 mode when looking at an insn requiring slot 2 but not yet at slot 2.
961 Don't generate an error in manual bundling mode when looking at an
962 insn required to be last in its group but the required slot hasn't
963 been reached, yet. Allow conversion from MII to MI;I for bundle
964 consisting of only 2 insns with the stop between them. Suppress
965 various meaningless errors resulting from detecting earlier ones.
966
60b9a617
JB
9672005-01-31 Jan Beulich <jbeulich@novell.com>
968
969 * config/tc-ia64.c (parse_operands): Also handle alloc without first
970 input being ar.pfs.
971
7af0dfc7
CG
9722005-01-28 Christian Groessler <chris@groessler.org>
973
974 * config/tc-z8k.c (md_assemble): Improve error detection.
975
f7e323d5
JB
9762005-01-28 Jan Beulich <jbeulich@novell.com>
977
978 * config/tc-ia64.c (ia64_estimate_size_before_relax): Allocate space
979 for personality routine pointer only if there is one.
980 (ia64_convert_frag): Likewise.
981 (generate_unwind_image): Likewise.
982
f87a1e0c
CG
9832005-01-27 Christian Groessler <chris@groessler.org>
984
985 * config/tc-z8k.c (INSERT): Remove, not used anywhere.
986 (md_apply_fix3): Make relative branches out of range an error
987 instead of a warning. Display correct line number for out of
988 range branches/calls/memory accesses.
989
c6cb92c5
NS
9902005-01-27 Nathan Sidwell <nathan@codesourcery.com>
991
992 * dwarf2dbg.c (dwarf2_finish): Correct logic for determining when
993 to emit .debug_line and other debug sections.
994 * as.h (seg_not_empty_p): Declare.
995 * subsegs.c (seg_not_empty_p): New predicate.
996
e8093792
AC
9972005-01-27 Andrew Cagney <cagney@gnu.org>
998
999 * configure: Regenerate to track ../gettext.m4 change.
1000
09124b3f
JB
10012005-01-27 Jan Beulich <jbeulich@novell.com>
1002
1003 * config/tc-ia64.c (emit_one_bundle): Change "?imbf??" to "?ibmfxx".
1004
10052005-01-27 Jan Beulich <jbeulich@novell.com>
97762d08
JB
1006
1007 * config/tc-ia64.c (emit_one_bundle): Add late resolution of move
1008 to/from application registers dynamic insns.
1009 (md_assemble): Defer resolution of move to/from application registers
1010 dynamic insns when they can be issued on either the I- or M-units.
1011
90219bd0
AO
10122005-01-25 Alexandre Oliva <aoliva@redhat.com>
1013
1014 * config/tc-frv.c (md_apply_fix3): Mark TLS symbols as such.
1015 2004-12-10 Alexandre Oliva <aoliva@redhat.com>
1016 * config/tc-frv.c (frv_pic_ptr): Add tlsmoff support.
1017 2004-11-10 Alexandre Oliva <aoliva@redhat.com>
1018 * cgen.c (gas_cgen_parse_operand): Handle
1019 CGEN_PARSE_OPERAND_SYMBOLIC.
1020 * config/tc-frv.c (md_cgen_lookup_reloc): Handle TLS relocations.
1021 (frv_force_relocation): Likewise. Fix handling of PIC
1022 relocations.
1023 (md_apply_fix3): Likewise.
1024
59c871b4
BE
10252005-01-21 Ben Elliston <bje@au.ibm.com>
1026
1027 * as.h: Remove #if 0'd code.
1028 * atof-generic.c (atof_generic): Likewise.
1029 * ecoff.c (ecoff_directive_frame): Likewise.
1030 * frags.h (FRAG_APPEND_1_CHAR): Likewise.
1031 * itbl-ops.c (itbl_add_reg): Likewise.
1032 * listing.c (calc_hex): Likewise.
1033 * read.c (MASK_CHAR): Likewise.
1034 * subsegs.c (subsegs_print_statistics): Likewise.
1035 * symbols.c (indent): Likewise.
1036 * write.c (write_relocs): Likewise.
1037 (write_object_file): Likewise.
1038 (relax_frag): Likewise.
1039
fb767913
NC
10402005-01-20 Nick Clifton <nickc@redhat.com>
1041
1042 * as.c (std_longopts): Add an entry for "--a" in order to prevent
1043 getopt_long_only() from considering -a as an abbreviation for
1044 --alternate.
1045 (parse_args): Fix the parsing of -a=<file>.
1046
c556cc9c
AM
10472005-01-20 Alan Modra <amodra@bigpond.net.au>
1048
1049 PR gas/684
1050 * read.c (s_incbin): Adjust default count for skip. Check validity
1051 of count and skip rigorously.
1052
9c6ed8e6
FF
10532005-01-19 Fred Fish <fnf@specifixinc.com>
1054
1055 * config/tc-mips.c (dummy_opcode): Add init for new struct member.
1056
e5604d79
RS
10572005-01-19 Richard Sandiford <rsandifo@redhat.com>
1058
1059 * read.c (convert_to_bignum): New function, split out from...
1060 (emit_expr): ...here. Handle the case where X_add_number is
1061 positive and the input value is negative.
1062 (output_big_sleb128): Fix setting of continuation bit. Check whether
1063 the final byte needs to be sign-extended. Fix size-shrinking loop.
1064 (emit_leb128_expr): When generating a signed leb128, see whether the
1065 sign of an O_constant's X_add_number matches the sign of the input
1066 value. Use a bignum if not.
1067
e38bc3b5
NC
10682005-01-17 Andrew Stubbs <andrew.stubbs@st.com>
1069
1070 * tc-sh.c (md_begin,md_parse_option): Change arch_sh1_up to
1071 arch_sh_up in order to match the external name and make the
1072 testsuite's job easier.
1073
df227444
L
10742005-01-14 H.J. Lu <hongjiu.lu@intel.com>
1075
4df6ce47 1076 PR 659
df227444
L
1077 * config/tc-i386.c (i386_scale): Disallow 0 scale.
1078
b8b80cf7
NC
10792005-01-12 Nick Clifton <nickc@redhat.com>
1080
1081 * config/tc-iq2000.c (s_iq2000_set): Fix thinko parsing
1082 ignored_arguments array.
1083
324007b9
L
10842005-01-10 H.J. Lu <hongjiu.lu@intel.com>
1085
1086 * write.c (write_object_file): Disallow a symbol equated to
1087 common symbol.
1088
5c4504f7
NC
10892005-01-10 Inderpreet Singh <inderpreetb@noida.hcltech.com>
1090
1091 * tc-maxq.c: Replace constants 10 and 20 with bfd_mach_maxq10 and
1092 bfd_mach_maxq20.
1093 (md_pseudo_table): Add new pseudo ops for maxq10 and maxq20.
1094 (maxq_target): New function: Set the machine type.
1095
4e7fd91e
PB
10962005-01-06 Paul Brook <paul@codesourcery.com>
1097
1098 * config/tc-arm.c (FPU_DEFAULT): Define for TE_VXWORKS.
1099 (md_begin): Handle TE_VXWORKS for FP defaults.
1100 (md_apply_fix3): Correct rela offsets.
1101 (elf32_arm_target_format): Add VxWorks targets.
1102
ea3eed15
PB
11032005-01-06 Paul Brook <paul@codesourcery.com>
1104
1105 * configure.tgt: Set em=vxworks for *-*-vxworks.
1106 * config/te-vxworks.h: New File.
1107
5dc1606f
PB
11082005-01-06 Paul Brook <paul@codesourcery.com>
1109
1110 * config/tc-arm.c (arm_cpus): Correct arch field for arm1026ej-s.
1111
18af0b39
NC
11122005-01-04 Dmitry Diky <diwil@spec.ru>
1113
1114 * config/tc-msp430.c (md_apply_fix3): Fix offset calculation for
1115 global label.
1116
196e8040
JW
11172005-01-03 David Mosberger <davidm@hpl.hp.com>
1118
1119 * config/tc-ia64.c (md): Add member "loc_directive_seen".
1120 (dot_loc): New function.
1121 (md_pseudo_table): Add entry to map .loc to dot_loc().
1122 (emit_one_bundle): Only call dwarf2_gen_line_info() if we have
1123 seen a .loc directive or we're generating DWARF2 debug info for
1124 assembly source.
1125
a207757e
AM
11262004-12-29 Alan Modra <amodra@bigpond.net.au>
1127
1128 PR gas/619
1129 * read.c (s_comm_internal): Don't zero end of name until size
1130 expression has been parsed.
1131
71d7ecf2
MM
11322004-12-25 Marek Michalkiewicz <marekm@amelek.gda.pl>
1133
1134 * config/tc-avr.c (mcu_types): Move attiny{13,2313} from avr4 to avr2.
1135
30c62922
TL
11362004-12-23 Tomer Levi <Tomer.Levi@nsc.com>
1137
1138 * config/tc-crx.c: Support 'bcop' relaxation (dealt as in 'cmp&branch'
1139 case).
1140
14ee9f48
ILT
11412004-12-22 Ian Lance Taylor <ian@airs.com>
1142
1143 * configure.tgt: New.
1144 * configure.in: Move setting of cpu_type, fmt, etc., to
1145 configure.tgt.
1146 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add
1147 $(srcdir)/configure.tgt.
1148 * configure, Makefile.in: Rebuild.
1149
750bce0e 11502004-12-22 Klaus Rudolph <lts-rudolph@gmx.de>
4df6ce47 1151
750bce0e
NC
1152 * config/tc-avr.c: Add support for the new R_AVR_LDI, R_AVR_6 and
1153 R_AVR_6_ADIW relocs for the LDI, ADIW/SBIW and LDD/STD
1154 instructions.
1155 (avr_offset_expression): New function to parse offsets for LDI
1156 instructions.
1157 (avr_operand): Use it.
1158 (md_apply_fix3): Generate the relocs.
1159
9d2be1ee
JR
11602004-12-16 Andrew Stubbs <andrew.stubbs@st.com>
1161
1162 * config/tc-sh64.c (shmedia_md_apply_fix3): Add missing
1163 BFD_RELOC_SH_IMMS10BY8 relocation.
1164
1165 * config/tc-sh64.c (shmedia_build_Mytes): Emit an error message rather
1166 than just ignoring bad code.
1167
1e50d24d
RS
11682004-12-16 Richard Sandiford <rsandifo@redhat.com>
1169
1170 * config/tc-v850.c (handle_lo16): New function.
1171 (v850_reloc_prefix): Use it to check lo().
1172 (md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET.
1173
2fbd2a87
NC
11742004-12-14 P.J. Darcy <darcypj@us.ibm.com>
1175
1176 * configure.in: Add s390x-ibm-tpf support.
1177 * configure: Regenerate.
1178
7a6d0b32
JB
11792004-12-15 Jan Beulich <jbeulich@novell.com>
1180
1181 * config/obj-elf.c (obj_elf_change_section): Only set type and
1182 attributes on new sections. Emit warning when type of re-declared
1183 section doesn't match.
1184
5b9d23c6
JB
11852004-12-15 Jan Beulich <jbeulich@novell.com>
1186
1187 * dw2gencfi.c (dot.cfi.startproc): Clear cur_cfa_offset so
1188 '.cfi_startproc simple' doesn't inherit the old value.
1189
dcb45a06
JB
11902004-12-15 Jan Beulich <jbeulich@novell.com>
1191
1192 * dw2gencfi.c (output_cfi_insn): Adjust DW_CFA_def_cfa_sf generation
1193 to emit a signed and factored offset. Adjust DW_CFA_def_cfa_offset_sf
1194 generation to emit a factored offset.
1195
aa6975fb
ILT
11962004-12-10 Ian Lance Taylor <ian@wasabisystems.com>
1197
6943caf0
ILT
1198 * config/tc-mips.c (macro) [M_LA_AB]: Give an error for a offset
1199 which is too large in the case of NO_PIC without 64-bit
1200 addresses.
1201
aa6975fb
ILT
1202 * config/tc-mips.c (mips_in_shared): New static variable.
1203 (macro_build_lui): Permit "_gp" if !mips_in_shared.
1204 (md_longopts): Add -mshared and -mno-shared.
1205 (md_parse_option): Handle OPTION_MSHARED and OPTION_MNO_SHARED.
1206 (s_cpload): Implement !mips_in_shared case.
1207 (s_cpsetup): Likewise.
1208 * doc/c-mips.texi (MIPS Opts): Document -mno-shared.
1209 * NEWS: Mention -mno-shared.
1210
be1b2b4b
PB
12112004-12-09 Paul Brook <paul@codesourcery.com>
1212
1213 * config/tc-arm.c (s_arm_unwind_fnend): Use R_ARM_PREL31 relocation
1214 for function start.
1215
9a92f48d
ILT
12162004-12-09 Ian Lance Taylor <ian@wasabisystems.com>
1217
dd22970f
ILT
1218 * config/tc-mips.c (append_insn): If we emit a nop during a relax
1219 sequence, increase the size of the sequence.
1220
9a92f48d
ILT
1221 * config/tc-mips.c (mips_cpu_info_table): Change "9000" entry to
1222 use CPU_RM9000.
1223
b617dc20
BE
12242004-12-07 Ben Elliston <bje@gnu.org>
1225
1226 * read.c (s_align): Use an align_limit temporary to allay a GCC
1227 signed/unsigned comparison warning.
1228
c820d418
MM
12292004-12-01 Mark Mitchell <mark@codesourcery.com>
1230
1231 * Makefile.am (TARG_ENV_HFILES): Add te-armlinuxeabi.h.
1232 * configure.in: Use it for arm*-*-linux-gnueabi*.
1233 * config/tc-arm.c: Allow emulation file to set FPU_DEFAULT.
1234 * config/te-armlinuxeabi.h: New file.
1235 * Makefile.in: Regenerated.
1236 * aclocal.m4: Likewise.
1237 * configure: Likewise.
4df6ce47 1238 * doc/Makefile.in: Regenerated.
c820d418 1239
2b0210eb
BW
12402004-12-02 Bob Wilson <bob.wilson@acm.org>
1241
1242 * config/tc-xtensa.c (xtensa_switch_section_emit_state): Use subseg_set.
1243 (xtensa_restore_emit_state): Likewise.
1244
9ebd302d
AM
12452004-12-02 Alan Modra <amodra@bigpond.net.au>
1246
1247 * read.c (ALIGN_LIMIT): Define, increasing limit for BFD_ASSEMBLER.
1248 (s_align): Use it.
1249
32118081
NC
12502004-11-30 Tero Niemela <tero_niemela@yahoo.com>
1251
1252 * Makefile.am: Change LOCALEDIR to $(datadir)/share.
1253 * Makefile.in: Regenerate.
1254
3f414718
TL
12552004-11-29 Tomer Levi <Tomer.Levi@nsc.com>
1256
9ebd302d
AM
1257 * config/tc-crx.c: Major code cleanup. Remove unused variables and
1258 functions, give functions a meaningful name, add comments.
1259 (check_range): New function - Replace operand size calculation
3f414718
TL
1260 with range checking.
1261 (assemble_insn): Update Algorithm, improve error issuing.
9ebd302d 1262 (enum op_err): New.
3f414718
TL
1263 (process_label_constant): Bug fix regarding COP_BRANCH_INS relocation
1264 handling.
1265
a7498ae6
NC
12662004-11-29 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1267
1268 * config/tc-m32r.c (md_pcrel_from_section): Fixed a pcrel relocte
1269 miss between different section in the same module.
1270 (tc_gen_reloc): Likewise.
1271
5c54fd37
NC
12722004-11-25 Theodore A. Roth <troth@openavr.org>
1273
1274 * gas/config/tc-avr.c (mcu_types): Add support for atmega165,
1275 atmega325, atmega3250, atmega645 and atmega6450.
1276
37edbb65
JB
12772004-11-25 Jan Beulich <jbeulich@novell.com>
1278
1279 * config/tc-i386.c (optimize_imm): Adjust immediates to only those
1280 permissible for the selected instruction suffix.
1281 (process_suffix): For DefaultSize instructions, suppressing the
1282 guessing of a 'q' suffix if the instruction doesn't support it is
1283 pointless, because only an 'l' suffix can be guessed in this place.
1284
5515a510
NC
12852004-11-24 Nick Clifton <nickc@redhat.com>
1286
1287 * config/tc-iq2000.c: Remove support for IQ10 processor.
1288 Convert to ISO C90 formatting.
1289 * config/tc-iq2000.h: Likewise.
1290
dae1b34e
NC
12912004-11-23 Nick Clifton <nickc@redhat.com>
1292
1293 * config/tc-mn10300.c (md_relax_table): More fixes to the offsets
1294 in this table. They should be correct now.
1295
5c6af06e
JB
12962004-11-23 Jan Beulich <jbeulich@novell.com>
1297
1298 * config/tc-i386.h (CpuMMX2): Declare. Artificial classifier to
1299 indicate the MMX extensions added by both SSE and 3DNow!A.
1300 (Cpu3dnowA): Declare.
1301 (CpuUnknownFlags): Update.
1302 * config/tc-i386.c (cpu_sub_arch_name): Declare.
1303 (cpu_arch): i586 and pentium do not imply MMX. i686 and pentiumpro do
1304 neither imply SSE nor MMX. k6 implies MMX. k6_2 additionally implies
1305 3DNow!. Athlon additionally implies 3DNow!A. Several new
1306 entries (those starting with a dot are for sub-arch specification).
1307 (set_cpu_arch): Handle sub-arch specifications.
1308 (parse_insn): Distinguish between instructions not supported because
1309 of insufficient CPU features and because of 64-bit mode.
1310 * doc/c-i386.texi: Describe enhanced .arch directive.
1311
d9740523
BW
13122004-11-22 Bob Wilson <bob.wilson@acm.org>
1313
1314 * config/tc-xtensa.c (xg_add_opcode_fix): Set fx_no_overflow.
1315
3120ef82
BW
13162004-11-22 Bob Wilson <bob.wilson@acm.org>
1317
1318 * dwarf2dbg.c (dwarf2_finish): Don't write a .debug_line section
1319 without a corresponding .debug_info section.
1320
d190d046
HPN
13212004-11-22 Hans-Peter Nilsson <hp@axis.com>
1322
1323 * read.c (potable): Add "error" and "warning".
1324 (s_errwarn): New function.
1325 * read.h (s_errwarn): Declare.
1326 * doc/as.texinfo (Error, Warning): Document .error and .warning.
1327
5519f6ea
NC
13282004-11-22 Nick Clifton <nickc@redhat.com>
1329
1330 * config/tc-tic54x.c (tic54x_adjust_symtab): Adjust call to
1331 c_dot_file_symbol.
1332
f5c7edf4
AM
13332004-11-19 Alan Modra <amodra@bigpond.net.au>
1334
1335 * config/tc-msp430.c (struct rcodes_s, MSP430_RLC, msp430_rcodes,
1336 struct hcodes_s, msp430_hcodes): From include/opcode/msp430.h.
1337
a4528eeb
AM
13382004-11-19 Alan Modra <amodra@bigpond.net.au>
1339
1340 * config/obj-coff.c (c_dot_file_symbol): Add "app" param.
1341 (coff_adjust_symtab): Adjust call.
1342 (crawl_symbols): Likewise.
1343 * config/obj-coff.h (c_dot_file_symbol): Add "app" param.
1344 (obj_app_file): Adjust.
1345
444bf5f3
NC
13462004-11-18 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
1347
1348 * configure.in: Enable bfd_assember for the MAXQ port.
1349 * configure: Regenerate.
1350
a1ace8d8 13512004-11-12 Bob Wilson <bob.wilson@acm.org>
88ac794e 1352 Sterling Augustine <sterling@tensilica.com>
a1ace8d8
BW
1353
1354 * config/tc-xtensa.c (finish_vinsn): Clear pending instruction if
1355 there is a conflict.
1356 (check_t1_t2_reads_and_writes): Check for both reads and writes to
1357 interfaces that are related as determined by xtensa_interface_class_id.
1358
30e857fc
NC
13592004-11-12 Nick Clifton <nickc@redhat.com>
1360
1361 * config/tc-mn10300.c (md_relax_table): Fix off by one negative
1362 offsets for conditional branches.
1363
a67517f4
BW
13642004-11-11 Bob Wilson <bob.wilson@acm.org>
1365
1366 * config/tc-xtensa.c (MAX_IMMED6): Change value to 65.
1367
1d19a770
BW
13682004-11-10 Bob Wilson <bob.wilson@acm.org>
1369
1370 * config/tc-xtensa.c (update_next_frag_state): Always add a NOP if
1371 relaxing at the end of a loop. Don't mark frags as UNREACHABLE or
1372 MAYBE_UNREACHABLE.
1373 (relax_frag_immed): Update call to update_next_frag_state.
1374
c04f5787
AM
13752004-11-10 Alan Modra <amodra@bigpond.net.au>
1376
1377 * obj.h (struct format_ops <app_file>): Add int param.
1378 * read.h (s_app_file_string): Likewise.
1379 * read.c (s_app_file_string): Likewise.
1380 (s_app_file): Adjust s_app_file_string call.
1381 * config/tc-mips.c (s_mips_file): Likewise.
1382 * config/obj-coff.h (obj_app_file): Add app param.
1383 * config/obj-ecoff.h (obj_app_file): Likewise.
1384 * config/obj-multi.h (obj_app_file): Likewise.
1385 * config/obj-elf.h (elf_file_symbol): Likewise.
1386 * config/obj-elf.c (elf_file_symbol): Only emit one file symbol
1387 if called for # preprocessor lines.
1388
a77a9021
L
13892004-11-08 H.J. Lu <hongjiu.lu@intel.com>
1390
1391 PR 528
1392 * symbols.c (resolve_symbol_value): Convert weak symbols only
1393 for Windows PECOFF.
1394 (symbol_equated_reloc_p): Don't equate weaks when relocating
1395 only for Windows PECOFF.
1396
aea44f62
TL
13972004-11-08 Tomer Levi <Tomer.Levi@nsc.com>
1398
1399 * config/tc-crx.c (print_insn): Check and set insn_addr.
1400 * config/tc-crx.h (md_frag_check): Define.
1401
7499d566
NC
14022004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
1403 Vineet Sharma <vineets@noida.hcltech.com>
1404
1405 * configure.in: Add support for new target maxq-coff.
1406 * configure: Regenerate.
1407 * NEWS: Mention new support.
1408 * config/tc-maxq.c: New file.
1409 * config/tc-maxq.h: New file.
1410 * config/obj-coff.h: Add support for maxq-coff.
1411
977cdf5a
NC
14122004-11-08 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1413
1414 * symbols.c (any_external_name): Define.
a77a9021 1415 (resolve_symbol_value): Convert weak symbols.
977cdf5a
NC
1416 (S_SET_EXTERNAL): Support any_external_name.
1417 (S_SET_NAME): Qualify parameter const.
316f3bf8 1418 (symbol_equated_reloc_p): Equate to weaks when relocating.
977cdf5a
NC
1419 * symbols.h (S_SET_NAME): Qualfiy parameter const.
1420 * tc.h (any_external_name): Declare.
1421 * config/obj-coff.c ("coff/pe.h"): Include for BFD
1422 assemblers also.
1423 (weak_is_altname): Declare and define.
1424 (weak_name2altname): Same.
1425 (weak_altname2name): Same.
1426 (weak_uniquify): Same.
1427 (weak_altprefix): Define.
1428 (obj_coff_weak): Change .weak syntax and handling.
1429 (coff_frob_symbol): Fix PE weak symbol alternates.
1430 * config/obj-coff.h (USE_UNIQUE): Define.
1431 * config/tc-i386.c (md_apply_fix3): Assume weak symbols
1432 are in another segment.
1433 (tc_gen_reloc): Remove broken addend hack.
1434 doc/as.texinfo: Update.
1435
34e41783
BW
14362004-11-05 Sterling Augustine <sterling@tensilica.com>
1437
1438 * config/tc-xtensa.c (total_frag_text_expansion): New.
1439 (md_estimate_size_before_relax): Use it.
1440 (find_address_of_next_align_frag): Likewise.
1441
dcd46b4e
TL
14422004-11-05 Tomer Levi <Tomer.Levi@nsc.com>
1443
1444 * config/tc-crx.c: Rename argument types.
1445 (processing_arg_number): Rename to 'cur_arg_num'.
1446 (get_number_of_bits): Rename to 'set_operand_size'.
1447 (get_operandtype): Rename to 'parse_operand', totally rewrite.
1448 (set_cons_rparams): Rename to 'set_operand', totally rewrite.
1449 (set_indexmode_parameters): Remove function, integrate its code into
1450 'set_operand'.
1451 (set_operand_size): Get rid of 'Operand Number' function parameter -
1452 use global variable 'cur_arg_num' instead.
1453 Use a local 'argument' pointer to reference the current argument.
1454 (parse_operand): Likewise.
1455 (set_operand): Likewise.
1456 (process_label_constant): Likewise.
1457
9456465c
BW
14582004-11-04 Bob Wilson <bob.wilson@acm.org>
1459
1460 * config/tc-xtensa.c: Remove XTENSA_SECTION_RENAME ifdefs.
1461 (add_section_rename): Delete. Inlined into...
1462 (build_section_rename): ...here. Use xstrdup instead of strdup.
1463 (xtensa_section_rename): Drop "const" from argument and return types.
1464 (md_show_usage): Indent to match show_usage().
1465 * config/tc-xtensa.h: Remove XTENSA_SECTION_RENAME ifdefs.
1466 (tc_canonicalize_section_name): Define.
1467 (md_elf_section_rename): Remove unused macro.
1468 * doc/as.texinfo (Overview): Document Xtensa --rename-section option.
1469 * doc/c-xtensa.texi (Xtensa Options): Likewise.
1470 (Frame Directive): Delete.
1471
7f266840
DJ
14722004-11-04 Daniel Jacobowitz <dan@debian.org>
1473
1474 * configure.in: Remove arm-*-oabi and thumb-*-oabi.
1475 * config/tc-arm.c (target_oabi): Delete.
1476 (md_apply_fix3, elf32_arm_target_format): Remove target_oabi checks.
1477 (arm_opts): Remove moabi.
1478 * doc/as.texinfo (Overview): Remove documentation of -moabi.
1479 * doc/c-arm.texi (ARM Options): Likewise.
1480 * configure: Regenerated.
1481
ae57792d
HPN
14822004-11-04 Hans-Peter Nilsson <hp@axis.com>
1483
1484 * configure.in (crisv32): Recognize. AC_DEFINE_UNQUOTED
1485 DEFAULT_CRIS_ARCH. Handle crisv32-*-linux-gnu* like
1486 cris-*-linux-gnu* and crisv32-*-* like cris-*-*.
1487 * configure: Regenerate.
1488 * config/tc-cris.c (enum cris_archs): New.
1489 (cris_mach, cris_arch_from_string, s_cris_arch, get_sup_reg)
1490 (cris_insn_ver_valid_for_arch): New functions.
1491 (DEFAULT_CRIS_ARCH): New macro, default to cris_any_v0_v10.
1492 (cris_arch): New variable.
1493 (md_pseudo_table): New pseudo .arch.
1494 (err_for_dangerous_mul_placement): Initialize according to
1495 DEFAULT_CRIS_ARCH.
1496 (STATE_COND_BRANCH): Renamed from STATE_CONDITIONAL_BRANCH.
1497 All users changed.
1498 (STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON)
1499 (STATE_ABS_BRANCH_V32, STATE_LAPC, BRANCH_BF_V32, BRANCH_BB_V32)
1500 (BRANCH_WF_V32, BRANCH_WB_V32): New.
1501 (BRANCH_BF, BRANCH_BB, BRANCH_WF, BRANCH_WB): Don't undef after
1502 use in md_cris_relax_table.
1503 (md_cris_relax_table): Add entries for STATE_COND_BRANCH_V32,
1504 STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC.
1505 Update and improve head comment.
1506 (OPTION_PIC): Define in terms of previous option, OPTION_US.
1507 (OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): Similar.
1508 (OPTION_ARCH): New.
1509 (md_longopts): New option --march=...
1510 (cris_any_v0_v10_long_jump_size, crisv32_long_jump_size): New
1511 macros.
1512 (md_long_jump_size): Initialize in terms of DEFAULT_CRIS_ARCH.
1513 (HANDLE_RELAXABLE): New macro.
1514 (md_estimate_size_before_relax): Use HANDLE_RELAXABLE for common
1515 cases. Check for weak symbols and assume not relaxable. Handle
1516 STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON,
1517 STATE_ABS_BRANCH_V32, STATE_LAPC. Use new variable symbolP, not
1518 fragP->fr_symbol.
1519 (md_convert_frag): Handle STATE_COND_BRANCH_V32,
1520 STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC.
1521 (cris_create_short_jump): Adjust for CRISv32.
5664e9a7 1522 (cris_relax_frag): Handle new states.
ae57792d
HPN
1523 (md_create_long_jump): Ditto. Emit error for common_v10_v32.
1524 (md_begin): Define symbols "..asm.arch.cris.v32",
1525 "..asm.arch.cris.v10", "..asm.arch.cris.common_v10_v32" and
1526 "..asm.arch.cris.any_v0_v10". Use cris_insn_ver_valid_for_arch
1527 when entering opcode table entry points.
1528 (md_assemble): Adjust branch handling for CRISv32. Handle LAPC
1529 relaxation. In fix_new_exp call for main insn, pass 1 for pcrel
1530 parameter for 8, 16 and 32-bit pc-relative insns and LAPC.
1531 (cris_process_instruction): Initialize out_insnp->insn_type to
1532 CRIS_INSN_NONE, not CRIS_INSN_NORMAL.
1533 <case ']', '[', 'A', 'd', 'Q', 'N', 'n', 'Y', 'U', 'u', 'T'>: New
1534 cases.
1535 <case 'm'>: Check that modified_char == '.'.
1536 <invalid operands>: Consume the rest of the line.
1537 When operands don't match, skip over subsequent insns with
1538 non-matching version specifier but same mnemonic.
1539 <immediate constant, case SIZE_SPEC_REG>: Immediate operands for
1540 special registers in CRISv32 are always 32 bit long.
1541 <immediate constant, case SIZE_FIELD_SIGNED, SIZE_FIELD_UNSIGNED>:
1542 New cases.
1543 (get_gen_reg): Only recognize "PC" when followed by "+]" for v32
1544 and compatible. Recognize "ACR" for v32, unless followed by "+".
1545 (get_spec_reg): Consider cris_arch when looking up register.
1546 (get_autoinc_prefix_or_indir_op): Don't recognize assignment for
1547 v32 or compatible.
1548 (get_3op_or_dip_prefix_op): Check for ']' after seeing '[rN+'.
1549 (cris_get_expression): Restore input_line_pointer if failing "early".
1550 (get_flags): Consider cris_arch and recognize flags accordingly.
1551 (branch_disp): Adjust for CRISv32.
1552 (gen_cond_branch_32): Similar. Emit error for common_v10_v32.
1553 (cris_number_to_imm): Use as_bad_where, not as_bad. Remove
1554 related FIXME. Don't insist on BFD_RELOC_32_PCREL fixup to be
1555 resolved. Don't enter zeros in object file for
1556 BFD_RELOC_32_PCREL.
1557 <case BFD_RELOC_CRIS_LAPCQ_OFFSET, BFD_RELOC_CRIS_SIGNED_16>
1558 <case BFD_RELOC_CRIS_SIGNED_8>: New case.
1559 (md_parse_option): Break out "return 1".
1560 <OPTION_ARCH> New case.
1561 (tc_gen_reloc): <case BFD_RELOC_CRIS_LAPCQ_OFFSET>
1562 <case BFD_RELOC_CRIS_SIGNED_16, BFD_RELOC_CRIS_SIGNED_8>
1563 <case BFD_RELOC_CRIS_UNSIGNED_8, BFD_RELOC_CRIS_UNSIGNED_16>
1564 <case BFD_RELOC_32_PCREL>: New cases.
1565 Addends for non-zero fx_pcrel are too in fx_offset.
1566 (md_show_usage): Show --march=<arch>.
1567 (md_apply_fix3): Adjust val for BFD_RELOC_CRIS_LAPCQ_OFFSET.
1568 (md_pcrel_from): BFD_RELOC_CRIS_LAPCQ_OFFSET is PC-relative too.
1569 (s_syntax) <struct syntaxes>: Properly constify member operand.
1570 * config/tc-cris.h (TARGET_MACH): Define.
1571 (cris_mach): Declare.
1572 * doc/as.texinfo (Overview) <CRIS>: Add --march=...
1573 * doc/c-cris.texi (CRIS-Symbols): New node for built-in symbols.
1574 (CRIS-Opts): Document --march=...
1575 (CRIS-Pseudos): Document .arch.
1576
9306ca4a
JB
15772004-11-04 Jan Beulich <jbeulich@novell.com>
1578
1579 * config/tc-i386.c (set_intel_syntax): Allow % in symbol names when
1580 intel syntax and no register prefix, allow $ in symbol names when
1581 intel syntax.
1582 (set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX.
1583 (intel_float_operand): Add fourth return value indicating math control
1584 operations. Make classification more precise.
1585 (md_assemble): Complain if memory operand of mov[sz]x has no size
1586 specified.
1587 (parse_insn): Translate word operands to floating point instructions
1588 operating on integers as well as control instructions to short ones
1589 as expected by AT&T syntax. Translate 'd' suffix to short one only for
1590 floating point instructions operating on non-integer operands.
1591 (match_template): Remove fldcw special case. Adjust q-suffix handling
1592 to permit it on fild/fistp/fisttp in AT&T mode.
1593 (process_suffix): Don't guess DefaultSize insns' suffix from
1594 stackop_size for certain floating point control instructions. Guess
1595 suffix for branch and [ls][gi]dt based on flag_code. Split error
1596 messages for Intel and AT&T syntax, and make the condition more strict
1597 for the former. Adjust suppressing of generation of operand size
1598 overrides.
1599 (intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE,
1600 OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add
1601 more error checking.
1602 * config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR
1603 SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines.
1604
2b4f075a
HPN
16052004-11-03 Hans-Peter Nilsson <hp@axis.com>
1606
1607 * symbols.c (colon) [!WORKING_DOT_WORD]: Don't declare
1608 md_short_jump_size, md_long_jump_size.
1609 * write.c [!WORKING_DOT_WORD]: Ditto.
1610 * tc.h [!WORKING_DOT_WORD]: Declare them here. Drop const
1611 qualifier.
1612 * config/tc-cris.h (md_short_jump_size, md_long_jump_size): Don't
1613 declare.
1614 * config/tc-cris.c (md_short_jump_size, md_long_jump_size): Drop
1615 const qualifier in these definitions.
1616 * config/tc-i370.c, config/tc-m68k.c, config/tc-pdp11.c,
1617 config/tc-s390.c, config/tc-tahoe.c, config/tc-vax.c: Ditto.
1618
ddbc47ac
NC
16192004-11-02 Nick Clifton <nickc@redhat.com>
1620
1621 * dwarf2dbg.c (dwarf2_finish): Check for the existence of a file
1622 table before deciding to produce a .debug_line section to match up
1623 with a user provided .debug_info section.
1624
3ad3f5ad
TL
16252004-10-28 Tomer Levi <Tomer.Levi@nsc.com>
1626
1627 * config/tc-crx.c (getreg_image): Bug fix, a return value was
1628 mistakenly omitted from CRX_C_REGTYPE and CRX_CS_REGTYPE cases.
1629
c815a616
TL
16302004-10-27 Tomer Levi <Tomer.Levi@nsc.com>
1631
1632 * config/tc-crx.c: Remove global variable 'post_inc_mode'.
1633 (get_flags): New function.
c04f5787
AM
1634 (get_number_of_bits): Edit comments, update numeric values to
1635 supported sizes.
1636 (process_label_constant): Don't support the colon
1637 format (SYMBOL:[s|m|l]).
c815a616
TL
1638 (set_cons_rparams): Support argument type 'arg_rbase'.
1639 (get_operandtype): Bug fix in 'rbase' operand type parsing.
1640 (handle_LoadStor): Bug fix, first handle post-increment mode.
c04f5787
AM
1641 (getreg_image): Remove redundant code, update according to latest
1642 CRX spec.
c815a616 1643 (print_constant): Bug fix relate to 3-word instructions.
c04f5787 1644 (assemble_insn): Bug fix, when matching instructions, verify also
c815a616
TL
1645 instruction type (not only mnemonic).
1646 Add various error checking.
1647 (preprocess_reglist): Support HI/LO and user registers.
1648
ed7af9f9
L
16492004-10-25 David Mosberger-Tang <davidm@hpl.hp.com>
1650
c04f5787 1651 * config/tc-ia64.c (fixup_unw_records): Don't let the "t" value
ed7af9f9
L
1652 in an epilogue directive go negative.
1653
ac025970
L
16542004-10-25 H.J. Lu <hongjiu.lu@intel.com>
1655
1656 PR 474
1657 * config/tc-ia64.c (emit_one_bundle): Decrement md.num_slots_in_use
1658 after reporting template error during manual bundling. Reported
1659 by Michael Dupont, michaelx.dupont@intel.com.
1660
a394c00f
NC
16612004-10-25 Daniel Jacobowitz <dan@debian.org>
1662
1663 * Makefile.am: Run dep-am.
1664 * aclocal.m4: Regenerate with automake 1.9.2.
1665 * Makefile.in: Regenerate with automake 1.9.2.
1666 * doc/Makefile.in: Likewise.
1667
1668 * config/tc-arm.c: Include "dw2gencfi.h".
1669 (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions):
1670 New functions.
1671 * config/tc-arm.h (TARGET_USE_CFIPOP, DWARF2_DEFAULT_RETURN_COLUMN)
1672 (DWARF2_CIE_DATA_ALIGNMENT, tc_regname_to_dw2regnum)
1673 (tc_cfi_frame_initial_instructions): Define.
1674 (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions):
1675 Add prototypes.
1676
23d83918
TL
16772004-10-21 Tomer Levi <Tomer.Levi@nsc.com>
1678
1679 * config/tc-crx.c (assemble_insn): Check unsigned immediate
1680 operands validity.
1681 Update coprocessor id to be unsigned immediate.
1682
bb41ade5
AM
16832004-10-18 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1684
1685 * config/tc-i386.c (O_secrel): Delete.
1686 (tc_pe_dwarf2_emit_offset): New function.
1687 * config/tc-i386.h (O_secrel): Define as O_md1.
1688 (TC_DWARF2_EMIT_OFFSET): Define.
1689
87e62348
NC
16902004-10-18 Nick Clifton <nickc@redhat.com>
1691
1692 * config/tc-xstormy16.c (xstormy16_cons_fix_new): Accept and
1693 ignore @fptr() directives for 4-byte fixups.
1694
3c55da70
AM
16952004-10-15 Alan Modra <amodra@bigpond.net.au>
1696
1697 * Makefile.am: Run "make dep-am"
1698 * Makefile.in: Regenerate.
1699
40e7b7b9
BW
17002004-10-14 Bob Wilson <bob.wilson@acm.org>
1701
1702 * doc/c-xtensa.texi (Xtensa Options, Absolute Literals Directive):
1703 Remove comments about placement of literal pools.
1704 (Literal Directive): Update description of literal placement.
1705 (Literal Prefix Directive): Remove statement that this does not apply
1706 to absolute-mode literals. Describe new section naming scheme.
1707
b08b5071
BW
17082004-10-12 Bob Wilson <bob.wilson@acm.org>
1709
1710 * config/tc-xtensa.c (xtensa_frequency_pseudo): Use set_subseg_freq.
1711 (is_entry_opcode, is_movi_opcode, is_the_loop_opcode, is_jx_opcode,
1712 is_windowed_return_opcode): Delete.
1713 (xtensa_frob_label): Use get_subseg_target_freq.
1714 (md_assemble): Inline call to is_entry_opcode.
1715 (xtensa_handle_align): Inline call to get_frag_is_literal.
1716 (relaxation_requirements): Inline call to is_jx_opcode.
1717 (emit_single_op): Inline call to is_movi_opcode.
1718 (xg_assemble_vliw_tokens): Inline calls to get_frag_is_insn,
1719 get_frag_is_no_transform, is_entry_opcode, and
1720 set_frag_is_specific_opcode. Use get_subseg_total_freq.
1721 (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags,
1722 xtensa_fix_close_loop_end_frags, relax_frag_immed, convert_frag_immed):
1723 Inline calls to get_frag_is_no_transform.
1724 (next_instrs_are_b_retw): Inline call to is_windowed_return_opcode.
1725 (xtensa_fix_short_loop_frags): Inline calls to is_the_loop_opcode and
1726 get_frag_is_no_transform.
1727 (convert_frag_immed_finish_loop): Inline calls to get_expression_value
1728 and set_frag_is_no_transform.
1729 (get_expression_value): Delete.
1730 (subseg_map struct): Rename cur_total_freq to total_freq. Rename
1731 cur_target_freq to target_freq.
1732 (get_subseg_info): Split out code to create a new map entry into ...
1733 (add_subseg_info): ... this new function.
1734 (get_last_insn_flags): Check if get_subseg_info succeeded.
1735 (set_last_insn_flags): Call add_subseg_info if needed.
1736 (get_subseg_total_freq, get_subseg_target_freq, set_subseg_freq): New.
1737 (xtensa_reorder_segments): Compute last_sec while counting sections.
1738 Remove call to get_last_sec.
1739 (get_last_sec): Delete.
1740 (cache_literal_section): Inline call to retrieve_literal_seg and its
1741 callees, seg_present and add_seg_list.
1742 (retrieve_literal_seg, seg_present, add_seg_list): Delete.
1743 (get_frag_is_insn, get_frag_is_no_transform,
1744 set_frag_is_specific_opcode, set_frag_is_no_transform): Delete.
1745 * config/tc-xtensa.h (MAX_SLOTS): Reduce from 31 to 15.
1746
7fa3d080
BW
17472004-10-12 Bob Wilson <bob.wilson@acm.org>
1748
1749 * config/tc-xtensa.c: Use ISO C90 formatting.
1750 * config/tc-xtensa.h: Likewise.
1751 * config/xtensa-istack.h: Likewise.
1752 * config/xtensa-relax.c: Likewise.
1753 * config/xtensa-relax.h: Likewise.
1754
8cb51566
PB
17552004-10-12 Paul Brook <paul@codesourcery.com>
1756
1757 * config/tc-arm.c (md_begin): Change EF_ARM_EABI_VER3 to
1758 EF_ARM_EABI_VER4.
1759 (arm_eabis): Ditto.
1760 * doc/c-arm.texi: Document that we actually support -meabi=4, not
1761 -meabi=3.
1762
653cfe85
BW
17632004-10-08 Bob Wilson <bob.wilson@acm.org>
1764
1765 * doc/as.texinfo (VTableEntry, VTableInherit): Add "directive" to index
1766 entries.
1767 (Acknowledgements): Use "GAS" instead of AS variable.
1768
d2b2c203
DJ
17692004-10-08 Daniel Jacobowitz <dan@debian.org>
1770
1771 * config/tc-i386.c: Include "elf/x86-64.h".
1772 (i386_elf_section_type): New function.
1773 * config/tc-i386.h (md_elf_section_type): Define.
1774 (i386_elf_section_type): New prototype.
1775
e80e0390
NC
17762004-10-08 Linus Nielsen Feltzing <linus@haxx.se>
1777
1778 * config/m68k-parse.h (enum m68k_register): New control register,
1779 MBAR2 (for MCF5249)
1780 * config/tc-m68k.c: Correct control register set for MCF5249.
1781
43cd72b9 17822004-10-07 Bob Wilson <bob.wilson@acm.org>
85a5ac80 1783 Sterling Augustine <sterling@tensilica.com>
43cd72b9
BW
1784
1785 * config/tc-xtensa.c (absolute_literals_supported): New global flag.
1786 (UNREACHABLE_MAX_WIDTH): Define.
1787 (XTENSA_FETCH_WIDTH): Delete.
1788 (cur_vinsn, xtensa_fetch_width, xt_saved_debug_type, past_xtensa_end,
1789 prefer_const16, prefer_l32r): New global variables.
1790 (LIT4_SECTION_NAME): Define.
1791 (lit4_state struct): Add lit4_seg_name and lit4_seg fields.
1792 (XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define.
1793 (frag_flags struct): New.
c04f5787 1794 (xtensa_block_info struct): Move from tc-xtensa.h. Add flags field.
43cd72b9
BW
1795 (subseg_map struct): Add cur_total_freq and cur_target_freq fields.
1796 (bitfield, bit_is_set, set_bit, clear_bit): Define.
1797 (MAX_FORMATS): Define.
1798 (op_placement_info struct, op_placement_table): New.
1799 (O_pltrel, O_hi16, O_lo16): Define.
1800 (directiveE enum): Rename directive_generics to directive_transform.
1801 Delete directive_relax. Add directive_schedule,
1802 directive_absolute_literals, and directive_last_directive.
1803 (directive_info): Rename "generics" to "transform". Delete "relax".
1804 Add "schedule" and "absolute-literals".
1805 (directive_state): Adjust entries to match changes in directive_info.
1806 (xtensa_relax_statesE, RELAX_IMMED_MAXSTEPS): Move to tc-xtensa.h.
1807 (xtensa_const16_opcode, xtensa_movi_opcode, xtensa_movi_n_opcode,
1808 xtensa_l32r_opcode, xtensa_nop_opcode, xtensa_rsr_lcount_opcode): New.
1809 (xtensa_j_opcode, xtensa_rsr_opcode): Delete.
1810 (align_only_targets, software_a0_b_retw_interlock,
1811 software_avoid_b_j_loop_end, maybe_has_b_j_loop_end,
1812 software_avoid_short_loop, software_avoid_close_loop_end,
1813 software_avoid_all_short_loops, specific_opcode): Delete.
1814 (warn_unaligned_branch_targets): New.
1815 (workaround_a0_b_retw, workaround_b_j_loop_end, workaround_short_loop,
1816 workaround_close_loop_end, workaround_all_short_loops): Default FALSE.
1817 (option_[no_]link_relax, option_[no_]transform,
1818 option_[no_]absolute_literals, option_warn_unaligned_targets,
1819 option_prefer_l32r, option_prefer_const16, option_target_hardware):
1820 New enum values.
1821 (option_[no_]align_only_targets, option_literal_section_name,
1822 option_text_section_name, option_data_section_name,
1823 option_bss_section_name, option_eb, option_el): Delete.
1824 (md_longopts): Add entries for: [no-]transform, [no-]absolute-literals,
1825 warn-unaligned-targets, prefer-l32r, prefer-const16, [no-]link-relax,
1826 and target-hardware. Delete entries for [no-]target-align-only,
1827 literal-section-name, text-section-name, data-section-name, and
1828 bss-section-name.
1829 (md_parse_option): Handle new options and remove old ones. Accept but
1830 ignore [no-]density options. Warn for [no-]generics and [no-]relax
1831 and treat them as [no-]transform.
1832 (md_show_usage): Add new options and remove old ones.
1833 (xtensa_setup_hw_workarounds): New.
1834 (md_pseudo_table): Change "word" entry to use xtensa_elf_cons. Add
1835 "long", "short", "loc" and "frequency" entries.
1836 (use_generics): Rename to ...
1837 (use_transform): ... this function. Add past_xtensa_end check.
1838 (use_longcalls): Add past_xtensa_end check.
1839 (code_density_available, can_relax): Delete.
1840 (do_align_targets): New.
1841 (get_directive): Accept dashes in directive names. Warn about
1842 [no-]generics and [no-]relax directives and treat them as
c04f5787 1843 [no-]transform.
43cd72b9
BW
1844 (xtensa_begin_directive): Call md_flush_pending_output only for some
1845 directives. Check for directives inside instruction bundles. Warn
1846 about deprecated ".begin literal" usage. Warn and ignore [no-]density
1847 directives. Handle new directives. Check generating_literals flag
1848 for literal_prefix.
1849 (xtensa_end_directive): Check for directives inside instruction
1850 bundles. Warn and ignore [no-]density directives. Handle new
1851 directives. Call xtensa_set_frag_assembly_state.
1852 (xtensa_loc_directive_seen, xtensa_dwarf2_directive_loc,
1853 xtensa_dwarf2_emit_insn): New.
1854 (xtensa_literal_position): Call md_flush_pending_output. Do not check
1855 use_literal_section flag.
1856 (xtensa_literal_pseudo): Call md_flush_pending_output. Handle absolute
1857 literals. Use xtensa_elf_cons to parse the expression.
1858 (xtensa_literal_prefix): Do not check use_literal_section. Support
1859 ".lit4" sections for absolute literals. Change prefix convention to
1860 replace ".text" (or ".t" in a linkonce section). No need to call
1861 subseg_set.
1862 (xtensa_frequency_pseudo, xtensa_elf_cons, xtensa_elf_suffix): New.
1863 (expression_end): Handle closing braces and colons.
1864 (PLT_SUFFIX, plt_suffix): Delete.
1865 (expression_maybe_register): Use new xtensa-isa.h functions. Use
1866 xtensa_elf_suffix instead of checking for plt suffix, and handle O_lo16
1867 and O_hi16 expressions as well.
1868 (tokenize_arguments): Handle closing braces and colons.
1869 (parse_arguments): Use new xtensa-isa.h functions. Handle "invisible"
1870 operands and paired register syntax.
1871 (get_invisible_operands): New.
1872 (xg_translate_sysreg_op): Handle new Xtensa LX RSR/WSR/XSR syntax. Use
1873 new xtensa-isa.h functions.
1874 (xtensa_translate_old_userreg_ops, xtensa_translate_zero_immed): New.
1875 (xg_translate_idioms): Check if inside bundle. Use use_transform.
1876 Handle new Xtensa LX RSR/WSR/XSR syntax. Remove code to widen density
1877 instructions. Use xtensa_translate_zero_immed.
1878 (operand_is_immed, operand_is_pcrel_label): Delete.
1879 (get_relaxable_immed): Use new xtensa-isa.h functions.
1880 (get_opcode_from_buf): Add slot parameter. Use new xtensa-isa.h
1881 functions.
1882 (xtensa_print_insn_table, print_vliw_insn): New.
1883 (is_direct_call_opcode): Use new xtensa-isa.h functions.
1884 (is_call_opcode, is_loop_opcode, is_conditional_branch_opcode,
1885 is_branch_or_jump_opcode): Delete.
1886 (is_movi_opcode, decode_reloc, encode_reloc, encode_alt_reloc): New.
1887 (opnum_to_reloc, reloc_to_opnum): Delete.
1888 (xtensa_insnbuf_set_operand, xtensa_insnbuf_get_operand): Use new
1889 xtensa-isa.h functions. Operate on one slot of an instruction.
1890 (xtensa_insnbuf_set_immediate_field, is_negatable_branch,
1891 xg_get_insn_size): Delete.
1892 (xg_get_build_instr_size): Use xg_get_single_size.
1893 (xg_is_narrow_insn, xg_is_single_relaxable_insn): Update calls to
1894 xg_build_widen_table. Use xg_get_single_size.
1895 (xg_get_max_narrow_insn_size): Delete.
1896 (xg_get_max_insn_widen_size, xg_get_max_insn_widen_literal_size,
1897 xg_is_relaxable_insn): Update calls to xg_build_widen_table. Use
1898 xg_get_single_size.
1899 (xg_build_to_insn): Record the loc field. Handle OP_OPERAND_HI16U and
1900 OP_OPERAND_LOW16U. Check xg_valid_literal_expression.
1901 (xg_expand_to_stack, xg_expand_narrow): Update calls to
1902 xg_build_widen_table. Use xg_get_single_size.
1903 (xg_immeds_fit): Use new xtensa-isa.h functions. Update call to
1904 xg_check_operand.
1905 (xg_symbolic_immeds_fit): Likewise. Also handle O_lo16 and O_hi16, and
1906 treat weak symbols conservatively.
1907 (xg_check_operand): Use new xtensa-isa.h functions.
1908 (is_dnrange): Delete.
1909 (xg_assembly_relax): Inline previous calls to tinsn_copy.
1910 (xg_finish_frag): Specify separate relax states for the frag and slot0.
1911 (is_branch_jmp_to_next, xg_add_branch_and_loop_targets): Use new
1912 xtensa-isa.h functions.
1913 (xg_instruction_matches_option_term, xg_instruction_matches_or_options,
1914 xg_instruction_matches_options): New.
1915 (xg_instruction_matches_rule): Handle O_register expressions. Call
1916 xg_instruction_matches_options.
1917 (transition_rule_cmp): New.
1918 (xg_instruction_match): Update call to xg_build_simplify_table.
1919 (xg_build_token_insn): Record loc fields.
1920 (xg_simplify_insn): Check is_specific_opcode field and
1921 density_supported flag.
1922 (xg_expand_assembly_insn): Skip checking code_density_available. Use
1923 new xtensa-isa.h functions. Call use_transform instead of can_relax.
1924 (xg_assemble_literal): Add error handling for O_big. Call
1925 record_alignment. Handle O_pltrel.
1926 (xg_valid_literal_expression): New.
1927 (xg_assemble_literal_space): Add slot parameter. Remove call to
1928 set_expr_symbol_offset. Add call to record_alignment. Update call to
1929 xg_finish_frag.
1930 (xg_emit_insn): Delete.
1931 (xg_emit_insn_to_buf): Add format parameter. Update calls to
1932 xg_add_opcode_fix and xtensa_insnbuf_to_chars.
1933 (xg_add_opcode_fix): Change opcode parameter to tinsn and add format
1934 and slot parameters. Handle new "alternate" relocations for absolute
1935 literals and CONST16 instructions. Check for bad uses of O_lo16 and
1936 O_hi16. Use new xtensa-isa.h functions.
1937 (xg_assemble_tokens): Delete.
1938 (is_register_writer): Use new xtensa-isa.h functions.
1939 (is_bad_loopend_opcode): Check for xtensa_rsr_lcount_opcode instead of
1940 old-style RSR from LCOUNT.
1941 (next_frag_opcode): Delete.
1942 (next_frag_opcode_is_loop, next_frag_format_size, frag_format_size,
1943 update_next_frag_state): New.
1944 (update_next_frag_nop_state): Delete.
1945 (next_frag_pre_opcode_bytes): Use next_frag_opcode_is_loop.
1946 (xtensa_mark_literal_pool_location): Check use_literal_section flag and
1947 the state of the absolute-literals directive. Add calls to
1948 record_alignment and xtensa_set_frag_assembly_state. Call
1949 xtensa_switch_to_non_abs_literal_fragment instead of
1950 xtensa_switch_to_literal_fragment.
1951 (build_nop): New.
1952 (assemble_nop): Use build_nop. Update call to xtensa_insnbuf_to_chars.
1953 (get_expanded_loop_offset): Change check for undefined opcode to an
1954 assertion.
1955 (xtensa_set_frag_assembly_state, relaxable_section,
1956 xtensa_find_unmarked_state_frags, xtensa_find_unaligned_branch_targets,
1957 xtensa_find_unaligned_loops, xg_apply_tentative_value): New.
1958 (md_begin): Update call to xtensa_isa_init. Initialize linkrelax to 1.
1959 Set lit4_seg_name. Call xg_init_vinsn. Initialize new global opcodes.
1960 Call init_op_placement_info_table and xtensa_set_frag_assembly_state.
1961 (xtensa_init_fix_data): New.
1962 (xtensa_frob_label): Reset label symbol to the current frag. Check
1963 do_align_targets and generating_literals flag. Propagate frequency
1964 info to new alignment frag. Call xtensa_set_frag_assembly_state.
1965 (xtensa_unrecognized_line): New.
1966 (xtensa_flush_pending_output): Check if inside a bundle. Add a call
1967 to xtensa_set_frag_assembly_state.
1968 (error_reset_cur_vinsn): New.
1969 (md_assemble): Remove check for literal frag. Remove call to
1970 istack_init. Call use_transform instead of use_generics. Parse
1971 explicit instruction format specifiers. Move code for
1972 a0_b_retw_interlock workaround to xg_assemble_vliw_tokens. Call
1973 error_reset_cur_vinsn on errors. Add call to get_invisible_operands.
1974 Add dwarf2_where call. Remote automatic alignment for ENTRY
1975 instructions. Move call to xtensa_clear_insn_labels to the end.
1976 Rearrange to handle bundles.
1977 (xtensa_cons_fix_new): Delete.
1978 (xtensa_handle_align): New.
1979 (xtensa_frag_init): Call xtensa_set_frag_assembly_state. Remove
1980 assignment to is_no_density field.
1981 (md_pcrel_from): Use new xtensa-isa.h functions. Use decode_reloc
1982 instead of reloc_to_opnum. Handle "alternate" relocations.
1983 (xtensa_force_relocation, xtensa_check_inside_bundle,
1984 xtensa_elf_section_change_hook): New.
1985 (xtensa_symbol_new_hook): Delete.
1986 (xtensa_fix_adjustable): Check for difference of symbols with an
1987 offset. Check for external and weak symbols.
1988 (md_apply_fix3): Remove cases for XTENSA_OP{0,1,2} relocs.
1989 (md_estimate_size_before_relax): Return expansion for the first slot.
1990 (tc_gen_reloc): Handle difference of symbols by producing
1991 XTENSA_DIFF{8,16,32} relocs and by writing the value of the difference
1992 into the output. Handle new XTENSA_SLOT*_OP relocs by storing the
1993 tentative values into the output when linkrelax is set.
1994 (XTENSA_PROP_SEC_NAME): Define.
1995 (xtensa_post_relax_hook): Call xtensa_find_unmarked_state_frags.
1996 Create literal tables only if using literal sections. Create new
1997 property tables instead of old instruction tables. Check for unaligned
1998 branch targets and loops.
1999 (finish_vinsn, find_vinsn_conflicts, check_t1_t2_reads_and_writes,
2000 new_resource_table, clear_resource_table, resize_resource_table,
2001 resources_available, reserve_resources, release_resources,
2002 opcode_funcUnit_use_unit, opcode_funcUnit_use_stage,
2003 resources_conflict, xg_find_narrowest_format, relaxation_requirements,
2004 bundle_single_op, emit_single_op, xg_assemble_vliw_tokens): New.
2005 (xtensa_end): Call xtensa_flush_pending_output. Set past_xtensa_end
2006 flag. Update checks for workaround options. Call
2007 xtensa_mark_narrow_branches and xtensa_mark_zcl_first_insns.
2008 (xtensa_cleanup_align_frags): Add special case for branch targets.
2009 Check for and mark unreachable frags.
2010 (xtensa_fix_target_frags): Remove use of align_only_targets flag.
2011 Use RELAX_LOOP_END_BYTES in special case for negatable branch at the
2012 end of a zero-overhead loop body.
2013 (frag_can_negate_branch): Handle instructions with multiple slots.
2014 Use new xtensa-isa.h functions
2015 (xtensa_mark_narrow_branches, is_narrow_branch_guaranteed_in_range,
2016 xtensa_mark_zcl_first_insns): New.
2017 (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags): Error if
2018 transformations are disabled.
2019 (next_instrs_are_b_retw): Use new xtensa-isa.h functions. Handle
2020 multislot instructions.
2021 (xtensa_fix_close_loop_end_frags, xtensa_fix_short_loop_frags):
2022 Likewise. Also error if transformations are disabled.
2023 (unrelaxed_frag_max_size): New.
2024 (unrelaxed_frag_min_insn_count, unrelax_frag_has_b_j): Use new
2025 xtensa-isa.h functions.
2026 (xtensa_sanity_check, is_empty_loop, is_local_forward_loop): Use
2027 xtensa_opcode_is_loop instead of is_loop_opcode.
2028 (get_text_align_power): Replace as_fatal with assertion.
2029 (get_text_align_fill_size): Iterate instead of using modulus when
2030 use_nops is false.
2031 (get_noop_aligned_address): Assert that this is for a machine-dependent
2032 RELAX_ALIGN_NEXT_OPCODE frag. Use next_frag_opcode_is_loop,
2033 xg_get_single_size, and frag_format_size.
2034 (get_widen_aligned_address): Rename to ...
2035 (get_aligned_diff): ... this function. Add max_diff parameter.
2036 Remove handling of rs_align/rs_align_code frags. Use
2037 next_frag_format_size, get_text_align_power, get_text_align_fill_size,
2038 next_frag_opcode_is_loop, and xg_get_single_size. Compute max_diff
2039 and pass it back to caller.
2040 (xtensa_relax_frag): Use relax_frag_loop_align. Add code for new
2041 RELAX_SLOTS, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN,
2042 RELAX_FILL_NOP, and RELAX_UNREACHABLE frag types. Check relax_seen.
2043 (relax_frag_text_align): Rename to ...
2044 (relax_frag_loop_align): ... this function. Assume loops can only be
2045 in the first slot of an instruction.
2046 (relax_frag_add_nop): Use assemble_nop instead of constructing an OR
2047 instruction. Remove call to frag_wane.
2048 (relax_frag_narrow): Rename to ...
2049 (relax_frag_for_align): ... this function. Extend to handle
2050 RELAX_FILL_NOP and RELAX_UNREACHABLE, as well as RELAX_SLOTS with
2051 RELAX_NARROW for the first slot.
2052 (find_address_of_next_align_frag, bytes_to_stretch): New.
2053 (future_alignment_required): Use find_address_of_next_align_frag and
2054 bytes_to_stretch. Look ahead to subsequent frags to make smarter
2055 alignment decisions.
2056 (relax_frag_immed): Add format, slot, and estimate_only parameters.
2057 Check if transformations are enabled for b_j_loop_end workaround.
2058 Use new xtensa-isa.h functions and handle multislot instructions.
2059 Update call to xg_assembly_relax.
2060 (md_convert_frag): Handle new RELAX_SLOTS, RELAX_UNREACHABLE,
2061 RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, and RELAX_FILL_NOP
2062 frag types.
2063 (convert_frag_narrow): Add segP, format and slot parameters. Call
2064 convert_frag_immed for branch instructions. Adjust calls to
2065 tinsn_from_chars, tinsn_immed_from_frag, and xg_emit_insn_to_buf. Use
2066 xg_get_single_size and xg_get_single_format.
2067 (convert_frag_fill_nop): New.
2068 (convert_frag_immed): Add format and slot parameters. Handle multislot
2069 instructions and use new xtensa-isa.h functions. Update calls to
2070 tinsn_immed_from_frag and xg_assembly_relax. Check if transformations
2071 enabled for b_j_loop_end workaround. Use build_nop instead of
2072 assemble_nop. Check is_specific_opcode flag. Check for unreachable
2073 frags. Use xg_get_single_size. Handle O_pltrel.
2074 (fix_new_exp_in_seg): Remove check for old plt flag.
2075 (convert_frag_immed_finish_loop): Update calls to tinsn_from_chars and
2076 xtensa_insnbuf_to_chars. Call tinsn_immed_from_frag. Change check
2077 for loop opcode to an assertion. Mark all frags up to the end of the
2078 loop as not transformable.
2079 (get_last_insn_flags, set_last_insn_flags): Use get_subseg_info.
2080 (get_subseg_info): New.
2081 (xtensa_move_literals): Call xtensa_set_frag_assembly_state. Add null
2082 check for dest_seg.
2083 (xtensa_switch_to_literal_fragment): Rewrite to handle absolute
2084 literals and use xtensa_switch_to_non_abs_literal_fragment otherwise.
2085 (xtensa_switch_to_non_abs_literal_fragment): New.
2086 (cache_literal_section): Add is_code parameter and pass it through to
2087 retrieve_literal_seg.
2088 (retrieve_literal_seg): Add is_code parameter and use it to set the
2089 flags on the literal section. Handle case where head parameter is 0.
2090 (get_frag_is_no_transform, set_frag_is_specific_opcode,
2091 set_frag_is_no_transform): New.
2092 (xtensa_create_property_segments): Add end_property_function parameter
2093 and pass it through to add_xt_block_frags. Call bfd_get_section_flags
2094 and skip SEC_DEBUGGING and !SEC_ALLOC sections.
2095 (xtensa_create_xproperty_segments, section_has_xproperty): New.
2096 (add_xt_block_frags): Add end_property_function parameter and call it
2097 if it is non-zero. Call xtensa_frag_flags_init.
2098 (xtensa_frag_flags_is_empty, xtensa_frag_flags_init,
2099 get_frag_property_flags, frag_flags_to_number,
2100 xtensa_frag_flags_combinable, xt_block_aligned_size,
2101 xtensa_xt_block_combine, add_xt_prop_frags,
2102 init_op_placement_info_table, opcode_fits_format_slot,
2103 xg_get_single_size, xg_get_single_format): New.
2104 (istack_push): Inline call to tinsn_copy.
2105 (tinsn_copy): Delete.
2106 (tinsn_has_invalid_symbolic_operands): Handle O_hi16 and O_lo16 and
2107 CONST16 opcodes. Handle O_big, O_illegal, and O_absent.
2108 (tinsn_has_complex_operands): Handle O_hi16 and O_lo16.
2109 (tinsn_to_insnbuf): Use xg_get_single_format and new xtensa-isa.h
2110 functions. Handle invisible operands.
2111 (tinsn_to_slotbuf): New.
2112 (tinsn_check_arguments): Use new xtensa-isa.h functions.
2113 (tinsn_from_chars): Add slot parameter. Rewrite using xg_init_vinsn,
2114 vinsn_from_chars, and xg_free_vinsn.
2115 (tinsn_from_insnbuf): New.
2116 (tinsn_immed_from_frag): Add slot parameter and handle multislot
2117 instructions. Handle symbol differences.
2118 (get_num_stack_text_bytes): Use xg_get_single_size.
2119 (xg_init_vinsn, xg_clear_vinsn, vinsn_has_specific_opcodes,
2120 xg_free_vinsn, vinsn_to_insnbuf, vinsn_from_chars, expr_is_register,
2121 get_expr_register, set_expr_symbol_offset_diff): New.
2122 * config/tc-xtensa.h (MAX_SLOTS): Define.
2123 (xtensa_relax_statesE): Move from tc-xtensa.c. Add
2124 RELAX_CHECK_ALIGN_NEXT_OPCODE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_SLOTS,
2125 RELAX_FILL_NOP, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, and
2126 RELAX_NONE types.
2127 (RELAX_IMMED_MAXSTEPS): Move from tc-xtensa.c.
2128 (xtensa_frag_type struct): Add is_assembly_state_set,
2129 use_absolute_literals, relax_seen, is_unreachable, is_specific_opcode,
2130 is_align, is_text_align, alignment, and is_first_loop_insn fields.
2131 Replace is_generics and is_relax fields by is_no_transform field.
2132 Delete is_text and is_longcalls fields. Change text_expansion and
2133 literal_expansion to arrays of MAX_SLOTS entries. Add arrays of
2134 per-slot information: literal_frags, slot_subtypes, slot_symbols,
2135 slot_sub_symbols, and slot_offsets. Add fr_prev field.
2136 (xtensa_fix_data struct): New.
2137 (xtensa_symfield_type struct): Delete plt field.
2138 (xtensa_block_info struct): Move definition to tc-xtensa.h. Add
2139 forward declaration here.
2140 (xt_section_type enum): Delete xt_insn_sec. Add xt_prop_sec.
2141 (XTENSA_SECTION_RENAME): Undefine.
2142 (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FORCE_RELOCATION, NO_PSEUDO_DOT,
2143 tc_unrecognized_line, md_do_align, md_elf_section_change_hook,
2144 HANDLE_ALIGN, TC_LINKRELAX_FIXUP, SUB_SEGMENT_ALIGN): Define.
2145 (TC_CONS_FIX_NEW, tc_symbol_new_hook): Delete.
2146 (unit_num_copies_func, opcode_num_units_func,
2147 opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func): New.
2148 (resource_table struct): New.
2149 * config/xtensa-istack.h (MAX_INSN_ARGS): Increase from 6 to 10.
2150 (TInsn struct): Add keep_wide, loc, fixup, record_fix, subtype,
2151 literal_space, symbol, sub_symbol, offset, and literal_frag fields.
2152 (tinsn_copy): Delete prototype.
2153 (vliw_insn struct): New.
2154 * config/xtensa-relax.c (insn_pattern_struct): Add options field.
2155 (widen_spec_list): Add option conditions for density and boolean
2156 instructions. Add expansions using CONST16 and conditions for using
2157 CONST16 vs. L32R. Use new Xtensa LX RSR/WSR syntax. Add entries for
2158 predicted branches.
2159 (simplify_spec_list): Add option conditions for density instructions.
2160 Add entry for NOP instruction.
2161 (append_transition): Add cmp function pointer parameter and use it to
2162 insert the new entry in order.
2163 (operand_function_LOW16U, operand_function_HI16U): New.
2164 (xg_has_userdef_op_fn, xg_apply_userdef_op_fn): Handle
2165 OP_OPERAND_LOW16U and OP_OPERAND_HI16U.
2166 (enter_opname, split_string): Use xstrdup instead of strdup.
2167 (init_insn_pattern): Initialize new options field.
2168 (clear_req_or_option_list, clear_req_option_list,
2169 clone_req_or_option_list, clone_req_option_list, parse_option_cond):
2170 New.
2171 (parse_insn_pattern): Parse option conditions.
2172 (transition_applies): New.
2173 (build_transition): Use new xtensa-isa.h functions. Fix incorrectly
2174 swapped last arguments in calls to append_constant_value_condition.
2175 Call clone_req_option_list. Add warning about invalid opcode.
2176 Handle LOW16U and HI16U function names.
2177 (build_transition_table): Add cmp parameter and use it in calls to
2178 append_transition. Use new xtensa-isa.h functions. Check
2179 transition_applies before adding entries.
2180 (xg_build_widen_table, xg_build_simplify_table): Add cmp parameter and
2181 pass it through to build_transition_table.
2182 * config/xtensa-relax.h (ReqOrOptionList, ReqOrOption, ReqOptionList,
2183 ReqOption, transition_cmp_fn): New types.
2184 (OpType enum): Add OP_OPERAND_LOW16U and OP_OPERAND_HI16U.
2185 (transition_rule struct): Add options field.
2186 * doc/as.texinfo (Overview): Update Xtensa options.
2187 * doc/c-xtensa.texi (Xtensa Options): Delete --[no-]density,
2188 --[no-]relax, and --[no-]generics options. Update descriptions of
2189 --text-section-literals and --[no-]longcalls. Add
2190 --[no-]absolute-literals and --[no-]transform.
2191 (Xtensa Syntax): Add description of syntax for FLIX instructions.
2192 Remove use of "generic" and "specific" terminology for opcodes.
2193 (Xtensa Registers): Generalize the syntax description to include
2194 user-defined register files.
2195 (Xtensa Automatic Alignment): Update.
2196 (Xtensa Branch Relaxation): Mention limitation of unconditional jumps.
2197 (Xtensa Call Relaxation): Linker can now remove most of the overhead.
2198 (Xtensa Directives): Remove confusing rules about precedence.
2199 (Density Directive, Relax Directive): Delete.
2200 (Schedule Directive): New.
2201 (Generics Directive): Rename to ...
2202 (Transform Directive): ... this node.
2203 (Literal Directive): Update for absolute literals. Missing
2204 literal_position directive is now an error.
2205 (Literal Position Directive): Update for absolute literals.
2206 (Freeregs Directive): Delete.
2207 (Absolute Literals Directive): New.
2208 (Frame Directive): Minor editing.
2209 * Makefile.am (DEPTC_xtensa_elf, DEPOBJ_xtensa_elf, DEP_xtensa_elf):
2210 Update dependencies.
2211 * Makefile.in: Regenerate.
2212
6e1304d8
RS
22132004-10-07 Richard Sandiford <rsandifo@redhat.com>
2214
2215 * config/tc-mips.c (append_insn): Use fix_new rather than fix_new_exp
2216 to build the second and third fixups for a composite relocation.
2217 (macro_read_relocs): New function.
2218 (macro_build): Use it.
2219 (s_cpsetup): Pass all three composite relocation codes to macro_build.
2220 Simplify fragging code accordingly.
2221 (s_gpdword): Use fix_new rather than fix_new_exp for the second part
2222 of the composite relocation. Set fx_tcbit in both fixups.
2223
b1dca8ee
RS
22242004-10-07 Richard Sandiford <rsandifo@redhat.com>
2225
2226 * config/tc-mips.c (append_insn): Set fx_tcbit for composite relocs.
2227 (md_apply_fix3): Don't treat composite relocs as done.
2228
89658e52
NC
22292004-10-07 Jan Beulich <jbeulich@novell.com>
2230
2231 * macro.c (macro_expand_body): When ELF, use .LL rather than LL as
2232 prefix for symbol names generated from the LOCAL macro directive.
2233
289040ca
NC
2234 * dw2gencfi.c (select_cie_for_fde): When separating CIE out from
2235 FDE, treat a DW_CFA_remember_state as we do a DW_CFA_advance_loc.
2236
48c9f030
NC
22372004-10-07 Tomer Levi <Tomer.Levi@nsc.com>
2238
2239 * config/tc-crx.c (preprocess_reglist): Handle Co-processor
c04f5787 2240 Special registers.
5c5054ab 2241 (md_assemble): Add error checking for Co-Processor instructions.
48c9f030
NC
2242 (get_cinv_parameters): Add 'b' option to invalidate the
2243 branch-target cache.
2244
7ed4c4c5
NC
22452004-10-05 Paul Brook <paul@codesourcery.com>
2246
2247 * config/tc-arm.c (unwind): New variable.
2248 (vfp_sp_encode_reg): New function.
2249 (vfp_sp_reg_required_here): Use it.
2250 (vfp_sp_reg_list, vfp_dp_reg_list): Remove.
2251 (vfp_parse_reg_list): New function.
2252 (s_arm_unwind_fnstart, s_arm_unwind_fnend, s_arm_unwind_cantunwind,
2253 s_arm_unwind_personality, s_arm_unwind_personalityindex,
2254 s_arm_unwind_handlerdata, s_arm_unwind_save, s_arm_unwind_movsp,
2255 s_arm_unwind_pad, s_arm_unwind_setfp, s_arm_unwind_raw): New
2256 functions.
2257 (md_pseudo_table): Add them.
2258 (do_vfp_reg2_from_sp2): Use vfp_parse_reg_list and vfp_sp_encode_reg.
2259 (do_vfp_sp2_from_reg2, vfp_sp_ldstm, vfp_dp_ldstm): Ditto.
2260 (set_section, add_unwind_adjustsp, flush_pending_unwind,
2261 finish_unwind_opcodes, start_unwind_section, create_unwind_entry,
2262 require_hashconst, add_unwind_opcode): New functions.
ab1e9ef7 2263 * doc/c-arm.texi: Document unwinding opcodes.
7ed4c4c5
NC
2264 * NEWS: Mention the new feature.
2265
04ca8703
EC
22662004-10-04 Eric Christopher <echristo@redhat.com>
2267
2268 * config/tc-mips.c (md_apply_fix3): Remove erroneous assert.
2269
7c1d0959
L
22702004-10-01 H.J. Lu <hongjiu.lu@intel.com>
2271
2272 * config/tc-ppc.c (md_apply_fix3): Call S_SET_THREAD_LOCAL for
2273 TLS relocations.
2274 * config/tc-s390.c (md_apply_fix3): Likewise.
2275 * config/tc-sparc.c (md_apply_fix3): Likewise.
2276
40a18ebd
NC
22772004-10-01 Paul Brook <paul@codesourcery.com>
2278
2279 * config/tc-arm.c (arm_elf_section_type): New function.
2280 (arm_elf_change_section): Set section link for exidx sections.
2281 * config/tc-arm.h (arm_elf_section_type): Add prototype.
2282 (md_elf_section_type): Define.
2283
14127cc4
NC
22842004-10-01 Bill Farmer <Bill@the-farmers.freeserve.co.uk>
2285
2286 * config/tc-pdp11.c (md_apply_fix3): Change to sign of the SOB
2287 instruction's offset.
2288
b7c92712
NC
22892004-10-01 Adam Nemet <anemet@lnxw.com>
2290
2291 * (TARGET_FORMAT): Remove LynxOS COFF definition.
2292
65555e64
AM
22932004-10-01 Ravi Ramaseshan <ravi.ramaseshan@codito.com>
2294
2295 * config/tc-arc.c (tc_gen_reloc): Don't assume fixP->fx_addsy is an
2296 asymbol *, instead use symbol_get_bfdsym.
2297
9fe0b840
NC
22982004-09-30 Linus Nielsen Feltzing <linus@haxx.se>
2299
2300 * config/tc-m68k.c (select_control_regs): Add mcf5249.
2301
0dd132b6
NC
23022004-09-30 Paul Brook <paul@codesourcery.com>
2303
2304 * config/tc-arm.c (do_smi, do_nop): New functions.
2305 (insns): Add ARMv6ZK instructions.
2306 (md_apply_fix3): Handle BFD_RELOC_ARM_SMI.
2307 (tc_gen_reloc): Ditto.
2308 (arm_cpus): Add mpcore and arm1176.
2309 (arm_archs): Add armv6{k,z,zk}.
2310 * doc/c-arm.texi: Document new cores and architectures.
2311
a737bd4d
NC
23122004-09-30 Nick Clifton <nickc@redhat.com>
2313
2314 * config/tc-arm.c: Use ISO C90 formatting.
2315
3631a3c8
NC
23162004-09-30 Vladimir Ivanov <vladitx@nucleusys.com>
2317
a737bd4d 2318 * config/tc-arm.c (mav_reg_required_here): Allow REG_TYPE_CN
3631a3c8
NC
2319 as alternative when REG_TYPE_MVF, REG_TYPE_MVD, REG_TYPE_MVFX or
2320 REG_TYPE_MVDX is expected.
2321
d5f0cf92
AM
23222004-09-29 Marc Bevand <m.bevand@gmail.com>
2323
2324 * doc/c-i386.texi (i386-Mnemonics): Fix typo.
2325
9f9a069e
JW
23262004-09-21 James E Wilson <wilson@specifixinc.com>
2327
2328 * config/tc-ia64.c (ENCODED_PSP_OFFSET): New.
2329 (output_rp_psprel, output_pfs_psprel, output_preds_psprel,
2330 output_spill_base, output_unat_psprel, output_lc_psprel,
2331 output_fpsr_psprel, output_priunat_psprel, output_bsp_psprel,
2332 output_bsprestore_psprel, output_rnat_psprel, output_spill_psprel,
2333 output_spill_psprel_p): Use it.
2334
4b778c88
TL
23352004-09-20 Tomer Levi <Tomer.Levi@nsc.com>
2336
c04f5787 2337 * config/tc-crx.c (handle_LoadStor): New function.
04ca8703 2338 Handle load/stor unique instructions before parsing.
4b778c88 2339
eb043451
PB
23402004-09-17 Paul Brook <paul@codesourcery.com>
2341
2342 * config/tc-arm.c (s_arm_rel31): New funciton.
2343 (md_pseudo_table): Add .rel31.
04ca8703 2344 (md_apply_fix3): Handle BFD_RELOC_ARM_TARGET2,
eb043451
PB
2345 BFD_RELOC_32_PCREL and BFD_RELOC_ARM_PREL31.
2346 (tc_gen_reloc): Handle BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2.
2347 (arm_fix_adjustable): Return 0 for BFD_RELOC_ARM_TARGET2.
2348 (arm_parse_reloc): Add (target2).
2349
8ea2b00f
AM
23502004-09-17 Alan Modra <amodra@bigpond.net.au>
2351
2352 * Makefile.am: Run "make dep-am".
2353 * Makefile.in: Regenerate.
2354 * aclocal.m4: Regenerate.
2355 * configure: Regenerate.
2356 * doc/Makefile.in: Regenerate.
2357 * po/POTFILES.in: Regenerate.
2358 * po/gas.pot: Regenerate.
2359
7e1792e0
HPN
23602004-09-14 Hideki IWAMOTO <h-iwamoto@kit.hi-ho.ne.jp>
2361
2362 * config/tc-mmix.c [!LLONG_MIN]: Correct #elsif to #elif.
2363 [!LLONG_MAX]: Ditto.
2364
9c504268
PB
23652004-09-13 Paul Brook <paul@codesourcery.com>
2366
2367 * config/tc-arm.c: Rename RELABS to TARGET1.
2368
2159ac21
AM
23692004-09-13 Alan Modra <amodra@bigpond.net.au>
2370
2371 * messages.c (as_internal_value_out_of_range): Cast values passed
2372 to as_bad_where or as_warn_where to proper type.
2373
23794b24
MM
23742004-09-11 Theodore A. Roth <troth@openavr.org>
2375
2376 * config/tc-avr.c: Add support for
2377 atmega48, atmega88, atmega168, attiny13, attiny2313, at90can128.
2378
e9fad691
AM
23792004-09-09 Alan Modra <amodra@bigpond.net.au>
2380
2381 * dw2gencfi.c (select_cie_for_fde): When separating CIE out
2382 from FDE, treat a CFI_escape as we do a DW_CFA_advance_loc.
2383
10b016c2
PB
23842004-09-08 Paul Brook <paul@codesourcery.com>
2385
2386 * config/obj-elf.c (obj_elf_section_type): Handle init_array,
2387 fini_array and preinit_array section types.
2388 * config/tc-ia64.c (ia64_elf_section_type): Remove init_array
2389 and fini_array.
2390 * doc/as.texinfo: Document extra section types.
2391
e5a52504
MM
23922004-09-02 Mark Mitchell <mark@codesourcery.com>
2393
2394 * Makefile.am (TARG_ENV_HFILES): Add te-symbian.h.
2395 * Makefile.in: Regenerated.
2396 * configure.in: Set em for arm*-*-symbianelf*.
2397 * configure: Regenerated.
2398 * config/tc-arm.c (elf32_arm_target_format): Use Symbian target
2399 vectors when appropriate.
2400 * config/te-symbian.h: New file.
2401
42851540
NC
24022004-09-03 Tomer Levi <Tomer.Levi@nsc.com>
2403
2404 * config/tc-crx.c (gettrap): Exception vector can be case
2405 insensitive.
04ca8703 2406 (process_label_constant): Fix a 32-bit displacement bug in branch
42851540
NC
2407 instructions.
2408 (get_operandtype) : Bug fix, wrong operand was used.
04ca8703 2409 (process_label_constant): Initialize relocation type to
42851540
NC
2410 BFD_RELOC_NONE
2411
8783612f
RE
24122004-09-01 Richard Earnshaw < reanrsha@arm.com>
2413
2414 * tc-arm.c (arm_cpus, arm_fpus): Allow <cpu>-s as well as <cpu>s
2415 for synthesizable cores.
2416
1ff4677c
RE
2417 * doc/c-arm.texi (ARM Options): Document canonical names of CPUs.
2418
b18c562e
NC
24192004-08-25 Dmitry Diky <diwil@spec.ru>
2420
2421 * config/tc-msp430.c: Clean-up the code.
2422 (md_relax_table): New relax table.
2423 (mcu_types): Sort MCU types.
2424 (md_pseudo_table): Add .profiler pseudo handler.
2425 (pow2value): New function.
2426 (msp430_profiler): New function.
2427 (msp430_operands): Add new insns handlers.
2428 (msp430_srcoperand): Add register operand handler, allow complex
2429 expressions.
2430 (md_estimate_size_before_relax): Rewritten.
2431 (md_convert_frag): Rewritten.
2432 (msp430_relax_frag): New function.
2433 * config/tc-msp430.h (md_relax_frag): define macro
2434 * doc/c-msp430.texi: Update information.
2435
8f94ae4d
NC
24362004-08-24 Nick Clifton <nickc@redhat.com>
2437
2438 * as.c (std_shortopts): Allow -g to take an optional argument.
2439 (parse_args): Pass any switch starting with -g on to the backend
2440 for parsing.
2441
e51dace8
MM
24422004-08-18 Mark Mitchell <mark@codesourcery.com>
2443
2444 * configure.in (arm*-*-symbianelf*): New target.
2445 (arm*-*-eabi*): Likewise.
2446 * configure: Regenerated.
2447
f7870c8d
TS
24482004-08-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2449 * config/tc-mips.c (append_insn): Handle delay slots in branch likely
2450 correctly.
2451
d6afba4b
JJ
24522004-08-18 Jakub Jelinek <jakub@redhat.com>
2453
2454 * config/tc-ia64.c (start_unwind_section): Add linkonce_empty
2455 argument, don't do anything if current section is not
2456 .gnu.linkonce.t.* and linkonce_empty is set.
2457 (generate_unwind_image, dot_endp): Adjust callers, call
2458 start_unwind_section (*, 1) if nothing will be put into the
2459 section.
2460
329e276d
NC
24612004-08-17 Nick Clifton <nickc@redhat.com>
2462
2463 * as.c (MD_DEBUG_FORMAT_SELECTOR): Provide default definition.
2464 (show_usage): Add -g.
2465 (std_longopts): Add --gen-debug. Alpha sort the table.
2466 (parse_args): Print an error message if a switch is not handled.
2467 Handle the -g switch, calling md_debug_format_selector() if
2468 necessary.
2469 * NEWS: Mention new feature.
2470 * doc/as.texinfo: Document new switch.
2471 * doc/internals.texi: Document behaviour of md_parse_option.
04ca8703 2472
329e276d
NC
2473 * config/tc-arm.c (md_parse_option): Do not issue an error message
2474 if the switch is not recognised.
2475 * config/tc-m68k.c (md_parse_option): Likewise.
2476 * config/tc-pdp11.c (md_parse_option): Likewise.
2477 * config/tc-v850.c (md_parse_option): Likewise.
2478
2479 * as.h: Fix up formatting.
2480 * tc.h: Likewise.
2481
4101eec8
NC
24822004-08-16 Nick Clifton <nickc@redhat.com>
2483
2766e5e4
NC
2484 * macro.c (macro_set_alternate): Use ISO C90 formatting.
2485
4101eec8
NC
2486 * configure.in: Sort architecture based tables alphabetically.
2487 * configure: Regenerate.
2488
80f846b6
AM
24892004-08-16 Alan Modra <amodra@bigpond.net.au>
2490
2491 * config/tc-ppc.c (tc_ppc_regname_to_dw2regnum <regnames>): Replace
2492 { "cc", 68 }, with { "cr", 70 }.
2493
caa32fe5
NC
24942004-08-13 Jan Beulich <jbeulich@novell.com>
2495 Nick Clifton <nickc@redhat.com>
2496
2497 * as.c: Add and handle new --alternate command line option.
2498 * macro.c (macro_set_alternate): New.
2499 * macro.h (macro_set_alternate): Declare.
2500 * read.c: Add and handle new .altmacro and .noaltmacro directives.
2501 * doc/as.texinfo: Document new command line option and pseudo-ops
2502 as well as insert documentation originating from gasp about
2503 alternate macro syntax.
2504 * NEWS: Mention new command line option and pseudo-ops.
2505
b2221023
MM
25062004-08-10 Mark Mitchell <mark@codesourcery.com>
2507
2508 * expr.c (operand): Handle the "~", "-", and "!" operators applied
2509 to bignums.
2510
db6579d4
PB
25112004-08-06 Paul Brook <paul@codesourcery.com>
2512
2513 * config/tc-arm.c (md_apply_fix3, tc_gen_reloc, arm_parse_reloc):
2514 Handle new relocations.
2515 * include/elf/arm.h (elf_arm_reloc_type): Add new EABI relocations.
2516
e750405d
BW
25172004-08-05 Bob Wilson <bob.wilson@acm.org>
2518
2519 * write.c (relax_segment): Use was_address instead of address when
2520 setting fr_fix field for align frag due to backwards .org.
2521
1d70c7fb
AO
25222004-07-29 Alexandre Oliva <aoliva@redhat.com>
2523
2524 Introduce SH2a support.
2525 2004-02-24 Corinna Vinschen <vinschen@redhat.com>
2526 * config/tc-sh.c (get_specific): Change arch_sh2a_up to
2527 arch_sh2a_nofpu_up.
2528 2004-02-24 Corinna Vinschen <vinschen@redhat.com>
2529 * config/tc-sh.c (md_parse_option): Add sh2a-nofpu ISA handling.
2530 2004-02-20 Corinna Vinschen <vinschen@redhat.com>
2531 * config/tc-sh.c (sh_elf_final_processing): Move sh2a recognition
2532 to end of conditional expression.
2533 2004-02-20 Corinna Vinschen <vinschen@redhat.com>
2534 * config/tc-sh.c: Add sh2a-nofpu support.
2535 2003-12-29 DJ Delorie <dj@redhat.com>
2536 * tc-sh.c: Add sh2a support.
2537 (parse_reg): Add tbr.
2538 (parse_at): Support @@(disp,tbr).
2539 (get_specific): Support sh2a opcodes.
2540 (insert4): New, for 4 byte relocs.
2541 (build_Mytes): Support sh2a opcodes.
2542 (md_apply_fix3_Mytes): Support sh2a opcodes.
2543 2003-12-02 Michael Snyder <msnyder@redhat.com>
2544 * config/tc-sh.c (md_parse_option): Handle sh2a.
2545 (sh_elf_final_processing): Ditto.
2546
e7fbc2bf
JT
25472004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
2548
2549 * config/tc-hppa.h (TARGET_FORMAT): Set to "elf32-hppa-netbsd"
2550 for TE_NetBSD.
2551
9232bbb0
AM
25522004-07-27 Alan Modra <amodra@bigpond.net.au>
2553
2554 * config/tc-ppc.c (ppc_frob_file_before_adjust): Warn if .toc too big.
2555 (ppc_arch): Expand comment.
2556
670ec21d
NC
25572004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
2558
2559 * config/tc-crx.c: Support evaluating the difference between two
2560 symbols.
2561 * config/tc-crx.h: Likewise.
2562
406f8ff9 25632004-07-26 H.J. Lu <hongjiu.lu@intel.com>
38ce5b11
L
2564
2565 * config/tc-ia64.c (start_unwind_section): Set the linked-to
2566 section.
2567 (ia64_elf_section_change_hook): Set the linked-to section for
2568 SHT_IA_64_UNWIND.
2569
c05e9f04
NC
25702004-07-26 Dmitry Diky <diwil@spec.ru>
2571
2572 * config/tc-msp430.c: Add new subtargets: msp430x1610,
2573 msp430x1611, msp430x1612, msp430x415, msp430x417, msp430xG437,
2574 msp430xG438, msp430xG439.
2575
e9863d7f
DJ
25762004-07-25 Daniel Jacobowitz <dan@debian.org>
2577
2578 * doc/as.texinfo (Section, PushSection): Correct documentation
2579 for ELF.
2580
543613e9 25812004-07-21 Jan Beulich <jbeulich@novell.com>
20f0a1fc
NC
2582
2583 * config/tc-i386.c (optimize_imm): Adjust immediates to only those
2584 permissible for the selected instruction suffix.
2585 (match_template): Don't permit 64-bit general purpose operands in
2586 32-bit mode.
2587 (finalize_imm): Permit 64-bit immediates.
2588 (build_modrm_byte): Don't treat 32-bit addressing in 64-bit mode
2589 specially except for the width of the used base and/or index
2590 registers. For 32-bit displacements, use sign-extended
2591 relocations only when using 64-bit addressing.
2592 Force zero displacement on rip-relative addressing when there is
2593 no other displacement.
2594 (i386_index_check): Don't treat 32-bit addressing in 64-bit mode
2595 specially except for the width of the used base and/or index
2596 registers.
2597 (parse_register): Disallow Reg64 registers in 32-bit mode.
2598
543613e9
NC
2599 * config/tc-i386.c: For DefaultSize instructions, don't guess a 'q'
2600 suffix if the instruction doesn't support it.
04ca8703 2601
01a3f561
MR
26022004-07-20 Maciej W. Rozycki <macro@linux-mips.org>
2603
2604 * config/tc-mips.c (append_insn): Handle constant expressions with
2605 no associated relocation.
2606 (mips_ip): Cancel the expression after use for the Q format
2607 specifier.
2608 (parse_relocation): Return no relocation for unsupported
2609 operators.
2610 (my_getSmallExpression): Return no relocation if no relocation
2611 operators are used.
2612
e12904d2
DA
26132004-07-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2614
2615 * config/obj-som.c (adjust_stab_sections): Add prototype.
2616 (obj_som_compiler, obj_som_version, obj_som_copyright,
2617 adjust_stab_sections): Add ATTRIBUTE_UNUSED to unused arguments.
2618 * config/tc-hppa.c (update_subspace): Likewise.
2619 (is_defined_subspace): Amplify comment.
2620 * config/obj-som.h (som_frob_file): Add prototype.
2621
90c1602c
L
26222004-07-19 Christopher Faylor <cgf@timesys.com>
2623 H.J. Lu <hongjiu.lu@intel.com>
2624
2625 * subsegs.c (section_symbol): Don't create a new segment when
2626 existing segment is undefined.
2627
f263249b
RE
26282004-07-16 Richard Earnshaw <rearnsha@arm.com>
2629
2630 * config/tc-arm.c: Include include/opcode/arm.h.
2631 (ARM_EXT_*, ARM_ARCH_*, ARM_ANY, ARM_ALL, COPROC_ANY): Delete.
2632 (FPU_FPA_EXT_* FPU_VFP_EXT_*, FPU_ANY, FPU_NONE, FPU_MAVERICK): Delete.
2633 (FPU_ARCH_*): Delete.
2634 * Makefile.am: Update dependencies.
2635 * Makefile.in: Regenerate.
2636
152c65b9
NC
26372004-07-15 Nick Clifton <nickc@redhat.com>
2638
2639 * configure.in: Accept armbe as a big-endian arm configuration.
2640 * configure: Regenerate.
2641
0477af35
NC
26422004-07-13 Thomas Nystrom <thn@saeab.se>
2643
2644 * config/tc-i386.c (T_SHIFTOP): New constant.
2645 (intel_e05_1): Handle '&', '|' and T_SHIFTOP.
2646 (intel_el1): Handle '~'.
2647 (intel_get_token): Handle '<>', '&', '|' and '~'.
2648
26492004-07-13 Nick Clifton <nickc@redhat.com>
2650
2651 (md_assemble): Remove spurious newline from end of as_bad error
2652 message.
2653 (intel_e05_1): Likewise.
2654 (intel_e11): Likewise.
2655 (intel_match_token): Likewise.
2656
31302357
AS
26572004-07-11 Andreas Schwab <schwab@suse.de>
2658
2659 * config/tc-m68k.c: Convert to C90. Remove redundant
2660 declarations. Indentation fixup.
2661 [M68KCOFF]: Include "obj-coff.h" instead of declaring
2662 obj_coff_section ourselves.
04ca8703 2663
549f748d
JW
26642004-07-09 James E Wilson <wilson@specifixinc.com>
2665
2666 * config/tc-ia64.c (default_big_endian): New.
2667 (dot_byteorder, md_begin): Use it.
2668 (md_parse_option): Set it.
04ca8703 2669
1a320fbb
NC
26702004-07-09 Nick Clifton <nickc@redhat.com>
2671
2672 * configure.in: Change sh-sybmian-elf to sh-*-symbianelf.
2673 * configure: Regenerate.
2674 * NEWS: Change sh-sybmian-elf to sh-*-symbianelf.
2675 * config/tc-sh.c (sh_elf_final_processing): Use renamed version of
2676 sh_find_elf_flags if necessary.
2677
de7e6852
RS
26782004-07-08 Richard Sandiford <rsandifo@redhat.com>
2679
2680 * config/tc-mips.c (mips_fix_adjustable): If the full addend is
2681 going to be split into more than one in-place addend, return 0
2682 for relocations against mergeable sections. Associate comments
2683 with code.
2684
1fe1f39c
NC
26852004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
2686
2687 * Makefile.am (CPU_TYPES): Add crx.
2688 (TARGET_CPU_CFILES): Add config/tc-crx.c.
2689 (TARGET_CPU_HFILES): Add config/tc-crx.h.
2690 (DEPTC_crx_elf): New target.
2691 (DEPOBJ_crx_elf): Likewise.
2692 (DEP_crx_elf): Likewise.
2693 * Makefile.in: Regenerate.
2694 * configure.in: Add crx* target.
2695 * configure: Regenerate.
2696 * config/tc-crx.c: New file.
2697 * config/tc-crx.h: New file.
2698 * NEWS: Mention new target.
2699
d9895649
NC
27002004-07-06 Nick Clifton <nickc@redhat.com>
2701
85fbca6a 2702 * config.in: Undefine TARGET_SYMBIAN by default.
c04f5787
AM
2703 * configure.in:
2704 * configure: Regenerate. Add sh-symbian-elf target. If
2705 selected define TARGET_SYMBIAN.
2706 * config/tc-sh.h (TARGET_FORMAT): Select a Symbian target
2707 format if TARGET_SYMBIAN has been defined.
04ca8703 2708
e7bd9ea0
NC
2709 * output-file.c (output_file_create): Report the target format
2710 chosen when bfd_openw reports that it is invalid.
2711
d9895649
NC
2712 * config/obj-coff.c (coff_pseudo_table): Only define the weak
2713 pseudo for BFD based assemblers.
2714
871ec896
JR
27152004-07-05 Andrew Stubbs <andrew.stubbs@superh.com>
2716
2717 gas:
2718 * config/tc-sh.c (md_assemble): Change isspace to ISSPACE.
2719 (md_parse_option): Remove redundant -isa testing.
2720 Make bfd_arch variable const.
2721 (md_show_usage): Make bfd_arch variable const.
2722
5a9ff93d
JW
27232004-07-03 James E Wilson <wilson@specifixinc.com>
2724
2725 * config/tc-ia64.c (emit_one_bundle): Check and set insn_addr.
2726 * config/tc-ia64.h (md_frag_check): Define.
2727
c87db184
CF
27282004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
2729
2730 * config/obj-coff.c (obj_coff_weak): New .weak syntax for PE weak
2731 externals.
2732 * doc/as.texinfo (Weak): Document PE weak symbols.
2733
3b91255e
RS
27342004-07-03 Richard Sandiford <rsandifo@redhat.com>
2735
2736 * config/tc-mips.c (HAVE_IN_PLACE_ADDENDS): New macro.
2737 (reloc_needs_lo_p): Only return true if HAVE_IN_PLACE_ADDENDS.
2738 (mips_frob_file): Rework so that only a single pass through the
2739 relocs is needed. Allow %lo()s to have higher offsets than their
2740 corresponding %hi()s or %got()s.
2741
310ea308
NC
27422004-07-02 Nick Clifton <nickc@redhat.com>
2743
2744 * config/tc-arm.c (md_apply_fix3:BFD_RELOC_ARM_IMMEDIATE): Do not
2745 allow values which have come from undefined symbols.
2746 Always consider this fixup to have been processed as a reloc
2747 cannot be generated for it.
2748
09b935ac
AM
27492004-07-02 Alan Modra <amodra@bigpond.net.au>
2750
2751 * frags.h (struct frag): Add has_code and insn_addr fields.
2752 * write.c (cvt_frag_to_fill): Invoke md_frag_check.
2753 * config/tc-ppc.c (md_assemble): Check and set insn_addr.
2754 * config/tc-ppc.h (md_frag_check): Define.
2755
4d1cd5c7
MR
27562004-06-28 Maciej W. Rozycki <macro@linux-mips.org>
2757
2758 * doc/Makefile.am (info): Rename goal to...
2759 (info-local): ... this, to preserve implicit dependencies.
2760 * doc/Makefile.in: Regenerate with automake 1.8.5.
2761
097f809a
NC
27622004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
2763
2764 * config/tc-m32r.c (md_convert_frag): Changed for @PLT.
2765 (m32r_cgen_record_fixup_exp): Changed for @GOTOFF, @GOT.
2766 (m32r_fix_adjustable): Changed for @GOTOFF, @GOT, @PLT.
2767 (tc_gen_reloc): Likewise.
2768 (m32r_end_of_match): Add for @GOTOFF, @GOT, @PLT.
2769 (m32r_parse_name): Likewise.
2770 (m32r_cgen_parse_fix_exp): Likewise.
2771 * config/tc-m32r.h (md_parse_name): Define for @GOTOFF, @GOT, @PLT.
2772 (O_PIC_reloc): Likewise.
2773 (TC_CGEN_PARSE_FIX_EXP): Likewise..
2774 * cgen.c (gas_cgen_parse_operand): Add TC_CGEN_PARSE_FIX_EXP
2775 for @GOTOFF, @GOT, @PLT.
2776
bb82af9f
NC
27772004-06-21 Jan Beulich <jbeulich@novell.com>
2778
2779 * gas/symbols.c: While discarding ordinary local absolute symbols
2780 when --strip-local-absolute is in effect, retain file symbols.
2781
990ae22a
AS
27822004-06-20 Andreas Schwab <schwab@suse.de>
2783
2784 * config/tc-m68k.c (mri_chip): Replace current_chip, not augment.
2785 (md_parse_option): Likewise.
2786
32137342
NC
27872004-06-17 Jan Beulich <jbeulich@novell.com>
2788
2789 * config/tc-i386.c: Deal with LEX_QM the same way as with LEX_AT.
2790 * config/te-netware.h: New file.
2791 * config/te-ppcnw.h: Delete: Obsolete.
2792 * configure.in: Eliminate ill NetWare targets. Make generic
2793 NetWare target use proper emulation.
2794 * Makefile.am: Eliminate reference to obsolete te-ppcnw.h, add
2795 reference to new te-netware.h.
2796 * configure: Regenerate.
2797 * Makefile.in: Regenerate.
2798
f84d8e26
MS
27992004-06-15 Martin Schwidefsky <schwidefsky@de.ibm.com>
2800
2801 * config/tc-s390.c (s390_insn): Avoid incorrect signed/unsigned
2802 comparison in .insn pseudo operation.
2803
587aac4e
AM
28042004-06-15 Alan Modra <amodra@bigpond.net.au>
2805
2806 * config/obj-coff.c (coff_adjust_section_syms): Use
2807 bfd_get_section_size instead of bfd_get_section_size_before_reloc.
2808 (coff_frob_section): Likewise.
2809 * config/tc-mips.c (md_apply_fix3): Likewise.
2810 * config/obj-elf.c (elf_frob_file): Use bfd_set_section_size.
2811 (elf_frob_file_after_relocs): Likewise.
2812
2337eb33
DA
28132004-06-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2814
b8fc22bc
DA
2815 * config/tc-hppa.c (log2): Rename to exact_log2.
2816 (pa_next_subseg): Delete unused function.
2817 (create_new_space): Mark unused arguments with ATTRIBUTE_UNUSED.
2818 (create_new_subspace): Likewise.
2819
2337eb33
DA
2820 Bug gas/213
2821 * config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake
2822 labels. Fix warning.
2823
53cb0362
DD
28242004-05-28 DJ Delorie <dj@redhat.com>
2825
2826 * config/tc-mn10300.h (tc_fix_adjustable): Define.
2827 * config/tc-mn10300.c (mn10300_fix_adjustable): Don't adjust debug
2828 or non-merged symbols.
2829
888a75be
L
28302004-05-28 H.J. Lu <hongjiu.lu@intel.com>
2831
2832 * config/tc-ia64.c (remove_marked_resource): Save, clear and
2833 restore the old slot when inserting srlz.i/srlz.d.
2834
f6f9408f
JR
28352004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
2836
2837 * Makefile.am: Regenerate dependecies.
2838 * Makefile.in: Regenerate.
2839 * config/tc-sh.c (valid_arch): Make unsigned.
2840 (preset_target_arch): Likewise.
2841 (md_begin): Use new architecture flags system.
2842 (get_specific): Likewise.
2843 (assemble_ppi): Likewise.
2844 (md_assemble): Likewise. Also fix error check for bad opcodes.
2845 (md_parse_option): Likewise. Also generate -isa values according
2846 to the table in bfd/cpu-sh.c instead of just constants. Also
2847 allow <arch>-up ISA variants.
2848 (sh_elf_final_processing): Replace if-else chain with a call to
2849 sh_find_elf_flags().
2850 * testsuite/gas/sh/arch: New directory.
2851 * testsuite/gas/sh/arch/arch.exp: New test script.
2852 * testsuite/gas/sh/arch/arch_expected.txt: New file.
2853 * testsuite/gas/sh/arch/sh.s: New file.
2854 * testsuite/gas/sh/arch/sh2.s: New file.
2855 * testsuite/gas/sh/arch/sh-dsp.s: New file.
2856 * testsuite/gas/sh/arch/sh2e.s: New file.
2857 * testsuite/gas/sh/arch/sh3-nommu.s: New file.
2858 * testsuite/gas/sh/arch/sh3.s: New file.
2859 * testsuite/gas/sh/arch/sh3-dsp.s: New file.
2860 * testsuite/gas/sh/arch/sh3e.s: New file.
2861 * testsuite/gas/sh/arch/sh4-nommu-nofpu.s: New file.
2862 * testsuite/gas/sh/arch/sh4-nofpu.s: New file.
2863 * testsuite/gas/sh/arch/sh4.s: New file.
2864 * testsuite/gas/sh/arch/sh4a-nofpu.s: New file.
2865 * testsuite/gas/sh/arch/sh4al-dsp.s: New file.
2866 * testsuite/gas/sh/arch/sh4a.s: New file.
2867
580b9172
NC
28682004-05-28 Peter Barada <peter@the-baradas.com>
2869
2870 * config/gc-m68k.c(m68k_ip): Convert mode 5 addressing
2871 with zero offset into mode 2 addressing to save a word.
2872
652ca075
L
28732004-05-27 H.J. Lu <hongjiu.lu@intel.com>
2874
2875 * config/tc-ia64.c (ar_is_in_integer_unit): Removed.
2876 (ar_is_only_in_integer_unit): New.
2877 (ar_is_only_in_memory_unit): New.
2878 (generate_unwind_image): Silence gcc on 32bit host.
2879 (md_assemble): Use ar_is_only_in_integer_unit instead of
2880 ar_is_in_integer_unit. Check AR access.
2881
60fed2d3
NC
28822004-05-27 Peter Barada <peter@the-baradas.com>
2883
2884 * config/tc-m68k.c (md_begin): Sort the opcode table into
2885 alphabetical order.
2886 (m68k_compare_opcode): New function to do the sorting.
2887
be8c092b
NC
28882004-05-24 Peter Barada <peter@the-baradas.com>
2889
2890 * config/m68k-parse.y(operand): Allow for MAC/EMAC mask
2891 addressing on MIT style operands.
2892 * config/m68k-parse.y(yylex): Allow '-&' for predecrement
2893 w/mask addressing.
2894 * config/tc-m68k.c(install_operand): Comment 'G' and 'H' type
2895 operands.
2896
1181c20e
AM
28972004-05-23 Alan Modra <amodra@bigpond.net.au>
2898
2899 * expr.c (operand, operator): Don't reject '++' and '--'.
2900
20e56c33
RS
29012004-05-20 Richard Sandiford <rsandifo@redhat.com>
2902
2903 * config/tc-mips.c (append_insn): Use ISA-encoded addresses in MIPS16
2904 dwarf tables.
2905
04ca8703 29062004-05-17 Adam Nemet <anemet@lnxw.com>
b2d65c0b
NC
2907
2908 * configure.in: Add ppc-*-lynxos*. Update i386-*-lynxos* to ELF.
2909 * configure: Regenerate.
2910
0da76f83
NC
29112004-05-13 Paul Brook <paul@codesourcery.com>
2912
2913 * dw2gencfi.c (output_cie): Handle dwarf3 format CIE entries.
2914
4b363073
NC
29152004-05-13 Joel Sherrill <joel@oarcorp.com>
2916
2917 * configure.in (or32-*-rtems*): Switch to elf.
2918 * configure: Regenerate.
2919
9598fbe5
NC
29202004-05-13 Nick Clifton <nickc@redhat.com>
2921
2922 * po/fr.po: Updated French translation.
2923
22fe14ad
NC
29242004-05-11 Nick Clifton <nickc@redhat.com>
2925
2926 * doc/as.texinfo (Section): Document G and T flags to .section
2927 directive. Document the extra arguments that the G flag
2928 requires. Document the #tls flag.
2929
29302004-05-11 H.J. Lu <hongjiu.lu@intel.com>
2931
2932 * subsegs.c (section_symbol): Create a new section symbol if
2933 the existing one doesn't match.
2934 * symbols.c (symbol_set_bfdsym): Don't reset BFD section symbol.
2935
532c738a
RS
29362004-05-07 Richard Sandiford <rsandifo@redhat.com>
2937
2938 * config/tc-mips.c (append_insn, mips_emit_delays): Extend -mfix-vr4120
2939 to cope with VR4181A errata MD(1) and MD(4).
2940
0503b355
BF
29412004-05-07 Brian Ford <ford@vss.fsi.com>
2942
2943 * NEWS: Mention .secrel32 for pe[i]-i386.
2944
daeea990
AO
29452004-05-07 Alexandre Oliva <aoliva@redhat.com>
2946
2947 * config/tc-frv.h (MAX_MEM_FOR_RS_ALIGN_CODE): New.
2948 (HANDLE_ALIGN): New.
2949
bfbdcf04
DJ
29502004-05-06 Daniel Jacobowitz <dan@debian.org>
2951
2952 * Makefile.am (DIST_SUBDIRS): Define.
2953 * aclocal.m4: Regenerate with automake 1.8.4.
2954 * Makefile.in: Likewise.
2955 * doc/Makefile.in: Likewise.
2956
5e819f9c
JW
29572004-05-06 David Mosberger-Tang <davidm@hpl.hp.com>
2958
2959 * config/tc-ia64.c (dot_serialize): Declare.
2960 (dot_serialize): New function.
2961 (md_pseudo_table): Add ".serialize.data" and
2962 ".serialize.instruction" directives.
2963
e5976317
NC
29642004-05-06 Nick Clifton <nickc@redhat.com>
2965
2966 * messages (as_internal_value_out_of_range): Print a message about
2967 a value being out of range. Be consistent about whether the
2968 values are printed in decimal or hexadecimal.
2969 (as_warn_value_out_of_range): Generate a warning message about an
2970 out of range value.
2971 (as_bad_value_out_of_range): Generate an error message about an
2972 out of range value.
2973 * as.h: Prototype the new functions.
2974 * config/tc-alpha.c (insert_operand): Use new function.
2975 * config/tc-arc.c (arc_insert_operand): Likewise.
2976 * config/tc-mn10200.c (mn10200_insert_operand): Likewise.
2977 * config/tc-mn10300.c (mn10300_insert_operand): Likewise.
2978 * config/tc-ppc.c (ppc_insert_operand): Likewise.
2979 * config/tc-s390.c (s390_insert_operand): Likewise.
2980 * config/tc-v850.c (v850_insert_operand): Likewise.
2981
996991aa
AO
29822004-05-05 Alexandre Oliva <aoliva@redhat.com>
2983
2984 * configure.in: Set em=linux for frv-*-*linux*.
2985 * configure: Rebuilt.
2986 * config/tc-frv.h (TARGET_FORMAT): Use elf32-frvfdpic if...
2987 (frv_md_fdpic_enabled): New.
2988 * config/tc-frv.c (frv_md_fdpic_enabled): New.
2989 (DEFAULT_FDPIC): New.
2990 (frv_flags): Use DEFAULT_FDPIC.
2991 (frv_pic_flag): Likewise.
2992 (OPTION_NOPIC): New.
2993 (md_longopts): Add -mnopic.
2994 (md_parse_option): Handle it.
2995 (md_show_usage): Add -mfdpic and -mnopic.
2996
6b6e92f4
NC
29972004-05-05 Peter Barada <peter@the-baradas.com>
2998
2999 * config/tc-m68k.c: Add find_cf_chip to print list of valid
3000 chips for invalid coldfire instructions, rename selectors
3001 for ColdFire sub-variants, add 521x,5249,547x,548x and aliases,
3002 add current_chip to track which chip is referred to(including save/restore),
3003 use current_chip to select control registers, not current_arch.
3004 (md_show_usage): Add new chips.
3005 * doc/c-m68k.texi: Document new command line switches.
3006
6f079ae3
JJ
30072004-05-05 Jakub Jelinek <jakub@redhat.com>
3008
3009 * tc-s390.h (md_do_align, HANDLE_ALIGN): Remove.
3010 (NOP_OPCODE): Define.
3011 (s390_align_code): Remove prototype.
3012 * tc-s390.c (s390_align_code): Remove.
3013
2d6ed997
L
30142004-05-04 H.J. Lu <hongjiu.lu@intel.com>
3015
3016 * config/tc-ia64.c (make_unw_section_name): Removed.
3017 (start_unwind_section): New function.
3018 (generate_unwind_image): Take const segT instead of const
3019 char *.
3020 (dot_handlerdata): Adjusted.
3021 (dot_endp): Likewise.
3022
b9f18452
L
30232004-05-02 H.J. Lu <hongjiu.lu@intel.com>
3024
3025 * config/obj-elf.c (obj_elf_change_section): Allow the
3026 ".note.GNU-stack" section has SHF_EXECINSTR.
3027
fafe6678
L
30282004-05-02 H.J. Lu <hongjiu.lu@intel.com>
3029
3030 * config/obj-elf.c (get_section): Return bfd_boolean.
3031 (obj_elf_change_section): Call bfd_get_section_by_name_if
3032 instead of bfd_map_over_sections.
3033
86654c12
L
30342004-04-30 H.J. Lu <hongjiu.lu@intel.com>
3035
3036 * config/obj-elf.c (get_section): New function.
3037 (obj_elf_change_section): Support multiple sections with same
3038 name.
3039
376eb240
NC
30402004-04-30 Nick Clifton <nickc@redhat.com>
3041
3042 * config/tc-arm.c (create_register_alias): Fix typo checking for
3043 case sensitive register aliases.
3044 (co_proc_number): Use error message string in all_reg_maps[]
3045 array.
3046 (cp_reg_required_here): Likewise.
3047 (fp_reg_required_here): Likewise.
3048
8a7140c3
NC
30492004-04-29 Brian Ford <ford@vss.fsi.com>
3050
3051 * dwarf2dbg.c (dwarf2_finish): Add SEC_DEBUGGING to section flags.
3052
3e722fb5
CD
30532004-04-28 Chris Demetriou <cgd@broadcom.com>
3054
3055 * config/tc-mips.c (HAVE_32BIT_ADDRESSES, append_insn, macro_build)
3056 (load_address, macro, mips_ip, md_parse_option)
3057 (mips_force_relocation, mips_validate_fix, md_apply_fix3)
3058 (s_change_sec, pic_need_relax, tc_gen_reloc): Remove all
3059 embedded-PIC handling, and update comments.
3060 (SWITCH_TABLE): Remove.
3061 * config/tc-mips.h (DIFF_EXPR_OK): Delete.
3062 (enum mips_pic_level): Remove EMBEDDED_PIC.
3063 (EXTERN_FORCE_RELOC): Remove embedded-PIC handling.
3064 (TC_FORCE_RELOCATION): Update comment.
3065 * ecoff.c (ecoff_build_lineno): Add comment about some code that
3066 might be safe to remove now that MIPS embedded-PIC is gone.
3067
351e2b5a
DA
30682004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3069
3070 * config/obj-som.c (obj_som_init_stab_section): Add new arguments in
3071 call to obj_set_subsection_attributes.
3072 (obj_som_init_stab_section): Likewise.
3073 * config/tc-hppa.c (default_subspace_dict): Add comdat field.
3074 (pa_def_subspaces): Provide comdat default.
3075 (pa_subspace): Handle new "comdat" parameter. Set SEC_LINK_ONCE and
3076 not SEC_IS_COMMON if section is comdat, common or dup_common. Update
3077 calls to create_new_subspace and update_subspace to pass comdat flag.
3078 (create_new_subspace, update_subspace): Add new comdat argument. Use
3079 it in calls to obj_set_subsection_attributes.
3080 * doc/c-hppa.texi (.subspa, .nsubspa): Document new comdat parameter
3081 and use of comdat, common and dup_comm parameters.
3082
f5842774
L
30832004-04-26 H.J. Lu <hongjiu.lu@intel.com>
3084
3085 * config/obj-elf.c (obj_elf_change_section): Check if the old
3086 group name is NULL before comparison.
3087
558fe4a7
CD
30882004-04-23 Chris Demetriou <cgd@broadcom.com>
3089
3090 * config/tc-mips.h (mips_dwarf2_addr_size): Prototype.
3091
81a21e38
TS
30922004-04-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3093
3094 * config/tc-mips.c (s_mipsset): Set default CPU type for .set mipsN.
3095
30962004-04-23 Chris Demetriou <cgd@broadcom.com>
1ffcab4b
CD
3097
3098 * config/tc-mips.c (md_longopts): Remove -membedded-pic option.
3099 (OPTION_MEMBEDDED_PIC): Remove.
3100 (OPTION_TRAP, OPTION_BREAK, OPTION_EB, OPTION_EL)
3101 (OPTION_FP32, OPTION_GP32, OPTION_CONSTRUCT_FLOATS)
3102 (OPTION_NO_CONSTRUCT_FLOATS, OPTIONS_FP64, OPTION_GP64)
3103 (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH)
3104 (OPTION_ELF_BASE): Renumber.
3105 (md_parse_option): Remove OPTION_MEMBEDDED_PIC handling.
3106 (md_show_usage): Remove mention of -membedded-pic.
3107 * doc/as.texinfo: Remove mention of -membedded-pic.
3108
4d0d148d
TS
31092004-04-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3110
3111 * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Remove.
3112 * config/tc-mips.c (RDATA_SECTION_NAME, mips_target_format): Remove
3113 a.out support.
3114 (md_begin, mips_ip, md_parse_option, s_change_sec, s_option,
3115 s_abicalls, nopic_need_relax, tc_gen_reloc): Remove uses of
3116 USE_GLOBAL_POINTER_OPT.
3117
017315e4
TS
31182004-04-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3119
3120 * config/tc-mips.c (macro): One more use of load_delay_nop.
3121
269137b2
TS
31222004-04-22 Atsushi Nemoto <anemo@mba.ocn.ne.jp>
3123
3124 * config/tc-mips.c (load_delay_nop): New function.
3125 (load_address, macro): Use load_delay_nop() to build a nop
3126 which can be omitted with gpr_interlocks.
3127
24772049
TS
31282004-04-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3129
3130 * config/tc-mips.c (hilo_interlocks, gpr_interlocks,
3131 cop_interlocks): Remove superfluous CPU entries.
3132
06516a5e
PB
31332004-04-22 Paul Brook <paul@codesourcery.com>
3134
3135 * config/tc-arm.c (mav_parse_offset): Value must be multiple of 4.
3136
fd99574b
NC
31372004-04-22 Peter Barada <peter@the-baradas.com>
3138
3139 * NEWS: Added support for EMAC instructions and MAC/EMAC
3140 Motorola syntax.
3141 * config/m68k-parse.h: Add ACC[123], ACCEXT{01,23}, MAC/EMAC
3142 scale factor tokens, trailing_ampersand to mark mask addressing
3143 for MAC/EMAC instructions.
3144 * config/m68k-parse.y: Add options_ampersand clause, '<<',
3145 '>>'.
3146 (yylex): Handle '>', '<', and '&' following '+'.
3147 * config/tc-m68k.c: Set mcfmac/mcfemac on appropriate ColdFire
04ca8703 3148 architectures in archs[].
fd99574b
NC
3149 (m68k-ip): Add '4', 'e', 'g', 'i', cases to handle mask addressing
3150 for MAC/EMAC instructions, ACC[0123], ACCEXT{01,23}, and '<<'/'>>'
3151 respectively.
3152 (m68k_ip): Handle trailing '&' on MAC/EMAC insns.
3153 (install_operand): Fix 'n' case, Add 'F', 'f', 'G', 'H', 'I', ']'
3154 cases.
3155 Add EMAC operands to init_table[].
3156
69b97547
NC
31572004-04-22 Bruno De Bus <bdebus@elis.ugent.be>
3158
3159 * config/tc-arm.h (enum mstate): Move here, add MAP_UNDEFINED
3160 state.
3161 (TC_SEGMENT_INFO_TYPE): Define to enum mstate.
3162 * config/tc-arm.c (enum mstate): Delete from here.
3163 (mapping_state): Remove the static mapstate variable and instead
3164 store the state in the segment. This allows a per-section mapping
3165 state. Handle and ignore MAP_UNDEFINED states.
3166 (arm_elf_change_section): Get the current mapping state from the
3167 new section.
3168 (s_ltorg): Set the mapping state to MAP_DATA.
3169 (arm_cleanup): Use arm_elf_change_section to get the mapping state
3170 for each pool as it is emitted.
3171
31722004-04-22 Nick Clifton <nickc@redhat.com>
3173
3174 * config/tc-arm.h: Formatting tidy ups.
3175
7a7f4e42
CD
31762004-04-20 Chris Demetriou <cgd@broadcom.com>
3177
3178 * NEWS: Note that MIPS -membedded-pic option is deprecated.
3179
6482c264
NC
31802004-04-20 DJ Delorie <dj@redhat.com>
3181
3182 * config/tc-i386.h [TE_PE] (TC_CONS_FIX_NEW): Define.
3183 * config/tc-i386.c (md_pseudo_table) [TE_PE]: Add "secrel32".
3184 [TE_PE] (O_secrel): Define.
3185 [TE_PE] (x86_pe_cons_fix_new): New.
3186 [TE_PE] (pe_directive_secrel): Likewise.
3187 (tc_gen_reloc) [TE_PE]: Support BFD_RELOC_32_SECREL.
3188
5bf10039
EC
31892004-04-19 Eric Christopher <echristo@redhat.com>
3190
c04f5787
AM
3191 * config/tc-mips.c (mips_dwarf2_addr_size): Revert part
3192 of previous patch for fix in gcc.
5bf10039 3193
77cd6497
JJ
31942004-04-19 Jakub Jelinek <jakub@redhat.com>
3195
3196 * config/tc-xtensa.c (xg_assembler_literal): Fix a typo.
3197
b8861cfb
NS
31982004-04-19 Nathan Sidwell <nathan@codesourcery.com>
3199
3200 * read.c (do_align): Call md_flush_pending_output, if defined.
3201
f4c724fc
AM
32022004-04-16 Alan Modra <amodra@bigpond.net.au>
3203
3204 * expr.c (operand): Correct checks for ++ and --.
3205
a4b6e8f6
L
32062004-04-14 H.J. Lu <hongjiu.lu@intel.com>
3207
3208 * config/tc-generic.c: Add some comments.
3209
d766e8ec
RS
32102004-04-14 Richard Sandiford <rsandifo@redhat.com>
3211
3212 * doc/c-mips.texi (-m{no-,}fix-vr4120): Renamed from
3213 -{no-}mfix-vr4122-bugs.
3214 * config/tc-mips.c (mips_fix_vr4120): Renamed from mips_fix_4122_bugs.
3215 (append_insn, mips_emit_delays): Update accordingly.
3216 (OPTION_FIX_VR4120, OPTION_NO_FIX_VR4120): Renamed from *VR4122.
3217 (md_longopts): Change -{no-,}mfix-vr4122-bugs to -m{no-,}fix-vr4120.
3218 (md_parse_option): Update after above changes.
3219 (md_show_usage): Add -mfix-vr4120.
3220
ed9589d4
BW
32212004-04-13 Bob Wilson <bob.wilson@acm.org>
3222
3223 * doc/as.texinfo (Sub-Sections): Conditionalize COFF-specific use
3224 of .section directive; add a reference to the ELF .subsection
3225 directive.
3226
097dba13
NC
32272004-04-13 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
3228
3229 * config/tc-m32r.c (md_assemble): Fixed infinite loop bug
3230 in parallel.
3231
279500de
TS
32322004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3233
3234 * Makefile.am: Remove mips from aout targets.
3235 * Makefile.in: Regenerate.
3236 * configure.in: Remove mips-dec-bsd* target.
3237 * configure: Regenerate.
3238
b7d7dc63
AM
32392004-04-07 Alan Modra <amodra@bigpond.net.au>
3240
3241 PR 96
3242 * config/tc-ppc.c (ppc_elf_suffix): Add valid32 and valid64 fields
3243 to struct map_bfd. Adjust MAP macro, and define MAP32, MAP64.
3244 Update "mapping". Restrict some @ modifiers to 32 bit.
3245
f55629b8
KK
32462004-04-01 Asgari Jinia <asgarij@kpitcummins.com>
3247 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
3248
3249 * config/tc-sh.c (dont_adjust_reloc_32): New variable.
3250 (sh_fix_adjustable): Avoid adjusting BFD_RELOC_32 when
3251 dont_adjust_reloc_32 is set.
3252 (md_longopts): Add option -renesas.
3253 (md_parse_option, md_show_usage): Likewise.
3254 * doc/c-sh.texi: Likewise.
3255
a7844384
NC
32562004-04-01 Dave Korn <dk@artimi.com>
3257
3258 * config/tc-dlx.c (md_assemble): set fx_no_overflow flag for
3259 hi16 and lo16 fixS structs.
3260 (md_assemble): generate bit_fixS for RELOC_DLX_LO16 in
3261 exactly the same way as for RELOC_DLX_REL16.
3262 (machine_ip): properly respect LO flag in the_insn and
3263 output RELOC_DLX_LO16 rather than RELOC_DLX_16.
3264 (md_apply_fix3): apply RELOC_DLX_LO16.
3265
6c71dbc4
SS
32662004-03-30 Stan Shebs <shebs@apple.com>
3267
3268 Remove long-obsolete MPW support.
3269 * mpw-config.in, mpw-make.sed, mac-as.r: Remove files.
3270 * configure.in: Remove mention of ppc-*-mpw* config.
3271 * configure.in: Likewise.
3272
7cc69913
NC
32732004-03-30 Nick Clifton <nickc@redhat.com>
3274
3275 * config/tc-arm.c (meabi_flags): Make its use conditional upon
3276 OBJ_ELF being defined.
3277
53fbb48a
AM
32782004-03-27 Alan Modra <amodra@bigpond.net.au>
3279
3280 * config/obj-aout.c (obj_aout_type): Remove #ifdef BFD_ASSEMBLER code.
3281
d507cf36
PB
32822004-03-23 Paul Brook <paul@codesourcery.com>
3283
3284 * config/tc-arm.c (meabi_flags): New variable.
3285 (arm_parse_eabi): New function.
3286 (md_begin): Set flags for EABI v3.
3287 (arm_eabis): Add.
3288 (arm_long_opts): Add meabi.
ab1e9ef7 3289 * doc/as.texinfo <ARM>: Document -meabi.
d507cf36
PB
3290 * doc/c-arm.texi: Ditto.
3291
88d65ad6
BW
32922004-03-22 Bob Wilson <bob.wilson@acm.org>
3293
3294 * config/tc-xtensa.c (xtensa_post_relax_hook): Create literal
3295 tables even when use_literal_section flag is not set.
3296
13ef8878
AM
32972004-03-22 Alan Modra <amodra@bigpond.net.au>
3298
3299 * config/tc-sh.c: Remove trailing whitespace.
3300
1048a9ba
HPN
33012004-03-22 Hans-Peter Nilsson <hp@axis.com>
3302
3303 * doc/c-cris.texi (CRIS-Opts): Document --no-mul-bug-abort,
3304 --mul-bug-abort and the default behavior.
3305 * config/tc-cris.c (cris_insn_kind): New member CRIS_INSN_MUL.
3306 (err_for_dangerous_mul_placement): New variable.
3307 (STATE_MUL, OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): New
3308 macros.
3309 (md_cris_relax_table): Have placeholder for STATE_MUL.
3310 (md_longopts): New options --mul-bug-abort and --no-mul-bug-abort.
3311 (cris_relax_frag) <case ENCODE_RELAX (STATE_MUL, STATE_BYTE)>: New
3312 case doing nothing.
3313 (md_estimate_size_before_relax) <case ENCODE_RELAX (STATE_MUL,
3314 STATE_BYTE)>: Ditto.
3315 (md_convert_frag) <ENCODE_RELAX (STATE_MUL, STATE_BYTE)>: Check
3316 alignment and position of this frag, emit error message if
3317 suspicious.
3318 (md_assemble): For a multiply insn and when checking it,
3319 transform the current frag into a special frag for that purpose.
3320 (md_parse_option) <case OPTION_MULBUG_ABORT_OFF, case
3321 OPTION_MULBUG_ABORT_ON>: Handle new options.
3322
a7877748
BW
33232004-03-19 Bob Wilson <bob.wilson@acm.org>
3324
3325 * config/tc-xtensa.c (mark_literal_frags): New function.
3326 (xtensa_move_literals): Call mark_literal_frags for all literal
3327 segments, including init and fini literal segments.
3328 (xtensa_post_relax_hook): Swap use of xt_insn_sec and xt_literal_sec.
3329
9992270f
DA
33302004-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3331
3332 * tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type.
3333 (pa_comm): Set BSF_OBJECT in symbol flags.
3334
6e1772d5
AM
33352004-03-19 Alan Modra <amodra@bigpond.net.au>
3336
3337 * Makefile.am: Run "make dep-am".
3338 * Makefile.in: Regenerate.
3339 * doc/Makefile.in: Regenerate.
3340 * config.in: Regenerate.
3341 * po/gas.pot: Regenerate.
3342
3e4caed2
NS
33432004-03-18 Nathan Sidwell <nathan@codesourcery.com>
3344
c95b35a9
NS
3345 * read.c (read_a_source_file): Use demand_empty_rest_of_line.
3346 (demand_empty_rest_of_line): Issue an error here.
3347 (ignore_rest_of_line): Silently skip to end.
3348 (demand_copy_string): Issue an error, not warning.
3349 (equals): Likewise.
3350 * config/obj-elf.c (obj_elf_section_name): Likewise.
3351 (obj_elf_section): Likewise.
3352 * config/tc-arc.c (arc_extoper): Remove bogus NULL checks.
3353 (arc_extinst): Likewise.
3354 * config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line.
3355 (dot_spill): Likewise.
3356 (dot_unwabi): Likewise.
3357 (dot_prologue): Likewise.
3358
3e4caed2
NS
3359 * expr.c (operand): Reject ++ and --.
3360 (operator): Likewise.
3361
2ce4cc60
KK
33622004-03-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3363
3364 * config/tc-sh.c: Include dw2gencfi.h.
3365 (sh_cfi_frame_initial_instructions): New function.
3366 (sh_regname_to_dw2regnum): Likewise.
3367 * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of
3368 file.
3369 (TARGET_USE_CFIPOP): Define.
3370 (tc_cfi_frame_initial_instructions): Likewise.
3371 (tc_regname_to_dw2regnum): Likewise.
3372 (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise.
3373 * Makefile.am: Update dependencies.
3374 * Makefile.in: Regenerate.
3375
9183ed4b
AM
33762004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
3377
3378 * configure.in: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*.
3379 * configure: Regenerate.
3380
00bbdfe7
BW
33812004-03-12 Bob Wilson <bob.wilson@acm.org>
3382
3383 * read.c (s_leb128): Call md_flush_pending_output.
3384
0f10071e
ML
33852004-03-12 Michal Ludvig <mludvig@suse.cz>
3386
3387 * config/tc-i386.c (output_insn): Handle PadLock instructions.
3388 * config/tc-i386.h (CpuPadLock): New define.
3389 (CpuUnknownFlags): Added CpuPadLock.
3390
84c84759
AS
33912004-03-07 Andreas Schwab <schwab@suse.de>
3392
3393 * doc/c-hppa.texi (HPPA Directives): Fix typo.
3394
6ec51dba
RH
33952004-03-07 Richard Henderson <rth@redhat.com>
3396
3397 * dw2gencfi.c (output_cie): Align length to 4 byte boundary.
3398 (cfi_finish): Likewise for fde.
3399
bae25f19
L
34002004-03-05 H.J. Lu <hongjiu.lu@intel.com>
3401
3402 * config/tc-ia64.c (md_assemble): Properly handle NULL
3403 align_frag.
3404 (ia64_handle_align): Don't abort if failed to add a stop bit.
3405
ab509236
L
34062004-03-04 H.J. Lu <hongjiu.lu@intel.com>
3407
3408 * Makefile.in: Regenerated.
3409 * aclocal.m4: Likewise.
3410 * configure: Likewise.
3411 * doc/Makefile.in: Likewise.
3412
d9201763
L
34132004-03-03 H.J. Lu <hongjiu.lu@intel.com>
3414
3415 * config/tc-ia64.c (dot_align): New.
3416 (ia64_do_align): Make it static.
3417 (md_pseudo_table): Use "dot_align" for "align".
3418 (ia64_md_do_align): Don't set align_frag here.
3419 (ia64_handle_align): Add a stop bit to the previous bundle if
3420 needed.
3421
3422 * config/tc-ia64.h (ia64_do_align): Removed.
3423
ae51a426
JR
34242003-03-03 Andrew Stubbs <andrew.stubbs@superh.com>
3425
3426 * config/tc-sh.c (md_parse_option): Add -isa=sh4-nofpu and
3427 -isa=sh4-nommu-nofpu options. Adjust help messages accordingly.
3428 (sh_elf_final_processing): Output BFD type sh4_nofpu if that is
3429 the most general type or the user specifically requested it.
3430 (md_assemble): Add a new error message for when an instruction
3431 is understood, but is not allowed due to an -isa option.
3432
9545c4ce
L
34332004-03-02 H.J. Lu <hongjiu.lu@intel.com>
3434
3435 * config/tc-ia64.c (align_frag): New.
3436 (md_assemble): Set the tc_frag_data field in align_frag for
3437 IA64_OPCODE_FIRST instructions.
3438 (ia64_md_do_align): Set align_frag.
3439 (ia64_handle_align): Add a stop bit if needed.
3440
3441 * config/tc-ia64.h (TC_FRAG_TYPE): New.
3442 (TC_FRAG_INIT): New.
3443
676a64f4
RS
34442004-03-01 Richard Sandiford <rsandifo@redhat.com>
3445
3446 * config/tc-frv.c (fr400_audio): New variable.
3447 (md_parse_option, md_show_usage): Add -mcpu=fr405 and -mcpu=fr450.
3448 (md_parse_option): Set fr400_audio for -mcpu=fr400 and -mcpu=fr405.
3449 (target_implements_insn_p): New function.
3450 (md_assemble): Report an error if the processor doesn't implement
3451 the instruction.
3452
bd337dde
NC
34532004-02-27 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
3454
3455 * config/tc-m32r.c (md_longopts): Added -no-bitinst option.
3456 (md_parse_option): Ditto.
3457 (OPTION_NO_SPECIAL_M32R): Added.
3458 (md_show_usage): Document it.
3459 (enable_speial_m32r): Changed a default value from 0 to 1.
3460 * doc/c-m32r.texi: Document the -no-bitinst option.
3461
78878175
NC
34622004-02-27 Nick Clifton <nickc@redhat.com>
3463
3464 * config/tc-sh.c (get_operand): Revert previous delta.
3465 (tc_gen_reloc): Check for an unknown reloc type before processing
3466 the addend.
3467
1d6d62a4
MS
34682004-02-27 Hannes Reinecke <hare@suse.de>
3469
3470 * config/tc-s390.c (s390_insn): Correct range check for opcode in
3471 .insn pseudo operation.
3472
4aa3e325
NC
34732004-02-27 Anil Paranjpe <anilp1@kpitcummins.com>
3474
3475 * config/tc-sh.c (get_operand): In case of #Imm, check has been
3476 added for wrong syntax.
3477
73369e65
EC
34782004-02-26 Eric Christopher <echristo@redhat.com>
3479
3480 * config/tc-mips.c (mips_dwarf2_addr_size): New.
3481 * config/tc-mips.h (DWARF2_ADDR_SIZE): Use.
3482
6a5709a5
JR
34832004-02-26 Andrew Stubbs <andrew.stubbs@superh.com>
3484
3485 * config/tc-sh.c (build_Mytes): Add REG_N_D and REG_N_B01
3486 nibble types to assembler.
3487
95385380
FF
34882004-02-25 Fred Fish <fnf@redhat.com>
3489
3490 * config/tc-iq2000.c: Add missing \n\ in multiline string literal.
3491
b5e0fabd
JW
34922004-02-20 James E Wilson <wilson@specifixinc.com>
3493
3494 * config/tc-ia64.c (slot_index): New arg before_relax. Use instead of
3495 finalize_syms.
3496 (fixup_unw_records): New arg before_relax. Pass to slot_index.
3497 (ia64_estimate_size_before_relax): New.
3498 (ia64_convert_frag): Pass 0 to fixup_unw_records. Add comment.
3499 (generate_unwind_image): Pass 1 to fixup_unw_records.
3500 * config/tc-ia64.h (ia64_estimate_size_before_relax): Declare.
3501 (md_estimate_size_before_relax): Call ia64_estimate_size_before_relax.
3502
2f01ffbf
JJ
35032004-02-19 Jakub Jelinek <jakub@redhat.com>
3504
3505 * stabs.c (generate_asm_file): Avoid warning about use of
3506 uninitialized variable.
3507
9c59842f
JW
35082004-02-18 David Mosberger <davidm@hpl.hp.com>
3509
3510 * config/tc-ia64.c (ia64_flush_insns): In addition to prologue,
3511 body, and endp, allow unwind records which do not have a "t"
3512 (time/instruction) field.
3513
34920d91
NC
35142004-02-17 Petko Manolov <petkan@nucleusys.com>
3515
3516 * config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn.
3517 (do_mav_dspsc_2): Likewise.
3518 Fix accumulator registers move opcodes.
3519
4dde8e61 35202004-02-13 Hannes Reinecke <hare@suse.de>
13ef8878 3521 Jakub Jelinek <jakub@redhat.com>
4dde8e61
AJ
3522
3523 * dwarf2dbg.c (get_filenum): Do not read beyond allocated memory.
3524
936cf02e
JW
35252004-02-10 Steve Ellcey <sje@cup.hp.com>
3526
3527 * config/tc-ia64.h (ia64_frob_symbol): New declaration.
3528 (tc_frob_symbol): New macro definition.
3529 * config/tc-ia64.c (ia64_frob_symbol): New routine.
3530
e41f12f3
DJ
35312004-02-09 Daniel Jacobowitz <drow@mvista.com>
3532
3533 * config/tc-arm.c (md_begin): Mark .note.gnu.arm.ident as
3534 read-only.
3535
a8a3b3b2
NS
35362004-02-09 Nathan Sidwell <nathan@codesourcery.com>
3537
3538 * read.h (IGNORE_OPCODE_CASE): Do not define. Replace with ...
3539 (TC_CASE_SENSITIVE): ... this.
3540 * read.c: Replace IGNORE_OPCODE_CASE with TC_CASE_SENSITIVE.
3541 * doc/internals.texi (TC_CASE_SENSITIVE): Document.
3542
c97b7ef6
JW
35432004-02-06 James E Wilson <wilson@specifixinc.com>
3544
3545 * config/tc-ia64.c (dot_endp): Delete call to output_endp.
3546 (generate_unwind_image): Re-add it here.
3547
e4475e39
NS
35482004-02-06 Nathan Sidwell <nathan@codesourcery.com>
3549
3550 * dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';'
3551 * read.h (SKIP_WHITESPACE): Turn into an expression.
3552 * read.c (read_a_source_file): A pseudo is removed by having a
3553 NULL handler.
3554
5738bc24
JW
35552004-02-05 James E Wilson <wilson@specifixinc.com>
3556
3557 * config/tc-ia64.c (output_endp): New.
3558 (count_bits): Delete.
3559 (ia64_flush_insns, process_one_record, optimize_unw_records): Handle
3560 endp unwind records.
3561 (fixup_unw_records): Handle endp unwind records. Delete code for
3562 shortening prologue regions not followed by a body record.
3563 (dot_endp): Call add_unwind_entry to emit endp unwind record.
3564 * config/tc-ia64.h (unw_record_type): Add endp.
3565
d6e78c11
JW
35662004-02-03 James E Wilson <wilson@specifixinc.com>
3567
3568 * config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to
3569 fill padding bytes with zeroes.
3570 (emit_one_bundle): New locals last_ptr, end_ptr. Rewrite code that
3571 sets unwind_record slot_number and slot_frag fields.
3572
f6a22291
MR
35732004-02-02 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3574
3575 * config/tc-mips.c (add_got_offset_hilo): New function.
3576 (macro): Use load_register() and add_got_offset_hilo() to load
3577 constants instead of hardcoding code sequences throughout.
3578
127cab00
L
35792004-01-28 H.J. Lu <hongjiu.lu@intel.com>
3580
3581 * config/tc-ia64.c (emit_one_bundle): Add proper indentation.
3582
6358301e
NC
35832004-01-26 Bernardo Innocenti <bernie@develer.com>
3584
3585 * config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially,
3586 like m68k-elf.
3587 * config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead
3588 of hard-coded test for TARGET_OS=elf.
3589
c8978940
CD
35902004-01-24 Chris Demetriou <cgd@broadcom.com>
3591
3592 * config/tc-mips.c (hilo_interlocks): Change definition
3593 so that MIPS32, MIPS64 and later ISAs are included, along with
3594 the already-included machines. Update comments.
3595
c3ba240c
DJ
35962004-01-23 Daniel Jacobowitz <drow@mvista.com>
3597
3598 * config/tc-arm.c (tc_gen_reloc): Improve error message for
3599 undefined local labels.
3600
e864ceca
RS
36012004-01-23 Richard Sandiford <rsandifo@redhat.com>
3602
3603 * config/tc-mips.c (load_address, macro): Update comments about
3604 NewABI GP relaxation.
3605
67c0d1eb
RS
36062004-01-23 Richard Sandiford <rsandifo@redhat.com>
3607
3608 * config/tc-mips.c (macro_build): Remove place and counter arguments.
3609 (mips_build_lui, macro_build_ldst_constoffset): Likewise.
3610 (mips16_macro_build, macro_build_jalr): Remove counter argument.
3611 (set_at, load_register, load_address, move_register): Likewise.
3612 (load_got_offset, add_got_offset): Likewise.
3613 Update all calls and tidy accordingly.
3614
584892a6
RS
36152004-01-23 Richard Sandiford <rsandifo@redhat.com>
3616
3617 * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument.
3618 (RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities.
3619 (RELAX_USE_SECOND): Bump to 0x10000.
3620 (RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags.
3621 (mips_macro_warning): New variable.
3622 (md_assemble): Wrap macro expansion in macro_start() and macro_end().
3623 (s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise.
3624 (relax_close_frag): Set mips_macro_warning.first_frag. Adjust use
3625 of RELAX_ENCODE.
3626 (append_insn): Update mips_macro_warning.sizes.
3627 (macro_start, macro_warning, macro_end): New functions.
3628 (macro_build): Don't emit warnings here.
3629 (macro_build_lui, md_estimate_size_before_relax): ...or here.
3630 (md_convert_frag): Check for cases where one macro alternative
3631 needs a warning and the other doesn't. Emit a warning if the
3632 longer sequence was chosen.
3633
4d7206a2
RS
36342004-01-23 Richard Sandiford <rsandifo@redhat.com>
3635
3636 * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove.
3637 * config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of
3638 the first sequence, the size of the second sequence, and a flag
3639 that says whether we should warn.
3640 (RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete.
3641 (RELAX_FIRST, RELAX_SECOND): New.
3642 (mips_relax): New variable.
3643 (relax_close_frag, relax_start, relax_switch, relax_end): New fns.
3644 (append_insn): Remove "place" argument. Use mips_relax.sequence
3645 rather than "place" to check whether we're expanding the second
3646 alternative of a relaxable macro. Remove redundant check for
3647 branch relaxation. If generating a normal insn, and there
3648 is not enough room in the current frag, call relax_close_frag()
3649 to close it. Update mips_relax.sizes[]. Emit fixups for the
3650 second version of a relaxable macro. Record the first relaxable
3651 fixup in mips_relax. Remove tc_gen_reloc workaround.
3652 (macro_build): Remove all uses of "place". Use mips_relax.sequence
3653 in the same way as in append_insn.
3654 (mips16_macro_build): Remove "place" argument.
3655 (macro_build_lui): As for macro_build. Don't drop the add_symbol
3656 when generating the second version of a relaxable macro.
3657 (load_got_offset, add_got_offset): New functions.
3658 (load_address, macro): Use new relaxation machinery. Remove
3659 tc_gen_reloc workarounds.
3660 (md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second
3661 version of a relaxable macro is needed. Return -RELAX_SECOND if the
3662 first version is needed.
3663 (tc_gen_reloc): Remove relaxation handling.
3664 (md_convert_frag): Go through the fixups for a relaxable macro and
3665 mark those that belong to the unneeded alternative as done. If the
3666 second alternative is needed, adjust the fixup addresses to account
3667 for the deleted first alternative.
3668
0530d30a
RS
36692004-01-23 Richard Sandiford <rsandifo@redhat.com>
3670
3671 * frags.h (frag_room): Declare.
3672 * frags.c (frag_room): New function.
3673 * doc/internals.texi: Document it.
3674
048cdf86
TS
36752004-01-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3676
3677 * config/tc-mips.c (append_insn): Don't do r3900 interlock
3678 optimization for -mtune=r3900, as this will break on other CPUs.
3679
28d39d1a
NC
36802004-01-11 Tom Rix <tcrix@worldnet.att.net>
3681
3682 * config/tc-m68hc11.c (build_indexed_byte): movb and movw cannot
73369e65 3683 be relaxed, use fixup.
28d39d1a
NC
3684 (md_apply_fix3): Use 5 bit reloc from movb and movw fixup.
3685
26664553
JJ
36862004-01-19 Jakub Jelinek <jakub@redhat.com>
3687
3688 * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single
3689 precision operands.
3690
895921c9
MR
36912004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3692
3693 * config/tc-mips.c (append_insn): Properly detect variant frags
3694 that preclude swapping of relaxed branches. Correctly swap
3695 instructions between frags when dealing with relaxed branches.
3696
f8b73030
MR
36972004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3698
3699 * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
3700 throughout.
3701 * aclocal.m4: Regenerate.
3702 * configure: Regenerate.
3703
ca9a79a1 37042004-01-12 Anil Paranjpe <anilp1@KPITCummins.com>
73369e65 3705
ca9a79a1
NC
3706 * config/tc-h8300.c (build_bytes): Apply relaxation to bit
3707 manipulation insns.
3708
cc3d92a5
RS
37092004-01-12 Richard Sandiford <rsandifo@redhat.com>
3710
3711 * config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR
3712 reloc, reserve space for the delay slot as well as the jalr itself.
3713
e45d0630
PB
37142004-01-09 Paul Brook <paul@codesourcery.com>
3715
3716 * config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from do_vfp_sp_reg2.
3717 (do_vfp_sp2_from_reg2): New function.
3718 (insns): Use them.
3719 (do_vfp_dp_from_reg2): Check return values properly.
3720
81912461
ILT
37212004-01-08 Ian Lance Taylor <ian@wasabisystems.com>
3722
78849248
ILT
3723 * config/tc-mips.c (warn_nops): Remove static variable.
3724 (macro): Remove test of warn_nops.
3725 (md_shortops): Remove 'n'.
3726 (md_parse_option): Remove 'n' case.
3727 (md_show_usage): Remove -n.
3728 * doc/as.texinfo (Overview): Remove MIPS -n option.
3729 * doc/c-mips.texi (MIPS Opts): Remove mention -n.
3730 * NEWS: Mention removal of MIPS -n option.
3731
81912461
ILT
3732 * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove.
3733 (cop_interlocks): Check ISA level.
3734 (cop_mem_interlocks): Define.
3735 (reg_needs_delay): Check cop_interlocks rather than
3736 ISA_HAS_COPROC_DELAYS.
3737 (append_insn): Likewise. Use cop_mem_interlocks rather than
3738 directly checking mips_opts.isa.
3739 (mips_emit_delays): Likewise.
3740
73f20958
L
37412004-01-07 H.J. Lu <hongjiu.lu@intel.com>
3742
3743 * config/tc-ia64.c (unwind): Move next_slot_number and
3744 next_slot_frag to ...
3745 (unw_rec_list): Here.
3746 (free_list_records): Removed.
3747 (output_unw_records): Likewise.
3748 (generate_unwind_image): Make it void.
3749 (alloc_record): Initialize next_slot_number and next_slot_frag.
3750 (slot_index): Take .org, .space and .align into account.
3751 (fixup_unw_records): Don't set slot_number to 0. Use
3752 list->next_slot_number and list->next_slot_frag instead of
3753 unwind.next_slot_number and unwind.next_slot_frag.
3754 (ia64_convert_frag): New.
3755 (generate_unwind_image): Generate a rs_machine_dependent frag
3756 for unwind record.
3757 (emit_one_bundle): Use list->next_slot_number and
3758 list->next_slot_frag instead of unwind.next_slot_number and
3759 unwind.next_slot_frag.
3760
3761 * config/tc-ia64.h (md_convert_frag): Defined as
3762 ia64_convert_frag.
3763 (md_estimate_size_before_relax): Defined as (f)->fr_var.
3764
99d09cdb
AO
37652004-01-06 Alexandre Oliva <aoliva@redhat.com>
3766
3767 2003-12-19 Alexandre Oliva <aoliva@redhat.com>
3768 * config/tc-frv.h (md_apply_fix3): Don't define.
3769 * config/tc-frv.c (md_apply_fix3): New. Shift/truncate %hi/%lo
3770 operands.
3771 * config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
3772 2003-10-07 Alexandre Oliva <aoliva@redhat.com>
3773 * config/tc-frv.c (line_separator_chars): Add `!'.
3774 2003-09-19 Alexandre Oliva <aoliva@redhat.com>
3775 * config/tc-frv.c (md_assemble): Clear insn upfront.
3776 2003-09-18 Alexandre Oliva <aoliva@redhat.com>
3777 * config/tc-frv.c (OPTION_FDPIC): New macro.
3778 (md_longopts): Add mfdpic.
3779 (md_parse_option): Handle it.
3780 2003-08-04 Alexandre Oliva <aoliva@redhat.com>
3781 * config/tc-frv.c (md_cgen_lookup_reloc) <FRV_OPERAND_D12,
3782 FRV_OPERAND_S12>: Use reloc type encoded in fix-up.
3783 (frv_pic_ptr): Parse funcdesc.
3784
4a4c4a1d
MR
37852004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3786
3787 * doc/as.texinfo: Let texi2pod parse asconfig.texi and
3788 gasver.texi. Remove duplicate symbol definitions for texi2pod.
3789
2251dd89
MR
37902004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3791
3792 * Makefile.am (Makefile): Move the dependency on
3793 $(BFDDIR)/configure.in to...
3794 (CONFIG_STATUS_DEPENDENCIES): ... here.
3795 (AUTOMAKE_OPTIONS): Require automake 1.8.
3796 * Makefile.in: Regenerate.
3797 * doc/Makefile.am (BASEDIR, BFDDIR): Define.
3798 (CONFIG_STATUS_DEPENDENCIES): Add a dependency on
3799 $(BFDDIR)/configure.in here as well.
3800 * doc/Makefile.in: Regenerate.
3801
c6581168
MR
38022004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3803
3804 * Makefile.am (install, install-info, RECURSIVE_TARGETS): Remove.
3805 * Makefile.in: Regenerate.
3806 * aclocal.m4: Regenerate.
3807 * doc/Makefile.am (install, install-info): Remove.
3808 (install-data-local): A new hook for install-info.
3809 (AUTOMAKE_OPTIONS): Require automake 1.8.
3810 * doc/Makefile.in: Regenerate.
3811
303e7b79
NC
38122004-01-02 Nutan Singh <nutan@kpitcummins.com>
3813
3814 * doc/c-sh.texi: Update description about floating point behavior
3815 of SH family.
3816
b50c15dc
NC
38172004-01-02 Bernardo Innocenti <bernie@develer.com>
3818
3819 * configure.in: Add m68k-uClinux target.
3820 * configure: Regenerate.
7de9afa2 3821
c9e214e5 3822For older changes see ChangeLog-0203
08d56133
NC
3823\f
3824Local Variables:
3825mode: change-log
3826left-margin: 8
3827fill-column: 74
3828version-control: never
3829End: