1. 28 Jul, 2016 11 commits
    • re PR middle-end/71734 (FAIL: libgomp.fortran/simd4.f90 -O3 -g execution test) · 513d866d
      gcc/
      
      2016-07-28  Yuri Rumyantsev  <ysrumyan@gmail.com>
      
      	PR tree-optimization/71734
      	* tree-ssa-loop-im.c (ref_indep_loop_p_1): Pass value of safelen
      	attribute instead of REF_LOOP and use it.
      	(ref_indep_loop_p_2): Use SAFELEN argument instead of REF_LOOP and
      	set it for Loops having non-zero safelen attribute.
      	(ref_indep_loop_p): Pass zero as initial value for safelen.
      
      gcc/testsuite/
      
      2016-07-28  Yuri Rumyantsev  <ysrumyan@gmail.com>
      
      	PR tree-optimization/71734
              * g++.dg/vect/pr70729-nest.cc: New test.
      
      From-SVN: r238817
      Yuri Rumyantsev committed
    • re PR middle-end/72657 ([CHKP] internal compiler error: in ix86_expand_builtin) · 69cd47a1
      gcc/
      
      	PR middle-end/72657
      	PR target/72683
      	* tree-chkp.c (chkp_retbnd_call_by_val): Check for instrumentation
      	call using chkp_gimple_call_builtin_p.
      	(chkp_copy_bounds_for_assign): Likewise.
      
      From-SVN: r238816
      Ilya Enkovich committed
    • [PATCH] Revert Revert r238497 because of PR 71961. · 7c428aa2
      This patch reverts the change for PR 71902 since it causes 178.gagel
      miscompile in spec2000 as reported in PR 71961 which was observed in
      x86_64, aarch64, powerpc64.
      
      gcc/fortran/ChangeLog:
      
      2016-07-28  Renlin Li  <renlin.li@arm.com>
      
      	Revert
      	2016-07-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/71902
      	* dependency.c (gfc_check_dependency): Use dep_ref.  Handle case
      	if identical is true and two array element references differ.
      	(gfc_dep_resovler):  Move most of the code to dep_ref.
      	(dep_ref):  New function.
      	* frontend-passes.c (realloc_string_callback):  Name temporary
      	variable "realloc_string".
      
      gcc/testsuite/ChangeLog:
      
      2016-07-28  Renlin Li  <renlin.li@arm.com>
      
      	Revert
      	2016-07-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/71902
      	* gfortran.dg/dependency_47.f90:  New test.
      
      From-SVN: r238815
      Renlin Li committed
    • merge adjust_cost and adjust_cost_2 target hooks · b505225b
      gcc/ChangeLog:
      
      2016-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* config/alpha/alpha.c (alpha_adjust_cost): Adjust.
      	* config/arm/arm-protos.h (struct tune_params): Likewise.
      	* config/arm/arm.c (xscale_sched_adjust_cost): Likewise.
      	(cortex_a9_sched_adjust_cost): Likewise.
      	(fa726te_sched_adjust_cost): Likewise.
      	(arm_adjust_cost): Likewise.
      	* config/bfin/bfin.c (bfin_adjust_cost): Likewise.
      	* config/c6x/c6x.c (c6x_adjust_cost): Likewise.
      	* config/epiphany/epiphany.c (epiphany_adjust_cost): Likewise.
      	* config/i386/i386.c (ix86_adjust_cost): Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/m68k/m68k.c: Likewise.
      	* config/mep/mep.c (mep_adjust_cost): Likewise.
      	* config/microblaze/microblaze.c (microblaze_adjust_cost):
      	* Likewise.
      	* config/mips/mips.c (mips_adjust_cost): Likewise.
      	* config/mn10300/mn10300.c (mn10300_adjust_sched_cost):
      	* Likewise.
      	* config/pa/pa.c (pa_adjust_cost): Likewise.
      	* config/rs6000/rs6000.c (rs6000_adjust_cost): Likewise.
      	(rs6000_debug_adjust_cost): Likewise.
      	* config/sh/sh.c (sh_adjust_cost): Likewise.
      	* config/sparc/sparc.c (supersparc_adjust_cost): Likewise.
      	(hypersparc_adjust_cost): Likewise.
      	(sparc_adjust_cost): Likewise.
      	* config/spu/spu.c (spu_sched_adjust_cost): Likewise.
      	* config/tilegx/tilegx.c (tilegx_sched_adjust_cost): Likewise.
      	* config/tilepro/tilepro.c (tilepro_sched_adjust_cost):
      	* Likewise.
      	* config/visium/visium.c (visium_adjust_cost): Likewise.
      	* doc/tm.texi: Regenerate.
      	* haifa-sched.c (dep_cost_1): Adjust.
      	* target.def: Merge adjust_cost and adjust_cost_2.
      
      From-SVN: r238814
      Trevor Saunders committed
    • haifa-sched.c: make twins a auto_vec<rtx_insn *> · 30a7199a
      gcc/ChangeLog:
      
      2016-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* haifa-sched.c (add_to_speculative_block): Make twins a vector.
      
      From-SVN: r238813
      Trevor Saunders committed
    • make pattern_regs a vec · 246af050
      gcc/ChangeLog:
      
      2016-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* store-motion.c (struct st_expr): Make pattern_regs a vector.
      	(extract_mentioned_regs): Append to a vector instead of
      	returning a rtx_expr_list.
      	(st_expr_entry): Adjust.
      	(free_st_expr_entry): Likewise.
      	(store_ops_ok): Likewise.
      	(store_killed_in_insn): Likewise.
      	(find_moveable_store): Likewise.
      
      From-SVN: r238812
      Trevor Saunders committed
    • Introduce no_profile_instrument_function attribute · 1225d6b1
      	PR gcov-profile/68025
      	* tree-profile.c (tree_profiling): Respect
      	no_profile_instrument_function attribute.
      	* doc/extend.texi: Document no_profile_instrument_function
      	attribute.
      	PR gcov-profile/68025
      	* c-common.c (handle_no_profile_instrument_function_attribute):
      	PR gcov-profile/68025
      	* gcc.dg/no_profile_instrument_function-attr-1.c: New test.
      
      From-SVN: r238811
      Martin Liska committed
    • Add missing file. · 9bd6a6ae
      From-SVN: r238810
      Martin Liska committed
    • Add mark_spam.py script · ce84ada3
      	* mark_spam.py: New file.
      
      From-SVN: r238809
      Martin Liska committed
    • Do not allow make_compound_operation for vector mode · e5f5bf35
      	* g++.dg/vect/pr70944.cc: New test.
      	PR rtl-optimization/70944
      	* combine.c (make_compound_operation):
      	Do not allow make_compound_operation for vector mode
      
      From-SVN: r238808
      Martin Liska committed
    • Daily bump. · 5cb6b473
      From-SVN: r238806
      GCC Administrator committed
  2. 27 Jul, 2016 17 commits
    • re PR tree-optimization/71994 (ICE: verify_gimple failed) · d671006d
      gcc/testsuite/ChangeLog:
      
      2016-07-28  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	PR middle-end/71994
      	* gcc.dg/torture/pr71994.c: New test.
      
      From-SVN: r238803
      Kugan Vivekanandarajah committed
    • re PR tree-optimization/71994 (ICE: verify_gimple failed) · 4536610d
      gcc/testsuite/ChangeLog:
      
      2016-07-28  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	PR middle-end/71994
      	* gcc.dg/torture/pr71994.c: New test.
      
      gcc/ChangeLog:
      
      2016-07-28  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	PR middle-end/71994
      	* tree-ssa-reassoc.c (maybe_optimize_range_tests): Check tcc_comparison
      	 before calling get_ops.
      
      From-SVN: r238802
      Kugan Vivekanandarajah committed
    • defaults.h (LOG2_BITS_PER_UNIT): Move from here... · ec1e2a40
      2016-07-27  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * defaults.h (LOG2_BITS_PER_UNIT): Move from here...
              * tree.h (LOG2_BITS_PER_UNIT): ...to here.
              (BITS_PER_UNIT_LOG): Remove.
              (int_bit_position): Use LOG2_BITS_PER_UNIT instead of BITS_PER_UNIT_LOG.
              * expr.c (expand_assignment): Likewise. 
              * stor-layout.c (initialize_sizetypes): Likewise.
      
      c-family:
      2016-07-27  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * c-common.c (check_user_alignment): Use LOG2_BITS_PER_UNIT instead of
              BITS_PER_UNIT_LOG.
      
      From-SVN: r238800
      Bernd Edlinger committed
    • vector.md (vec_extract<mode>): Change the calling signature of… · 98060bbe
      vector.md (vec_extract<mode>): Change the calling signature of rs6000_expand_vector_extract so that the...
      
      2016-07-27  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* config/rs6000/vector.md (vec_extract<mode>): Change the calling
      	signature of rs6000_expand_vector_extract so that the element
      	number is a RTX instead of a constant integer.
      	* config/rs6000/rs6000-protos.h (rs6000_expand_vector_extract):
      	Likewise.
      	* config/rs6000/rs6000.c (rs6000_expand_vector_extract): Likewise.
      	(altivec_expand_vec_ext_builtin): Likewise.
      	* config/rs6000/altivec.md (reduc_plus_scal_<mode>): Likewise.
      	* config/rs6000/vsx.md (vsx_extract_<mode>): Fix spelling of the
      	MFVSRLD instruction.
      
      From-SVN: r238799
      Michael Meissner committed
    • Move make_location from tree.h/c to input.h/c · a01fc549
      For some reason I added make_location and some related functions to
      tree.h/c, rather than to input.h/c.  Move them there, so we can use them
      without requiring tree, and add some selftest coverage.
      
      gcc/ChangeLog:
      	* input.c (get_pure_location): Move here from tree.c.
      	(make_location): Likewise.  Add header comment.
      	(selftest::test_accessing_ordinary_linemaps): Verify
      	pure_location_p, make_location, get_location_from_adhoc_loc and
      	get_range_from_loc.
      	* input.h (get_pure_location): Move declaration here from tree.h.
      	(get_finish): Likewise for inline function.
      	(make_location): Likewise for declaration.
      	* tree.c (get_pure_location): Move to input.c.
      	(make_location): Likewise.
      	* tree.h (get_pure_location): Move declaration to tree.h.
      	(get_finish): Likewise for inline function.
      	(make_location): Likewise for declaration.
      
      libcpp/ChangeLog:
      	* include/line-map.h (source_location): Fix line numbers in
      	comment.
      
      From-SVN: r238792
      David Malcolm committed
    • Add missing PR marker to Changelog for 71216 fix · 182f2f64
      From-SVN: r238790
      Segher Boessenkool committed
    • re PR middle-end/71078 (x/abs(x) -> sign(1.0,x)) · 8c6961ca
      2016-07-27  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>
      
      	PR middle-end/71078
      	* match.pd (x / abs(x) -> copysign(1.0, x)): New pattern.
      
      testsuite/
      	* gcc.dg/tree-ssa/pr71078-1.c: New test-case.
      	* gcc.dg/tree-ssa/pr71078-2.c: Likewise.
      	* gcc.dg/tree-ssa/pr71078-3.c: Likewise.
      
      From-SVN: r238787
      Prathamesh Kulkarni committed
    • Use static_assert for STATIC_ASSERT for C++11 onwards · 81a12b76
      C++11 has a
        static_assert (COND, MESSAGE)
      which gives more readable error messages for STATIC_ASSERT than our
      current implementation.
      
      This patch makes us use it if __cplusplus >= 201103L
      
      There's also a provisional static_assert (COND) in C++1z, but presumably
      we should wait until that one is fully standardized before using it.
      
      gcc/ChangeLog:
      	* system.h (STATIC_ASSERT): Use static_assert if building
      	with C++11 onwards.
      
      From-SVN: r238786
      David Malcolm committed
    • PR c++/71747 - ICE with self-referential partial spec · 270430ff
      	* pt.c (get_partial_spec_bindings): Replace tparms and spec_args
      	parameters with spec_tmpl.  Call push_tinst_level.
      	(most_specialized_partial_spec): Adjust.
      	(more_specialized_partial_spec): Adjust.
      
      From-SVN: r238785
      Jason Merrill committed
    • costmodel-pr68961.c: Remove. · 8de22ea0
      2016-07-27  Richard Biener  <rguenther@suse.de>
      
      	* gcc.dg/vect/costmodel/x86_64/costmodel-pr68961.c: Remove.
      
      From-SVN: r238784
      Richard Biener committed
    • re PR tree-optimization/72517 (436.cactusADM: More than 40% regression in O3 and… · dd583351
      re PR tree-optimization/72517 (436.cactusADM: More than 40% regression in O3 and Ofast on AMD bdver4 m/c.)
      
      2016-07-27  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/72517
      	* tree-vect-data-refs.c (vect_analyze_data_ref_dependences):
      	Revert change to not compute read-read dependences.
      
      From-SVN: r238783
      Richard Biener committed
    • predict.c (set_even_probabilities): Make nedges unsigned. · 5693aed0
      2016-07-27  Richard Biener  <rguenther@suse.de>
      
      	* predict.c (set_even_probabilities): Make nedges unsigned.
      
      From-SVN: r238782
      Richard Biener committed
    • predict.c: merge multi-edges · 5d9da222
      	* gcc.dg/predict-13.c: New test.
      	* gcc.dg/predict-14.c: New test.
      	* predict.c (set_even_probabilities): Handle unlikely edges.
      	(combine_predictions_for_bb): Likewise.
      
      From-SVN: r238781
      Martin Liska committed
    • Use __{U,}INTPTR_TYPE__ to avoid including stdint.h · af9e275f
      gcc/testsuite/
      
      	* gcc.dg/torture/pr69352.c: Use  __INTPTR_TYPE__ instead of 
      	including stdint.h.
      	* gcc.dg/torture/pr71866.c: Use __UINTPTR_TYPE__ isntead of
      	including stdint.h.
      
      From-SVN: r238780
      Senthil Kumar Selvaraj committed
    • re PR target/71869 (__builtin_isgreater raises an invalid exception on PPC64… · 71abba1e
      re PR target/71869 (__builtin_isgreater raises an invalid exception on PPC64 using __float128 inputs.)
      
      [gcc]
      2016-07-26  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/71869
      	* config/rs6000/rs6000.c (rs6000_generate_compare): Rework
      	__float128 support when we don't have hardware support, so that
      	the IEEE built-in functions like isgreater, first call __unordkf3
      	to make sure neither operand is a NaN, and if both operands are
      	ordered, do the normal comparison.
      
      [gcc/testsuite]
      2016-07-26  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/71869
      	* gcc.target/powerpc/float128-cmp.c: New test to make sure that
      	IEEE built-in functions handle quiet and signalling NaNs
      	correctly.
      
      From-SVN: r238779
      Michael Meissner committed
    • Daily bump. · 2f65c3b3
      From-SVN: r238778
      GCC Administrator committed
  3. 26 Jul, 2016 12 commits
    • re PR fortran/71862 (ICE in gfc_add_component_ref, at fortran/class.c:241) · 9cd74e8f
      2016-07-22  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/71862
      	* class.c: Remove assert.  Iterate over component only if non-null.
      
      2016-07-22  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/71862
      	* gfortran.dg/pr71862.f90: New test.
      
      From-SVN: r238774
      Steven G. Kargl committed
    • pr71675.c: Replace the unsupported c11 target selector with dg-options. · 0d48446f
      gcc/testsuite/ChangeLog:
      	* gcc.dg/atomic/pr71675.c: Replace the unsupported c11 target
      	selector with dg-options.
      
      From-SVN: r238766
      Martin Sebor committed
    • Missed changelog entries for commit 238252. Sorry, · 9e63c3aa
      2016-07-12  Nathan Sidwell  <nathan@acm.org>
      
      	* config/arm/arm.c (arm_option_override): Set MASK_SINGLE_PIC_BASE
      	when -mno-pic-data-is-text-relative is in effect, by default.
      	* doc/invoke.texi (mpic-data-is-text-relative): Document new
      	behavior and clarify.
      
      2016-07-12  Nathan Sidwell  <nathan@acm.org>
      
      	* gcc.target/arm/data-rel-1.c: New.
      	* gcc.target/arm/data-rel-2.c: New.
      	* gcc.target/arm/data-rel-3.c: New.
      
      From-SVN: r238763
      Nathan Sidwell committed
    • Minor changes in tree-vrp.c · e04de667
      gcc/ChangeLog:
      
      	* tree-vrp.c (dump_asserts_for): Print loc->expr instead of
      	name.
      	(extract_code_and_val_from_cond_with_ops): Verify that name is
      	either cond_op0 or cond_op1.
      
      From-SVN: r238762
      Patrick Palka committed
    • Teach VRP to register assertions along default switch labels (PR18046) · 524cf1e4
      gcc/ChangeLog:
      
      	PR tree-optimization/18046
      	* genmodes.c (emit_mode_size_inline): Emit an assert that
      	verifies that mode is a valid array index.
      	(emit_mode_nuinits_inline): Likewise.
      	(emit_mode_inner_inline): Likewise.
      	(emit_mode_unit_size_inline): Likewise.
      	(emit_mode_unit_precision_inline): Likewise.
      	* tree-vrp.c: Include params.h.
      	(find_switch_asserts): Register edge assertions for the default
      	label which correspond to the anti-ranges of each case label.
      	* params.def (PARAM_MAX_VRP_SWITCH_ASSERTIONS): New.
      	* doc/invoke.texi: Document it.
      
      gcc/testsuite/ChangeLog:
      
      	PR tree-optimization/18046
      	* gcc.dg/tree-ssa/ssa-dom-thread-6.c: Bump FSM count to 5.
      	* gcc.dg/tree-ssa/vrp103.c: New test.
      	* gcc.dg/tree-ssa/vrp104.c: New test.
      
      From-SVN: r238761
      Patrick Palka committed
    • Move ChangeLog entry to the right place · 100665d8
      From-SVN: r238760
      William Schmidt committed
    • pr63354.c: Require lp64 since -mprofile-kernel is not legal with -m32. · ed26375b
      2016-07-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/pr63354.c: Require lp64 since
      	-mprofile-kernel is not legal with -m32.
      
      From-SVN: r238759
      Bill Schmidt committed
    • gimple-ssa-strength-reduction.c (slsr_process_phi): Remove dead and unnecessary call to gimple_bb. · 6e281ce3
      2016-07-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gimple-ssa-strength-reduction.c (slsr_process_phi): Remove dead
      	and unnecessary call to gimple_bb.
      
      From-SVN: r238758
      Bill Schmidt committed
    • re PR rtl-optimization/71984 (wrong code with -O -mavx512cd) · 0b64ca40
      2016-07-26  Richard Biener  <rguenther@suse.de>
      
      	PR rtl-optimization/71984
      	* simplify-rtx.c (simplify_subreg): Use GET_MODE_SIZE and prepare
      	for VOIDmode.
      
      	* gcc.dg/torture/pr71984.c: New testcase.
      
      From-SVN: r238757
      Richard Biener committed
    • re PR tree-optimization/72517 (436.cactusADM: More than 40% regression in O3 and… · ab2b55c1
      re PR tree-optimization/72517 (436.cactusADM: More than 40% regression in O3 and Ofast on AMD bdver4 m/c.)
      
      2016-07-26  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/72517
      	* expmed.c (extract_bit_field_1): Constrain the vector mode
      	with element size matching the extraction mode size when
      	choosing a better vector mode to do the extraction from.
      
      From-SVN: r238756
      Richard Biener committed
    • Add support to run auto-vectorization tests for multiple effective targets. · 9b7937cf
      gcc/testsuite/
      
      	* g++.dg/vect/vect.exp: Add and set new global EFFECTIVE_TARGETS. Call
      	g++-dg-runtest via et-dg-runtest.
      	* gcc.dg/graphite/graphite.exp: Likewise, but for dg-runtest.
      	* gcc.dg/vect/vect.exp: Likewise.
      	* gfortran.dg/graphite/graphite.exp: Likewise, but for
      	gfortran-dg-runtest.
      	* gfortran.dg/vect/vect.exp: Likewise.
      	* lib/target-supports.exp (check_mpaired_single_hw_available): New.
      	(check_mips_loongson_hw_available): Likewise.
      	(check_effective_target_mpaired_single_runtime): Likewise.
      	(check_effective_target_mips_loongson_runtime): Likewise.
      	(add_options_for_mpaired_single): Likewise.
      	(check_effective_target_vect_int): Add global et_index.
      	Check and save the supported feature for a target selected by
      	the et_index target.  Break long lines where appropriate.  Call
      	et-is-effective-target for MIPS with an argument instead of
      	check_effective_target_* where appropriate.
      	(check_effective_target_vect_intfloat_cvt): Likewise.
      	(check_effective_target_vect_uintfloat_cvt): Likewise.
      	(check_effective_target_vect_floatint_cvt): Likewise.
      	(check_effective_target_vect_floatuint_cvt): Likewise.
      	(check_effective_target_vect_simd_clones): Likewise.
      	(check_effective_target_vect_shift): ewise.
      	(check_effective_target_whole_vector_shift): Likewise.
      	(check_effective_target_vect_bswap): Likewise.
      	(check_effective_target_vect_shift_char): Likewise.
      	(check_effective_target_vect_long): Likewise.
      	(check_effective_target_vect_float): Likewise.
      	(check_effective_target_vect_double): Likewise.
      	(check_effective_target_vect_long_long): Likewise.
      	(check_effective_target_vect_no_int_max): Likewise.
      	(check_effective_target_vect_no_int_add): Likewise.
      	(check_effective_target_vect_no_bitwise): Likewise.
      	(check_effective_target_vect_widen_shift): Likewise.
      	(check_effective_target_vect_no_align): Likewise.
      	(check_effective_target_vect_hw_misalign): Likewise.
      	(check_effective_target_vect_element_align): Likewise.
      	(check_effective_target_vect_condition): Likewise.
      	(check_effective_target_vect_cond_mixed): Likewise.
      	(check_effective_target_vect_char_mult): Likewise.
      	(check_effective_target_vect_short_mult): Likewise.
      	(check_effective_target_vect_int_mult): Likewise.
      	(check_effective_target_vect_extract_even_odd): Likewise.
      	(check_effective_target_vect_interleave): Likewise.
      	(check_effective_target_vect_stridedN): Likewise.
      	(check_effective_target_vect_multiple_sizes): Likewise.
      	(check_effective_target_vect64): Likewise.
      	(check_effective_target_vect_call_copysignf): Likewise.
      	(check_effective_target_vect_call_sqrtf): Likewise.
      	(check_effective_target_vect_call_btrunc): Likewise.
      	(check_effective_target_vect_call_btruncf): Likewise.
      	(check_effective_target_vect_call_ceil): Likewise.
      	(check_effective_target_vect_call_ceilf): Likewise.
      	(check_effective_target_vect_call_floor): Likewise.
      	(check_effective_target_vect_call_floorf): Likewise.
      	(check_effective_target_vect_call_lceil): Likewise.
      	(check_effective_target_vect_call_lfloor): Likewise.
      	(check_effective_target_vect_call_nearbyint): Likewise.
      	(check_effective_target_vect_call_nearbyintf): Likewise.
      	(check_effective_target_vect_call_round): Likewise.
      	(check_effective_target_vect_call_roundf): Likewise.
      	(check_effective_target_vect_perm): Likewise, but also append *_saved
      	to the existing global name to properly cache the result.
      	(check_effective_target_vect_perm_byte): Likewise.
      	(check_effective_target_vect_perm_short): Likewise.
      	(check_effective_target_vect_widen_sum_hi_to_si_pattern): Likewise.
      	(check_effective_target_vect_widen_sum_hi_to_si): Likewise.
      	(check_effective_target_vect_widen_sum_qi_to_hi): Likewise.
      	(check_effective_target_vect_widen_sum_qi_to_si): Likewise.
      	(check_effective_target_vect_widen_mult_qi_to_hi_pattern): Likewise.
      	(check_effective_target_vect_widen_mult_qi_to_hi): Likewise.
      	(check_effective_target_vect_widen_mult_hi_to_si_pattern): Likewise.
      	(check_effective_target_vect_widen_mult_si_to_di_pattern): Likewise.
      	(check_effective_target_vect_sdot_qi): Likewise.
      	(check_effective_target_vect_udot_qi): Likewise.
      	(check_effective_target_vect_sdot_hi): Likewise.
      	(check_effective_target_vect_udot_hi): Likewise.
      	(check_effective_target_vect_usad_char): Likewise.
      	(check_effective_target_vect_pack_trunc): Likewise.
      	(check_effective_target_vect_unpack): Likewise.
      	(check_effective_target_vect_aligned_arrays): Likewise.
      	(check_effective_target_vect_natural_alignment): Likewise.
      	(check_effective_target_vector_alignment_reachable): Likewise.
      	(check_effective_target_vector_alignment_reachable_for_64bit): Likewise.
      	(is-effective-target): Initialize et_index if undefined.
      	(et-dg-runtest): New.
      	(et-is-effective-target): Likewise.
      	(check_vect_support_and_set_flags): Add supported MIPS targets to
      	EFFECTIVE_TARGETS list.  Return the number of supported targets.
      
      From-SVN: r238755
      Robert Suchanek committed
    • re PR middle-end/70920 (if ((intptr_t)ptr == 0) doesn't get simplified to if (ptr == 0)) · 8f63caf6
      2016-07-26  Richard Biener  <rguenther@suse.de>
      	    Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
      
      	PR middle-end/70920
      	* match.pd ((intptr)x eq/ne CST to x eq/ne (typeof x) CST): New
      	pattern.
      
      testsuite/
      	* gcc.dg/pr70920-1.c: New test-case.
      	* gcc.dg/pr70902-2.c: Likewise.
      	* gcc.dg/pr70920-3.c: Likewise.
      	* gcc.dg/pr70920-4.c: Likewise
      	* gcc.dg/tree-ssa/ssa-dom-branch-1.c: Change scan-tree-dump-times to
      	2 instead of 3.
      
      Co-Authored-By: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
      
      From-SVN: r238754
      Richard Biener committed