3 * config/tc-sh.c: Include dw2gencfi.h.
4 (sh_cfi_frame_initial_instructions): New function.
5 (sh_regname_to_dw2regnum): Likewise.
6 * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of
8 (TARGET_USE_CFIPOP): Define.
9 (tc_cfi_frame_initial_instructions): Likewise.
10 (tc_regname_to_dw2regnum): Likewise.
11 (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise.
12 * Makefile.am: Update dependencies.
13 * Makefile.in: Regenerate.
17 * configure.in: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*.
18 * configure: Regenerate.
22 * read.c (s_leb128): Call md_flush_pending_output.
26 * config/tc-i386.c (output_insn): Handle PadLock instructions.
27 * config/tc-i386.h (CpuPadLock): New define.
28 (CpuUnknownFlags): Added CpuPadLock.
32 * doc/c-hppa.texi (HPPA Directives): Fix typo.
36 * dw2gencfi.c (output_cie): Align length to 4 byte boundary.
37 (cfi_finish): Likewise for fde.
41 * config/tc-ia64.c (md_assemble): Properly handle NULL
43 (ia64_handle_align): Don't abort if failed to add a stop bit.
47 * Makefile.in: Regenerated.
48 * aclocal.m4: Likewise.
49 * configure: Likewise.
50 * doc/Makefile.in: Likewise.
54 * config/tc-ia64.c (dot_align): New.
55 (ia64_do_align): Make it static.
56 (md_pseudo_table): Use "dot_align" for "align".
57 (ia64_md_do_align): Don't set align_frag here.
58 (ia64_handle_align): Add a stop bit to the previous bundle if
61 * config/tc-ia64.h (ia64_do_align): Removed.
65 * config/tc-sh.c (md_parse_option): Add -isa=sh4-nofpu and
66 -isa=sh4-nommu-nofpu options. Adjust help messages accordingly.
67 (sh_elf_final_processing): Output BFD type sh4_nofpu if that is
68 the most general type or the user specifically requested it.
69 (md_assemble): Add a new error message for when an instruction
70 is understood, but is not allowed due to an -isa option.
74 * config/tc-ia64.c (align_frag): New.
75 (md_assemble): Set the tc_frag_data field in align_frag for
76 IA64_OPCODE_FIRST instructions.
77 (ia64_md_do_align): Set align_frag.
78 (ia64_handle_align): Add a stop bit if needed.
80 * config/tc-ia64.h (TC_FRAG_TYPE): New.
85 * config/tc-frv.c (fr400_audio): New variable.
86 (md_parse_option, md_show_usage): Add -mcpu=fr405 and -mcpu=fr450.
87 (md_parse_option): Set fr400_audio for -mcpu=fr400 and -mcpu=fr405.
88 (target_implements_insn_p): New function.
89 (md_assemble): Report an error if the processor doesn't implement
94 * config/tc-m32r.c (md_longopts): Added -no-bitinst option.
95 (md_parse_option): Ditto.
96 (OPTION_NO_SPECIAL_M32R): Added.
97 (md_show_usage): Document it.
98 (enable_speial_m32r): Changed a default value from 0 to 1.
99 * doc/c-m32r.texi: Document the -no-bitinst option.
103 * config/tc-sh.c (get_operand): Revert previous delta.
104 (tc_gen_reloc): Check for an unknown reloc type before processing
109 * config/tc-s390.c (s390_insn): Correct range check for opcode in
110 .insn pseudo operation.
114 * config/tc-sh.c (get_operand): In case of #Imm, check has been
115 added for wrong syntax.
119 * config/tc-mips.c (mips_dwarf2_addr_size): New.
120 * config/tc-mips.h (DWARF2_ADDR_SIZE): Use.
124 * config/tc-sh.c (build_Mytes): Add REG_N_D and REG_N_B01
125 nibble types to assembler.
129 * config/tc-iq2000.c: Add missing \n\ in multiline string literal.
133 * config/tc-ia64.c (slot_index): New arg before_relax. Use instead of
135 (fixup_unw_records): New arg before_relax. Pass to slot_index.
136 (ia64_estimate_size_before_relax): New.
137 (ia64_convert_frag): Pass 0 to fixup_unw_records. Add comment.
138 (generate_unwind_image): Pass 1 to fixup_unw_records.
139 * config/tc-ia64.h (ia64_estimate_size_before_relax): Declare.
140 (md_estimate_size_before_relax): Call ia64_estimate_size_before_relax.
144 * stabs.c (generate_asm_file): Avoid warning about use of
145 uninitialized variable.
149 * config/tc-ia64.c (ia64_flush_insns): In addition to prologue,
150 body, and endp, allow unwind records which do not have a "t"
151 (time/instruction) field.
155 * config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn.
156 (do_mav_dspsc_2): Likewise.
157 Fix accumulator registers move opcodes.
162 * dwarf2dbg.c (get_filenum): Do not read beyond allocated memory.
166 * config/tc-ia64.h (ia64_frob_symbol): New declaration.
167 (tc_frob_symbol): New macro definition.
168 * config/tc-ia64.c (ia64_frob_symbol): New routine.
172 * config/tc-arm.c (md_begin): Mark .note.gnu.arm.ident as
177 * read.h (IGNORE_OPCODE_CASE): Do not define. Replace with ...
178 (TC_CASE_SENSITIVE): ... this.
179 * read.c: Replace IGNORE_OPCODE_CASE with TC_CASE_SENSITIVE.
180 * doc/internals.texi (TC_CASE_SENSITIVE): Document.
184 * config/tc-ia64.c (dot_endp): Delete call to output_endp.
185 (generate_unwind_image): Re-add it here.
189 * dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';'
190 * read.h (SKIP_WHITESPACE): Turn into an expression.
191 * read.c (read_a_source_file): A pseudo is removed by having a
196 * config/tc-ia64.c (output_endp): New.
197 (count_bits): Delete.
198 (ia64_flush_insns, process_one_record, optimize_unw_records): Handle
200 (fixup_unw_records): Handle endp unwind records. Delete code for
201 shortening prologue regions not followed by a body record.
202 (dot_endp): Call add_unwind_entry to emit endp unwind record.
203 * config/tc-ia64.h (unw_record_type): Add endp.
207 * config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to
208 fill padding bytes with zeroes.
209 (emit_one_bundle): New locals last_ptr, end_ptr. Rewrite code that
210 sets unwind_record slot_number and slot_frag fields.
214 * config/tc-mips.c (add_got_offset_hilo): New function.
215 (macro): Use load_register() and add_got_offset_hilo() to load
216 constants instead of hardcoding code sequences throughout.
220 * config/tc-ia64.c (emit_one_bundle): Add proper indentation.
224 * config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially,
226 * config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead
227 of hard-coded test for TARGET_OS=elf.
231 * config/tc-mips.c (hilo_interlocks): Change definition
232 so that MIPS32, MIPS64 and later ISAs are included, along with
233 the already-included machines. Update comments.
237 * config/tc-arm.c (tc_gen_reloc): Improve error message for
238 undefined local labels.
242 * config/tc-mips.c (load_address, macro): Update comments about
243 NewABI GP relaxation.
247 * config/tc-mips.c (macro_build): Remove place and counter arguments.
248 (mips_build_lui, macro_build_ldst_constoffset): Likewise.
249 (mips16_macro_build, macro_build_jalr): Remove counter argument.
250 (set_at, load_register, load_address, move_register): Likewise.
251 (load_got_offset, add_got_offset): Likewise.
252 Update all calls and tidy accordingly.
256 * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument.
257 (RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities.
258 (RELAX_USE_SECOND): Bump to 0x10000.
259 (RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags.
260 (mips_macro_warning): New variable.
261 (md_assemble): Wrap macro expansion in macro_start() and macro_end().
262 (s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise.
263 (relax_close_frag): Set mips_macro_warning.first_frag. Adjust use
265 (append_insn): Update mips_macro_warning.sizes.
266 (macro_start, macro_warning, macro_end): New functions.
267 (macro_build): Don't emit warnings here.
268 (macro_build_lui, md_estimate_size_before_relax): ...or here.
269 (md_convert_frag): Check for cases where one macro alternative
270 needs a warning and the other doesn't. Emit a warning if the
271 longer sequence was chosen.
275 * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove.
276 * config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of
277 the first sequence, the size of the second sequence, and a flag
278 that says whether we should warn.
279 (RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete.
280 (RELAX_FIRST, RELAX_SECOND): New.
281 (mips_relax): New variable.
282 (relax_close_frag, relax_start, relax_switch, relax_end): New fns.
283 (append_insn): Remove "place" argument. Use mips_relax.sequence
284 rather than "place" to check whether we're expanding the second
285 alternative of a relaxable macro. Remove redundant check for
286 branch relaxation. If generating a normal insn, and there
287 is not enough room in the current frag, call relax_close_frag()
288 to close it. Update mips_relax.sizes[]. Emit fixups for the
289 second version of a relaxable macro. Record the first relaxable
290 fixup in mips_relax. Remove tc_gen_reloc workaround.
291 (macro_build): Remove all uses of "place". Use mips_relax.sequence
292 in the same way as in append_insn.
293 (mips16_macro_build): Remove "place" argument.
294 (macro_build_lui): As for macro_build. Don't drop the add_symbol
295 when generating the second version of a relaxable macro.
296 (load_got_offset, add_got_offset): New functions.
297 (load_address, macro): Use new relaxation machinery. Remove
298 tc_gen_reloc workarounds.
299 (md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second
300 version of a relaxable macro is needed. Return -RELAX_SECOND if the
301 first version is needed.
302 (tc_gen_reloc): Remove relaxation handling.
303 (md_convert_frag): Go through the fixups for a relaxable macro and
304 mark those that belong to the unneeded alternative as done. If the
305 second alternative is needed, adjust the fixup addresses to account
306 for the deleted first alternative.
310 * frags.h (frag_room): Declare.
311 * frags.c (frag_room): New function.
312 * doc/internals.texi: Document it.
316 * config/tc-mips.c (append_insn): Don't do r3900 interlock
317 optimization for -mtune=r3900, as this will break on other CPUs.
321 * config/tc-m68hc11.c (build_indexed_byte): movb and movw cannot
322 be relaxed, use fixup.
323 (md_apply_fix3): Use 5 bit reloc from movb and movw fixup.
327 * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single
332 * config/tc-mips.c (append_insn): Properly detect variant frags
333 that preclude swapping of relaxed branches. Correctly swap
334 instructions between frags when dealing with relaxed branches.
338 * acinclude.m4: Quote names of macros to be defined by AC_DEFUN
340 * aclocal.m4: Regenerate.
341 * configure: Regenerate.
345 * config/tc-h8300.c (build_bytes): Apply relaxation to bit
350 * config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR
351 reloc, reserve space for the delay slot as well as the jalr itself.
355 * config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from do_vfp_sp_reg2.
356 (do_vfp_sp2_from_reg2): New function.
358 (do_vfp_dp_from_reg2): Check return values properly.
362 * config/tc-mips.c (warn_nops): Remove static variable.
363 (macro): Remove test of warn_nops.
364 (md_shortops): Remove 'n'.
365 (md_parse_option): Remove 'n' case.
366 (md_show_usage): Remove -n.
367 * doc/as.texinfo (Overview): Remove MIPS -n option.
368 * doc/c-mips.texi (MIPS Opts): Remove mention -n.
369 * NEWS: Mention removal of MIPS -n option.
371 * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove.
372 (cop_interlocks): Check ISA level.
373 (cop_mem_interlocks): Define.
374 (reg_needs_delay): Check cop_interlocks rather than
375 ISA_HAS_COPROC_DELAYS.
376 (append_insn): Likewise. Use cop_mem_interlocks rather than
377 directly checking mips_opts.isa.
378 (mips_emit_delays): Likewise.
382 * config/tc-ia64.c (unwind): Move next_slot_number and
383 next_slot_frag to ...
384 (unw_rec_list): Here.
385 (free_list_records): Removed.
386 (output_unw_records): Likewise.
387 (generate_unwind_image): Make it void.
388 (alloc_record): Initialize next_slot_number and next_slot_frag.
389 (slot_index): Take .org, .space and .align into account.
390 (fixup_unw_records): Don't set slot_number to 0. Use
391 list->next_slot_number and list->next_slot_frag instead of
392 unwind.next_slot_number and unwind.next_slot_frag.
393 (ia64_convert_frag): New.
394 (generate_unwind_image): Generate a rs_machine_dependent frag
396 (emit_one_bundle): Use list->next_slot_number and
397 list->next_slot_frag instead of unwind.next_slot_number and
398 unwind.next_slot_frag.
400 * config/tc-ia64.h (md_convert_frag): Defined as
402 (md_estimate_size_before_relax): Defined as (f)->fr_var.
407 * config/tc-frv.h (md_apply_fix3): Don't define.
408 * config/tc-frv.c (md_apply_fix3): New. Shift/truncate %hi/%lo
410 * config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define.
412 * config/tc-frv.c (line_separator_chars): Add `!'.
414 * config/tc-frv.c (md_assemble): Clear insn upfront.
416 * config/tc-frv.c (OPTION_FDPIC): New macro.
417 (md_longopts): Add mfdpic.
418 (md_parse_option): Handle it.
420 * config/tc-frv.c (md_cgen_lookup_reloc) <FRV_OPERAND_D12,
421 FRV_OPERAND_S12>: Use reloc type encoded in fix-up.
422 (frv_pic_ptr): Parse funcdesc.
426 * doc/as.texinfo: Let texi2pod parse asconfig.texi and
427 gasver.texi. Remove duplicate symbol definitions for texi2pod.
431 * Makefile.am (Makefile): Move the dependency on
432 $(BFDDIR)/configure.in to...
433 (CONFIG_STATUS_DEPENDENCIES): ... here.
434 (AUTOMAKE_OPTIONS): Require automake 1.8.
435 * Makefile.in: Regenerate.
436 * doc/Makefile.am (BASEDIR, BFDDIR): Define.
437 (CONFIG_STATUS_DEPENDENCIES): Add a dependency on
438 $(BFDDIR)/configure.in here as well.
439 * doc/Makefile.in: Regenerate.
443 * Makefile.am (install, install-info, RECURSIVE_TARGETS): Remove.
444 * Makefile.in: Regenerate.
445 * aclocal.m4: Regenerate.
446 * doc/Makefile.am (install, install-info): Remove.
447 (install-data-local): A new hook for install-info.
448 (AUTOMAKE_OPTIONS): Require automake 1.8.
449 * doc/Makefile.in: Regenerate.
453 * doc/c-sh.texi: Update description about floating point behavior
458 * configure.in: Add m68k-uClinux target.
459 * configure: Regenerate.
461 For older changes see ChangeLog-0203
467 version-control: never