gcc.git
12 years agogensupport.c (init_rtx_reader_args_cb): Start counting code generating patterns from...
Steven Bosscher [Mon, 9 Jul 2012 08:45:12 +0000 (08:45 +0000)]
gensupport.c (init_rtx_reader_args_cb): Start counting code generating patterns from 1 to free up 0 for CODE_FOR_nothing.

* gensupport.c (init_rtx_reader_args_cb): Start counting code
generating patterns from 1 to free up 0 for CODE_FOR_nothing.
* gencodes.c (main): Give CODE_FOR_nothing the value 0.  Add
the LAST_INSN_CODE marker at the end.
* genoutput.c (nothing): New static struct data.
(idata): Initialize to &nothing.
(idata_end): Initialize to &nothing.next.
(init_insn_for_nothing): New function to create dummy 'nothing' insn.
(main): Use it.
* genpeep.c (insn_code_number): Remove global variable.
(gen_peephole): Take it as an argument instead.
(main): Take insn_code_number from read_md_rtx.
* optabs.h: Revert r161809:
(optab_handlers): Change type of insn_code back to insn_code.
(optab_handler, widening_optab_handler, set_optab_handler,
set_widening_optab_handler, convert_optab_handler,
set_convert_optab_handler, direct_optab_handler,
set_direct_optab_handler): Remove int casts.
Revert to treating the insn_code field as "insn_code".

From-SVN: r189366

12 years agoDaily bump.
GCC Administrator [Mon, 9 Jul 2012 00:17:16 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189365

12 years agosh.md (*return_i): Move trap_exit attribute check to ...
Oleg Endo [Sun, 8 Jul 2012 22:50:38 +0000 (22:50 +0000)]
sh.md (*return_i): Move trap_exit attribute check to ...

* config/sh/sh.md (*return_i): Move trap_exit attribute check to ...
* config/sh/sh.c (sh_cfun_trap_exit_p): ... this new function.
* config/sh/sh-protos.h: Declare it.

From-SVN: r189362

12 years agomcf.c: Do not include tm.h, tree.h, and langhooks.h.
Steven Bosscher [Sun, 8 Jul 2012 18:13:19 +0000 (18:13 +0000)]
mcf.c: Do not include tm.h, tree.h, and langhooks.h.

* mcf.c: Do not include tm.h, tree.h, and langhooks.h.
(dump_fixup_graph): Use current_function_name.
(adjust_cfg_counts): Likewise.
* ira-conflicts.c: Do not include tree.h.
(ira_build_conflicts): Use REG_USERVAR_P instead of DECL_ARTIFICIAL.

From-SVN: r189361

12 years agore PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
Oleg Endo [Sun, 8 Jul 2012 15:03:21 +0000 (15:03 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)

PR target/51244
* config/sh/sh.md (*branch_true_eq, *branch_false_ne, nott): New insns.

From-SVN: r189360

12 years agobasic-block.h: Re-group most prototypes per file.
Steven Bosscher [Sun, 8 Jul 2012 10:06:14 +0000 (10:06 +0000)]
basic-block.h: Re-group most prototypes per file.

gcc/
* basic-block.h: Re-group most prototypes per file.
(struct edge_list): Remove num_blocks field.
(dump_bb_info): Adjust prototypes.
(dump_reg_info): Move prototype to regs.h.
* function.h: Do not include tree.h.
Include vec.h, vecir.h, input.h and machmode.h to compensate.
(function_name): New prototype.
* gimple.h: Include tree.h to compensate for basic-block.h change.
* langhooks.h: Note that tree.h is only necessary for enum tree_code.
* regs.h (dump_reg_info): Prototype here.
* regset.h: Adjust file reference in comment.
(debug_regset): Remove prototype.
* rtl.h: Include flags.h for flag_var_tracking_assignments.
(MAY_HAVE_DEBUG_INSNS): Define as flag_var_tracking_assignments
instead of no-longer-available tree.h's MAY_HAVE_DEBUG_STMTS.
(dump_reg_info, dump_flow_info): Remove prototypes.
* bb-reorder.c (set_edge_can_fallthru_flag): Move from cfganal.c
to here, the only user.  Make static.
(reorder_basic_blocks): Call dump_reg_info before dump_flow_info.
* cfg.c: Do not include tm.h, tree.h, rtl.h, hard-reg-set.h, regs.h,
flags.h, function.h, except.h, diagnostic-core.h, tm_p.h, timevar.h,
tree-pass.h, cfgloop.h, and tree-flow.h.
Include basic-block.h, the first header I'd expect to be included.
(reg_obstack): Move to df-core.c.
(free_edge): Remove bogus ATTRIBUTE_UNUSED.
(remove_edge_raw): Do not call tree-ssa's redirect_edge_var_map_clear.
(redirect_edge_succ_nodup): Move to cfghooks.c.
(dump_regset, debug_regset): Move to df-core.c.
(dump_bb_info): Move to cfgrtl.c.
(dump_reg_info): Move to regstat.c.
(dump_flow_info): Move to cfgrtl.c.
(debug_flow_info): Likewise.
(dump_edge_info): Do not look at cfun, a CFG without cfun is nonsense.
* cfganal.c: Do not include tm.h, rtl.h, obstack.h, hard-reg-set.h,
insn-config.h, recog.h, diagnostic-core.h, tm_p.h, and cfgloop.h.
(flow_active_insn_p, forwarder_block_p, can_fallthru,
could_fall_through): Move to cfgrtl.c.
(set_edge_can_fallthru_flag): Moved to bb-reorder.c.
(create_edge_list): Do not set edge_list's removed num_blocks.
(print_edge_list): Look at n_basic_blocks instead of num_blocks.
(flow_nodes_print): Remove.
(flow_edge_list_print): Remove.
(inverted_post_order_compute): Use FOR_ALL_BB.
*cfgrtl.c (dump_flow_info): Moved from cfg.c.
Do not call dump_reg_info.
(debug_flow_info): Moved from cfg.c
(dump_bb_info): Moved from cfg.c.  Take 'verbose' argument
to avoid looking at TDF_* flags from tree-pass.h.
(flow_active_insn_p, forwarder_block_p, can_fallthru,
could_fall_through): Moved from cfganal.c.
(print_rtl_with_bb): Adjust dump_bb_info calls.
* cfghooks.c (redirect_edge_succ_nodup): Moved from cfg.c.
(remove_edge): Call redirect_edge_var_map_clear if IR_GIMPLE.
(cfgcleanup.c): Look at MAY_HAVE_DEBUG_INSNS, not MAY_HAVE_DEBUG_STMTS.
* cselib.c: Include tree.h with a FIXME.
* df-core.c (reg_obstack): Moved from cfg.c.
(dump_regset): Likewise.
(debug_regset): Likewise.  Make a DEBUG_FUNCTION.
* final.c (compute_alignments): Call dump_reg_info before
dump_flow_info.
* function.c (function_name): New function.
(current_function_name): Use it.
* ifcvt.c (rest_of_handle_if_conversion): Call dump_reg_info before
dump_flow_info.
* ira-conflicts.c: Include tree.h with a note.
* regstat.c (dump_reg_info): Moved here from cfg.c.
* loop-init.c: Include regs.h instead of hard-reg-set.h.
(rtl_loop_init): Call dump_reg_info before dump_flow_info.
(rtl_loop_done): Likewise.
* mcf.c: Include tree.h before langhooks.h.
* predict.c (maybe_hot_count_p): Assert we have cfun.
(probably_never_executed_bb_p): Likewise.
* profile.c (compute_branch_probabilities): Use gimple_dump_cfg
instead of dump_flow_info.
* sched-deps.c: Include tree.h with a FIXME.
(call_may_noreturn_p): Add FIXME note why this function has to
look at function decls instead of function decl flags.
* sched-vis.c: Include tree.h with a FIXME.
(print_rtl_slim): Adjust dump_bb_info uses.
* statistics.c (statistics_fini_pass_2): Use current_function_name
to avoid including tree.h.
(statistics_counter_event): Use function_name for the same reason.
(statistics_histogram_event): Likewise.
* tracer.c (tracer): Remove bogus gcc_assert.  Use brief_dump_cfg
instead of dump_flow_info.
* var-tracking.c (variable_tracking_main_1): Call dump_reg_info
before dump_flow_info.
* doc/cfg.texi: Update CFG documentation.
* Makefile.in (RTL_H): Depend on FLAGS_H.
(GIMPLE_H): Depend on TREE_H.
(FUNCTION_H): Depend on VEC_H, vecir.h, INPUT_H and MACHMODE_H,
but no longer on TREE_H.
(C_COMMON_H): Depend on TREE_H.
(cselib.o, cse.o, cfganal.o, loop-init.o, ira-conflicts.o,
sched-deps.o, sched-vis.o): Fixup dependencies.

c-family/
* c-common.h: Include tree.h.

cp/
* decl.c (cp_finish_decl): Add FIXME at add_local_decl call site.

From-SVN: r189359

12 years agoalias.h: Do not include coretypes.h in header files.
Steven Bosscher [Sun, 8 Jul 2012 09:57:36 +0000 (09:57 +0000)]
alias.h: Do not include coretypes.h in header files.

gcc/
* alias.h: Do not include coretypes.h in header files.
* cppbuiltin.h: Likewise.
* double-int.h: Likewise.
* gimple-fold.h: Likewise.
* flags.h: Likewise.
* tree-ssa-alias.h: Likewise.
* gengtype.h (obstack_chunk_alloc, obstack_chunk_free,
OBSTACK_CHUNK_SIZE): Define here to avoid dependency on coretypes.h.
* Makefile.in (RTL_BASE_H): Depend on coretypes.h.
(TREE_H): Likewise.
(ALIAS_H): Do not depend on coretypes.h.
(FLAGS_H): Likewise.
(realmpfr.o): Depend on coretypes.h.

java/
* verify.h: Do not include system.h and coretypes.h here.
* verify-impl.c: Include them here instead.

From-SVN: r189358

12 years agogfortran.h: Do not include coretypes.h here.
Steven Bosscher [Sun, 8 Jul 2012 09:55:02 +0000 (09:55 +0000)]
gfortran.h: Do not include coretypes.h here.

* gfortran.h: Do not include coretypes.h here.
Make it an error to include this before coretypes.h
* openmp.c: Include coretypes.h.
* interface.c: Likewise.
* intrinsic.c: Likewise.
* symbol.c: Likewise.
* class.c: Likewise.
* decl.c: Likewise.
* matchexp.c: Likewise.
* dump-parse-tree.c: Likewise.
* array.c: Likewise.
* constructor.c: Likewise.
* error.c: Likewise.
* data.c: Likewise.
* expr.c: Likewise.
* module.c: Likewise.
* scanner.c: Likewise.
* bbt.c: Likewise.
* io.c: Likewise.
* frontend-passes.c: Likewise.
* resolve.c: Likewise.
* st.c: Likewise.
* target-memory.c: Likewise.
* match.c: Likewise.
* arith.c: Likewise.
* parse.c: Likewise.
* check.c: Likewise.
* dependency.c: Likewise.
* primary.c: Likewise.
* misc.c: Likewise.
* simplify.c: Likewise.

From-SVN: r189357

12 years agoMakefile.in (gengtype-lex.o, [...]): Add -DGENERATOR_FILE manually for host gengtype...
Steven Bosscher [Sun, 8 Jul 2012 09:45:39 +0000 (09:45 +0000)]
Makefile.in (gengtype-lex.o, [...]): Add -DGENERATOR_FILE manually for host gengtype objects.

* Makefile.in (gengtype-lex.o, gengtype-parse.o, gengtype-state.o,
gengtype.o): Add -DGENERATOR_FILE manually for host gengtype objects.

From-SVN: r189356

12 years agoDaily bump.
GCC Administrator [Sun, 8 Jul 2012 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189355

12 years agoarm.h (TARGET_CPU_CPP_BUILTINS): Remove Maverick support.
Richard Earnshaw [Sat, 7 Jul 2012 16:38:46 +0000 (16:38 +0000)]
arm.h (TARGET_CPU_CPP_BUILTINS): Remove Maverick support.

* arm.h (TARGET_CPU_CPP_BUILTINS): Remove Maverick support.
(TARGET_FPA): Delete definition.
(TARGET_MAVERICK): Likewise.
(TARGET_FPA_EMU2): Likewise.
(arm_fp_model): Remove FPA and Maverick models.
(arm_arch_cirrus): Delete declaration.
(FLOAT_WORDS_BIG_ENDIAN): Delete definition.
(FIXED_REGISTERS): Remove FPA and Maverick support.  Reorganize.
(CALL_USED_REGISTERS): Likewise.
(FIRST_FPA_REGNUM, LAST_FPA_REGNUM): Delete definition.
(FIRST_VFP_REGNUM): Renumbered.
(D7_VFP_REGNUM): Chain definition.
(LAST_LO_VFP_REGNUM): Likewise.
(FIRST_HI_VFP_REGNUM): Likewise.
(LAST_HI_VFP_REGNUM): Likewise.
(FIRST_IWMMXT_GR_REGNUM): Likewise.
(LAST_IWMMXT_GR_REGNUM): Likewise.
(FIRST_IWMMXT_REGNUM): Likewise.
(LAST_IWMMXT_REGNUM): Likewise.
(FRAME_POINTER_REGNUM): Renumbered.
(ARG_POINTER_REGNUM): Renumbered.
(FIRST_PSEUDO_REGISTER): Remove FPA and Maverick registers.
(FIRST_CIRRUS_FP_REGNUM, LAST_CIRRUS_FP_REGNUM): Delete definitions.
(HARD_REGNO_REGNUM): Remove FPA support.
(REG_ALLOC_ORDER): Remove FPA and Maverick registers.  Reorganize.
(reg_class): Likewise.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
(CANNOT_CHANGE_MODE_CLASS): Never true.  Update comment.
(SECONDARY_INPUT_RELOAD_CLASS): Remove Maverick support.
(CLASS_MAX_NREGS): Remove FPA and Maverick support.
* aout.h (REGISTER_NAMES): Remove FPA and Maverick registers.
Reorganize.  Use AAPCS preferred names.
(ADDITIONAL_REGISTER_NAMES): Remove aliases for Maverick.  Update
comments.
(OVERLAPPING_REGISTER_NAMES): Update register numbering.
* arm.c (FL_CIRRUS): Delete definition.
(arm_arch_cirrus): Delete variable.
(arm_float_words_big_endian): Delete function.
(cirrus_memory_offset): Delete function.
(output_mov_long_double_fpa_from_arm): Delete function.
(output_mov_long_double_arm_from_fpa): Delete function.
(output_mov_double_fpa_from_arm): Delete function.
(output_mov_double_arm_from_fpa): Delete function.
(emit_sfm): Delete function.
(maybe_get_arm_condition_code): Update comment.
(arm_file_start): Always use softvfp for softfloat systems.
(thumb_core_reg_alloc_order): Adjust for updated register allocation.
(arm_option_override): Remove FPA and Maverick support.  Always
default to vfp as the fallback FPU format.
(use_return_insn): Remove FPA support.
(arm_get_frame_offsets): Likewise.
(arm_save_coproc_regs): Likewise.
(arm_canonicalize_comparison): Remove Maverick support.
(arm_select_cc_mode): Likewise.
(arm_gen_compare_reg): Likewise.
(arm_print_operand): Likewise.
(arm_libcall_value_1): Remove FPA and Maverick support.
(arm_function_value_regno_p): Likewise.
(arm_apply_result_size): Likewise.
(arm_legitimate_index_p): Likewise.
(thumb2_legitimate_index_p): Likewise.
(legitimize_reload_address): Likewise.
(arm_register_move_cost): Likewise.
(arm_hard_regno_mode_ok): Likewise.
(arm_regno_class): Likewise.
(arm_dbx_register_number): Likewise.
(arm_emit_unwind_sequence): Likewise.
(arm_conditional_register_usage): Likewise.
* arm-protos.h (neg_const_double_rtx_ok_for_fpa): Remove declaration.
(cirrus_memory_offset): Likewise.
(output_move_long_double_fpa_from_arm): Likewise.
(output_move_long_double_arm_from_fpa): Likewise.
(output_move_double_fpa_from_arm): Likewise.
(output_move_double_arm_from_fpa): Likewise.
(arm_float_words_big_endian): Likewise.
* arm.md (CC_REGNUM): Renumbered.
(VFPCC_REGNUM): Moved here.  Renumbered.
(FPA_F0_REGNUM, FPA_F7_REGNUM): Delete.
(attr fpu): Remove FPA and Maverick support.
* vfp.md (VFPCC_REGNUM): Delete.  Moved to arm.md.
* arm-cores.def (ep9312): Remove Maverick support.
* arm-arches.def (ep9312): Delete architecture.
* arm-tables.opt: Regenerated.

* arm/linux-elf.h (FPUTYPE_DEFAULT): Set to vfp.

From-SVN: r189350

12 years agore PR tree-optimization/53881 (ICE in hoist_edge_and_branch_if_true)
Steven Bosscher [Sat, 7 Jul 2012 12:35:44 +0000 (12:35 +0000)]
re PR tree-optimization/53881 (ICE in hoist_edge_and_branch_if_true)

gcc/
PR tree-optimization/53881
* tree-switch-conversion.c (emit_case_bit_tests): Do not rely on
comparing labels to establish uniqueness of a switch case target,
use the CFG instead.

testsuite/
PR tree-optimization/53881
* gcc.dg/pr53881.c: New test.

From-SVN: r189349

12 years agocombine.c (force_to_mode): Avoid undefined behaviour due to negative shift amount.
Ulrich Weigand [Sat, 7 Jul 2012 12:19:50 +0000 (12:19 +0000)]
combine.c (force_to_mode): Avoid undefined behaviour due to negative shift amount.

* combine.c (force_to_mode) [LSHIFTRT]: Avoid undefined behaviour
due to negative shift amount.

From-SVN: r189347

12 years agoFix configure test for "stack protector support in target C library".
Hans-Peter Nilsson [Sat, 7 Jul 2012 00:26:08 +0000 (00:26 +0000)]
Fix configure test for "stack protector support in target C library".

* configure.ac (test_prefix, test_exec_prefix): Move setting from
inside sysroot handling to before and outside it.
* configure: Regenerate.

From-SVN: r189345

12 years agoDaily bump.
GCC Administrator [Sat, 7 Jul 2012 00:17:28 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189344

12 years agore PR bootstrap/52947 (bootstrap fails due to wrong include search path composition)
Kai Tietz [Fri, 6 Jul 2012 18:54:20 +0000 (20:54 +0200)]
re PR bootstrap/52947 (bootstrap fails due to wrong include search path composition)

        PR bootstrap/52947
        * config/i386/mingw32.h (NATIVE_SYSTEM_HEADER_DIR): Define it always
        as "/mingw/include".

From-SVN: r189338

12 years agore PR c++/53862 ([C++11] sorry, unimplemented: use of 'type_pack_expansion' in template)
Jason Merrill [Fri, 6 Jul 2012 15:45:10 +0000 (11:45 -0400)]
re PR c++/53862 ([C++11] sorry, unimplemented: use of 'type_pack_expansion' in template)

PR c++/53862
* pt.c (tsubst_arg_types): Add "end" parameter.
(check_undeduced_parms): Use it.

From-SVN: r189334

12 years ago* cp-tree.h (DECL_DECLARES_TYPE_P): Check DECL_TYPE_TEMPLATE_P.
Jason Merrill [Fri, 6 Jul 2012 14:00:44 +0000 (10:00 -0400)]
* cp-tree.h (DECL_DECLARES_TYPE_P): Check DECL_TYPE_TEMPLATE_P.

From-SVN: r189332

12 years agore PR c++/53858 ([C++11] template aliases used in template parameters default expression)
Jason Merrill [Fri, 6 Jul 2012 14:00:31 +0000 (10:00 -0400)]
re PR c++/53858 ([C++11] template aliases used in template parameters default expression)

PR c++/53858
* name-lookup.c (ambiguous_decl): Use DECL_TYPE_TEMPLATE_P.

From-SVN: r189331

12 years agore PR libstdc++/53872 ([C++11] ADL bug in std::thread)
Paolo Carlini [Fri, 6 Jul 2012 13:55:58 +0000 (13:55 +0000)]
re PR libstdc++/53872 ([C++11] ADL bug in std::thread)

2012-07-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53872
* include/std/thread (thread::_M_make_routine): Qualify make_shared
to prevent ADL.
* testsuite/30_threads/thread/adl.cc: New.

From-SVN: r189329

12 years agoMakefile.def (cloog): Pass $(HOST_GMPINC) and $(HOST_ISLINC) as CPPFLAGS...
Richard Guenther [Fri, 6 Jul 2012 12:55:34 +0000 (12:55 +0000)]
Makefile.def (cloog): Pass $(HOST_GMPINC) and $(HOST_ISLINC) as CPPFLAGS...

2012-07-06  Richard Guenther  <rguenther@suse.de>

* Makefile.def (cloog): Pass $(HOST_GMPINC) and $(HOST_ISLINC)
as CPPFLAGS, pass path to built gmp as LDFLAGS, always use
--with-gmp=system.
* Makefile.in: Regenerated.
* configure: Likewise.

From-SVN: r189328

12 years agoconfigure.ac (extra_isl_gmp_configure_flags): Initialize and subst.
Richard Guenther [Fri, 6 Jul 2012 12:31:03 +0000 (12:31 +0000)]
configure.ac (extra_isl_gmp_configure_flags): Initialize and subst.

2012-07-06  Richard Guenther  <rguenther@suse.de>

* configure.ac (extra_isl_gmp_configure_flags): Initialize and subst.
* Makefile.def (isl): Use extra_isl_gmp_configure_flags and
supply V=1 as extra_make_flags.
* configure: Regenerated.
* Makefile.in: Likewise.

From-SVN: r189327

12 years agore PR debug/53820 (ICE in vt_expand_var_loc_chain, at var-tracking.c:8029)
Alexandre Oliva [Fri, 6 Jul 2012 11:37:36 +0000 (11:37 +0000)]
re PR debug/53820 (ICE in vt_expand_var_loc_chain, at var-tracking.c:8029)

PR debug/53820
* var-tracking.c (vt_add_function_parameter): Convert
internal_arg_pointer into arg_pointer-based address even
without DRAP.

From-SVN: r189326

12 years agore PR rtl-optimization/53827 ([alpha]: Invalid insn scheduling in sched1 pass)
Alexandre Oliva [Fri, 6 Jul 2012 11:37:14 +0000 (11:37 +0000)]
re PR rtl-optimization/53827 ([alpha]: Invalid insn scheduling in sched1 pass)

PR rtl-optimization/53827
PR debug/53671
PR debug/49888
* alias.c (memrefs_conflict_p): Adjust offset and size by the
same amount for alignment ANDs.

From-SVN: r189325

12 years agore PR tree-optimization/51879 (Missed tail merging with non-const/pure calls)
Tom de Vries [Fri, 6 Jul 2012 11:22:12 +0000 (11:22 +0000)]
re PR tree-optimization/51879 (Missed tail merging with non-const/pure calls)

2012-07-06  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/51879
* gcc.dg/pr51879-16.c: New test.
* gcc.dg/pr51879-17.c: Same.

From-SVN: r189324

12 years agore PR tree-optimization/51879 (Missed tail merging with non-const/pure calls)
Tom de Vries [Fri, 6 Jul 2012 11:22:06 +0000 (11:22 +0000)]
re PR tree-optimization/51879 (Missed tail merging with non-const/pure calls)

2012-07-06  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/51879
* tree-ssa-sccvn.c (copy_reference_ops_from_call)
(visit_reference_op_call): Handle case that lhs is not an SSA_NAME.
(visit_use): Also call visit_reference_op_call for calls with a vdef.

From-SVN: r189323

12 years agore PR tree-optimization/52009 (Another missed tail merging opportunity)
Tom de Vries [Fri, 6 Jul 2012 11:07:37 +0000 (11:07 +0000)]
re PR tree-optimization/52009 (Another missed tail merging opportunity)

2012-07-06  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/52009
* gcc.dg/pr51879-7.c: New test.
* gcc.dg/pr51879-18.c: New test.

From-SVN: r189322

12 years agore PR tree-optimization/52009 (Another missed tail merging opportunity)
Tom de Vries [Fri, 6 Jul 2012 11:07:32 +0000 (11:07 +0000)]
re PR tree-optimization/52009 (Another missed tail merging opportunity)

2012-07-06  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/52009
* tree-ssa-tail-merge.c (gimple_equal_p): For GIMPLE_ASSIGN, compare
value numbers of gimple_vdef.
* tree-ssa-sccvn.h (vn_reference_insert): Add vdef parameter to
prototype.
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle MODIFY_EXPR.
(vn_reference_insert): Add and handle vdef parameter.
(visit_reference_op_load): Add argument to vn_reference_insert call.
(visit_reference_op_store): Find value number of vdef of store.  Insert
value number of vdef of store.

From-SVN: r189321

12 years agoi386.md (simple lea to add peephole): Also transform RTXes where second PLUS operand...
Uros Bizjak [Fri, 6 Jul 2012 10:57:07 +0000 (12:57 +0200)]
i386.md (simple lea to add peephole): Also transform RTXes where second PLUS operand matches output.

* config/i386/i386.md (simple lea to add peephole): Also transform
RTXes where second PLUS operand matches output.

From-SVN: r189320

12 years agoi386.c (construct_plt_address): Make static.
Uros Bizjak [Fri, 6 Jul 2012 10:18:39 +0000 (12:18 +0200)]
i386.c (construct_plt_address): Make static.

* config/i386/i386.c (construct_plt_address): Make static.
* config/i386/i386-protos.h (construct_plt_address): Remove.

From-SVN: r189319

12 years agomn10300.c (mn10300_encode_section_info): Call default_encode_section_info.
Nick Clifton [Fri, 6 Jul 2012 10:05:15 +0000 (10:05 +0000)]
mn10300.c (mn10300_encode_section_info): Call default_encode_section_info.

* config/mn10300/mn10300.c (mn10300_encode_section_info): Call
default_encode_section_info.

From-SVN: r189316

12 years agore PR target/53811 (ICE: in insn_default_length, at config/i386/i386.md:529 (unrecogn...
Uros Bizjak [Fri, 6 Jul 2012 10:00:11 +0000 (12:00 +0200)]
re PR target/53811 (ICE: in insn_default_length, at config/i386/i386.md:529 (unrecognizable insn) with -mcmodel=large)

PR target/53811
* config/i386/i386.c (x86_output_mi_thunk): For CM_LARGE_PIC model,
emit PIC sequence for fnaddr symbol reference in advance.

From-SVN: r189315

12 years agoRevert
Eric Botcazou [Fri, 6 Jul 2012 07:44:52 +0000 (07:44 +0000)]
Revert
2012-06-14  Eric Botcazou  <ebotcazou@adacore.com>

* dwarf2out.c (function_possibly_abstracted_p): New static function.
(gen_subprogram_die): Use it function_possibly_abstracted_p in lieu of
cgraph_function_possibly_inlined_p.
(gen_inlined_subroutine_die): Return if the origin is to be ignored.
(process_scope_var): Do not emit concrete instances of abstracted
nested functions from here.
(gen_decl_die): Emit the abstract instance if the function is possibly
abstracted and not only possibly inlined.
(dwarf2out_finish): Find the first non-abstract parent instance and
attach concrete instances on the limbo list to it.

From-SVN: r189311

12 years agoDaily bump.
GCC Administrator [Fri, 6 Jul 2012 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189310

12 years agore PR c++/53039 (including <functional> breaks std::is_convertible with template...
Jason Merrill [Thu, 5 Jul 2012 21:24:33 +0000 (17:24 -0400)]
re PR c++/53039 (including <functional> breaks std::is_convertible with template-pack expansion)

PR c++/53039
* pt.c (arg_from_parm_pack_p): Go back to using same_type_p or
cp_tree_equal.

From-SVN: r189305

12 years agocp-tree.h (TEMPLATE_PARM_NUM_SIBLINGS): Remove.
Jason Merrill [Thu, 5 Jul 2012 19:39:12 +0000 (15:39 -0400)]
cp-tree.h (TEMPLATE_PARM_NUM_SIBLINGS): Remove.

* cp-tree.h (TEMPLATE_PARM_NUM_SIBLINGS): Remove.
(struct template_parm_index_s): Remove num_siblings.
* pt.c (fixup_template_parms, fixup_template_parm_index): Remove.
(fixup_template_type_parm_type): Remove.
(build_template_parm_index): Remove num_siblings parm.
(process_template_parm): Likewise.
* parser.c (cp_parser_template_parameter_list): Adjust.
* tree.c (cp_tree_equal): Don't compare num_siblings.
* typeck.c (comp_template_parms_position): Likewise.

From-SVN: r189299

12 years agore PR c++/50852 (ICE: internal compiler error: in tsubst, at cp/pt.c:11030)
Jason Merrill [Thu, 5 Jul 2012 19:39:01 +0000 (15:39 -0400)]
re PR c++/50852 (ICE: internal compiler error: in tsubst, at cp/pt.c:11030)

PR c++/50852
PR c++/53039
* tree.c (strip_typedefs_expr): New.
* cp-tree.h: Declare it.
* pt.c (convert_template_argument, unify): Use it.
* parser.c (cp_parser_template_declaration_after_export): Don't call
fixup_template_parms.

From-SVN: r189298

12 years agoCorrect bug number to PR target/48941
Ramana Radhakrishnan [Thu, 5 Jul 2012 16:56:15 +0000 (16:56 +0000)]
Correct bug number to PR target/48941

First part of the fix .

From-SVN: r189295

12 years agore PR rtl-optimization/49891 (ICE in redirect_jump_1)
Ramana Radhakrishnan [Thu, 5 Jul 2012 16:45:18 +0000 (16:45 +0000)]
re PR rtl-optimization/49891 (ICE in redirect_jump_1)

2012-07-05  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

        PR target/49891
        PR target/51980
        * gcc/testsuite/gcc.target/arm/neon/vtrnf32.c: Update.
        * gcc/testsuite/gcc.target/arm/neon/vtrns32.c: Update.
        * gcc/testsuite/gcc.target/arm/neon/vtrnu32.c: Update.
        * gcc/testsuite/gcc.target/arm/neon/vzipf32.c: Update.
        * gcc/testsuite/gcc.target/arm/neon/vzips32.c: Update.
        * gcc/testsuite/gcc.target/arm/neon/vzipu32.c: Update.

2012-07-05  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
    Julian Brown  <julian@codesourcery.com>

        PR target/49891
        PR target/51980
        * config/arm/neon-gen.ml (return_by_ptr): Delete.
        (print_function): Handle empty strings.
        (return): Delete use of return_by_ptr.
        (mask_shape_for_shuffle): New function.
        (mask_elems): Likewise.
        (shuffle_fn): Likewise.
        (params): Simplify and remove use of return_by_ptr.
        (get_shuffle): New function.
        (print_variant): Update.
        * config/arm/neon.ml (rev_elems): New function.
        (permute_range): Likewise.
        (zip_range): Likewise.
        (uzip_range): Likewise.
        (trn_range): Likewise.
        (zip_elems): Likewise.
        (uzip_elems): Likewise.
        (trn_elems): Likewise.
        (features): New enumeration Use_shuffle. Delete ReturnPtr.
        (pf_su_8_16): New.
        (suf_32): New.
        (ops): Update entries for Vrev64, Vrev32, Vrev16, Vtr, Vzip, Vuzp.
        * config/arm/arm_neon.h: Regenerate.

Co-Authored-By: Julian Brown <julian@codesourcery.com>
From-SVN: r189294

12 years agore PR fortran/53732 ("mismatching comparison operand types" on compile)
Mikael Morin [Thu, 5 Jul 2012 15:18:26 +0000 (15:18 +0000)]
re PR fortran/53732 ("mismatching comparison operand types" on compile)

fortran/
PR fortran/53732
* trans-array.c (gfc_add_loop_ss_code): Disable self recursive calls
handling nested loop(s) if the subscript flag is true.

testsuite/
PR fortran/53732
* gfortran.dg/inline_sum_4.f90: New test.

From-SVN: r189292

12 years agotree-pretty-print.c (dump_generic_node): Properly test the result of exact_log2.
Richard Guenther [Thu, 5 Jul 2012 15:15:45 +0000 (15:15 +0000)]
tree-pretty-print.c (dump_generic_node): Properly test the result of exact_log2.

2012-07-05  Richard Guenther  <rguenther@suse.de>

* tree-pretty-print.c (dump_generic_node): Properly test
the result of exact_log2.

From-SVN: r189291

12 years ago* hr.po: New.
Joseph Myers [Thu, 5 Jul 2012 14:30:03 +0000 (15:30 +0100)]
* hr.po: New.

From-SVN: r189289

12 years ago2012-07-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Thu, 5 Jul 2012 10:46:19 +0000 (10:46 +0000)]
2012-07-05  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390-protos.h (s390_expand_movmem)
(s390_expand_cmpmem): Add return value.
* config/s390/s390.c (s390_expand_movmem, s390_expand_cmpmem):
Return FALSE to use the library function in some cases.
* config/s390/s390.md (movmem, cmpmem): Evaluate return value of C
helper functions.

From-SVN: r189288

12 years agoconfig.gcc: Enable ifunc attribute by default on s390 and s390x.
Andreas Krebbel [Thu, 5 Jul 2012 10:45:24 +0000 (10:45 +0000)]
config.gcc: Enable ifunc attribute by default on s390 and s390x.

2012-07-05  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config.gcc: Enable ifunc attribute by default on s390 and s390x.

From-SVN: r189287

12 years agoexpr.c (try_casesi): Remove bogus ATTRIBUTE_UNUSED markers.
Steven Bosscher [Thu, 5 Jul 2012 10:12:14 +0000 (10:12 +0000)]
expr.c (try_casesi): Remove bogus ATTRIBUTE_UNUSED markers.

gcc/
* expr.c (try_casesi): Remove bogus ATTRIBUTE_UNUSED markers.
* stmt.c (dump_case_nodes): New.
(expand_case): Split out code generation parts into new functions.
(expand_switch_as_decision_tree_p): Split out from expand_case.
(emit_case_decision_tree): Likewise.
(emit_case_dispatch_table): Likewise.

testsuite/
* gcc.c-torture/compile/20000326-1.c: Fix to not optimize to empty.

From-SVN: r189285

12 years agoAdd files forgotten in last commit (ChangeLog has them already):
Matthew Gretton-Dann [Thu, 5 Jul 2012 09:10:29 +0000 (09:10 +0000)]
Add files forgotten in last commit (ChangeLog has them already):

gcc/testsuite:
* gcc.target/arm/fma.c: New testcase.
* gcc.target/arm/fma.h: Likewise.
* gcc.target/arm/fma-sp.c: Likewise.

From-SVN: r189284

12 years agoiterators.md (SDF): New mode iterator.
Matthew Gretton-Dann [Thu, 5 Jul 2012 09:07:00 +0000 (09:07 +0000)]
iterators.md (SDF): New mode iterator.

* gcc/config/arm/iterators.md (SDF): New mode iterator.
(V_if_elem): Add support for SF and DF modes.
(V_reg): Likewise.
(F_constraint): New mode iterator attribute.
(F_fma_type): Likewise.
config/arm/vfp.md (fma<SDF:mode>4): New pattern.
(*fmsub<SDF:mode>4): Likewise.
(*fmnsub<SDF:mode>4): Likewise.
(*fmnadd<SDF:mode>4): Likewise.
* gcc/testsuite/gcc.target/arm/fma-sp.c: New testcase.
* gcc/testsuite/gcc.target/arm/fma.c: Likewise.
* gcc/testsuite/gcc.target/arm/fma.h: Likewise.

From-SVN: r189283

12 years agore PR fortran/53449 (fortran fails to build with LTO bootstrap)
Uros Bizjak [Thu, 5 Jul 2012 07:22:17 +0000 (09:22 +0200)]
re PR fortran/53449 (fortran fails to build with LTO bootstrap)

* expmed.c (expand_mult): Initialize coeff and is_neg.

java/ChangeLog:

* jcf-io.c (read_zip_member): Initialize d_stream.

fortran/ChangLog:

PR fortran/53449
* parse.c (gfc_parse_file): Initialize errors_before.

From-SVN: r189281

12 years agolibgomp.texi (Library Index): Renamed from "Index" to prevent conflict with index...
Sandra Loosemore [Thu, 5 Jul 2012 02:53:03 +0000 (22:53 -0400)]
libgomp.texi (Library Index): Renamed from "Index" to prevent conflict with index.html on case-insensitive...

2012-07-04  Sandra Loosemore <sandra@codesourcery.com>

libgomp/
* libgomp.texi (Library Index): Renamed from "Index" to prevent
conflict with index.html on case-insensitive file systems.

From-SVN: r189278

12 years ago* include/std/condition_variable: Update copyright years.
Jonathan Wakely [Thu, 5 Jul 2012 01:14:35 +0000 (01:14 +0000)]
* include/std/condition_variable: Update copyright years.

From-SVN: r189277

12 years agoDaily bump.
GCC Administrator [Thu, 5 Jul 2012 00:17:30 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189272

12 years agopredicates.md (zero_extend_operand): New predicate.
Oleg Endo [Wed, 4 Jul 2012 23:32:13 +0000 (23:32 +0000)]
predicates.md (zero_extend_operand): New predicate.

* config/sh/predicates.md (zero_extend_operand): New predicate.
* config/sh/sh.md (zero_extendhisi2): Simplify by using new
zero_extend_operand predicate.
(zero_extendqisi2): Likewise.

From-SVN: r189269

12 years agore PR libstdc++/53830 (condition_variable_any - deadlock issue)
Jonathan Wakely [Wed, 4 Jul 2012 22:17:18 +0000 (22:17 +0000)]
re PR libstdc++/53830 (condition_variable_any - deadlock issue)

PR libstdc++/53830
* include/std/condition_variable (condition_variable_any::wait):
Move _Unlock type to class scope.
(condition_variable_any::wait_until): Reuse it.
* testsuite/30_threads/condition_variable_any/53830.cc: New.

From-SVN: r189268

12 years agore PR c++/53848 (ICE in decl_linkage at ../../gcc-trunk/gcc/cp/tree.c:3215)
Jason Merrill [Wed, 4 Jul 2012 21:34:07 +0000 (17:34 -0400)]
re PR c++/53848 (ICE in decl_linkage  at ../../gcc-trunk/gcc/cp/tree.c:3215)

PR c++/53848
* decl.c (build_enumerator): Don't use build_lang_decl_loc.

From-SVN: r189267

12 years agore PR middle-end/53321 (LTO bootstrap failed with bootstrap-profiled)
Uros Bizjak [Wed, 4 Jul 2012 13:49:19 +0000 (15:49 +0200)]
re PR middle-end/53321 (LTO bootstrap failed with bootstrap-profiled)

PR middle-end/53321
* ipa.c (symtab_remove_unreachable_nodes): Partially revert r187375
to not call cgraph_propagate_frequency if something was changed.

testsuite/ChangLog:

PR middle-end/53321
* g++.dg/torture/pr53321.C: New test.

From-SVN: r189261

12 years agore PR middle-end/53433 (ICE in int_mode_for_mode, at stor-layout.c:424 during lto...
Richard Guenther [Wed, 4 Jul 2012 13:47:18 +0000 (13:47 +0000)]
re PR middle-end/53433 (ICE in int_mode_for_mode, at stor-layout.c:424 during lto-bootstrap)

2012-07-04  Richard Guenther  <rguenther@suse.de>

PR middle-end/53433
* gimple-fold.c (get_base_constructor): Do not return an
error_mark_node DECL_INITIAL.

From-SVN: r189260

12 years agoisl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.
Tristan Gingold [Wed, 4 Jul 2012 12:26:55 +0000 (12:26 +0000)]
isl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.

config/
2012-07-04  Tristan Gingold  <gingold@adacore.com>

* isl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.
Fix comments.

2012-07-04  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

From-SVN: r189257

12 years agore PR middle-end/53844 (GCC generates suboptimal code for unused members of classes...
Richard Guenther [Wed, 4 Jul 2012 12:10:40 +0000 (12:10 +0000)]
re PR middle-end/53844 (GCC generates suboptimal code for unused members of classes in some cases on multiple targets.)

2012-07-04  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53844
* tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
the loop virtual PHI.

* g++.dg/tree-ssa/pr53844.C: New testcase.

From-SVN: r189256

12 years agore PR middle-end/53849 (ICE: in add_referenced_var_1, at tree-dfa.c:567 with -O2...
Richard Guenther [Wed, 4 Jul 2012 12:09:09 +0000 (12:09 +0000)]
re PR middle-end/53849 (ICE: in add_referenced_var_1, at tree-dfa.c:567 with -O2 -ftree-parallelize-loops=2 -fno-tree-loop-im)

2012-07-04  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53849
* tree-cfg.c (move_stmt_op): Only call add_referenced_var
for duplicated locals.  Use add_referenced_var_1 to avoid
pushing/popping cfun.

* gcc.dg/pr53849.c: New testcase.

From-SVN: r189255

12 years agowinnt.c (i386_pe_reloc_rw_mask): New function.
Kai Tietz [Wed, 4 Jul 2012 11:22:02 +0000 (13:22 +0200)]
winnt.c (i386_pe_reloc_rw_mask): New function.

        * config/i386/winnt.c (i386_pe_reloc_rw_mask): New function.
        * config/i386/i386-protos.h (i386_pe_reloc_rw_mask): Add
        prototype.
        * config/i386/cygming.h (TARGET_ASM_RELOC_RW_MASK): Define
        as i386_pe_reloc_rw_mask.

From-SVN: r189254

12 years agotree.c (find_decls_types_r): Handle TYPE_CONTEXT the same as in free_lang_data_in_type.
Richard Guenther [Wed, 4 Jul 2012 10:36:07 +0000 (10:36 +0000)]
tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same as in free_lang_data_in_type.

2012-07-04  Richard Guenther  <rguenther@suse.de>

* tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same
as in free_lang_data_in_type.

From-SVN: r189252

12 years agoMakefile.in (OBJS): Add graphite-optimize-isl.o.
Tobias Grosser [Wed, 4 Jul 2012 09:15:09 +0000 (09:15 +0000)]
Makefile.in (OBJS): Add graphite-optimize-isl.o.

2012-07-04  Tobias Grosser <tobias@grosser.es>
Michael Matz  <matz@suse.de>

* Makefile.in (OBJS): Add graphite-optimize-isl.o.
(graphite-optimize-isl.o): Add dependencies.
* common.opt (floop-nest-optimize): New flag.
* doc/invoke.texi (floop-nest-optimize): Document.
* graphite-dependences.c (compute_deps): Export.
* graphite-poly.h (compute_deps): Declare.
* graphite-optimize-isl.c: New file.
* graphite-poly.c (apply_poly_transforms): Run the loop
nest optimizer.
* tree-ssa-loop.c (gate_graphite_transforms): Enable graphite
if -floop-nest-optimize is enabled.

Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r189249

12 years ago04_header: Remove empty directory.
Matthias Klose [Wed, 4 Jul 2012 07:50:30 +0000 (07:50 +0000)]
04_header: Remove empty directory.

2012-07-04  Matthias Klose  <doko@ubuntu.com>

        * testsuite/28_regex/headers/04_header: Remove empty directory.
        * testsuite/28_regex/algorithms/02_match: Likewise.

From-SVN: r189248

12 years agoDaily bump.
GCC Administrator [Wed, 4 Jul 2012 00:18:24 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r189245

12 years agopredicates.md (logical_and_operand): New predicate.
Oleg Endo [Tue, 3 Jul 2012 22:26:23 +0000 (22:26 +0000)]
predicates.md (logical_and_operand): New predicate.

* config/sh/predicates.md (logical_and_operand): New predicate.
* config/sh/constraints.md (Jmb, Jmw): New constraints.
* config/sh/sh.md (andsi3): Move expander above insns.  Add handling
of 0xFFFF constant.  Use logical_and_operand predicate and
satisfies_constraint_Jmb, satisfies_constraint_Jmw.
(*andsi3_compact): Make it an insn_and_split.  Use
logical_and_operand predicate.  Add Jmb,Jmw alternatives.

From-SVN: r189241

12 years agore PR libstdc++/53840 ([C++11] DR 921. Rational Arithmetic should use template aliases)
Paolo Carlini [Tue, 3 Jul 2012 19:24:07 +0000 (19:24 +0000)]
re PR libstdc++/53840 ([C++11] DR 921. Rational Arithmetic should use template aliases)

2012-07-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53840
* include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
ratio_subtract): Use template aliases.
* include/std/chrono (duration<>::duration(const duration<>&),
duration_cast): Adjust.
* testsuite/20_util/ratio/operations/53840.cc: New.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.

From-SVN: r189239

12 years agore PR c++/53826 ([alpha]: ICE in fold_convert_loc, at fold-const.c:2008)
Jason Merrill [Tue, 3 Jul 2012 18:10:39 +0000 (14:10 -0400)]
re PR c++/53826 ([alpha]: ICE in fold_convert_loc, at fold-const.c:2008)

PR c++/53826
* tree.c (build_zero_cst): Handle NULLPTR_TYPE.

From-SVN: r189238

12 years agomep.c (mep_reorg_regmove): Use next_nonnote_non_debug_insn to advance to the next...
Nick Clifton [Tue, 3 Jul 2012 15:49:25 +0000 (15:49 +0000)]
mep.c (mep_reorg_regmove): Use next_nonnote_non_debug_insn to advance to the next insn.

* config/mep/mep.c (mep_reorg_regmove): Use
next_nonnote_non_debug_insn to advance to the next insn.  Do not
expect delete_insn to return an rtx.

From-SVN: r189234

12 years agoinstall.texi (CLooG): Clarify how CLooG needs to be configured and that it needs...
Richard Guenther [Tue, 3 Jul 2012 13:38:37 +0000 (13:38 +0000)]
install.texi (CLooG): Clarify how CLooG needs to be configured and that it needs to be built against...

2012-07-03  Richard Guenther  <rguenther@suse.de>

* doc/install.texi (CLooG): Clarify how CLooG needs to be
configured and that it needs to be built against ISL 0.10.

From-SVN: r189228

12 years agore PR c++/53812 (lower_stmt (4.6), verify_gimple_stmt (4.7.0, 4.7.1))
Jakub Jelinek [Tue, 3 Jul 2012 13:09:16 +0000 (15:09 +0200)]
re PR c++/53812 (lower_stmt (4.6), verify_gimple_stmt (4.7.0, 4.7.1))

PR c++/53812
* semantics.c (finish_goto_stmt): Surround computed goto argument
with CLEANUP_POINT_EXPR if needed.

* g++.dg/ext/label14.C: New test.

From-SVN: r189225

12 years agoi386.c (ix86_option_override_internal): Fix wrong code model string in the error...
Uros Bizjak [Tue, 3 Jul 2012 12:02:33 +0000 (14:02 +0200)]
i386.c (ix86_option_override_internal): Fix wrong code model string in the error message.

* config/i386/i386.c (ix86_option_override_internal): Fix wrong
code model string in the error message.

From-SVN: r189219

12 years agore PR target/53811 (ICE: in insn_default_length, at config/i386/i386.md:529 (unrecogn...
Uros Bizjak [Tue, 3 Jul 2012 11:58:12 +0000 (13:58 +0200)]
re PR target/53811 (ICE: in insn_default_length, at config/i386/i386.md:529 (unrecognizable insn) with -mcmodel=large)

PR target/53811
* config/i386/i386.c (x86_output_mi_thunk): Check if fnaddr satisfies
sibcall_insn_operand.  Move it to a temporary register if not.

testsuite/ChangLog:

PR target/53811
* g++.dg/other/pr53811.C: New test.

From-SVN: r189218

12 years agoMakfile.def (isl): Remove not necessary extra_exports and extra_make_flags.
Richard Guenther [Tue, 3 Jul 2012 10:12:34 +0000 (10:12 +0000)]
Makfile.def (isl): Remove not necessary extra_exports and extra_make_flags.

2012-07-03  Richard Guenther  <rguenther@suse.de>

* Makfile.def (isl): Remove not necessary extra_exports and
extra_make_flags.
(cloog): Use $$CPPFLAGS instead of ${CPPFLAGS}.
* Makefile.in: Regenerated.

From-SVN: r189212

12 years agore PR target/28896 (-fstack-limit-symbol and m68k and non 68020)
Andreas Schwab [Tue, 3 Jul 2012 09:46:01 +0000 (09:46 +0000)]
re PR target/28896 (-fstack-limit-symbol and m68k and non 68020)

PR target/28896
* config/m68k/m68k.c (m68k_option_override): Reset stack_limit_rtx
if !TARGET_68020.

testsuite/
* gcc.target/m68k/stack-limit-1.c: New testcase.

From-SVN: r189210

12 years agocloog.m4: Remove debugging print.
Richard Guenther [Tue, 3 Jul 2012 09:44:53 +0000 (09:44 +0000)]
cloog.m4: Remove debugging print.

2012-07-03  Richard Guenther  <rguenther@suse.de>

config/
* cloog.m4: Remove debugging print.

* Makefile.def (cloog): Add V=1 to extra_make_flags.
* configure.ac: If either the ISL or the CLooG check failed
do not try to build in-tree versions.
* Makefile.in: Regenerated.
* configure: Regenerated.

From-SVN: r189209

12 years agoFix ISL check with static libisl
Rainer Orth [Tue, 3 Jul 2012 09:26:58 +0000 (09:26 +0000)]
Fix ISL check with static libisl

toplevel:
* configure: Regenerate.

config:
* isl.m4 (ISL_CHECK_VERSION): Add -lisl to LIBS, not LDFLAGS.

From-SVN: r189207

12 years agotrans.c (Call_to_gnu): Robustify test for function case if the CICO mechanism is...
Eric Botcazou [Tue, 3 Jul 2012 09:06:08 +0000 (09:06 +0000)]
trans.c (Call_to_gnu): Robustify test for function case if the CICO mechanism is used.

* gcc-interface/trans.c (Call_to_gnu): Robustify test for function case
if the CICO mechanism is used.

From-SVN: r189204

12 years agoutils2.c (build_simple_component_ref): Do not look through an extension if the type...
Eric Botcazou [Tue, 3 Jul 2012 08:49:54 +0000 (08:49 +0000)]
utils2.c (build_simple_component_ref): Do not look through an extension if the type contains a placeholder.

* gcc-interface/utils2.c (build_simple_component_ref): Do not look
through an extension if the type contains a placeholder.

From-SVN: r189202

12 years agoexp_disp.adb (Expand_Dispatching_Call): Propagate the convention on the designated...
Eric Botcazou [Tue, 3 Jul 2012 08:28:34 +0000 (08:28 +0000)]
exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on the designated subprogram type and also set...

* exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on
the designated subprogram type and also set Is_Dispatch_Table_Entity.
(Expand_Interface_Thunk): Propagate the convention on the thunk.
(Set_CPP_Constructors_Old): Set Is_Constructor and Convention_CPP on
the internal view of the constructors.
(Set_CPP_Constructors): Likewise.
* sem_prag.adb (Analyze_Pragma) <Pragma_CPP_Constructor>: Set the
convention on the function.
* gcc-interface/gigi.h (is_cplusplus_method): Declare.
* gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
(gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the `thiscall'
calling convention
(get_minimal_subprog_decl): Likewise.
(is_cplusplus_method): New predicate.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Issue an
error on access to C++ constructor or member function.

From-SVN: r189199

12 years agoutils.c (gnat_pushdecl): Set TYPE_CONTEXT for types attached to a TYPE_DECL.
Eric Botcazou [Tue, 3 Jul 2012 07:57:46 +0000 (07:57 +0000)]
utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types attached to a TYPE_DECL.

* gcc-interface/utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types
attached to a TYPE_DECL.

From-SVN: r189195

12 years agoxmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.
Uros Bizjak [Tue, 3 Jul 2012 07:24:10 +0000 (09:24 +0200)]
xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.

gcc/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.

libgomp/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

* config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
* testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.

libitm/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

* config/x86/target.h (cpu_relax): Use __builtin_ia32_pause.

From-SVN: r189194

12 years agoconfigure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the assembler accept...
Uros Bizjak [Tue, 3 Jul 2012 07:15:09 +0000 (09:15 +0200)]
configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the assembler accept 'rep bsf ...'...

* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the
assembler accept 'rep bsf ...', 'rep bsr ...', 'rep ret' and 'rep nop'.
* configure: Regenerated.
* config/i386/i386.md (simple_return_internal_long): Use %;
(ctz<mode>2): Likewise.
(*pause): Likewise.

From-SVN: r189193

12 years agopacked1.C: Remove SH from xfail list.
Oleg Endo [Tue, 3 Jul 2012 07:15:08 +0000 (07:15 +0000)]
packed1.C: Remove SH from xfail list.

* g++.dg/other/packed1.C: Remove SH from xfail list.

From-SVN: r189192

12 years agore PR c++/53619 ([C++11] wrong capture of "this" in lambda in case of multiple inheri...
Jason Merrill [Tue, 3 Jul 2012 05:03:34 +0000 (01:03 -0400)]
re PR c++/53619 ([C++11] wrong capture of "this" in lambda in case of multiple inheritance)

PR c++/53619
* pt.c (in_template_function): New.
* cp-tree.h: Declare it.
* class.c (build_base_path, resolves_to_fixed_type_p): Use it.

From-SVN: r189191

12 years agore PR c++/53783 (lambda in lambda in template function rejected)
Jason Merrill [Tue, 3 Jul 2012 05:03:21 +0000 (01:03 -0400)]
re PR c++/53783 (lambda in lambda in template function rejected)

PR c++/53783
* pt.c (tsubst_copy_and_build) [LAMBDA_EXPR]: Use tsubst
for LAMBDA_EXPR_EXTRA_SCOPE.

From-SVN: r189190

12 years agore PR c++/53788 (C++11 decltype sfinae static member function check (4.7.1))
Jason Merrill [Tue, 3 Jul 2012 03:30:09 +0000 (23:30 -0400)]
re PR c++/53788 (C++11 decltype sfinae static member function check (4.7.1))

PR c++/53788
* pt.c (build_non_dependent_expr): Don't wrap a dummy object.

From-SVN: r189188

12 years agore PR c++/53816 (internal compiler error: tree check: expected field_decl, have ident...
Jason Merrill [Tue, 3 Jul 2012 03:29:58 +0000 (23:29 -0400)]
re PR c++/53816 (internal compiler error: tree check: expected field_decl, have identifier_node in fixed_type_or_null, at cp/class.c:6419, with -std=c++11 option)

PR c++/53816
* class.c (resolves_to_fixed_type_p): Check uses_template_parms
(current_function_decl) instead of processing_template_decl.

From-SVN: r189187

12 years agorevert: re PR libstdc++/49561 ([C++0x] std::list::size complexity)
Paolo Carlini [Tue, 3 Jul 2012 00:47:17 +0000 (00:47 +0000)]
revert: re PR libstdc++/49561 ([C++0x] std::list::size complexity)

2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>

Revert:
2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/49561
* include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
Add in C++0x mode.
(_List_base<>::_List_impl, _List_base<>::_M_get_node,
_List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
list<>::size, list<>::swap, list<>::splice): Use it.
(operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
* include/bits/list.tcc (list<>::erase): Likewise.
(list<>::merge): Adjust in C++0x mode.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.

From-SVN: r189185

12 years agoDaily bump.
GCC Administrator [Tue, 3 Jul 2012 00:17:42 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189184

12 years agore PR target/53568 (SH Target: Add support for bswap built-ins)
Oleg Endo [Mon, 2 Jul 2012 22:59:59 +0000 (22:59 +0000)]
re PR target/53568 (SH Target: Add support for bswap built-ins)

PR target/53568
* gcc.target/sh/pr53568-1.c: New.

From-SVN: r189181

12 years agore PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
Oleg Endo [Mon, 2 Jul 2012 19:23:56 +0000 (19:23 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)

PR target/51244
* config/sh/predicates.md (t_reg_operand, negt_reg_operand): New
predicates.
* config/sh/sh-protos.h (get_t_reg_rtx): New prototype.
* config/sh/sh.c (get_t_reg_rtx): New function.  Use it when invoking
gen_branch_true and gen_branch_false.
* config/sh/sh.md: Use get_t_reg_rtx when invoking gen_branch_true and
gen_branch_false.
(branch_true, branch_false): Use t_reg_operand predicate.
(*branch_true, *branch_false): Delete.
(movt): Use t_reg_operand predicate.
(*negnegt): Use negt_reg_operand predicate and fold little and big
endian variants.
(*movtt): Use t_reg_operand and fold little and big endian variants.
(*movt_qi): Delete.

PR target/51244
* gcc.target/sh/pr51244-1.c: Check that movt insn is not generated.

From-SVN: r189177

12 years agore PR c++/53821 ([c++11] multiple definitions of lambda)
Jason Merrill [Mon, 2 Jul 2012 19:14:34 +0000 (15:14 -0400)]
re PR c++/53821 ([c++11] multiple definitions of lambda)

PR c++/53821
* semantics.c (maybe_add_lambda_conv_op): Don't set
DECL_INTERFACE_KNOWN.

From-SVN: r189175

12 years agore PR c++/53524 (Bogus enum comparison warning)
Jason Merrill [Mon, 2 Jul 2012 19:14:23 +0000 (15:14 -0400)]
re PR c++/53524 (Bogus enum comparison warning)

PR c++/53524
gcc/cp/
* call.c (build_conditional_expr_1): Don't warn about comparison of
two enumerators before their enumeration is complete.
(build_new_op_1): Call decay_conversion before warn_logical_operator.
* decl.c (build_enumerator): Set DECL_CONTEXT of an enumerator to
its enumeration.
* decl2.c (mark_used): Call used_types_insert for enums.
* semantics.c (finish_id_expression): Don't decay CONST_DECL.
(finish_member_declaration): Don't change DECL_CONTEXT of enumerators.
* class.c (check_field_decls): Don't change DECL_CONTEXT of enums.
* typeck.c (convert_for_assignment): Don't decay CONST_DECL.
(build_class_member_access_expr): Look through unscoped enums.
* search.c (context_for_name_lookup): Look through unscoped enums.
* pt.c (tsubst_copy_and_build): Don't decay CONST_DECL.
(tsubst_copy): Use DECL_CONTEXT to find the enumeration.
* tree.c (decl_linkage): Likewise.
* cvt.c (ocp_convert): Check decayed expr for enum range warning.
gcc/c-family/
* c-common.c (get_priority): Call default_conversion.

From-SVN: r189174

12 years agostmt.c (emit_case_bit_tests): Remove.
Steven Bosscher [Mon, 2 Jul 2012 18:50:51 +0000 (18:50 +0000)]
stmt.c (emit_case_bit_tests): Remove.

gcc/
* stmt.c (emit_case_bit_tests): Remove.
(expand_case): Remove expand_switch_using_bit_tests_p code.
* tree-switch-conversion.c (hoist_edge_and_branch_if_true): New.
(MAX_CASE_BIT_TESTS): Moved from stmt.c to here.
(lshift_cheap_p): Likewise.
(expand_switch_using_bit_tests_p): Likewise.
(struct case_bit_test): Likewise.
(case_bit_test_cmp): Likewise.
(emit_case_bit_tests): New implementation for GIMPLE.
(gen_inbound_check): Do not release post-dominator info here.
(process_switch): Reorder code.  Expand as bit tests if it
looks like a win.
(do_switchconv): Release post-dominator info here if something
changed.
(struct gimple_opt_pass): Verify more.
* tree.h (expand_switch_using_bit_tests_p): Remove prototype.

testsuite/
* gcc.dg/tree-ssa/pr36881.c: Fix test case to not expand as bit tests.

From-SVN: r189173

12 years agofix typo in previous commit
Janis Johnson [Mon, 2 Jul 2012 16:32:02 +0000 (16:32 +0000)]
fix typo in previous commit

From-SVN: r189167

12 years agoMAINTAINERS (Various Mainterers): Add myself as testsuite maintainer.
Janis Johnson [Mon, 2 Jul 2012 16:24:26 +0000 (16:24 +0000)]
MAINTAINERS (Various Mainterers): Add myself as testsuite maintainer.

* MAINTAINERS (Various Mainterers): Add myself as testsuite
maintainer.

From-SVN: r189166

12 years agore PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs...
Martin Jambor [Mon, 2 Jul 2012 15:28:11 +0000 (17:28 +0200)]
re PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs at -O3)

2012-07-02  Martin Jambor  <mjambor@suse.cz>

PR middle-end/38474
* ipa-prop.c (compute_known_type_jump_func): Put BINFO check before a
dynamic type change check.

From-SVN: r189163

12 years agobe.po, [...]: Update.
Joseph Myers [Mon, 2 Jul 2012 14:28:56 +0000 (15:28 +0100)]
be.po, [...]: Update.

* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, id.po, ja.po,
nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po, zh_TW.po:
Update.

From-SVN: r189160

12 years agoisl.m4 (_ISL_CHECK_CT_PROG): Omit main function header/footer.
Richard Guenther [Mon, 2 Jul 2012 14:05:07 +0000 (14:05 +0000)]
isl.m4 (_ISL_CHECK_CT_PROG): Omit main function header/footer.

2012-07-02  Richard Guenther  <rguenther@suse.de>

config/
* isl.m4 (_ISL_CHECK_CT_PROG): Omit main function header/footer.
Fix version test.

* configure: Regenerated.

From-SVN: r189159

12 years agoisl.m4: New file.
Richard Biener [Mon, 2 Jul 2012 13:16:58 +0000 (13:16 +0000)]
isl.m4: New file.

2012-07-02  Richard Guenther  <rguenther@suse.de>
Michael Matz  <matz@suse.de>
Tobias Grosser <tobias@grosser.es>
Sebastian Pop <sebpop@gmail.com>

* isl.m4: New file.

From-SVN: r189157