1. 27 Jun, 2017 12 commits
  2. 26 Jun, 2017 21 commits
    • Makefile.am (s-zdefaultcc): Don't record $(bindir) for defaultCC or defaultCXX. · 8e51be62
      	* Makefile.am (s-zdefaultcc): Don't record $(bindir) for defaultCC
      	or defaultCXX.
      	* Makefile.in: Rebuild.
      
      From-SVN: r249669
      Ian Lance Taylor committed
    • Fix for SPEC CPU2017 621.wrf_s failure, add missing locking code. · b971fa7f
      	libgfortran/
      	PR libfortran/81195
      	* io/unit.c (get_unit): Call __gthread_mutex_lock before newunit_stack
      	and newunit_tos references.  Call __gthread_mutex_unlock afterward.
      
      From-SVN: r249667
      Jim Wilson committed
    • PR c++/81215 - deduction failure with variadic TTP. · b0d1023d
      	* pt.c (unify_bound_ttp_args): Restore old logic for C++14 and down.
      
      From-SVN: r249664
      Jason Merrill committed
    • syscall: don't define PtraceRegs for Alpha · b5df99f7
          
          It's now defined by mksysinfo.sh.
          
          Patch by Uros Bizjak.
          
          Reviewed-on: https://go-review.googlesource.com/46712
      
      From-SVN: r249663
      Ian Lance Taylor committed
    • PR c++/81169 - -Wclass-memaccess illegitimate warning related to volatile · 4b377e01
      gcc/cp/ChangeLog:
      
      	PR c++/81169
      	* call.c (maybe_warn_class_memaccess): Preserve explicit conversions
      	to detect casting away cv-qualifiers.
      
      gcc/testsuite/ChangeLog:
      
      	PR c++/81169
      	* g++.dg/Wclass-memaccess-2.C: New test.
      
      From-SVN: r249660
      Martin Sebor committed
    • config.gcc (*-*-vxworks*): Add TARGET_VXWORKS7=1 to tm_defines for all vxworks7 targets. · b269e899
      2017-06-26  Jerome Lambourg  <lambourg@adacore.com>
                  Olivier Hainque  <hainque@adacore.com>
      
      	* config.gcc (*-*-vxworks*): Add TARGET_VXWORKS7=1 to tm_defines
      	for all vxworks7 targets.
      	* config/vxworks.h (TARGET_VXWORKS7): If not defined, define to 0.
      	(VXWORKS_ADDITIONAL_CPP_SPEC): Alternative definition for VXWORKS7.
      	(VXWORKS_LIBS_RTP, VXWORKS_LIBS_RTP_DIR): New macros, allowing
      	variations for VX6/VX7 and 32/64bits later on in ...
      	(VXWORKS_LIB_SPEC): Leverage new macros.
      	(VXWORKS_OS_CPP_BUILTINS): Define _VSB_CONFIG_FILE for VXWORKS7,
      	as well as _ALLOW_KEYWORD_MACROS when "inline" is not a keyword.
      
      
      Co-Authored-By: Olivier Hainque <hainque@adacore.com>
      
      From-SVN: r249659
      Jerome Lambourg committed
    • cp-tree.h (lang_decl_fn): Remove assignment_operator_p field. · d6ef53f2
      	gcc/cp/
      	* cp-tree.h (lang_decl_fn): Remove assignment_operator_p field.
      	(DECL_COMPLETE_CONSTRUCTOR_P): Directly compare
      	identifier.
      	(DECL_BASE_CONSTRUCTOR_P, DECL_COMPLETE_DESTRUCTOR_P)
      	DECL_BASE_DESTRUCTOR_P, DECL_DELETING_DESTRUCTOR_P): Likewise.
      	(DECL_ASSIGNMENT_OPERATOR_P): Use IDENTIFIER_ASSIGN_OP_P.
      	* decl.c (grok_op_properties): Adjust identifier checking.
      	* init.c (expand_default_init): Adjust identifier descision.
      	* method.c (implicitly_declare_fn): Don't use
      	DECL_ASSIGNMENT_OPERATOR_P.
      	* search.c (lookup_fnfields_1): Use IDENTIFIER_CTOR_P,
      	IDENTIFIER_DTOR_P.
      	* call.c (in_charge_arg_for_name): Reimplement.
      	(build_special_member_call): Use IDENTIFIER_CDTOR_P,
      	IDENTIFIER_DTOR_P.
      
      	libcc1/
      	* libcp1plugin.cc (plugin_build_decl): Don't set
      	DECL_ASSIGNMENT_OPERATOR_P.
      (--This line, and those below, will be ignored--
      
      M    gcc/cp/init.c
      M    gcc/cp/decl.c
      M    gcc/cp/method.c
      M    gcc/cp/cp-tree.h
      M    gcc/cp/call.c
      M    gcc/cp/search.c
      M    gcc/cp/ChangeLog
      M    libcc1/ChangeLog
      M    libcc1/libcp1plugin.cc
      
      From-SVN: r249657
      Nathan Sidwell committed
    • vxworks.h (VXWORKS_OS_CPP_BUILTINS): builtin_define _VX_TOOL_FAMILY and _VX_TOOL to gnu. · 0ffdc300
      2017-06-26  Jerome Lambourg  <lambourg@adacore.com>
      
      	* config/vxworks.h (VXWORKS_OS_CPP_BUILTINS): builtin_define
      	_VX_TOOL_FAMILY and _VX_TOOL to gnu.
      
      From-SVN: r249656
      Jerome Lambourg committed
    • rs6000-c.c: Add support for built-in functions vector bool char vec_reve (vector bool char)... · 952ac945
      gcc/ChangeLog:
      
      2017-06-26  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/rs6000-c.c: Add support for built-in functions
      	vector bool char vec_reve (vector bool char);
      	vector signed char vec_reve (vector signed char);
      	vector unsigned char vec_reve (vector unsigned char);
      	vector bool int vec_reve (vector bool int);
      	vector signed int vec_reve (vector signed int);
      	vector unsigned int vec_reve (vector unsigned int);
      	vector bool long long vec_reve (vector bool long long);
      	vector signed long long vec_reve (vector signed long long);
      	vector unsigned long long vec_reve (vector unsigned long long);
      	vector bool short vec_reve (vector bool short);
      	vector signed short vec_reve (vector signed short);
      	vector double vec_reve (vector double);
      	vector float vec_reve (vector float);
      	* config/rs6000/rs6000-builtin.def (VREVE_V2DI, VREVE_V4SI,
      	VREVE_V8HI, VREVE_V16QI, VREVE_V2DF, VREVE_V4SF, VREVE): New builtin.
      	* config/rs6000/altivec.md (UNSPEC_VREVEV): New UNSPEC.
      	(altivec_vreve): New pattern.
      	* config/rs6000/altivec.h (vec_reve): New define.
      	* doc/extend.texi (vec_rev): Update the built-in documentation file
      	for the new built-in functions.
      
      gcc/testsuite/ChangeLog:
      
      2017-06-26  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-3-vec_reve-runnable.c:
      	Add new runnable test file for the vec_rev built-ins.
      
      From-SVN: r249650
      Carl Love committed
    • re PR tree-optimization/71815 (SLSR misses several PHI candidate cases) · 226ab0a8
      [gcc]
      
      2016-06-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/71815
      	* gimple-ssa-strength-reduction.c (uses_consumed_by_stmt): New
      	function.
      	(find_basis_for_candidate): Call uses_consumed_by_stmt rather than
      	has_single_use.
      	(slsr_process_phi): Likewise.
      	(replace_uncond_cands_and_profitable_phis): Don't replace a
      	multiply candidate with a stride of 1 (copy or cast).
      	(phi_incr_cost): Call uses_consumed_by_stmt rather than
      	has_single_use.
      	(lowest_cost_path): Likewise.
      	(total_savings): Likewise.
      
      [gcc/testsuite]
      
      2016-06-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/71815
      	* gcc.dg/tree-ssa/slsr-35.c: Remove -fno-code-hoisting workaround.
      	* gcc.dg/tree-ssa/slsr-36.c: Likewise.
      
      From-SVN: r249649
      William Schmidt committed
    • gimple-ssa-strength-reduction.c (uses_consumed_by_stmt): New function. · df11b2ea
      [gcc]
      
      2016-06-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gimple-ssa-strength-reduction.c (uses_consumed_by_stmt): New
      	function.
      	(find_basis_for_candidate): Call uses_consumed_by_stmt rather than
      	has_single_use.
      	(slsr_process_phi): Likewise.
      	(replace_uncond_cands_and_profitable_phis): Don't replace a
      	multiply candidate with a stride of 1 (copy or cast).
      	(phi_incr_cost): Call uses_consumed_by_stmt rather than
      	has_single_use.
      	(lowest_cost_path): Likewise.
      	(total_savings): Likewise.
      
      [gcc/testsuite]
      
      2016-06-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.dg/tree-ssa/slsr-35.c: Remove -fno-code-hoisting workaround.
      	* gcc.dg/tree-ssa/slsr-36.c: Likewise.
      
      From-SVN: r249648
      Bill Schmidt committed
    • [PATCH][Testsuite]Use user defined memmove in gcc.c-torture/execute/builtins/memops-asm-lib.c · fa7ccca0
      After the change r249278. bcopy is folded into memmove. And in newlib
      aarch64 memmove implementation, it will call memcpy in certain conditions.
      The memcpy defined in memops-asm-lib.c will abort when the test is running.
      
      A user defined memmove function is defined to bypass the library one.
      So that memcpy won't be called accidentally.
      
      gcc/testsuite/
      
      	* gcc.c-torture/execute/builtins/memops-asm-lib.c (my_memmove): New.
      	* gcc.c-torture/execute/builtins/memops-asm.c (memmove): Declare memmove.
      
      
      Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
      
      From-SVN: r249647
      Renlin Li committed
    • re PR target/81175 (EXC_BAD_ACCESS in… · 5a5c2d16
      re PR target/81175 (EXC_BAD_ACCESS in ::slpeel_duplicate_current_defs_from_edges(edge, edge, edge, edge) at is-a.h:192)
      
      2017-06-26  Richard Biener  <rguenther@suse.de>
      
      	PR target/81175
      	* config/i386/i386.c (ix86_init_mmx_sse_builtins):
      	Use def_builtin_pure for all gather builtins.
      
      	* gfortran.dg/pr81175.f: New testcase.
      
      From-SVN: r249645
      Richard Biener committed
    • re PR tree-optimization/81203 (tail recursion: internal compiler error: verify_ssa failed) · 75f0112f
      2017-06-26  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/81203
      	* tree-tailcall.c (find_tail_calls): Do not move stmts into
      	non-dominating BBs.
      
      	* gcc.dg/torture/pr81203.c: New testcase.
      
      From-SVN: r249644
      Richard Biener committed
    • re PR c/80116 (Warn about macros expanding to multiple statements) · 3e2becc4
      	PR c/80116
      	* c-common.h (warn_for_multistatement_macros): Declare.
      	* c-warn.c: Include "c-family/c-indentation.h".
      	(warn_for_multistatement_macros): New function.
      	* c.opt (Wmultistatement-macros): New option.
      	* c-indentation.c (guard_tinfo_to_string): No longer static.
      	Change the parameter type to "enum rid".  Handle RID_SWITCH.
      	* c-indentation.h (guard_tinfo_to_string): Declare.
      
      	* c-parser.c (c_parser_if_body): Set the location of the
      	body of the conditional after parsing all the labels.  Call
      	warn_for_multistatement_macros.
      	(c_parser_else_body): Likewise.
      	(c_parser_switch_statement): Likewise.
      	(c_parser_while_statement): Likewise.
      	(c_parser_for_statement): Likewise.
      	(c_parser_statement): Add a default argument.  Save the location
      	after labels have been parsed.
      	(c_parser_c99_block_statement): Likewise.
      
      	* parser.c (cp_parser_statement): Add a default argument.  Save the
      	location of the expression-statement after labels have been parsed.
      	(cp_parser_implicitly_scoped_statement): Set the location of the
      	body of the conditional after parsing all the labels.  Call
      	warn_for_multistatement_macros.
      	(cp_parser_already_scoped_statement): Likewise.
      
      	* doc/invoke.texi: Document -Wmultistatement-macros.
      
      	* c-c++-common/Wmultistatement-macros-1.c: New test.
      	* c-c++-common/Wmultistatement-macros-2.c: New test.
      	* c-c++-common/Wmultistatement-macros-3.c: New test.
      	* c-c++-common/Wmultistatement-macros-4.c: New test.
      	* c-c++-common/Wmultistatement-macros-5.c: New test.
      	* c-c++-common/Wmultistatement-macros-6.c: New test.
      	* c-c++-common/Wmultistatement-macros-7.c: New test.
      	* c-c++-common/Wmultistatement-macros-8.c: New test.
      	* c-c++-common/Wmultistatement-macros-9.c: New test.
      	* c-c++-common/Wmultistatement-macros-10.c: New test.
      	* c-c++-common/Wmultistatement-macros-11.c: New test.
      
      From-SVN: r249643
      Marek Polacek committed
    • * MAINTAINERS: Add myself to Write After Approval. · 0666865c
      From-SVN: r249640
      Maxim Ostapenko committed
    • [ARM, testsuite] Add -mfloat-abi=hard to arm_neon_ok · c8e3c356
      2017-06-02  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	gcc/testsuite/
      	* lib/target-supports.exp
      	(check_effective_target_arm_neon_ok_nocache): Add flags with
      	-mfloat-abi=hard. Include arm_neon.h.
      	(check_effective_target_arm_neon_ok_no_float_abi_nocache): New.
      	(check_effective_target_arm_neon_ok_no_float_abi): New.
      	* gcc.target/arm/lto/pr65837_0.c: Require
      	arm_neon_ok_no_float_abi. Add -mfpu=neon to dg-lto-options.
      	* gcc.target/arm/lto/pr65837-attr_0.c: Require
      	arm_neon_ok_no_float_abi. Remove dg-suppress-ld-options.
      
      	gcc/
      	* doc/sourcebuild.texi (ARM-specific attributes): Document new
      	arm_neon_ok_no_float_abi effective target.
      
      From-SVN: r249639
      Christophe Lyon committed
    • re PR tree-optimization/80928 (SLP vectorization does not handle induction in… · 25853b33
      re PR tree-optimization/80928 (SLP vectorization does not handle induction in outer loop vectorization)
      
      2017-06-26  Richard Biener  <rguenther@suse.de>
      
              PR tree-optimization/80928
      	* cfghooks.c (duplicate_block): Do not copy BB_DUPLICATED flag.
      	(copy_bbs): Set BB_DUPLICATED flag early.
      	(execute_on_growing_pred): Do not execute for BB_DUPLICATED
      	marked blocks.
      	(execute_on_shrinking_pred): Likewise.
      	* tree-ssa.c (ssa_redirect_edge): Do not look for PHI args in
      	BB_DUPLICATED blocks.
      	* tree-ssa-phionlycoprop.c (eliminate_degenerate_phis_1): Properly
      	iterate over all PHIs considering removal of *gsi.
      
      From-SVN: r249638
      Richard Biener committed
    • Daily bump. · ddc36d5a
      From-SVN: r249637
      GCC Administrator committed
  3. 25 Jun, 2017 1 commit
  4. 24 Jun, 2017 4 commits
    • re PR fortran/81160 (arith.c:2009: bad statement order ?) · ab3a378a
      2017-06-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/81160
      	* arith.c (wprecision_int_real): Set return value before
      	mpz_clear and then return after it.
      
      From-SVN: r249627
      Jerry DeLisle committed
    • re PR c++/62315 (do not print typename in diagnostic if the original code does not have it) · 22235619
      /cp
      2017-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/62315
      	* parser.c (cp_parser_diagnose_invalid_type_name): Don't print
      	'typename' in error messages about missing 'typename'.
      
      /testsuite
      2017-06-24  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/62315
      	* g++.dg/parse/typedef2.C: Specify a dg-error string.
      
      From-SVN: r249626
      Paolo Carlini committed
    • re PR fortran/52473 (CSHIFT slow - inline it?) · e56e3fda
      2017-06-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
              PR fortran/52473
      	* Makefile.am:  Add i_cshift1a_c.  Add rules to generate files
      	from cshift1a.m4.
      	* Makefile.in: Regenerated.
      	* m4/cshift1a.m4: New file.
      	* m4/cshift.m4 (cshift1): Split up inner loop by removing
      	condition. Use memcpy where possible.  Call helper functions
      	based on dtype.
      	* libgfortran.h: Add prototypes for cshift1_16_c10,
      	cshift1_16_c16, cshift1_16_c4, cshift1_16_c8, cshift1_16_i1,
      	cshift1_16_i16, cshift1_16_i2, cshift1_16_i4, cshift1_16_i8,
      	cshift1_16_r10, cshift1_16_r16, cshift1_16_r4, cshift1_16_r8,
      	cshift1_4_c10, cshift1_4_c16, cshift1_4_c4, cshift1_4_c8,
      	cshift1_4_i1, cshift1_4_i16, cshift1_4_i2, cshift1_4_i4,
      	cshift1_4_i8, cshift1_4_r10, cshift1_4_r16, cshift1_4_r4,
      	cshift1_4_r8, cshift1_8_c10, cshift1_8_c16, cshift1_8_c4,
      	cshift1_8_c8, cshift1_8_i1, cshift1_8_i16, cshift1_8_i2,
      	cshift1_8_i4, cshift1_8_i8, cshift1_8_r10, cshift1_8_r16,
      	cshift1_8_r4 and cshift1_8_r8.
      	* generated/cshift1_16_c10.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_c16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_c4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_c8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_i1.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_i16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_i2.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_i4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_i8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_r10.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_r16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_r4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_16_r8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_c10.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_c16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_c4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_c8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_i1.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_i16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_i2.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_i4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_i8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_r10.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_r16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_r4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_4_r8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_c10.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_c16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_c4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_c8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_i1.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_i16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_i2.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_i4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_i8.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_r10.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_r16.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_r4.c: New file, generated from cshift1a.m4.
      	* generated/cshift1_8_r8.c: New file, generated from cshift1a.m4.
      
      2017-06-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
              PR fortran/52473
      	* gfortran.dg/cshift_2.f90:  New test.
      
      From-SVN: r249620
      Thomas Koenig committed
    • Daily bump. · ef5b7d19
      From-SVN: r249619
      GCC Administrator committed
  5. 23 Jun, 2017 2 commits