| 1 | 2004-11-22 Bob Wilson <bob.wilson@acm.org> |
| 2 | |
| 3 | * config/tc-xtensa.c (xg_add_opcode_fix): Set fx_no_overflow. |
| 4 | |
| 5 | 2004-11-22 Bob Wilson <bob.wilson@acm.org> |
| 6 | |
| 7 | * dwarf2dbg.c (dwarf2_finish): Don't write a .debug_line section |
| 8 | without a corresponding .debug_info section. |
| 9 | |
| 10 | 2004-11-22 Hans-Peter Nilsson <hp@axis.com> |
| 11 | |
| 12 | * read.c (potable): Add "error" and "warning". |
| 13 | (s_errwarn): New function. |
| 14 | * read.h (s_errwarn): Declare. |
| 15 | * doc/as.texinfo (Error, Warning): Document .error and .warning. |
| 16 | |
| 17 | 2004-11-22 Nick Clifton <nickc@redhat.com> |
| 18 | |
| 19 | * config/tc-tic54x.c (tic54x_adjust_symtab): Adjust call to |
| 20 | c_dot_file_symbol. |
| 21 | |
| 22 | 2004-11-19 Alan Modra <amodra@bigpond.net.au> |
| 23 | |
| 24 | * config/tc-msp430.c (struct rcodes_s, MSP430_RLC, msp430_rcodes, |
| 25 | struct hcodes_s, msp430_hcodes): From include/opcode/msp430.h. |
| 26 | |
| 27 | 2004-11-19 Alan Modra <amodra@bigpond.net.au> |
| 28 | |
| 29 | * config/obj-coff.c (c_dot_file_symbol): Add "app" param. |
| 30 | (coff_adjust_symtab): Adjust call. |
| 31 | (crawl_symbols): Likewise. |
| 32 | * config/obj-coff.h (c_dot_file_symbol): Add "app" param. |
| 33 | (obj_app_file): Adjust. |
| 34 | |
| 35 | 2004-11-18 Inderpreet Singh <inderpreetb@nioda.hcltech.com> |
| 36 | |
| 37 | * configure.in: Enable bfd_assember for the MAXQ port. |
| 38 | * configure: Regenerate. |
| 39 | |
| 40 | 2004-11-12 Bob Wilson <bob.wilson@acm.org> |
| 41 | Sterling Augustine <sterling@tensilica.com> |
| 42 | |
| 43 | * config/tc-xtensa.c (finish_vinsn): Clear pending instruction if |
| 44 | there is a conflict. |
| 45 | (check_t1_t2_reads_and_writes): Check for both reads and writes to |
| 46 | interfaces that are related as determined by xtensa_interface_class_id. |
| 47 | |
| 48 | 2004-11-12 Nick Clifton <nickc@redhat.com> |
| 49 | |
| 50 | * config/tc-mn10300.c (md_relax_table): Fix off by one negative |
| 51 | offsets for conditional branches. |
| 52 | |
| 53 | 2004-11-11 Bob Wilson <bob.wilson@acm.org> |
| 54 | |
| 55 | * config/tc-xtensa.c (MAX_IMMED6): Change value to 65. |
| 56 | |
| 57 | 2004-11-10 Bob Wilson <bob.wilson@acm.org> |
| 58 | |
| 59 | * config/tc-xtensa.c (update_next_frag_state): Always add a NOP if |
| 60 | relaxing at the end of a loop. Don't mark frags as UNREACHABLE or |
| 61 | MAYBE_UNREACHABLE. |
| 62 | (relax_frag_immed): Update call to update_next_frag_state. |
| 63 | |
| 64 | 2004-11-10 Alan Modra <amodra@bigpond.net.au> |
| 65 | |
| 66 | * obj.h (struct format_ops <app_file>): Add int param. |
| 67 | * read.h (s_app_file_string): Likewise. |
| 68 | * read.c (s_app_file_string): Likewise. |
| 69 | (s_app_file): Adjust s_app_file_string call. |
| 70 | * config/tc-mips.c (s_mips_file): Likewise. |
| 71 | * config/obj-coff.h (obj_app_file): Add app param. |
| 72 | * config/obj-ecoff.h (obj_app_file): Likewise. |
| 73 | * config/obj-multi.h (obj_app_file): Likewise. |
| 74 | * config/obj-elf.h (elf_file_symbol): Likewise. |
| 75 | * config/obj-elf.c (elf_file_symbol): Only emit one file symbol |
| 76 | if called for # preprocessor lines. |
| 77 | |
| 78 | 2004-11-08 H.J. Lu <hongjiu.lu@intel.com> |
| 79 | |
| 80 | PR 528 |
| 81 | * symbols.c (resolve_symbol_value): Convert weak symbols only |
| 82 | for Windows PECOFF. |
| 83 | (symbol_equated_reloc_p): Don't equate weaks when relocating |
| 84 | only for Windows PECOFF. |
| 85 | |
| 86 | 2004-11-08 Tomer Levi <Tomer.Levi@nsc.com> |
| 87 | |
| 88 | * config/tc-crx.c (print_insn): Check and set insn_addr. |
| 89 | * config/tc-crx.h (md_frag_check): Define. |
| 90 | |
| 91 | 2004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com> |
| 92 | Vineet Sharma <vineets@noida.hcltech.com> |
| 93 | |
| 94 | * configure.in: Add support for new target maxq-coff. |
| 95 | * configure: Regenerate. |
| 96 | * NEWS: Mention new support. |
| 97 | * config/tc-maxq.c: New file. |
| 98 | * config/tc-maxq.h: New file. |
| 99 | * config/obj-coff.h: Add support for maxq-coff. |
| 100 | |
| 101 | 2004-11-08 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com> |
| 102 | |
| 103 | * symbols.c (any_external_name): Define. |
| 104 | (resolve_symbol_value): Convert weak symbols. |
| 105 | (S_SET_EXTERNAL): Support any_external_name. |
| 106 | (S_SET_NAME): Qualify parameter const. |
| 107 | (symbol_equated_reloc_p): Equate to weaks when relocating. |
| 108 | * symbols.h (S_SET_NAME): Qualfiy parameter const. |
| 109 | * tc.h (any_external_name): Declare. |
| 110 | * config/obj-coff.c ("coff/pe.h"): Include for BFD |
| 111 | assemblers also. |
| 112 | (weak_is_altname): Declare and define. |
| 113 | (weak_name2altname): Same. |
| 114 | (weak_altname2name): Same. |
| 115 | (weak_uniquify): Same. |
| 116 | (weak_altprefix): Define. |
| 117 | (obj_coff_weak): Change .weak syntax and handling. |
| 118 | (coff_frob_symbol): Fix PE weak symbol alternates. |
| 119 | * config/obj-coff.h (USE_UNIQUE): Define. |
| 120 | * config/tc-i386.c (md_apply_fix3): Assume weak symbols |
| 121 | are in another segment. |
| 122 | (tc_gen_reloc): Remove broken addend hack. |
| 123 | doc/as.texinfo: Update. |
| 124 | |
| 125 | 2004-11-05 Sterling Augustine <sterling@tensilica.com> |
| 126 | |
| 127 | * config/tc-xtensa.c (total_frag_text_expansion): New. |
| 128 | (md_estimate_size_before_relax): Use it. |
| 129 | (find_address_of_next_align_frag): Likewise. |
| 130 | |
| 131 | 2004-11-05 Tomer Levi <Tomer.Levi@nsc.com> |
| 132 | |
| 133 | * config/tc-crx.c: Rename argument types. |
| 134 | (processing_arg_number): Rename to 'cur_arg_num'. |
| 135 | (get_number_of_bits): Rename to 'set_operand_size'. |
| 136 | (get_operandtype): Rename to 'parse_operand', totally rewrite. |
| 137 | (set_cons_rparams): Rename to 'set_operand', totally rewrite. |
| 138 | (set_indexmode_parameters): Remove function, integrate its code into |
| 139 | 'set_operand'. |
| 140 | (set_operand_size): Get rid of 'Operand Number' function parameter - |
| 141 | use global variable 'cur_arg_num' instead. |
| 142 | Use a local 'argument' pointer to reference the current argument. |
| 143 | (parse_operand): Likewise. |
| 144 | (set_operand): Likewise. |
| 145 | (process_label_constant): Likewise. |
| 146 | |
| 147 | 2004-11-04 Bob Wilson <bob.wilson@acm.org> |
| 148 | |
| 149 | * config/tc-xtensa.c: Remove XTENSA_SECTION_RENAME ifdefs. |
| 150 | (add_section_rename): Delete. Inlined into... |
| 151 | (build_section_rename): ...here. Use xstrdup instead of strdup. |
| 152 | (xtensa_section_rename): Drop "const" from argument and return types. |
| 153 | (md_show_usage): Indent to match show_usage(). |
| 154 | * config/tc-xtensa.h: Remove XTENSA_SECTION_RENAME ifdefs. |
| 155 | (tc_canonicalize_section_name): Define. |
| 156 | (md_elf_section_rename): Remove unused macro. |
| 157 | * doc/as.texinfo (Overview): Document Xtensa --rename-section option. |
| 158 | * doc/c-xtensa.texi (Xtensa Options): Likewise. |
| 159 | (Frame Directive): Delete. |
| 160 | |
| 161 | 2004-11-04 Daniel Jacobowitz <dan@debian.org> |
| 162 | |
| 163 | * configure.in: Remove arm-*-oabi and thumb-*-oabi. |
| 164 | * config/tc-arm.c (target_oabi): Delete. |
| 165 | (md_apply_fix3, elf32_arm_target_format): Remove target_oabi checks. |
| 166 | (arm_opts): Remove moabi. |
| 167 | * doc/as.texinfo (Overview): Remove documentation of -moabi. |
| 168 | * doc/c-arm.texi (ARM Options): Likewise. |
| 169 | * configure: Regenerated. |
| 170 | |
| 171 | 2004-11-04 Hans-Peter Nilsson <hp@axis.com> |
| 172 | |
| 173 | * configure.in (crisv32): Recognize. AC_DEFINE_UNQUOTED |
| 174 | DEFAULT_CRIS_ARCH. Handle crisv32-*-linux-gnu* like |
| 175 | cris-*-linux-gnu* and crisv32-*-* like cris-*-*. |
| 176 | * configure: Regenerate. |
| 177 | * config/tc-cris.c (enum cris_archs): New. |
| 178 | (cris_mach, cris_arch_from_string, s_cris_arch, get_sup_reg) |
| 179 | (cris_insn_ver_valid_for_arch): New functions. |
| 180 | (DEFAULT_CRIS_ARCH): New macro, default to cris_any_v0_v10. |
| 181 | (cris_arch): New variable. |
| 182 | (md_pseudo_table): New pseudo .arch. |
| 183 | (err_for_dangerous_mul_placement): Initialize according to |
| 184 | DEFAULT_CRIS_ARCH. |
| 185 | (STATE_COND_BRANCH): Renamed from STATE_CONDITIONAL_BRANCH. |
| 186 | All users changed. |
| 187 | (STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON) |
| 188 | (STATE_ABS_BRANCH_V32, STATE_LAPC, BRANCH_BF_V32, BRANCH_BB_V32) |
| 189 | (BRANCH_WF_V32, BRANCH_WB_V32): New. |
| 190 | (BRANCH_BF, BRANCH_BB, BRANCH_WF, BRANCH_WB): Don't undef after |
| 191 | use in md_cris_relax_table. |
| 192 | (md_cris_relax_table): Add entries for STATE_COND_BRANCH_V32, |
| 193 | STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC. |
| 194 | Update and improve head comment. |
| 195 | (OPTION_PIC): Define in terms of previous option, OPTION_US. |
| 196 | (OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): Similar. |
| 197 | (OPTION_ARCH): New. |
| 198 | (md_longopts): New option --march=... |
| 199 | (cris_any_v0_v10_long_jump_size, crisv32_long_jump_size): New |
| 200 | macros. |
| 201 | (md_long_jump_size): Initialize in terms of DEFAULT_CRIS_ARCH. |
| 202 | (HANDLE_RELAXABLE): New macro. |
| 203 | (md_estimate_size_before_relax): Use HANDLE_RELAXABLE for common |
| 204 | cases. Check for weak symbols and assume not relaxable. Handle |
| 205 | STATE_COND_BRANCH_V32, STATE_COND_BRANCH_COMMON, |
| 206 | STATE_ABS_BRANCH_V32, STATE_LAPC. Use new variable symbolP, not |
| 207 | fragP->fr_symbol. |
| 208 | (md_convert_frag): Handle STATE_COND_BRANCH_V32, |
| 209 | STATE_COND_BRANCH_COMMON, STATE_ABS_BRANCH_V32, STATE_LAPC. |
| 210 | (cris_create_short_jump): Adjust for CRISv32. |
| 211 | (cris_relax_frag): Handle new states. |
| 212 | (md_create_long_jump): Ditto. Emit error for common_v10_v32. |
| 213 | (md_begin): Define symbols "..asm.arch.cris.v32", |
| 214 | "..asm.arch.cris.v10", "..asm.arch.cris.common_v10_v32" and |
| 215 | "..asm.arch.cris.any_v0_v10". Use cris_insn_ver_valid_for_arch |
| 216 | when entering opcode table entry points. |
| 217 | (md_assemble): Adjust branch handling for CRISv32. Handle LAPC |
| 218 | relaxation. In fix_new_exp call for main insn, pass 1 for pcrel |
| 219 | parameter for 8, 16 and 32-bit pc-relative insns and LAPC. |
| 220 | (cris_process_instruction): Initialize out_insnp->insn_type to |
| 221 | CRIS_INSN_NONE, not CRIS_INSN_NORMAL. |
| 222 | <case ']', '[', 'A', 'd', 'Q', 'N', 'n', 'Y', 'U', 'u', 'T'>: New |
| 223 | cases. |
| 224 | <case 'm'>: Check that modified_char == '.'. |
| 225 | <invalid operands>: Consume the rest of the line. |
| 226 | When operands don't match, skip over subsequent insns with |
| 227 | non-matching version specifier but same mnemonic. |
| 228 | <immediate constant, case SIZE_SPEC_REG>: Immediate operands for |
| 229 | special registers in CRISv32 are always 32 bit long. |
| 230 | <immediate constant, case SIZE_FIELD_SIGNED, SIZE_FIELD_UNSIGNED>: |
| 231 | New cases. |
| 232 | (get_gen_reg): Only recognize "PC" when followed by "+]" for v32 |
| 233 | and compatible. Recognize "ACR" for v32, unless followed by "+". |
| 234 | (get_spec_reg): Consider cris_arch when looking up register. |
| 235 | (get_autoinc_prefix_or_indir_op): Don't recognize assignment for |
| 236 | v32 or compatible. |
| 237 | (get_3op_or_dip_prefix_op): Check for ']' after seeing '[rN+'. |
| 238 | (cris_get_expression): Restore input_line_pointer if failing "early". |
| 239 | (get_flags): Consider cris_arch and recognize flags accordingly. |
| 240 | (branch_disp): Adjust for CRISv32. |
| 241 | (gen_cond_branch_32): Similar. Emit error for common_v10_v32. |
| 242 | (cris_number_to_imm): Use as_bad_where, not as_bad. Remove |
| 243 | related FIXME. Don't insist on BFD_RELOC_32_PCREL fixup to be |
| 244 | resolved. Don't enter zeros in object file for |
| 245 | BFD_RELOC_32_PCREL. |
| 246 | <case BFD_RELOC_CRIS_LAPCQ_OFFSET, BFD_RELOC_CRIS_SIGNED_16> |
| 247 | <case BFD_RELOC_CRIS_SIGNED_8>: New case. |
| 248 | (md_parse_option): Break out "return 1". |
| 249 | <OPTION_ARCH> New case. |
| 250 | (tc_gen_reloc): <case BFD_RELOC_CRIS_LAPCQ_OFFSET> |
| 251 | <case BFD_RELOC_CRIS_SIGNED_16, BFD_RELOC_CRIS_SIGNED_8> |
| 252 | <case BFD_RELOC_CRIS_UNSIGNED_8, BFD_RELOC_CRIS_UNSIGNED_16> |
| 253 | <case BFD_RELOC_32_PCREL>: New cases. |
| 254 | Addends for non-zero fx_pcrel are too in fx_offset. |
| 255 | (md_show_usage): Show --march=<arch>. |
| 256 | (md_apply_fix3): Adjust val for BFD_RELOC_CRIS_LAPCQ_OFFSET. |
| 257 | (md_pcrel_from): BFD_RELOC_CRIS_LAPCQ_OFFSET is PC-relative too. |
| 258 | (s_syntax) <struct syntaxes>: Properly constify member operand. |
| 259 | * config/tc-cris.h (TARGET_MACH): Define. |
| 260 | (cris_mach): Declare. |
| 261 | * doc/as.texinfo (Overview) <CRIS>: Add --march=... |
| 262 | * doc/c-cris.texi (CRIS-Symbols): New node for built-in symbols. |
| 263 | (CRIS-Opts): Document --march=... |
| 264 | (CRIS-Pseudos): Document .arch. |
| 265 | |
| 266 | 2004-11-04 Jan Beulich <jbeulich@novell.com> |
| 267 | |
| 268 | * config/tc-i386.c (set_intel_syntax): Allow % in symbol names when |
| 269 | intel syntax and no register prefix, allow $ in symbol names when |
| 270 | intel syntax. |
| 271 | (set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX. |
| 272 | (intel_float_operand): Add fourth return value indicating math control |
| 273 | operations. Make classification more precise. |
| 274 | (md_assemble): Complain if memory operand of mov[sz]x has no size |
| 275 | specified. |
| 276 | (parse_insn): Translate word operands to floating point instructions |
| 277 | operating on integers as well as control instructions to short ones |
| 278 | as expected by AT&T syntax. Translate 'd' suffix to short one only for |
| 279 | floating point instructions operating on non-integer operands. |
| 280 | (match_template): Remove fldcw special case. Adjust q-suffix handling |
| 281 | to permit it on fild/fistp/fisttp in AT&T mode. |
| 282 | (process_suffix): Don't guess DefaultSize insns' suffix from |
| 283 | stackop_size for certain floating point control instructions. Guess |
| 284 | suffix for branch and [ls][gi]dt based on flag_code. Split error |
| 285 | messages for Intel and AT&T syntax, and make the condition more strict |
| 286 | for the former. Adjust suppressing of generation of operand size |
| 287 | overrides. |
| 288 | (intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE, |
| 289 | OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add |
| 290 | more error checking. |
| 291 | * config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR |
| 292 | SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines. |
| 293 | |
| 294 | 2004-11-03 Hans-Peter Nilsson <hp@axis.com> |
| 295 | |
| 296 | * symbols.c (colon) [!WORKING_DOT_WORD]: Don't declare |
| 297 | md_short_jump_size, md_long_jump_size. |
| 298 | * write.c [!WORKING_DOT_WORD]: Ditto. |
| 299 | * tc.h [!WORKING_DOT_WORD]: Declare them here. Drop const |
| 300 | qualifier. |
| 301 | * config/tc-cris.h (md_short_jump_size, md_long_jump_size): Don't |
| 302 | declare. |
| 303 | * config/tc-cris.c (md_short_jump_size, md_long_jump_size): Drop |
| 304 | const qualifier in these definitions. |
| 305 | * config/tc-i370.c, config/tc-m68k.c, config/tc-pdp11.c, |
| 306 | config/tc-s390.c, config/tc-tahoe.c, config/tc-vax.c: Ditto. |
| 307 | |
| 308 | 2004-11-02 Nick Clifton <nickc@redhat.com> |
| 309 | |
| 310 | * dwarf2dbg.c (dwarf2_finish): Check for the existence of a file |
| 311 | table before deciding to produce a .debug_line section to match up |
| 312 | with a user provided .debug_info section. |
| 313 | |
| 314 | 2004-10-28 Tomer Levi <Tomer.Levi@nsc.com> |
| 315 | |
| 316 | * config/tc-crx.c (getreg_image): Bug fix, a return value was |
| 317 | mistakenly omitted from CRX_C_REGTYPE and CRX_CS_REGTYPE cases. |
| 318 | |
| 319 | 2004-10-27 Tomer Levi <Tomer.Levi@nsc.com> |
| 320 | |
| 321 | * config/tc-crx.c: Remove global variable 'post_inc_mode'. |
| 322 | (get_flags): New function. |
| 323 | (get_number_of_bits): Edit comments, update numeric values to |
| 324 | supported sizes. |
| 325 | (process_label_constant): Don't support the colon |
| 326 | format (SYMBOL:[s|m|l]). |
| 327 | (set_cons_rparams): Support argument type 'arg_rbase'. |
| 328 | (get_operandtype): Bug fix in 'rbase' operand type parsing. |
| 329 | (handle_LoadStor): Bug fix, first handle post-increment mode. |
| 330 | (getreg_image): Remove redundant code, update according to latest |
| 331 | CRX spec. |
| 332 | (print_constant): Bug fix relate to 3-word instructions. |
| 333 | (assemble_insn): Bug fix, when matching instructions, verify also |
| 334 | instruction type (not only mnemonic). |
| 335 | Add various error checking. |
| 336 | (preprocess_reglist): Support HI/LO and user registers. |
| 337 | |
| 338 | 2004-10-25 David Mosberger-Tang <davidm@hpl.hp.com> |
| 339 | |
| 340 | * config/tc-ia64.c (fixup_unw_records): Don't let the "t" value |
| 341 | in an epilogue directive go negative. |
| 342 | |
| 343 | 2004-10-25 H.J. Lu <hongjiu.lu@intel.com> |
| 344 | |
| 345 | PR 474 |
| 346 | * config/tc-ia64.c (emit_one_bundle): Decrement md.num_slots_in_use |
| 347 | after reporting template error during manual bundling. Reported |
| 348 | by Michael Dupont, michaelx.dupont@intel.com. |
| 349 | |
| 350 | 2004-10-25 Daniel Jacobowitz <dan@debian.org> |
| 351 | |
| 352 | * Makefile.am: Run dep-am. |
| 353 | * aclocal.m4: Regenerate with automake 1.9.2. |
| 354 | * Makefile.in: Regenerate with automake 1.9.2. |
| 355 | * doc/Makefile.in: Likewise. |
| 356 | |
| 357 | * config/tc-arm.c: Include "dw2gencfi.h". |
| 358 | (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions): |
| 359 | New functions. |
| 360 | * config/tc-arm.h (TARGET_USE_CFIPOP, DWARF2_DEFAULT_RETURN_COLUMN) |
| 361 | (DWARF2_CIE_DATA_ALIGNMENT, tc_regname_to_dw2regnum) |
| 362 | (tc_cfi_frame_initial_instructions): Define. |
| 363 | (tc_arm_regname_to_dw2regnum, tc_arm_frame_initial_instructions): |
| 364 | Add prototypes. |
| 365 | |
| 366 | 2004-10-21 Tomer Levi <Tomer.Levi@nsc.com> |
| 367 | |
| 368 | * config/tc-crx.c (assemble_insn): Check unsigned immediate |
| 369 | operands validity. |
| 370 | Update coprocessor id to be unsigned immediate. |
| 371 | |
| 372 | 2004-10-18 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com> |
| 373 | |
| 374 | * config/tc-i386.c (O_secrel): Delete. |
| 375 | (tc_pe_dwarf2_emit_offset): New function. |
| 376 | * config/tc-i386.h (O_secrel): Define as O_md1. |
| 377 | (TC_DWARF2_EMIT_OFFSET): Define. |
| 378 | |
| 379 | 2004-10-18 Nick Clifton <nickc@redhat.com> |
| 380 | |
| 381 | * config/tc-xstormy16.c (xstormy16_cons_fix_new): Accept and |
| 382 | ignore @fptr() directives for 4-byte fixups. |
| 383 | |
| 384 | 2004-10-15 Alan Modra <amodra@bigpond.net.au> |
| 385 | |
| 386 | * Makefile.am: Run "make dep-am" |
| 387 | * Makefile.in: Regenerate. |
| 388 | |
| 389 | 2004-10-14 Bob Wilson <bob.wilson@acm.org> |
| 390 | |
| 391 | * doc/c-xtensa.texi (Xtensa Options, Absolute Literals Directive): |
| 392 | Remove comments about placement of literal pools. |
| 393 | (Literal Directive): Update description of literal placement. |
| 394 | (Literal Prefix Directive): Remove statement that this does not apply |
| 395 | to absolute-mode literals. Describe new section naming scheme. |
| 396 | |
| 397 | 2004-10-12 Bob Wilson <bob.wilson@acm.org> |
| 398 | |
| 399 | * config/tc-xtensa.c (xtensa_frequency_pseudo): Use set_subseg_freq. |
| 400 | (is_entry_opcode, is_movi_opcode, is_the_loop_opcode, is_jx_opcode, |
| 401 | is_windowed_return_opcode): Delete. |
| 402 | (xtensa_frob_label): Use get_subseg_target_freq. |
| 403 | (md_assemble): Inline call to is_entry_opcode. |
| 404 | (xtensa_handle_align): Inline call to get_frag_is_literal. |
| 405 | (relaxation_requirements): Inline call to is_jx_opcode. |
| 406 | (emit_single_op): Inline call to is_movi_opcode. |
| 407 | (xg_assemble_vliw_tokens): Inline calls to get_frag_is_insn, |
| 408 | get_frag_is_no_transform, is_entry_opcode, and |
| 409 | set_frag_is_specific_opcode. Use get_subseg_total_freq. |
| 410 | (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags, |
| 411 | xtensa_fix_close_loop_end_frags, relax_frag_immed, convert_frag_immed): |
| 412 | Inline calls to get_frag_is_no_transform. |
| 413 | (next_instrs_are_b_retw): Inline call to is_windowed_return_opcode. |
| 414 | (xtensa_fix_short_loop_frags): Inline calls to is_the_loop_opcode and |
| 415 | get_frag_is_no_transform. |
| 416 | (convert_frag_immed_finish_loop): Inline calls to get_expression_value |
| 417 | and set_frag_is_no_transform. |
| 418 | (get_expression_value): Delete. |
| 419 | (subseg_map struct): Rename cur_total_freq to total_freq. Rename |
| 420 | cur_target_freq to target_freq. |
| 421 | (get_subseg_info): Split out code to create a new map entry into ... |
| 422 | (add_subseg_info): ... this new function. |
| 423 | (get_last_insn_flags): Check if get_subseg_info succeeded. |
| 424 | (set_last_insn_flags): Call add_subseg_info if needed. |
| 425 | (get_subseg_total_freq, get_subseg_target_freq, set_subseg_freq): New. |
| 426 | (xtensa_reorder_segments): Compute last_sec while counting sections. |
| 427 | Remove call to get_last_sec. |
| 428 | (get_last_sec): Delete. |
| 429 | (cache_literal_section): Inline call to retrieve_literal_seg and its |
| 430 | callees, seg_present and add_seg_list. |
| 431 | (retrieve_literal_seg, seg_present, add_seg_list): Delete. |
| 432 | (get_frag_is_insn, get_frag_is_no_transform, |
| 433 | set_frag_is_specific_opcode, set_frag_is_no_transform): Delete. |
| 434 | * config/tc-xtensa.h (MAX_SLOTS): Reduce from 31 to 15. |
| 435 | |
| 436 | 2004-10-12 Bob Wilson <bob.wilson@acm.org> |
| 437 | |
| 438 | * config/tc-xtensa.c: Use ISO C90 formatting. |
| 439 | * config/tc-xtensa.h: Likewise. |
| 440 | * config/xtensa-istack.h: Likewise. |
| 441 | * config/xtensa-relax.c: Likewise. |
| 442 | * config/xtensa-relax.h: Likewise. |
| 443 | |
| 444 | 2004-10-12 Paul Brook <paul@codesourcery.com> |
| 445 | |
| 446 | * config/tc-arm.c (md_begin): Change EF_ARM_EABI_VER3 to |
| 447 | EF_ARM_EABI_VER4. |
| 448 | (arm_eabis): Ditto. |
| 449 | * doc/c-arm.texi: Document that we actually support -meabi=4, not |
| 450 | -meabi=3. |
| 451 | |
| 452 | 2004-10-08 Bob Wilson <bob.wilson@acm.org> |
| 453 | |
| 454 | * doc/as.texinfo (VTableEntry, VTableInherit): Add "directive" to index |
| 455 | entries. |
| 456 | (Acknowledgements): Use "GAS" instead of AS variable. |
| 457 | |
| 458 | 2004-10-08 Daniel Jacobowitz <dan@debian.org> |
| 459 | |
| 460 | * config/tc-i386.c: Include "elf/x86-64.h". |
| 461 | (i386_elf_section_type): New function. |
| 462 | * config/tc-i386.h (md_elf_section_type): Define. |
| 463 | (i386_elf_section_type): New prototype. |
| 464 | |
| 465 | 2004-10-08 Linus Nielsen Feltzing <linus@haxx.se> |
| 466 | |
| 467 | * config/m68k-parse.h (enum m68k_register): New control register, |
| 468 | MBAR2 (for MCF5249) |
| 469 | * config/tc-m68k.c: Correct control register set for MCF5249. |
| 470 | |
| 471 | 2004-10-07 Bob Wilson <bob.wilson@acm.org> |
| 472 | Sterling Augustine <sterling@tensilica.com> |
| 473 | |
| 474 | * config/tc-xtensa.c (absolute_literals_supported): New global flag. |
| 475 | (UNREACHABLE_MAX_WIDTH): Define. |
| 476 | (XTENSA_FETCH_WIDTH): Delete. |
| 477 | (cur_vinsn, xtensa_fetch_width, xt_saved_debug_type, past_xtensa_end, |
| 478 | prefer_const16, prefer_l32r): New global variables. |
| 479 | (LIT4_SECTION_NAME): Define. |
| 480 | (lit4_state struct): Add lit4_seg_name and lit4_seg fields. |
| 481 | (XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define. |
| 482 | (frag_flags struct): New. |
| 483 | (xtensa_block_info struct): Move from tc-xtensa.h. Add flags field. |
| 484 | (subseg_map struct): Add cur_total_freq and cur_target_freq fields. |
| 485 | (bitfield, bit_is_set, set_bit, clear_bit): Define. |
| 486 | (MAX_FORMATS): Define. |
| 487 | (op_placement_info struct, op_placement_table): New. |
| 488 | (O_pltrel, O_hi16, O_lo16): Define. |
| 489 | (directiveE enum): Rename directive_generics to directive_transform. |
| 490 | Delete directive_relax. Add directive_schedule, |
| 491 | directive_absolute_literals, and directive_last_directive. |
| 492 | (directive_info): Rename "generics" to "transform". Delete "relax". |
| 493 | Add "schedule" and "absolute-literals". |
| 494 | (directive_state): Adjust entries to match changes in directive_info. |
| 495 | (xtensa_relax_statesE, RELAX_IMMED_MAXSTEPS): Move to tc-xtensa.h. |
| 496 | (xtensa_const16_opcode, xtensa_movi_opcode, xtensa_movi_n_opcode, |
| 497 | xtensa_l32r_opcode, xtensa_nop_opcode, xtensa_rsr_lcount_opcode): New. |
| 498 | (xtensa_j_opcode, xtensa_rsr_opcode): Delete. |
| 499 | (align_only_targets, software_a0_b_retw_interlock, |
| 500 | software_avoid_b_j_loop_end, maybe_has_b_j_loop_end, |
| 501 | software_avoid_short_loop, software_avoid_close_loop_end, |
| 502 | software_avoid_all_short_loops, specific_opcode): Delete. |
| 503 | (warn_unaligned_branch_targets): New. |
| 504 | (workaround_a0_b_retw, workaround_b_j_loop_end, workaround_short_loop, |
| 505 | workaround_close_loop_end, workaround_all_short_loops): Default FALSE. |
| 506 | (option_[no_]link_relax, option_[no_]transform, |
| 507 | option_[no_]absolute_literals, option_warn_unaligned_targets, |
| 508 | option_prefer_l32r, option_prefer_const16, option_target_hardware): |
| 509 | New enum values. |
| 510 | (option_[no_]align_only_targets, option_literal_section_name, |
| 511 | option_text_section_name, option_data_section_name, |
| 512 | option_bss_section_name, option_eb, option_el): Delete. |
| 513 | (md_longopts): Add entries for: [no-]transform, [no-]absolute-literals, |
| 514 | warn-unaligned-targets, prefer-l32r, prefer-const16, [no-]link-relax, |
| 515 | and target-hardware. Delete entries for [no-]target-align-only, |
| 516 | literal-section-name, text-section-name, data-section-name, and |
| 517 | bss-section-name. |
| 518 | (md_parse_option): Handle new options and remove old ones. Accept but |
| 519 | ignore [no-]density options. Warn for [no-]generics and [no-]relax |
| 520 | and treat them as [no-]transform. |
| 521 | (md_show_usage): Add new options and remove old ones. |
| 522 | (xtensa_setup_hw_workarounds): New. |
| 523 | (md_pseudo_table): Change "word" entry to use xtensa_elf_cons. Add |
| 524 | "long", "short", "loc" and "frequency" entries. |
| 525 | (use_generics): Rename to ... |
| 526 | (use_transform): ... this function. Add past_xtensa_end check. |
| 527 | (use_longcalls): Add past_xtensa_end check. |
| 528 | (code_density_available, can_relax): Delete. |
| 529 | (do_align_targets): New. |
| 530 | (get_directive): Accept dashes in directive names. Warn about |
| 531 | [no-]generics and [no-]relax directives and treat them as |
| 532 | [no-]transform. |
| 533 | (xtensa_begin_directive): Call md_flush_pending_output only for some |
| 534 | directives. Check for directives inside instruction bundles. Warn |
| 535 | about deprecated ".begin literal" usage. Warn and ignore [no-]density |
| 536 | directives. Handle new directives. Check generating_literals flag |
| 537 | for literal_prefix. |
| 538 | (xtensa_end_directive): Check for directives inside instruction |
| 539 | bundles. Warn and ignore [no-]density directives. Handle new |
| 540 | directives. Call xtensa_set_frag_assembly_state. |
| 541 | (xtensa_loc_directive_seen, xtensa_dwarf2_directive_loc, |
| 542 | xtensa_dwarf2_emit_insn): New. |
| 543 | (xtensa_literal_position): Call md_flush_pending_output. Do not check |
| 544 | use_literal_section flag. |
| 545 | (xtensa_literal_pseudo): Call md_flush_pending_output. Handle absolute |
| 546 | literals. Use xtensa_elf_cons to parse the expression. |
| 547 | (xtensa_literal_prefix): Do not check use_literal_section. Support |
| 548 | ".lit4" sections for absolute literals. Change prefix convention to |
| 549 | replace ".text" (or ".t" in a linkonce section). No need to call |
| 550 | subseg_set. |
| 551 | (xtensa_frequency_pseudo, xtensa_elf_cons, xtensa_elf_suffix): New. |
| 552 | (expression_end): Handle closing braces and colons. |
| 553 | (PLT_SUFFIX, plt_suffix): Delete. |
| 554 | (expression_maybe_register): Use new xtensa-isa.h functions. Use |
| 555 | xtensa_elf_suffix instead of checking for plt suffix, and handle O_lo16 |
| 556 | and O_hi16 expressions as well. |
| 557 | (tokenize_arguments): Handle closing braces and colons. |
| 558 | (parse_arguments): Use new xtensa-isa.h functions. Handle "invisible" |
| 559 | operands and paired register syntax. |
| 560 | (get_invisible_operands): New. |
| 561 | (xg_translate_sysreg_op): Handle new Xtensa LX RSR/WSR/XSR syntax. Use |
| 562 | new xtensa-isa.h functions. |
| 563 | (xtensa_translate_old_userreg_ops, xtensa_translate_zero_immed): New. |
| 564 | (xg_translate_idioms): Check if inside bundle. Use use_transform. |
| 565 | Handle new Xtensa LX RSR/WSR/XSR syntax. Remove code to widen density |
| 566 | instructions. Use xtensa_translate_zero_immed. |
| 567 | (operand_is_immed, operand_is_pcrel_label): Delete. |
| 568 | (get_relaxable_immed): Use new xtensa-isa.h functions. |
| 569 | (get_opcode_from_buf): Add slot parameter. Use new xtensa-isa.h |
| 570 | functions. |
| 571 | (xtensa_print_insn_table, print_vliw_insn): New. |
| 572 | (is_direct_call_opcode): Use new xtensa-isa.h functions. |
| 573 | (is_call_opcode, is_loop_opcode, is_conditional_branch_opcode, |
| 574 | is_branch_or_jump_opcode): Delete. |
| 575 | (is_movi_opcode, decode_reloc, encode_reloc, encode_alt_reloc): New. |
| 576 | (opnum_to_reloc, reloc_to_opnum): Delete. |
| 577 | (xtensa_insnbuf_set_operand, xtensa_insnbuf_get_operand): Use new |
| 578 | xtensa-isa.h functions. Operate on one slot of an instruction. |
| 579 | (xtensa_insnbuf_set_immediate_field, is_negatable_branch, |
| 580 | xg_get_insn_size): Delete. |
| 581 | (xg_get_build_instr_size): Use xg_get_single_size. |
| 582 | (xg_is_narrow_insn, xg_is_single_relaxable_insn): Update calls to |
| 583 | xg_build_widen_table. Use xg_get_single_size. |
| 584 | (xg_get_max_narrow_insn_size): Delete. |
| 585 | (xg_get_max_insn_widen_size, xg_get_max_insn_widen_literal_size, |
| 586 | xg_is_relaxable_insn): Update calls to xg_build_widen_table. Use |
| 587 | xg_get_single_size. |
| 588 | (xg_build_to_insn): Record the loc field. Handle OP_OPERAND_HI16U and |
| 589 | OP_OPERAND_LOW16U. Check xg_valid_literal_expression. |
| 590 | (xg_expand_to_stack, xg_expand_narrow): Update calls to |
| 591 | xg_build_widen_table. Use xg_get_single_size. |
| 592 | (xg_immeds_fit): Use new xtensa-isa.h functions. Update call to |
| 593 | xg_check_operand. |
| 594 | (xg_symbolic_immeds_fit): Likewise. Also handle O_lo16 and O_hi16, and |
| 595 | treat weak symbols conservatively. |
| 596 | (xg_check_operand): Use new xtensa-isa.h functions. |
| 597 | (is_dnrange): Delete. |
| 598 | (xg_assembly_relax): Inline previous calls to tinsn_copy. |
| 599 | (xg_finish_frag): Specify separate relax states for the frag and slot0. |
| 600 | (is_branch_jmp_to_next, xg_add_branch_and_loop_targets): Use new |
| 601 | xtensa-isa.h functions. |
| 602 | (xg_instruction_matches_option_term, xg_instruction_matches_or_options, |
| 603 | xg_instruction_matches_options): New. |
| 604 | (xg_instruction_matches_rule): Handle O_register expressions. Call |
| 605 | xg_instruction_matches_options. |
| 606 | (transition_rule_cmp): New. |
| 607 | (xg_instruction_match): Update call to xg_build_simplify_table. |
| 608 | (xg_build_token_insn): Record loc fields. |
| 609 | (xg_simplify_insn): Check is_specific_opcode field and |
| 610 | density_supported flag. |
| 611 | (xg_expand_assembly_insn): Skip checking code_density_available. Use |
| 612 | new xtensa-isa.h functions. Call use_transform instead of can_relax. |
| 613 | (xg_assemble_literal): Add error handling for O_big. Call |
| 614 | record_alignment. Handle O_pltrel. |
| 615 | (xg_valid_literal_expression): New. |
| 616 | (xg_assemble_literal_space): Add slot parameter. Remove call to |
| 617 | set_expr_symbol_offset. Add call to record_alignment. Update call to |
| 618 | xg_finish_frag. |
| 619 | (xg_emit_insn): Delete. |
| 620 | (xg_emit_insn_to_buf): Add format parameter. Update calls to |
| 621 | xg_add_opcode_fix and xtensa_insnbuf_to_chars. |
| 622 | (xg_add_opcode_fix): Change opcode parameter to tinsn and add format |
| 623 | and slot parameters. Handle new "alternate" relocations for absolute |
| 624 | literals and CONST16 instructions. Check for bad uses of O_lo16 and |
| 625 | O_hi16. Use new xtensa-isa.h functions. |
| 626 | (xg_assemble_tokens): Delete. |
| 627 | (is_register_writer): Use new xtensa-isa.h functions. |
| 628 | (is_bad_loopend_opcode): Check for xtensa_rsr_lcount_opcode instead of |
| 629 | old-style RSR from LCOUNT. |
| 630 | (next_frag_opcode): Delete. |
| 631 | (next_frag_opcode_is_loop, next_frag_format_size, frag_format_size, |
| 632 | update_next_frag_state): New. |
| 633 | (update_next_frag_nop_state): Delete. |
| 634 | (next_frag_pre_opcode_bytes): Use next_frag_opcode_is_loop. |
| 635 | (xtensa_mark_literal_pool_location): Check use_literal_section flag and |
| 636 | the state of the absolute-literals directive. Add calls to |
| 637 | record_alignment and xtensa_set_frag_assembly_state. Call |
| 638 | xtensa_switch_to_non_abs_literal_fragment instead of |
| 639 | xtensa_switch_to_literal_fragment. |
| 640 | (build_nop): New. |
| 641 | (assemble_nop): Use build_nop. Update call to xtensa_insnbuf_to_chars. |
| 642 | (get_expanded_loop_offset): Change check for undefined opcode to an |
| 643 | assertion. |
| 644 | (xtensa_set_frag_assembly_state, relaxable_section, |
| 645 | xtensa_find_unmarked_state_frags, xtensa_find_unaligned_branch_targets, |
| 646 | xtensa_find_unaligned_loops, xg_apply_tentative_value): New. |
| 647 | (md_begin): Update call to xtensa_isa_init. Initialize linkrelax to 1. |
| 648 | Set lit4_seg_name. Call xg_init_vinsn. Initialize new global opcodes. |
| 649 | Call init_op_placement_info_table and xtensa_set_frag_assembly_state. |
| 650 | (xtensa_init_fix_data): New. |
| 651 | (xtensa_frob_label): Reset label symbol to the current frag. Check |
| 652 | do_align_targets and generating_literals flag. Propagate frequency |
| 653 | info to new alignment frag. Call xtensa_set_frag_assembly_state. |
| 654 | (xtensa_unrecognized_line): New. |
| 655 | (xtensa_flush_pending_output): Check if inside a bundle. Add a call |
| 656 | to xtensa_set_frag_assembly_state. |
| 657 | (error_reset_cur_vinsn): New. |
| 658 | (md_assemble): Remove check for literal frag. Remove call to |
| 659 | istack_init. Call use_transform instead of use_generics. Parse |
| 660 | explicit instruction format specifiers. Move code for |
| 661 | a0_b_retw_interlock workaround to xg_assemble_vliw_tokens. Call |
| 662 | error_reset_cur_vinsn on errors. Add call to get_invisible_operands. |
| 663 | Add dwarf2_where call. Remote automatic alignment for ENTRY |
| 664 | instructions. Move call to xtensa_clear_insn_labels to the end. |
| 665 | Rearrange to handle bundles. |
| 666 | (xtensa_cons_fix_new): Delete. |
| 667 | (xtensa_handle_align): New. |
| 668 | (xtensa_frag_init): Call xtensa_set_frag_assembly_state. Remove |
| 669 | assignment to is_no_density field. |
| 670 | (md_pcrel_from): Use new xtensa-isa.h functions. Use decode_reloc |
| 671 | instead of reloc_to_opnum. Handle "alternate" relocations. |
| 672 | (xtensa_force_relocation, xtensa_check_inside_bundle, |
| 673 | xtensa_elf_section_change_hook): New. |
| 674 | (xtensa_symbol_new_hook): Delete. |
| 675 | (xtensa_fix_adjustable): Check for difference of symbols with an |
| 676 | offset. Check for external and weak symbols. |
| 677 | (md_apply_fix3): Remove cases for XTENSA_OP{0,1,2} relocs. |
| 678 | (md_estimate_size_before_relax): Return expansion for the first slot. |
| 679 | (tc_gen_reloc): Handle difference of symbols by producing |
| 680 | XTENSA_DIFF{8,16,32} relocs and by writing the value of the difference |
| 681 | into the output. Handle new XTENSA_SLOT*_OP relocs by storing the |
| 682 | tentative values into the output when linkrelax is set. |
| 683 | (XTENSA_PROP_SEC_NAME): Define. |
| 684 | (xtensa_post_relax_hook): Call xtensa_find_unmarked_state_frags. |
| 685 | Create literal tables only if using literal sections. Create new |
| 686 | property tables instead of old instruction tables. Check for unaligned |
| 687 | branch targets and loops. |
| 688 | (finish_vinsn, find_vinsn_conflicts, check_t1_t2_reads_and_writes, |
| 689 | new_resource_table, clear_resource_table, resize_resource_table, |
| 690 | resources_available, reserve_resources, release_resources, |
| 691 | opcode_funcUnit_use_unit, opcode_funcUnit_use_stage, |
| 692 | resources_conflict, xg_find_narrowest_format, relaxation_requirements, |
| 693 | bundle_single_op, emit_single_op, xg_assemble_vliw_tokens): New. |
| 694 | (xtensa_end): Call xtensa_flush_pending_output. Set past_xtensa_end |
| 695 | flag. Update checks for workaround options. Call |
| 696 | xtensa_mark_narrow_branches and xtensa_mark_zcl_first_insns. |
| 697 | (xtensa_cleanup_align_frags): Add special case for branch targets. |
| 698 | Check for and mark unreachable frags. |
| 699 | (xtensa_fix_target_frags): Remove use of align_only_targets flag. |
| 700 | Use RELAX_LOOP_END_BYTES in special case for negatable branch at the |
| 701 | end of a zero-overhead loop body. |
| 702 | (frag_can_negate_branch): Handle instructions with multiple slots. |
| 703 | Use new xtensa-isa.h functions |
| 704 | (xtensa_mark_narrow_branches, is_narrow_branch_guaranteed_in_range, |
| 705 | xtensa_mark_zcl_first_insns): New. |
| 706 | (xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags): Error if |
| 707 | transformations are disabled. |
| 708 | (next_instrs_are_b_retw): Use new xtensa-isa.h functions. Handle |
| 709 | multislot instructions. |
| 710 | (xtensa_fix_close_loop_end_frags, xtensa_fix_short_loop_frags): |
| 711 | Likewise. Also error if transformations are disabled. |
| 712 | (unrelaxed_frag_max_size): New. |
| 713 | (unrelaxed_frag_min_insn_count, unrelax_frag_has_b_j): Use new |
| 714 | xtensa-isa.h functions. |
| 715 | (xtensa_sanity_check, is_empty_loop, is_local_forward_loop): Use |
| 716 | xtensa_opcode_is_loop instead of is_loop_opcode. |
| 717 | (get_text_align_power): Replace as_fatal with assertion. |
| 718 | (get_text_align_fill_size): Iterate instead of using modulus when |
| 719 | use_nops is false. |
| 720 | (get_noop_aligned_address): Assert that this is for a machine-dependent |
| 721 | RELAX_ALIGN_NEXT_OPCODE frag. Use next_frag_opcode_is_loop, |
| 722 | xg_get_single_size, and frag_format_size. |
| 723 | (get_widen_aligned_address): Rename to ... |
| 724 | (get_aligned_diff): ... this function. Add max_diff parameter. |
| 725 | Remove handling of rs_align/rs_align_code frags. Use |
| 726 | next_frag_format_size, get_text_align_power, get_text_align_fill_size, |
| 727 | next_frag_opcode_is_loop, and xg_get_single_size. Compute max_diff |
| 728 | and pass it back to caller. |
| 729 | (xtensa_relax_frag): Use relax_frag_loop_align. Add code for new |
| 730 | RELAX_SLOTS, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, |
| 731 | RELAX_FILL_NOP, and RELAX_UNREACHABLE frag types. Check relax_seen. |
| 732 | (relax_frag_text_align): Rename to ... |
| 733 | (relax_frag_loop_align): ... this function. Assume loops can only be |
| 734 | in the first slot of an instruction. |
| 735 | (relax_frag_add_nop): Use assemble_nop instead of constructing an OR |
| 736 | instruction. Remove call to frag_wane. |
| 737 | (relax_frag_narrow): Rename to ... |
| 738 | (relax_frag_for_align): ... this function. Extend to handle |
| 739 | RELAX_FILL_NOP and RELAX_UNREACHABLE, as well as RELAX_SLOTS with |
| 740 | RELAX_NARROW for the first slot. |
| 741 | (find_address_of_next_align_frag, bytes_to_stretch): New. |
| 742 | (future_alignment_required): Use find_address_of_next_align_frag and |
| 743 | bytes_to_stretch. Look ahead to subsequent frags to make smarter |
| 744 | alignment decisions. |
| 745 | (relax_frag_immed): Add format, slot, and estimate_only parameters. |
| 746 | Check if transformations are enabled for b_j_loop_end workaround. |
| 747 | Use new xtensa-isa.h functions and handle multislot instructions. |
| 748 | Update call to xg_assembly_relax. |
| 749 | (md_convert_frag): Handle new RELAX_SLOTS, RELAX_UNREACHABLE, |
| 750 | RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, and RELAX_FILL_NOP |
| 751 | frag types. |
| 752 | (convert_frag_narrow): Add segP, format and slot parameters. Call |
| 753 | convert_frag_immed for branch instructions. Adjust calls to |
| 754 | tinsn_from_chars, tinsn_immed_from_frag, and xg_emit_insn_to_buf. Use |
| 755 | xg_get_single_size and xg_get_single_format. |
| 756 | (convert_frag_fill_nop): New. |
| 757 | (convert_frag_immed): Add format and slot parameters. Handle multislot |
| 758 | instructions and use new xtensa-isa.h functions. Update calls to |
| 759 | tinsn_immed_from_frag and xg_assembly_relax. Check if transformations |
| 760 | enabled for b_j_loop_end workaround. Use build_nop instead of |
| 761 | assemble_nop. Check is_specific_opcode flag. Check for unreachable |
| 762 | frags. Use xg_get_single_size. Handle O_pltrel. |
| 763 | (fix_new_exp_in_seg): Remove check for old plt flag. |
| 764 | (convert_frag_immed_finish_loop): Update calls to tinsn_from_chars and |
| 765 | xtensa_insnbuf_to_chars. Call tinsn_immed_from_frag. Change check |
| 766 | for loop opcode to an assertion. Mark all frags up to the end of the |
| 767 | loop as not transformable. |
| 768 | (get_last_insn_flags, set_last_insn_flags): Use get_subseg_info. |
| 769 | (get_subseg_info): New. |
| 770 | (xtensa_move_literals): Call xtensa_set_frag_assembly_state. Add null |
| 771 | check for dest_seg. |
| 772 | (xtensa_switch_to_literal_fragment): Rewrite to handle absolute |
| 773 | literals and use xtensa_switch_to_non_abs_literal_fragment otherwise. |
| 774 | (xtensa_switch_to_non_abs_literal_fragment): New. |
| 775 | (cache_literal_section): Add is_code parameter and pass it through to |
| 776 | retrieve_literal_seg. |
| 777 | (retrieve_literal_seg): Add is_code parameter and use it to set the |
| 778 | flags on the literal section. Handle case where head parameter is 0. |
| 779 | (get_frag_is_no_transform, set_frag_is_specific_opcode, |
| 780 | set_frag_is_no_transform): New. |
| 781 | (xtensa_create_property_segments): Add end_property_function parameter |
| 782 | and pass it through to add_xt_block_frags. Call bfd_get_section_flags |
| 783 | and skip SEC_DEBUGGING and !SEC_ALLOC sections. |
| 784 | (xtensa_create_xproperty_segments, section_has_xproperty): New. |
| 785 | (add_xt_block_frags): Add end_property_function parameter and call it |
| 786 | if it is non-zero. Call xtensa_frag_flags_init. |
| 787 | (xtensa_frag_flags_is_empty, xtensa_frag_flags_init, |
| 788 | get_frag_property_flags, frag_flags_to_number, |
| 789 | xtensa_frag_flags_combinable, xt_block_aligned_size, |
| 790 | xtensa_xt_block_combine, add_xt_prop_frags, |
| 791 | init_op_placement_info_table, opcode_fits_format_slot, |
| 792 | xg_get_single_size, xg_get_single_format): New. |
| 793 | (istack_push): Inline call to tinsn_copy. |
| 794 | (tinsn_copy): Delete. |
| 795 | (tinsn_has_invalid_symbolic_operands): Handle O_hi16 and O_lo16 and |
| 796 | CONST16 opcodes. Handle O_big, O_illegal, and O_absent. |
| 797 | (tinsn_has_complex_operands): Handle O_hi16 and O_lo16. |
| 798 | (tinsn_to_insnbuf): Use xg_get_single_format and new xtensa-isa.h |
| 799 | functions. Handle invisible operands. |
| 800 | (tinsn_to_slotbuf): New. |
| 801 | (tinsn_check_arguments): Use new xtensa-isa.h functions. |
| 802 | (tinsn_from_chars): Add slot parameter. Rewrite using xg_init_vinsn, |
| 803 | vinsn_from_chars, and xg_free_vinsn. |
| 804 | (tinsn_from_insnbuf): New. |
| 805 | (tinsn_immed_from_frag): Add slot parameter and handle multislot |
| 806 | instructions. Handle symbol differences. |
| 807 | (get_num_stack_text_bytes): Use xg_get_single_size. |
| 808 | (xg_init_vinsn, xg_clear_vinsn, vinsn_has_specific_opcodes, |
| 809 | xg_free_vinsn, vinsn_to_insnbuf, vinsn_from_chars, expr_is_register, |
| 810 | get_expr_register, set_expr_symbol_offset_diff): New. |
| 811 | * config/tc-xtensa.h (MAX_SLOTS): Define. |
| 812 | (xtensa_relax_statesE): Move from tc-xtensa.c. Add |
| 813 | RELAX_CHECK_ALIGN_NEXT_OPCODE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_SLOTS, |
| 814 | RELAX_FILL_NOP, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, and |
| 815 | RELAX_NONE types. |
| 816 | (RELAX_IMMED_MAXSTEPS): Move from tc-xtensa.c. |
| 817 | (xtensa_frag_type struct): Add is_assembly_state_set, |
| 818 | use_absolute_literals, relax_seen, is_unreachable, is_specific_opcode, |
| 819 | is_align, is_text_align, alignment, and is_first_loop_insn fields. |
| 820 | Replace is_generics and is_relax fields by is_no_transform field. |
| 821 | Delete is_text and is_longcalls fields. Change text_expansion and |
| 822 | literal_expansion to arrays of MAX_SLOTS entries. Add arrays of |
| 823 | per-slot information: literal_frags, slot_subtypes, slot_symbols, |
| 824 | slot_sub_symbols, and slot_offsets. Add fr_prev field. |
| 825 | (xtensa_fix_data struct): New. |
| 826 | (xtensa_symfield_type struct): Delete plt field. |
| 827 | (xtensa_block_info struct): Move definition to tc-xtensa.h. Add |
| 828 | forward declaration here. |
| 829 | (xt_section_type enum): Delete xt_insn_sec. Add xt_prop_sec. |
| 830 | (XTENSA_SECTION_RENAME): Undefine. |
| 831 | (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FORCE_RELOCATION, NO_PSEUDO_DOT, |
| 832 | tc_unrecognized_line, md_do_align, md_elf_section_change_hook, |
| 833 | HANDLE_ALIGN, TC_LINKRELAX_FIXUP, SUB_SEGMENT_ALIGN): Define. |
| 834 | (TC_CONS_FIX_NEW, tc_symbol_new_hook): Delete. |
| 835 | (unit_num_copies_func, opcode_num_units_func, |
| 836 | opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func): New. |
| 837 | (resource_table struct): New. |
| 838 | * config/xtensa-istack.h (MAX_INSN_ARGS): Increase from 6 to 10. |
| 839 | (TInsn struct): Add keep_wide, loc, fixup, record_fix, subtype, |
| 840 | literal_space, symbol, sub_symbol, offset, and literal_frag fields. |
| 841 | (tinsn_copy): Delete prototype. |
| 842 | (vliw_insn struct): New. |
| 843 | * config/xtensa-relax.c (insn_pattern_struct): Add options field. |
| 844 | (widen_spec_list): Add option conditions for density and boolean |
| 845 | instructions. Add expansions using CONST16 and conditions for using |
| 846 | CONST16 vs. L32R. Use new Xtensa LX RSR/WSR syntax. Add entries for |
| 847 | predicted branches. |
| 848 | (simplify_spec_list): Add option conditions for density instructions. |
| 849 | Add entry for NOP instruction. |
| 850 | (append_transition): Add cmp function pointer parameter and use it to |
| 851 | insert the new entry in order. |
| 852 | (operand_function_LOW16U, operand_function_HI16U): New. |
| 853 | (xg_has_userdef_op_fn, xg_apply_userdef_op_fn): Handle |
| 854 | OP_OPERAND_LOW16U and OP_OPERAND_HI16U. |
| 855 | (enter_opname, split_string): Use xstrdup instead of strdup. |
| 856 | (init_insn_pattern): Initialize new options field. |
| 857 | (clear_req_or_option_list, clear_req_option_list, |
| 858 | clone_req_or_option_list, clone_req_option_list, parse_option_cond): |
| 859 | New. |
| 860 | (parse_insn_pattern): Parse option conditions. |
| 861 | (transition_applies): New. |
| 862 | (build_transition): Use new xtensa-isa.h functions. Fix incorrectly |
| 863 | swapped last arguments in calls to append_constant_value_condition. |
| 864 | Call clone_req_option_list. Add warning about invalid opcode. |
| 865 | Handle LOW16U and HI16U function names. |
| 866 | (build_transition_table): Add cmp parameter and use it in calls to |
| 867 | append_transition. Use new xtensa-isa.h functions. Check |
| 868 | transition_applies before adding entries. |
| 869 | (xg_build_widen_table, xg_build_simplify_table): Add cmp parameter and |
| 870 | pass it through to build_transition_table. |
| 871 | * config/xtensa-relax.h (ReqOrOptionList, ReqOrOption, ReqOptionList, |
| 872 | ReqOption, transition_cmp_fn): New types. |
| 873 | (OpType enum): Add OP_OPERAND_LOW16U and OP_OPERAND_HI16U. |
| 874 | (transition_rule struct): Add options field. |
| 875 | * doc/as.texinfo (Overview): Update Xtensa options. |
| 876 | * doc/c-xtensa.texi (Xtensa Options): Delete --[no-]density, |
| 877 | --[no-]relax, and --[no-]generics options. Update descriptions of |
| 878 | --text-section-literals and --[no-]longcalls. Add |
| 879 | --[no-]absolute-literals and --[no-]transform. |
| 880 | (Xtensa Syntax): Add description of syntax for FLIX instructions. |
| 881 | Remove use of "generic" and "specific" terminology for opcodes. |
| 882 | (Xtensa Registers): Generalize the syntax description to include |
| 883 | user-defined register files. |
| 884 | (Xtensa Automatic Alignment): Update. |
| 885 | (Xtensa Branch Relaxation): Mention limitation of unconditional jumps. |
| 886 | (Xtensa Call Relaxation): Linker can now remove most of the overhead. |
| 887 | (Xtensa Directives): Remove confusing rules about precedence. |
| 888 | (Density Directive, Relax Directive): Delete. |
| 889 | (Schedule Directive): New. |
| 890 | (Generics Directive): Rename to ... |
| 891 | (Transform Directive): ... this node. |
| 892 | (Literal Directive): Update for absolute literals. Missing |
| 893 | literal_position directive is now an error. |
| 894 | (Literal Position Directive): Update for absolute literals. |
| 895 | (Freeregs Directive): Delete. |
| 896 | (Absolute Literals Directive): New. |
| 897 | (Frame Directive): Minor editing. |
| 898 | * Makefile.am (DEPTC_xtensa_elf, DEPOBJ_xtensa_elf, DEP_xtensa_elf): |
| 899 | Update dependencies. |
| 900 | * Makefile.in: Regenerate. |
| 901 | |
| 902 | 2004-10-07 Richard Sandiford <rsandifo@redhat.com> |
| 903 | |
| 904 | * config/tc-mips.c (append_insn): Use fix_new rather than fix_new_exp |
| 905 | to build the second and third fixups for a composite relocation. |
| 906 | (macro_read_relocs): New function. |
| 907 | (macro_build): Use it. |
| 908 | (s_cpsetup): Pass all three composite relocation codes to macro_build. |
| 909 | Simplify fragging code accordingly. |
| 910 | (s_gpdword): Use fix_new rather than fix_new_exp for the second part |
| 911 | of the composite relocation. Set fx_tcbit in both fixups. |
| 912 | |
| 913 | 2004-10-07 Richard Sandiford <rsandifo@redhat.com> |
| 914 | |
| 915 | * config/tc-mips.c (append_insn): Set fx_tcbit for composite relocs. |
| 916 | (md_apply_fix3): Don't treat composite relocs as done. |
| 917 | |
| 918 | 2004-10-07 Jan Beulich <jbeulich@novell.com> |
| 919 | |
| 920 | * macro.c (macro_expand_body): When ELF, use .LL rather than LL as |
| 921 | prefix for symbol names generated from the LOCAL macro directive. |
| 922 | |
| 923 | * dw2gencfi.c (select_cie_for_fde): When separating CIE out from |
| 924 | FDE, treat a DW_CFA_remember_state as we do a DW_CFA_advance_loc. |
| 925 | |
| 926 | 2004-10-07 Tomer Levi <Tomer.Levi@nsc.com> |
| 927 | |
| 928 | * config/tc-crx.c (preprocess_reglist): Handle Co-processor |
| 929 | Special registers. |
| 930 | (md_assemble): Add error checking for Co-Processor instructions. |
| 931 | (get_cinv_parameters): Add 'b' option to invalidate the |
| 932 | branch-target cache. |
| 933 | |
| 934 | 2004-10-05 Paul Brook <paul@codesourcery.com> |
| 935 | |
| 936 | * config/tc-arm.c (unwind): New variable. |
| 937 | (vfp_sp_encode_reg): New function. |
| 938 | (vfp_sp_reg_required_here): Use it. |
| 939 | (vfp_sp_reg_list, vfp_dp_reg_list): Remove. |
| 940 | (vfp_parse_reg_list): New function. |
| 941 | (s_arm_unwind_fnstart, s_arm_unwind_fnend, s_arm_unwind_cantunwind, |
| 942 | s_arm_unwind_personality, s_arm_unwind_personalityindex, |
| 943 | s_arm_unwind_handlerdata, s_arm_unwind_save, s_arm_unwind_movsp, |
| 944 | s_arm_unwind_pad, s_arm_unwind_setfp, s_arm_unwind_raw): New |
| 945 | functions. |
| 946 | (md_pseudo_table): Add them. |
| 947 | (do_vfp_reg2_from_sp2): Use vfp_parse_reg_list and vfp_sp_encode_reg. |
| 948 | (do_vfp_sp2_from_reg2, vfp_sp_ldstm, vfp_dp_ldstm): Ditto. |
| 949 | (set_section, add_unwind_adjustsp, flush_pending_unwind, |
| 950 | finish_unwind_opcodes, start_unwind_section, create_unwind_entry, |
| 951 | require_hashconst, add_unwind_opcode): New functions. |
| 952 | * doc/tc-arm.text: Document unwinding opcodes. |
| 953 | * NEWS: Mention the new feature. |
| 954 | |
| 955 | 2004-10-04 Eric Christopher <echristo@redhat.com> |
| 956 | |
| 957 | * config/tc-mips.c (md_apply_fix3): Remove erroneous assert. |
| 958 | |
| 959 | 2004-10-01 H.J. Lu <hongjiu.lu@intel.com> |
| 960 | |
| 961 | * config/tc-ppc.c (md_apply_fix3): Call S_SET_THREAD_LOCAL for |
| 962 | TLS relocations. |
| 963 | * config/tc-s390.c (md_apply_fix3): Likewise. |
| 964 | * config/tc-sparc.c (md_apply_fix3): Likewise. |
| 965 | |
| 966 | 2004-10-01 Paul Brook <paul@codesourcery.com> |
| 967 | |
| 968 | * config/tc-arm.c (arm_elf_section_type): New function. |
| 969 | (arm_elf_change_section): Set section link for exidx sections. |
| 970 | * config/tc-arm.h (arm_elf_section_type): Add prototype. |
| 971 | (md_elf_section_type): Define. |
| 972 | |
| 973 | 2004-10-01 Bill Farmer <Bill@the-farmers.freeserve.co.uk> |
| 974 | |
| 975 | * config/tc-pdp11.c (md_apply_fix3): Change to sign of the SOB |
| 976 | instruction's offset. |
| 977 | |
| 978 | 2004-10-01 Adam Nemet <anemet@lnxw.com> |
| 979 | |
| 980 | * (TARGET_FORMAT): Remove LynxOS COFF definition. |
| 981 | |
| 982 | 2004-10-01 Ravi Ramaseshan <ravi.ramaseshan@codito.com> |
| 983 | |
| 984 | * config/tc-arc.c (tc_gen_reloc): Don't assume fixP->fx_addsy is an |
| 985 | asymbol *, instead use symbol_get_bfdsym. |
| 986 | |
| 987 | 2004-09-30 Linus Nielsen Feltzing <linus@haxx.se> |
| 988 | |
| 989 | * config/tc-m68k.c (select_control_regs): Add mcf5249. |
| 990 | |
| 991 | 2004-09-30 Paul Brook <paul@codesourcery.com> |
| 992 | |
| 993 | * config/tc-arm.c (do_smi, do_nop): New functions. |
| 994 | (insns): Add ARMv6ZK instructions. |
| 995 | (md_apply_fix3): Handle BFD_RELOC_ARM_SMI. |
| 996 | (tc_gen_reloc): Ditto. |
| 997 | (arm_cpus): Add mpcore and arm1176. |
| 998 | (arm_archs): Add armv6{k,z,zk}. |
| 999 | * doc/c-arm.texi: Document new cores and architectures. |
| 1000 | |
| 1001 | 2004-09-30 Nick Clifton <nickc@redhat.com> |
| 1002 | |
| 1003 | * config/tc-arm.c: Use ISO C90 formatting. |
| 1004 | |
| 1005 | 2004-09-30 Vladimir Ivanov <vladitx@nucleusys.com> |
| 1006 | |
| 1007 | * config/tc-arm.c (mav_reg_required_here): Allow REG_TYPE_CN |
| 1008 | as alternative when REG_TYPE_MVF, REG_TYPE_MVD, REG_TYPE_MVFX or |
| 1009 | REG_TYPE_MVDX is expected. |
| 1010 | |
| 1011 | 2004-09-29 Marc Bevand <m.bevand@gmail.com> |
| 1012 | |
| 1013 | * doc/c-i386.texi (i386-Mnemonics): Fix typo. |
| 1014 | |
| 1015 | 2004-09-21 James E Wilson <wilson@specifixinc.com> |
| 1016 | |
| 1017 | * config/tc-ia64.c (ENCODED_PSP_OFFSET): New. |
| 1018 | (output_rp_psprel, output_pfs_psprel, output_preds_psprel, |
| 1019 | output_spill_base, output_unat_psprel, output_lc_psprel, |
| 1020 | output_fpsr_psprel, output_priunat_psprel, output_bsp_psprel, |
| 1021 | output_bsprestore_psprel, output_rnat_psprel, output_spill_psprel, |
| 1022 | output_spill_psprel_p): Use it. |
| 1023 | |
| 1024 | 2004-09-20 Tomer Levi <Tomer.Levi@nsc.com> |
| 1025 | |
| 1026 | * config/tc-crx.c (handle_LoadStor): New function. |
| 1027 | Handle load/stor unique instructions before parsing. |
| 1028 | |
| 1029 | 2004-09-17 Paul Brook <paul@codesourcery.com> |
| 1030 | |
| 1031 | * config/tc-arm.c (s_arm_rel31): New funciton. |
| 1032 | (md_pseudo_table): Add .rel31. |
| 1033 | (md_apply_fix3): Handle BFD_RELOC_ARM_TARGET2, |
| 1034 | BFD_RELOC_32_PCREL and BFD_RELOC_ARM_PREL31. |
| 1035 | (tc_gen_reloc): Handle BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2. |
| 1036 | (arm_fix_adjustable): Return 0 for BFD_RELOC_ARM_TARGET2. |
| 1037 | (arm_parse_reloc): Add (target2). |
| 1038 | |
| 1039 | 2004-09-17 Alan Modra <amodra@bigpond.net.au> |
| 1040 | |
| 1041 | * Makefile.am: Run "make dep-am". |
| 1042 | * Makefile.in: Regenerate. |
| 1043 | * aclocal.m4: Regenerate. |
| 1044 | * configure: Regenerate. |
| 1045 | * doc/Makefile.in: Regenerate. |
| 1046 | * po/POTFILES.in: Regenerate. |
| 1047 | * po/gas.pot: Regenerate. |
| 1048 | |
| 1049 | 2004-09-14 Hideki IWAMOTO <h-iwamoto@kit.hi-ho.ne.jp> |
| 1050 | |
| 1051 | * config/tc-mmix.c [!LLONG_MIN]: Correct #elsif to #elif. |
| 1052 | [!LLONG_MAX]: Ditto. |
| 1053 | |
| 1054 | 2004-09-13 Paul Brook <paul@codesourcery.com> |
| 1055 | |
| 1056 | * config/tc-arm.c: Rename RELABS to TARGET1. |
| 1057 | |
| 1058 | 2004-09-13 Alan Modra <amodra@bigpond.net.au> |
| 1059 | |
| 1060 | * messages.c (as_internal_value_out_of_range): Cast values passed |
| 1061 | to as_bad_where or as_warn_where to proper type. |
| 1062 | |
| 1063 | 2004-09-11 Theodore A. Roth <troth@openavr.org> |
| 1064 | |
| 1065 | * config/tc-avr.c: Add support for |
| 1066 | atmega48, atmega88, atmega168, attiny13, attiny2313, at90can128. |
| 1067 | |
| 1068 | 2004-09-09 Alan Modra <amodra@bigpond.net.au> |
| 1069 | |
| 1070 | * dw2gencfi.c (select_cie_for_fde): When separating CIE out |
| 1071 | from FDE, treat a CFI_escape as we do a DW_CFA_advance_loc. |
| 1072 | |
| 1073 | 2004-09-08 Paul Brook <paul@codesourcery.com> |
| 1074 | |
| 1075 | * config/obj-elf.c (obj_elf_section_type): Handle init_array, |
| 1076 | fini_array and preinit_array section types. |
| 1077 | * config/tc-ia64.c (ia64_elf_section_type): Remove init_array |
| 1078 | and fini_array. |
| 1079 | * doc/as.texinfo: Document extra section types. |
| 1080 | |
| 1081 | 2004-09-02 Mark Mitchell <mark@codesourcery.com> |
| 1082 | |
| 1083 | * Makefile.am (TARG_ENV_HFILES): Add te-symbian.h. |
| 1084 | * Makefile.in: Regenerated. |
| 1085 | * configure.in: Set em for arm*-*-symbianelf*. |
| 1086 | * configure: Regenerated. |
| 1087 | * config/tc-arm.c (elf32_arm_target_format): Use Symbian target |
| 1088 | vectors when appropriate. |
| 1089 | * config/te-symbian.h: New file. |
| 1090 | |
| 1091 | 2004-09-03 Tomer Levi <Tomer.Levi@nsc.com> |
| 1092 | |
| 1093 | * config/tc-crx.c (gettrap): Exception vector can be case |
| 1094 | insensitive. |
| 1095 | (process_label_constant): Fix a 32-bit displacement bug in branch |
| 1096 | instructions. |
| 1097 | (get_operandtype) : Bug fix, wrong operand was used. |
| 1098 | (process_label_constant): Initialize relocation type to |
| 1099 | BFD_RELOC_NONE |
| 1100 | |
| 1101 | 2004-09-01 Richard Earnshaw < reanrsha@arm.com> |
| 1102 | |
| 1103 | * tc-arm.c (arm_cpus, arm_fpus): Allow <cpu>-s as well as <cpu>s |
| 1104 | for synthesizable cores. |
| 1105 | |
| 1106 | * doc/c-arm.texi (ARM Options): Document canonical names of CPUs. |
| 1107 | |
| 1108 | 2004-08-25 Dmitry Diky <diwil@spec.ru> |
| 1109 | |
| 1110 | * config/tc-msp430.c: Clean-up the code. |
| 1111 | (md_relax_table): New relax table. |
| 1112 | (mcu_types): Sort MCU types. |
| 1113 | (md_pseudo_table): Add .profiler pseudo handler. |
| 1114 | (pow2value): New function. |
| 1115 | (msp430_profiler): New function. |
| 1116 | (msp430_operands): Add new insns handlers. |
| 1117 | (msp430_srcoperand): Add register operand handler, allow complex |
| 1118 | expressions. |
| 1119 | (md_estimate_size_before_relax): Rewritten. |
| 1120 | (md_convert_frag): Rewritten. |
| 1121 | (msp430_relax_frag): New function. |
| 1122 | * config/tc-msp430.h (md_relax_frag): define macro |
| 1123 | * doc/c-msp430.texi: Update information. |
| 1124 | |
| 1125 | 2004-08-24 Nick Clifton <nickc@redhat.com> |
| 1126 | |
| 1127 | * as.c (std_shortopts): Allow -g to take an optional argument. |
| 1128 | (parse_args): Pass any switch starting with -g on to the backend |
| 1129 | for parsing. |
| 1130 | |
| 1131 | 2004-08-18 Mark Mitchell <mark@codesourcery.com> |
| 1132 | |
| 1133 | * configure.in (arm*-*-symbianelf*): New target. |
| 1134 | (arm*-*-eabi*): Likewise. |
| 1135 | * configure: Regenerated. |
| 1136 | |
| 1137 | 2004-08-18 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 1138 | * config/tc-mips.c (append_insn): Handle delay slots in branch likely |
| 1139 | correctly. |
| 1140 | |
| 1141 | 2004-08-18 Jakub Jelinek <jakub@redhat.com> |
| 1142 | |
| 1143 | * config/tc-ia64.c (start_unwind_section): Add linkonce_empty |
| 1144 | argument, don't do anything if current section is not |
| 1145 | .gnu.linkonce.t.* and linkonce_empty is set. |
| 1146 | (generate_unwind_image, dot_endp): Adjust callers, call |
| 1147 | start_unwind_section (*, 1) if nothing will be put into the |
| 1148 | section. |
| 1149 | |
| 1150 | 2004-08-17 Nick Clifton <nickc@redhat.com> |
| 1151 | |
| 1152 | * as.c (MD_DEBUG_FORMAT_SELECTOR): Provide default definition. |
| 1153 | (show_usage): Add -g. |
| 1154 | (std_longopts): Add --gen-debug. Alpha sort the table. |
| 1155 | (parse_args): Print an error message if a switch is not handled. |
| 1156 | Handle the -g switch, calling md_debug_format_selector() if |
| 1157 | necessary. |
| 1158 | * NEWS: Mention new feature. |
| 1159 | * doc/as.texinfo: Document new switch. |
| 1160 | * doc/internals.texi: Document behaviour of md_parse_option. |
| 1161 | |
| 1162 | * config/tc-arm.c (md_parse_option): Do not issue an error message |
| 1163 | if the switch is not recognised. |
| 1164 | * config/tc-m68k.c (md_parse_option): Likewise. |
| 1165 | * config/tc-pdp11.c (md_parse_option): Likewise. |
| 1166 | * config/tc-v850.c (md_parse_option): Likewise. |
| 1167 | |
| 1168 | * as.h: Fix up formatting. |
| 1169 | * tc.h: Likewise. |
| 1170 | |
| 1171 | 2004-08-16 Nick Clifton <nickc@redhat.com> |
| 1172 | |
| 1173 | * macro.c (macro_set_alternate): Use ISO C90 formatting. |
| 1174 | |
| 1175 | * configure.in: Sort architecture based tables alphabetically. |
| 1176 | * configure: Regenerate. |
| 1177 | |
| 1178 | 2004-08-16 Alan Modra <amodra@bigpond.net.au> |
| 1179 | |
| 1180 | * config/tc-ppc.c (tc_ppc_regname_to_dw2regnum <regnames>): Replace |
| 1181 | { "cc", 68 }, with { "cr", 70 }. |
| 1182 | |
| 1183 | 2004-08-13 Jan Beulich <jbeulich@novell.com> |
| 1184 | Nick Clifton <nickc@redhat.com> |
| 1185 | |
| 1186 | * as.c: Add and handle new --alternate command line option. |
| 1187 | * macro.c (macro_set_alternate): New. |
| 1188 | * macro.h (macro_set_alternate): Declare. |
| 1189 | * read.c: Add and handle new .altmacro and .noaltmacro directives. |
| 1190 | * doc/as.texinfo: Document new command line option and pseudo-ops |
| 1191 | as well as insert documentation originating from gasp about |
| 1192 | alternate macro syntax. |
| 1193 | * NEWS: Mention new command line option and pseudo-ops. |
| 1194 | |
| 1195 | 2004-08-10 Mark Mitchell <mark@codesourcery.com> |
| 1196 | |
| 1197 | * expr.c (operand): Handle the "~", "-", and "!" operators applied |
| 1198 | to bignums. |
| 1199 | |
| 1200 | 2004-08-06 Paul Brook <paul@codesourcery.com> |
| 1201 | |
| 1202 | * config/tc-arm.c (md_apply_fix3, tc_gen_reloc, arm_parse_reloc): |
| 1203 | Handle new relocations. |
| 1204 | * include/elf/arm.h (elf_arm_reloc_type): Add new EABI relocations. |
| 1205 | |
| 1206 | 2004-08-05 Bob Wilson <bob.wilson@acm.org> |
| 1207 | |
| 1208 | * write.c (relax_segment): Use was_address instead of address when |
| 1209 | setting fr_fix field for align frag due to backwards .org. |
| 1210 | |
| 1211 | 2004-07-29 Alexandre Oliva <aoliva@redhat.com> |
| 1212 | |
| 1213 | Introduce SH2a support. |
| 1214 | 2004-02-24 Corinna Vinschen <vinschen@redhat.com> |
| 1215 | * config/tc-sh.c (get_specific): Change arch_sh2a_up to |
| 1216 | arch_sh2a_nofpu_up. |
| 1217 | 2004-02-24 Corinna Vinschen <vinschen@redhat.com> |
| 1218 | * config/tc-sh.c (md_parse_option): Add sh2a-nofpu ISA handling. |
| 1219 | 2004-02-20 Corinna Vinschen <vinschen@redhat.com> |
| 1220 | * config/tc-sh.c (sh_elf_final_processing): Move sh2a recognition |
| 1221 | to end of conditional expression. |
| 1222 | 2004-02-20 Corinna Vinschen <vinschen@redhat.com> |
| 1223 | * config/tc-sh.c: Add sh2a-nofpu support. |
| 1224 | 2003-12-29 DJ Delorie <dj@redhat.com> |
| 1225 | * tc-sh.c: Add sh2a support. |
| 1226 | (parse_reg): Add tbr. |
| 1227 | (parse_at): Support @@(disp,tbr). |
| 1228 | (get_specific): Support sh2a opcodes. |
| 1229 | (insert4): New, for 4 byte relocs. |
| 1230 | (build_Mytes): Support sh2a opcodes. |
| 1231 | (md_apply_fix3_Mytes): Support sh2a opcodes. |
| 1232 | 2003-12-02 Michael Snyder <msnyder@redhat.com> |
| 1233 | * config/tc-sh.c (md_parse_option): Handle sh2a. |
| 1234 | (sh_elf_final_processing): Ditto. |
| 1235 | |
| 1236 | 2004-07-27 Jason Thorpe <thorpej@wasabisystems.com> |
| 1237 | |
| 1238 | * config/tc-hppa.h (TARGET_FORMAT): Set to "elf32-hppa-netbsd" |
| 1239 | for TE_NetBSD. |
| 1240 | |
| 1241 | 2004-07-27 Alan Modra <amodra@bigpond.net.au> |
| 1242 | |
| 1243 | * config/tc-ppc.c (ppc_frob_file_before_adjust): Warn if .toc too big. |
| 1244 | (ppc_arch): Expand comment. |
| 1245 | |
| 1246 | 2004-07-27 Tomer Levi <Tomer.Levi@nsc.com> |
| 1247 | |
| 1248 | * config/tc-crx.c: Support evaluating the difference between two |
| 1249 | symbols. |
| 1250 | * config/tc-crx.h: Likewise. |
| 1251 | |
| 1252 | 2004-07-26 H.J. Lu <hongjiu.lu@intel.com> |
| 1253 | |
| 1254 | * config/tc-ia64.c (start_unwind_section): Set the linked-to |
| 1255 | section. |
| 1256 | (ia64_elf_section_change_hook): Set the linked-to section for |
| 1257 | SHT_IA_64_UNWIND. |
| 1258 | |
| 1259 | 2004-07-26 Dmitry Diky <diwil@spec.ru> |
| 1260 | |
| 1261 | * config/tc-msp430.c: Add new subtargets: msp430x1610, |
| 1262 | msp430x1611, msp430x1612, msp430x415, msp430x417, msp430xG437, |
| 1263 | msp430xG438, msp430xG439. |
| 1264 | |
| 1265 | 2004-07-25 Daniel Jacobowitz <dan@debian.org> |
| 1266 | |
| 1267 | * doc/as.texinfo (Section, PushSection): Correct documentation |
| 1268 | for ELF. |
| 1269 | |
| 1270 | 2004-07-21 Jan Beulich <jbeulich@novell.com> |
| 1271 | |
| 1272 | * config/tc-i386.c (optimize_imm): Adjust immediates to only those |
| 1273 | permissible for the selected instruction suffix. |
| 1274 | (match_template): Don't permit 64-bit general purpose operands in |
| 1275 | 32-bit mode. |
| 1276 | (finalize_imm): Permit 64-bit immediates. |
| 1277 | (build_modrm_byte): Don't treat 32-bit addressing in 64-bit mode |
| 1278 | specially except for the width of the used base and/or index |
| 1279 | registers. For 32-bit displacements, use sign-extended |
| 1280 | relocations only when using 64-bit addressing. |
| 1281 | Force zero displacement on rip-relative addressing when there is |
| 1282 | no other displacement. |
| 1283 | (i386_index_check): Don't treat 32-bit addressing in 64-bit mode |
| 1284 | specially except for the width of the used base and/or index |
| 1285 | registers. |
| 1286 | (parse_register): Disallow Reg64 registers in 32-bit mode. |
| 1287 | |
| 1288 | * config/tc-i386.c: For DefaultSize instructions, don't guess a 'q' |
| 1289 | suffix if the instruction doesn't support it. |
| 1290 | |
| 1291 | 2004-07-20 Maciej W. Rozycki <macro@linux-mips.org> |
| 1292 | |
| 1293 | * config/tc-mips.c (append_insn): Handle constant expressions with |
| 1294 | no associated relocation. |
| 1295 | (mips_ip): Cancel the expression after use for the Q format |
| 1296 | specifier. |
| 1297 | (parse_relocation): Return no relocation for unsupported |
| 1298 | operators. |
| 1299 | (my_getSmallExpression): Return no relocation if no relocation |
| 1300 | operators are used. |
| 1301 | |
| 1302 | 2004-07-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| 1303 | |
| 1304 | * config/obj-som.c (adjust_stab_sections): Add prototype. |
| 1305 | (obj_som_compiler, obj_som_version, obj_som_copyright, |
| 1306 | adjust_stab_sections): Add ATTRIBUTE_UNUSED to unused arguments. |
| 1307 | * config/tc-hppa.c (update_subspace): Likewise. |
| 1308 | (is_defined_subspace): Amplify comment. |
| 1309 | * config/obj-som.h (som_frob_file): Add prototype. |
| 1310 | |
| 1311 | 2004-07-19 Christopher Faylor <cgf@timesys.com> |
| 1312 | H.J. Lu <hongjiu.lu@intel.com> |
| 1313 | |
| 1314 | * subsegs.c (section_symbol): Don't create a new segment when |
| 1315 | existing segment is undefined. |
| 1316 | |
| 1317 | 2004-07-16 Richard Earnshaw <rearnsha@arm.com> |
| 1318 | |
| 1319 | * config/tc-arm.c: Include include/opcode/arm.h. |
| 1320 | (ARM_EXT_*, ARM_ARCH_*, ARM_ANY, ARM_ALL, COPROC_ANY): Delete. |
| 1321 | (FPU_FPA_EXT_* FPU_VFP_EXT_*, FPU_ANY, FPU_NONE, FPU_MAVERICK): Delete. |
| 1322 | (FPU_ARCH_*): Delete. |
| 1323 | * Makefile.am: Update dependencies. |
| 1324 | * Makefile.in: Regenerate. |
| 1325 | |
| 1326 | 2004-07-15 Nick Clifton <nickc@redhat.com> |
| 1327 | |
| 1328 | * configure.in: Accept armbe as a big-endian arm configuration. |
| 1329 | * configure: Regenerate. |
| 1330 | |
| 1331 | 2004-07-13 Thomas Nystrom <thn@saeab.se> |
| 1332 | |
| 1333 | * config/tc-i386.c (T_SHIFTOP): New constant. |
| 1334 | (intel_e05_1): Handle '&', '|' and T_SHIFTOP. |
| 1335 | (intel_el1): Handle '~'. |
| 1336 | (intel_get_token): Handle '<>', '&', '|' and '~'. |
| 1337 | |
| 1338 | 2004-07-13 Nick Clifton <nickc@redhat.com> |
| 1339 | |
| 1340 | (md_assemble): Remove spurious newline from end of as_bad error |
| 1341 | message. |
| 1342 | (intel_e05_1): Likewise. |
| 1343 | (intel_e11): Likewise. |
| 1344 | (intel_match_token): Likewise. |
| 1345 | |
| 1346 | 2004-07-11 Andreas Schwab <schwab@suse.de> |
| 1347 | |
| 1348 | * config/tc-m68k.c: Convert to C90. Remove redundant |
| 1349 | declarations. Indentation fixup. |
| 1350 | [M68KCOFF]: Include "obj-coff.h" instead of declaring |
| 1351 | obj_coff_section ourselves. |
| 1352 | |
| 1353 | 2004-07-09 James E Wilson <wilson@specifixinc.com> |
| 1354 | |
| 1355 | * config/tc-ia64.c (default_big_endian): New. |
| 1356 | (dot_byteorder, md_begin): Use it. |
| 1357 | (md_parse_option): Set it. |
| 1358 | |
| 1359 | 2004-07-09 Nick Clifton <nickc@redhat.com> |
| 1360 | |
| 1361 | * configure.in: Change sh-sybmian-elf to sh-*-symbianelf. |
| 1362 | * configure: Regenerate. |
| 1363 | * NEWS: Change sh-sybmian-elf to sh-*-symbianelf. |
| 1364 | * config/tc-sh.c (sh_elf_final_processing): Use renamed version of |
| 1365 | sh_find_elf_flags if necessary. |
| 1366 | |
| 1367 | 2004-07-08 Richard Sandiford <rsandifo@redhat.com> |
| 1368 | |
| 1369 | * config/tc-mips.c (mips_fix_adjustable): If the full addend is |
| 1370 | going to be split into more than one in-place addend, return 0 |
| 1371 | for relocations against mergeable sections. Associate comments |
| 1372 | with code. |
| 1373 | |
| 1374 | 2004-07-07 Tomer Levi <Tomer.Levi@nsc.com> |
| 1375 | |
| 1376 | * Makefile.am (CPU_TYPES): Add crx. |
| 1377 | (TARGET_CPU_CFILES): Add config/tc-crx.c. |
| 1378 | (TARGET_CPU_HFILES): Add config/tc-crx.h. |
| 1379 | (DEPTC_crx_elf): New target. |
| 1380 | (DEPOBJ_crx_elf): Likewise. |
| 1381 | (DEP_crx_elf): Likewise. |
| 1382 | * Makefile.in: Regenerate. |
| 1383 | * configure.in: Add crx* target. |
| 1384 | * configure: Regenerate. |
| 1385 | * config/tc-crx.c: New file. |
| 1386 | * config/tc-crx.h: New file. |
| 1387 | * NEWS: Mention new target. |
| 1388 | |
| 1389 | 2004-07-06 Nick Clifton <nickc@redhat.com> |
| 1390 | |
| 1391 | * config.in: Undefine TARGET_SYMBIAN by default. |
| 1392 | * configure.in: |
| 1393 | * configure: Regenerate. Add sh-symbian-elf target. If |
| 1394 | selected define TARGET_SYMBIAN. |
| 1395 | * config/tc-sh.h (TARGET_FORMAT): Select a Symbian target |
| 1396 | format if TARGET_SYMBIAN has been defined. |
| 1397 | |
| 1398 | * output-file.c (output_file_create): Report the target format |
| 1399 | chosen when bfd_openw reports that it is invalid. |
| 1400 | |
| 1401 | * config/obj-coff.c (coff_pseudo_table): Only define the weak |
| 1402 | pseudo for BFD based assemblers. |
| 1403 | |
| 1404 | 2004-07-05 Andrew Stubbs <andrew.stubbs@superh.com> |
| 1405 | |
| 1406 | gas: |
| 1407 | * config/tc-sh.c (md_assemble): Change isspace to ISSPACE. |
| 1408 | (md_parse_option): Remove redundant -isa testing. |
| 1409 | Make bfd_arch variable const. |
| 1410 | (md_show_usage): Make bfd_arch variable const. |
| 1411 | |
| 1412 | 2004-07-03 James E Wilson <wilson@specifixinc.com> |
| 1413 | |
| 1414 | * config/tc-ia64.c (emit_one_bundle): Check and set insn_addr. |
| 1415 | * config/tc-ia64.h (md_frag_check): Define. |
| 1416 | |
| 1417 | 2004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com> |
| 1418 | |
| 1419 | * config/obj-coff.c (obj_coff_weak): New .weak syntax for PE weak |
| 1420 | externals. |
| 1421 | * doc/as.texinfo (Weak): Document PE weak symbols. |
| 1422 | |
| 1423 | 2004-07-03 Richard Sandiford <rsandifo@redhat.com> |
| 1424 | |
| 1425 | * config/tc-mips.c (HAVE_IN_PLACE_ADDENDS): New macro. |
| 1426 | (reloc_needs_lo_p): Only return true if HAVE_IN_PLACE_ADDENDS. |
| 1427 | (mips_frob_file): Rework so that only a single pass through the |
| 1428 | relocs is needed. Allow %lo()s to have higher offsets than their |
| 1429 | corresponding %hi()s or %got()s. |
| 1430 | |
| 1431 | 2004-07-02 Nick Clifton <nickc@redhat.com> |
| 1432 | |
| 1433 | * config/tc-arm.c (md_apply_fix3:BFD_RELOC_ARM_IMMEDIATE): Do not |
| 1434 | allow values which have come from undefined symbols. |
| 1435 | Always consider this fixup to have been processed as a reloc |
| 1436 | cannot be generated for it. |
| 1437 | |
| 1438 | 2004-07-02 Alan Modra <amodra@bigpond.net.au> |
| 1439 | |
| 1440 | * frags.h (struct frag): Add has_code and insn_addr fields. |
| 1441 | * write.c (cvt_frag_to_fill): Invoke md_frag_check. |
| 1442 | * config/tc-ppc.c (md_assemble): Check and set insn_addr. |
| 1443 | * config/tc-ppc.h (md_frag_check): Define. |
| 1444 | |
| 1445 | 2004-06-28 Maciej W. Rozycki <macro@linux-mips.org> |
| 1446 | |
| 1447 | * doc/Makefile.am (info): Rename goal to... |
| 1448 | (info-local): ... this, to preserve implicit dependencies. |
| 1449 | * doc/Makefile.in: Regenerate with automake 1.8.5. |
| 1450 | |
| 1451 | 2004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> |
| 1452 | |
| 1453 | * config/tc-m32r.c (md_convert_frag): Changed for @PLT. |
| 1454 | (m32r_cgen_record_fixup_exp): Changed for @GOTOFF, @GOT. |
| 1455 | (m32r_fix_adjustable): Changed for @GOTOFF, @GOT, @PLT. |
| 1456 | (tc_gen_reloc): Likewise. |
| 1457 | (m32r_end_of_match): Add for @GOTOFF, @GOT, @PLT. |
| 1458 | (m32r_parse_name): Likewise. |
| 1459 | (m32r_cgen_parse_fix_exp): Likewise. |
| 1460 | * config/tc-m32r.h (md_parse_name): Define for @GOTOFF, @GOT, @PLT. |
| 1461 | (O_PIC_reloc): Likewise. |
| 1462 | (TC_CGEN_PARSE_FIX_EXP): Likewise.. |
| 1463 | * cgen.c (gas_cgen_parse_operand): Add TC_CGEN_PARSE_FIX_EXP |
| 1464 | for @GOTOFF, @GOT, @PLT. |
| 1465 | |
| 1466 | 2004-06-21 Jan Beulich <jbeulich@novell.com> |
| 1467 | |
| 1468 | * gas/symbols.c: While discarding ordinary local absolute symbols |
| 1469 | when --strip-local-absolute is in effect, retain file symbols. |
| 1470 | |
| 1471 | 2004-06-20 Andreas Schwab <schwab@suse.de> |
| 1472 | |
| 1473 | * config/tc-m68k.c (mri_chip): Replace current_chip, not augment. |
| 1474 | (md_parse_option): Likewise. |
| 1475 | |
| 1476 | 2004-06-17 Jan Beulich <jbeulich@novell.com> |
| 1477 | |
| 1478 | * config/tc-i386.c: Deal with LEX_QM the same way as with LEX_AT. |
| 1479 | * config/te-netware.h: New file. |
| 1480 | * config/te-ppcnw.h: Delete: Obsolete. |
| 1481 | * configure.in: Eliminate ill NetWare targets. Make generic |
| 1482 | NetWare target use proper emulation. |
| 1483 | * Makefile.am: Eliminate reference to obsolete te-ppcnw.h, add |
| 1484 | reference to new te-netware.h. |
| 1485 | * configure: Regenerate. |
| 1486 | * Makefile.in: Regenerate. |
| 1487 | |
| 1488 | 2004-06-15 Martin Schwidefsky <schwidefsky@de.ibm.com> |
| 1489 | |
| 1490 | * config/tc-s390.c (s390_insn): Avoid incorrect signed/unsigned |
| 1491 | comparison in .insn pseudo operation. |
| 1492 | |
| 1493 | 2004-06-15 Alan Modra <amodra@bigpond.net.au> |
| 1494 | |
| 1495 | * config/obj-coff.c (coff_adjust_section_syms): Use |
| 1496 | bfd_get_section_size instead of bfd_get_section_size_before_reloc. |
| 1497 | (coff_frob_section): Likewise. |
| 1498 | * config/tc-mips.c (md_apply_fix3): Likewise. |
| 1499 | * config/obj-elf.c (elf_frob_file): Use bfd_set_section_size. |
| 1500 | (elf_frob_file_after_relocs): Likewise. |
| 1501 | |
| 1502 | 2004-06-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| 1503 | |
| 1504 | * config/tc-hppa.c (log2): Rename to exact_log2. |
| 1505 | (pa_next_subseg): Delete unused function. |
| 1506 | (create_new_space): Mark unused arguments with ATTRIBUTE_UNUSED. |
| 1507 | (create_new_subspace): Likewise. |
| 1508 | |
| 1509 | Bug gas/213 |
| 1510 | * config/tc-hppa.c (hppa_fix_adjustable): Allow reduction of fake |
| 1511 | labels. Fix warning. |
| 1512 | |
| 1513 | 2004-05-28 DJ Delorie <dj@redhat.com> |
| 1514 | |
| 1515 | * config/tc-mn10300.h (tc_fix_adjustable): Define. |
| 1516 | * config/tc-mn10300.c (mn10300_fix_adjustable): Don't adjust debug |
| 1517 | or non-merged symbols. |
| 1518 | |
| 1519 | 2004-05-28 H.J. Lu <hongjiu.lu@intel.com> |
| 1520 | |
| 1521 | * config/tc-ia64.c (remove_marked_resource): Save, clear and |
| 1522 | restore the old slot when inserting srlz.i/srlz.d. |
| 1523 | |
| 1524 | 2004-05-28 Andrew Stubbs <andrew.stubbs@superh.com> |
| 1525 | |
| 1526 | * Makefile.am: Regenerate dependecies. |
| 1527 | * Makefile.in: Regenerate. |
| 1528 | * config/tc-sh.c (valid_arch): Make unsigned. |
| 1529 | (preset_target_arch): Likewise. |
| 1530 | (md_begin): Use new architecture flags system. |
| 1531 | (get_specific): Likewise. |
| 1532 | (assemble_ppi): Likewise. |
| 1533 | (md_assemble): Likewise. Also fix error check for bad opcodes. |
| 1534 | (md_parse_option): Likewise. Also generate -isa values according |
| 1535 | to the table in bfd/cpu-sh.c instead of just constants. Also |
| 1536 | allow <arch>-up ISA variants. |
| 1537 | (sh_elf_final_processing): Replace if-else chain with a call to |
| 1538 | sh_find_elf_flags(). |
| 1539 | * testsuite/gas/sh/arch: New directory. |
| 1540 | * testsuite/gas/sh/arch/arch.exp: New test script. |
| 1541 | * testsuite/gas/sh/arch/arch_expected.txt: New file. |
| 1542 | * testsuite/gas/sh/arch/sh.s: New file. |
| 1543 | * testsuite/gas/sh/arch/sh2.s: New file. |
| 1544 | * testsuite/gas/sh/arch/sh-dsp.s: New file. |
| 1545 | * testsuite/gas/sh/arch/sh2e.s: New file. |
| 1546 | * testsuite/gas/sh/arch/sh3-nommu.s: New file. |
| 1547 | * testsuite/gas/sh/arch/sh3.s: New file. |
| 1548 | * testsuite/gas/sh/arch/sh3-dsp.s: New file. |
| 1549 | * testsuite/gas/sh/arch/sh3e.s: New file. |
| 1550 | * testsuite/gas/sh/arch/sh4-nommu-nofpu.s: New file. |
| 1551 | * testsuite/gas/sh/arch/sh4-nofpu.s: New file. |
| 1552 | * testsuite/gas/sh/arch/sh4.s: New file. |
| 1553 | * testsuite/gas/sh/arch/sh4a-nofpu.s: New file. |
| 1554 | * testsuite/gas/sh/arch/sh4al-dsp.s: New file. |
| 1555 | * testsuite/gas/sh/arch/sh4a.s: New file. |
| 1556 | |
| 1557 | 2004-05-28 Peter Barada <peter@the-baradas.com> |
| 1558 | |
| 1559 | * config/gc-m68k.c(m68k_ip): Convert mode 5 addressing |
| 1560 | with zero offset into mode 2 addressing to save a word. |
| 1561 | |
| 1562 | 2004-05-27 H.J. Lu <hongjiu.lu@intel.com> |
| 1563 | |
| 1564 | * config/tc-ia64.c (ar_is_in_integer_unit): Removed. |
| 1565 | (ar_is_only_in_integer_unit): New. |
| 1566 | (ar_is_only_in_memory_unit): New. |
| 1567 | (generate_unwind_image): Silence gcc on 32bit host. |
| 1568 | (md_assemble): Use ar_is_only_in_integer_unit instead of |
| 1569 | ar_is_in_integer_unit. Check AR access. |
| 1570 | |
| 1571 | 2004-05-27 Peter Barada <peter@the-baradas.com> |
| 1572 | |
| 1573 | * config/tc-m68k.c (md_begin): Sort the opcode table into |
| 1574 | alphabetical order. |
| 1575 | (m68k_compare_opcode): New function to do the sorting. |
| 1576 | |
| 1577 | 2004-05-24 Peter Barada <peter@the-baradas.com> |
| 1578 | |
| 1579 | * config/m68k-parse.y(operand): Allow for MAC/EMAC mask |
| 1580 | addressing on MIT style operands. |
| 1581 | * config/m68k-parse.y(yylex): Allow '-&' for predecrement |
| 1582 | w/mask addressing. |
| 1583 | * config/tc-m68k.c(install_operand): Comment 'G' and 'H' type |
| 1584 | operands. |
| 1585 | |
| 1586 | 2004-05-23 Alan Modra <amodra@bigpond.net.au> |
| 1587 | |
| 1588 | * expr.c (operand, operator): Don't reject '++' and '--'. |
| 1589 | |
| 1590 | 2004-05-20 Richard Sandiford <rsandifo@redhat.com> |
| 1591 | |
| 1592 | * config/tc-mips.c (append_insn): Use ISA-encoded addresses in MIPS16 |
| 1593 | dwarf tables. |
| 1594 | |
| 1595 | 2004-05-17 Adam Nemet <anemet@lnxw.com> |
| 1596 | |
| 1597 | * configure.in: Add ppc-*-lynxos*. Update i386-*-lynxos* to ELF. |
| 1598 | * configure: Regenerate. |
| 1599 | |
| 1600 | 2004-05-13 Paul Brook <paul@codesourcery.com> |
| 1601 | |
| 1602 | * dw2gencfi.c (output_cie): Handle dwarf3 format CIE entries. |
| 1603 | |
| 1604 | 2004-05-13 Joel Sherrill <joel@oarcorp.com> |
| 1605 | |
| 1606 | * configure.in (or32-*-rtems*): Switch to elf. |
| 1607 | * configure: Regenerate. |
| 1608 | |
| 1609 | 2004-05-13 Nick Clifton <nickc@redhat.com> |
| 1610 | |
| 1611 | * po/fr.po: Updated French translation. |
| 1612 | |
| 1613 | 2004-05-11 Nick Clifton <nickc@redhat.com> |
| 1614 | |
| 1615 | * doc/as.texinfo (Section): Document G and T flags to .section |
| 1616 | directive. Document the extra arguments that the G flag |
| 1617 | requires. Document the #tls flag. |
| 1618 | |
| 1619 | 2004-05-11 H.J. Lu <hongjiu.lu@intel.com> |
| 1620 | |
| 1621 | * subsegs.c (section_symbol): Create a new section symbol if |
| 1622 | the existing one doesn't match. |
| 1623 | * symbols.c (symbol_set_bfdsym): Don't reset BFD section symbol. |
| 1624 | |
| 1625 | 2004-05-07 Richard Sandiford <rsandifo@redhat.com> |
| 1626 | |
| 1627 | * config/tc-mips.c (append_insn, mips_emit_delays): Extend -mfix-vr4120 |
| 1628 | to cope with VR4181A errata MD(1) and MD(4). |
| 1629 | |
| 1630 | 2004-05-07 Brian Ford <ford@vss.fsi.com> |
| 1631 | |
| 1632 | * NEWS: Mention .secrel32 for pe[i]-i386. |
| 1633 | |
| 1634 | 2004-05-07 Alexandre Oliva <aoliva@redhat.com> |
| 1635 | |
| 1636 | * config/tc-frv.h (MAX_MEM_FOR_RS_ALIGN_CODE): New. |
| 1637 | (HANDLE_ALIGN): New. |
| 1638 | |
| 1639 | 2004-05-06 Daniel Jacobowitz <dan@debian.org> |
| 1640 | |
| 1641 | * Makefile.am (DIST_SUBDIRS): Define. |
| 1642 | * aclocal.m4: Regenerate with automake 1.8.4. |
| 1643 | * Makefile.in: Likewise. |
| 1644 | * doc/Makefile.in: Likewise. |
| 1645 | |
| 1646 | 2004-05-06 David Mosberger-Tang <davidm@hpl.hp.com> |
| 1647 | |
| 1648 | * config/tc-ia64.c (dot_serialize): Declare. |
| 1649 | (dot_serialize): New function. |
| 1650 | (md_pseudo_table): Add ".serialize.data" and |
| 1651 | ".serialize.instruction" directives. |
| 1652 | |
| 1653 | 2004-05-06 Nick Clifton <nickc@redhat.com> |
| 1654 | |
| 1655 | * messages (as_internal_value_out_of_range): Print a message about |
| 1656 | a value being out of range. Be consistent about whether the |
| 1657 | values are printed in decimal or hexadecimal. |
| 1658 | (as_warn_value_out_of_range): Generate a warning message about an |
| 1659 | out of range value. |
| 1660 | (as_bad_value_out_of_range): Generate an error message about an |
| 1661 | out of range value. |
| 1662 | * as.h: Prototype the new functions. |
| 1663 | * config/tc-alpha.c (insert_operand): Use new function. |
| 1664 | * config/tc-arc.c (arc_insert_operand): Likewise. |
| 1665 | * config/tc-mn10200.c (mn10200_insert_operand): Likewise. |
| 1666 | * config/tc-mn10300.c (mn10300_insert_operand): Likewise. |
| 1667 | * config/tc-ppc.c (ppc_insert_operand): Likewise. |
| 1668 | * config/tc-s390.c (s390_insert_operand): Likewise. |
| 1669 | * config/tc-v850.c (v850_insert_operand): Likewise. |
| 1670 | |
| 1671 | 2004-05-05 Alexandre Oliva <aoliva@redhat.com> |
| 1672 | |
| 1673 | * configure.in: Set em=linux for frv-*-*linux*. |
| 1674 | * configure: Rebuilt. |
| 1675 | * config/tc-frv.h (TARGET_FORMAT): Use elf32-frvfdpic if... |
| 1676 | (frv_md_fdpic_enabled): New. |
| 1677 | * config/tc-frv.c (frv_md_fdpic_enabled): New. |
| 1678 | (DEFAULT_FDPIC): New. |
| 1679 | (frv_flags): Use DEFAULT_FDPIC. |
| 1680 | (frv_pic_flag): Likewise. |
| 1681 | (OPTION_NOPIC): New. |
| 1682 | (md_longopts): Add -mnopic. |
| 1683 | (md_parse_option): Handle it. |
| 1684 | (md_show_usage): Add -mfdpic and -mnopic. |
| 1685 | |
| 1686 | 2004-05-05 Peter Barada <peter@the-baradas.com> |
| 1687 | |
| 1688 | * config/tc-m68k.c: Add find_cf_chip to print list of valid |
| 1689 | chips for invalid coldfire instructions, rename selectors |
| 1690 | for ColdFire sub-variants, add 521x,5249,547x,548x and aliases, |
| 1691 | add current_chip to track which chip is referred to(including save/restore), |
| 1692 | use current_chip to select control registers, not current_arch. |
| 1693 | (md_show_usage): Add new chips. |
| 1694 | * doc/c-m68k.texi: Document new command line switches. |
| 1695 | |
| 1696 | 2004-05-05 Jakub Jelinek <jakub@redhat.com> |
| 1697 | |
| 1698 | * tc-s390.h (md_do_align, HANDLE_ALIGN): Remove. |
| 1699 | (NOP_OPCODE): Define. |
| 1700 | (s390_align_code): Remove prototype. |
| 1701 | * tc-s390.c (s390_align_code): Remove. |
| 1702 | |
| 1703 | 2004-05-04 H.J. Lu <hongjiu.lu@intel.com> |
| 1704 | |
| 1705 | * config/tc-ia64.c (make_unw_section_name): Removed. |
| 1706 | (start_unwind_section): New function. |
| 1707 | (generate_unwind_image): Take const segT instead of const |
| 1708 | char *. |
| 1709 | (dot_handlerdata): Adjusted. |
| 1710 | (dot_endp): Likewise. |
| 1711 | |
| 1712 | 2004-05-02 H.J. Lu <hongjiu.lu@intel.com> |
| 1713 | |
| 1714 | * config/obj-elf.c (obj_elf_change_section): Allow the |
| 1715 | ".note.GNU-stack" section has SHF_EXECINSTR. |
| 1716 | |
| 1717 | 2004-05-02 H.J. Lu <hongjiu.lu@intel.com> |
| 1718 | |
| 1719 | * config/obj-elf.c (get_section): Return bfd_boolean. |
| 1720 | (obj_elf_change_section): Call bfd_get_section_by_name_if |
| 1721 | instead of bfd_map_over_sections. |
| 1722 | |
| 1723 | 2004-04-30 H.J. Lu <hongjiu.lu@intel.com> |
| 1724 | |
| 1725 | * config/obj-elf.c (get_section): New function. |
| 1726 | (obj_elf_change_section): Support multiple sections with same |
| 1727 | name. |
| 1728 | |
| 1729 | 2004-04-30 Nick Clifton <nickc@redhat.com> |
| 1730 | |
| 1731 | * config/tc-arm.c (create_register_alias): Fix typo checking for |
| 1732 | case sensitive register aliases. |
| 1733 | (co_proc_number): Use error message string in all_reg_maps[] |
| 1734 | array. |
| 1735 | (cp_reg_required_here): Likewise. |
| 1736 | (fp_reg_required_here): Likewise. |
| 1737 | |
| 1738 | 2004-04-29 Brian Ford <ford@vss.fsi.com> |
| 1739 | |
| 1740 | * dwarf2dbg.c (dwarf2_finish): Add SEC_DEBUGGING to section flags. |
| 1741 | |
| 1742 | 2004-04-28 Chris Demetriou <cgd@broadcom.com> |
| 1743 | |
| 1744 | * config/tc-mips.c (HAVE_32BIT_ADDRESSES, append_insn, macro_build) |
| 1745 | (load_address, macro, mips_ip, md_parse_option) |
| 1746 | (mips_force_relocation, mips_validate_fix, md_apply_fix3) |
| 1747 | (s_change_sec, pic_need_relax, tc_gen_reloc): Remove all |
| 1748 | embedded-PIC handling, and update comments. |
| 1749 | (SWITCH_TABLE): Remove. |
| 1750 | * config/tc-mips.h (DIFF_EXPR_OK): Delete. |
| 1751 | (enum mips_pic_level): Remove EMBEDDED_PIC. |
| 1752 | (EXTERN_FORCE_RELOC): Remove embedded-PIC handling. |
| 1753 | (TC_FORCE_RELOCATION): Update comment. |
| 1754 | * ecoff.c (ecoff_build_lineno): Add comment about some code that |
| 1755 | might be safe to remove now that MIPS embedded-PIC is gone. |
| 1756 | |
| 1757 | 2004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| 1758 | |
| 1759 | * config/obj-som.c (obj_som_init_stab_section): Add new arguments in |
| 1760 | call to obj_set_subsection_attributes. |
| 1761 | (obj_som_init_stab_section): Likewise. |
| 1762 | * config/tc-hppa.c (default_subspace_dict): Add comdat field. |
| 1763 | (pa_def_subspaces): Provide comdat default. |
| 1764 | (pa_subspace): Handle new "comdat" parameter. Set SEC_LINK_ONCE and |
| 1765 | not SEC_IS_COMMON if section is comdat, common or dup_common. Update |
| 1766 | calls to create_new_subspace and update_subspace to pass comdat flag. |
| 1767 | (create_new_subspace, update_subspace): Add new comdat argument. Use |
| 1768 | it in calls to obj_set_subsection_attributes. |
| 1769 | * doc/c-hppa.texi (.subspa, .nsubspa): Document new comdat parameter |
| 1770 | and use of comdat, common and dup_comm parameters. |
| 1771 | |
| 1772 | 2004-04-26 H.J. Lu <hongjiu.lu@intel.com> |
| 1773 | |
| 1774 | * config/obj-elf.c (obj_elf_change_section): Check if the old |
| 1775 | group name is NULL before comparison. |
| 1776 | |
| 1777 | 2004-04-23 Chris Demetriou <cgd@broadcom.com> |
| 1778 | |
| 1779 | * config/tc-mips.h (mips_dwarf2_addr_size): Prototype. |
| 1780 | |
| 1781 | 2004-04-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 1782 | |
| 1783 | * config/tc-mips.c (s_mipsset): Set default CPU type for .set mipsN. |
| 1784 | |
| 1785 | 2004-04-23 Chris Demetriou <cgd@broadcom.com> |
| 1786 | |
| 1787 | * config/tc-mips.c (md_longopts): Remove -membedded-pic option. |
| 1788 | (OPTION_MEMBEDDED_PIC): Remove. |
| 1789 | (OPTION_TRAP, OPTION_BREAK, OPTION_EB, OPTION_EL) |
| 1790 | (OPTION_FP32, OPTION_GP32, OPTION_CONSTRUCT_FLOATS) |
| 1791 | (OPTION_NO_CONSTRUCT_FLOATS, OPTIONS_FP64, OPTION_GP64) |
| 1792 | (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH) |
| 1793 | (OPTION_ELF_BASE): Renumber. |
| 1794 | (md_parse_option): Remove OPTION_MEMBEDDED_PIC handling. |
| 1795 | (md_show_usage): Remove mention of -membedded-pic. |
| 1796 | * doc/as.texinfo: Remove mention of -membedded-pic. |
| 1797 | |
| 1798 | 2004-04-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 1799 | |
| 1800 | * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Remove. |
| 1801 | * config/tc-mips.c (RDATA_SECTION_NAME, mips_target_format): Remove |
| 1802 | a.out support. |
| 1803 | (md_begin, mips_ip, md_parse_option, s_change_sec, s_option, |
| 1804 | s_abicalls, nopic_need_relax, tc_gen_reloc): Remove uses of |
| 1805 | USE_GLOBAL_POINTER_OPT. |
| 1806 | |
| 1807 | 2004-04-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 1808 | |
| 1809 | * config/tc-mips.c (macro): One more use of load_delay_nop. |
| 1810 | |
| 1811 | 2004-04-22 Atsushi Nemoto <anemo@mba.ocn.ne.jp> |
| 1812 | |
| 1813 | * config/tc-mips.c (load_delay_nop): New function. |
| 1814 | (load_address, macro): Use load_delay_nop() to build a nop |
| 1815 | which can be omitted with gpr_interlocks. |
| 1816 | |
| 1817 | 2004-04-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 1818 | |
| 1819 | * config/tc-mips.c (hilo_interlocks, gpr_interlocks, |
| 1820 | cop_interlocks): Remove superfluous CPU entries. |
| 1821 | |
| 1822 | 2004-04-22 Paul Brook <paul@codesourcery.com> |
| 1823 | |
| 1824 | * config/tc-arm.c (mav_parse_offset): Value must be multiple of 4. |
| 1825 | |
| 1826 | 2004-04-22 Peter Barada <peter@the-baradas.com> |
| 1827 | |
| 1828 | * NEWS: Added support for EMAC instructions and MAC/EMAC |
| 1829 | Motorola syntax. |
| 1830 | * config/m68k-parse.h: Add ACC[123], ACCEXT{01,23}, MAC/EMAC |
| 1831 | scale factor tokens, trailing_ampersand to mark mask addressing |
| 1832 | for MAC/EMAC instructions. |
| 1833 | * config/m68k-parse.y: Add options_ampersand clause, '<<', |
| 1834 | '>>'. |
| 1835 | (yylex): Handle '>', '<', and '&' following '+'. |
| 1836 | * config/tc-m68k.c: Set mcfmac/mcfemac on appropriate ColdFire |
| 1837 | architectures in archs[]. |
| 1838 | (m68k-ip): Add '4', 'e', 'g', 'i', cases to handle mask addressing |
| 1839 | for MAC/EMAC instructions, ACC[0123], ACCEXT{01,23}, and '<<'/'>>' |
| 1840 | respectively. |
| 1841 | (m68k_ip): Handle trailing '&' on MAC/EMAC insns. |
| 1842 | (install_operand): Fix 'n' case, Add 'F', 'f', 'G', 'H', 'I', ']' |
| 1843 | cases. |
| 1844 | Add EMAC operands to init_table[]. |
| 1845 | |
| 1846 | 2004-04-22 Bruno De Bus <bdebus@elis.ugent.be> |
| 1847 | |
| 1848 | * config/tc-arm.h (enum mstate): Move here, add MAP_UNDEFINED |
| 1849 | state. |
| 1850 | (TC_SEGMENT_INFO_TYPE): Define to enum mstate. |
| 1851 | * config/tc-arm.c (enum mstate): Delete from here. |
| 1852 | (mapping_state): Remove the static mapstate variable and instead |
| 1853 | store the state in the segment. This allows a per-section mapping |
| 1854 | state. Handle and ignore MAP_UNDEFINED states. |
| 1855 | (arm_elf_change_section): Get the current mapping state from the |
| 1856 | new section. |
| 1857 | (s_ltorg): Set the mapping state to MAP_DATA. |
| 1858 | (arm_cleanup): Use arm_elf_change_section to get the mapping state |
| 1859 | for each pool as it is emitted. |
| 1860 | |
| 1861 | 2004-04-22 Nick Clifton <nickc@redhat.com> |
| 1862 | |
| 1863 | * config/tc-arm.h: Formatting tidy ups. |
| 1864 | |
| 1865 | 2004-04-20 Chris Demetriou <cgd@broadcom.com> |
| 1866 | |
| 1867 | * NEWS: Note that MIPS -membedded-pic option is deprecated. |
| 1868 | |
| 1869 | 2004-04-20 DJ Delorie <dj@redhat.com> |
| 1870 | |
| 1871 | * config/tc-i386.h [TE_PE] (TC_CONS_FIX_NEW): Define. |
| 1872 | * config/tc-i386.c (md_pseudo_table) [TE_PE]: Add "secrel32". |
| 1873 | [TE_PE] (O_secrel): Define. |
| 1874 | [TE_PE] (x86_pe_cons_fix_new): New. |
| 1875 | [TE_PE] (pe_directive_secrel): Likewise. |
| 1876 | (tc_gen_reloc) [TE_PE]: Support BFD_RELOC_32_SECREL. |
| 1877 | |
| 1878 | 2004-04-19 Eric Christopher <echristo@redhat.com> |
| 1879 | |
| 1880 | * config/tc-mips.c (mips_dwarf2_addr_size): Revert part |
| 1881 | of previous patch for fix in gcc. |
| 1882 | |
| 1883 | 2004-04-19 Jakub Jelinek <jakub@redhat.com> |
| 1884 | |
| 1885 | * config/tc-xtensa.c (xg_assembler_literal): Fix a typo. |
| 1886 | |
| 1887 | 2004-04-19 Nathan Sidwell <nathan@codesourcery.com> |
| 1888 | |
| 1889 | * read.c (do_align): Call md_flush_pending_output, if defined. |
| 1890 | |
| 1891 | 2004-04-16 Alan Modra <amodra@bigpond.net.au> |
| 1892 | |
| 1893 | * expr.c (operand): Correct checks for ++ and --. |
| 1894 | |
| 1895 | 2004-04-14 H.J. Lu <hongjiu.lu@intel.com> |
| 1896 | |
| 1897 | * config/tc-generic.c: Add some comments. |
| 1898 | |
| 1899 | 2004-04-14 Richard Sandiford <rsandifo@redhat.com> |
| 1900 | |
| 1901 | * doc/c-mips.texi (-m{no-,}fix-vr4120): Renamed from |
| 1902 | -{no-}mfix-vr4122-bugs. |
| 1903 | * config/tc-mips.c (mips_fix_vr4120): Renamed from mips_fix_4122_bugs. |
| 1904 | (append_insn, mips_emit_delays): Update accordingly. |
| 1905 | (OPTION_FIX_VR4120, OPTION_NO_FIX_VR4120): Renamed from *VR4122. |
| 1906 | (md_longopts): Change -{no-,}mfix-vr4122-bugs to -m{no-,}fix-vr4120. |
| 1907 | (md_parse_option): Update after above changes. |
| 1908 | (md_show_usage): Add -mfix-vr4120. |
| 1909 | |
| 1910 | 2004-04-13 Bob Wilson <bob.wilson@acm.org> |
| 1911 | |
| 1912 | * doc/as.texinfo (Sub-Sections): Conditionalize COFF-specific use |
| 1913 | of .section directive; add a reference to the ELF .subsection |
| 1914 | directive. |
| 1915 | |
| 1916 | 2004-04-13 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> |
| 1917 | |
| 1918 | * config/tc-m32r.c (md_assemble): Fixed infinite loop bug |
| 1919 | in parallel. |
| 1920 | |
| 1921 | 2004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 1922 | |
| 1923 | * Makefile.am: Remove mips from aout targets. |
| 1924 | * Makefile.in: Regenerate. |
| 1925 | * configure.in: Remove mips-dec-bsd* target. |
| 1926 | * configure: Regenerate. |
| 1927 | |
| 1928 | 2004-04-07 Alan Modra <amodra@bigpond.net.au> |
| 1929 | |
| 1930 | PR 96 |
| 1931 | * config/tc-ppc.c (ppc_elf_suffix): Add valid32 and valid64 fields |
| 1932 | to struct map_bfd. Adjust MAP macro, and define MAP32, MAP64. |
| 1933 | Update "mapping". Restrict some @ modifiers to 32 bit. |
| 1934 | |
| 1935 | 2004-04-01 Asgari Jinia <asgarij@kpitcummins.com> |
| 1936 | Dhananjay Deshpande <dhananjayd@kpitcummins.com> |
| 1937 | |
| 1938 | * config/tc-sh.c (dont_adjust_reloc_32): New variable. |
| 1939 | (sh_fix_adjustable): Avoid adjusting BFD_RELOC_32 when |
| 1940 | dont_adjust_reloc_32 is set. |
| 1941 | (md_longopts): Add option -renesas. |
| 1942 | (md_parse_option, md_show_usage): Likewise. |
| 1943 | * doc/c-sh.texi: Likewise. |
| 1944 | |
| 1945 | 2004-04-01 Dave Korn <dk@artimi.com> |
| 1946 | |
| 1947 | * config/tc-dlx.c (md_assemble): set fx_no_overflow flag for |
| 1948 | hi16 and lo16 fixS structs. |
| 1949 | (md_assemble): generate bit_fixS for RELOC_DLX_LO16 in |
| 1950 | exactly the same way as for RELOC_DLX_REL16. |
| 1951 | (machine_ip): properly respect LO flag in the_insn and |
| 1952 | output RELOC_DLX_LO16 rather than RELOC_DLX_16. |
| 1953 | (md_apply_fix3): apply RELOC_DLX_LO16. |
| 1954 | |
| 1955 | 2004-03-30 Stan Shebs <shebs@apple.com> |
| 1956 | |
| 1957 | Remove long-obsolete MPW support. |
| 1958 | * mpw-config.in, mpw-make.sed, mac-as.r: Remove files. |
| 1959 | * configure.in: Remove mention of ppc-*-mpw* config. |
| 1960 | * configure.in: Likewise. |
| 1961 | |
| 1962 | 2004-03-30 Nick Clifton <nickc@redhat.com> |
| 1963 | |
| 1964 | * config/tc-arm.c (meabi_flags): Make its use conditional upon |
| 1965 | OBJ_ELF being defined. |
| 1966 | |
| 1967 | 2004-03-27 Alan Modra <amodra@bigpond.net.au> |
| 1968 | |
| 1969 | * config/obj-aout.c (obj_aout_type): Remove #ifdef BFD_ASSEMBLER code. |
| 1970 | |
| 1971 | 2004-03-23 Paul Brook <paul@codesourcery.com> |
| 1972 | |
| 1973 | * config/tc-arm.c (meabi_flags): New variable. |
| 1974 | (arm_parse_eabi): New function. |
| 1975 | (md_begin): Set flags for EABI v3. |
| 1976 | (arm_eabis): Add. |
| 1977 | (arm_long_opts): Add meabi. |
| 1978 | * doc/as.texinf <ARM>: Document -meabi. |
| 1979 | * doc/c-arm.texi: Ditto. |
| 1980 | |
| 1981 | 2004-03-22 Bob Wilson <bob.wilson@acm.org> |
| 1982 | |
| 1983 | * config/tc-xtensa.c (xtensa_post_relax_hook): Create literal |
| 1984 | tables even when use_literal_section flag is not set. |
| 1985 | |
| 1986 | 2004-03-22 Alan Modra <amodra@bigpond.net.au> |
| 1987 | |
| 1988 | * config/tc-sh.c: Remove trailing whitespace. |
| 1989 | |
| 1990 | 2004-03-22 Hans-Peter Nilsson <hp@axis.com> |
| 1991 | |
| 1992 | * doc/c-cris.texi (CRIS-Opts): Document --no-mul-bug-abort, |
| 1993 | --mul-bug-abort and the default behavior. |
| 1994 | * config/tc-cris.c (cris_insn_kind): New member CRIS_INSN_MUL. |
| 1995 | (err_for_dangerous_mul_placement): New variable. |
| 1996 | (STATE_MUL, OPTION_MULBUG_ABORT_ON, OPTION_MULBUG_ABORT_OFF): New |
| 1997 | macros. |
| 1998 | (md_cris_relax_table): Have placeholder for STATE_MUL. |
| 1999 | (md_longopts): New options --mul-bug-abort and --no-mul-bug-abort. |
| 2000 | (cris_relax_frag) <case ENCODE_RELAX (STATE_MUL, STATE_BYTE)>: New |
| 2001 | case doing nothing. |
| 2002 | (md_estimate_size_before_relax) <case ENCODE_RELAX (STATE_MUL, |
| 2003 | STATE_BYTE)>: Ditto. |
| 2004 | (md_convert_frag) <ENCODE_RELAX (STATE_MUL, STATE_BYTE)>: Check |
| 2005 | alignment and position of this frag, emit error message if |
| 2006 | suspicious. |
| 2007 | (md_assemble): For a multiply insn and when checking it, |
| 2008 | transform the current frag into a special frag for that purpose. |
| 2009 | (md_parse_option) <case OPTION_MULBUG_ABORT_OFF, case |
| 2010 | OPTION_MULBUG_ABORT_ON>: Handle new options. |
| 2011 | |
| 2012 | 2004-03-19 Bob Wilson <bob.wilson@acm.org> |
| 2013 | |
| 2014 | * config/tc-xtensa.c (mark_literal_frags): New function. |
| 2015 | (xtensa_move_literals): Call mark_literal_frags for all literal |
| 2016 | segments, including init and fini literal segments. |
| 2017 | (xtensa_post_relax_hook): Swap use of xt_insn_sec and xt_literal_sec. |
| 2018 | |
| 2019 | 2004-03-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
| 2020 | |
| 2021 | * tc-hppa.c (cons_fix_new_hppa): Check for PC relative base type. |
| 2022 | (pa_comm): Set BSF_OBJECT in symbol flags. |
| 2023 | |
| 2024 | 2004-03-19 Alan Modra <amodra@bigpond.net.au> |
| 2025 | |
| 2026 | * Makefile.am: Run "make dep-am". |
| 2027 | * Makefile.in: Regenerate. |
| 2028 | * doc/Makefile.in: Regenerate. |
| 2029 | * config.in: Regenerate. |
| 2030 | * po/gas.pot: Regenerate. |
| 2031 | |
| 2032 | 2004-03-18 Nathan Sidwell <nathan@codesourcery.com> |
| 2033 | |
| 2034 | * read.c (read_a_source_file): Use demand_empty_rest_of_line. |
| 2035 | (demand_empty_rest_of_line): Issue an error here. |
| 2036 | (ignore_rest_of_line): Silently skip to end. |
| 2037 | (demand_copy_string): Issue an error, not warning. |
| 2038 | (equals): Likewise. |
| 2039 | * config/obj-elf.c (obj_elf_section_name): Likewise. |
| 2040 | (obj_elf_section): Likewise. |
| 2041 | * config/tc-arc.c (arc_extoper): Remove bogus NULL checks. |
| 2042 | (arc_extinst): Likewise. |
| 2043 | * config/tc-ia64.c (dot_saveb): Use demand_empty_rest_of_line. |
| 2044 | (dot_spill): Likewise. |
| 2045 | (dot_unwabi): Likewise. |
| 2046 | (dot_prologue): Likewise. |
| 2047 | |
| 2048 | * expr.c (operand): Reject ++ and --. |
| 2049 | (operator): Likewise. |
| 2050 | |
| 2051 | 2004-03-17 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
| 2052 | |
| 2053 | * config/tc-sh.c: Include dw2gencfi.h. |
| 2054 | (sh_cfi_frame_initial_instructions): New function. |
| 2055 | (sh_regname_to_dw2regnum): Likewise. |
| 2056 | * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Move to the end of |
| 2057 | file. |
| 2058 | (TARGET_USE_CFIPOP): Define. |
| 2059 | (tc_cfi_frame_initial_instructions): Likewise. |
| 2060 | (tc_regname_to_dw2regnum): Likewise. |
| 2061 | (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT): Likewise. |
| 2062 | * Makefile.am: Update dependencies. |
| 2063 | * Makefile.in: Regenerate. |
| 2064 | |
| 2065 | 2004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de> |
| 2066 | |
| 2067 | * configure.in: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*. |
| 2068 | * configure: Regenerate. |
| 2069 | |
| 2070 | 2004-03-12 Bob Wilson <bob.wilson@acm.org> |
| 2071 | |
| 2072 | * read.c (s_leb128): Call md_flush_pending_output. |
| 2073 | |
| 2074 | 2004-03-12 Michal Ludvig <mludvig@suse.cz> |
| 2075 | |
| 2076 | * config/tc-i386.c (output_insn): Handle PadLock instructions. |
| 2077 | * config/tc-i386.h (CpuPadLock): New define. |
| 2078 | (CpuUnknownFlags): Added CpuPadLock. |
| 2079 | |
| 2080 | 2004-03-07 Andreas Schwab <schwab@suse.de> |
| 2081 | |
| 2082 | * doc/c-hppa.texi (HPPA Directives): Fix typo. |
| 2083 | |
| 2084 | 2004-03-07 Richard Henderson <rth@redhat.com> |
| 2085 | |
| 2086 | * dw2gencfi.c (output_cie): Align length to 4 byte boundary. |
| 2087 | (cfi_finish): Likewise for fde. |
| 2088 | |
| 2089 | 2004-03-05 H.J. Lu <hongjiu.lu@intel.com> |
| 2090 | |
| 2091 | * config/tc-ia64.c (md_assemble): Properly handle NULL |
| 2092 | align_frag. |
| 2093 | (ia64_handle_align): Don't abort if failed to add a stop bit. |
| 2094 | |
| 2095 | 2004-03-04 H.J. Lu <hongjiu.lu@intel.com> |
| 2096 | |
| 2097 | * Makefile.in: Regenerated. |
| 2098 | * aclocal.m4: Likewise. |
| 2099 | * configure: Likewise. |
| 2100 | * doc/Makefile.in: Likewise. |
| 2101 | |
| 2102 | 2004-03-03 H.J. Lu <hongjiu.lu@intel.com> |
| 2103 | |
| 2104 | * config/tc-ia64.c (dot_align): New. |
| 2105 | (ia64_do_align): Make it static. |
| 2106 | (md_pseudo_table): Use "dot_align" for "align". |
| 2107 | (ia64_md_do_align): Don't set align_frag here. |
| 2108 | (ia64_handle_align): Add a stop bit to the previous bundle if |
| 2109 | needed. |
| 2110 | |
| 2111 | * config/tc-ia64.h (ia64_do_align): Removed. |
| 2112 | |
| 2113 | 2003-03-03 Andrew Stubbs <andrew.stubbs@superh.com> |
| 2114 | |
| 2115 | * config/tc-sh.c (md_parse_option): Add -isa=sh4-nofpu and |
| 2116 | -isa=sh4-nommu-nofpu options. Adjust help messages accordingly. |
| 2117 | (sh_elf_final_processing): Output BFD type sh4_nofpu if that is |
| 2118 | the most general type or the user specifically requested it. |
| 2119 | (md_assemble): Add a new error message for when an instruction |
| 2120 | is understood, but is not allowed due to an -isa option. |
| 2121 | |
| 2122 | 2004-03-02 H.J. Lu <hongjiu.lu@intel.com> |
| 2123 | |
| 2124 | * config/tc-ia64.c (align_frag): New. |
| 2125 | (md_assemble): Set the tc_frag_data field in align_frag for |
| 2126 | IA64_OPCODE_FIRST instructions. |
| 2127 | (ia64_md_do_align): Set align_frag. |
| 2128 | (ia64_handle_align): Add a stop bit if needed. |
| 2129 | |
| 2130 | * config/tc-ia64.h (TC_FRAG_TYPE): New. |
| 2131 | (TC_FRAG_INIT): New. |
| 2132 | |
| 2133 | 2004-03-01 Richard Sandiford <rsandifo@redhat.com> |
| 2134 | |
| 2135 | * config/tc-frv.c (fr400_audio): New variable. |
| 2136 | (md_parse_option, md_show_usage): Add -mcpu=fr405 and -mcpu=fr450. |
| 2137 | (md_parse_option): Set fr400_audio for -mcpu=fr400 and -mcpu=fr405. |
| 2138 | (target_implements_insn_p): New function. |
| 2139 | (md_assemble): Report an error if the processor doesn't implement |
| 2140 | the instruction. |
| 2141 | |
| 2142 | 2004-02-27 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> |
| 2143 | |
| 2144 | * config/tc-m32r.c (md_longopts): Added -no-bitinst option. |
| 2145 | (md_parse_option): Ditto. |
| 2146 | (OPTION_NO_SPECIAL_M32R): Added. |
| 2147 | (md_show_usage): Document it. |
| 2148 | (enable_speial_m32r): Changed a default value from 0 to 1. |
| 2149 | * doc/c-m32r.texi: Document the -no-bitinst option. |
| 2150 | |
| 2151 | 2004-02-27 Nick Clifton <nickc@redhat.com> |
| 2152 | |
| 2153 | * config/tc-sh.c (get_operand): Revert previous delta. |
| 2154 | (tc_gen_reloc): Check for an unknown reloc type before processing |
| 2155 | the addend. |
| 2156 | |
| 2157 | 2004-02-27 Hannes Reinecke <hare@suse.de> |
| 2158 | |
| 2159 | * config/tc-s390.c (s390_insn): Correct range check for opcode in |
| 2160 | .insn pseudo operation. |
| 2161 | |
| 2162 | 2004-02-27 Anil Paranjpe <anilp1@kpitcummins.com> |
| 2163 | |
| 2164 | * config/tc-sh.c (get_operand): In case of #Imm, check has been |
| 2165 | added for wrong syntax. |
| 2166 | |
| 2167 | 2004-02-26 Eric Christopher <echristo@redhat.com> |
| 2168 | |
| 2169 | * config/tc-mips.c (mips_dwarf2_addr_size): New. |
| 2170 | * config/tc-mips.h (DWARF2_ADDR_SIZE): Use. |
| 2171 | |
| 2172 | 2004-02-26 Andrew Stubbs <andrew.stubbs@superh.com> |
| 2173 | |
| 2174 | * config/tc-sh.c (build_Mytes): Add REG_N_D and REG_N_B01 |
| 2175 | nibble types to assembler. |
| 2176 | |
| 2177 | 2004-02-25 Fred Fish <fnf@redhat.com> |
| 2178 | |
| 2179 | * config/tc-iq2000.c: Add missing \n\ in multiline string literal. |
| 2180 | |
| 2181 | 2004-02-20 James E Wilson <wilson@specifixinc.com> |
| 2182 | |
| 2183 | * config/tc-ia64.c (slot_index): New arg before_relax. Use instead of |
| 2184 | finalize_syms. |
| 2185 | (fixup_unw_records): New arg before_relax. Pass to slot_index. |
| 2186 | (ia64_estimate_size_before_relax): New. |
| 2187 | (ia64_convert_frag): Pass 0 to fixup_unw_records. Add comment. |
| 2188 | (generate_unwind_image): Pass 1 to fixup_unw_records. |
| 2189 | * config/tc-ia64.h (ia64_estimate_size_before_relax): Declare. |
| 2190 | (md_estimate_size_before_relax): Call ia64_estimate_size_before_relax. |
| 2191 | |
| 2192 | 2004-02-19 Jakub Jelinek <jakub@redhat.com> |
| 2193 | |
| 2194 | * stabs.c (generate_asm_file): Avoid warning about use of |
| 2195 | uninitialized variable. |
| 2196 | |
| 2197 | 2004-02-18 David Mosberger <davidm@hpl.hp.com> |
| 2198 | |
| 2199 | * config/tc-ia64.c (ia64_flush_insns): In addition to prologue, |
| 2200 | body, and endp, allow unwind records which do not have a "t" |
| 2201 | (time/instruction) field. |
| 2202 | |
| 2203 | 2004-02-17 Petko Manolov <petkan@nucleusys.com> |
| 2204 | |
| 2205 | * config/tc-arm.c (do_mav_dspsc_1): Correct offset of CRn. |
| 2206 | (do_mav_dspsc_2): Likewise. |
| 2207 | Fix accumulator registers move opcodes. |
| 2208 | |
| 2209 | 2004-02-13 Hannes Reinecke <hare@suse.de> |
| 2210 | Jakub Jelinek <jakub@redhat.com> |
| 2211 | |
| 2212 | * dwarf2dbg.c (get_filenum): Do not read beyond allocated memory. |
| 2213 | |
| 2214 | 2004-02-10 Steve Ellcey <sje@cup.hp.com> |
| 2215 | |
| 2216 | * config/tc-ia64.h (ia64_frob_symbol): New declaration. |
| 2217 | (tc_frob_symbol): New macro definition. |
| 2218 | * config/tc-ia64.c (ia64_frob_symbol): New routine. |
| 2219 | |
| 2220 | 2004-02-09 Daniel Jacobowitz <drow@mvista.com> |
| 2221 | |
| 2222 | * config/tc-arm.c (md_begin): Mark .note.gnu.arm.ident as |
| 2223 | read-only. |
| 2224 | |
| 2225 | 2004-02-09 Nathan Sidwell <nathan@codesourcery.com> |
| 2226 | |
| 2227 | * read.h (IGNORE_OPCODE_CASE): Do not define. Replace with ... |
| 2228 | (TC_CASE_SENSITIVE): ... this. |
| 2229 | * read.c: Replace IGNORE_OPCODE_CASE with TC_CASE_SENSITIVE. |
| 2230 | * doc/internals.texi (TC_CASE_SENSITIVE): Document. |
| 2231 | |
| 2232 | 2004-02-06 James E Wilson <wilson@specifixinc.com> |
| 2233 | |
| 2234 | * config/tc-ia64.c (dot_endp): Delete call to output_endp. |
| 2235 | (generate_unwind_image): Re-add it here. |
| 2236 | |
| 2237 | 2004-02-06 Nathan Sidwell <nathan@codesourcery.com> |
| 2238 | |
| 2239 | * dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';' |
| 2240 | * read.h (SKIP_WHITESPACE): Turn into an expression. |
| 2241 | * read.c (read_a_source_file): A pseudo is removed by having a |
| 2242 | NULL handler. |
| 2243 | |
| 2244 | 2004-02-05 James E Wilson <wilson@specifixinc.com> |
| 2245 | |
| 2246 | * config/tc-ia64.c (output_endp): New. |
| 2247 | (count_bits): Delete. |
| 2248 | (ia64_flush_insns, process_one_record, optimize_unw_records): Handle |
| 2249 | endp unwind records. |
| 2250 | (fixup_unw_records): Handle endp unwind records. Delete code for |
| 2251 | shortening prologue regions not followed by a body record. |
| 2252 | (dot_endp): Call add_unwind_entry to emit endp unwind record. |
| 2253 | * config/tc-ia64.h (unw_record_type): Add endp. |
| 2254 | |
| 2255 | 2004-02-03 James E Wilson <wilson@specifixinc.com> |
| 2256 | |
| 2257 | * config/tc-ia64.c (ia64_convert_frag): Call md_number_to_chars to |
| 2258 | fill padding bytes with zeroes. |
| 2259 | (emit_one_bundle): New locals last_ptr, end_ptr. Rewrite code that |
| 2260 | sets unwind_record slot_number and slot_frag fields. |
| 2261 | |
| 2262 | 2004-02-02 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
| 2263 | |
| 2264 | * config/tc-mips.c (add_got_offset_hilo): New function. |
| 2265 | (macro): Use load_register() and add_got_offset_hilo() to load |
| 2266 | constants instead of hardcoding code sequences throughout. |
| 2267 | |
| 2268 | 2004-01-28 H.J. Lu <hongjiu.lu@intel.com> |
| 2269 | |
| 2270 | * config/tc-ia64.c (emit_one_bundle): Add proper indentation. |
| 2271 | |
| 2272 | 2004-01-26 Bernardo Innocenti <bernie@develer.com> |
| 2273 | |
| 2274 | * config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially, |
| 2275 | like m68k-elf. |
| 2276 | * config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead |
| 2277 | of hard-coded test for TARGET_OS=elf. |
| 2278 | |
| 2279 | 2004-01-24 Chris Demetriou <cgd@broadcom.com> |
| 2280 | |
| 2281 | * config/tc-mips.c (hilo_interlocks): Change definition |
| 2282 | so that MIPS32, MIPS64 and later ISAs are included, along with |
| 2283 | the already-included machines. Update comments. |
| 2284 | |
| 2285 | 2004-01-23 Daniel Jacobowitz <drow@mvista.com> |
| 2286 | |
| 2287 | * config/tc-arm.c (tc_gen_reloc): Improve error message for |
| 2288 | undefined local labels. |
| 2289 | |
| 2290 | 2004-01-23 Richard Sandiford <rsandifo@redhat.com> |
| 2291 | |
| 2292 | * config/tc-mips.c (load_address, macro): Update comments about |
| 2293 | NewABI GP relaxation. |
| 2294 | |
| 2295 | 2004-01-23 Richard Sandiford <rsandifo@redhat.com> |
| 2296 | |
| 2297 | * config/tc-mips.c (macro_build): Remove place and counter arguments. |
| 2298 | (mips_build_lui, macro_build_ldst_constoffset): Likewise. |
| 2299 | (mips16_macro_build, macro_build_jalr): Remove counter argument. |
| 2300 | (set_at, load_register, load_address, move_register): Likewise. |
| 2301 | (load_got_offset, add_got_offset): Likewise. |
| 2302 | Update all calls and tidy accordingly. |
| 2303 | |
| 2304 | 2004-01-23 Richard Sandiford <rsandifo@redhat.com> |
| 2305 | |
| 2306 | * config/tc-mips.c (RELAX_ENCODE): Remove WARN argument. |
| 2307 | (RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities. |
| 2308 | (RELAX_USE_SECOND): Bump to 0x10000. |
| 2309 | (RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags. |
| 2310 | (mips_macro_warning): New variable. |
| 2311 | (md_assemble): Wrap macro expansion in macro_start() and macro_end(). |
| 2312 | (s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise. |
| 2313 | (relax_close_frag): Set mips_macro_warning.first_frag. Adjust use |
| 2314 | of RELAX_ENCODE. |
| 2315 | (append_insn): Update mips_macro_warning.sizes. |
| 2316 | (macro_start, macro_warning, macro_end): New functions. |
| 2317 | (macro_build): Don't emit warnings here. |
| 2318 | (macro_build_lui, md_estimate_size_before_relax): ...or here. |
| 2319 | (md_convert_frag): Check for cases where one macro alternative |
| 2320 | needs a warning and the other doesn't. Emit a warning if the |
| 2321 | longer sequence was chosen. |
| 2322 | |
| 2323 | 2004-01-23 Richard Sandiford <rsandifo@redhat.com> |
| 2324 | |
| 2325 | * config/tc-mips.h (tc_frag_data_type, TC_FRAG_TYPE): Remove. |
| 2326 | * config/tc-mips.c (RELAX_ENCODE): Take three arguments: the size of |
| 2327 | the first sequence, the size of the second sequence, and a flag |
| 2328 | that says whether we should warn. |
| 2329 | (RELAX_OLD, RELAX_NEW, RELAX_RELOC[123]): Delete. |
| 2330 | (RELAX_FIRST, RELAX_SECOND): New. |
| 2331 | (mips_relax): New variable. |
| 2332 | (relax_close_frag, relax_start, relax_switch, relax_end): New fns. |
| 2333 | (append_insn): Remove "place" argument. Use mips_relax.sequence |
| 2334 | rather than "place" to check whether we're expanding the second |
| 2335 | alternative of a relaxable macro. Remove redundant check for |
| 2336 | branch relaxation. If generating a normal insn, and there |
| 2337 | is not enough room in the current frag, call relax_close_frag() |
| 2338 | to close it. Update mips_relax.sizes[]. Emit fixups for the |
| 2339 | second version of a relaxable macro. Record the first relaxable |
| 2340 | fixup in mips_relax. Remove tc_gen_reloc workaround. |
| 2341 | (macro_build): Remove all uses of "place". Use mips_relax.sequence |
| 2342 | in the same way as in append_insn. |
| 2343 | (mips16_macro_build): Remove "place" argument. |
| 2344 | (macro_build_lui): As for macro_build. Don't drop the add_symbol |
| 2345 | when generating the second version of a relaxable macro. |
| 2346 | (load_got_offset, add_got_offset): New functions. |
| 2347 | (load_address, macro): Use new relaxation machinery. Remove |
| 2348 | tc_gen_reloc workarounds. |
| 2349 | (md_estimate_size_before_relax): Set RELAX_USE_SECOND if the second |
| 2350 | version of a relaxable macro is needed. Return -RELAX_SECOND if the |
| 2351 | first version is needed. |
| 2352 | (tc_gen_reloc): Remove relaxation handling. |
| 2353 | (md_convert_frag): Go through the fixups for a relaxable macro and |
| 2354 | mark those that belong to the unneeded alternative as done. If the |
| 2355 | second alternative is needed, adjust the fixup addresses to account |
| 2356 | for the deleted first alternative. |
| 2357 | |
| 2358 | 2004-01-23 Richard Sandiford <rsandifo@redhat.com> |
| 2359 | |
| 2360 | * frags.h (frag_room): Declare. |
| 2361 | * frags.c (frag_room): New function. |
| 2362 | * doc/internals.texi: Document it. |
| 2363 | |
| 2364 | 2004-01-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> |
| 2365 | |
| 2366 | * config/tc-mips.c (append_insn): Don't do r3900 interlock |
| 2367 | optimization for -mtune=r3900, as this will break on other CPUs. |
| 2368 | |
| 2369 | 2004-01-11 Tom Rix <tcrix@worldnet.att.net> |
| 2370 | |
| 2371 | * config/tc-m68hc11.c (build_indexed_byte): movb and movw cannot |
| 2372 | be relaxed, use fixup. |
| 2373 | (md_apply_fix3): Use 5 bit reloc from movb and movw fixup. |
| 2374 | |
| 2375 | 2004-01-19 Jakub Jelinek <jakub@redhat.com> |
| 2376 | |
| 2377 | * config/tc-sparc.c (sparc_ip): Disallow %f32-%f63 for single |
| 2378 | precision operands. |
| 2379 | |
| 2380 | 2004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
| 2381 | |
| 2382 | * config/tc-mips.c (append_insn): Properly detect variant frags |
| 2383 | that preclude swapping of relaxed branches. Correctly swap |
| 2384 | instructions between frags when dealing with relaxed branches. |
| 2385 | |
| 2386 | 2004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
| 2387 | |
| 2388 | * acinclude.m4: Quote names of macros to be defined by AC_DEFUN |
| 2389 | throughout. |
| 2390 | * aclocal.m4: Regenerate. |
| 2391 | * configure: Regenerate. |
| 2392 | |
| 2393 | 2004-01-12 Anil Paranjpe <anilp1@KPITCummins.com> |
| 2394 | |
| 2395 | * config/tc-h8300.c (build_bytes): Apply relaxation to bit |
| 2396 | manipulation insns. |
| 2397 | |
| 2398 | 2004-01-12 Richard Sandiford <rsandifo@redhat.com> |
| 2399 | |
| 2400 | * config/tc-mips.c (macro_build_jalr): When adding an R_MIPS_JALR |
| 2401 | reloc, reserve space for the delay slot as well as the jalr itself. |
| 2402 | |
| 2403 | 2004-01-09 Paul Brook <paul@codesourcery.com> |
| 2404 | |
| 2405 | * config/tc-arm.c (do_vfp_reg2_from_sp2): Rename from do_vfp_sp_reg2. |
| 2406 | (do_vfp_sp2_from_reg2): New function. |
| 2407 | (insns): Use them. |
| 2408 | (do_vfp_dp_from_reg2): Check return values properly. |
| 2409 | |
| 2410 | 2004-01-08 Ian Lance Taylor <ian@wasabisystems.com> |
| 2411 | |
| 2412 | * config/tc-mips.c (warn_nops): Remove static variable. |
| 2413 | (macro): Remove test of warn_nops. |
| 2414 | (md_shortops): Remove 'n'. |
| 2415 | (md_parse_option): Remove 'n' case. |
| 2416 | (md_show_usage): Remove -n. |
| 2417 | * doc/as.texinfo (Overview): Remove MIPS -n option. |
| 2418 | * doc/c-mips.texi (MIPS Opts): Remove mention -n. |
| 2419 | * NEWS: Mention removal of MIPS -n option. |
| 2420 | |
| 2421 | * config/tc-mips.c (ISA_HAS_COPROC_DELAYS): Remove. |
| 2422 | (cop_interlocks): Check ISA level. |
| 2423 | (cop_mem_interlocks): Define. |
| 2424 | (reg_needs_delay): Check cop_interlocks rather than |
| 2425 | ISA_HAS_COPROC_DELAYS. |
| 2426 | (append_insn): Likewise. Use cop_mem_interlocks rather than |
| 2427 | directly checking mips_opts.isa. |
| 2428 | (mips_emit_delays): Likewise. |
| 2429 | |
| 2430 | 2004-01-07 H.J. Lu <hongjiu.lu@intel.com> |
| 2431 | |
| 2432 | * config/tc-ia64.c (unwind): Move next_slot_number and |
| 2433 | next_slot_frag to ... |
| 2434 | (unw_rec_list): Here. |
| 2435 | (free_list_records): Removed. |
| 2436 | (output_unw_records): Likewise. |
| 2437 | (generate_unwind_image): Make it void. |
| 2438 | (alloc_record): Initialize next_slot_number and next_slot_frag. |
| 2439 | (slot_index): Take .org, .space and .align into account. |
| 2440 | (fixup_unw_records): Don't set slot_number to 0. Use |
| 2441 | list->next_slot_number and list->next_slot_frag instead of |
| 2442 | unwind.next_slot_number and unwind.next_slot_frag. |
| 2443 | (ia64_convert_frag): New. |
| 2444 | (generate_unwind_image): Generate a rs_machine_dependent frag |
| 2445 | for unwind record. |
| 2446 | (emit_one_bundle): Use list->next_slot_number and |
| 2447 | list->next_slot_frag instead of unwind.next_slot_number and |
| 2448 | unwind.next_slot_frag. |
| 2449 | |
| 2450 | * config/tc-ia64.h (md_convert_frag): Defined as |
| 2451 | ia64_convert_frag. |
| 2452 | (md_estimate_size_before_relax): Defined as (f)->fr_var. |
| 2453 | |
| 2454 | 2004-01-06 Alexandre Oliva <aoliva@redhat.com> |
| 2455 | |
| 2456 | 2003-12-19 Alexandre Oliva <aoliva@redhat.com> |
| 2457 | * config/tc-frv.h (md_apply_fix3): Don't define. |
| 2458 | * config/tc-frv.c (md_apply_fix3): New. Shift/truncate %hi/%lo |
| 2459 | operands. |
| 2460 | * config/tc-frv.h (TC_FORCE_RELOCATION_SUB_LOCAL): Define. |
| 2461 | 2003-10-07 Alexandre Oliva <aoliva@redhat.com> |
| 2462 | * config/tc-frv.c (line_separator_chars): Add `!'. |
| 2463 | 2003-09-19 Alexandre Oliva <aoliva@redhat.com> |
| 2464 | * config/tc-frv.c (md_assemble): Clear insn upfront. |
| 2465 | 2003-09-18 Alexandre Oliva <aoliva@redhat.com> |
| 2466 | * config/tc-frv.c (OPTION_FDPIC): New macro. |
| 2467 | (md_longopts): Add mfdpic. |
| 2468 | (md_parse_option): Handle it. |
| 2469 | 2003-08-04 Alexandre Oliva <aoliva@redhat.com> |
| 2470 | * config/tc-frv.c (md_cgen_lookup_reloc) <FRV_OPERAND_D12, |
| 2471 | FRV_OPERAND_S12>: Use reloc type encoded in fix-up. |
| 2472 | (frv_pic_ptr): Parse funcdesc. |
| 2473 | |
| 2474 | 2004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
| 2475 | |
| 2476 | * doc/as.texinfo: Let texi2pod parse asconfig.texi and |
| 2477 | gasver.texi. Remove duplicate symbol definitions for texi2pod. |
| 2478 | |
| 2479 | 2004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
| 2480 | |
| 2481 | * Makefile.am (Makefile): Move the dependency on |
| 2482 | $(BFDDIR)/configure.in to... |
| 2483 | (CONFIG_STATUS_DEPENDENCIES): ... here. |
| 2484 | (AUTOMAKE_OPTIONS): Require automake 1.8. |
| 2485 | * Makefile.in: Regenerate. |
| 2486 | * doc/Makefile.am (BASEDIR, BFDDIR): Define. |
| 2487 | (CONFIG_STATUS_DEPENDENCIES): Add a dependency on |
| 2488 | $(BFDDIR)/configure.in here as well. |
| 2489 | * doc/Makefile.in: Regenerate. |
| 2490 | |
| 2491 | 2004-01-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
| 2492 | |
| 2493 | * Makefile.am (install, install-info, RECURSIVE_TARGETS): Remove. |
| 2494 | * Makefile.in: Regenerate. |
| 2495 | * aclocal.m4: Regenerate. |
| 2496 | * doc/Makefile.am (install, install-info): Remove. |
| 2497 | (install-data-local): A new hook for install-info. |
| 2498 | (AUTOMAKE_OPTIONS): Require automake 1.8. |
| 2499 | * doc/Makefile.in: Regenerate. |
| 2500 | |
| 2501 | 2004-01-02 Nutan Singh <nutan@kpitcummins.com> |
| 2502 | |
| 2503 | * doc/c-sh.texi: Update description about floating point behavior |
| 2504 | of SH family. |
| 2505 | |
| 2506 | 2004-01-02 Bernardo Innocenti <bernie@develer.com> |
| 2507 | |
| 2508 | * configure.in: Add m68k-uClinux target. |
| 2509 | * configure: Regenerate. |
| 2510 | |
| 2511 | For older changes see ChangeLog-0203 |
| 2512 | \f |
| 2513 | Local Variables: |
| 2514 | mode: change-log |
| 2515 | left-margin: 8 |
| 2516 | fill-column: 74 |
| 2517 | version-control: never |
| 2518 | End: |