OSDN Git Service

* config/rs6000/predicates.md (word_offset_memref_op): Handle
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index a523f45..a8fd3f9 100644 (file)
@@ -1,3 +1,229 @@
+2011-03-26  Alan Modra  <amodra@gmail.com>
+
+       * config/rs6000/predicates.md (word_offset_memref_op): Handle
+       cmodel medium addresses.
+       * config/rs6000/rs6000.c (rs6000_secondary_reload): Handle misaligned
+       64-bit gpr loads and stores.
+       (rs6000_secondary_reload_ppc64): New function.
+       * config/rs6000/rs6000-protos.h: Declare it.
+       * config/rs6000/rs6000.md (reload_di_store, reload_di_load): New.
+
+2011-03-26  Alan Modra  <amodra@gmail.com>
+
+       PR target/47487
+       * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Support
+       GNU Go in traceback table.
+
+2011-03-25  Richard Henderson  <rth@redhat.com>
+
+       * expr.c (emit_block_move_via_movmem): Only use 6 operand variant
+       if there are exactly 6 operands.
+       (set_storage_via_setmem): Similarly.
+
+2011-03-25  Kai Tietz  <ktietz@redhat.com>
+
+       * collect2.c (write_c_file_stat): Handle backslash
+       as right-hand directory separator.
+       (resolve_lib_name): Use IS_DIR_SEPARATOR instead of
+       checking just for slash.
+       * coverage.c (coverage_init): Use IS_ABSOLUTE_PATH
+       instead of checking for trailing slash.
+       * gcc.c (record_temp_file): Use filename_cmp instead
+       of strcmp.
+       (do_spec_1): Likewise.
+       (replace_outfile_spec_function): Likewise.
+       (is_directory): Use filename_ncmp instead of strncmp.
+       (print_multilib_info): Likewise.
+       * gcov.c (find_source): Use filename_cmp instead
+       instead of strcmp.
+       (make_gcov_file_name): Fix order of slash/backslash
+       checks.
+       * incpath.c (DIRS_EQ): Use filename_cmp instead of strcmp.
+       (add_standard_paths): Likewise.
+       * mips-tfile.c (saber_stop): Handle backslash.
+       * prefix.c (update_path): Use filename_ncmp instead of
+       strncmp.
+       * profile.c (output_location): Use filename_cmp instead
+       of strcmp.
+       * read-md.c (handle_toplevel_file): Handle backslash.
+       * tlink.c (frob_extension):  Likewise.
+       * tree-cfg.c (same_line_p): Use filename_cmp instead of
+       strcmp.
+       * tree-dump.c (dequeue_and_dump): Handle backslash.
+       * tree.c (get_file_function_name): Likewise.
+       * gengtype.c (read_input_list): Likewise.
+       (get_file_realbasename): Likewise.
+       (get_output_file_with_visibility): Use filename_cmp
+       instead of strcmp.
+
+2011-03-25  Richard Sandiford  <richard.sandiford@linaro.org>
+
+       * config/arm/arm.h (CANNOT_CHANGE_MODE_CLASS): Restrict FPA_REGS
+       case to VFPv1.
+
+2011-03-25  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * fold-const.c (expr_location_or): New function.
+       (fold_truth_not_expr): Call it.
+
+2011-03-25  Jeff Law  <law@redhat.com>
+
+       * dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Add missing
+       va_end.
+       * c-family/c-common.c (def_fn_type): Likewise.
+       * ada/gcc-interface/utils.c (def_fn_type): Likewise.
+       * emit-rtl.c (gen_rtvec): Likewise.
+       * lto/lto-lang.c (def_fn_type): Likewise.
+
+2011-03-25  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-copy.c (stmt_may_generate_copy): Copies from constants
+       also generate copies.
+       (fini_copy_prop): Handle constant values properly.
+
+2011-03-25  Jakub Jelinek  <jakub@redhat.com>
+
+       * dwarf2out.c (mem_loc_descriptor) <case ZERO_EXTRACT>: Compare
+       mode size instead of bitsize with DWARF2_ADDR_SIZE.
+       (hash_loc_operands, compare_loc_operands): Handle
+       DW_OP_GNU_entry_value.
+
+2011-03-25  Kai Tietz  <ktietz@redhat.com>
+
+       * config/i386/cygming.h (DWARF_FRAME_REGISTERS): Adjust comment.
+       (STACK_BOUNDARY): Check for bit-ness in case of MS_ABI.
+       * config/i386/i386.c (ix86_conditional_register_usage): Adjust
+       comment and use macro TARGET_64BIT_MS_ABI instead.
+       (ix86_keep_aggregate_return_pointer): Optimize for 64-bit case
+       and change default behavior for 32-bit MS_ABI.
+       (ix86_reg_parm_stack_space): Check additionally for bit-ness.
+       (ix86_function_type_abi): Allow check for ms_abi/sysv_abi for
+       32-bit, too.
+       (ix86_cfun_abi): Likewise.
+       (ix86_maybe_switch_abi): Adjust comment.
+       (init_cumulative_args): Check for bit-ness in MS_ABI case.
+       (ix86_gimplify_va_arg): Check just for not TARGET_64BIT_MS_ABI
+       instead of checking for SYSV_ABI.
+       (ix86_nsaved_sseregs): Likewise.
+       (ix86_compute_frame_layout): Set only for 64-bit MS_ABI alignment
+       to 16 bytes.
+       (ix86_expand_call): Use TARGET_64BIT_MS_ABI macro.
+       * config/i386.h (TARGET_32BIT_MS_ABI): New macro.
+       (ACCUMULATE_OUTGOING_ARGS): Check explicit for 64-bit MS_ABI.
+       (OUTGOING_REG_PARM_STACK_SPACE): Likewise.
+       * config/mingw32.h (DEFAULT_ABI): Change default always to MS_ABI.
+
+2011-03-25  Richard Guenther  <rguenther@suse.de>
+
+       * tree-flow.h (verify_stmts): Rename to verify_gimple_in_cfg.
+       (verify_types_in_gimple_seq): Rename to verify_gimple_in_seq.
+       (verify_gimple): Remove.
+       * tree-cfg.c (verify_gimple_call): Merge verification
+       from verify_stmts.
+       (verify_gimple_phi): Merge verification from verify_stmts.
+       (verify_gimple_label): New function.
+       (verify_types_in_gimple_seq_2): Rename to verify_gimple_in_seq_2.
+       (verify_types_in_gimple_seq): Rename to verify_gimple_in_seq.
+       (verify_stmt): Merge into verify_gimple_in_cfg and callees.
+       (verify_stmts): Rename to verify_gimple_in_cfg.
+       (verify_gimple_in_cfg): New function.
+       * passes.c (execute_function_todo): Call verify_gimple_in_cfg.
+       * tree-ssa.c (verify_ssa): Likewise.
+       * gimplify.c (gimplify_body): Call verify_gimple_in_seq.
+
+2011-03-25  Richard Guenther  <rguenther@suse.de>
+
+       * passes.c (init_optimization_passes): Add FRE pass after
+       early SRA.
+
+2011-03-25  Bernd Schmidt  <bernds@codesourcery.com>
+           Andrew Stubbs  <ams@codesourcery.com>
+
+       * config/arm/vfp.md (arm_movdi_vfp): Enable only when not tuning
+       for Cortex-A8.
+       (arm_movdi_vfp_cortexa8): New pattern.
+       * config/arm/neon.md (adddi3_neon, subdi3_neon, anddi3_neon,
+       iordi3_neon, xordi3_neon): Add alternatives to discourage Neon
+       instructions when tuning for Cortex-A8.  Set attribute "arch".
+       * config/arm/arm.md: Move include arm-tune.md up a bit.
+       (define_attr "arch"): Add "onlya8" and "nota8" values.
+       (define_attr "arch_enabled"): Handle "onlya8" and "nota8".
+
+2011-03-25  Nathan Froyd  <froydnj@codesourcery.com>
+
+       PR bootstrap/48282
+       Revert:
+       2011-03-24  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * function.c (instantiate_virtual_regs): Use FOR_EACH_BB and
+       FOR_BB_INSNS_SAFE to iterate through insns.  Re-indent.
+       (pass_instantiate_virtual_regs): Require PROP_cfglayout.
+       * passes.c (init_optimization_passes): Move
+       pass_instantiate_virtual_regs after pass_into_cfg_layout_mode.
+
+2011-03-25  Kai Tietz  <ktietz@redhat.com>
+
+       * c-typeck.c (comptypes_internal): Replace target
+       hook call of comp_type_attributes by version in tree.c file.
+       * gimple.c (gimple_types_compatible_p_1): Likewise.
+       * tree-ssa.c (useless_type_conversion_p): Likewise.
+       * tree.c (build_type_attribute_qual_variant): Likewise.
+       (attribute_value_equal): New static helper function.
+       (comp_type_attributes): New function.
+       (merge_attributes): Use attribute_value_equal for comparison.
+       (attribute_list_contained): Likewise.
+       * tree.h (comp_type_attributes): New prototype.
+
+2011-03-25  Richard Guenther  <rguenther@suse.de>
+
+       * tree-cfg.c (verify_gimple_assign_unary): Drop special casing
+       of complex types at -O0.
+       (verify_gimple_assign_binary): Likewise.
+       (verify_gimple_assign_ternary): Likewise.
+
+2011-03-24  Mark Wielaard  <mjw@redhat.com>
+
+       * dwarf2out.c (size_of_die): Modify comment to say DW_FORM_ref_sig8.
+       (value_format): Use DW_FORM_ref_sig8, not DW_FORM_sig8.
+
+2011-03-24  Mark Wielaard  <mjw@redhat.com>
+
+       PR debug/48041
+       * dwarf2out.c (output_abbrev_section): Only write table when
+       abbrev_die_table_in_use > 1.
+
+2011-02-24  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (alpha_expand_unaligned_load): Use extql.
+       (alpha_expand_unaligned_store): Use mskwl, mskll, mskql.
+       (alpha_expand_unaligned_load_words): Use extql.
+       (alpha_expand_unaligned_store_words): Use insqh, mskqh, mskql.
+       (emit_insxl): Handle all modes for consistency.
+
+2011-02-24  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (get_aligned_mem): Don't test WORDS_BIG_ENDIAN.
+       (alpha_expand_unaligned_load): Likewise.
+       (alpha_expand_unaligned_store): Likewise.
+       (alpha_expand_unaligned_load_words): Likewise.
+       (alpha_expand_unaligned_store_words): Likewise.
+       (emit_insxl, alpha_split_compare_and_swap_12): Likewise.
+       (alpha_split_lock_test_and_set_12): Likewise.
+       (print_operand, alpha_fold_builtin_extxx): Likewise.
+       (alpha_fold_builtin_insxx, alpha_fold_builtin_mskxx): Likewise.
+       * config/alpha/alpha.md (bswapsi2, insv, extv, extzv): Likewise.
+       (builtin_extwh, builtin_extlh, builtin_extql): Likewise.
+       (unaligned_extendqidi_be, unaligned_extendhidi_be, extxl_be): Remove.
+       (*extxl_1_be, *extql_2_be, extqh_be, extlh_be, extwh_be): Remove.
+       (insbl_be, inswl_be, insll_be, insql_be, mskxl_be): Remove.
+       (unaligned_loadqi_be, unaligned_loadhi_be): Remove.
+       (unaligned_storeqi_be, unaligned_storehi_be): Remove.
+       (extbl): Rename from builtin_extbl; don't test WORDS_BIG_ENDIAN.
+       (extwl, extll, extql): Similarly.
+       (inswh, inslh, insqh): Similarly.
+       (mskbl, mskwl, mskll, mskql): Similarly.
+       (mskwh, msklh, mskqh): Similarly.
+
 2011-02-24  Richard Henderson  <rth@redhat.com>
 
        * config/alpha/alpha.md (attribute isa): Add er, ner.