1. 18 Feb, 2016 1 commit
  2. 17 Feb, 2016 20 commits
  3. 16 Feb, 2016 19 commits
    • re PR target/48344 (powerpc ICE with -fstack-limit-register=r2) · ecf835e9
      [gcc]
      
      2016-02-16  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	PR Target/48344
      	* opts-global.c (handle_common_deferred_options): Introduce and
      	initialize two global variables to remember command-line options
      	specifying a stack-limiting register.
      	* opts.h: Add extern declarations of the two new global variables. 
      	* emit-rtl.c (init_emit_once): Initialize the stack_limit_rtx
      	variable based on the values of the two new global variables.
      
      [gcc/testsuite]
      
      2016-02-16  Kelvin Nilsen  <kelvin@gcc.gnu.org>
      
      	PR Target/48344
      	* gcc.target/powerpc/pr48344-1.c: New test.
      
      From-SVN: r233477
      Kelvin Nilsen committed
    • re PR fortran/69742 (ICE with -O3 and ASSOCIATE containing repeated expression) · 49a1164a
      2015-02-16  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/69742
      	* frontend-passes.c (cfe-expr_0):  Don't register functions
      	from within an ASSOCIATE statement.
      
      2015-02-16  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/69742
      	* gfortran.dg/associate_21.f90:  New test.
      
      From-SVN: r233474
      Thomas Koenig committed
    • re PR c/69835 (-Wnonnull diagnoses parameter comparisons with NULL even when… · bf14eba2
      re PR c/69835 (-Wnonnull diagnoses parameter comparisons with NULL even when those could have changed)
      
      	PR c/69835
      	* common.opt (Wnonnull-compare): New warning.
      	* doc/invoke.texi (-Wnonnull): Remove text about comparison
      	of arguments against NULL.
      	(-Wnonnull-compare): Document.
      	* Makefile.in (OBJS): Add gimple-ssa-nonnull-compare.o.
      	* tree-pass.h (make_pass_warn_nonnull_compare): Declare.
      	* passes.def (pass_warn_nonnull_compare): Add.
      	* gimple-ssa-nonnull-compare.c: New file.
      c-family/
      	* c.opt (Wnonnull-compare): Enable for -Wall.
      c/
      	* c-typeck.c (build_binary_op): Revert 2015-09-09 change.
      cp/
      	* typeck.c (cp_build_binary_op): Revert 2015-09-09 change.
      testsuite/
      	* c-c++-common/nonnull-1.c: Use -Wnonnull-compare instead of
      	-Wnonnull in dg-options.
      	* c-c++-common/nonnull-2.c: New test.
      
      From-SVN: r233472
      Jakub Jelinek committed
    • re PR c++/69657 (abs() not inlined after including math.h) · 7128d6ab
      	PR c++/69657
      	* name-lookup.c (lookup_qualified_name): Add find_hidden parm.
      	(set_decl_namespace): Pass it.  Complain about finding a hidden friend.
      	* name-lookup.h: Adjust.
      
      From-SVN: r233470
      Jason Merrill committed
    • gigi.h (maybe_debug_type): New inline function. · 7005800c
      	* gcc-interface/gigi.h (maybe_debug_type): New inline function.
      	* gcc-interface/misc.c (gnat_get_array_descr_info): Use it.
      	Call maybe_character_value on the array bounds.  Get to the base type
      	of the index type and call maybe_debug_type on it.
      	* gcc-interface/utils.c (finish_character_type): Add special treatment
      
      From-SVN: r233469
      Eric Botcazou committed
    • misc.c (gnat_enum_underlying_base_type): New function. · 8c7eac62
      	* gcc-interface/misc.c (gnat_enum_underlying_base_type): New function.
      	(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): Define to above.
      
      From-SVN: r233467
      Eric Botcazou committed
    • [AArch64] Remove AARCH64_EXTRA_TUNE_RECIP_SQRT from Cortex-A57 tuning · 7c175186
      gcc/
      
      	* config/aarch64/aarch64.c (cortexa57_tunings): Remove
      	AARCH64_EXTRA_TUNE_RECIP_SQRT.
      
      From-SVN: r233463
      James Greenhalgh committed
    • [Patch AArch64] Use software sqrt expansion always for -mlow-precision-recip-sqrt · 1a33079e
      gcc/
      
      	* config/aarch64/aarch64.c (use_rsqrt_p): Always use software
      	reciprocal sqrt for -mlow-precision-recip-sqrt.
      
      From-SVN: r233462
      James Greenhalgh committed
    • [Patch AArch64] GCC 6 regression in vector performance. - Fix vector… · 35a093b6
      [Patch AArch64] GCC 6 regression in vector performance. - Fix vector initialization to happen with lane load instructions.
      
      gcc/
      
      	* config/aarch64/aarch64.c (aarch64_expand_vector_init): Refactor,
      	always use lane loads to construct non-constant vectors.
      
      gcc/testsuite/
      
      	* gcc.target/aarch64/vector_initialization_nostack.c: New.
      
      
      Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
      
      From-SVN: r233461
      James Greenhalgh committed
    • [Patch AArch64] Restrict 16-bit sqrdml{sa}h instructions to FP_LO_REGS · 51b3f077
      gcc/
      
      	* config/aarch64/aarch64.md
      	(arch64_sqrdml<SQRDMLH_AS:rdma_as>h_lane<mode>): Fix register
      	constraints for	operand 3.
      	(aarch64_sqrdml<SQRDMLH_AS:rdma_as>h_laneq<mode>): Likewise.
      
      From-SVN: r233460
      James Greenhalgh committed
    • re PR tree-optimization/69801 (gcc ICE on valid code on x86_64-linux-gnu in "operand_equal_p") · e387d491
      	PR middle-end/69801
      	* gcc.dg/pr69801.c: Add empty dg-options.
      
      From-SVN: r233459
      Jakub Jelinek committed
    • re PR c/64748 (OpenACC: "is not a variable" error with deviceptr()) · ba539195
      	PR c/64748
      
      	gcc/c/
      	* c-parser.c (c_parser_oacc_data_clause_deviceptr): Allow parms.
      
      	gcc/cp/
      	* parser.c (cp_parser_oacc_data_clause_deviceptr): Remove checking.
      	* semantics.c (finish_omp_clauses): Add deviceptr checking.
      
      	gcc/testsuite/
      	* c-c++-common/goacc/deviceptr-1.c: Add tests.
      	* g++.dg/goacc/deviceptr-1.c: New file.
      
      From-SVN: r233458
      James Norris committed
    • re PR tree-optimization/69820 (Test miscompiled with -O3 option) · 2a2b8f64
      	PR tree-optimization/69820
      	* tree-vect-patterns.c (type_conversion_p): Return false if
      	*orig_type is unsigned single precision or boolean.
      	(vect_recog_dot_prod_pattern, vect_recog_widen_mult_pattern):
      	Formatting fix.
      
      	* gcc.dg/vect/pr69820.c: New test.
      
      Co-Authored-By: Richard Biener <rguenther@suse.de>
      
      From-SVN: r233457
      Jakub Jelinek committed
    • re PR rtl-optimization/69764 (ICE on x86_64-linux-gnu at -O0 (in decompose, at rtl.h:2107)) · 5aa7d94c
      	PR rtl-optimization/69764
      	PR rtl-optimization/69771
      	* optabs.c (expand_binop): Ensure for shift optabs invalid CONST_INT
      	op1 is valid for GET_MODE_INNER (mode) and force it into a reg.
      
      From-SVN: r233456
      Jakub Jelinek committed
    • re PR tree-optimization/69776 (Wrong optimization with aliasing) · 87440c29
      2016-02-16  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/69776
      	* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Get alias
      	sets from caller.
      	(indirect_refs_may_alias_p): Likewise.
      	(refs_may_alias_p_1): Pass alias sets as from ao_ref.
      	* tree-ssa-sccvn.c (vn_reference_lookup): Also adjust vr alias-set
      	according to tbaa_p.
      	* tree-ssa-dom.c (lookup_avail_expr): Add tbaa_p flag.
      	(optimize_stmt): For redundant store discovery do not allow tbaa.
      
      	* gcc.dg/torture/pr69776-2.c: New testcase.
      
      From-SVN: r233453
      Richard Biener committed
    • Fix bswap optimization on big-endian (PR69714, 67781). · 6d87c306
      	PR tree-optimization/69714
      	* tree-ssa-math-opts.c (find_bswap_or_nop): Revert previous change.
      	Return NULL if we have irrelevant high bytes on BIG_ENDIAN.
      
      testsuite/
      	PR tree-optimization/69714
      	* gcc.dg/torture/pr69714.c: New test.
      
      From-SVN: r233452
      Bernd Schmidt committed
    • [ARC] Add single/double IEEE precission FPU support. · 8f3304d0
      gcc/
      2016-02-16  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc-modes.def (CC_FPU, CC_FPU_UNEQ): New modes.
      	* config/arc/arc-opts.h (FPU_SP, FPU_SF, FPU_SC, FPU_SD, FPU_DP)
      	(FPU_DF, FPU_DC, FPU_DD, FXP_DP): Define.
      	* config/arc/arc.c (arc_init): Check FPU options.
      	(get_arc_condition_code): Handle new CC_FPU* modes.
      	(arc_select_cc_mode): Likewise.
      	(arc_conditional_register_usage): Allow 64 bit datum into even-odd
      	register pair only. Allow access for ARCv2 accumulator.
      	(gen_compare_reg): Whenever we have FPU support use FPU compare
      	instructions.
      	(arc_reorg): Don't generate brcc insns when FPU compare
      	instructions are involved.
      	* config/arc/arc.h (TARGET_DPFP): Add TARGET_FP_DPAX condition.
      	(TARGET_OPTFPE): Add condition when ARC EM can use optimized
      	floating point emulation.
      	(ACC_REG_FIRST, ACC_REG_LAST, ACCL_REGNO, ACCH_REGNO): Define.
      	(REVERSE_CONDITION): Add new CC_FPU* modes.
      	(TARGET_FP_SP_BASE): Define.
      	(TARGET_FP_DP_BASE): Likewise.
      	(TARGET_FP_SP_FUSED): Likewise.
      	(TARGET_FP_DP_FUSED): Likewise.
      	(TARGET_FP_SP_CONV): Likewise.
      	(TARGET_FP_DP_CONV): Likewise.
      	(TARGET_FP_SP_SQRT): Likewise.
      	(TARGET_FP_DP_SQRT): Likewise.
      	(TARGET_FP_DP_AX): Likewise.
      	* config/arc/arc.md (ARCV2_ACC): New constant.
      	(type): New fpu type attribute.
      	(SDF): Conditional iterator.
      	(cstore<mode>, cbranch<mode>): Change expand condition.
      	(addsf3, subsf3, mulsf3, adddf3, subdf3, muldf3): New expands,
      	handles FPU/FPX cases as well.
      	* config/arc/arc.opt (mfpu): New option.
      	* config/arc/fpx.md (addsf3_fpx, subsf3_fpx, mulsf3_fpx):
      	Renamed.
      	(adddf3, muldf3, subdf3): Removed.
      	* config/arc/predicates.md (proper_comparison_operator): Recognize
      	CC_FPU* modes.
      	* config/arc/fpu.md: New file.
      	* doc/invoke.texi (ARC Options): Document mfpu option.
      
      From-SVN: r233451
      Claudiu Zissulescu committed
    • re PR rtl-optimization/69291 (wrong code at -O1 for… · d5b1a52e
      re PR rtl-optimization/69291 (wrong code at -O1 for ruby-2.3.0/regcomp.c:985:compile_length_quantifier_node())
      
      2016-02-16  Richard Biener  <rguenther@suse.de>
      
      	PR rtl-optimization/69291
      	* ifcvt.c (noce_try_store_flag_constants): Re-instantiate
      	noce_operand_ok check.
      
      From-SVN: r233448
      Richard Biener committed
    • Don't call call_cgraph_insertion_hooks in simd_clone_create · 2175df99
      2016-02-16  Tom de Vries  <tom@codesourcery.com>
      
      	PR lto/67709
      	* omp-low.c (simd_clone_create): Remove call to
      	symtab->call_cgraph_insertion_hooks.
      
      	* testsuite/libgomp.fortran/declare-simd-4.f90: New test.
      
      From-SVN: r233447
      Tom de Vries committed