1. 03 Aug, 2015 23 commits
    • re PR go/67101 (mprof.goc:408:5: error: calling ‘__builtin_frame_address’ with a… · 3d6d2a63
      re PR go/67101 (mprof.goc:408:5: error: calling ‘__builtin_frame_address’ with a nonzero argument is unsafe [-Werror=frame-address])
      
      	PR go/67101
      
          runtime: Remove call to __builtin_frame_address.
          
          __builtin_frame_address was only supposed to use nonzero arguments
          for debugging purposes.  Calling it with nonzero arguments can have
          unpredictable results and uses are now marked unsafe when
          -Wframe-address is enabled.
          
          Reviewed-on: https://go-review.googlesource.com/13063
      
      From-SVN: r226525
      Ian Lance Taylor committed
    • re PR target/67060 (FAIL: gcc.dg/pr56228.c (test for excess errors)) · 8a921278
      	PR target/67060
      	* config/pa/pa.md (call_reg_64bit): Remove reg:DI 1 clobber.
      	Adjust splits to match new pattern.
      
      From-SVN: r226522
      John David Anglin committed
    • vector.md (VEC_L): Add KFmode and TFmode. · c477a667
      2015-08-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* config/rs6000/vector.md (VEC_L): Add KFmode and TFmode.
      	(VEC_M): Likewise.
      	(VEC_N): Likewise.
      	(mov<mode>, VEC_M iterator): Add support for IEEE 128-bit floating
      	point in VSX registers.
      
      	* config/rs6000/constraints.md (wb constraint): Document unused
      	w<x> constraint.
      	(we constraint): Likewise.
      	(wo constraint): Likewise.
      	(wp constraint): New constraint for IEEE 128-bit floating point in
      	VSX registers.
      	(wq constraint): Likewise.
      
      	* config/rs6000/predicates.md (easy_fp_constant): Add support for
      	IEEE 128-bit floating point in VSX registers.
      	(easy_scalar_constant): Likewise.
      
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Add new
      	constraints (wp, wq) for IEEE 128-bit floating point in VSX
      	registers.
      	(rs6000_init_hard_regno_mode_ok): Likewise.
      
      	* config/rs6000/vsx.md (VSX_LE_128): Add support for IEEE 128-bit
      	floating point in VSX registers.
      	(VSX_L): Likewise.
      	(VSX_M): Likewise.
      	(VSX_M2): Likewise.
      	(VSm): Likewise.
      	(VSs): Likewise.
      	(VSr): Likewise.
      	(VSa): Likewise.
      	(VSv): Likewise.
      	(vsx_le_permute_<mode>): Add support to properly swap bytes for
      	IEEE 128-bit floating point in VSX registers on little endian.
      	(vsx_le_undo_permute_<mode>): Likewise.
      	(vsx_le_perm_load_<mode>): Likewise.
      	(vsx_le_perm_store_<mode>): Likewise.
      	(splitters for IEEE 128-bit fp moves): Likewise.
      
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Add wp and
      	wq constraints.
      
      	* config/rs6000/altivec.md (VM): Add support for IEEE 128-bit
      	floating point in VSX registers.
      	(VM2): Likewise.
      
      	* doc/md.text (Machine Constraints): Document wp and wq
      	constraints on PowerPC.
      
      From-SVN: r226520
      Michael Meissner committed
    • Add a testcase for PR tree-optimization/67077 · 472fd3cc
      	PR tree-optimization/67077
      	* gcc.dg/pr67077.c: New test.
      
      From-SVN: r226518
      H.J. Lu committed
    • re PR fortran/66942 (trans-expr.c:5701 runtime error: member call on null… · 5c4aa279
      re PR fortran/66942 (trans-expr.c:5701 runtime error: member call on null pointer of type 'struct vec')
      
      2015-08-03  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/66942
      	* trans-expr.c (gfc_conv_procedure_call): Avoid NULL pointer reference
      
      From-SVN: r226517
      Steven G. Kargl committed
    • re PR middle-end/66314 (ice in verify_loop_structure) · c2a96ec2
      	PR middle-end/66314
      	PR gcov-profile/66899
      	* tree-ssa-threadupdate.c (mark_threaded_blocks): Correctly
      	iterate over the jump threading paths when an element in the
      	jump threading paths array is eliminated.
      
      	PR middle-end/66314
      	PR gcov-profile/66899
      	* gcc.dg/pr66899.c: New test.
      	* gcc.dg/pr66314.c: New test.
      
      From-SVN: r226516
      Jeff Law committed
    • re PR libstdc++/67078 (FAIL: 24_iterators/container_access.cc (test for excess… · 93411db8
      re PR libstdc++/67078 (FAIL: 24_iterators/container_access.cc (test for excess errors) on aarch64-none-elf)
      
      	PR libstdc++/67078
      	* include/bits/range_access.h (size, empty, data): Fix _N bad name.
      
      From-SVN: r226515
      Jonathan Wakely committed
    • Avoid recomputing the defining predicate chains for the same PHI · c0503346
      gcc/ChangeLog:
      
      	* tree-ssa-uninit.c (find_uninit_use): Declare and pass to
      	is_use_properly_guarded the variable def_preds.  Free its
      	contents before returning.
      	(prune_uninit_phi_opnds_in_unrealizable_paths): Same.
      	(is_use_properly_guarded): Replace local variable def_preds with
      	a parameter.  Adjust accordingly.  Only update *def_preds if it's
      	the empty vector.
      
      From-SVN: r226511
      Patrick Palka committed
    • re PR c/67088 (Incorrect location of error on invalid type used in bit-field declaration) · 420a9d9b
      	PR c/67088
      	* c-decl.c (check_bitfield_type_and_width): Add location parameter.
      	Use it.
      	(grokdeclarator): Pass LOC down to check_bitfield_type_and_width.
      
      	* gcc.dg/pr67088.c: New test.
      
      From-SVN: r226506
      Marek Polacek committed
    • genmatch.c (simplify::for_subst_vec): New member. · 50301115
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (simplify::for_subst_vec): New member.
      	(binary_ok): New helper for for lowering.
      	(lower_for): Delay substituting operators into result expressions
      	if we can merge the results eventually again.
      	(capture_info::walk_result): Adjust for user_id appearing as
      	result expression operator.
      	(expr::gen_transform): Likewise.
      	(dt_simplify::gen_1): Likewise.
      	(dt_simplify::gen): Pass not substituted operators to tail
      	functions or initialize local variable with it.
      	(decision_tree::gen): Adjust function signature.
      	* match.pd: Fix tests against global code and add default
      	cases to switch stmts.
      
      From-SVN: r226505
      Richard Biener committed
    • genmatch.c (simplify::for_subst_vec): New member. · d4b71b95
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (simplify::for_subst_vec): New member.
      	(binary_ok): New helper for for lowering.
      	(lower_for): Delay substituting operators into result expressions
      	if we can merge the results eventually again.
      	(capture_info::walk_result): Adjust for user_id appearing as
      	result expression operator.
      	(expr::gen_transform): Likewise.
      	(dt_simplify::gen_1): Likewise.
      	(dt_simplify::gen): Pass not substituted operators to tail
      	functions or initialize local variable with it.
      	(decision_tree::gen): Adjust function signature.
      	* match.pd: Fix tests against global code and add default
      	cases to switch stmts.
      
      From-SVN: r226504
      Richard Biener committed
    • genmatch.c (dt_simplify::gen): Create captures array with an initializer. · 1d2fdec6
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (dt_simplify::gen): Create captures array
      	with an initializer.
      
      From-SVN: r226503
      Richard Biener committed
    • configure.ac: Set aliasing_flags to -fno-strict-aliasing if... · 4c0cca18
      gcc/ChangeLog:
      
      	* configure.ac: Set aliasing_flags to -fno-strict-aliasing if
      	the host compiler is affected by placement new aliasing bug.
      	* configure: Regenerate.
      	* Makefile.in (ALIASING_FLAGS): New variable.
      	(ALL_CXXFLAGS): Add $(ALIASING_FLAGS).
      
      From-SVN: r226499
      Ulrich Weigand committed
    • [ARM] PR target/66731 Fix vnmul insn with -frounding-math · 1f71aee9
      gcc:
      
      	PR target/66731
      	* config/arm/vfp.md (negmuldf3_vfp): Add new pattern.
      	(negmulsf3_vfp): Likewise.
      	(muldf3negdf_vfp): Disable for -frounding-math.
      	(mulsf3negsf_vfp): Likewise.
      	* config/arm/arm.c (arm_new_rtx_costs): Fix NEG cost for VNMUL,
      	fix MULT cost with -frounding-math.
      
      gcc/testsuite:
      
      	PR target/66731
      	* gcc.target/arm/vnmul-1.c: New.
      	* gcc.target/arm/vnmul-2.c: New.
      	* gcc.target/arm/vnmul-3.c: New.
      	* gcc.target/arm/vnmul-4.c: New.
      
      From-SVN: r226496
      Szabolcs Nagy committed
    • Fix random class_allocate_18.f90 failure · 2ab320ad
      	PR fortran/64921
      gcc/fortran/
      	* class.c (generate_finalization_wrapper): Set finalization
      	procedure symbol's always_explicit attribute.
      gcc/testsuite/
      	* gfortran.dg/class_allocate_20.f90: New.
      
      From-SVN: r226493
      Mikael Morin committed
    • [RTL-ifcvt] Improve conditional select ops on immediates · 44fef04a
      	* ifcvt.c (noce_try_store_flag_constants): Make logic of the case
      	when diff == STORE_FLAG_VALUE or diff == -STORE_FLAG_VALUE more
      	explicit.  Prefer to add the flag whenever possible.
      	(noce_process_if_block): Try noce_try_store_flag_constants before
      	noce_try_cmove.
      
      	* gcc.target/aarch64/csel_bfx_1.c: New test.
      	* gcc.target/aarch64/csel_imms_inc_1.c: Likewise.
      
      From-SVN: r226491
      Kyrylo Tkachov committed
    • genmatch.c (struct sinfo, [...]): New hash-map to record equivalent transforms. · 03038b8b
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (struct sinfo, struct sinfo_hashmap_traits, sinfo_map_t):
      	New hash-map to record equivalent transforms.
      	(dt_node::analyze): Populate the equivalent transforms hash-map.
      	(dt_simplify::info): Add reference to hash-map entry.
      	(dt_simplify::gen): If we have split out a function for the
      	transform, generate a call to it.
      	(sinfo_hashmap_traits::hash): New function.
      	(compare_op): New helper function for ...
      	(sinfo_hashmap_traits::equal_keys): ... this new function.
      	(decision_tree::gen): Split out common equivalent transforms
      	into functions.
      
      From-SVN: r226490
      Richard Biener committed
    • gimple-fold.c (fold_gimple_assign): Remove folding of the comparison in COND_EXPRs. · 5c099d40
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	* gimple-fold.c (fold_gimple_assign): Remove folding of
      	the comparison in COND_EXPRs.
      
      From-SVN: r226489
      Richard Biener committed
    • gimple-match-head.c (gimple_simplify): For [VEC_]COND_EXPRs on the rhs of… · a0c012fd
      gimple-match-head.c (gimple_simplify): For [VEC_]COND_EXPRs on the rhs of assignments first simplify the embedded...
      
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	* gimple-match-head.c (gimple_simplify): For [VEC_]COND_EXPRs
      	on the rhs of assignments first simplify the embedded
      	GENERIC condition.
      
      From-SVN: r226488
      Richard Biener committed
    • re PR tree-optimization/66917 (ARM: NEON: memcpy compiles to vst1 with incorrect alignment) · 52639a61
      2015-08-03  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/66917
      	* tree-vectorizer.h (struct dataref_aux): Add base_element_aligned
      	field.
      	(DR_VECT_AUX): New macro.
      	(set_dr_misalignment): Adjust.
      	(dr_misalignment): Likewise.
      	* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
      	Compute whether the base is at least element aligned.
      	* tree-vect-stmts.c (ensure_base_align): Adjust.
      	(vectorizable_store): If the base is not element aligned
      	preserve alignment of the original access if misalignment is unknown.
      	(vectorizable_load): Likewise.
      
      From-SVN: r226487
      Richard Biener committed
    • MAINTAINERS (loop ivopts): Add the entry and myself. · 94b8fdcc
      
      	* MAINTAINERS (loop ivopts): Add the entry and myself.
      
      From-SVN: r226486
      Bin Cheng committed
    • Daily bump. · 839a1d4a
      From-SVN: r226483
      GCC Administrator committed
  2. 02 Aug, 2015 7 commits
    • c.opt (-Wframe-address): New warning option. · 8423e57c
      gcc/ChangeLog
      2015-07-28  Martin Sebor  <msebor@redhat.com>
      
          * c-family/c.opt (-Wframe-address): New warning option.
          * doc/invoke.texi (Wframe-address): Document it.
          * doc/extend.texi (__builtin_frame_address, __builtin_return_address):
          Clarify possible effects of calling the functions with non-zero
          arguments and mention -Wframe-address.
          * builtins.c (expand_builtin_frame_address): Handle -Wframe-address.
      
      gcc/testsuite/ChangeLog
      2015-07-28  Martin Sebor  <msebor@redhat.com>
      
          * g++.dg/Wframe-address-in-Wall.C: New test.
          * g++.dg/Wframe-address.C: New test.
          * g++.dg/Wno-frame-address.C: New test.
          * gcc.dg/Wframe-address-in-Wall.c: New test.
          * gcc.dg/Wframe-address.c: New test.
          * gcc.dg/Wno-frame-address.c: New test.
      
      From-SVN: r226480
      Martin Sebor committed
    • Improve -Wmisleading-indentation heuristics · 8ebca419
      gcc/c-family/ChangeLog:
      
      	* c-indentation.c (should_warn_for_misleading_indentation):
      	Improve heuristics.
      
      gcc/testsuite/ChangeLog:
      
      	* c-c++-common/Wmisleading-indentation.c: Add more tests.
      
      From-SVN: r226479
      Patrick Palka committed
    • Remove is_first_nonwhitespace_on_line(), instead improve get_visual_column() · 1a1e101f
      gcc/c-family/ChangeLog:
      
      	* c-indentation.c (get_visual_column): Add parameter first_nws,
      	use it.  Update comment documenting the function.
      	(is_first_nonwhitespace_on_line): Remove.
      	(should_warn_for_misleading_indentation): Replace usage of
      	of is_first_nonwhitespace_on_line with get_visual_column.
      
      From-SVN: r226478
      Patrick Palka committed
    • Refactor entry point to -Wmisleading-indentation · 992118a1
      gcc/c-family/ChangeLog:
      
      	* c-indentation.h (struct token_indent_info): Define.
      	(get_token_indent_info): Define.
      	(warn_for_misleading_information): Declare.
      	* c-common.h (warn_for_misleading_information): Remove.
      	* c-identation.c (warn_for_misleading_indentation):
      	Change declaration to take three token_indent_infos.  Adjust
      	accordingly.
      	* c-identation.c (should_warn_for_misleading_indentation):
      	Likewise.  Bail out early if the body is a compound statement.
      	(guard_tinfo_to_string): Define.
      
      gcc/c/ChangeLog:
      
      	* c-parser.c (c_parser_if_body): Take token_indent_info
      	argument. Call warn_for_misleading_indentation even when the
      	body is a semicolon.  Extract token_indent_infos corresponding
      	to the guard, body and next tokens.  Adjust call to
      	warn_for_misleading_indentation accordingly.
      	(c_parser_else_body): Likewise.
      	(c_parser_if_statement): Likewise.
      	(c_parser_while_statement): Likewise.
      	(c_parser_for_statement): Likewise.
      
      gcc/cp/ChangeLog:
      
      	* parser.c (cp_parser_selection_statement): Move handling of
      	semicolon body to ...
      	(cp_parser_implicitly_scoped_statement): .. here.  Call
      	warn_for_misleading_indentation even when the body is a
      	semicolon.  Extract token_indent_infos corresponding to the
      	guard, body and next tokens.  Adjust call to
      	warn_for_misleading_indentation accordingly.  Take
      	token_indent_info argument.
      	(cp_parser_already_scoped_statement): Likewise.
      	(cp_parser_selection_statement, cp_parser_iteration_statement):
      	Extract a token_indent_info corresponding to the guard token.
      
      From-SVN: r226477
      Patrick Palka committed
    • arm.md (*arm_smin_cmp): New pattern. · fea8f6c6
      2015-08-01  Michael Collison  <michael.collison@linaro.org
      	    Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
      
      	* gcc/config/arm/arm.md (*arm_smin_cmp): New pattern.
      	(*arm_umin_cmp): Likewise.
      
      	* gcc.target/arm/mincmp.c: New test.
      
      From-SVN: r226476
      Michael Collison committed
    • re PR bootstrap/66521 (xgcc: cc1plus segfaults when compiling… · b0cca5ec
      re PR bootstrap/66521 (xgcc: cc1plus segfaults when compiling libstdc++-v3/src/c++11/ostream-inst.cc)
      
      Fix PR 66521
      
      libvtv/ChangeLog
      
      2015-08-01  Caroline Tice  <cmtice@google.com>
      
              PR 66521
              * Makefile.am: Update to match latest tree.
              * Makefile.in: Regenerate.
              * testsuite/lib/libvtv: Brought up to date.
              * vtv_malloc.cc (VTV_DEBUG): Update function call to match renamed
              function (old bug!).
              * vtv_rts.cc (debug_functions, debug_init, debug_verify_vtable): Update
              initializations to work correctly with VTV_DEBUG defined.
      
      gcc/ChangeLog:
      
      2015-08-01  Caroline Tice  <cmtice@google.com>
      
              PR 66521
              * vtable-verify.c (vtbl_mangled_name_types, vtbl_mangled_name_ids): New
              global variables.
              (vtbl_find_mangled_name):  New function.
              (vtbl_register_mangled_name):  New function.
              (vtbl_map_get_node):  If DECL_ASSEMBLER_NAME is "<anon>", look up
              mangled name in mangled name vectors.
              (find_or_create_vtbl_map_node):  Ditto.
              (var_is_used_for_virtual_call_p):  Add recursion_depth parameter;
              update recursion_depth on function entry; pass it to every recursive
              call; automatically exit if depth > 25 (give up looking at that point).
              (verify_bb_vtables):  Initialize recursion_depth and pass it to
              var_is_used_for_virtual_call_p.
              * vtable-verify.h (vtbl_mangbled_name_types, vtbl_mangled_name_ids): New
              global variable decls.
              (vtbl_register_mangled_name): New extern function decl.
      
      gcc/cp/ChangeLog:
      2015-08-01  Caroline Tice  <cmtice@google.com>
      
              PR 66521
              * mangle.c : Add vtable-verify.h to include files.
              (get_mangled_vtable_map_var_name):  If the DECL_ASSEMBLER_NAME
              is "<anon>" get the real mangled name for the class instead, and
              also store the real mangled name in a vector for use later.
      
      From-SVN: r226471
      Caroline Tice committed
    • Daily bump. · 68e3e6a2
      From-SVN: r226468
      GCC Administrator committed
  3. 01 Aug, 2015 3 commits
    • re PR fortran/67091 ([OOP] Bad result for type-bound procedures returning… · 28ed8364
      re PR fortran/67091 ([OOP] Bad result for type-bound procedures returning pointers to the intrinsic function ASSOCIATED)
      
      2015-08-01  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/67091
      	* trans-intrinsic.c (gfc_conv_associated): Add the pre and post
      	blocks for the second argument to se.
      
      2015-08-01  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/67091
      	* gfortran.dg/associated_target_6.f03: New test
      
      From-SVN: r226464
      Paul Thomas committed
    • Allow non-overflow ops in reductions · 805134b9
      2015-08-01  Tom de Vries  <tom@codesourcery.com>
      
      	* tree.c (operation_can_overflow, operation_no_trapping_overflow): New
      	function.
      	* tree.h (operation_can_overflow, operation_no_trapping_overflow):
      	Declare.
      	* tree-vect-loop.c (vect_is_simple_reduction_1): Use
      	operation_no_trapping_overflow.  Allow non-overflow operations.
      	* graphite-sese-to-poly.c (is_reduction_operation_p): Allow non-overflow
      	operations.
      
      	* gcc.dg/autopar/reduc-2char.c (init_arrays): Mark with attribute
      	optimize ("-ftree-parallelize-loops=0").
      	Add successful scans for 2 detected reductions.	 Add xfail scans for 3
      	detected reductions.
      	* gcc.dg/autopar/reduc-2short.c: Same.
      	* gcc.dg/autopar/reduc-8.c (init_arrays): Mark with attribute
      	optimize ("-ftree-parallelize-loops=0").  Add successful scans for 2
      	detected reductions.
      	* gcc.dg/vect/trapv-vect-reduc-4.c: Update scan to match vectorized min
      	and max reductions.
      
      From-SVN: r226463
      Tom de Vries committed
    • Daily bump. · faf4ac32
      From-SVN: r226462
      GCC Administrator committed
  4. 31 Jul, 2015 7 commits