Commit Graph

139761 Commits

Author SHA1 Message Date
Andreas Krebbel
3d44ff9919 [PATCH] S/390: Improve risbg usage
gcc/ChangeLog:

2015-07-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	    * config/s390/s390.c (s390_rtx_costs): Make risbg patterns
	    cheaper.
	    (s390_expand_insv): Don't generate risbg pattern for constant zero
	    sources.
	    * config/s390/s390.md ("*insv<mode>_zEC12_appendbitsleft")
	    ("*insv<mode>_z10_appendbitsleft"): New pattern definitions.  New
	    splitters.

gcc/testsuite/ChangeLog:

2015-07-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	    * gcc.target/s390/insv-1.c: New test.
	    * gcc.target/s390/insv-2.c: New test.
	    * gcc.target/s390/insv-3.c: New test.

From-SVN: r226148
2015-07-24 11:28:06 +00:00
Dominik Vogt
bacf8ec3df [PATCH 4/4] S390 -march=native related fixes
gcc/ChangeLog

	* config/s390/s390.c (s390_reorg): Clean up handling of processors with
	-mtune=
	(s390_issue_rate): Likewise.
	(s390_sched_reorder): Likewise.
	(s390_sched_variable_issue): Likewise.
	(s390_loop_unroll_adjust): Likewise.
	(s390_option_override):  Likewise.

From-SVN: r226147
2015-07-24 11:25:01 +00:00
Dominik Vogt
b1b5aa2f2c [PATCH 3/4] S390 -march=native related fixes
gcc/ChangeLog

	* config/s390/driver-native.c (s390_host_detect_local_cpu): Handle
	processor capabilities with -march=native.
	* config/s390/s390.h (MARCH_MTUNE_NATIVE_SPECS): Likewise.
	(DRIVER_SELF_SPECS): Likewise.  Join specs for 31 and 64 bit.
	(S390_TARGET_BITS_STRING): Macro to simplify specs.

From-SVN: r226146
2015-07-24 11:23:53 +00:00
Dominik Vogt
fd9c86e091 [PATCH 2/4] S390 -march=native related fixes
gcc/ChangeLog

	* config/s390/s390.c (s390_issue_rate): Handle PROCESSOR_2094_Z9_EC.
	(s390_option_override): Likewise.
	(s390_adjust_priority): Likewise.

From-SVN: r226145
2015-07-24 11:22:32 +00:00
Dominik Vogt
63281f61cb S390 -march=native related fixes
gcc/ChangeLog:

	* config/s390/s390.h: S390: Do not define EXTRA_SPEC_FUNCTIONS when
	cross compiling.

From-SVN: r226144
2015-07-24 11:19:59 +00:00
Richard Biener
24f1db9c0d fold-const.c (maybe_canonicalize_comparison_1): Move A code CST canonicalization ...
2015-07-24  Richard Biener  <rguenther@suse.de>

	* fold-const.c (maybe_canonicalize_comparison_1): Move
	A code CST canonicalization ...
	* match.pd: ... to a pattern here.

	cp/
	* init.c (build_vec_init): Build iterator bound in the same
	type as the iterator.

From-SVN: r226143
2015-07-24 10:31:21 +00:00
Tom de Vries
25a627733f Remove xfail in autopar/uns-outer-4.c
2015-07-24  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/autopar/uns-outer-4.c: Remove loopfn xfail.

From-SVN: r226142
2015-07-24 10:14:34 +00:00
Jiong Wang
d076e1b7ba [AArch64] Revert REG_ALLOC_ORDER/HONOR_REG_ALLOC_ORDER
2015-07-24  Jiong Wang  <jiong.wang@arm.com>

  Revert:
  2015-07-22  Jiong Wang  <jiong.wang@arm.com>
  PR target/63521
  * config/aarch64/aarch64.h (REG_ALLOC_ORDER): Define.
  (HONOR_REG_ALLOC_ORDER): Define.

From-SVN: r226141
2015-07-24 09:06:53 +00:00
Richard Biener
96a111a3df genmatch.c (add_operator): Allow SSA_NAME as predicate.
2015-07-24  Richard Biener  <rguenther@suse.de>

	* genmatch.c (add_operator): Allow SSA_NAME as predicate.
	* fold-const.c (fold_comparison): Move parameter does not
	alias &local simplification ...
	* match.pd: ... as a pattern here.

From-SVN: r226140
2015-07-24 08:31:07 +00:00
Richard Biener
37d486ab11 gimple-fold.c (replace_stmt_with_simplification): Special-case valueizing call operands.
2015-07-24  Richard Biener  <rguenther@suse.de>

	* gimple-fold.c (replace_stmt_with_simplification): Special-case
	valueizing call operands.
	* gimple-match-head.c (maybe_push_res_to_seq): Take
	number of call arguments from ops array.
	(do_valueize): New function.
	(gimple_simplify): Return true if valueization changed
	any operand even if the result didn't simplify further.

From-SVN: r226139
2015-07-24 08:25:41 +00:00
Michael Haubenwallner
74b7ec8c45 libstdc++-v3/fragment.am (AM_CPPFLAGS): Add CPPFLAGS
2015-07-24  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>

	* fragment.am (AM_CPPFLAGS): Add CPPFLAGS.
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* src/c++11/Makefile.in: Regenerate.
	* src/c++98/Makefile.in: Regenerate.
	* src/filesystem/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r226138
2015-07-24 07:05:19 +00:00
Naveen H.S
5f8d832e47 re PR middle-end/25530 ((unsigned / 2)*2 is not changed into unsigned &~1)
PR middle-end/25530
2015-07-24  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

gcc/testsuite/ChangeLog:
	* gcc.dg/pr25530.c: New test.

gcc/ChangeLog:
	* match.pd (mult (trunc_div @0 integer_pow2p@1) @1) : New simplifier.

From-SVN: r226137
2015-07-24 04:50:41 +00:00
Naveen H.S
887ab60965 re PR middle-end/25529 ((unsigned * 2)/2 is not changed into unsigned &0x7FFFFFFF)
PR middle-end/25529
2015-07-24  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

gcc/testsuite/ChangeLog:
	* gcc.dg/pr25529.c: New test.

gcc/ChangeLog:
	* match.pd (trunc_div (mult @0 integer_pow2p@1) @1) : New simplifier.

From-SVN: r226136
2015-07-24 04:47:48 +00:00
Kugan Vivekanandarajah
390875e694 reg_equal_test.c: New test.
gcc/testsuite/ChangeLog:

2015-07-23  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* gcc.target/arm/reg_equal_test.c: New test.

gcc/ChangeLog:

2015-07-23  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* config/arm/arm.c (arm_emit_movpair): Add REG_EQUAL notes to
	instruction.

From-SVN: r226135
2015-07-24 01:43:22 +00:00
Kugan Vivekanandarajah
fa24123b0f cse.c (cse_insn): Fix missing check for STRICT_LOW_PART and minor clean up.
gcc/ChangeLog:

2015-07-23  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* cse.c (cse_insn): Fix missing check for STRICT_LOW_PART and minor
	clean up.

From-SVN: r226134
2015-07-24 01:38:19 +00:00
GCC Administrator
46e82d43f1 Daily bump.
From-SVN: r226132
2015-07-24 00:16:12 +00:00
Uros Bizjak
6135666dd4 i386.c (ix86_build_builtin_va_list_64): Rename from ix86_build_builtin_va_list_abi.
* config/i386/i386.c (ix86_build_builtin_va_list_64): Rename
	from ix86_build_builtin_va_list_abi.  Handle only 64bit non-MS_ABI
	targets here.
	(ix86_build_builtin_va_list): Rewrite sysv_va_list_type_node and
	ms_va_list_type_node initialization.

From-SVN: r226127
2015-07-23 23:49:34 +02:00
David Malcolm
eb3982c17e jit: supply MULTILIB_DEFAULTS as arguments when invoking driver
gcc/jit/ChangeLog:
	* jit-playback.c (invoke_driver): Convert local "argvec"
	to an auto_argvec, so that it owns copies of the strings,
	rather than borrows them, updating ADD_ARG to use xstrdup
	and special-casing the NULL terminator to avoid
	xstrdup (NULL).  Call add_multilib_driver_arguments at the front
	of the arguments.
	(MULTILIB_DEFAULTS): Provide a default definition.
	(multilib_defaults_raw): New constant array.
	(gcc::jit::playback::context::add_multilib_driver_arguments): New
	method.
	* jit-playback.h
	(gcc::jit::playback::context::add_multilib_driver_arguments): New
	method.
	* docs/internals/test-hello-world.exe.log.txt: Update.
	* docs/_build/texinfo/libgccjit.texi: Regenerate.

From-SVN: r226126
2015-07-23 21:19:07 +00:00
Jeff Law
d37f946ace re PR lto/66752 (spec2000 255.vortex performance compiled with GCC is ~20% lower than with CLANG)
PR lto/66752
	* tree-ssa-threadedge.c (simplify_conrol_stmt_condition): If we are
	unable to find X NE 0 in the tables, return X as the simplified
	condition.
	(fsm_find_control_statement_thread_paths): If nodes in NEXT_PATH are
	in VISISTED_BBS, then return failure.  Else add nodes from NEXT_PATH
	to VISISTED_BBS.  */
	* tree-ssa-threadupdate.c (duplicate_thread_path): Fix up edge flags
	after removing the control flow statement and unnecessary edges.

testsuite/
	PR lto/66752
	* gcc.dg/tree-ssa/pr66752-2.c: New test.
	* gcc.dg/torture/pr66752-1.c: New test
	* g++.dg/torture/pr66752-2.C: New test.

From-SVN: r226125
2015-07-23 14:42:15 -06:00
Ian Lance Taylor
0f2be732d9 compiler: Make empty interface types for vars during parse time.
When making the type for a variable with an empty interface type,
    the parser makes an interface type with a NULL method set and relies
    on later passes to correct this.
    
    For sink variables, which are ignored in later passes, the interface
    method table is never finalized and a compile time assertion is issued.
    Instead, the initial type generated by the parser should be the empty
    interface type.
    
    Fixes golang/go#11579.
    
    Reviewed-on: https://go-review.googlesource.com/12049

From-SVN: r226123
2015-07-23 19:57:22 +00:00
Ian Lance Taylor
20886e7134 compiler: Check for errors in the underlying types of unary expressions.
Fixes golang/go#11592.
    
    Reviewed-on: https://go-review.googlesource.com/12044

From-SVN: r226122
2015-07-23 19:33:26 +00:00
Bernd Edlinger
0358f01b2e tree-pass.h (get_current_pass_name): Removed.
2015-07-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * tree-pass.h (get_current_pass_name): Removed.

From-SVN: r226121
2015-07-23 19:01:03 +00:00
Marek Polacek
04e4dbd07c re PR c++/66572 (Bogus Wlogical-op warning for operands coming from template instantiations)
PR c++/66572
	* pt.c (tsubst_copy_and_build): Add warn_logical_op sentinel.

	* g++.dg/warn/Wlogical-op-2.C: New test.

From-SVN: r226120
2015-07-23 18:57:25 +00:00
Bernd Schmidt
45952786d4 * MAINTAINERS: Update my email address.
From-SVN: r226118
2015-07-23 18:05:51 +00:00
DJ Delorie
8161e0c343 functional_hash.h: Add specializations for __intN types.
* include/bits/functional_hash.h: Add specializations for __intN
types.

* include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp (__gnu_pbds):
Guard against values that might exceed size_t's precision.

From-SVN: r226117
2015-07-23 13:57:34 -04:00
Marek Polacek
5a5062b8db c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
* c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
	(ubsan_instrument_shift): Likewise.

From-SVN: r226116
2015-07-23 17:14:31 +00:00
Alexandre Oliva
7eb9f42e3b [PR64164] Drop copyrename, use coalescible partition as base when optimizing.
for  gcc/ChangeLog

	PR rtl-optimization/64164
	* Makefile.in (OBJS): Drop tree-ssa-copyrename.o.
	* tree-ssa-copyrename.c: Removed.
	* opts.c (default_options_table): Drop -ftree-copyrename.  Add
	-ftree-coalesce-vars.
	* passes.def: Drop all occurrences of pass_rename_ssa_copies.
	* common.opt (ftree-copyrename): Ignore.
	(ftree-coalesce-inlined-vars): Likewise.
	* doc/invoke.texi: Remove the ignored options above.
	* gimple-expr.h (gimple_can_coalesce_p): Move declaration
	* tree-ssa-coalesce.h: ... here.
	* tree-ssa-uncprop.c: Include tree-ssa-coalesce.h and other
	headers required by it.
	* gimple-expr.c (gimple_can_coalesce_p): Allow coalescing
	across variables when flag_tree_coalesce_vars.  Check register
	use and promoted modes to allow coalescing.  Moved to
	tree-ssa-coalesce.c.
	* tree-ssa-live.c (struct tree_int_map_hasher): Move along
	with its member functions to tree-ssa-coalesce.c.
	(var_map_base_init): Likewise.  Renamed to
	compute_samebase_partition_bases.
	(partition_view_normal): Drop want_bases parameter.
	(partition_view_bitmap): Likewise.
	* tree-ssa-live.h: Adjust declarations.
	* tree-ssa-coalesce.c: Include explow.h.
	(build_ssa_conflict_graph): Process PARM_ and RESULT_DECLs's
	default defs at the entry point.
	(dump_part_var_map): New.
	(compute_optimized_partition_bases): New, called by...
	(coalesce_ssa_name): ... when flag_tree_coalesce_vars, instead
	of compute_samebase_partition_bases.  Adjust.
	* alias.c (nonoverlapping_memrefs_p): Disregard gimple-regs.
	* cfgexpand.c (leader_merge): New.
	(get_rtl_for_parm_ssa_default_def): New.
	(set_rtl): Merge exprs and attrs, even for MEMs and non-SSA
	vars.  Update DECL_RTL for PARM_DECLs and RESULT_DECLs too.
	(expand_one_stack_var_at): Handle anonymous SSA_NAMEs.  Drop
	redundant MEM attr setting.
	(expand_one_stack_var_1): Handle anonymous SSA_NAMEs.  Renamed
	from...
	(expand_one_stack_var): ... this.  New wrapper to check and
	skip already expanded SSA partitions.
	(record_alignment_for_reg_var): New, factored out of...
	(expand_one_var): ... this.
	(expand_one_ssa_partition): New.
	(adjust_one_expanded_partition_var): New.
	(expand_one_register_var): Check and skip already expanded SSA
	partitions.
	(expand_used_vars): Don't create DECLs for anonymous SSA
	names.  Expand all SSA partitions, then adjust all SSA names.
	(pass::execute): Replace the loops that set
	SA.partition_to_pseudo from partition leaders and cleared
	DECL_RTL for multi-location variables, and that which used to
	rename vars and set attrs, with one that clears DECL_RTL and
	checks that PARMs and RESULTs default_defs match DECL_RTL.
	* cfgexpand.h (get_rtl_for_parm_ssa_default_def): Declare.
	* emit-rtl.c (set_reg_attrs_for_parm): Handle NULL decl.
	* explow.c (promote_ssa_mode): New.
	* explow.h (promote_ssa_mode): Declare.
	* expr.c (expand_expr_real_1): Handle anonymous SSA_NAMEs.
	* function.c: Include cfgexpand.h.
	(use_register_for_decl): Handle SSA_NAMEs, anonymous or not.
	(use_register_for_parm_decl): Wrapper for the above to
	special-case the result_ptr.
	(rtl_for_parm): Ditto for get_rtl_for_parm_ssa_default_def.
	(split_complex_args): Take assign_parm_data_all argument.
	Pass it to rtl_for_parm.  Set up rtl and context for split
	args.
	(assign_parms_augmented_arg_list): Adjust.
	(maybe_reset_rtl_for_parm): Reset DECL_RTL of parms with
	multiple locations.  Recognize split complex args.
	(assign_parm_adjust_stack_rtl): Add all and parm arguments,
	for rtl_for_parm.  For SSA-assigned parms, zero stack_parm.
	(assign_parm_setup_block): Prefer SSA-assigned location.
	(assign_parm_setup_reg): Likewise.  Use entry_parm for equiv
	if stack_parm is NULL.
	(assign_parm_setup_stack): Prefer SSA-assigned location.
	(assign_parms): Maybe reset DECL_RTL of params.  Adjust stack
	rtl before testing for pointer bounds.  Special-case result_ptr.
	(expand_function_start): Maybe reset DECL_RTL of result.
	Prefer SSA-assigned location for result and static chain.
	Factor out DECL_RESULT and SET_DECL_RTL.
	* tree-outof-ssa.c (insert_value_copy_on_edge): Handle
	anonymous SSA names.  Use promote_ssa_mode.
	(get_temp_reg): Likewise.
	(remove_ssa_form): Adjust.
	* stor-layout.c (layout_decl): Don't set mem attributes of
	non-MEMs.
	* var-tracking.c (dataflow_set_clear_at_call): Take call_insn
	and get its reg_usage for reg invalidation.
	(compute_bb_dataflow): Pass it insn.
	(emit_notes_in_bb): Likewise.

for  gcc/testsuite/ChangeLog

	* gcc.dg/guality/pr54200.c: Add -fno-tree-coalesce-vars.
	* gcc.dg/ssp-1.c: Make counter a register.
	* gcc.dg/ssp-2.c: Likewise.
	* gcc.dg/torture/parm-coalesce.c: New.

From-SVN: r226113
2015-07-23 15:34:49 +00:00
Segher Boessenkool
a34f4f6468 re PR target/66217 (PowerPC rotate/shift/mask instructions not optimal)
PR target/66217
	* config/rs6000/rs6000-protos.h (rs6000_emit_2insn_and): Change
	prototype.
	* config/rs6000/rs6000.c (rs6000_emit_dot_insn): New function.
	(rs6000_emit_2insn_and): Handle dot forms.
	* config/rs6000/rs6000.md (and<mode>3): Adjust.
	(*and<mode>3_2insn): Remove TODO.  Adjust.  Add "type" attr.
	(*and<mode>3_2insn_dot, *and<mode>3_2insn_dot2): New.

From-SVN: r226112
2015-07-23 16:37:57 +02:00
Richard Biener
d057c8669b generic-match-head.c: Include cgraph.h.
2015-07-23  Richard Biener  <rguenther@suse.de>

	* generic-match-head.c: Include cgraph.h.
	* gimple-match-head.c: Likewise.
	* tree-ssa-sccvn.c (free_scc_vn): Guard against newly created
	SSA names.
	* fold-const.c (fold_binary_loc): Move &A ==/!= &B simplification...
	* match.pd: ...to a pattern here.  Add &A ==/!= 0 simplification
	pattern.

From-SVN: r226111
2015-07-23 14:31:44 +00:00
Marek Polacek
dc891fe75e re PR sanitizer/66908 (Uninitialized variable when compiled with UBsan)
PR sanitizer/66908
	* c-ubsan.c: Include gimplify.h.
	(ubsan_instrument_division): Unshare OP0 and OP1.
	(ubsan_instrument_shift): Likewise.

	* c-c++-common/ubsan/pr66908.c: New test.

From-SVN: r226110
2015-07-23 13:54:06 +00:00
Richard Biener
62fb67d77a gimple-fold.c (fold_gimple_cond): Do not require folding results to pass valid_gimple_rhs_p.
2015-07-23  Richard Biener  <rguenther@suse.de>

	* gimple-fold.c (fold_gimple_cond): Do not require folding
	results to pass valid_gimple_rhs_p.
	* tree-cfg.h (fold_cond_expr_cond): Remove.
	* tree-cfg.c (fold_cond_expr_cond): Likewise.
	(make_edges): Do not call it.
	* tree-inline.c (tree_function_versioning): Likewise.

From-SVN: r226109
2015-07-23 13:33:43 +00:00
Tom de Vries
bcdaf37084 Check TYPE_OVERFLOW_WRAPS for parloops reductions
2015-07-23  Tom de Vries  <tom@codesourcery.com>

	* tree-parloops.c (gather_scalar_reductions): Add arg to call to
	vect_force_simple_reduction.
	* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Same.
	(vect_is_simple_reduction_1): Add and handle
	need_wrapping_integral_overflow parameter.
	(vect_is_simple_reduction, vect_force_simple_reduction): Add and pass
	need_wrapping_integral_overflow parameter.
	(vectorizable_reduction): Add arg to call to vect_is_simple_reduction.
	* tree-vectorizer.h (vect_force_simple_reduction): Add parameter to decl.

	* gcc.dg/autopar/outer-4.c: Add xfail.
	* gcc.dg/autopar/outer-5.c: Same.
	* gcc.dg/autopar/outer-6.c: Same.
	* gcc.dg/autopar/reduc-2.c: Same.
	* gcc.dg/autopar/reduc-2char.c: Same.
	* gcc.dg/autopar/reduc-2short.c: Same.
	* gcc.dg/autopar/reduc-8.c: Same.
	* gcc.dg/autopar/uns-outer-4.c: New test.
	* gcc.dg/autopar/uns-outer-5.c: New test.
	* gcc.dg/autopar/uns-outer-6.c: New test.

From-SVN: r226107
2015-07-23 12:17:52 +00:00
Richard Biener
f45dacba22 re PR tree-optimization/66952 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
2015-07-23  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66952
	* gcc.dg/torture/pr66952.c: Use signed char.

From-SVN: r226104
2015-07-23 11:19:26 +00:00
Yuri Rumyantsev
b5fd0440dc PR tree-optimization/66926,66951
gcc/

	PR tree-optimization/66926,66951
	* tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Delete
	INNER_LOOP and fix up condition for renaming virtual operands.

gcc/testsuite/

	PR tree-optimization/66926,66951
	* gcc.dg/vect/pr66951.c: New test.

From-SVN: r226103
2015-07-23 11:13:00 +00:00
Paolo Carlini
25f05e7bf1 re PR c++/52987 (bogus expected ; before for undeclared type)
/cp
2015-07-23  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/52987
	* parser.c (cp_parser_simple_declaration): Robustify check avoiding
	redundant error messages.

/testsuite
2015-07-23  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/52987
	* g++.dg/parse/error57.C: New.
	* g++.dg/expr/string-2.C: Update.

From-SVN: r226097
2015-07-23 10:11:48 +00:00
Kyrylo Tkachov
7bed1d3d81 [combine][obvious] Use std::swap in try_combine
* combine.c (try_combine): Use std::swap instead of manually
	swapping.

From-SVN: r226094
2015-07-23 09:21:27 +00:00
Prachi Godbole
7ccb4e4e6a I6400 scheduling.
gcc/
	* config/mips/i6400.md: New file.
	* config/mips/mips-cpus.def (mips32r6): Change to PROCESSOR_I6400.
	(mips64r6): Likewise.
	(i6400): Define.
	* config/mips/mips-tables.opt: Regenerate.
	* config/mips/mips.c (mips_rtx_cost_data): Add I6400 processor.
	(mips_issue_rate): Add support for i6400.
	(mips_multipass_dfa_lookahead): Likewise.
	* config/mips/mips.h (TUNE_I6400): Define.
	* config/mips/mips.md: Include i6400.md.
	(processor): Add i6400.
	* doc/invoke.texi (-march=@var{arch}): Add i6400.

From-SVN: r226090
2015-07-23 07:58:20 +00:00
Richard Biener
2fde61e3ca re PR middle-end/66916 (FAIL: gcc.target/arm/pr43920-2.c object-size text <= 54)
2015-07-23  Richard Biener  <rguenther@suse.de>

	PR middle-end/66916
	* match.pd: Guard widen and sign-change comparison simplification
	with single_use.

From-SVN: r226089
2015-07-23 07:29:53 +00:00
Richard Biener
28537a45de re PR middle-end/66945 (ICE in generic_simplify (generic-match.c:24790))
2015-07-23  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66945
	* tree-ssa-propagate.c (substitute_and_fold_dom_walker
	::before_dom_children): Force the propagators idea of
	non-executable edges to materialize, not what the folder
	chooses.

	* gcc.dg/torture/pr66945.c: New testcase.

From-SVN: r226088
2015-07-23 07:23:23 +00:00
Richard Biener
bde7d04b62 gimple.h (gimple_cond_make_false): Use 0 != 0.
2015-07-23  Richard Biener  <rguenther@suse.de>

	* gimple.h (gimple_cond_make_false): Use 0 != 0.
	(gimple_cond_make_true): Use 1 != 0.

From-SVN: r226087
2015-07-23 07:22:06 +00:00
DJ Delorie
3f02735bcf t-msp430 (MULTILIB_DIRNAMES): Remove trailing slashes.
* config/msp430/t-msp430 (MULTILIB_DIRNAMES): Remove trailing
slashes.

* config/msp430/msp430.md (ashlhi3): Optimize shifts of subregs.
(ashrhi3): Likewise.
(lshrhi3): Likewise.
(movhi): Take advantage of zero-extend to load small constants.
(movpsi): Likewise.
(and<mode>3): Likewise.
(zero_extendqihi2): Likewise.
(zero_extendqisi2): New.
* config/msp430/constraints.md (N,O): New.
* config/msp430/msp430.h (WORD_REGISTER_OPERATIONS): Define.

From-SVN: r226085
2015-07-22 23:32:47 -04:00
GCC Administrator
bcf122bec2 Daily bump.
From-SVN: r226084
2015-07-23 00:16:12 +00:00
Uros Bizjak
54d22142b1 re PR target/66954 (function multiversioning fails for target "aes")
libgcc/ChangeLog:

	PR target/66954
	* config/i386/cpuinfo.c (enum processor_features): Add FEATURE_AES.
	(get_available_features): Handle FEATURE_AES.

gcc/ChangeLog:

	PR target/66954
	* config/i386/i386.c (get_builtin_code_for_version): Add P_AES
	to enum feature_priority and feature_list.
	(fold_builtin_cpu): Add F_AES to enum processor_features
	and isa_names_table.

gcc/testsuite/ChangeLog:

	PR target/66954
	* g++.dg/ext/mv24.C: New test.

From-SVN: r226081
2015-07-22 20:01:33 +02:00
Maxim Blumenthal
27c4ac7db7 re PR libgomp/66950 (FAIL: libgomp.fortran/examples-4/simd-7.f90 -O0 execution test)
2015-07-22  Maxim Blumenthal  <maxim.blumenthal@intel.com>

	PR libgomp/66950
	* testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
	(fib_ref): New function.
	(fib): Correct corner cases in the recursion.
	(main): Replace the non-simd loop with fib_ref call.
	* testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
	subroutine.
	(fibonacci): Lower the parameter N to 30.  Correct accordingly check
	for the last array element value.  Replace the non-simd loop with
	fib_ref call.  Remove redundant b_ref array.  Remove the comparison
	of the last array element with according Fibonacci sequence element.
	(fib): Correct corner cases in the recursion.

From-SVN: r226080
2015-07-22 17:19:31 +00:00
Marek Polacek
19e1890350 unpack.c: Use dg-additional-options rather than dg-options.
* gcc.dg/vmx/unpack.c: Use dg-additional-options rather than
	dg-options.

From-SVN: r226078
2015-07-22 16:44:45 +00:00
Ilya Enkovich
65defbee13 re PR driver/66737 (ld: warning: -z bndplt ignored)
PR driver/66737
	* config/i386/linux-common.h (MPX_SPEC): Use linker option
	for 64bit target only.

From-SVN: r226076
2015-07-22 16:24:28 +00:00
Bernd Schmidt
ecf6e535fc * config/nvptx/nvptx.c: Expand some comments.
From-SVN: r226075
2015-07-22 15:30:14 +00:00
Mikael Morin
252207bd03 Fix r225926's iso_varying_string ICE regression
PR fortran/61831
	PR fortran/66929
gcc/fortran/
	* trans-array.c (gfc_get_proc_ifc_for_expr): Use esym as procedure
	symbol if available.
gcc/testsuite/
	* gfortran.dg/generic_30.f90: New.

From-SVN: r226074
2015-07-22 15:26:52 +00:00
James Greenhalgh
bf976c5824 [Patch ARM/AArch64 obvious] Fix typo: Rename insn_reservation cortex_53_advsimd to cortex_a53_advsimd
gcc/

	* config/arm/cortex-a53 (cortex_53_advsimd): Rename to...
	(cortex_a53_advsimd): ...This.

From-SVN: r226069
2015-07-22 14:15:26 +00:00
Richard Biener
38b52b2fdd genmatch.c (expr::gen_transform): Clarify error message and display location.
2015-07-22  Richard Biener  <rguenther@suse.de>

	* genmatch.c (expr::gen_transform): Clarify error message
	and display location.

From-SVN: r226068
2015-07-22 13:18:47 +00:00