Jan Hubicka [Sun, 10 May 2015 21:58:53 +0000 (23:58 +0200)]
ipa-devirt.c (warn_types_mismatch): Do not ICE when warning about mismatch between C and C++ type...
* ipa-devirt.c (warn_types_mismatch): Do not ICE when warning about
mismatch between C and C++ type; compoare correctly ARG_TYPES
for non-prototypes and output correctly parameter index for METHOD_TYPE.
(odr_types_equivalent_p): Fix wording of warning about attributes;
it is OK to match prototype and non-prototype.
From-SVN: r222985
Jan Hubicka [Sun, 10 May 2015 21:03:15 +0000 (23:03 +0200)]
tree.c (free_lang_data_in_type): Free TREE_PURPOSE of TYPE_ARG_TYPES list.
* tree.c (free_lang_data_in_type): Free TREE_PURPOSE of
TYPE_ARG_TYPES list.
(verify_type): Permit non-NULL TREE_PURPOSE in non-LTO builds.
* tree.def (FUNCTION_TYPE): Document TREE_PURPOSE in TYPE_ARG_TYPES
From-SVN: r222984
Mikhail Maltsev [Sun, 10 May 2015 18:13:57 +0000 (18:13 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r222983
Thomas Koenig [Sun, 10 May 2015 18:08:33 +0000 (18:08 +0000)]
re PR fortran/66041 (Matmul ICE)
2015-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/66041
* frontend-passes.c (scalarized_expr): Set correct dimension and
shape for the expression to be passed to lbound. Remove trailing
references after array refrence.
(inline_matmul_assign): Remove gfc_copy_expr from calls
to scalarized_expr().
2015-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/66041
* gfortran.dg/inline_matmul_7.f90: New test.
* gfortran.dg/inline_matmul_8.f90: New test.
* gfortran.dg/inline_matmul_9.f90: New test.
From-SVN: r222982
Jan Hubicka [Sun, 10 May 2015 14:20:09 +0000 (16:20 +0200)]
* tree.h (is_lang_specific): Constify.
From-SVN: r222981
Jan Hubicka [Sun, 10 May 2015 14:13:32 +0000 (16:13 +0200)]
* tree.c (verify_type): Verify TYPE_BINFO and TYPE_VALUES_RAW.
From-SVN: r222980
Mikael Morin [Sun, 10 May 2015 13:56:47 +0000 (13:56 +0000)]
bound simplification refactoring
gcc/fortran/
* simplify.c (simplify_bound_dim): Don't check for emptyness
in the case of cobound simplification. Factor lower/upper
bound differenciation before the actual simplification.
(simplify_bound): Remove assumed shape specific simplification.
Don't give up early for the lbound of an assumed shape.
gcc/testsuite/
* gfortran.dg/bound_simplification_5.f90: New.
From-SVN: r222979
Jason Merrill [Sun, 10 May 2015 00:47:33 +0000 (20:47 -0400)]
c-opts.c (c_common_post_options): Also clear cpp_opts->cpp_warn_cxx11_compat.
* c-opts.c (c_common_post_options): Also clear
cpp_opts->cpp_warn_cxx11_compat.
From-SVN: r222978
Jason Merrill [Sun, 10 May 2015 00:47:12 +0000 (20:47 -0400)]
c-common.h (enum cxx_dialect): Add cxx_unset.
gcc/c-family/
* c-common.h (enum cxx_dialect): Add cxx_unset.
* c-common.c (cxx_dialect): Initialize to cxx_unset.
* c-opts.c (c_common_post_options): Set C++ dialect to C++98 if unset.
gcc/testsuite/
* lib/target-supports.exp (cxx_default): New global.
(check_effective_target_c++11_only)
(check_effective_target_c++14_only)
(check_effective_target_c++98_only)
(check_effective_target_c++1z_only): Check it.
From-SVN: r222977
Jason Merrill [Sun, 10 May 2015 00:46:34 +0000 (20:46 -0400)]
c.opt (std=c++14): Remove Undocumented flag and experimental warning.
* c.opt (std=c++14): Remove Undocumented flag and experimental warning.
(std=gnu++0x): Mark as Undocumented.
(std=gnu++1y): Add deprecated message.
From-SVN: r222976
Jason Merrill [Sun, 10 May 2015 00:46:12 +0000 (20:46 -0400)]
synopsis.cc: Add _GLIBCXX14_CONSTEXPR.
* testsuite/20_util/headers/functional/synopsis.cc: Add
_GLIBCXX14_CONSTEXPR.
* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
From-SVN: r222975
GCC Administrator [Sun, 10 May 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r222974
Marc Glisse [Sat, 9 May 2015 15:40:05 +0000 (17:40 +0200)]
re PR tree-optimization/64454 (optimize (x%5)%5)
2015-05-09 Marc Glisse <marc.glisse@inria.fr>
PR tree-optimization/64454
gcc/
* tree-vrp.c (extract_range_from_binary_expr_1) <TRUNC_MOD_EXPR>:
Rewrite.
gcc/testsuite/
* gcc.dg/tree-ssa/vrp97.c: New file.
* gcc.dg/vect/slp-perm-7.c: Update.
From-SVN: r222970
Aldy Hernandez [Sat, 9 May 2015 13:50:21 +0000 (13:50 +0000)]
re PR bootstrap/66085 (Revision r222934 breaks bootstrap on darwin.)
PR bootstrap/66085
* decl2.c (note_mangling_alias): Declare arguments as unused.
From-SVN: r222969
Mikael Morin [Sat, 9 May 2015 13:36:14 +0000 (13:36 +0000)]
Fix fortran/65894 elemental procedures wrong-code
gcc/fortran/
2015-05-09 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/65894
* trans-array.h (gfc_scalar_elemental_arg_saved_as_reference):
New prototype.
* trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
New function.
(gfc_add_loop_ss_code): Use gfc_scalar_elemental_arg_saved_as_reference
as conditional.
(gfc_walk_elemental_function_args): Set the dummy_arg field.
* trans.h (gfc_ss_info): New subfield dummy_arg.
* trans-expr.c (gfc_conv_procedure_call): Revert the change
of revision 222361.
(gfc_conv_expr): Use gfc_scalar_elemental_arg_saved_as_reference
as conditional.
gcc/testsuite/
2015-05-09 Andre Vehreschild <vehre@gmx.de>
PR fortran/65894
* gfortran.dg/elemental_subroutine_11.f90: New test.
From-SVN: r222968
Eric Botcazou [Sat, 9 May 2015 11:31:21 +0000 (11:31 +0000)]
utils.c (gnat_write_global_declarations): Use type_decl method instead of global_decl for TYPE_DECLs.
* gcc-interface/utils.c (gnat_write_global_declarations): Use type_decl
method instead of global_decl for TYPE_DECLs.
From-SVN: r222967
Jason Merrill [Sat, 9 May 2015 04:50:35 +0000 (00:50 -0400)]
openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
* openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
* testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
_Complex.
From-SVN: r222966
Jason Merrill [Sat, 9 May 2015 04:50:30 +0000 (00:50 -0400)]
std_c++0x_neg.cc: Add -std=c++98.
* testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/1.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/2.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/3.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/4.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/5.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/6.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/7.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/3946.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/assign_neg.cc: Add -std=c++98.
* testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/20_util/headers/functional/synopsis.cc: Add -Wno-deprecated.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust expected errors.
* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise.
* testsuite/ext/array_allocator/1.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/2.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/26875.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/3.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/check_allocate_max_size.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/check_deallocate_null.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/check_delete.cc: Add -Wno-deprecated.
* testsuite/ext/array_allocator/check_new.cc: Add -Wno-deprecated.
* testsuite/ext/profile/mutex_extensions_neg.cc: Prune follow-on error.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc: Add -std=c++98.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: Add -std=c++98.
* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Add -std=c++98.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Add -std=c++98 -fno-show-column.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc: Add -std=c++98.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: Add -std=c++98.
* testsuite/tr1/6_containers/utility/pair.cc: Add -std=c++98.
* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Add -std=c++98.
From-SVN: r222965
Jason Merrill [Sat, 9 May 2015 04:50:23 +0000 (00:50 -0400)]
Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
* src/c++98/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
* src/c++98/Makefile.in: Regenerate.
* src/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
* src/Makefile.in: Regenerate.
From-SVN: r222964
Jason Merrill [Sat, 9 May 2015 04:50:19 +0000 (00:50 -0400)]
memcmp-1.c: Fix narrowing.
gcc/testsuite/
* c-c++-common/asan/memcmp-1.c: Fix narrowing.
* c-c++-common/asan/no-asan-stack.c: Fix narrowing.
* c-c++-common/torture/vector-shift1.c: Fix narrowing.
* c-c++-common/torture/vshuf-2.inc: Fix narrowing.
* g++.dg/torture/pr33572.C: Compile with -std=c++98.
From-SVN: r222963
Jason Merrill [Sat, 9 May 2015 04:50:15 +0000 (00:50 -0400)]
c.opt (Wc++11-compat): Make primary.
gcc/c-family/
* c.opt (Wc++11-compat): Make primary. Rename var warn_cxx11_compat.
* c-opts.c: Adjust.
gcc/cp/
* cp-gimplify.c, parser.c: Adjust.
From-SVN: r222962
Jason Merrill [Sat, 9 May 2015 04:50:10 +0000 (00:50 -0400)]
lex.c (lex_string): Add -Wc++11-compat warning.
libcpp/
* lex.c (lex_string): Add -Wc++11-compat warning.
* include/cpplib.h: Add CPP_W_CXX11_COMPAT.
(struct cpp_options): Add cpp_warn_cxx11_compat.
* init.c (cpp_create_reader): Initialize it.
gcc/c-family/
* c.opt (Wc++0x-compat): Set it.
From-SVN: r222961
Jason Merrill [Sat, 9 May 2015 04:50:05 +0000 (00:50 -0400)]
bitmap.c, [...]: Add space between string literal and macro name.
* bitmap.c, c/c-aux-info.c, cfg.c, cfghooks.c, cgraph.c,
config/aarch64/aarch64.md config/alpha/vms.h, config/darwin.c,
config/darwin.h, config/darwin9.h, config/elfos.h,
config/i386/bsd.h, config/ia64/ia64.c, config/lm32/lm32.h,
config/microblaze/microblaze.h, config/mips/mips.h,
config/mmix/mmix.c, config/msp430/msp430.c, config/nios2/nios2.h,
config/nvptx/nvptx.c, config/nvptx/nvptx.h, config/pa/pa.c,
config/pa/pa.h, config/rs6000/rs6000.c, config/rs6000/sysv4.h,
config/rs6000/xcoff.h, config/rx/rx.h, config/s390/s390.h,
config/sparc/sol2.h, config/sparc/sparc.h, config/visium/visium.h,
cppbuiltin.c, defaults.h, doc/invoke.texi, dwarf2cfi.c,
dwarf2out.c, final.c, gcc.c, gcov-dump.c, gcov.c, ipa-cp.c,
ipa-inline.c, ipa-polymorphic-call.c, ipa-profile.c, ipa-prop.c,
ira-color.c, ira.c, loop-doloop.c, loop-iv.c, mcf.c,
modulo-sched.c, predict.c, profile.c, stor-layout.c, toplev.c,
tree-ssa-reassoc.c, value-prof.c, wide-int-print.cc: Add space
between string literal and macro name.
From-SVN: r222960
Trevor Saunders [Sat, 9 May 2015 04:17:49 +0000 (04:17 +0000)]
redirect_jump* can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* jump.c: Change argument types to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222959
Trevor Saunders [Sat, 9 May 2015 04:17:44 +0000 (04:17 +0000)]
setup_next_usage_insn can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* lra-constraints.c: Change argument type to rtx_insn *.
From-SVN: r222958
Trevor Saunders [Sat, 9 May 2015 04:17:38 +0000 (04:17 +0000)]
rtx_insn * in df-problems.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* df-problems.c: Change argument type to rtx_insn *.
From-SVN: r222957
Trevor Saunders [Sat, 9 May 2015 04:17:33 +0000 (04:17 +0000)]
rtx_insn * in combine.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* combine.c: Change argument type to rtx_insn *.
From-SVN: r222956
Trevor Saunders [Sat, 9 May 2015 04:17:28 +0000 (04:17 +0000)]
find_all_hard_reg_sets can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* rtl.h: Adjust.
* rtlanal.c: Change argument type to rtx_insn *.
From-SVN: r222955
Trevor Saunders [Sat, 9 May 2015 04:17:22 +0000 (04:17 +0000)]
more rtx_insn * in sched-deps.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* sched-deps.c: Change argument types to rtx_insn *.
* sched-int.h: Adjust.
From-SVN: r222954
Trevor Saunders [Sat, 9 May 2015 04:17:17 +0000 (04:17 +0000)]
notice_args_size can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* dwarf2cfi.c: Change argument type to rtx_insn *.
From-SVN: r222953
Trevor Saunders [Sat, 9 May 2015 04:17:12 +0000 (04:17 +0000)]
more rtx_insn * in recog.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* ira.c (decrease_live_ranges_number): Changetype of local
variable to rtx_insn *.
* recog.c: Change argument types to rtx_insn *.
* recog.h: Adjust.
From-SVN: r222952
Trevor Saunders [Sat, 9 May 2015 04:17:05 +0000 (04:17 +0000)]
use rtx_insn * more in reorg.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* reorg.c: Change argument types to rtx_insn *.
From-SVN: r222951
Trevor Saunders [Sat, 9 May 2015 04:17:00 +0000 (04:17 +0000)]
change more argument types to rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* ira-color.c: Change argument types to rtx_insn *.
* lra-eliminations.c: Likewise.
* ira.h: Adjust.
From-SVN: r222950
Trevor Saunders [Sat, 9 May 2015 04:16:54 +0000 (04:16 +0000)]
pass rtx_insn * more in gcse.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* gcse.c: Change argument types to rtx_insn *.
From-SVN: r222949
Trevor Saunders [Sat, 9 May 2015 04:16:49 +0000 (04:16 +0000)]
cse_change_cc0_mode can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* cse.c (cse_change_cc0_mode): Change argument type to rtx_insn *.
From-SVN: r222948
Trevor Saunders [Sat, 9 May 2015 04:16:43 +0000 (04:16 +0000)]
make emit_debug_insn_before take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* emit-rtl.c (emit_debug_insn_before): Change argument type to
rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222947
Trevor Saunders [Sat, 9 May 2015 04:16:38 +0000 (04:16 +0000)]
emit_note_before can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* emit-rtl.c (emit_note_before): Change argument type to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222946
Trevor Saunders [Sat, 9 May 2015 04:16:33 +0000 (04:16 +0000)]
emit_note_after can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* emit-rtl.c (emit_note_after): Change argument type to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222945
Trevor Saunders [Sat, 9 May 2015 04:16:27 +0000 (04:16 +0000)]
prev_cc0_setter can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* emit-rtl.c (prev_cc0_setter): Change argument type to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222944
Trevor Saunders [Sat, 9 May 2015 04:16:19 +0000 (04:16 +0000)]
make noop_move_p take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* rtlanal.c (noop_move_p): Change argument type to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222943
Trevor Saunders [Sat, 9 May 2015 04:16:13 +0000 (04:16 +0000)]
make add_shallow_copy_of_reg_note take an rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* rtlanal.c (add_shallow_copy_of_reg_note): Change argument type
to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222942
Trevor Saunders [Sat, 9 May 2015 04:16:08 +0000 (04:16 +0000)]
make remove_reg_equal_equiv_notes take an rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* rtlanal.c (remove_reg_equal_equiv_notes): Change argument type
to rtx_insn *.
* rtl.h: Likewise.
From-SVN: r222941
Trevor Saunders [Sat, 9 May 2015 04:16:03 +0000 (04:16 +0000)]
can_nonlocal_goto can take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* except.c (can_nonlocal_goto): Change type of argument to
rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222940
Trevor Saunders [Sat, 9 May 2015 04:15:57 +0000 (04:15 +0000)]
computed_jump_p takes a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* rtlanal.c (computed_jump_p): Cange argument type to rtx_insn *.
* rtl.h: Adjust.
From-SVN: r222939
Trevor Saunders [Sat, 9 May 2015 04:15:52 +0000 (04:15 +0000)]
change in_expr_list_p to in_insn_list_p
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* rtlanal.c (in_insn_list_p): Renamed from in_expr_list_p.
* cfgrtl.c (can_delete_label_p): Adjust.
* rtl.h: likewise.
From-SVN: r222938
Trevor Saunders [Sat, 9 May 2015 04:15:46 +0000 (04:15 +0000)]
make stop_search_p take a rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* reorg.c (stop_search_p): Change argument to rtx_insn *.
From-SVN: r222937
Trevor Saunders [Sat, 9 May 2015 04:15:41 +0000 (04:15 +0000)]
make make_reg_eh_region_note and friend take rtx_insn *
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* except.c (make_reg_eh_region_note): Change argument to
rtx_insn *.
(make_reg_eh_region_note_nothrow_nononlocal): Likewise.
* except.h: Adjust.
From-SVN: r222936
Trevor Saunders [Sat, 9 May 2015 04:15:35 +0000 (04:15 +0000)]
use rtx_insn * as the type of a local variable in mode-switching.c
gcc/ChangeLog:
2015-05-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* mode-switching.c (commit_mode_sets): Change type of local
variable from rtx to rtx_insn *.
From-SVN: r222935
Jason Merrill [Sat, 9 May 2015 03:28:52 +0000 (23:28 -0400)]
decl2.c (mangling_aliases): New variable.
* decl2.c (mangling_aliases): New variable.
(note_mangling_alias, generate_mangling_aliases): New.
(cp_write_global_declarations): Call generate_mangling_aliases.
(generate_mangling_alias): Split out from...
* mangle.c (mangle_decl): ...here.
* cp-tree.h: Declare note_mangling_alias.
From-SVN: r222934
Aldy Hernandez [Sat, 9 May 2015 03:28:40 +0000 (03:28 +0000)]
decl2.c (collect_candidates_for_java_method_aliases): Remove.
* decl2.c (collect_candidates_for_java_method_aliases): Remove.
(build_java_method_aliases): Adapt to use create_same_body_alias
instead of assemble_alias. Move variable declarations to
definition and tidy up.
(cp_write_global_declarations): Call build_java_method_aliases
instead of collecting candidates first.
From-SVN: r222933
GCC Administrator [Sat, 9 May 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r222931
Jim Wilson [Fri, 8 May 2015 19:56:13 +0000 (19:56 +0000)]
install.texi (--enable-languages): Add missing jit and lto info.
* doc/install.texi (--enable-languages): Add missing jit and lto info.
Add ^ to grep command.
* doc/match-and-simplify.texi (GIMPLE API): Add missing fourth tree
arg to last gimple_simplify declaration. Add missing gimple_build
declaration for built-in function case with four tree args.
From-SVN: r222923
Joel Brobecker [Fri, 8 May 2015 17:14:26 +0000 (17:14 +0000)]
libiberty/mkstemps.c: Include <time.h> if <sys/time.h> not available.
libiberty/ChangeLog:
* mkstemps.c: #include <time.h> if HAVE_TIME_H is defined
but not HAVE_SYS_TIME_H.
(fixes a build failure on LynxOS-178)
From-SVN: r222918
Gregor Richards [Fri, 8 May 2015 15:16:50 +0000 (15:16 +0000)]
[PATCH 6/13] mips musl support
2015-05-08 Gregor Richards <gregor.richards@uwaterloo.ca>
Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/mips/linux.h (MUSL_DYNAMIC_LINKER32): Define.
(MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERN32): Define.
(GNU_USER_DYNAMIC_LINKERN32): Update.
Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
From-SVN: r222915
Richard Biener [Fri, 8 May 2015 15:13:55 +0000 (15:13 +0000)]
re PR tree-optimization/66036 (strided group loads are not vectorized)
2015-05-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/66036
* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
Handle strided group loads.
(vect_verify_datarefs_alignment): Likewise.
(vect_enhance_data_refs_alignment): Likewise.
(vect_analyze_group_access): Likewise.
(vect_analyze_data_ref_access): Likewise.
(vect_analyze_data_ref_accesses): Likewise.
* tree-vect-stmts.c (vect_model_load_cost): Likewise.
(vectorizable_load): Likewise.
* gcc.dg/vect/slp-41.c: New testcase.
From-SVN: r222914
Mikael Morin [Fri, 8 May 2015 14:53:20 +0000 (14:53 +0000)]
trans-array.c (gfc_walk_elemental_function_args): Don't skip the advance to the next dummy argument when...
gcc/fortran/
* trans-array.c (gfc_walk_elemental_function_args):
Don't skip the advance to the next dummy argument when skipping
absent optional args.
gcc/testsuite/
* gfortran.dg/elemental_optional_args_7.f90: New.
From-SVN: r222913
Segher Boessenkool [Fri, 8 May 2015 14:34:11 +0000 (16:34 +0200)]
rs6000.md: Require operand inequality in one of the peepholes.
* config/rs6000/rs6000.md: Require operand inequality in one
of the peepholes.
From-SVN: r222912
Richard Sandiford [Fri, 8 May 2015 14:04:12 +0000 (14:04 +0000)]
Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
gcc/
2015-05-08 Richard Sandiford <richard.sandiford@arm.com>
Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* config/i386/i386.md (<mode>_ldx, *<mode>_ldx): Remove mode
from (set ...).
* config/rx/rx.md (movdi, movdf): Likewise.
Likewise for define_peephole2s.
Co-Authored-By: Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
From-SVN: r222911
Alan Lawrence [Fri, 8 May 2015 12:00:10 +0000 (12:00 +0000)]
[AArch64] Idiomatic 64x1 comparisons in arm_neon.h
gcc/:
* config/aarch64/arm_neon.h (vceq_s64, vceq_u64, vceqz_s64, vceqz_u64,
vcge_s64, vcge_u64, vcgez_s64, vcgt_s64, vcgt_u64, vcgtz_s64, vcle_s64,
vcle_u64, vclez_s64, vclt_s64, vclt_u64, vcltz_s64, vtst_s64,
vtst_u64): Rewrite using gcc vector extensions.
gcc/testsuite/:
* gcc.target/aarch64/singleton_intrinsics_1.c: Generalize regex to
allow cmlt or sshr.
From-SVN: r222909
Alan Lawrence [Fri, 8 May 2015 11:49:02 +0000 (11:49 +0000)]
[AArch64] Add vcond(u?)didi pattern
* config/aarch64/aarch64-simd.md (aarch64_vcond_internal<mode><mode>,
vcond<mode><mode>, vcondu<mode><mode>): Add DImode variant.
From-SVN: r222908
Alan Lawrence [Fri, 8 May 2015 11:40:33 +0000 (11:40 +0000)]
optabs.c: Make vector_compare_rtx cope with VOID mode constants (e.g. const0_rtx)
* optabs.c (vector_compare_rtx): Handle RTL operands having VOIDmode.
From-SVN: r222907
Szabolcs Nagy [Fri, 8 May 2015 08:30:40 +0000 (08:30 +0000)]
[PATCH 0/13] Add musl support to GCC
2015-05-08 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/glibc-stdint.h (OPTION_MUSL): Define.
(INT_FAST16_TYPE, INT_FAST32_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE):
Change the definition based on OPTION_MUSL for 64 bit targets.
* config/linux.h (OPTION_MUSL): Redefine.
* config/alpha/linux.h (OPTION_MUSL): Redefine.
* config/rs6000/linux.h (OPTION_MUSL): Redefine.
* config/rs6000/linux64.h (OPTION_MUSL): Redefine.
From-SVN: r222905
Gregor Richards [Fri, 8 May 2015 08:25:47 +0000 (08:25 +0000)]
[PATCH 2/13] musl libc config
2015-05-08 Gregor Richards <gregor.richards@uwaterloo.ca>
Szabolcs Nagy <szabolcs.nagy@arm.com>
* config.gcc (LIBC_MUSL): New tm_defines macro.
* config/linux.h (OPTION_MUSL): Define.
(MUSL_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER32,)
(MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32,)
(INCLUDE_DEFAULTS_MUSL_GPP, INCLUDE_DEFAULTS_MUSL_LOCAL,)
(INCLUDE_DEFAULTS_MUSL_PREFIX, INCLUDE_DEFAULTS_MUSL_CROSS,)
(INCLUDE_DEFAULTS_MUSL_TOOL, INCLUDE_DEFAULTS_MUSL_NATIVE): Define.
* config/linux.opt (mmusl): New option.
* doc/invoke.texi (GNU/Linux Options): Document -mmusl.
* configure.ac (gcc_cv_libc_provides_ssp): Add *-*-musl*.
(gcc_cv_target_dl_iterate_phdr): Add *-linux-musl*.
* configure: Regenerate.
Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
From-SVN: r222904
H.J. Lu [Fri, 8 May 2015 07:33:42 +0000 (07:33 +0000)]
PR target/48904 x86_64-knetbsd-gnu missing defs
2015-05-08 H.J. Lu <hongjiu.lu@intel.com>
Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
PR target/48904
* config.gcc (x86_64-*-knetbsd*-gnu): Add i386/knetbsd-gnu64.h.
* config/i386/knetbsd-gnu64.h: New file.
Co-Authored-By: Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
From-SVN: r222903
Jason Merrill [Fri, 8 May 2015 04:42:06 +0000 (00:42 -0400)]
re PR c++/59012 (alignas does not support parameter pack expansions)
PR c++/59012
* parser.c (cp_parser_std_attribute_list): Handle attribute expansion.
(cp_parser_std_attribute_spec): Handle alignas pack expansion.
* decl2.c (is_late_template_attribute): An attribute exp is dependent.
* pt.c (make_pack_expansion): Allow TREE_LIST for attribute expansion.
(apply_late_template_attributes): Handle attribute pack expansion.
From-SVN: r222902
GCC Administrator [Fri, 8 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r222901
Marek Polacek [Thu, 7 May 2015 22:14:27 +0000 (22:14 +0000)]
re PR c/64918 (invalid (?) warning when initializing structure)
PR c/64918
* c.opt (Woverride-init-side-effects): New option.
* c-typeck.c (add_pending_init): Use OPT_Woverride_init_side_effects.
(output_init_element): Likewise.
* doc/invoke.texi: Document -Woverride-init-side-effects.
* gcc.dg/Woverride-init-side-effects-1.c: New test.
* gcc.dg/Woverride-init-side-effects-2.c: New test.
From-SVN: r222894
Marek Polacek [Thu, 7 May 2015 19:36:31 +0000 (19:36 +0000)]
re PR c/65179 (Introduce new C warning: -Wshift-negative-value)
PR c/65179
* c-common.c (c_fully_fold_internal): Warn when left shifting a
negative value.
* c.opt (Wshift-negative-value): New option.
* c-opts.c (c_common_post_options): Set warn_shift_negative_value
when -Wextra and C99/C++11 mode.
* c-typeck.c (build_binary_op): Warn when left shifting a negative
value.
* typeck.c (cp_build_binary_op): Warn when left shifting a negative
value.
* doc/invoke.texi: Document -Wshift-negative-value.
* c-c++-common/Wshift-negative-value-1.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-2.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-3.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-4.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-5.c: New test.
* testsuite/c-c++-common/Wshift-negative-value-6.c: New test.
* testsuite/gcc.dg/c90-left-shift-1.c: New test.
* testsuite/gcc.dg/c99-const-expr-7.c: Add dg-error.
* testsuite/gcc.dg/c99-left-shift-1.c: New test.
From-SVN: r222889
Aditya Kumar [Thu, 7 May 2015 17:57:11 +0000 (17:57 +0000)]
gcov-tool.c (do_merge): Refactore to remove int ret.
* gcov-tool.c (do_merge): Refactore to remove int ret.
* ipa-icf.c (sem_item::hash_referenced_symbol_properties): Change
!type == FUNC to type != FUNC.
* reload.h (struct target_reload): Changee to type of
x_spill_indirect_levels from bool to unsigned char.
From-SVN: r222884
Richard Sandiford [Thu, 7 May 2015 16:58:46 +0000 (16:58 +0000)]
rtl.h (always_void_p): New function.
gcc/
* rtl.h (always_void_p): New function.
* gengenrtl.c (always_void_p): Likewise.
(genmacro): Don't add a mode parameter to gen_rtx_foo if rtxes
with code foo are always VOIDmode.
* genemit.c (gen_exp): Update gen_rtx_foo calls accordingly.
* builtins.c, caller-save.c, calls.c, cfgexpand.c, combine.c,
compare-elim.c, config/aarch64/aarch64.c,
config/aarch64/aarch64.md, config/alpha/alpha.c,
config/alpha/alpha.md, config/arc/arc.c, config/arc/arc.md,
config/arm/arm-fixed.md, config/arm/arm.c, config/arm/arm.md,
config/arm/ldrdstrd.md, config/arm/thumb2.md, config/arm/vfp.md,
config/avr/avr.c, config/bfin/bfin.c, config/c6x/c6x.c,
config/c6x/c6x.md, config/cr16/cr16.c, config/cris/cris.c,
config/cris/cris.md, config/darwin.c, config/epiphany/epiphany.c,
config/epiphany/epiphany.md, config/fr30/fr30.c, config/frv/frv.c,
config/frv/frv.md, config/h8300/h8300.c, config/i386/i386.c,
config/i386/i386.md, config/i386/sse.md, config/ia64/ia64.c,
config/ia64/vect.md, config/iq2000/iq2000.c,
config/iq2000/iq2000.md, config/lm32/lm32.c, config/lm32/lm32.md,
config/m32c/m32c.c, config/m32r/m32r.c, config/m68k/m68k.c,
config/m68k/m68k.md, config/mcore/mcore.c, config/mcore/mcore.md,
config/mep/mep.c, config/microblaze/microblaze.c,
config/mips/mips.c, config/mips/mips.md, config/mmix/mmix.c,
config/mn10300/mn10300.c, config/msp430/msp430.c,
config/nds32/nds32-memory-manipulation.c, config/nds32/nds32.c,
config/nds32/nds32.md, config/nios2/nios2.c, config/nvptx/nvptx.c,
config/pa/pa.c, config/pa/pa.md, config/rl78/rl78.c,
config/rs6000/altivec.md, config/rs6000/rs6000.c,
config/rs6000/rs6000.md, config/rs6000/vector.md,
config/rs6000/vsx.md, config/rx/rx.c, config/rx/rx.md,
config/s390/s390.c, config/s390/s390.md, config/sh/sh.c,
config/sh/sh.md, config/sh/sh_treg_combine.cc,
config/sparc/sparc.c, config/sparc/sparc.md, config/spu/spu.c,
config/spu/spu.md, config/stormy16/stormy16.c,
config/tilegx/tilegx.c, config/tilegx/tilegx.md,
config/tilepro/tilepro.c, config/tilepro/tilepro.md,
config/v850/v850.c, config/v850/v850.md, config/vax/vax.c,
config/visium/visium.c, config/xtensa/xtensa.c, cprop.c, dse.c,
expr.c, gcse.c, ifcvt.c, ira.c, jump.c, lower-subreg.c,
lra-constraints.c, lra-eliminations.c, lra.c, postreload.c, ree.c,
reg-stack.c, reload.c, reload1.c, reorg.c, sel-sched.c,
var-tracking.c: Update calls accordingly.
From-SVN: r222883
Jason Merrill [Thu, 7 May 2015 16:46:49 +0000 (12:46 -0400)]
DR 1467 PR c++/51747
DR 1467
PR c++/51747
* typeck2.c (digest_init_r): Fix single element list.
From-SVN: r222881
Segher Boessenkool [Thu, 7 May 2015 15:51:01 +0000 (17:51 +0200)]
re PR middle-end/192 (String literals don't obey -fdata-sections)
PR middle-end/192
PR middle-end/54303
* varasm.c (function_mergeable_rodata_prefix): New function.
(mergeable_string_section): Use it.
(mergeable_constant_section): Use it.
gcc/testsuite/
* gcc.dg/fdata-sections-2.c: New file.
From-SVN: r222880
Marek Polacek [Thu, 7 May 2015 14:44:26 +0000 (14:44 +0000)]
re PR testsuite/66046 (UBSan output pattern tests fail on target ARM board.)
PR testsuite/66046
* c-c++-common/ubsan/align-6.c: Don't match trailing newlines in the
last dg-output.
* c-c++-common/ubsan/align-7.c: Likewise.
* c-c++-common/ubsan/bounds-8.c: Likewise.
* c-c++-common/ubsan/float-cast-overflow-9.c: Likewise.
* c-c++-common/ubsan/load-bool-enum.c: Likewise.
* c-c++-common/ubsan/null-1.c: Likewise.
* c-c++-common/ubsan/null-10.c: Likewise.
* c-c++-common/ubsan/null-11.c: Likewise.
* c-c++-common/ubsan/null-2.c: Likewise.
* c-c++-common/ubsan/null-3.c: Likewise.
* c-c++-common/ubsan/null-4.c: Likewise.
* c-c++-common/ubsan/null-5.c: Likewise.
* c-c++-common/ubsan/null-6.c: Likewise.
* c-c++-common/ubsan/null-7.c: Likewise.
* c-c++-common/ubsan/null-8.c: Likewise.
* c-c++-common/ubsan/null-9.c: Likewise.
* c-c++-common/ubsan/object-size-1.c: Likewise.
* c-c++-common/ubsan/object-size-10.c: Likewise.
* c-c++-common/ubsan/object-size-4.c: Likewise.
* c-c++-common/ubsan/object-size-5.c: Likewise.
* c-c++-common/ubsan/object-size-7.c: Likewise.
* c-c++-common/ubsan/object-size-8.c: Likewise.
* c-c++-common/ubsan/object-size-9.c: Likewise.
* c-c++-common/ubsan/overflow-add-2.c: Likewise.
* c-c++-common/ubsan/overflow-int128.c: Likewise.
* c-c++-common/ubsan/overflow-mul-2.c: Likewise.
* c-c++-common/ubsan/overflow-mul-4.c: Likewise.
* c-c++-common/ubsan/overflow-negate-1.c: Likewise.
* c-c++-common/ubsan/overflow-negate-3.c: Likewise.
* c-c++-common/ubsan/overflow-sub-2.c: Likewise.
* c-c++-common/ubsan/overflow-sub-4.c: Likewise.
* c-c++-common/ubsan/pr59333.c: Likewise.
* c-c++-common/ubsan/pr59667.c: Likewise.
* c-c++-common/ubsan/pr60613-2.c: Likewise.
* c-c++-common/ubsan/pr60636.c: Likewise.
* c-c++-common/ubsan/pr63802.c: Likewise.
* c-c++-common/ubsan/recovery-1.c: Likewise.
* c-c++-common/ubsan/recovery-3.c: Likewise.
* c-c++-common/ubsan/shift-1.c: Likewise.
* c-c++-common/ubsan/shift-2.c: Likewise.
* c-c++-common/ubsan/shift-4.c: Likewise.
* c-c++-common/ubsan/shift-7.c: Likewise.
* c-c++-common/ubsan/undefined-2.c: Likewise.
* c-c++-common/ubsan/vla-1.c: Likewise.
* g++.dg/ubsan/null-1.C: Likewise.
* g++.dg/ubsan/null-3.C: Likewise.
* g++.dg/ubsan/null-4.C: Likewise.
* g++.dg/ubsan/vptr-8.C: Likewise.
* g++.dg/ubsan/vptr-9.C: Likewise.
* gcc.dg/ubsan/bounds-2.c: Likewise.
* gcc.dg/ubsan/object-size-9.c: Likewise.
From-SVN: r222878
Jeff Law [Thu, 7 May 2015 13:18:07 +0000 (07:18 -0600)]
match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New simplifier to narrow arithmetic.
* match.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New
simplifier to narrow arithmetic.
* generic-match-head.c: (types_match, single_use): New functions.
* gimple-match-head.c: (types_match, single_use): New functions.
* gcc.dg/tree-ssa/shorten-1.c: New test.
From-SVN: r222877
Venkataramanan Kumar [Thu, 7 May 2015 10:47:54 +0000 (10:47 +0000)]
combine.c (make_compound_operation): Remove checks for PLUS/MINUS rtx type.
2015-05-07 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
* combine.c (make_compound_operation): Remove checks for PLUS/MINUS
rtx type.
From-SVN: r222874
Richard Biener [Thu, 7 May 2015 09:52:38 +0000 (09:52 +0000)]
re PR tree-optimization/66002 (paq8p benchmark 50% slower than clang on sandybridge)
2015-05-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/66002
* passes.def: Schedule another pass_merge_phi after ifcombine, right
before phiopt.
* gcc.dg/vect/vect-125.c: New testcase.
From-SVN: r222873
Marek Polacek [Thu, 7 May 2015 08:08:57 +0000 (08:08 +0000)]
c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting flexible member array-like members if...
* c-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting
flexible member array-like members if SANITIZE_BOUNDS_STRICT.
* doc/invoke.texi: Document -fsanitize=bounds-strict.
* flag-types.h (enum sanitize_code): Add SANITIZE_BOUNDS_STRICT, or it
into SANITIZE_NONDEFAULT.
* opts.c (common_handle_option): Handle -fsanitize=bounds-strict.
* c-c++-common/ubsan/bounds-10.c: New test.
From-SVN: r222871
Uros Bizjak [Thu, 7 May 2015 07:34:29 +0000 (09:34 +0200)]
re PR target/66015 (align directives not propagated after __attribute__ ((__optimize__ ("O2"))))
PR target/66015
* config/alpha/alpha.c (alpha_override_options_after_change): New.
(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New.
(alpha_override_options): Move align_loops, align_jumps and
align_functions handling into alpha_override_options_after_change.
From-SVN: r222870
GCC Administrator [Thu, 7 May 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r222869
Ian Lance Taylor [Wed, 6 May 2015 22:59:54 +0000 (22:59 +0000)]
compiler: Analyze escape information of interface parameters.
When analyzing function calls with interface parameters, all arguments
related to an interface parameter were assumed to escape via the
function arguments. Now, if an argument is related to a non-escaping
parameter with an interface type, the argument may be stack-allocated.
From-SVN: r222865
Thomas Koenig [Wed, 6 May 2015 20:23:48 +0000 (20:23 +0000)]
re PR fortran/37131 (inline matmul for small matrix sizes)
2015-05-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37131
* gfortran.h (gfc_isym_id): Add GFC_ISYM_FE_RUNTIME_ERROR.
(gfc_intrinsic_sym): Add vararg.
* intrinsic.h (gfc_check_fe_runtime_error): Add prototype.
(gfc_resolve_re_runtime_error): Likewise.
Add prototype for gfc_is_reallocatable_lhs.
* trans-array.h (gfc_is_reallocatable_lhs): Remove prototype.
* check.c (gfc_check_fe_runtime_error): New function.
* intrinsic.c (add_sym_1p): New function.
(make_vararg): New function.
(add_subroutines): Add fe_runtime_error.
(gfc_intrinsic_sub_interface): Skip sorting for variable number
of arguments.
* iresolve.c (gfc_resolve_fe_runtime_error): New function.
* lang.opt (inline-matmul-limit): New option.
(gfc_post_options): If no inline matmul limit has been set and
BLAS is called externally, use the BLAS limit.
* frontend-passes.c: Include intrinsic.h.
(var_num): New global counter for naming temporary variablbles.
(matrix_case): Enum for differentiating the different matmul
cases.
(realloc_string_callback): Add "trim" to the variable name.
(create_var): Add optional argument vname as part of the name.
Use var_num. Set dimension of result correctly. Split off block
creation into
(insert_block): New function.
(cfe_expr_0): Use "fcn" as part of temporary variable name.
(optimize_namesapce): Also set gfc_current_ns. Call
inline_matmul_assign.
(combine_array_constructor): Use "constr" as part of
temporary name.
(get_array_inq_function): New function.
(build_logical_expr): New function.
(get_operand): new function.
(inline_limit_check): New function.
(runtime_error_ne): New function.
(matmul_lhs_realloc): New function.
(is_functino_or_op): New function.
(has_function_or_op): New function.
(freeze_expr): New function.
(freeze_references): New function.
(convert_to_index_kind): New function.
(create_do_loop): New function.
(get_size_m1): New function.
(scalarized_expr): New function.
(inline_matmul_assign): New function.
* simplify.c (simplify_bound): Simplify the case of the
lower bound of an assumed-shape argument.
2015-05-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37131
* gfortran.dg/dependency_26.f90: Add option to suppress inlining
matmul.
* gfortran.dg/function_optimize_1.f90: Likewise.
* gfortran.dg/function_optimize_2.f90: Likewise.
* gfortran.dg/function_optimize_5.f90: Likewise.
* gfortran.dg/function_optimize_7.f90: Likewise.
* gfortran.dg/inline_matmul_1.f90: New test.
* gfortran.dg/inline_matmul_2.f90: New test.
* gfortran.dg/inline_matmul_3.f90: New test.
* gfortran.dg/inline_matmul_4.f90: New test.
* gfortran.dg/inline_matmul_5.f90: New test.
* gfortran.dg/inline_matmul_6.f90: New test.
From-SVN: r222864
David Malcolm [Wed, 6 May 2015 20:13:50 +0000 (20:13 +0000)]
jit: add test-benchmark.c
gcc/testsuite/ChangeLog:
* jit.dg/harness.h (set_options): Wrap with
#ifndef TEST_ESCHEWS_SET_OPTIONS.
* jit.dg/jit.exp (is_testcase_meant_to_generate_a_reproducer):
Special-case test-benchmark.c as a negative.
* jit.dg/test-benchmark.c: New file.
From-SVN: r222863
Julian Brown [Wed, 6 May 2015 19:10:14 +0000 (19:10 +0000)]
oacc-init.c (acc_device_lock): Add explanatory comment.
* oacc-init.c (acc_device_lock): Add explanatory comment.
(resolve_device): Add comment about locking requirement.
(acc_init_1, acc_shutdown_1): Likewise. Add locking around
gomp_init_device and gomp_fini_device calls.
(acc_get_num_devices, acc_set_device_type, acc_get_device_type)
(acc_get_device_num, acc_set_device_num): Add locking around
resolve_device and gomp_init_device calls.
From-SVN: r222862
Julian Brown [Wed, 6 May 2015 16:45:49 +0000 (16:45 +0000)]
oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for goacc_thread_lock on error paths.
* oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
goacc_thread_lock on error paths.
* oacc-mem.c (lookup_host): Remove locking from function. Note
locking requirement for caller in function comment.
(lookup_dev): Likewise.
(acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
(acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
(update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
Add locking.
From-SVN: r222860
Sandra Loosemore [Wed, 6 May 2015 16:01:05 +0000 (12:01 -0400)]
unknown-elf.h (STARTFILE_SPEC): Add conditional linking of crtfastmath.o.
2015-05-06 Sandra Loosemore <sandra@codesourcery.com>
Chris Jones <chrisj@nvidia.com>
Joshua Conner <jconner@nvidia.com>
gcc/
* config/arm/unknown-elf.h (STARTFILE_SPEC): Add conditional
linking of crtfastmath.o.
* config/arm/linux-eabi.h (STARTFILE_SPEC): Likewise.
libgcc/
* config.host (arm*-*-linux*): Add support for crtfastmath.o.
(arm*-*-uclinux*): Likewise.
(arm*-*-eabi* | arm*-*-rtems*): Likewise.
* config/arm/crtfastmath.c: New file.
Co-Authored-By: Chris Jones <chrisj@nvidia.com>
Co-Authored-By: Joshua Conner <jconner@nvidia.com>
From-SVN: r222857
Segher Boessenkool [Wed, 6 May 2015 15:55:10 +0000 (17:55 +0200)]
rs6000.md (cstore<mode>4_signed_imm): New expander.
* config/rs6000/rs6000.md (cstore<mode>4_signed_imm): New expander.
(cstore<mode>4_unsigned_imm): New expander.
(cstore<mode>4): Remove empty constraint strings. Use the new
expanders.
From-SVN: r222855
Yvan Roux [Wed, 6 May 2015 14:23:57 +0000 (14:23 +0000)]
re PR target/64208 ([iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90))
gcc/
2015-05-06 Yvan Roux <yvan.roux@linaro.org>
PR target/64208
* config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Cleanup redundant
alternatives.
gcc/testsuite/
2015-05-06 Yvan Roux <yvan.roux@linaro.org>
PR target/64208
* gcc.target/arm/pr64208.c: New test.
From-SVN: r222853
Szabolcs Nagy [Wed, 6 May 2015 13:23:01 +0000 (13:23 +0000)]
[AArch64] Fix geniterators.sh to use standard BRE syntax in sed
On behalf of Szabolcs Nagy.
2015-05-06 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/aarch64/geniterators.sh: Use standard BRE in sed.
From-SVN: r222852
Alan Modra [Wed, 6 May 2015 13:12:19 +0000 (22:42 +0930)]
re PR target/66033 (rs6000 nops removed by rtl_dce)
PR target/66033
* config/rs6000/rs6000.md (nop): Use an unspec pattern.
(UNSPEC_NOP): Define.
(reload_vsx_from_gpr<mode>): Add missing DONE.
(reload_gpr_from_vsx<mode>): Likewise.
* config/rs6000/vsx.md (vsx_mul_v2di): Likewise.
(vsx_div_v2di, vsx_udiv_v2di): Likewise.
From-SVN: r222851
Alan Modra [Wed, 6 May 2015 13:10:59 +0000 (22:40 +0930)]
re PR target/66020 (FAIL: gcc.target/powerpc/ppc64-abi-2.c execution test)
PR target/66020
* gcc.target/powerpc/ppc64-abi-2.c (my_mcount): Rewrite.
(gparms): Make volatile.
From-SVN: r222850
Richard Biener [Wed, 6 May 2015 12:21:01 +0000 (12:21 +0000)]
re PR fortran/62283 (basic-block vectorization fails)
2015-05-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/62283
* gcc.dg/vect/bb-slp-32.c: Remove XFAIL.
From-SVN: r222849
Christian Bruel [Wed, 6 May 2015 10:54:40 +0000 (12:54 +0200)]
re PR target/66015 (align directives not propagated after __attribute__ ((__optimize__ ("O2"))))
2015-05-06 Christian Bruel <christian.bruel@st.com>
PR target/66015
* config/aarch64/aarch64.c (aarch64_override_options): Move align_loops,
align_jumps, align_functions into aarch64_override_options_after_change.
From-SVN: r222847
Richard Biener [Wed, 6 May 2015 10:49:35 +0000 (10:49 +0000)]
tree-vect-slp.c (vect_supported_load_permutation_p): Use vect_transform_slp_perm_load to check if...
2015-05-06 Richard Biener <rguenther@suse.de>
* tree-vect-slp.c (vect_supported_load_permutation_p): Use
vect_transform_slp_perm_load to check if we support a permutation
for basic-block vectorization.
* gcc.dg/vect/bb-slp-34.c: New testcase.
From-SVN: r222846
Nick Clifton [Wed, 6 May 2015 10:19:07 +0000 (10:19 +0000)]
rl78.c (need_to_save): Save register 22 if it is used, even if it is not being used as a frame pointer.
* config/rl78/rl78.c (need_to_save): Save register 22 if it is
used, even if it is not being used as a frame pointer.
From-SVN: r222845
Richard Biener [Wed, 6 May 2015 06:47:38 +0000 (06:47 +0000)]
re PR fortran/62283 (basic-block vectorization fails)
2015-05-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/62283
* gcc.dg/vect/bb-slp-14.c: Adjust.
From-SVN: r222843
Jason Merrill [Wed, 6 May 2015 02:25:01 +0000 (22:25 -0400)]
c.opt (Wterminate): New.
gcc/c-family/
* c.opt (Wterminate): New.
gcc/cp/
* cp-gimplify.c (cp_genericize_r): Track TRY_BLOCK and
MUST_NOT_THROW_EXPR, warn about a THROW_EXPR directly within a
MUST_NOT_THROW_EXPR.
(cp_genericize_data): Add try_block field.
(cp_genericize_tree): Initialize it.
* except.c (expand_end_catch_block): Set TREE_NO_WARNING on
implicit rethrow.
From-SVN: r222842
Jason Merrill [Wed, 6 May 2015 02:24:49 +0000 (22:24 -0400)]
Fix obj-c++.dg/encode-10.mm with cxx_dialect == cxx11.
* constexpr.c (potential_constant_expression_1) [AT_ENCODE_EXPR]:
Return false.
From-SVN: r222841
Jason Merrill [Wed, 6 May 2015 02:24:44 +0000 (22:24 -0400)]
Fix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
Fix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
* semantics.c (finish_call_expr): Check complain.
From-SVN: r222840
Jason Merrill [Wed, 6 May 2015 02:24:38 +0000 (22:24 -0400)]
Fix gdb.cp/anon-struct.cc with -std=c++11.
gcc/
* dwarf2out.c (gen_member_die): Don't emit anything for an
anonymous class constructor.
gcc/cp/
* decl2.c (reset_type_linkage_2): Update the DECL_NAME of a
maybe-in-charge constructor.
From-SVN: r222839
Jason Merrill [Wed, 6 May 2015 02:07:40 +0000 (22:07 -0400)]
decl.c (start_decl): Don't push the plain VAR_DECL for a variable template.
* decl.c (start_decl): Don't push the plain VAR_DECL for a
variable template.
From-SVN: r222837