Jakub Jelinek [Thu, 9 Jan 2014 18:25:19 +0000 (19:25 +0100)]
re PR target/58115 (testcase gcc.target/i386/intrinsics_4.c failure)
PR target/58115
* tree-core.h (struct target_globals): New forward declaration.
(struct tree_target_option): Add globals field.
* tree.h (TREE_TARGET_GLOBALS): Define.
(prepare_target_option_nodes_for_pch): New prototype.
* target-globals.h (struct target_globals): Define even if
!SWITCHABLE_TARGET.
* tree.c (prepare_target_option_node_for_pch,
prepare_target_option_nodes_for_pch): New functions.
* config/i386/i386.h (SWITCHABLE_TARGET): Define.
* config/i386/i386.c: Include target-globals.h.
(ix86_set_current_function): Instead of doing target_reinit
unconditionally, use save_target_globals_default_opts and
restore_target_globals.
c-family/
* c-pch.c (c_common_write_pch): Call
prepare_target_option_nodes_for_pch.
From-SVN: r206478
Jakub Jelinek [Thu, 9 Jan 2014 18:16:40 +0000 (19:16 +0100)]
* sanitizer_common/sanitizer_symbolizer_libbacktrace.h
(LibbacktraceSymbolizer::Demangle): New declaration.
* sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc
(POSIXSymbolizer::Demangle): Use libbacktrace_symbolizer_'s Demangle
method if possible.
* sanitizer_common/sanitizer_symbolizer_libbacktrace.cc: Include
"demangle.h" if SANITIZE_CP_DEMANGLE is defined.
(struct CplusV3DemangleData): New type.
(CplusV3DemangleCallback, CplusV3Demangle): New functions.
(SymbolizeCodePCInfoCallback, SymbolizeCodeCallback,
SymbolizeDataCallback): Use CplusV3Demangle.
* sanitizer_common/Makefile.am (AM_CXXFLAGS): Add
-DSANITIZE_CP_DEMANGLE and -I $(top_srcdir)/../include.
* libbacktrace/backtrace-rename.h (cplus_demangle_builtin_types,
cplus_demangle_fill_ctor, cplus_demangle_fill_dtor,
cplus_demangle_fill_extended_operator, cplus_demangle_fill_name,
cplus_demangle_init_info, cplus_demangle_mangled_name,
cplus_demangle_operators, cplus_demangle_print,
cplus_demangle_print_callback, cplus_demangle_type, cplus_demangle_v3,
cplus_demangle_v3_callback, is_gnu_v3_mangled_ctor,
is_gnu_v3_mangled_dtor, java_demangle_v3, java_demangle_v3_callback):
Define.
(__asan_internal_memcmp, __asan_internal_strncmp): New prototypes.
(memcmp, strncmp): Redefine.
* libbacktrace/Makefile.am (libsanitizer_libbacktrace_la_SOURCES): Add
../../libiberty/cp-demangle.c.
* libbacktrace/bridge.cc (__asan_internal_memcmp,
__asan_internal_strncmp): New functions.
* sanitizer_common/Makefile.in: Regenerated.
* libbacktrace/Makefile.in: Regenerated.
* configure: Regenerated.
* configure.ac: Regenerated.
* config.h.in: Regenerated.
From-SVN: r206477
Jakub Jelinek [Thu, 9 Jan 2014 18:15:41 +0000 (19:15 +0100)]
Makefile.am (AM_CPPFLAGS): Add -isystem $(top_srcdir)/include/system.
* sanitizer_common/Makefile.am (AM_CPPFLAGS): Add
-isystem $(top_srcdir)/include/system.
* sanitizer_common/Makefile.in: Regenerated.
* include/system/linux/aio_abi.h: New header.
* include/system/linux/mroute.h: New header.
* include/system/linux/mroute6.h: New header.
* include/system/linux/perf_event.h: New header.
* include/system/linux/types.h: New header.
From-SVN: r206476
Jakub Jelinek [Thu, 9 Jan 2014 18:13:39 +0000 (19:13 +0100)]
re PR sanitizer/59136 (llvm-symbolizer shouldn't be started always)
PR sanitizer/59136
libsanitizer/
* sanitizer_common/Makefile.am (AM_CXXFLAGS): If
LIBBACKTRACE_SUPPORTED add -DSANITIZER_LIBBACKTRACE
and -I/-include flags.
* lsan/Makefile.am (liblsan_la_LIBADD): Add
libsanitizer_libbacktrace.la if LIBBACKTRACE_SUPPORTED.
* tsan/Makefile.am (libtsan_la_LIBADD): Likewise.
* ubsan/Makefile.am (libubsan_la_LIBADD): Likewise.
* asan/Makefile.am (libasan_la_LIBADD): Likewise.
* Makefile.am (SUBDIRS): If LIBBACKTRACE_SUPPORTED add
libbacktrace.
* README.gcc: Document that also lsan and ubsan are
maintained in compiler-rt upstream.
* libbacktrace/Makefile.am: New file.
* libbacktrace/backtrace-rename.h: New file.
* libbacktrace/backtrace-supported.h.in: New file.
* libbacktrace/bridge.cc: New file.
* configure.ac: Add tests needed for libbacktrace build
within libsanitizer.
* sanitizer_common/Makefile.in: Regenerated.
* lsan/Makefile.in: Regenerated.
* tsan/Makefile.in: Regenerated.
* ubsan/Makefile.in: Regenerated.
* libbacktrace/Makefile.in: Generated.
* config.h.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
* interception/Makefile.in: Regenerated.
* asan/Makefile.in: Regenerated.
* aclocal.m4: Regenerated.
testsuite/
* c-c++-common/asan/strip-path-prefix-1.c: Allow also the
filename:line instead of (modulename+offset) form with stripped
initial / from the filename.
From-SVN: r206475
Ian Lance Taylor [Thu, 9 Jan 2014 17:58:14 +0000 (17:58 +0000)]
go-test.exp (go-gc-tests): Skip nilptr tests that test the other Go compiler.
* go.test/go-test.exp (go-gc-tests): Skip nilptr tests that test
the other Go compiler.
From-SVN: r206474
Paolo Carlini [Thu, 9 Jan 2014 17:45:55 +0000 (17:45 +0000)]
re PR c++/59730 (ICE: in type_dependent_expression_p, at cp/pt.c:19969)
2014-01-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59730
* g++.dg/cpp0x/variadic145.C: New.
From-SVN: r206473
Uros Bizjak [Thu, 9 Jan 2014 17:14:03 +0000 (18:14 +0100)]
go-test.exp (go-gc-tests): Don't run peano.go on systems which don't support -fsplit-stack.
* go.test/go-test.exp (go-gc-tests): Don't run peano.go on systems
which don't support -fsplit-stack. Skip rotate[0123].go tests.
From-SVN: r206470
Balaji V. Iyer [Thu, 9 Jan 2014 16:52:23 +0000 (16:52 +0000)]
Fix for PR bootstrap/59094 +2014-01-09 Balaji V.
Fix for PR bootstrap/59094
+2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
+
+ PR bootstrap/59094
+ * Makefile.am (cilkincludedir): Fixed a bug to store version-specific
+ runtime libraries in the correct place.
+ * Makefile.in: Regenerate.
+
From-SVN: r206469
Balaji V. Iyer [Thu, 9 Jan 2014 15:41:20 +0000 (15:41 +0000)]
Fix for PR testsuite/59524 2014-01-09 Balaji V.
Fix for PR testsuite/59524
2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
+ PR testsuite/59524
+ * gcc.dg/cilk-plus/cilk-plus.exp: Make sure the cilk keywords tests
+ are run only if the Cilk library is available/enabled.
+ * g++.dg/cilk-plus/cilk-plus.exp: Likewise.
+ * lib/target-supports.exp (check_libcilkrts_available): New
function.
+
From-SVN: r206468
Balaji V. Iyer [Thu, 9 Jan 2014 13:37:41 +0000 (13:37 +0000)]
re PR c++/59631 (ICE using _Cilk_spawn without -fcilkplus)
Fix for PR c++/59631.
+++ gcc/cp/ChangeLog
+2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
+
+ PR c++/59631
+ * parser.c (cp_parser_postfix_expression): Added a new if-statement
+ and replaced an existing if-statement with else-if statement.
+ Changed an existing error message wording to match the one from the C
+ parser.
+
+++ gcc/testsuite/ChangeLog
+2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
+
+ PR c++/59631
+ * gcc.dg/cilk-plus/cilk-plus.exp: Removed "-fcilkplus" from flags list.
+ * g++.dg/cilk-plus/cilk-plus.exp: Likewise.
+ * c-c++-common/cilk-plus/CK/spawnee_inline.c: Replaced second dg-option
+ with dg-additional-options.
+ * c-c++-common/cilk-plus/CK/varargs_test.c: Likewise.
+ * c-c++-common/cilk-plus/CK/steal_check.c: Likewise.
+ * c-c++-common/cilk-plus/CK/spawner_inline.c: Likewise.
+ * c-c++-common/cilk-plus/CK/spawning_arg.c: Likewise.
+ * c-c++-common/cilk-plus/CK/invalid_spawns.c: Added a dg-options tag.
+ * c-c++-common/cilk-plus/CK/pr59631.c: New testcase.
+
gcc/c/ChangeLog
+2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
+
+ PR c++/59631
+ * c-parser.c (c_parser_postfix_expression): Replaced consecutive if
+ statements with if-elseif statements.
+
From-SVN: r206463
Richard Biener [Thu, 9 Jan 2014 12:34:39 +0000 (12:34 +0000)]
lto.c (gimple_canonical_types_compatible_p): Fix comment.
2014-01-09 Richard Biener <rguenther@suse.de>
* lto.c (gimple_canonical_types_compatible_p): Fix comment.
From-SVN: r206462
Richard Biener [Thu, 9 Jan 2014 11:52:43 +0000 (11:52 +0000)]
re PR fortran/45586 (ICE non-trivial conversion at assignment)
2014-01-09 Richard Biener <rguenther@suse.de>
PR lto/45586
* lto.c (hash_canonical_type): Do not hash TREE_ADDRESSABLE,
TYPE_ALIGN, TYPE_RESTRICT or TYPE_REF_CAN_ALIAS_ALL.
(gimple_canonical_types_compatible_p): Do not compare them either.
From-SVN: r206461
Richard Biener [Thu, 9 Jan 2014 09:21:02 +0000 (09:21 +0000)]
re PR tree-optimization/59715 (wrong code at -Os and above on x86_64-linux-gnu)
2014-01-09 Richard Biener <rguenther@suse.de>
PR tree-optimization/59715
* tree-cfg.h (split_critical_edges): Declare.
* tree-cfg.c (split_critical_edges): Export.
* tree-ssa-sink.c (execute_sink_code): Split critical edges.
* gcc.dg/torture/pr59715.c: New testcase.
From-SVN: r206460
Max Ostapenko [Thu, 9 Jan 2014 07:31:05 +0000 (09:31 +0200)]
cfgexpand.c (expand_stack_vars): Optionally disable asan stack protection.
2014-01-09 Max Ostapenko <m.ostapenko@partner.samsung.com>
* cfgexpand.c (expand_stack_vars): Optionally disable
asan stack protection.
(expand_used_vars): Likewise.
(partition_stack_vars): Likewise.
* asan.c (asan_emit_stack_protection): Optionally disable
after return stack usage.
(instrument_derefs): Optionally disable memory
access instrumentation.
(instrument_builtin_call): Likewise.
(instrument_strlen_call): Likewise.
(asan_protect_global): Optionally disable
global variables protection.
* doc/invoke.texi: Added doc for new options.
* params.def: Added new options.
* params.h: Likewise.
2014-01-09 Max Ostapenko <m.ostapenko@partner.samsung.com>
* c-c++-common/asan/no-asan-globals.c: New test.
* c-c++-common/asan/no-instrument-reads.c: Likewise.
* c-c++-common/asan/no-instrument-writes.c: Likewise.
* c-c++-common/asan/use-after-return-1.c: Likewise.
* c-c++-common/asan/no-use-after-return.c: Likewise.
From-SVN: r206458
Jakub Jelinek [Thu, 9 Jan 2014 07:21:21 +0000 (08:21 +0100)]
re PR rtl-optimization/59724 (ICE : in rtl_verify_bb_layout, at cfgrtl.c)
PR rtl-optimization/59724
* ifcvt.c (cond_exec_process_if_block): Don't call
flow_find_head_matching_sequence with 0 longest_match.
* cfgcleanup.c (flow_find_head_matching_sequence): Count even
non-active insns if !stop_after.
(try_head_merge_bb): Revert 2014-01-07 changes.
From-SVN: r206456
Jeff Law [Thu, 9 Jan 2014 04:42:38 +0000 (21:42 -0700)]
ree.c (get_sub_rtx): New function, extracted from...
* ree.c (get_sub_rtx): New function, extracted from...
(merge_def_and_ext): Here.
(combine_reaching_defs): Use get_sub_rtx.
From-SVN: r206454
GCC Administrator [Thu, 9 Jan 2014 00:17:01 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r206452
Eric Botcazou [Wed, 8 Jan 2014 22:39:07 +0000 (22:39 +0000)]
* cgraph.h (varpool_variable_node): Do not choke on null node.
From-SVN: r206449
Jakub Jelinek [Wed, 8 Jan 2014 22:33:12 +0000 (23:33 +0100)]
re PR middle-end/59471 (ICE using vector extensions (non-top-level BIT_FIELD_REF, IMAGPART_EXPR or REALPART_EXPR))
PR middle-end/59471
* gcc.dg/pr59471.c (foo): Avoid vector type arguments or return
type, use pointers to vector type instead.
From-SVN: r206448
Catherine Moore [Wed, 8 Jan 2014 22:26:05 +0000 (17:26 -0500)]
umips-branch-3.c: New test.
2014-01-08 Catherine Moore <clm@codesourcery.com>
gcc/testsuite/
* gcc.target/mips/umips-branch-3.c: New test.
* gcc.target/mips/umips-branch-4.c: New test.
gcc/
* config/mips/mips.md (simple_return): Attempt to use JRC for microMIPS.
* config/mips/mips.h (MIPS_CALL): Attempt to use JALS for microMIPS.
From-SVN: r206447
Richard Sandiford [Wed, 8 Jan 2014 22:17:23 +0000 (22:17 +0000)]
reassoc-32.c, [...]: Extend -mbranch-cost handling to MIPS.
gcc/testsuite/
* gcc.dg/tree-ssa/reassoc-32.c, gcc.dg/tree-ssa/reassoc-33.c,
gcc.dg/tree-ssa/reassoc-34.c, gcc.dg/tree-ssa/reassoc-35.c,
gcc.dg/tree-ssa/reassoc-36.c: Extend -mbranch-cost handling to MIPS.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c,
gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c,
gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c,
gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c,
gcc.dg/tree-ssa/vrp87.c, gcc.dg/tree-ssa/forwprop-28.c: Skip for MIPS.
From-SVN: r206446
Richard Sandiford [Wed, 8 Jan 2014 22:16:49 +0000 (22:16 +0000)]
re PR rtl-optimization/59137 (Miscompilation at -O1 on mips/mipsel)
gcc/
PR rtl-optimization/59137
* reorg.c (steal_delay_list_from_target): Call update_block for
elided insns.
(steal_delay_list_from_fallthrough, relax_delay_slots): Likewise.
gcc/testsuite/
PR rtl-optimization/59137
* gcc.target/mips/pr59137.c: New test.
From-SVN: r206445
François Dumont [Wed, 8 Jan 2014 20:57:57 +0000 (20:57 +0000)]
stl_vector.h (std::vector<>::_M_move_assign): Pass *this allocator instance when building temporary vector instance so that...
2014-01-08 François Dumont <fdumont@gcc.gnu.org>
* include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
*this allocator instance when building temporary vector instance
so that *this allocator does not get moved.
* include/debug/safe_base.h
(_Safe_sequence_base(_Safe_sequence_base&&)): New.
* include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
move constructor from _Safe_sequence_base.
(__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
safe iterators if the instance is moved.
(__gnu_debug::vector<>::operator=(vector&&)): Likewise.
* testsuite/23_containers/vector/allocator/move.cc (test01): Add
check on a vector iterator.
* testsuite/23_containers/vector/allocator/move_assign.cc
(test02): Likewise.
(test03): New, test with a non-propagating allocator.
* testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
From-SVN: r206444
Bill Schmidt [Wed, 8 Jan 2014 20:15:48 +0000 (20:15 +0000)]
rs6000-c.c (altivec_overloaded_builtins): Remove two duplicate entries.
2014-01-08 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Remove
two duplicate entries.
From-SVN: r206443
Uros Bizjak [Wed, 8 Jan 2014 19:45:54 +0000 (20:45 +0100)]
asm-1.c (dg-options): Remove -m32.
* gcc.target/i386/asm-1.c (dg-options): Remove -m32.
* gcc.target/i386/incoming-5.c (dg-options): Ditto.
* gcc.target/i386/pr55433.c (dg-options): Ditto.
* gcc.target/i386/pr57848.c (dg-options): Ditto.
* gcc.target/i386/pr59099.c (dg-options): Ditto.
Require fpic effective target.
* gcc.target/i386/pr56246.c (dg-do): Compile for fpic target only.
From-SVN: r206441
Richard Sandiford [Wed, 8 Jan 2014 19:32:56 +0000 (19:32 +0000)]
revert: mips.c (mips_truncated_op_cost): New function.
gcc/
Revert:
2012-10-07 Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips.c (mips_truncated_op_cost): New function.
(mips_rtx_costs): Adjust test for BADDU.
* config/mips/mips.md (*baddu_di<mode>): Push truncates to operands.
2012-10-02 Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips.md (*baddu_si_eb, *baddu_si_el): Merge into...
(*baddu_si): ...this new pattern.
From-SVN: r206440
Jason Merrill [Wed, 8 Jan 2014 18:48:31 +0000 (13:48 -0500)]
re PR c++/59614 (Explostion in compile time of heavily templated code)
PR c++/59614
* class.c (abi_tag_data): Add tags field.
(check_abi_tags): Initialize it.
(find_abi_tags_r): Support collecting missing tags.
(mark_type_abi_tags): Don't look at template args.
(inherit_targ_abi_tags): New.
(check_bases_and_members): Use it.
* cp-tree.h (ABI_TAG_IMPLICIT): New.
* mangle.c (write_abi_tags): Check it.
From-SVN: r206439
Jakub Jelinek [Wed, 8 Jan 2014 18:41:22 +0000 (19:41 +0100)]
re PR ipa/59722 (Bootstrap comparison failure on i686-linux)
PR ipa/59722
* ipa-prop.c (ipa_analyze_params_uses): Ignore uses in debug stmts.
* gcc.dg/pr59722.c: New test.
From-SVN: r206438
Bernd Edlinger [Wed, 8 Jan 2014 17:25:38 +0000 (17:25 +0000)]
re PR middle-end/57748 (ICE when expanding assignment to unaligned zero-sized array)
2014-01-08 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR middle-end/57748
* expr.h (expand_expr_real, expand_expr_real_1): Add new parameter
inner_reference_p.
(expand_expr, expand_normal): Adjust.
* expr.c (expand_expr_real, expand_expr_real_1): Add new parameter
inner_reference_p. Use inner_reference_p to expand inner references.
(store_expr): Adjust.
* cfgexpand.c (expand_call_stmt): Adjust.
testsuite:
2014-01-08 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR middle-end/57748
* gcc.dg/torture/pr57748-3.c: New test.
* gcc.dg/torture/pr57748-4.c: New test.
From-SVN: r206437
Rong Xu [Wed, 8 Jan 2014 16:37:08 +0000 (16:37 +0000)]
gcov-io.c (gcov_var): Move from gcov-io.h.
2014-01-08 Rong Xu <xur@google.com>
* gcc/gcov-io.c (gcov_var): Move from gcov-io.h.
(gcov_position): Ditto.
(gcov_is_error): Ditto.
(gcov_rewrite): Ditto.
* gcc/gcov-io.h: Refactor. Move gcov_var to gcov-io.h, and libgcov
only part to libgcc/libgcov.h.
* libgcc/libgcov-driver.c: Use libgcov.h.
(buffer_fn_data): Use xmalloc instead of malloc.
(gcov_exit_merge_gcda): Ditto.
* libgcc/libgcov-driver-system.c (allocate_filename_struct): Ditto.
* libgcc/libgcov.h: New common header files for libgcov-*.h.
* libgcc/libgcov-interface.c: Use libgcov.h
* libgcc/libgcov-merge.c: Ditto.
* libgcc/libgcov-profiler.c: Ditto.
* libgcc/Makefile.in: Add dependence to libgcov.h
From-SVN: r206435
Marek Polacek [Wed, 8 Jan 2014 15:37:35 +0000 (15:37 +0000)]
re PR middle-end/59669 (ICE: SIGSEGV with #pragma omp declare simd linear)
PR middle-end/59669
* omp-low.c (simd_clone_adjust): Don't crash if def is NULL.
testsuite/
* gcc.dg/gomp/pr59669-1.c: New test.
* gcc.dg/gomp/pr59669-2.c: New test.
From-SVN: r206431
Martin Jambor [Wed, 8 Jan 2014 15:32:50 +0000 (16:32 +0100)]
re PR ipa/59610 (ICE in parm_preserved_before_stmt_p)
2014-01-08 Martin Jambor <mjambor@suse.cz>
PR ipa/59610
testsuite/
* gcc.dg/ipa/pr59610.c: New test.
From-SVN: r206430
Janus Weil [Wed, 8 Jan 2014 15:25:22 +0000 (16:25 +0100)]
re PR fortran/58182 (ICE with global binding name used as a FUNCTION)
2014-01-08 Janus Weil <janus@gcc.gnu.org>
PR fortran/58182
* resolve.c (gfc_verify_binding_labels): Modify order of checks.
2014-01-08 Janus Weil <janus@gcc.gnu.org>
PR fortran/58182
* gfortran.dg/binding_label_tests_26a.f90: New.
* gfortran.dg/binding_label_tests_26b.f90: New.
From-SVN: r206429
Marek Polacek [Wed, 8 Jan 2014 10:06:09 +0000 (10:06 +0000)]
re PR sanitizer/59667 (ubsan: ICE ubsan_type_descriptor)
PR sanitizer/59667
* ubsan.c (ubsan_type_descriptor): Call strip_array_types on type2.
testsuite/
* c-c++-common/ubsan/pr59667.c: New test.
From-SVN: r206423
Jakub Jelinek [Wed, 8 Jan 2014 10:01:29 +0000 (11:01 +0100)]
re PR rtl-optimization/59649 (BImode miscompiled)
PR rtl-optimization/59649
* stor-layout.c (get_mode_bounds): For BImode return
0 and STORE_FLAG_VALUE.
From-SVN: r206422
Richard Biener [Wed, 8 Jan 2014 09:06:27 +0000 (09:06 +0000)]
re PR middle-end/59630 (ICE converting the return type of a builtin function)
2014-01-08 Richard Biener <rguenther@suse.de>
PR middle-end/59630
* gimple.h (is_gimple_builtin_call): Remove.
(gimple_builtin_call_types_compatible_p): New.
(gimple_call_builtin_p): New overload.
* gimple.c (is_gimple_builtin_call): Remove.
(validate_call): Rename to ...
(gimple_builtin_call_types_compatible_p): ... this and export. Also
check return types.
(validate_type): New static function.
(gimple_call_builtin_p): New overload and adjust.
* gimple-fold.c (gimple_fold_builtin): Fold the return value.
(gimple_fold_call): Likewise. Use gimple_call_builtin_p.
(gimple_fold_stmt_to_constant_1): Likewise.
* tsan.c (instrument_gimple): Use gimple_call_builtin_p.
* gcc.dg/pr59630.c: New testcase.
From-SVN: r206421
Richard Biener [Wed, 8 Jan 2014 08:59:29 +0000 (08:59 +0000)]
re PR middle-end/59471 (ICE using vector extensions (non-top-level BIT_FIELD_REF, IMAGPART_EXPR or REALPART_EXPR))
2014-01-08 Richard Biener <rguenther@suse.de>
PR middle-end/59471
* gimplify.c (gimplify_expr): Gimplify register-register type
VIEW_CONVERT_EXPRs to separate stmts.
* gcc.dg/pr59471.c: New testcase.
From-SVN: r206420
Jeff Law [Wed, 8 Jan 2014 06:03:12 +0000 (23:03 -0700)]
re PR middle-end/53623 (sign extension is effectively split into two x86-64 instructions)
PR middle-end/53623
* ree.c (combine_set_extension): Handle case where source
and destination registers in an extension insn are different.
(combine_reaching_defs): Allow source and destination
registers in extension to be different under limited
circumstances.
(add_removable_extension): Remove restriction that the
source and destination registers in the extension are the
same.
(find_and_remove_re): Emit a copy from the extension's
destination to its source after the defining insn if
the source and destination registers are different.
PR middle-end/53623
* gcc.target/i386/pr53623.c: New test.
From-SVN: r206418
Jeff Law [Wed, 8 Jan 2014 05:56:31 +0000 (22:56 -0700)]
re PR middle-end/59285 (gcc.dg/builtin-unreachable-6.c:17:1: internal compiler error: in rtl_verify_fallthru, at cfgrtl.c:2862)
PR middle-end/59285
* ifcvt.c (merge_if_block): If we are merging a block with more than
one successor with a block with no successors, remove any BARRIER
after the second block.
From-SVN: r206417
Jeff Law [Wed, 8 Jan 2014 05:51:49 +0000 (22:51 -0700)]
hw-doloop.c (reorg_loops): Release the bitmap obstack.
2014-01-07 Dan Xio Qiang <ziyan01@163.com>
* hw-doloop.c (reorg_loops): Release the bitmap obstack.
From-SVN: r206416
Adam Butcher [Wed, 8 Jan 2014 02:41:29 +0000 (02:41 +0000)]
Fix paths in previous testsuite ChangeLog.
From-SVN: r206415
John David Anglin [Wed, 8 Jan 2014 01:58:35 +0000 (01:58 +0000)]
re PR target/59652 (ICE: in reload_cse_simplify_operands, at postreload.c:411)
PR target/59652
* config/pa/pa.c (pa_legitimate_address_p): Return false before reload
for 14-bit register offsets when INT14_OK_STRICT is false.
From-SVN: r206413
Ian Lance Taylor [Wed, 8 Jan 2014 01:08:29 +0000 (01:08 +0000)]
re PR go/59430 (os/user FAILs on Solaris)
PR go/59430
os/user: Use POSIX functions on Solaris.
From-SVN: r206412
Ian Lance Taylor [Wed, 8 Jan 2014 00:42:45 +0000 (00:42 +0000)]
re PR go/59433 (Many 64-bit Go tests SEGV on Solaris)
PR go/59433
net: Don't use stack space for fd_sets when using select.
From-SVN: r206411
GCC Administrator [Wed, 8 Jan 2014 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r206410
Jason Merrill [Tue, 7 Jan 2014 21:28:33 +0000 (16:28 -0500)]
re PR c++/58856 (spurious 'wrong number of template arguments' error for template alias)
PR c++/58856
* pt.c (num_innermost_template_parms): New.
(get_underlying_template): Use it.
From-SVN: r206406
Jason Merrill [Tue, 7 Jan 2014 21:24:37 +0000 (16:24 -0500)]
re PR c++/58965 ([c++11] ICE with member initializer in static union)
PR c++/58965
* mangle.c (write_guarded_var_name): Handle null DECL_NAME.
From-SVN: r206405
Adam Butcher [Tue, 7 Jan 2014 20:44:03 +0000 (20:44 +0000)]
Update gcc/testsuite/ChangeLog with r206403's cosmetic changes.
From-SVN: r206404
Adam Butcher [Tue, 7 Jan 2014 20:36:16 +0000 (20:36 +0000)]
Fix paths in my previous cp/ChangeLog entries (r206368-r206371) and fix layout in cpp1y PR testcases as pointed out by Jakub.
From-SVN: r206403
Roland Stigge [Tue, 7 Jan 2014 19:57:11 +0000 (19:57 +0000)]
PR 57386/target
2014-01-07 Roland Stigge <stigge@antcom.de>
Michael Meissner <meissner@linux.vnet.ibm.com>
PR 57386/target
* config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
Only check TFmode for SPE constants. Don't check TImode or
TDmode.
Co-Authored-By: Michael Meissner <meissner@linux.vnet.ibm.com>
From-SVN: r206401
Tim Shen [Tue, 7 Jan 2014 19:17:50 +0000 (19:17 +0000)]
regex_compiler.h (_AnyMatcher<>::_AnyMatcher(), [...]): Fix _AnyMatcher behavior of POSIX style and move _M_flags to template parameter...
2014-01-07 Tim Shen <timshen91@gmail.com>
* include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
_AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
_CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
_BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
_BracketMatcher<>::_M_add_char(),
_BracketMatcher<>::_M_add_collating_element(),
_BracketMatcher<>::_M_add_equivalence_class(),
_BracketMatcher<>::_M_add_character_class(),
_BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
_BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
Fix _AnyMatcher behavior of POSIX style and move _M_flags
to template parameter; Add cache for _BracketMatcher. Adjust
declarations from here...
* include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
imbuing a regex will trigger a recompilation to rebuild the cache.
* include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
_Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
different template bool parameters.
* include/bits/regex_executor.h: Remove unnecessary declarations.
* include/std/regex: Adjust including orders.
* testsuite/28_regex/traits/char/user_defined.cc: New.
* testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
From-SVN: r206400
James Greenhalgh [Tue, 7 Jan 2014 17:21:13 +0000 (17:21 +0000)]
[AArch64] big.LITTLE option rewriting bug
gcc/
* config/aarch64/aarch64-elf.h (ASM_SPEC): Remove identity spec for
-mcpu.
From-SVN: r206399
Yufeng Zhang [Tue, 7 Jan 2014 16:18:04 +0000 (16:18 +0000)]
arm.c (arm_expand_neon_args): Call expand_expr with EXPAND_MEMORY for NEON_ARG_MEMORY...
gcc/
* config/arm/arm.c (arm_expand_neon_args): Call expand_expr
with EXPAND_MEMORY for NEON_ARG_MEMORY; check if the returned
rtx is const0_rtx or not.
gcc/testsuite/
* gcc.target/arm/neon/vst1Q_laneu64-1.c: New test.
From-SVN: r206395
Richard Sandiford [Tue, 7 Jan 2014 15:26:41 +0000 (15:26 +0000)]
re PR target/58115 (testcase gcc.target/i386/intrinsics_4.c failure)
gcc/
PR target/58115
* target-globals.c (save_target_globals): Remove this_fn_optab
handling.
* toplev.c: Include optabs.h.
(target_reinit): Temporarily restore the global options if another
set of options are in force.
gcc/testsuite/
* gcc.target/i386/intrinsics_4.c (bar): New function.
From-SVN: r206394
Rainer Orth [Tue, 7 Jan 2014 12:46:53 +0000 (12:46 +0000)]
Update Solaris baselines
* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
From-SVN: r206389
Paolo Carlini [Tue, 7 Jan 2014 09:40:28 +0000 (09:40 +0000)]
semantics.c (trait_expr_value, [...]): Implement the letter of 20.11.6 about Base and Derived naming the same class...
/cp
2014-01-07 Paolo Carlini <paolo.carlini@oracle.com>
* semantics.c (trait_expr_value, [CPTK_IS_BASE_OF]): Implement
the letter of 20.11.6 about Base and Derived naming the same
class type modulo cv-qualifiers.
/testsuite
2014-01-07 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/ext/is_base_of_incomplete-2.C: New.
From-SVN: r206386
Jakub Jelinek [Tue, 7 Jan 2014 07:54:47 +0000 (08:54 +0100)]
re PR rtl-optimization/58668 (internal compiler error: in cond_exec_process_insns, at ifcvt.c:339)
PR rtl-optimization/58668
* cfgcleanup.c (flow_find_cross_jump): Don't count
any jumps if dir_p is NULL. Remove p1 variable, use active_insn_p
to determine what is counted.
(flow_find_head_matching_sequence): Use active_insn_p to determine
what is counted.
(try_head_merge_bb): Adjust for the flow_find_head_matching_sequence
counting change.
* ifcvt.c (count_bb_insns): Use active_insn_p && !JUMP_P to
determine what is counted.
* gcc.dg/pr58668.c: New test.
From-SVN: r206385
Jakub Jelinek [Tue, 7 Jan 2014 07:49:10 +0000 (08:49 +0100)]
re PR tree-optimization/59643 (Predictive commoning unnecessarily punts on scimark2 SOR)
PR tree-optimization/59643
* tree-predcom.c (split_data_refs_to_components): If one dr is
read and one write, determine_offset fails and the write isn't
in the bad component, just put the read into the bad component.
* gcc.dg/pr59643.c: New test.
* gcc.c-torture/execute/pr59643.c: New test.
From-SVN: r206384
Mike Stump [Tue, 7 Jan 2014 07:47:57 +0000 (07:47 +0000)]
re PR pch/59436 (FAIL: 17_intro/headers/c++200x/stdc++.cc (test for excess errors))
PR pch/59436
* tree-core.h (struct tree_optimization_option): Change optabs
type from unsigned char * to void *.
* optabs.c (init_tree_optimization_optabs): Adjust
TREE_OPTIMIZATION_OPTABS initialization.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r206383
GCC Administrator [Tue, 7 Jan 2014 00:16:59 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r206382
Janus Weil [Mon, 6 Jan 2014 23:21:39 +0000 (00:21 +0100)]
re PR fortran/59589 ([OOP] Memory leak when deallocating polymorphic)
2014-01-06 Janus Weil <janus@gcc.gnu.org>
PR fortran/59589
* class.c (comp_is_finalizable): New function to dermine if a given
component is finalizable.
(finalize_component, generate_finalization_wrapper): Use it.
2014-01-06 Janus Weil <janus@gcc.gnu.org>
PR fortran/59589
* gfortran.dg/class_allocate_16.f90: New.
From-SVN: r206379
Jakub Jelinek [Mon, 6 Jan 2014 21:38:27 +0000 (22:38 +0100)]
re PR target/59644 (r206243 miscompiles Linux kernel)
PR target/59644
* config/i386/i386.h (struct machine_function): Add
no_drap_save_restore field.
* config/i386/i386.c (ix86_save_reg): Use
!cfun->machine->no_drap_save_restore instead of
crtl->stack_realign_needed.
(ix86_finalize_stack_realign_flags): Don't clear drap_reg unless
this function clears frame_pointer_needed. Set
cfun->machine->no_drap_save_restore if clearing frame_pointer_needed
and DRAP reg is needed.
* gcc.target/i386/pr59644.c: New test.
From-SVN: r206375
Ian Lance Taylor [Mon, 6 Jan 2014 19:24:23 +0000 (19:24 +0000)]
go/build: Set GOARCH on arm64 systems.
I am reliably informed that the architecture name and letter for the
plan9/inferno compilers for 64-bit ARM systems will be "arm64" and "7"
respectively, so let's get that bit in nice and early.
From Michael Hudson-Doyle.
https://codereview.appspot.com/
34830045/
From-SVN: r206374
Marek Polacek [Mon, 6 Jan 2014 18:53:01 +0000 (18:53 +0000)]
re PR c/57773 (-Wpedantic incorrect warning for enum bit-field)
PR c/57773
* doc/implement-c.texi: Mention that other integer types are
permitted as bit-field types in strictly conforming mode.
c/
* c-decl.c (check_bitfield_type_and_width): Warn for implementation
defined bit-field types only in ISO C.
testsuite/
* gcc.dg/pr57773.c: New test.
From-SVN: r206373
Adam Butcher [Mon, 6 Jan 2014 18:22:48 +0000 (18:22 +0000)]
re PR c++/59638 ([c++1y] ICE with pointer to function that has auto as parameter)
Fix PR c++/59638
PR c++/59638
* cp/parser.c (cp_parser_init_declarator): Undo fully implicit
template parameter list when declarator is not a function.
* g++.dg/cpp1y/pr59638.C: New testcase.
From-SVN: r206371
Adam Butcher [Mon, 6 Jan 2014 18:22:38 +0000 (18:22 +0000)]
re PR c++/59629 ([c++11] ICE with invalid use of auto in lambda function)
Fix PR c++/59629
PR c++/59629
* cp/parser.c (cp_parser_lambda_expression): Save/reset/restore
auto_is_implicit_function_template_parm_p around lambda body.
* g++.dg/cpp1y/pr59629.C: New testcase.
From-SVN: r206370
Adam Butcher [Mon, 6 Jan 2014 18:22:29 +0000 (18:22 +0000)]
re PR c++/59636 ([c++1y] ICE with missing template parameter in lambda)
Fix PR c++/59636
PR c++/59636
* cp/parser.c (cp_parser_template_parameter): Early out with
error_mark_node if parameter declaration was not parsed.
* g++.dg/cpp1y/pr59636.C: New testcase.
From-SVN: r206369
Adam Butcher [Mon, 6 Jan 2014 18:22:19 +0000 (18:22 +0000)]
re PR c++/59635 ([c++1y] ICE with auto and ... as lambda parameter)
Fix PR c++/59635
PR c++/59635
* cp/lambda.c (maybe_add_lambda_conv_op): Handle marking conversion
function as unimplemented for generic lambdas with varargs.
* g++.dg/cpp1y/pr59635.C: New testcase.
From-SVN: r206368
Mike Frysinger [Mon, 6 Jan 2014 18:15:31 +0000 (18:15 +0000)]
libiberty: fix --enable-install-libiberty flag [PR 56780]
Commit 199570 fixed the --disable-install-libiberty behavior, but it also
added a bug where the enable path never works because the initial clear
of target_header_dir wasn't deleted. So we end up initializing properly
at the top only to reset it at the end all the time.
From-SVN: r206367
Felix Yang [Mon, 6 Jan 2014 16:46:12 +0000 (16:46 +0000)]
modulo-sched.c (schedule_reg_moves): Clear distance1_uses if it is newly allocated.
2014-01-02 Felix Yang <fei.yang0953@gmail.com>
* modulo-sched.c (schedule_reg_moves): Clear distance1_uses if it
is newly allocated.
From-SVN: r206366
Bernd Edlinger [Mon, 6 Jan 2014 16:34:52 +0000 (16:34 +0000)]
Reverted r205593
2013-12-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR target/58115
* function.c (invoke_set_current_function_hook): Call
targetm.set_current_function after setting this_fn_optabs.
From-SVN: r206364
Richard Earnshaw [Mon, 6 Jan 2014 15:58:44 +0000 (15:58 +0000)]
* aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD.
From-SVN: r206363
Gary Benson [Mon, 6 Jan 2014 14:14:21 +0000 (14:14 +0000)]
cp-demangle.c (struct d_print_info): New fields next_saved_scope...
libiberty/
2014-01-06 Gary Benson <gbenson@redhat.com>
* cp-demangle.c (struct d_print_info): New fields
next_saved_scope, copy_templates, next_copy_template and
num_copy_templates.
(d_count_templates): New function.
(d_print_init): New parameter "dc".
Estimate numbers of templates and scopes required.
(d_print_free): Removed function.
(cplus_demangle_print_callback): Allocate stack for
templates and scopes. Removed call to d_print_free.
(d_copy_templates): Removed function.
(d_save_scope): New function.
(d_get_saved_scope): Likewise.
(d_print_comp): Replace state saving/restoring code with
calls to d_save_scope and d_get_saved_scope.
From-SVN: r206362
Martin Jambor [Mon, 6 Jan 2014 14:05:25 +0000 (15:05 +0100)]
re PR ipa/59008 (ICEs in try_make_edge_direct_simple_call / propagate_controlled_uses)
2014-01-06 Martin Jambor <mjambor@suse.cz>
PR ipa/59008
* ipa-cp.c (ipcp_discover_new_direct_edges): Changed param_index type
to int.
* ipa-prop.c (ipa_print_node_params): Fix indentation.
testsuite/
* gcc.dg/ipa/pr59008.c: New test.
From-SVN: r206361
Rainer Orth [Mon, 6 Jan 2014 13:56:53 +0000 (13:56 +0000)]
Clear hardware capabilities for gcc.dg/vect/vect-simd-clone-*.c
* gcc.dg/vect/vect.exp: Add clearcap_ldflags to DEFAULT_VECTCFLAGS
if supported.
From-SVN: r206360
Rainer Orth [Mon, 6 Jan 2014 13:45:29 +0000 (13:45 +0000)]
Correctly require C99 support in avx512f tests
* gcc.target/i386/avx512f-vcmppd-2.c: Add -std=c99.
Require c99_runtime.
* gcc.target/i386/avx512f-vcmpps-2.c: Likewise.
* gcc.target/i386/avx512f-vfixupimmpd-2.c: Add -std=gnu99.
Require c99_runtime.
* gcc.target/i386/avx512f-vfixupimmps-2.c: Likewise.
* gcc.target/i386/avx512f-vfixupimmsd-2.c: Likewise.
* gcc.target/i386/avx512f-vfixupimmss-2.c: Likewise.
* gcc.target/i386/avx512f-vgetmantpd-2.c: Add -std=c99.
Require c99_runtime.
Make CALC void static.
* gcc.target/i386/avx512f-vgetmantps-2.c: Likewise.
* gcc.target/i386/avx512f-vgetmantsd-2.c: Add -std=c99.
Require c99_runtime.
* gcc.target/i386/avx512f-vgetmantss-2.c: Likewise.
From-SVN: r206359
Rainer Orth [Mon, 6 Jan 2014 13:35:07 +0000 (13:35 +0000)]
Require avx in gcc.target/i386/pr59501-*.c
* gcc.target/i386/pr59501-1.c: Require avx effective target.
* gcc.target/i386/pr59501-2.c: Likewise.
* gcc.target/i386/pr59501-3.c: Likewise.
* gcc.target/i386/pr59501-4.c: Likewise.
* gcc.target/i386/pr59501-5.c: Likewise.
* gcc.target/i386/pr59501-6.c: Likewise.
From-SVN: r206358
Rainer Orth [Mon, 6 Jan 2014 13:22:59 +0000 (13:22 +0000)]
Declare fma in gcc.target/i386/pr59390.c
* gcc.target/i386/pr59390.c: Replace math.h by fma declaration.
* gcc.target/i386/pr59390_1.c: Likewise.
* gcc.target/i386/pr59390_2.c: Likewise.
From-SVN: r206357
Eric Botcazou [Mon, 6 Jan 2014 11:39:41 +0000 (11:39 +0000)]
re PR debug/59350 (ICE: in vt_expand_var_loc_chain, at var-tracking.c:8212)
PR debug/59350
PR debug/59510
* var-tracking.c (add_stores): Preserve the value of the source even if
we don't record the store.
From-SVN: r206356
Janus Weil [Mon, 6 Jan 2014 11:31:34 +0000 (12:31 +0100)]
re PR fortran/59023 (ICE in gfc_search_interface with BIND(C))
2014-01-06 Janus Weil <janus@gcc.gnu.org>
PR fortran/59023
PR fortran/59662
* resolve.c (resolve_global_procedure): Don't apply to c-binding
procedures.
(gfc_verify_binding_labels): Remove duplicate line.
2014-01-06 Janus Weil <janus@gcc.gnu.org>
PR fortran/59023
* gfortran.dg/bind_c_procs_2.f90: New.
From-SVN: r206355
Terry Guo [Mon, 6 Jan 2014 08:16:30 +0000 (08:16 +0000)]
config.gcc (arm*-*-*): Check --with-arch against arm-arches.def.
2014-01-06 Terry Guo <terry.guo@arm.com>
* config.gcc (arm*-*-*): Check --with-arch against arm-arches.def.
From-SVN: r206354
Ian Lance Taylor [Mon, 6 Jan 2014 03:01:58 +0000 (03:01 +0000)]
runtime: Remove unused runtime_cpuid variables.
From-SVN: r206353
GCC Administrator [Mon, 6 Jan 2014 00:16:27 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r206351
Iain Sandoe [Sun, 5 Jan 2014 21:47:43 +0000 (21:47 +0000)]
re PR bootstrap/59541 (Revision 206070 breaks bootstrap on Darwin: config/darwin.c:3665:1: error: control reaches end of non-void function [-Werror=return-type])
gcc:
PR bootstrap/59541
* config/darwin.c (darwin_function_section): Adjust return values to
correspond to optimisation changes made in r206070.
From-SVN: r206348
John David Anglin [Sun, 5 Jan 2014 18:25:53 +0000 (18:25 +0000)]
reassoc-33.c: Don't run on hppa*-*-*.
* gcc.dg/tree-ssa/reassoc-33.c: Don't run on hppa*-*-*.
* gcc.dg/tree-ssa/reassoc-34.c: Likewise.
* gcc.dg/tree-ssa/reassoc-35.c: Likewise.
* gcc.dg/tree-ssa/reassoc-36.c: Likewise.
* gcc.dg/tree-ssa/forwprop-28.c: Skip compile on hppa*-*-*.
* gcc.dg/tree-ssa/vrp47.c: Likewise.
* gcc.dg/tree-ssa/vrp87.c: Likewise.
From-SVN: r206346
Uros Bizjak [Sun, 5 Jan 2014 15:42:07 +0000 (16:42 +0100)]
i386.c (ix86_data_alignment): Calculate max_align from prefetch_block tune setting.
* config/i386/i386.c (ix86_data_alignment): Calculate max_align
from prefetch_block tune setting.
(nocona_cost): Correct size of prefetch block to 64.
From-SVN: r206345
GCC Administrator [Sun, 5 Jan 2014 00:16:49 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r206340
Eric Botcazou [Sat, 4 Jan 2014 21:51:51 +0000 (21:51 +0000)]
arm.c (arm_get_frame_offsets): Revamp long lines.
* config/arm/arm.c (arm_get_frame_offsets): Revamp long lines.
(arm_expand_epilogue_apcs_frame): Take into account the number of bytes
used to save the static chain register in the computation of the offset
from which the FP registers need to be restored.
From-SVN: r206337
Jakub Jelinek [Sat, 4 Jan 2014 11:23:16 +0000 (12:23 +0100)]
re PR tree-optimization/59519 (ICE on valid code at -O3 on x86_64-linux-gnu in slpeel_update_phi_nodes_for_guard1, at tree-vect-loop-manip.c:486)
PR tree-optimization/59519
* tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't
ICE if get_current_def (current_new_name) is already non-NULL, as long
as it is a phi result of some other phi in *new_exit_bb that has
the same argument.
* gcc.dg/vect/pr59519-1.c: New test.
* gcc.dg/vect/pr59519-2.c: New test.
From-SVN: r206333
Jakub Jelinek [Sat, 4 Jan 2014 09:57:36 +0000 (10:57 +0100)]
sse.md (avx512f_load<mode>_mask): Emit vmovup{s,d} or vmovdqu* for misaligned_operand.
* config/i386/sse.md (avx512f_load<mode>_mask): Emit vmovup{s,d}
or vmovdqu* for misaligned_operand.
(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>,
<sse2_avx_avx512f>_loaddqu<mode><mask_name>): Handle <mask_applied>.
* config/i386/i386.c (ix86_expand_special_args_builtin): Set
aligned_mem for AVX512F masked aligned load and store builtins and for
non-temporal moves.
* gcc.target/i386/avx512f-vmovdqu32-1.c: Allow vmovdqu64 instead of
vmovdqu32.
From-SVN: r206332
Janus Weil [Sat, 4 Jan 2014 09:25:04 +0000 (10:25 +0100)]
re PR fortran/59547 ([OOP] Problem with using tbp specification function in multiple class procedures)
2014-01-04 Janus Weil <janus@gcc.gnu.org>
PR fortran/59547
* class.c (add_proc_comp): Copy pure attribute.
2014-01-04 Janus Weil <janus@gcc.gnu.org>
PR fortran/59547
* gfortran.dg/typebound_proc_32.f90: New.
From-SVN: r206331
GCC Administrator [Sat, 4 Jan 2014 00:16:56 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r206330
Marc Glisse [Fri, 3 Jan 2014 21:12:48 +0000 (22:12 +0100)]
re PR c++/58950 (Missing "statement has no effect")
2014-01-03 Marc Glisse <marc.glisse@inria.fr>
PR c++/58950
gcc/cp/
* cvt.c (convert_to_void): Handle VEC_PERM_EXPR and VEC_COND_EXPR.
gcc/testsuite/
* g++.dg/pr58950.C: New file.
From-SVN: r206325
Tobias Burnus [Fri, 3 Jan 2014 20:24:50 +0000 (21:24 +0100)]
re PR c++/58567 (ICE with invalid loop variable in template using openmp)
2014-01-03 Tobias Burnus <burnus@net-b.de>
PR c++/58567
* pt.c (tsubst_omp_for_iterator): Early return for
* error_mark_node.
2014-01-03 Tobias Burnus <burnus@net-b.de>
PR c++/58567
* g++.dg/gomp/pr58567.C: New.
From-SVN: r206322
Bingfeng Mei [Fri, 3 Jan 2014 15:40:57 +0000 (15:40 +0000)]
re PR tree-optimization/59651 (Vectorizer failing to spot dependence causes incorrect code generation.)
2014-01-03 Bingfeng Mei <bmei@broadcom.com>
PR tree-optimization/59651
* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
Address range for negative step should be added by TYPE_SIZE_UNIT.
PR tree-optimization/59651
* gcc.dg/torture/pr59651.c: New test.
* gcc.dg/vect/pr59651.c: Ditto.
From-SVN: r206319
Andreas Schwab [Fri, 3 Jan 2014 13:57:45 +0000 (13:57 +0000)]
m68k.c (handle_move_double): Handle pushes with overlapping registers also for registers other than the...
* config/m68k/m68k.c (handle_move_double): Handle pushes with
overlapping registers also for registers other than the stack
pointer.
From-SVN: r206317
Marek Polacek [Fri, 3 Jan 2014 12:28:31 +0000 (12:28 +0000)]
re PR other/59661 (documentation: __builtin_FUNCTION / _FILE listed as returning int)
PR other/59661
* doc/extend.texi: Fix the return value of __builtin_FUNCTION and
__builtin_FILE.
From-SVN: r206315
Jakub Jelinek [Fri, 3 Jan 2014 12:22:17 +0000 (13:22 +0100)]
re PR target/59625 (asm goto and TARGET_FOUR_JUMP_LIMIT)
PR target/59625
* config/i386/i386.c (ix86_avoid_jump_mispredicts): Don't consider
asm goto as jump.
* gcc.target/i386/pr59625.c: New test.
From-SVN: r206314
Paolo Carlini [Fri, 3 Jan 2014 11:11:31 +0000 (11:11 +0000)]
Core DR 1442 PR c++/59165
/cp
2014-01-03 Paolo Carlini <paolo.carlini@oracle.com>
Core DR 1442
PR c++/59165
* parser.c (cp_parser_perform_range_for_lookup): Don't pass true
as include_std to perform_koenig_lookup.
(cp_parser_postfix_expression): Adjust.
* pt.c (tsubst_copy_and_build): Likewise.
* semantics.c (perform_koenig_lookup): Remove bool parameter.
(omp_reduction_lookup): Adjust.
* name-lookup.c (lookup_arg_dependent_1): Remove bool parameter.
(lookup_arg_dependent): Likewise.
(lookup_function_nonclass): Adjust.
* name-lookup.h: Adjust declaration.
* cp-tree.h: Likewise.
/testsuite
2014-01-03 Paolo Carlini <paolo.carlini@oracle.com>
Core DR 1442
PR c++/59165
* g++.dg/cpp0x/range-for28.C: New.
* g++.dg/cpp0x/range-for3.C: Update.
From-SVN: r206313
Jakub Jelinek [Fri, 3 Jan 2014 10:51:42 +0000 (11:51 +0100)]
i386.md (MODE_SIZE): New mode attribute.
* config/i386/i386.md (MODE_SIZE): New mode attribute.
(push splitter): Use <P:MODE_SIZE> instead of
GET_MODE_SIZE (<P:MODE>mode).
(lea splitter): Use <MODE_SIZE> instead of GET_MODE_SIZE (<MODE>mode).
(mov -1, reg peephole2): Likewise.
* config/i386/sse.md (*mov<mode>_internal,
<sse>_storeu<ssemodesuffix><avxsizesuffix>,
<sse2_avx_avx512f>_storedqu<mode>, <sse>_andnot<mode>3,
*<code><mode>3, *andnot<mode>3<mask_name>,
<mask_codefor><code><mode>3<mask_name>): Likewise.
* config/i386/subst.md (mask_mode512bit_condition,
sd_mask_mode512bit_condition): Likewise.
From-SVN: r206312