platform/upstream/linaro-gcc.git
9 years ago * config/i386/i386.md (fmodxf3): Enable for flag_finite_math_only only.
uros [Tue, 30 Sep 2014 18:25:19 +0000 (18:25 +0000)]
* config/i386/i386.md (fmodxf3): Enable for flag_finite_math_only only.
(fmod<mode>3): Ditto.
(fpremxf4_i387): Ditto.
(reminderxf3): Ditto.
(reminder<mode>3): Ditto.
(fprem1xf4_i387): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215740 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRedesign jump threading profile updates to avoid introducing insanities.
tejohnson [Tue, 30 Sep 2014 18:19:59 +0000 (18:19 +0000)]
Redesign jump threading profile updates to avoid introducing insanities.

gcc:

2014-09-30  Teresa Johnson  <tejohnson@google.com>

* tree-ssa-threadupdate.c (struct ssa_local_info_t): New
duplicate_blocks bitmap.
(remove_ctrl_stmt_and_useless_edges): Ditto.
(create_block_for_threading): Ditto.
(compute_path_counts): New function.
(update_profile): Ditto.
(recompute_probabilities): Ditto.
(update_joiner_offpath_counts): Ditto.
(freqs_to_counts_path): Ditto.
(clear_counts_path): Ditto.
(ssa_fix_duplicate_block_edges): Update profile info.
(ssa_create_duplicates): Pass new parameter.
(ssa_redirect_edges): Remove old profile update.
(thread_block_1): New duplicate_blocks bitmap,
remove old profile update.
(thread_single_edge): Pass new parameter.

gcc/testsuite:

2014-09-30  Teresa Johnson  <tejohnson@google.com>

* testsuite/gcc.dg/tree-prof/20050826-2.c: New test.
* testsuite/gcc.dg/tree-prof/cmpsf-1.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215739 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoc-family/
jason [Tue, 30 Sep 2014 17:13:10 +0000 (17:13 +0000)]
c-family/
* c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and
RID_IS_TRIVIALLY_CONSTRUCTIBLE.
* c-common.c (c_common_reswords): Add __is_trivially_copyable.
cp/
* cp-tree.h (cp_trait_kind): Add CPTK_IS_TRIVIALLY_ASSIGNABLE and
CPTK_IS_TRIVIALLY_CONSTRUCTIBLE.
* cxx-pretty-print.c (pp_cxx_trait_expression): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
(cp_parser_trait_expr): Likewise.  Handle variadic trait.
* semantics.c (trait_expr_value): Likewise.
(finish_trait_expr): Likewise.
(check_trait_type): Handle variadic trait.  Return bool.
* method.c (build_stub_object): Add rvalue reference here.
(locate_fn_flags): Not here.
(check_nontriv, assignable_expr, constructible_expr): New.
(is_trivially_xible): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215738 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoc-family/
jason [Tue, 30 Sep 2014 17:12:49 +0000 (17:12 +0000)]
c-family/
* c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.
* c-common.c (c_common_reswords): Add __is_trivially_copyable.
cp/
* cp-tree.h (cp_trait_kind): Add CPTK_IS_TRIVIALLY_COPYABLE.
* cxx-pretty-print.c (pp_cxx_trait_expression): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
(cp_parser_trait_expr): Likewise.
* semantics.c (trait_expr_value): Likewise.
(finish_trait_expr): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215737 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * method.c (build_stub_object): Use CONVERT_EXPR.
jason [Tue, 30 Sep 2014 17:12:29 +0000 (17:12 +0000)]
* method.c (build_stub_object): Use CONVERT_EXPR.
* tree.c (build_dummy_object): Likewise.
(is_dummy_object): Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215736 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoc-family/
jason [Tue, 30 Sep 2014 17:12:06 +0000 (17:12 +0000)]
c-family/
* c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.
* c-common.c (c_common_reswords): Remove __is_convertible_to.
cp/
* cp-tree.h (cp_trait_kind): Remove CPTK_IS_CONVERTIBLE_TO.
* cxx-pretty-print.c (pp_cxx_trait_expression): Likewise.
* semantics.c (trait_expr_value): Likewise.
(finish_trait_expr): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
(cp_parser_trait_expr): Likewise. Remove redundant grokdeclarator.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215735 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocp/
paolo [Tue, 30 Sep 2014 17:11:38 +0000 (17:11 +0000)]
cp/
2014-09-30  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR c++/16564
       * error.c (print_instantiation_context): Delete.
       * typeck2.c (build_x_arrow): Record location when pushing
       template instantiation.
       * pt.c (push_tinst_level): Make it a wrapper around ...
       (push_tinst_level_loc): ... this. New function. Make excessive
       template instantiation depth a fatal error. Record location. Use
       bool as return type.
       (instantiate_pending_templates): Make excessive
       template instantiation depth a fatal error.
       (problematic_instantiation_changed): Use bool as return type.
       * cp-tree.h (print_instantiation_context): Delete.
       (push_tinst_level): Update declaration.
       (problematic_instantiation_changed): Likewise.
       (push_tinst_level_loc): New.

testsuite/
2014-09-30  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR c++/16564
       * lib/gcc.exp: Accept "fatal error:" as error prefix.
       * lib/g++.exp: Likewise.
       * lib/obj-c++.exp: Likewise.
       * lib/objc.exp: Likewise.
       * g++.dg/template/pr16564.C: New test.

2014-09-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/16564
* g++.dg/cpp0x/decltype26.C: Adjust.
* g++.dg/cpp0x/decltype28.C: Likewise.
* g++.dg/cpp0x/decltype29.C: Likewise.
* g++.dg/cpp0x/decltype32.C: Likewise.
* g++.dg/cpp0x/enum11.C: Likewise.
* g++.dg/template/arrow1.C: Likewise.
* g++.dg/template/pr23510.C: Likewise.
* g++.dg/template/recurse.C: Likewise.
* g++.dg/template/recurse2.C: Likewise.
* g++.dg/template/vtable2.C: Likewise.
* g++.old-deja/g++.pt/infinite1.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215734 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocp/
paolo [Tue, 30 Sep 2014 17:10:35 +0000 (17:10 +0000)]
cp/
2014-09-30  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR c++/16564
       * error.c (print_instantiation_context): Delete.
       * typeck2.c (build_x_arrow): Record location when pushing
       template instantiation.
       * pt.c (push_tinst_level): Make it a wrapper around ...
       (push_tinst_level_loc): ... this. New function. Make excessive
       template instantiation depth a fatal error. Record location. Use
       bool as return type.
       (instantiate_pending_templates): Make excessive
       template instantiation depth a fatal error.
       (problematic_instantiation_changed): Use bool as return type.
       * cp-tree.h (print_instantiation_context): Delete.
       (push_tinst_level): Update declaration.
       (problematic_instantiation_changed): Likewise.
       (push_tinst_level_loc): New.

testsuite/
2014-09-30  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR c++/16564
       * lib/gcc.exp: Accept "fatal error:" as error prefix.
       * lib/g++.exp: Likewise.
       * lib/obj-c++.exp: Likewise.
       * lib/objc.exp: Likewise.
       * g++.dg/template/pr16564.C: New test.

2014-09-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/16564
* g++.dg/cpp0x/decltype26.C: Adjust.
* g++.dg/cpp0x/decltype28.C: Likewise.
* g++.dg/cpp0x/decltype29.C: Likewise.
* g++.dg/cpp0x/decltype32.C: Likewise.
* g++.dg/cpp0x/enum11.C: Likewise.
* g++.dg/template/arrow1.C: Likewise.
* g++.dg/template/pr23510.C: Likewise.
* g++.dg/template/recurse.C: Likewise.
* g++.dg/template/recurse2.C: Likewise.
* g++.dg/template/vtable2.C: Likewise.
* g++.old-deja/g++.pt/infinite1.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215733 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-30 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Tue, 30 Sep 2014 16:08:53 +0000 (16:08 +0000)]
2014-09-30  Bernd Edlinger  <bernd.edlinger@hotmail.de>

PR preprocessor/58893
* errors.c (cpp_diagnostic): Fix possible out of bounds access.
* files.c (_cpp_stack_include): Initialize src_loc for IT_CMDLINE.

testsuite:
2014-09-30  Bernd Edlinger  <bernd.edlinger@hotmail.de>

PR preprocessor/58893
* gcc.dg/pr58893.c: New test case.
* gcc.dg/pr58893-0.h: New include.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215730 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix PR 62120.
tocarip [Tue, 30 Sep 2014 16:04:15 +0000 (16:04 +0000)]
Fix PR 62120.

gcc/
2014-09-30  Ilya Tocar  <ilya.tocar@intel.com>

       PR middle-end/62120
       * varasm.c (decode_reg_name_and_count): Check availability for
       registers from ADDITIONAL_REGISTER_NAMES.

testsuite/
2014-09-30  Ilya Tocar  <ilya.tocar@intel.com>

       PR middle-end/62120
       * gcc.target/i386/avx512f-additional-reg-names.c: Use register valid
       in 32-bit mode.
       * gcc.target/i386/pr62120.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215729 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR plugins/63410: Fix missing headers for plugins
dmalcolm [Tue, 30 Sep 2014 15:41:11 +0000 (15:41 +0000)]
PR plugins/63410: Fix missing headers for plugins

gcc/
PR plugins/63410
* Makefile.in (PRETTY_PRINT_H): Add wide-int-print.h.
(PLUGIN_HEADERS): Add pass-instances.def.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215727 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-30 Siva Chandra Reddy <sivachandra@google.com>
redi [Tue, 30 Sep 2014 15:33:27 +0000 (15:33 +0000)]
2014-09-30  Siva Chandra Reddy  <sivachandra@google.com>

* python/hook.in: Only import libstdcxx.v6.
* python/libstdcxx/v6/__init__.py: Load printers and xmethods.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215726 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix ChangeLog entry for r215715 (Take 2).
jgreenhalgh [Tue, 30 Sep 2014 14:07:17 +0000 (14:07 +0000)]
Fix ChangeLog entry for r215715 (Take 2).

There should be two spaces between the name and email address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215724 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix ChangeLog entry for r215715.
jgreenhalgh [Tue, 30 Sep 2014 13:59:57 +0000 (13:59 +0000)]
Fix ChangeLog entry for r215715.

ChangeLog dates should be YYYY-MM-DD.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215723 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Wire up vqdmullh_laneq_s16 and vqdmullh_laneq_s32
jgreenhalgh [Tue, 30 Sep 2014 13:58:25 +0000 (13:58 +0000)]
[AArch64] Wire up vqdmullh_laneq_s16 and vqdmullh_laneq_s32

gcc/

* config/aarch64/aarch64-simd-builtins.def (sqdmull_laneq): Expand
iterator.
* config/aarch64/aarch64-simd.md
(aarch64_sqdmull_laneq<mode>): Expand iterator.
* config/aarch64/arm_neon.h (vqdmullh_laneq_s16): New.
(vqdmulls_lane_s32): Fix return type.
(vqdmulls_laneq_s32): New.

gcc/testsuite/

* gcc.target/aarch64/simd/vqdmullh_laneq_s16.c: New.
* gcc.target/aarch64/simd/vqdmulls_laneq_s32.c: Likewise.
* gcc.target/aarch64/simd/vqdmulls_lane_s32.c: Fix return type.
* gcc.target/aarch64/scalar_intrinsics.c (test_vqdmulls_s32):  Fix
return type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215722 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-30-09 Dominique d'Humieres <dominiq@lps.ens.fr>
dominiq [Tue, 30 Sep 2014 10:55:20 +0000 (10:55 +0000)]
2014-30-09  Dominique d'Humieres <dominiq@lps.ens.fr>

* gfortran.dg/coarray_collectives_9.f90: Fix some dg-error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215715 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR inline-asm/63282
jakub [Tue, 30 Sep 2014 10:30:45 +0000 (10:30 +0000)]
PR inline-asm/63282
* ifcvt.c (dead_or_predicable): Don't call redirect_jump_1
or invert_jump_1 if jump isn't any_condjump_p.

* gcc.c-torture/compile/pr63282.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215712 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-30 Terry Guo <terry.guo@arm.com>
xguo [Tue, 30 Sep 2014 10:02:39 +0000 (10:02 +0000)]
2014-09-30  Terry Guo  <terry.guo@arm.com>

* config/arm/arm-cores.def (cortex-m7): New core name.
* config/arm/arm-fpus.def (fpv5-sp-d16): New fpu name.
(fpv5-d16): Ditto.
* config/arm/arm-tables.opt: Regenerated.
* config/arm/arm-tune.md: Regenerated.
* config/arm/arm.h (TARGET_VFP5): New macro.
* config/arm/bpabi.h (BE8_LINK_SPEC): Include cortex-m7.
* config/arm/vfp.md (<vrint_pattern><SDF:mode>2,
smax<mode>3, smin<mode>3): Enabled for FPU FPv5.
* doc/invoke.texi: Document new cpu and fpu names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215711 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/xml/manual/status_cxx2011.xml: Update.
redi [Tue, 30 Sep 2014 09:24:53 +0000 (09:24 +0000)]
* doc/xml/manual/status_cxx2011.xml: Update.
* doc/html/manual/status.html: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215710 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoShould not sink instructions which may cause trap
jiwang [Tue, 30 Sep 2014 08:44:14 +0000 (08:44 +0000)]
Should not sink instructions which may cause trap

2014-09-30  Jiong Wang  <jiong.wang@arm.com>

  gcc/
    * shrink-wrap.c (move_insn_for_shrink_wrap): Check "can_throw_internal"
    before sinking insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215709 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Tue, 30 Sep 2014 08:04:32 +0000 (08:04 +0000)]
gcc/
2014-09-26  David Sherwood  <david.sherwood@arm.com>

* ira-int.h (ira_allocno): Add "wmode" field.
* ira-build.c (create_insn_allocnos): Add new "parent" function
parameter.
* ira-conflicts.c (ira_build_conflicts): Add conflicts for registers
that cannot be accessed in wmode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215707 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix signed integer overflow in data-streamer.c
trippels [Tue, 30 Sep 2014 07:07:55 +0000 (07:07 +0000)]
Fix signed integer overflow in data-streamer.c

Running the testsuite with a -fsanitize=undefined instrumented compiler
shows:
 % gcc -O2 -flto -fno-use-linker-plugin -flto-partition=none testsuite/gcc.dg/torture/pr28045.c
gcc/data-streamer.c:113:45: runtime error: negation of -9223372036854775808 cannot be represented in type 'long int'; cast to an unsigned type to negate this value to itself

The fix is obvious.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215706 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMake -Q --help print param defaults and min/max values
ak [Tue, 30 Sep 2014 04:10:12 +0000 (04:10 +0000)]
Make -Q --help print param defaults and min/max values

Make -Q --help print the --param default, min, max values, similar
to how it does print the defaults for other flags. This is useful
to let a option auto tuner automatically query all needed information
abourt gcc params (previously it needed to access the .def file in
the source)

gcc/:

2014-09-29  Andi Kleen  <ak@linux.intel.com>

* opts.c (print_filtered_help): Print --param min/max/default
with -Q.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215704 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Tue, 30 Sep 2014 00:16:56 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215702 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibgo/configure: Use -Qunused-arguments for asm tests if supported.
ian [Mon, 29 Sep 2014 23:37:27 +0000 (23:37 +0000)]
libgo/configure: Use -Qunused-arguments for asm tests if supported.

This supports clang, which by default issues warnings about
unused command line arguments, a habit that interacts poorly
with configure scripts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215699 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* config/sh/sh.md: Use define_c_enum for "unspec" and "unspecv".
kkojima [Mon, 29 Sep 2014 23:13:32 +0000 (23:13 +0000)]
* config/sh/sh.md: Use define_c_enum for "unspec" and "unspecv".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215698 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * tree-vrp.c (get_single_symbol): New function.
ebotcazou [Mon, 29 Sep 2014 23:01:17 +0000 (23:01 +0000)]
* tree-vrp.c (get_single_symbol): New function.
(build_symbolic_expr): Likewise.
(symbolic_range_based_on_p): New predicate.
(extract_range_from_binary_expr_1): Deal with single-symbolic ranges
for PLUS and MINUS.  Do not drop symbolic ranges at the end.
(extract_range_from_binary_expr): Try harder for PLUS and MINUS if
operand is symbolic and based on the other operand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215697 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
schwab [Mon, 29 Sep 2014 22:35:22 +0000 (22:35 +0000)]
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215696 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* configure.host (abi_baseline_pair): If try_cpu is generic use
schwab [Mon, 29 Sep 2014 22:33:41 +0000 (22:33 +0000)]
* configure.host (abi_baseline_pair): If try_cpu is generic use
host_cpu for the default.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215695 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-29 François Dumont <fdumont@gcc.gnu.org>
fdumont [Mon, 29 Sep 2014 21:22:17 +0000 (21:22 +0000)]
2014-09-29  François Dumont  <fdumont@gcc.gnu.org>

PR libstdc++/62313
* include/debug/safe_base.h
(_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
(_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
* include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
before _Safe_iterator_base in memory. Lock before modifying the iterator
in numerous places.
* include/debug/safe_local_iterator.h
(_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
declaration.
(_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
Likewise.
* include/debug/safe_unordered_base.h (_Safe_local_iterator<>):  Move
normal iterator before _Safe_iterator_base in memory. Lock before
modifying the iterator in numerous places.
* include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
* include/debug/safe_sequence.tcc
(_Safe_sequence<>::_M_transfer_from_if): Adapt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215693 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-29 François Dumont <fdumont@gcc.gnu.org>
fdumont [Mon, 29 Sep 2014 19:50:16 +0000 (19:50 +0000)]
2014-09-29  François Dumont  <fdumont@gcc.gnu.org>

* MAINTAINERS:  Add myself as libstdc++ special modes maintainer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215692 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-29 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
wschmidt [Mon, 29 Sep 2014 18:41:26 +0000 (18:41 +0000)]
2014-09-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

* gcc.dg/vmx/ops.c: Remove calls to vec_splat, vec_vsplth,
vec_vspltw, and vec_vspltb for which the second argument is out of
range.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215691 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix ICE. Need use VOID instead of SI, or when real VOIDmode comes, it does not
eager [Mon, 29 Sep 2014 16:40:10 +0000 (16:40 +0000)]
Fix ICE.  Need use VOID instead of SI, or when real VOIDmode comes, it does not
match SImode, so cause issue.

2014-09-25  Chen Gang  <gang.chen.5i5j@gmail.com>

gcc:
* config/microblaze/microblaze.md (call_internal1): Use VOID
instead of SI to fix "((void (*)(void)) 0)()" issue
gcc/testsuite:
* gcc.c-torture/compile/calls-void.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215684 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/msp430/msp430.c (msp430_expand_prologue): Return a
nickc [Mon, 29 Sep 2014 16:00:58 +0000 (16:00 +0000)]
* config/msp430/msp430.c (msp430_expand_prologue): Return a
CLOBBER rtx for naked functions.
(msp430_expand_epilogue): Likewise.
(msp430_use_f5_series_hwmult): Cache result.
(use_32bit_hwmult): Cache result.
(msp430_no_hwmult): New function.
(msp430_output_labelref): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215683 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-29 Catherine Moore <clm@codesourcery.com>
clm [Mon, 29 Sep 2014 13:08:53 +0000 (13:08 +0000)]
2014-09-29  Catherine Moore  <clm@codesourcery.com>

* MAINTAINERS:  Add myself as MIPS maintainer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215682 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-29 Richard Biener <rguenther@suse.de>
rguenth [Mon, 29 Sep 2014 10:42:16 +0000 (10:42 +0000)]
2014-09-29  Richard Biener  <rguenther@suse.de>

cp/
* typeck.c (enum_cast_to_int): Use CONVERT_EXPR_P to check
for conversions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215681 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-29 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 29 Sep 2014 09:06:31 +0000 (09:06 +0000)]
2014-09-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51385
* g++.dg/template/pr51385.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215680 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR middle-end/63247
jakub [Mon, 29 Sep 2014 05:20:52 +0000 (05:20 +0000)]
PR middle-end/63247
* omp-low.c (lower_omp_target): For OMP_CLAUSE_MAP_POINTER
of ARRAY_TYPE, if not OMP_CLAUSE_MAP_ZERO_BIAS_ARRAY_SECTION
use the alignment of avar rather than ovar.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215678 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Mon, 29 Sep 2014 00:16:27 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215675 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/pa/pa.c (pa_output_function_epilogue): Only update
danglin [Sun, 28 Sep 2014 15:39:23 +0000 (15:39 +0000)]
* config/pa/pa.c (pa_output_function_epilogue): Only update
last_address when a nonnote insn is found.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215669 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoUpdate MIPS maintainers.
mpf [Sun, 28 Sep 2014 09:03:18 +0000 (09:03 +0000)]
Update MIPS maintainers.

/

* MAINTAINERS: Move myself to MIPS maintainers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215664 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoTest to cover LRA fix in r215119.
mpf [Sun, 28 Sep 2014 08:54:36 +0000 (08:54 +0000)]
Test to cover LRA fix in r215119.

gcc/testsuite/

* gcc.target/mips/20140928.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215663 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sun, 28 Sep 2014 00:16:45 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215662 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRun new mcount tests only on Linux and not on PIC
ak [Sat, 27 Sep 2014 18:50:59 +0000 (18:50 +0000)]
Run new mcount tests only on Linux and not on PIC

gcc/testsuite/:

2014-09-27  Andi Kleen  <ak@linux.intel.com>

* gcc.target/i386/nop-mcount.c: Only run on Linux.
* gcc.target/i386/record-mcount.c: dito.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215659 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-23 Jan-Benedict Glaw <jbglaw@lug-owl.de>
jbglaw [Sat, 27 Sep 2014 11:51:20 +0000 (11:51 +0000)]
2014-09-23  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* MAINTAINERS: Put all email addresses between '<' and '>'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215657 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR ipa/60665
hubicka [Sat, 27 Sep 2014 00:21:33 +0000 (00:21 +0000)]
PR ipa/60665
* ipa-devirt.c (possible_polymorphic_call_targets): Silence clang warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215656 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR ipa/62121
hubicka [Sat, 27 Sep 2014 00:19:06 +0000 (00:19 +0000)]
PR ipa/62121
* ipa-polymorphic-call.c (ipa_polymorphic_call_context::restrict_to_inner_class):
fix pasto in checking array size.

* g++.dg/torture/pr62121.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215655 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sat, 27 Sep 2014 00:16:37 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215654 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR middle-end/35545
hubicka [Sat, 27 Sep 2014 00:03:23 +0000 (00:03 +0000)]
PR middle-end/35545
* passes.def (pass_tracer): Move before last dominator pass.
* g++.dg/tree-prof/pr35545.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215651 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/cp/
jason [Fri, 26 Sep 2014 19:57:37 +0000 (19:57 +0000)]
gcc/cp/
* mangle.c (is_std_substitution): Check for abi_tag.
libiberty/
* cp-demangle.c (d_substitution): Handle abi tags on abbreviation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215647 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-26 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Fri, 26 Sep 2014 19:28:36 +0000 (19:28 +0000)]
2014-09-26  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/pr63335.c: Change effective target to
vsx_hw.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215646 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoSkip gcc.target/i386/shrink_wrap_1.c on ia32
hjl [Fri, 26 Sep 2014 15:27:01 +0000 (15:27 +0000)]
Skip gcc.target/i386/shrink_wrap_1.c on ia32

* gcc.target/i386/shrink_wrap_1.c: Skip ia32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215645 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix -freport-bug patch.
tschwinge [Fri, 26 Sep 2014 13:43:34 +0000 (13:43 +0000)]
Fix -freport-bug patch.

gcc/
* gcc.c (try_generate_repro): Remove argument "prog".  Change all
users.
(run_attempt): Handle errors of "pex_run" invocation.

Fixes bootstrap failure/compiler warnings:

    [...]
    ../../master/gcc/gcc.c: In function 'attempt_status run_attempt(const char**, const char*, const char*, int, int)':
    ../../master/gcc/gcc.c:6319:15: error: variable 'errmsg' set but not used [-Werror=unused-but-set-variable]
       const char *errmsg;
                   ^
    ../../master/gcc/gcc.c: At global scope:
    ../../master/gcc/gcc.c:6412:33: error: unused parameter 'prog' [-Werror=unused-parameter]
     try_generate_repro (const char *prog, const char **argv)
                                     ^
    cc1plus: all warnings being treated as errors
    Makefile:1040: recipe for target 'gcc.o' failed
    make[3]: *** [gcc.o] Error 1
    make[3]: Leaving directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build/gcc'
    Makefile:4285: recipe for target 'all-stage2-gcc' failed
    make[2]: *** [all-stage2-gcc] Error 2
    make[2]: Leaving directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build'
    Makefile:21561: recipe for target 'stage2-bubble' failed
    make[1]: *** [stage2-bubble] Error 2
    make[1]: Leaving directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build'
    Makefile:892: recipe for target 'all' failed
    make: *** [all] Error 2

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215644 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-26 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Fri, 26 Sep 2014 13:07:42 +0000 (13:07 +0000)]
2014-09-26  Christophe Lyon  <christophe.lyon@linaro.org>

[AArch64] Enable Address Sanitizer.

gcc/
* config/aarch64/aarch64-linux.h (ASAN_CC1_SPEC): Define.
        (CC1_SPEC): Define.
        * config/aarch64/aarch64.c (aarch64_asan_shadow_offset): New function.
        (TARGET_ASAN_SHADOW_OFFSET): Define.

libsanitzer/
* configure.tgt: Enable build on aarch64*-linux.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215642 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * cgraph.c (cgraph_node::release_body): New argument keep_arguments
marxin [Fri, 26 Sep 2014 10:37:44 +0000 (10:37 +0000)]
* cgraph.c (cgraph_node::release_body): New argument keep_arguments
introduced.
* cgraph.h: Likewise.
* cgraphunit.c (cgraph_node::create_wrapper): Usage of new argument introduced.
* ipa-utils.h (polymorphic_type_binfo_p): Safe check for binfos created by Java.
* tree-ssa-alias.c (ao_ref_base_alias_set): Static function transformed to global.
* tree-ssa-alias.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215640 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * g++.dg/compat/struct-layout-1_generate.c: Add -Wno-abi
jakub [Fri, 26 Sep 2014 08:34:19 +0000 (08:34 +0000)]
* g++.dg/compat/struct-layout-1_generate.c: Add -Wno-abi
to default options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215635 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
chefmax [Fri, 26 Sep 2014 08:03:09 +0000 (08:03 +0000)]
gcc/

2014-09-26  Jakub Jelinek  <jakub@redhat.com>
    Max Ostapenko  <m.ostapenko@partner.samsung.com>

* common.opt: New option.
* doc/invoke.texi: Describe new option.
* gcc.c (execute): Don't free first string early, but at the end
of the function.  Call retry_ice if compiler exited with
ICE_EXIT_CODE.
(main): Factor out common code.
(print_configuration): New function.
(files_equal_p): Likewise.
(check_repro): Likewise.
(run_attempt): Likewise.
(do_report_bug): Likewise.
(append_text): Likewise.
(try_generate_repro): Likewise

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215633 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/
chefmax [Fri, 26 Sep 2014 07:58:04 +0000 (07:58 +0000)]
libiberty/

2014-09-26  Max Ostapenko  <m.ostapenko@partner.samsung.com>

* pex-common.h (struct pex_funcs): Add new parameter for open_write field.
* pex-unix.c (pex_unix_open_write): Add support for new parameter.
* pex-djgpp.c (pex_djgpp_open_write): Likewise.
* pex-win32.c (pex_win32_open_write): Likewise.
* pex-common.c (pex_run_in_environment): Likewise.

include/

2014-09-26  Max Ostapenko  <m.ostapenko@partner.samsung.com>

* libiberty.h (PEX_STDOUT_APPEND): New flag.
(PEX_STDERR_APPEND): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215632 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd direct support for Linux kernel __fentry__ patching
ak [Fri, 26 Sep 2014 04:06:40 +0000 (04:06 +0000)]
Add direct support for Linux kernel __fentry__ patching

The Linux kernel dynamically patches in __fentry__ calls in and
out at runtime. This allows using function tracing for debugging
in production kernels without (significant) performance penalty.

For this it needs a table pointing to each __fentry__ call.

The way it is currently implemented is that a special
perl script scans the object file, generates the table in a special
section. When the kernel boots up it nops the calls, and
then later patches in the calls again as needed.

The recordmcount.pl script in the kernel works, but it seems
cleaner and faster to support the code generation of the patch table
directly in gcc.

This also allows to nop the calls directly at code generation
time, which allows to skip a patching step at kernel boot.
I also expect that a patchable production tracing facility is also useful
for other applications.

For example it could be used in ftracer
(https://github.com/andikleen/ftracer)

Having a nop area at the beginning of each function can be also
also useful for other things. For example it can be used to patch
functions at runtime to point to different functions, to do
binary updates without restarting the program (like ksplice or
similar)

This patch implements two new options for the i386 target:

-mrecord-mcount
Generate a __mcount_loc section entry for each __fentry__ or mcount
call. The section is compatible with the kernel convention
and the data is put into a section loaded at runtime.

-mnop-mcount
Generate the mcount/__fentry__ call as 5 byte nop that can be
patched in later. The nop is generated as a single instruction,
as the Linux kernel run time patching relies on this.

Limitations:
- I didn't implement -mnop-mcount for -fPIC. This
would need a good single instruction 6 byte NOP and it seems a
bit pointless, as the patching would prevent text sharing.
- I didn't implement noping for targets that pass a variable
to mcount.
- The facility could be useful on architectures too. Currently
the mcount code is target specific, so I made it a i386 option.

gcc/:

2014-09-25  Andi Kleen  <ak@linux.intel.com>

* config/i386/i386.c (x86_print_call_or_nop): New function.
(x86_function_profiler): Support -mnop-mcount and
-mrecord-mcount.
* config/i386/i386.opt (-mnop-mcount, -mrecord-mcount): Add
* doc/invoke.texi: Document -mnop-mcount, -mrecord-mcount.

gcc/testsuite:

2014-09-25  Andi Kleen  <ak@linux.intel.com>

* gcc.target/i386/nop-mcount.c: New file.
* gcc.target/i386/record-mcount.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215629 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-prop.c (ipa_intraprocedural_devirtualization): Remove.
hubicka [Fri, 26 Sep 2014 01:49:40 +0000 (01:49 +0000)]
* ipa-prop.c (ipa_intraprocedural_devirtualization): Remove.
* ipa-prop.h (ipa_intraprocedural_devirtualization): Remove.
* tree-ssa-prop.c (eliminate_dom_walker::before_dom_children):
Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215628 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-25 Sandra Loosemore <sandra@codesourcery.com>
sandra [Fri, 26 Sep 2014 00:51:26 +0000 (00:51 +0000)]
2014-09-25  Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* gcc.dg/vect/pr56933.c: Don't specify "dg-do run" explicitly.
* gcc.dg/vect/pr57705.c: Likewise.
* gcc.dg/vect/pr57741-2.c: Likewise.
* gcc.dg/vect/pr57741-3.c: Likewise.
* gcc.dg/vect/pr59591-1.c: Likewise.
* gcc.dg/vect/pr59591-2.c: Likewise.
* gcc.dg/vect/pr60196-1.c: Likewise.
* gcc.dg/vect/pr60196-2.c: Likewise.
* gcc.dg/vect/pr60276.c: Likewise.
* gcc.dg/vect/pr61680.c: Likewise.
* gcc.dg/vect/pr63148.c: Likewise.
* gcc.dg/vect/pr63189.c: Likewise.
* gcc.dg/vect/vect-mask-load-1.c: Likewise.
* gcc.dg/vect/vect-mask-loadstore-1.c: Likewise.
* gcc.dg/vect/vect-nop-move.c: Likewise.
* gcc.dg/vect/vect-simd-clone-10.c: Likewise.
* gcc.dg/vect/vect-simd-clone-12.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215627 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Fri, 26 Sep 2014 00:16:44 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215626 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-utils.h (subbinfo_with_vtable_at_offset, type_all_derivations_known_p,
hubicka [Thu, 25 Sep 2014 19:52:20 +0000 (19:52 +0000)]
* ipa-utils.h (subbinfo_with_vtable_at_offset, type_all_derivations_known_p,
type_known_to_have_no_deriavations_p, types_must_be_same_for_odr,
types_odr_comparable): Declare.
(polymorphic_type_binfo_p): Move here from ipa-devirt.c
* ipa-polymorphic-call.c: New file.
(contains_polymorphic_type_p, possible_placement_new,
ipa_polymorphic_call_context::restrict_to_inner_class,
contains_type_p, decl_maybe_in_construction_p,
ipa_polymorphic_call_context::stream_out,
ipa_polymorphic_call_context::debug,
ipa_polymorphic_call_context::stream_in,
ipa_polymorphic_call_context::set_by_decl,
ipa_polymorphic_call_context::set_by_invariant,
walk_ssa_copies,
ipa_polymorphic_call_context::ipa_polymorphic_call_context,
type_change_info, noncall_stmt_may_be_vtbl_ptr_store,
extr_type_from_vtbl_ptr_store, record_known_type
check_stmt_for_type_change,
ipa_polymorphic_call_context::get_dynamic_type): Move here from
ipa-devirt.c
* ipa-devirt.c: No longer include data-streamer.h, lto-streamer.h
and streamer-hooks.h
(contains_polymorphic_type_p, possible_placement_new,
ipa_polymorphic_call_context::restrict_to_inner_class,
contains_type_p, decl_maybe_in_construction_p,
ipa_polymorphic_call_context::stream_out,
ipa_polymorphic_call_context::debug,
ipa_polymorphic_call_context::stream_in,
ipa_polymorphic_call_context::set_by_decl,
ipa_polymorphic_call_context::set_by_invariant,
walk_ssa_copies,
ipa_polymorphic_call_context::ipa_polymorphic_call_context,
type_change_info, noncall_stmt_may_be_vtbl_ptr_store,
extr_type_from_vtbl_ptr_store, record_known_type
check_stmt_for_type_change,
ipa_polymorphic_call_context::get_dynamic_type): Move to
ipa-polymorphic-call.c
(type_all_derivations_known_p, types_odr_comparable,
types_must_be_same_for_odr): Export.
(type_known_to_have_no_deriavations_p): New function.
* Makefile.in: Add ipa-polymorphic-call.c

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215615 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-devirt.c (polymorphic_call_target_d): Add SPECULATIVE; reorder
hubicka [Thu, 25 Sep 2014 18:57:44 +0000 (18:57 +0000)]
* ipa-devirt.c (polymorphic_call_target_d): Add SPECULATIVE; reorder
for better storage.
(polymorphic_call_target_hasher::hash): Hash SPECULATIVE.
(possible_polymorphic_call_targets): Instead of computing both
speculative and non-speculative answers, do just one at a time.
Replace NONSPECULATIVE_TARGETSP parameter with SPECULATIVE flag.
(dump_targets): Break out from ...
(dump_possible_polymorphic_call_targets): ... here; dump both speculative
and non-speculative lists.
(ipa_devirt): Update for new possible_polymorphic_call_targets API.
* ipa-utils.h (possible_polymorphic_call_targets): Update.

* testsuite/g++.dg/ipa/devirt-34.C: Update template.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215614 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/63348
uros [Thu, 25 Sep 2014 17:58:35 +0000 (17:58 +0000)]
PR rtl-optimization/63348
* emit-rtl.c (try_split): Do not emit extra barrier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215613 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Tighten predicates on SIMD shift intrinsics
jgreenhalgh [Thu, 25 Sep 2014 16:54:38 +0000 (16:54 +0000)]
[AArch64] Tighten predicates on SIMD shift intrinsics

gcc/

* config/aarch64/aarch64-protos.h (aarch64_simd_const_bounds): Delete.
* config/aarch64/aarch64-simd.md (aarch64_<sur>q<r>shl<mode>): Use
new predicates.
(aarch64_<sur>shll2_n<mode>): Likewise.
(aarch64_<sur>shr_n<mode>): Likewise.
(aarch64_<sur>sra_n<mode>: Likewise.
(aarch64_<sur>s<lr>i_n<mode>): Likewise.
(aarch64_<sur>qshl<u>_n<mode>): Likewise.
* config/aarch64/aarch64.c (aarch64_simd_const_bounds): Delete.
* config/aarch64/iterators.md (ve_mode): New.
(offsetlr): Remap to infix text for use in new predicates.
* config/aarch64/predicates.md (aarch64_simd_shift_imm_qi): New.
(aarch64_simd_shift_imm_hi): Likewise.
(aarch64_simd_shift_imm_si): Likewise.
(aarch64_simd_shift_imm_di): Likewise.
(aarch64_simd_shift_imm_offset_qi): Likewise.
(aarch64_simd_shift_imm_offset_hi): Likewise.
(aarch64_simd_shift_imm_offset_si): Likewise.
(aarch64_simd_shift_imm_offset_di): Likewise.
(aarch64_simd_shift_imm_bitsize_qi): Likewise.
(aarch64_simd_shift_imm_bitsize_hi): Likewise.
(aarch64_simd_shift_imm_bitsize_si): Likewise.
(aarch64_simd_shift_imm_bitsize_di): Likewise.

gcc/testsuite/

* gcc.target/aarch64/simd/vqshlb_1.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215612 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoImprove live-in calculation for splitted block
jiwang [Thu, 25 Sep 2014 16:39:49 +0000 (16:39 +0000)]
Improve live-in calculation for splitted block

  gcc/
    * shrink-wrap.c (move_insn_for_shrink_wrap): Initialize the live-in of new
    created BB as the intersection of live-in from "old_dest" and live-out from
    "bb".

  gcc/testsuite/
    * gcc.target/i386/shrink_wrap_1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215611 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * lra.c (lra_set_insn_recog_data): Fix typo in comment.
law [Thu, 25 Sep 2014 16:34:03 +0000 (16:34 +0000)]
    * lra.c (lra_set_insn_recog_data): Fix typo in comment.
        * genautomata.c (merge_states): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215610 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
olegendo [Thu, 25 Sep 2014 15:50:38 +0000 (15:50 +0000)]
gcc/
PR target/62218
* config/sh/sync.md (atomic_test_and_set_soft_imask): Fix typo
in instruction sequence.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215607 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago DR 1339
redi [Thu, 25 Sep 2014 15:27:18 +0000 (15:27 +0000)]
DR 1339
* doc/xml/manual/status_cxx2011.xml: Update.
* include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
an iterator.
(__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
* include/bits/stl_vector.h (vector::_M_fill_initialize,
vector::_M_default_initialize): Use returned iterator.
* include/bits/vector.tcc (vector::_M_fill_assign,
vector::_M_fill_insert, vector::_M_default_append): Likewise.
* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
16505.cc: Adjust return type.
* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
dr1339.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215606 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/62218
nickc [Thu, 25 Sep 2014 15:01:46 +0000 (15:01 +0000)]
PR target/62218
* config/sh/sync.md (atomic_fetch_nand<mode>_soft_imask): Fix typo
in instruction sequence.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215602 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[gcc]
wschmidt [Thu, 25 Sep 2014 14:06:09 +0000 (14:06 +0000)]
[gcc]

2014-09-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/63335
* config/rs6000/rs6000-c.c (altivec_build_resolved_builtin):
Exclude VSX_BUILTIN_XVCMPGEDP_P from special handling.

[gcc/testsuite]

2014-09-25  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR target/63335
* gcc.target/powerpc/pr63335.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215599 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/61945
mpolacek [Thu, 25 Sep 2014 12:56:57 +0000 (12:56 +0000)]
PR c++/61945
* class.c (warn_hidden): Check for FUNCTION_DECL.

* g++.dg/warn/pr61945.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215597 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
redi [Thu, 25 Sep 2014 12:14:15 +0000 (12:14 +0000)]
* include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215596 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
redi [Thu, 25 Sep 2014 10:50:31 +0000 (10:50 +0000)]
* testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215593 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
redi [Thu, 25 Sep 2014 10:22:51 +0000 (10:22 +0000)]
* testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
* testsuite/27_io/basic_ios/conv/bool.cc: New.
* testsuite/27_io/basic_ios/conv/voidptr.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215592 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAVX-512. Extend `perm' insn patterns.
kyukhin [Thu, 25 Sep 2014 08:25:56 +0000 (08:25 +0000)]
AVX-512. Extend `perm' insn patterns.

gcc/
* config/i386/sse.md
(define_expand "<avx2_avx512f>_perm<mode>"): Rename to ...
(define_expand "<avx2_avx512>_perm<mode>"): ... this.
(define_expand "avx512f_perm<mode>_mask"): Rename to ...
(define_expand "<avx512>_perm<mode>_mask"): ... this.
Use VI8F_256_512 mode iterator.
(define_insn "<avx2_avx512f>_perm<mode>_1<mask_name>"): Rename to ...
(define_insn "<avx2_avx512>_perm<mode>_1<mask_name>"): ... this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215590 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAVX-512. Add mov[dlh]dup insns support.
kyukhin [Thu, 25 Sep 2014 08:21:17 +0000 (08:21 +0000)]
AVX-512. Add mov[dlh]dup insns support.

gcc/
* config/i386/sse.md
(define_insn "avx_movshdup256<mask_name>"): Add masking.
(define_insn "sse3_movshdup<mask_name>"): Ditto.
(define_insn "avx_movsldup256<mask_name>"): Ditto.
(define_insn "sse3_movsldup<mask_name>"): Ditto.
(define_insn "vec_dupv2df<mask_name>"): Ditto.
(define_insn "*vec_concatv2df"): Add EVEX version.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215589 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAVX-512. Update vec_set<mode>_0 pattern.
kyukhin [Thu, 25 Sep 2014 08:19:39 +0000 (08:19 +0000)]
AVX-512. Update vec_set<mode>_0 pattern.

gcc/
* config/i386/sse.md
(define_insn "vec_set<mode>_0"): Add EVEX version.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215588 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAVX-512. Add convert ps2pd and ps2dq.
kyukhin [Thu, 25 Sep 2014 08:18:14 +0000 (08:18 +0000)]
AVX-512. Add convert ps2pd and ps2dq.

gcc/
* config/i386/sse.md
(define_insn
"<fixsuffix>fix_trunc<mode><sselongvecmodelower>2<mask_name><round_saeonly_name>"):
New.
(define_insn "<fixsuffix>fix_truncv2sfv2di2<mask_name>"): Ditto.
(define_insn "ufix_trunc<mode><sseintvecmodelower>2<mask_name>"): Ditto.
(define_insn "sse2_cvtss2sd<round_saeonly_name>"): Change
"nonimmediate_operand" to "<round_saeonly_nimm_predicate>".
(define_insn "avx_cvtpd2ps256<mask_name>"): Add masking.
(define_expand "sse2_cvtpd2ps_mask): New.
(define_insn "*sse2_cvtpd2ps<mask_name>"): Add masking.
(define_insn "sse2_cvtps2pd<mask_name>"): Add masking.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215586 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAVX-512. Add pd2dq and dq2pd converts.
kyukhin [Thu, 25 Sep 2014 08:15:30 +0000 (08:15 +0000)]
AVX-512. Add pd2dq and dq2pd converts.

gcc/
* config/i386/i386.c
(avx512f_ufix_notruncv8dfv8si_mask_round): Rename to ...
(ufix_notruncv8dfv8si2_mask_round): ... this.
* config/i386/sse.md
(define_insn "avx512f_cvtdq2pd512_2): Update TARGET check.
(define_insn "avx_cvtdq2pd256_2"): Add EVEX version.
(define_insn "sse2_cvtdq2pd<mask_name>"): Add masking.
(define_insn "avx_cvtpd2dq256<mask_name>"): Ditto.
(define_expand "sse2_cvtpd2dq"): Delete.
(define_insn "sse2_cvtpd2dq<mask_name>"): Add masking and
make 2nd operand const0 vector.
(define_insn "avx512f_ufix_notruncv8dfv8si<mask_name><round_name>"):
Delete.
(define_mode_attr pd2udqsuff): New.
(define_insn
"ufix_notrunc<mode><si2dfmodelower>2<mask_name><round_name>"): Ditto.
(define_insn "ufix_notruncv2dfv2si2<mask_name>"): Ditto.
(define_insn "*avx_cvttpd2dq256_2"): Delete.
(define_expand "sse2_cvttpd2dq"): Ditto.
(define_insn "sse2_cvttpd2dq<mask_name>"): Add masking and
make 2nd operand const0 vector.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215584 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/63341
jakub [Thu, 25 Sep 2014 08:12:49 +0000 (08:12 +0000)]
PR tree-optimization/63341
* tree-vectorizer.h (vect_create_data_ref_ptr,
vect_create_addr_base_for_vector_ref): Add another tree argument
defaulting to NULL_TREE.
* tree-vect-data-refs.c (vect_create_data_ref_ptr): Add byte_offset
argument, pass it down to vect_create_addr_base_for_vector_ref.
(vect_create_addr_base_for_vector_ref): Add byte_offset argument,
add that to base_offset too if non-NULL.
* tree-vect-stmts.c (vectorizable_load): Add byte_offset variable,
for dr_explicit_realign_optimized set it to vector byte size
- 1 instead of setting offset, pass byte_offset down to
vect_create_data_ref_ptr.

* gcc.dg/vect/pr63341-1.c: New test.
* gcc.dg/vect/pr63341-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215583 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-25 Andreas Arnez <arnez@linux.vnet.ibm.com>
krebbel [Thu, 25 Sep 2014 07:37:36 +0000 (07:37 +0000)]
2014-09-25  Andreas Arnez  <arnez@linux.vnet.ibm.com>

PR 63300/debug
* tree.c (check_base_type): New.
(check_qualified_type): Exploit new helper function above.
* tree.h (check_base_type): New prototype.
* dwarf2out.c (get_nearest_type_subqualifiers): New.
(modified_type_die): Fix handling for qualifiers.  Qualifiers to
"peel off" are now determined using get_nearest_type_subqualifiers.

2014-09-25  Mark Wielaard  <mjw@redhat.com>

PR 63300/debug
* gcc.dg/debug/dwarf2/stacked-qualified-types-1.c: New testcase.
* gcc.dg/debug/dwarf2/stacked-qualified-types-2.c: Likewise.
* gcc.dg/guality/pr63300-const-volatile.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215582 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/63249
jakub [Thu, 25 Sep 2014 06:47:43 +0000 (06:47 +0000)]
PR c++/63249
* semantics.c (handle_omp_array_sections_1): Call mark_rvalue_use
on low_bound and length.

* g++.dg/gomp/pr63249.C: New test.
* c-c++-common/gomp/pr63249.c: New test.

2014-09-25  Thomas Schwinge  <thomas@codesourcery.com>

PR c++/63249
* c-parser.c (c_parser_omp_variable_list): Call mark_exp_read
on low_bound and length.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215580 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-25 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 25 Sep 2014 06:07:15 +0000 (06:07 +0000)]
2014-09-25  Tobias Burnus  <burnus@net-b.de>

gcc/fortran
        * check.c (check_co_collective): Renamed from
        * check_co_minmaxsum,
        handle co_reduce.
        (gfc_check_co_minmax, gfc_check_co_sum): Update call.
        (gfc_check_co_broadcast, gfc_check_co_reduce): New.
        * gfortran.h (gfc_isym_id): Add GFC_ISYM_CO_BROADCAST and
        GFC_ISYM_CO_REDUCE.
        * intrinsic.c (add_subroutines): Add co_reduce and co_broadcast.
        * intrinsic.h (gfc_check_co_broadcast, gfc_check_co_reduce): Add
        proto types.
        * intrinsic.texi (CO_BROADCAST): Add.
        * trans.h (gfor_fndecl_co_broadcast): New.
        * trans-decl.c (gfor_fndecl_co_broadcast): Ditto.
        (gfc_build_builtin_function_decls): Add decl for it,
        * trans-intrinsic.c (conv_co_collective): Renamed from
        conv_co_minmaxsum. Handle co_reduce.
        (gfc_conv_intrinsic_subroutine): Handle co_reduce.

gcc/testsuite/
        * gfortran.dg/coarray/collectives_3.f90: New.
        * gfortran.dg/coarray_collectives_9.f90: New.
        * gfortran.dg/coarray_collectives_10.f90: New.
        * gfortran.dg/coarray_collectives_11.f90: New.
        * gfortran.dg/coarray_collectives_12.f90: New.

libgfortran/
        * caf/libcaf.h (_gfortran_caf_co_broadcast): New prototype.
        * caf/single.c (_gfortran_caf_co_broadcast): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215579 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/63199
timshen [Thu, 25 Sep 2014 04:43:19 +0000 (04:43 +0000)]
PR libstdc++/63199
* include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
_M_loc for basic_regex.
* include/bits/regex_automaton.h: Add _M_traits for _NFA.
* include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
Make _Compiler::_M_nfa heap allocated.
* include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
_Compiler::_M_nfa heap allocated.
* include/bits/regex_executor.h (_Executor::_M_is_word):
Fix accessing _M_traits.
* include/bits/regex_executor.tcc (_Executor::_M_dfs):
Fix accessing _M_traits.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215578 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-devirt.c (possible_polymorphic_call_targets): Remove
hubicka [Thu, 25 Sep 2014 03:37:31 +0000 (03:37 +0000)]
* ipa-devirt.c (possible_polymorphic_call_targets): Remove
forgotten debug output; canonicalize querries more wtih LTO.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215577 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix previous commit.
hubicka [Thu, 25 Sep 2014 02:11:13 +0000 (02:11 +0000)]
Fix previous commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215576 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * cgraph.h (class ipa_polymorphic_call_context): Move here from
hubicka [Thu, 25 Sep 2014 01:48:34 +0000 (01:48 +0000)]
* cgraph.h (class ipa_polymorphic_call_context): Move here from
ipa-utils.h; add stream_int and stream_out methods.
(cgraph_indirect_call_info): Remove SPECILATIVE_OFFSET,
OUTER_TYPE, SPECULATIVE_OUTER_TYPE, MAYBE_IN_CONSTRUCTION
MAYBE_DERIVED_TYPE and SPECULATIEVE_MAYBE_DERIVED_TYPE;
add CONTEXT.
(ipa_polymorphic_call_context::ipa_polymorphic_call_context,
ipa_polymorphic_call_context::ipa_polymorphic_call_context,
ipa_polymorphic_call_context::clear_speculation,
ipa_polymorphic_call_context::clear_outer_type): Move here from
ipa-utils.h
* ipa-utils.h (class ipa_polymorphic_call_context): Move to cgraph.h
(ipa_polymorphic_call_context::ipa_polymorphic_call_context,
ipa_polymorphic_call_context::ipa_polymorphic_call_context,
ipa_polymorphic_call_context::clear_speculation,
ipa_polymorphic_call_context::clear_outer_type): Likewise.
* ipa-devirt.c: Include data-streamer.h, lto-streamer.h and
streamer-hooks.h
(ipa_polymorphic_call_context::stream_out): New method.
(ipa_polymorphic_call_context::stream_in): New method.
(noncall_stmt_may_be_vtbl_ptr_store): Add forgotten static.
* ipa-prop.c (ipa_analyze_indirect_call_uses): Do not care about
OUTER_TYPE.
(ipa_analyze_call_uses): Simplify.
(update_indirect_edges_after_inlining): Do not care about outer_type.
(ipa_write_indirect_edge_info): Update.
(ipa_write_indirect_edge_info): Likewise.
* cgraph.c (cgraph_node::create_indirect_edge): Simplify.
(dump_edge_flags): Break out from ...
(cgraph_node::dump): ... here; dump indirect edges.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215575 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Thu, 25 Sep 2014 00:16:48 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215574 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/56193
redi [Wed, 24 Sep 2014 22:13:35 +0000 (22:13 +0000)]
PR libstdc++/56193
* config/abi/pre/gnu.ver: Add new exports.
* include/bits/basic_ios.h (basic_ios::operator bool): Define.
* src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215571 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
redi [Wed, 24 Sep 2014 22:13:29 +0000 (22:13 +0000)]
* config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
new GLIBCXX_3.4.21 symbols don't match them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215570 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-utils.h (polymorphic_call_context): Add
hubicka [Wed, 24 Sep 2014 20:30:21 +0000 (20:30 +0000)]
* ipa-utils.h (polymorphic_call_context): Add
metdhos dump, debug and clear_outer_type.
(ipa_polymorphic_call_context::ipa_polymorphic_call_context): Simplify.
(ipa_polymorphic_call_context::clear_outer_type): New method.
* ipa-prop.c (ipa_analyze_call_uses): Do not overwrite offset.
* ipa-devirt.c (types_odr_comparable): New function.
(types_must_be_same_for_odr): New function.
(odr_subtypes_equivalent_p): Simplify.
(possible_placement_new): Break out from ...
(ipa_polymorphic_call_context::restrict_to_inner_type): ... here;
be more cuatious about returning false in cases the context may be
valid in derived type or via placement new.
(contains_type_p): Clear maybe_derived_type
(ipa_polymorphic_call_context::dump): New method.
(ipa_polymorphic_call_context::debug): New method.
(ipa_polymorphic_call_context::set_by_decl): Cleanup comment.
(ipa_polymorphic_call_context::set_by_invariant): Simplify.
(ipa_polymorphic_call_context::ipa_polymorphic_call_context): Simplify.
(possible_polymorphic_call_targets): Trust context.restrict_to_inner_class
to suceed on all valid cases; remove confused sanity check.
(dump_possible_polymorphic_call_targets): Simplify.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215569 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-24 François Dumont <fdumont@gcc.gnu.org>
fdumont [Wed, 24 Sep 2014 19:55:35 +0000 (19:55 +0000)]
2014-09-24  François Dumont  <fdumont@gcc.gnu.org>

PR libstdc++/29988
* include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
(_Rb_tree_alloc_node<>): New.
(_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
(_Rb_tree<>::_M_assign_unique): New.
(_Rb_tree<>::_M_assign_equal): New.
(_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
* include/bits/stl_map.h
(std::map<>::operator=(std::map<>&&)): Default implementation.
(std::map<>::operator=(initializer_list<>)): Adapt to use
_Rb_tree::_M_assign_unique.
* include/bits/stl_multimap.h
(std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
(std::multimap<>::operator=(initializer_list<>)): Adapt to use
_Rb_tree::_M_assign_equal.
* include/bits/stl_set.h
(std::set<>::operator=(std::set<>&&)): Default implementation.
(std::set<>::operator=(initializer_list<>)): Adapt to use
_Rb_tree::_M_assign_unique.
* include/bits/stl_multiset.h
(std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
(std::multiset<>::operator=(initializer_list<>)): Adapt to use
_Rb_tree::_M_assign_equal.
* testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
* testsuite/23_containers/map/allocator/init-list.cc: New.
* testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
* testsuite/23_containers/multimap/allocator/copy_assign.cc
(test03): New.
* testsuite/23_containers/multimap/allocator/init-list.cc: New.
* testsuite/23_containers/multimap/allocator/move_assign.cc
(test03): New.
* testsuite/23_containers/multiset/allocator/copy_assign.cc
(test03): New.
* testsuite/23_containers/multiset/allocator/init-list.cc: New.
* testsuite/23_containers/multiset/allocator/move_assign.cc
(test03): New.
* testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
* testsuite/23_containers/set/allocator/init-list.cc: New.
* testsuite/23_containers/set/allocator/move_assign.cc (test03): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215568 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * cgraph.h, dbxout.c, dwarfout2.c, gimple-fold.c,
aldyh [Wed, 24 Sep 2014 19:50:24 +0000 (19:50 +0000)]
* cgraph.h, dbxout.c, dwarfout2.c, gimple-fold.c,
     lto-streamer-out.c, print-tree.c, symtab.c, tree-inline.c,
     tree-streamer-in.c, tree-streamer-out.c, tree.c, tree.h,
     varpool.c: Rename all instances of DECL_ABSTRACT to
     DECL_ABSTRACT_P.

    cp/
     * class.c, decl.c, optimize.c: Rename all instances of
     DECL_ABSTRACT to DECL_ABSTRACT_P.

    lto/
     * lto-symtab.c, lto.c: Rename all instances of DECL_ABSTRACT to
     DECL_ABSTRACT_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215567 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[gcc]
wschmidt [Wed, 24 Sep 2014 18:35:33 +0000 (18:35 +0000)]
[gcc]

2014-09-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (insn_is_swappable_p): Don't provide
special handling for stores whose SET_SRC is an UNSPEC (such as
UNSPEC_STVE).

[gcc/testsuite]

2014-09-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/swaps-p8-17.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215564 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoImprove prepare_shrink_wrap to sink more instructions
jiwang [Wed, 24 Sep 2014 18:30:34 +0000 (18:30 +0000)]
Improve prepare_shrink_wrap to sink more instructions

  gcc/
    * shrink-wrap.c (move_insn_for_shrink_wrap): Add further check when
    !REG_P (src) to release more instruction sink opportunities.

  gcc/testsuite/
    * gcc.target/aarch64/shrink_wrap_symbol_ref_1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215563 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Improve regmove_costs for 128-bit types.
jiwang [Wed, 24 Sep 2014 18:22:50 +0000 (18:22 +0000)]
[AArch64] Improve regmove_costs for 128-bit types.

  2014-09-24  Wilco Dijkstra <wdijkstr@arm.com>

  gcc/
    * config/aarch64/aarch64.c (aarch64_register_move_cost): Add register move
    costs for 128-bit types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215562 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-09-24 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 24 Sep 2014 17:49:16 +0000 (17:49 +0000)]
2014-09-24  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (ipa_edge_duplication_hook): Update controlled_use_count
when duplicating a PASS_THROUGH jump function when creating a
speculative edge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215560 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c/61405
mpolacek [Wed, 24 Sep 2014 17:23:56 +0000 (17:23 +0000)]
PR c/61405
PR c/53874
gcc/
* asan.c (maybe_instrument_call): Add default case.
* ipa-pure-const.c (special_builtin_state): Likewise.
* predict.c (expr_expected_value_1): Likewise.
* lto-streamer-out.c (write_symbol): Initialize variable.
gcc/c-family/
* c-common.h (struct c_common_resword): Don't define CPP_KEYWORD.
gcc/c/
* c-parser.c: Don't define CPP_KEYWORD.
(c_parser_switch_statement): Pass original type to c_finish_case.
* c-tree.h (c_finish_case): Update declaration.
* c-typeck.c (c_finish_case): Add TYPE parameter.  Pass it
conditionally to c_do_switch_warnings.
gcc/cp/
* semantics.c (finish_switch_cond): Call unlowered_expr_type.
* tree.c (bot_manip): Add default case.
* parser.c (cp_parser_primary_expression): Cast the controlling
expression of a switch to an int.
(cp_parser_unqualified_id): Likewise.
gcc/testsuite/
* c-c++-common/pr53874.c: New test.
* c-c++-common/pr61405.c: New test.
libcpp/
* include/cpplib.h (enum cpp_ttype): Define CPP_KEYWORD.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215559 138bc75d-0d04-0410-961f-82ee72b054a4