gcc.git
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

9 years agoFix obj-c++.dg/encode-10.mm with cxx_dialect == cxx11.
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

9 years agoFix g++.dg/torture/Wsizeof-pointer-memaccess2.C with -std=c++11
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

9 years agoFix gdb.cp/anon-struct.cc with -std=c++11.
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

9 years agodecl.c (start_decl): Don't push the plain VAR_DECL for a variable template.
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

9 years agoDR 1518 DR 1630 PR c++/54835 PR c++/60417
Jason Merrill [Wed, 6 May 2015 02:07:34 +0000 (22:07 -0400)]
DR 1518 DR 1630 PR c++/54835 PR c++/60417

DR 1518
DR 1630
PR c++/54835
PR c++/60417
* call.c (convert_like_real): Check value-initialization before
explicit.
* typeck2.c (process_init_constructor_record): Don't set
CONSTRUCTOR_IS_DIRECT_INIT.
(process_init_constructor_array): Likewise.
* init.c (build_vec_init): Likewise.

From-SVN: r222836

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

From-SVN: r222834

9 years ago* sv.po: Update.
Joseph Myers [Tue, 5 May 2015 21:30:18 +0000 (22:30 +0100)]
* sv.po: Update.

From-SVN: r222829

9 years agocompiler: Don't make temporaries for constant string concatentation.
Ian Lance Taylor [Tue, 5 May 2015 20:56:59 +0000 (20:56 +0000)]
compiler: Don't make temporaries for constant string concatentation.

Fixes golang/go#10642.

From-SVN: r222828

9 years agoFix indentation issues seen by -Wmisleading-indentation
David Malcolm [Tue, 5 May 2015 19:41:11 +0000 (19:41 +0000)]
Fix indentation issues seen by -Wmisleading-indentation

gcc/ChangeLog:
* auto-profile.c (afdo_find_equiv_class): Fix indentation so
that it reflects the block structure.
(afdo_propagate_edge): Likewise.
(afdo_calculate_branch_prob): Likewise.
(afdo_annotate_cfg): Likewise.
* cfgcleanup.c (equal_different_set_p): Likewise.
(try_crossjump_to_edge): Likewise.
* cgraph.c (cgraph_node::verify_node): Likewise.
* cgraphunit.c (expand_all_functions): Likewise.
* config/i386/i386.c (ix86_expand_copysign): Likewise.
(exact_dependency_1): Likewise.
* dwarf2asm.c (dw2_output_indirect_constants): Likewise.
* dwarf2out.c (tree_add_const_value_attribute_for_decl): Likewise.
* gensupport.c (process_define_subst): Likewise.
* lto-wrapper.c (merge_and_complain): Likewise.
* tree-if-conv.c (if_convertible_bb_p): Likewise.
* tree-ssa-loop-prefetch.c (find_or_create_group): Likewise.
* tree-ssa-tail-merge.c (gsi_advance_fw_nondebug_nonlocal): Likewise.
* tree-vect-data-refs.c (vect_grouped_load_supported): Likewise.
* tree-vect-loop.c (vectorizable_reduction): Likewise.
* tree-vect-slp.c (vect_transform_slp_perm_load): Likewise.
* tree-vect-stmts.c (vectorizable_shift): Likewise.
* tree-vrp.c (vrp_finalize): Likewise.
* tree.c (variably_modified_type_p): Likewise.

gcc/cp/ChangeLog:
* parser.c (cp_parser_asm_definition): Only test for
        error_mark_node if "outputs" was just set.
(cp_parser_asm_definition): Likewise for "inputs".

gcc/fortran/ChangeLog:
* expr.c (check_inquiry): Fix indentation so that it reflects the
block structure.
* interface.c (compare_parameter): Likewise.
* parse.c (parse_oacc_structured_block): Likewise.
* target-memory.c (expr_to_char): Likewise.
* trans-types.c (gfc_init_kinds): Likewise.

libcpp/ChangeLog:
* pch.c (cpp_valid_state): Fix indentation so that it reflects the
block structure.

From-SVN: r222823

9 years agoconfig.gcc: Use darwin9.h, darwin10.h and darwin12.h on darwin12 and later.
Jack Howarth [Tue, 5 May 2015 18:06:49 +0000 (18:06 +0000)]
config.gcc: Use darwin9.h, darwin10.h and darwin12.h on darwin12 and later.

2015-05-05  Jack Howarth  <howarth.at.gcc@gmail.com>

* config.gcc: Use darwin9.h, darwin10.h and darwin12.h
on darwin12 and later.
* config/darwin12.h (LINK_GCC_C_SEQUENCE_SPEC): Add
file to pass -rdynamic on darwin12 and later.
* config/darwin.opt (rdynamic): Add.

From-SVN: r222822

9 years agoextend.texi (C Extensions): Update menu for moved Variable Attributes and Type Attrib...
Uros Bizjak [Tue, 5 May 2015 17:36:40 +0000 (19:36 +0200)]
extend.texi (C Extensions): Update menu for moved Variable Attributes and Type Attributes sections.

        * doc/extend.texi (C Extensions): Update menu for moved Variable
        Attributes and Type Attributes sections.

From-SVN: r222819

9 years agore PR target/65990 (ICE: in extract_insn, at recog.c:2341 (unrecognizable insn) with...
Uros Bizjak [Tue, 5 May 2015 16:53:27 +0000 (18:53 +0200)]
re PR target/65990 (ICE: in extract_insn, at recog.c:2341 (unrecognizable insn) with -mmemcpy-strategy=rep_8byte:-1:noalign -m32 -mtune=btver2)

PR target/65990
* config/i386/i386.c (ix86_parse_stringop_strategy_string): Error out
if rep_8byte stringop strategy was specified for 32-bit target.

testsuite/ChangeLog:

PR target/65990
* gcc.target/i386/pr65990.c: New test.

From-SVN: r222817

9 years agore PR go/66016 (Accessing nil Func's name results in crash)
Ian Lance Taylor [Tue, 5 May 2015 16:38:57 +0000 (16:38 +0000)]
re PR go/66016 (Accessing nil Func's name results in crash)

PR go/66016
runtime: Don't crash in Func.Name if the Func is nil.

Related to Go issue 10696

From-SVN: r222816

9 years agore PR target/65915 (FAIL: gcc.target/i386/avx512f-vrndscalepd-2.c (internal compiler...
Ilya Tocar [Tue, 5 May 2015 15:43:13 +0000 (15:43 +0000)]
re PR target/65915 (FAIL: gcc.target/i386/avx512f-vrndscalepd-2.c (internal compiler error))

PR target/65915
* config/i386/i386.md (vector convert to float spltiter): Check for
xmm16+, when splitting scalar float conversion.
* config/i386/sse.md (sse2_cvtsi2sd): Support EVEX version.

testsuite/ChangeLog:

PR target/65915
* gcc.target/i386/pr65915.c: New.

From-SVN: r222811

9 years agomsp430-opts.h (enum msp430_regions): New.
Nick Clifton [Tue, 5 May 2015 15:15:13 +0000 (15:15 +0000)]
msp430-opts.h (enum msp430_regions): New.

* config/msp430/msp430-opts.h (enum msp430_regions): New.
* config/msp430/msp430.c (msp430_override_options): Complain if
-mcode-region or -mdata-region is used on a non MSP430X.
(msp430_section_attr): New function.  Checks lower, upper and
either attributes.
(msp430_attribute_table): Add lower, upper and either.
(gen_prefix): New function.  Generates a prefix for a section
name.
(msp430_select_section): New function - handles the choice of
section for an object.  Takes into account memory region
attributes and options.
(msp430_function_section): Use gen_prefix.
(TARGET_SECTION_TYPE_FLAGS): Define.
(msp430_section_type_flags): New function.
(TARGET_ASM_UNIQUE_SECTION): Define.
(msp430_unique_section): New function.
(msp430_output_aligned_decl_common): New function.
(msp430_do_not_relax_short_jumps): New function.
* config/msp430/msp430.h (USE_SELECT_SECTION_FOR_FUNCTIONS):
Define.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
* config/msp430/msp430-protos.h
(msp430_do_not_relax_short_jumps): New prototype.
(msp430_output_aligned_decl_common): New prototype.
* config/msp430/msp430.md (length): New attribute.
(cbranchhi4_real): If msp430_do_not_relax_short_jumps is true
then use a long code sequence for short jumps.
* config/msp430/msp430.opt (mcode-region): New.
(mdata-region): New.
* doc/invoke.texi: Document new options.
* doc/extend.texi: Document new attributes.

From-SVN: r222810

9 years agolibcpp: Improvements to comments in line-map.h/c
David Malcolm [Tue, 5 May 2015 14:21:02 +0000 (14:21 +0000)]
libcpp: Improvements to comments in line-map.h/c

libcpp/ChangeLog:
* include/line-map.h: Fix comment at the top of the file.
(source_location): Rewrite and expand the comment for this
typedef, adding an ascii-art table to clarify how source_location
values are allocated.
* line-map.c: Fix comment at the top of the file.

From-SVN: r222806

9 years ago[AArch64] Add branch-cost to cpu tuning information.
Matthew Wahab [Tue, 5 May 2015 14:01:28 +0000 (14:01 +0000)]
[AArch64] Add branch-cost to cpu tuning information.

* gcc/config/aarch64-protos.h (struct cpu_branch_cost): New.
        (tune_params): Add field branch_costs.
(aarch64_branch_cost): Declare.
* gcc/config/aarch64.c (generic_branch_cost): New.
(generic_tunings): Set field cpu_branch_cost to generic_branch_cost.
(cortexa53_tunings): Likewise.
(cortexa57_tunings): Likewise.
(thunderx_tunings): Likewise.
(xgene1_tunings): Likewise.
(aarch64_branch_cost): Define.
* gcc/config/aarch64/aarch64.h (BRANCH_COST): Redefine.

From-SVN: r222805