gcc.git
9 years agore PR target/65780 (Uninitialized common handling in executables)
Jakub Jelinek [Mon, 11 May 2015 07:09:04 +0000 (09:09 +0200)]
re PR target/65780 (Uninitialized common handling in executables)

PR target/65780
* config/s390/linux.h (TARGET_BINDS_LOCAL_P): Define to
default_binds_local_p_2.
* config/arm/linux-elf.h (TARGET_BINDS_LOCAL_P): Likewise.
* config/aarch64/aarch64-linux.h (TARGET_BINDS_LOCAL_P): Likewise.

From-SVN: r222992

9 years ago* tree.c (verify_type_variant): Check TYPE_VALUES_RAW and TYPE_PRECISION
Jan Hubicka [Mon, 11 May 2015 02:51:51 +0000 (04:51 +0200)]
* tree.c (verify_type_variant): Check TYPE_VALUES_RAW and TYPE_PRECISION

From-SVN: r222991

9 years agoPatch by Richard Biener
Jan Hubicka [Mon, 11 May 2015 02:48:49 +0000 (04:48 +0200)]
Patch by Richard Biener

Patch by Richard Biener
* coverage.c (coverage_obj_init): Delay building of type variant
until the type is finished.

From-SVN: r222990

9 years agoDaily bump.
GCC Administrator [Mon, 11 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222989

9 years agoipa-devirt.c (warn_types_mismatch): Do not ICE when warning about mismatch between...
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

9 years agotree.c (free_lang_data_in_type): Free TREE_PURPOSE of TYPE_ARG_TYPES list.
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

9 years ago* MAINTAINERS (Write After Approval): Add myself.
Mikhail Maltsev [Sun, 10 May 2015 18:13:57 +0000 (18:13 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r222983

9 years agore PR fortran/66041 (Matmul ICE)
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

9 years ago* tree.h (is_lang_specific): Constify.
Jan Hubicka [Sun, 10 May 2015 14:20:09 +0000 (16:20 +0200)]
* tree.h (is_lang_specific): Constify.

From-SVN: r222981

9 years ago* tree.c (verify_type): Verify TYPE_BINFO and TYPE_VALUES_RAW.
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

9 years agobound simplification refactoring
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

9 years agoc-opts.c (c_common_post_options): Also clear cpp_opts->cpp_warn_cxx11_compat.
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

9 years agoc-common.h (enum cxx_dialect): Add cxx_unset.
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

9 years agoc.opt (std=c++14): Remove Undocumented flag and experimental warning.
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

9 years agosynopsis.cc: Add _GLIBCXX14_CONSTEXPR.
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

9 years agoDaily bump.
GCC Administrator [Sun, 10 May 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222974

9 years agore PR tree-optimization/64454 (optimize (x%5)%5)
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

9 years agore PR bootstrap/66085 (Revision r222934 breaks bootstrap on darwin.)
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

9 years agoFix fortran/65894 elemental procedures wrong-code
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

9 years agoutils.c (gnat_write_global_declarations): Use type_decl method instead of global_decl...
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

9 years agoopenacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
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

9 years agostd_c++0x_neg.cc: Add -std=c++98.
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

9 years agoMakefile.am (AM_CXXFLAGS): Add -std=gnu++98.
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

9 years agomemcmp-1.c: Fix narrowing.
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

9 years agoc.opt (Wc++11-compat): Make primary.
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

9 years agolex.c (lex_string): Add -Wc++11-compat warning.
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

9 years agobitmap.c, [...]: Add space between string literal and macro name.
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

9 years agoredirect_jump* can take a rtx_insn *
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

9 years agosetup_next_usage_insn can take a rtx_insn *
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

9 years agortx_insn * in df-problems.c
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

9 years agortx_insn * in combine.c
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

9 years agofind_all_hard_reg_sets can take a rtx_insn *
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

9 years agomore rtx_insn * in sched-deps.c
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

9 years agonotice_args_size can take a rtx_insn *
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

9 years agomore rtx_insn * in recog.c
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

9 years agouse rtx_insn * more in reorg.c
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

9 years agochange more argument types to rtx_insn *
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

9 years agopass rtx_insn * more in gcse.c
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

9 years agocse_change_cc0_mode can take a rtx_insn *
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

9 years agomake emit_debug_insn_before take a rtx_insn *
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

9 years agoemit_note_before can take a rtx_insn *
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

9 years agoemit_note_after can take a rtx_insn *
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

9 years agoprev_cc0_setter can take a rtx_insn *
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

9 years agomake noop_move_p take a rtx_insn *
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

9 years agomake add_shallow_copy_of_reg_note take an rtx_insn *
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

9 years agomake remove_reg_equal_equiv_notes take an rtx_insn *
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

9 years agocan_nonlocal_goto can take a rtx_insn *
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

9 years agocomputed_jump_p takes a rtx_insn *
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

9 years agochange in_expr_list_p to in_insn_list_p
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

9 years agomake stop_search_p take a rtx_insn *
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

9 years agomake make_reg_eh_region_note and friend take rtx_insn *
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

9 years agouse rtx_insn * as the type of a local variable in mode-switching.c
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

9 years agodecl2.c (mangling_aliases): New variable.
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

9 years agodecl2.c (collect_candidates_for_java_method_aliases): Remove.
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

9 years agoDaily bump.
GCC Administrator [Sat, 9 May 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222931

9 years agoinstall.texi (--enable-languages): Add missing jit and lto info.
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

9 years agolibiberty/mkstemps.c: Include <time.h> if <sys/time.h> not available.
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

9 years ago[PATCH 6/13] mips musl support
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

9 years agore PR tree-optimization/66036 (strided group loads are not vectorized)
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

9 years agotrans-array.c (gfc_walk_elemental_function_args): Don't skip the advance to the next...
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

9 years agors6000.md: Require operand inequality in one of the peepholes.
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

9 years agoFranz Sirl <Franz.Sirl-kernel@lauterbach.com>
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

9 years ago[AArch64] Idiomatic 64x1 comparisons in arm_neon.h
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

9 years ago[AArch64] Add vcond(u?)didi pattern
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

9 years agooptabs.c: Make vector_compare_rtx cope with VOID mode constants (e.g. const0_rtx)
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

9 years ago[PATCH 0/13] Add musl support to GCC
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

9 years ago[PATCH 2/13] musl libc config
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

9 years agoPR target/48904 x86_64-knetbsd-gnu missing defs
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

9 years agore PR c++/59012 (alignas does not support parameter pack expansions)
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

9 years agoDaily bump.
GCC Administrator [Fri, 8 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222901

9 years agore PR c/64918 (invalid (?) warning when initializing structure)
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

9 years agore PR c/65179 (Introduce new C warning: -Wshift-negative-value)
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

9 years agogcov-tool.c (do_merge): Refactore to remove int ret.
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

9 years agortl.h (always_void_p): New function.
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

9 years agoDR 1467 PR c++/51747
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

9 years agore PR middle-end/192 (String literals don't obey -fdata-sections)
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

9 years agore PR testsuite/66046 (UBSan output pattern tests fail on target ARM board.)
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

9 years agomatch.pd (bit_and (plus/minus (convert @0) (convert @1) mask): New simplifier to...
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

9 years agocombine.c (make_compound_operation): Remove checks for PLUS/MINUS rtx type.
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

9 years agore PR tree-optimization/66002 (paq8p benchmark 50% slower than clang on sandybridge)
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

9 years agoc-ubsan.c (ubsan_instrument_bounds): Don't skip instrumenting flexible member array...
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

9 years agore PR target/66015 (align directives not propagated after __attribute__ ((__optimize_...
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

9 years agoDaily bump.
GCC Administrator [Thu, 7 May 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222869

9 years agocompiler: Analyze escape information of interface parameters.
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

9 years agore PR fortran/37131 (inline matmul for small matrix sizes)
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

9 years agojit: add test-benchmark.c
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

9 years agooacc-init.c (acc_device_lock): Add explanatory comment.
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

9 years agooacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for goacc_thread_lock on error...
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

9 years agounknown-elf.h (STARTFILE_SPEC): Add conditional linking of crtfastmath.o.
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

9 years agors6000.md (cstore<mode>4_signed_imm): New expander.
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

9 years agore PR target/64208 ([iwmmxt] ICE: internal compiler error: Max. number of generated...
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

9 years ago[AArch64] Fix geniterators.sh to use standard BRE syntax in sed
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

9 years agore PR target/66033 (rs6000 nops removed by rtl_dce)
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

9 years agore PR target/66020 (FAIL: gcc.target/powerpc/ppc64-abi-2.c execution test)
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

9 years agore PR fortran/62283 (basic-block vectorization fails)
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

9 years agore PR target/66015 (align directives not propagated after __attribute__ ((__optimize_...
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

9 years agotree-vect-slp.c (vect_supported_load_permutation_p): Use vect_transform_slp_perm_load...
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

9 years agorl78.c (need_to_save): Save register 22 if it is used, even if it is not being used...
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

9 years agore PR fortran/62283 (basic-block vectorization fails)
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

9 years agoc.opt (Wterminate): New.
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