platform/upstream/linaro-gcc.git
8 years ago2015-10-09 Richard Biener <rguenther@suse.de>
rguenth [Fri, 9 Oct 2015 11:47:31 +0000 (11:47 +0000)]
2015-10-09  Richard Biener  <rguenther@suse.de>

* genmatch.c (print_operand): Fix formatting.
(dt_node::append_simplify): Warn for multiple simplifiers
that match the same pattern.
* match.pd (log (exp @0)): Remove duplicates.

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

8 years agofix Changelog entry removed at revision 228479
chrbr [Fri, 9 Oct 2015 11:20:23 +0000 (11:20 +0000)]
fix Changelog entry removed at revision 228479

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

8 years agoMissed ChangeLog for previous libstdc++-v3 commit
redi [Fri, 9 Oct 2015 11:19:04 +0000 (11:19 +0000)]
Missed ChangeLog for previous libstdc++-v3 commit

Add include/experimental/bits dir

* include/experimental/erase_if.h: Move to ...
* include/experimental/bits/erase_if.h: New.
* include/experimental/fs_dir.h: Move to ...
* include/experimental/bits/fs_dir.h: New.
* include/experimental/fs_fwd.h: Move to ...
* include/experimental/bits/fs_fwd.h: New.
* include/experimental/fs_ops.h: Move to ...
* include/experimental/bits/fs_ops.h: New.
* include/experimental/fs_path.h: Move to ...
* include/experimental/bits/fs_path.h: New.
* include/experimental/string_view.tcc: Move to ...
* include/experimental/bits/string_view.tcc: New.
* include/Makefile.am: Add include/experimental/bits sub-directory.
* include/Makefile.in: Regenerate.
* include/experimental/filesystem: Adjust includes.
* include/experimental/map: Likewise.
* include/experimental/set: Likewise.
* include/experimental/string_view: Likewise.
* include/experimental/unordered_map: Likewise.
* include/experimental/unordered_set: Likewise.

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

8 years agoAdd include/experimental/bits dir
redi [Fri, 9 Oct 2015 11:11:54 +0000 (11:11 +0000)]
Add include/experimental/bits dir

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

8 years ago[AArch64] Handle literal pools for functions > 1 MiB in size.
ramana [Fri, 9 Oct 2015 10:58:06 +0000 (10:58 +0000)]
[AArch64] Handle literal pools for functions > 1 MiB in size.

This patch fixes the issue in PR63304 where we have
functions that are > 1MiB. The idea is to use adrp / ldr or adrp / add
instructions to address the literal pools under the use of a command line
option. I would like to turn this on by default on trunk but keep this
disabled by default for the release branches in order to get some
serious testing for this feature while it bakes on trunk.

As a follow-up I would like to try and see if estimate_num_insns or
something else can give us a heuristic to turn this on for "large" functions.
After all the number of incidences of this are quite low in real life,
so may be we should look to restrict this use as much as possible on the
grounds that this code generation implies an extra integer register for
addressing for every floating point and vector constant and I don't think
that's great in code that already may have high register pressure.

Tested on aarch64-none-elf with no regressions. A previous
version was bootstrapped and regression tested.

Applied to trunk.

regards
Ramana

2015-09-14  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

     PR target/63304
     * config/aarch64/aarch64.c (aarch64_expand_mov_immediate): Handle
     nopcrelative_literal_loads.
     (aarch64_classify_address): Likewise.
     (aarch64_constant_pool_reload_icode): Define.
     (aarch64_secondary_reload): Handle secondary reloads for
     literal pools.
     (aarch64_override_options): Handle nopcrelative_literal_loads.
     (aarch64_classify_symbol): Handle nopcrelative_literal_loads.
     * config/aarch64/aarch64.md (aarch64_reload_movcp<GPF_TF:mode><P:mode>):
     Define.
     (aarch64_reload_movcp<VALL:mode><P:mode>): Likewise.
     * config/aarch64/aarch64.opt (mpc-relative-literal-loads): New option.
     * config/aarch64/predicates.md (aarch64_constant_pool_symref): New
     predicate.
     * doc/invoke.texi (mpc-relative-literal-loads): Document.

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

8 years ago[Patch PR target/67366 1/2] [ARM] - Add movmisalignhi / si patterns
ramana [Fri, 9 Oct 2015 10:53:31 +0000 (10:53 +0000)]
[Patch PR target/67366 1/2] [ARM] - Add movmisalignhi / si patterns

This adds movmisalignhi and movmisalignsi expanders when unaligned
access is allowed by the architecture. This allows the mid-end
to expand to misaligned loads and stored.

Compared code generated for the Linux kernel and
it changes code generation for a handful of files all for the better
basically by reducing the stack usage.

Tested by :

1. armhf bootstrap and regression test - no regressions.
2.. arm-none-eabi cross build and regression test for

    {-marm/-march=armv7-a/-mfpu=vfpv3-d16/-mfloat-abi=softfp}
    {-mthumb/-march=armv8-a/-mfpu=crypto-neon-fp-armv8/-mfloat-abi=hard}
    {-marm/-mcpu=arm7tdmi/-mfloat-abi=soft}
    {-mthumb/-mcpu=arm7tdmi/-mfloat-abi=soft}

Will apply to trunk once 2/2 is approved.

regards
Ramana

2015-10-09  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        PR target/67366
        * config/arm/arm.md (movmisalign<mode>): New.
        * config/arm/iterators.md (HSI): New.

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

8 years ago* MAINTAINERS (Write After Approval): Add myself.
afomin [Fri, 9 Oct 2015 10:50:51 +0000 (10:50 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

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

8 years ago * gcc-interface/Make-lang.in: Make sure that GNAT1_OBJS and not just
ebotcazou [Fri, 9 Oct 2015 08:13:33 +0000 (08:13 +0000)]
* gcc-interface/Make-lang.in: Make sure that GNAT1_OBJS and not just
GNAT1_ADA_OBJS are compiled only after generated files are created.

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

8 years ago2015-10-09 Richard Biener <rguenther@suse.de>
rguenth [Fri, 9 Oct 2015 08:12:18 +0000 (08:12 +0000)]
2015-10-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/67891
* gimple-match.h (gimple_simplified_result_is_gimple_val):
New helper.
(gimple_resimplify1): Declare.
(gimple_resimplify2): Likewise.
(gimple_resimplify3): Likewise.
* gimple-match-head.c (gimple_resimplify1): Export.
(gimple_resimplify2): Likewise.
(gimple_resimplify3): Likewise.
(maybe_push_res_to_seq): Use gimple_simplified_result_is_gimple_val.
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Likewise.
* tree-ssa-sccvn.c (visit_reference_op_load): Use gimple_resimplify1
to avoid creating stmts without VN info.

* gcc.dg/tree-ssa/pr67891.c: New testcase.

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

8 years ago[PATCH] [5/n] Fix minor SSA_NAME leaks
law [Fri, 9 Oct 2015 05:09:56 +0000 (05:09 +0000)]
[PATCH] [5/n] Fix minor SSA_NAME leaks

* value-prof.c (gimple_ic): Add missing calls to unlink_stmt_vdef
and release_ssa_name in two places.
(gimple_stringop_fixed_value): Similarly.

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

8 years agoDaily bump.
gccadmin [Fri, 9 Oct 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * ipa-icf.c (sem_item::compare_symbol_references): Fix use
hubicka [Thu, 8 Oct 2015 23:20:06 +0000 (23:20 +0000)]
* ipa-icf.c (sem_item::compare_symbol_references): Fix use
of availability.

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

8 years ago [PATCH] [4/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 23:19:35 +0000 (23:19 +0000)]
[PATCH] [4/n] Fix minor SSA_NAME leaks

        * tree-ssa-loop-im.c (rewrite_bittest): Add missing call to
        release_defs.

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

8 years ago[PATCH] [4/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 23:18:03 +0000 (23:18 +0000)]
[PATCH] [4/n] Fix minor SSA_NAME leaks

* tree-ssa-loop-im.c (rewrite_bittest): Add missing call to
release_defs.

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

8 years ago[PATCH] [3/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 20:47:46 +0000 (20:47 +0000)]
[PATCH] [3/n] Fix minor SSA_NAME leaks

* tree-stdarg.c (expand_ifn_va_arg_1): Add missing call to
unlink_stmt_vdef and release_ssa_name_fn.

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

8 years ago[PATCH] [2/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 20:27:38 +0000 (20:27 +0000)]
[PATCH] [2/n] Fix minor SSA_NAME leaks

* tree-ssa-dse.c (dse_optimize_stmt): Add missing call to
release_defs.

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

8 years agoliboffloadmic: Add missed checks for malloc and strdup return values
iverbin [Thu, 8 Oct 2015 19:04:43 +0000 (19:04 +0000)]
liboffloadmic: Add missed checks for malloc and strdup return values

liboffloadmic/
* runtime/offload_engine.cpp (Engine::init_process): Use strdup instead
of sizeof+malloc+sprintf, check for return value.
* runtime/offload_env.cpp (MicEnvVar::get_env_var_kind): Check for
strdup return value.
* runtime/offload_host.cpp (__offload_init_library_once): Check for
strdup return value.  Fix size calculation of COI_HOST_THREAD_AFFINITY.
* runtime/emulator/coi_device.cpp (COIProcessWaitForShutdown): Check for
malloc return value.

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

8 years agoRound up the SSE register save area only if needed
hjl [Thu, 8 Oct 2015 18:57:11 +0000 (18:57 +0000)]
Round up the SSE register save area only if needed

There is is no point to round up the SSE register save area to 16 bytes if
the incoming stack boundary is less than 16 bytes.

* config/i386/i386.c (ix86_compute_frame_layout): Round up the
SSE register save area to 16 bytes only if the incoming stack
boundary is no less than 16 bytes.

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

8 years ago[PATCH] [1/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 17:50:44 +0000 (17:50 +0000)]
[PATCH] [1/n] Fix minor SSA_NAME leaks

* tree-ssa-phiopt.c (factor_out_conversion): Add missing calls to
release_ssa_name.  Fix typo in comment.

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

8 years ago * config/nvptx/nvptx.h (struct machine_function): Add comment.
nathan [Thu, 8 Oct 2015 17:31:36 +0000 (17:31 +0000)]
* config/nvptx/nvptx.h (struct machine_function): Add comment.
* config/nvptx/nvptx.c (nvptx_declare_function_name): Functions
may return pointer as well as in memory.
(nvptx_output_return): Likewise.

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

8 years agoMove sqrt and cbrt simplifications to match.pd
rsandifo [Thu, 8 Oct 2015 16:54:37 +0000 (16:54 +0000)]
Move sqrt and cbrt simplifications to match.pd

This patch moves the sqrt and cbrt simplification rules to match.pd.
builtins.c now only does the constant folding.

Bootstrapped & regression-tested on x86_64-linux-gnu.

gcc/
* builtins.c (fold_builtin_sqrt, fold_builtin_cbrt): Delete.
(fold_builtin_1): Update accordingly.  Handle constant arguments here.
* match.pd: Add rules previously handled by fold_builtin_sqrt
and fold_builtin_cbrt.

gcc/testsuite/
* gcc.dg/builtins-47.c: Test the optimized dump instead.

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

8 years agoMake tree_expr_nonnegative_warnv_p recurse into SSA names
rsandifo [Thu, 8 Oct 2015 16:49:24 +0000 (16:49 +0000)]
Make tree_expr_nonnegative_warnv_p recurse into SSA names

The upcoming patch to move sqrt and cbrt simplifications to match.pd
caused a regression because the (abs @0)->@0 simplification didn't
trigger for:

        (abs (convert (abs X)))

The simplification is based on tree_expr_nonnegative_p, which at
the moment just gives up if it sees an SSA_NAME.

This patch makes tree_expr_nonnegative_p recurse into SSA name
definitions, but limits the depth of recursion to a small number
for the reason mentioned in the comment (adapted from an existing
comment in gimple_val_nonnegative_real_p).  The patch reuses code
in tree-vrp.c, moving it to gimple-fold.c.  It also replaces calls
to gimple_val_nonnegative_real_p with calls to tree_expr_nonnegative_p.

A knock-on effect is that we can now prove _i_589 < 0 is false in
sequences like:

      i_1917 = ASSERT_EXPR <i_1075, i_1075 == 0>;
      _i_589 = (const int) i_1917;
      _i_1507 = ASSERT_EXPR <_i_589, _i_589 < 0>;

This defeats an assert in tree-vrp.c that ASSERT_EXPR conditions
are never known to be false.  Previously the assert only ever used
local knowledge and so would be limited to cases like x != x for
integer x.  Now that we use global knowledge it's possible to prove
the assertion condition is false in blocks that are in practice
unreachable.  The patch therefore removes the assert.

Bootstrapped & regression-tested on x86_64-linux-gnu.  I didn't write
a specific test because this is already covered by the testsuite if
the follow-on patch is also applied.

gcc/
* params.def (PARAM_MAX_SSA_NAME_QUERY_DEPTH): New param.
* doc/invoke.texi (--param max-ssa-name-query-depth): Document.
* fold-const.h (tree_unary_nonnegative_warnv_p)
(tree_single_nonnegative_warnv_p, tree_call_nonnegative_warnv_p)
(tree_expr_nonnegative_warnv_p): Add depth parameters.
* fold-const.c: Include gimple-fold.h and params.h.
(tree_ssa_name_nonnegative_warnv_p): New function.
(tree_unary_nonnegative_warnv_p, tree_binary_nonnegative_warnv_p)
(tree_single_nonnegative_warnv_p, tree_call_nonnegative_warnv_p)
(tree_invalid_nonnegative_warnv_p, tree_expr_nonnegative_warnv_p):
Add a depth parameter and increment it for recursive calls to
tree_expr_nonnegative_warnv_p.  Use tree_ssa_name_nonnegative_warnv_p
to handle SSA names.
* gimple-fold.h (gimple_val_nonnegative_real_p): Delete.
(gimple_stmt_nonnegative_warnv_p): Declare.
* tree-vrp.c (remove_range_assertions): Remove assert that condition
cannot be proven false.
(gimple_assign_nonnegative_warnv_p, gimple_call_nonnegative_warnv_p)
(gimple_stmt_nonnegative_warnv_p): Move to...
* gimple-fold.c: ...here.  Add depth parameters and pass them
down to the tree routines.  Accept statements that aren't
assignments or calls but just return false for them.
(gimple_val_nonnegative_real_p): Delete.
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Use
tree_expr_nonnegative_p instead of gimple_val_nonnegative_real_p.
Check HONOR_NANs first.

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

8 years agoFix Solaris bootstrap
jamborm [Thu, 8 Oct 2015 16:30:06 +0000 (16:30 +0000)]
Fix Solaris bootstrap

2015-10-08  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (meet_with_1): Make the argument of abs signed.  Remove
unnecessary MIN.

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

8 years ago * cp-tree.h (SIMPLE_TARGET_EXPR_P): New.
jason [Thu, 8 Oct 2015 16:14:03 +0000 (16:14 +0000)]
* cp-tree.h (SIMPLE_TARGET_EXPR_P): New.
* init.c (get_nsdmi): Use it.
* typeck2.c (massage_init_elt): Use it.

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

8 years agoformat
jason [Thu, 8 Oct 2015 16:13:57 +0000 (16:13 +0000)]
format

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

8 years ago * zh_TW.po: Update.
jsm28 [Thu, 8 Oct 2015 15:55:25 +0000 (15:55 +0000)]
* zh_TW.po: Update.

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

8 years ago PR c++/67557
jason [Thu, 8 Oct 2015 14:42:02 +0000 (14:42 +0000)]
PR c++/67557

* call.c (is_base_field_ref): New.
(unsafe_copy_elision_p): New.
(build_over_call): Use it.

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

8 years agogcc/
ienkovich [Thu, 8 Oct 2015 14:28:53 +0000 (14:28 +0000)]
gcc/

* tree-vect-loop.c (vect_analyze_loop_operations): Skip virtual phi
in the tail of outer-loop.

gcc/testsuite/

* gcc.dg/vect/vect-outer-simd-3.c: New test.

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

8 years ago* config/rs6000/rs6000.c (rs6000_xcoff_debug_unwind_info): Always
dje [Thu, 8 Oct 2015 14:19:57 +0000 (14:19 +0000)]
* config/rs6000/rs6000.c (rs6000_xcoff_debug_unwind_info): Always
return UI_NONE.

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

8 years agogcc/
ienkovich [Thu, 8 Oct 2015 13:14:09 +0000 (13:14 +0000)]
gcc/

* tree-ssa-loop-unswitch.c: Include "gimple-iterator.h" and
"cfghooks.h", add prototypes for introduced new functions.
(tree_ssa_unswitch_loops): Use from innermost loop iterator, move all
checks on ability of loop unswitching to tree_unswitch_single_loop;
invoke tree_unswitch_single_loop or tree_unswitch_outer_loop depending
on innermost loop check.
(tree_unswitch_single_loop): Add all required checks on ability of
loop unswitching under zero recursive level guard.
(tree_unswitch_outer_loop): New function.
(find_loop_guard): Likewise.
(empty_bb_without_guard_p): Likewise.
(used_outside_loop_p): Likewise.
(get_vop_from_header): Likewise.
(hoist_guard): Likewise.
(check_exit_phi): Likewise.

gcc/testsuite/

* gcc.dg/loop-unswitch-2.c: New test.
* gcc.dg/loop-unswitch-3.c: Likewise.
* gcc.dg/loop-unswitch-4.c: Likewise.

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

8 years ago * tree-ssa-reassoc.c (dump_ops_vector): Print newline after each
mpolacek [Thu, 8 Oct 2015 10:20:22 +0000 (10:20 +0000)]
* tree-ssa-reassoc.c (dump_ops_vector): Print newline after each
ops element.

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

8 years agoDump only required dse1 file
vries [Thu, 8 Oct 2015 09:03:51 +0000 (09:03 +0000)]
Dump only required dse1 file

2015-10-08  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/dse.c: Only dump in dse1 pass.
* gcc.dg/tree-ssa/pr30375.c: Same.

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

8 years agoS/390: Use create_tmp_var_raw in s390_atomic_assign_expand_fenv.
krebbel [Thu, 8 Oct 2015 07:49:41 +0000 (07:49 +0000)]
S/390: Use create_tmp_var_raw in s390_atomic_assign_expand_fenv.

gcc/ChangeLog:

2015-10-08  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

PR c/65345
* config/s390/s390.c (s390_atomic_assign_expand_fenv): Use
create_tmp_var_raw instead of create_tmp_var.

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

8 years agoDaily bump.
gccadmin [Thu, 8 Oct 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * expr.c (store_expr_with_bounds): Handle aggregate moves from
hubicka [Wed, 7 Oct 2015 22:54:35 +0000 (22:54 +0000)]
* expr.c (store_expr_with_bounds): Handle aggregate moves from
BLKmode.
* gimple-expr.c (useless_type_conversion_p): Do not use TYPE_CANONICAL
to define gimple type system; compare aggregates only by size.

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

8 years agoRe: [PATCH] Improve DOM's optimization of control statements
law [Wed, 7 Oct 2015 21:56:18 +0000 (21:56 +0000)]
Re: [PATCH] Improve DOM's optimization of control statements

* tree-ssa-dom.c (optimize_stmt): Don't set LOOPS_NEED_FIXUP here.
* tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges): Do it
here instead.  Tighten test to avoid setting LOOPS_NEED_FIXUP
unnecessarily.

@@ -1848,12 +1848,6 @@ optimize_stmt (basic_block bb, gimple_stmt_iterator si,

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

8 years agogather bbs and conditions in a single walk through dominators
spop [Wed, 7 Oct 2015 19:25:35 +0000 (19:25 +0000)]
gather bbs and conditions in a single walk through dominators

Clean up the function to build scop's basic blocks and the function
that gathers the conditions under which a basic block is executed.  We remove
one traversal of the dominator tree.

This refactoring was triggered by the need of a vec<bb> of all the basic blocks
in a region.  We will use that vector in a patch that removes the out-of-ssa
translation of scalar dependences: we will iterate through the basic blocks of a
region to record scalar dependences crossing bbs or going out of the region.

The patch passes bootstrap and regtest on x86_64-linux.

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-dependences.c (scop_get_dependences): Do not use SCOP_BBS.
                * graphite-isl-ast-to-gimple.c (get_max_schedule_dimensions): Same.
                (generate_isl_schedule): Same.
                * graphite-optimize-isl.c (scop_get_domains): Same.
                (apply_schedule_map_to_scop): Same.
                * graphite-poly.c (print_iteration_domains): Same.
                (remove_gbbs_in_scop): Same.
                (new_scop): Same.
                (free_scop): Same.
                (print_scop): Same.
                * graphite-poly.h (struct scop): Rename bbs to pbbs.
                (SCOP_BBS): Remove.
                * graphite-scop-detection.c (compare_bb_depths): Remove.
                (graphite_sort_dominated_info): Remove.
                (try_generate_gimple_bb): Move out of scop_detection.
                (all_non_dominated_preds_marked_p): Remove.
                (build_scop_bbs_1): Remove.
                (build_scop_bbs): Remove.
                (nb_pbbs_in_loops): Do not use SCOP_BBS.
                (find_scop_parameters): Same.
                (sese_dom_walker): Rename gather_bbs.
                (before_dom_children): Call try_generate_gimple_bb and collect gbb
                and pbb.
                (build_scops): Call gather_bbs.
                * graphite-sese-to-poly.c (build_scop_scattering): Do not use SCOP_BBS.
                (add_conditions_to_constraints): Same.
                (build_scop_iteration_domain): Same.
                (build_scop_drs): Same.
                (new_pbb_from_pbb): Same.
                * sese.c (new_sese_info): Create bbs.
                * sese.h (struct sese_info_t): Add bbs.

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

8 years ago* config/rs6000/xcoff.h (ASM_PREFERRED_EH_DATA_FORMAT): Use 64-bit
dje [Wed, 7 Oct 2015 18:35:23 +0000 (18:35 +0000)]
* config/rs6000/xcoff.h (ASM_PREFERRED_EH_DATA_FORMAT): Use 64-bit
encoding in 64-bit mode.

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

8 years ago compiler: Don't make temporaries for constant operands.
ian [Wed, 7 Oct 2015 17:47:45 +0000 (17:47 +0000)]
compiler: Don't make temporaries for constant operands.

    Fixes golang/go#12616.

    Reviewed-on: https://go-review.googlesource.com/14645

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

8 years ago PR target/66697
uros [Wed, 7 Oct 2015 17:42:09 +0000 (17:42 +0000)]
PR target/66697
* config/i386/i386.c (ix86_option_override_internal): Always use
8-byte minimum stack boundary in 64-bit mode.
(ix86_compute_frame_layout): Remove assert on INCOMING_STACK_BOUNDARY.
(ix86_emit_save_reg_using_mov): Support unaligned SSE store.
Add a REG_CFA_EXPRESSION note if needed.
(ix86_emit_restore_sse_regs_using_mov): Support unaligned SSE load.
(ix86_handle_force_align_arg_pointer_attribute): New.
(ix86_minimum_incoming_stack_boundary): Remove TARGET_64BIT check.
(ix86_attribute_table): Set ix86_force_align_arg_pointer_string
with ix86_handle_force_align_arg_pointer_attribute.
* config/i386/i386.h (MIN_STACK_BOUNDARY): Set to BITS_PER_WORD.

testsuite/ChangeLog:

PR target/66697
* gcc.target/i386/20060512-1.c: Remove ia32 requirement.
(PUSH, POP): New defines.
(sse2_test): Use PUSH and POP to misalign runtime stack.
* gcc.target/i386/20060512-2.c: Remove ia32 requirement.

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

8 years ago PR go/67874
ian [Wed, 7 Oct 2015 17:22:08 +0000 (17:22 +0000)]
PR go/67874
    net, runtime: Call C library fcntl function rather than syscall.Syscall.

    Not all systems define a fcntl syscall; some only have fcntl64.

    Fixes GCC PR go/67874.

    Reviewed-on: https://go-review.googlesource.com/15497

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

8 years ago * testsuite/lib/atomic-dg.exp (atomic_link_flags): Move flag setting
jnorris [Wed, 7 Oct 2015 17:09:46 +0000 (17:09 +0000)]
* testsuite/lib/atomic-dg.exp (atomic_link_flags): Move flag setting
to atomic_init. (atomic_init): Restrict flags usage.

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

8 years agoremove unused code
spop [Wed, 7 Oct 2015 16:19:09 +0000 (16:19 +0000)]
remove unused code

2015-10-07  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-scop-detection.c (parameter_index_in_region): Remove
                use of SESE_ADD_PARAMS.
                (find_scop_parameters): Same.
                * sese.c (new_sese_info): Same.
                * sese.h (struct sese_info_t): Remove add_params.
                (SESE_ADD_PARAMS): Remove.

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

8 years agomove graphite bookkeeping from sese to sese_info
spop [Wed, 7 Oct 2015 15:40:17 +0000 (15:40 +0000)]
move graphite bookkeeping from sese to sese_info

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-isl-ast-to-gimple.c (translate_isl_ast_to_gimple): Use
                an sese_info_p.
                (copy_def): Same.
                (copy_internal_parameters): Same.
                (translate_isl_ast_to_gimple): Use an sese_l.
                (build_iv_mapping): Same.
                * graphite-poly.c (new_sese): Rename new_sese_info.
                (free_sese): Rename free_sese_info.
                * graphite-poly.h (struct scop): Use an sese_info_p.
                (scop_set_region): Same.
                * graphite-scop-detection.c (struct sese_l): Moved...
                (get_entry_bb): Moved...
                (get_exit_bb): Moved...
                (parameter_index_in_region_1): Use an sese_info_p.
                (parameter_index_in_region): Same.
                (scan_tree_for_params): Same.
                (find_params_in_bb): Same.
                (sese_dom_walker): Use an sese_l.
                * graphite-sese-to-poly.c (remove_invariant_phi): Same.
                (reduction_phi_p): Same.
                (parameter_index_in_region_1): Use an sese_info_p.
                (propagate_expr_outside_region): Use an sese_l.
                * graphite.c: Replace uses of SCOP_REGION.
                * sese.c (sese_record_loop): Use an sese_info_p.
                (build_sese_loop_nests): Same.
                (sese_build_liveouts_use): Same.
                (sese_build_liveouts_bb): Same.
                (sese_build_liveouts_bb): Same.
                (sese_bad_liveouts_use): Same.
                (sese_reset_debug_liveouts_bb): Same.
                (sese_build_liveouts): Same.
                (new_sese): Renamed new_sese_info.
                (free_sese): Renamed free_sese_info.
                (set_rename): Use an sese_info_p.
                (graphite_copy_stmts_from_block): Same.
                (copy_bb_and_scalar_dependences): Same.
                (outermost_loop_in_sese_1): Use an sese_l.
                (outermost_loop_in_sese): Same.
                (if_region_set_false_region): Use an sese_info_p.
                (move_sese_in_condition): Same.
                (scalar_evolution_in_region): Use an sese_l.
                * sese.h (struct sese_l): ... here.
                (SESE_ENTRY): Remove.
                (SESE_ENTRY_BB): Remove.
                (SESE_EXIT): Remove.
                (SESE_EXIT_BB): Remove.
                (sese_contains_loop): Use an sese_info_p.
                (sese_nb_params): Same.
                (bb_in_sese_p): Use an sese_l.
                (stmt_in_sese_p): Same.
                (defined_in_sese_p): Same.
                (loop_in_sese_p): Same.
                (sese_loop_depth): Same.
                (struct ifsese_s): Use an sese_info_p.
                (gbb_loop_at_index): Use an sese_l.
                (nb_common_loops): Same.
                (scev_analyzable_p): Same.

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

8 years ago PR sanitizer/67867
mpolacek [Wed, 7 Oct 2015 14:09:05 +0000 (14:09 +0000)]
PR sanitizer/67867
* search.c (accessible_p): Initialize OTYPE to NULL_TREE.

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

8 years agoDefine x86 CALL_USED_REGISTERS_MASK
hjl [Wed, 7 Oct 2015 13:47:12 +0000 (13:47 +0000)]
Define x86 CALL_USED_REGISTERS_MASK

Define x86 CALL_USED_REGISTERS_MASK used on x86 CALL_USED_REGISTERS.

* config/i386/i386.c (ix86_conditional_register_usage): Use
CALL_USED_REGISTERS_MASK.
* config/i386/i386.h (CALL_USED_REGISTERS_MASK): New macro.

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

8 years agoCheck $READELF_FOR_TARGET for readelf in configure
hjl [Wed, 7 Oct 2015 13:45:21 +0000 (13:45 +0000)]
Check $READELF_FOR_TARGET for readelf in configure

Similar to as, ld, nm and objdump, gcc configure should check
$READELF_FOR_TARGET for readelf.

PR bootstrap/67385
* configure.ac (gcc_cv_readelf): Check $READELF_FOR_TARGET.
* configure: Regenerated.

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

8 years agogcc/fortran/ChangeLog:
vehre [Wed, 7 Oct 2015 10:58:46 +0000 (10:58 +0000)]
gcc/fortran/ChangeLog:

2015-10-07  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/65889
* trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Handle pointer to and
on stack class objects as sizeof parameter.

gcc/testsuite/ChangeLog:

2015-10-07  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/65889
* gfortran.dg/sizeof_5.f90: New test.

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

8 years agoMerge ix86_maybe_switch_abi with ix86_set_current_function
hjl [Wed, 7 Oct 2015 10:30:12 +0000 (10:30 +0000)]
Merge ix86_maybe_switch_abi with ix86_set_current_function

ix86_maybe_switch_abi is called to late during RTL expansion and we
use the stale information from compilation of the previous function.
aggregate_value_p uses call_used_regs.  aggregate_value_p is used by
IPA and return value optimization, which are called before
ix86_maybe_switch_abi is called.  This patch merges ix86_maybe_switch_abi
with ix86_set_current_function.

PR target/67850
* config/i386/i386.c (ix86_maybe_switch_abi): Merged with ...
(ix86_set_current_function): This.
(TARGET_EXPAND_TO_RTL_HOOK): Removed.

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

8 years agoCheck in forgotten test for fortran/65766
lkrupp [Wed, 7 Oct 2015 09:21:58 +0000 (09:21 +0000)]
Check in forgotten test for fortran/65766

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

8 years ago2015-10-07 Richard Biener <rguenther@suse.de>
rguenth [Wed, 7 Oct 2015 09:04:48 +0000 (09:04 +0000)]
2015-10-07  Richard Biener  <rguenther@suse.de>

* tree-vectorizer.h (stmt_vec_info_vec): Use vec<stmt_vec_info>.
(vinfo_for_stmt): Adjust.
(set_vinfo_for_stmt): Likewise.
* tree-vectorizer.c (stmt_vec_info_vec): Likewise.
* tree-vect-stmts.c (free_stmt_vec_info_vec): Likewise.
* tree-vect-loop.c (new_loop_vec_info): Remove special-casing
of inner loop.
(vect_analyze_loop_1): Remove.
(vect_analyze_loop_form_1): Avoid building a loop_vec_info for
inner loop when vectorizing an outer loop by splitting out from ...
(vect_analyze_loop_form): ... here.

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

8 years agoFix PR c/65345 for arm
ramana [Wed, 7 Oct 2015 08:37:35 +0000 (08:37 +0000)]
Fix PR c/65345 for arm

2015-10-07  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR c/65345
* config/arm/arm-builtins.c (arm_atomic_assign_expand_fenv):
Use create_tmp_var_raw instead of create_tmp_var.

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

8 years agoCache reals for 1/4, 1/6 and 1/9
rsandifo [Wed, 7 Oct 2015 08:09:45 +0000 (08:09 +0000)]
Cache reals for 1/4, 1/6 and 1/9

We have a global 1/2 and a cached 1/3, but recalculate 1/4, 1/6 and 1/9
each time we need them.  That seems a bit arbitrary and makes the folding
code more noisy (especially once it's moved to match.pd).

This patch caches the other three constants too.  Bootstrapped &
regression-tested on x86_64-linux-gnu.

gcc/
* real.h (dconst_quarter, dconst_sixth, dconst_ninth): New macros.
(dconst_quarter_ptr, dconst_sixth_ptr, dconst_ninth_ptr): Declare.
* real.c (CACHED_FRACTION): New helper macro.
(dconst_third_ptr): Use it.
(dconst_quarter_ptr, dconst_sixth_ptr, dconst_ninth_ptr): New.
* builtins.c (fold_builtin_sqrt): Use dconst_quarter and
dconst_sixth.
(fold_builtin_cbrt): Use dconst_sixth and dconst_ninth.

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

8 years ago * cp-gimplify.c (genericize_if_stmt): Use protected_set_expr_location.
mpolacek [Wed, 7 Oct 2015 06:52:45 +0000 (06:52 +0000)]
* cp-gimplify.c (genericize_if_stmt): Use protected_set_expr_location.
(genericize_cp_loop): Likewise.
* decl.c (cxx_maybe_build_cleanup): Likewise.
* parser.c (cp_parser_binary_expression): Likewise.
(cp_parser_omp_for_loop): Likewise.
(cp_parser_omp_construct): Likewise.
* semantics.c (finish_transaction_stmt): Likewise.
(build_transaction_expr): Likewise.

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

8 years ago[PATCH][PR tree-optimization/67816] Fix jump threading when DOM removes conditionals...
law [Wed, 7 Oct 2015 02:25:57 +0000 (02:25 +0000)]
[PATCH][PR tree-optimization/67816] Fix jump threading when DOM removes conditionals in jump threading path

PR tree-optimization/67816
* tree-ssa-threadupdate.h (remove_jump_threads_including): Renamed
from remove_jump_threads_starting_at.  Accept an edge rather than
a basic block.
* tree-ssa-threadupdate.c (removed_edges): New hash table.
(remove_jump_threads_including): Note edges that get removed from
the CFG for later pruning of jump threading paths including them.
(thread_through_all_blocks): Remove paths which include edges that
have been removed.
* tree-ssa-dom.c (optimize_stmt): Call remove_jump_threads_including
on each outgoing edges when optimizing away a control statement.

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

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

8 years agoreorg.c: use vec<rtx_insn *> instead of rtx_insn_list for the delay insn list
tbsaunde [Wed, 7 Oct 2015 02:11:17 +0000 (02:11 +0000)]
reorg.c: use vec<rtx_insn *> instead of rtx_insn_list for the delay insn list

gcc/ChangeLog:

2015-10-06  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* reorg.c (emit_delay_sequence): Store list of delay slot insns
in a vector instead of rtx_insn_list.
(add_to_delay_list): Likewise.
(delete_from_delay_slot): Likewise.
(optimize_skip): Likewise.
(redirect_with_delay_list_safe_p): Likewise.
(check_annul_list_true_false): Likewise.
(steal_delay_list_from_target): Likewise.
(steal_delay_list_from_fallthrough): Likewise.
(redundant_insn): Likewise.
(fill_simple_delay_slots): Likewise.
(fill_slots_from_thread): Likewise.
(fill_eager_delay_slots): Likewise.
(relax_delay_slots): Likewise.

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

8 years ago PR c++/67810
jason [Wed, 7 Oct 2015 01:46:54 +0000 (01:46 +0000)]
PR c++/67810
* parser.c (cp_parser_fold_expr_p): Remove.
(is_binary_op): New.
(cp_parser_fold_expression): Take LHS as parameter.
(cp_parser_primary_expression): Call it after parsing an expression.
(cp_parser_binary_expression, cp_parser_assignment_operator_opt)
(cp_parser_expression): Ignore an operator followed by '...'.
(is_binary_op): New.
* pt.c (tsubst_unary_left_fold, tsubst_binary_left_fold)
(tsubst_unary_right_fold, tsubst_binary_right_fold): Handle errors.

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

8 years agoDaily bump.
gccadmin [Wed, 7 Oct 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago2015-10-06 Louis Krupp <louis.krupp@zoho.com>
lkrupp [Tue, 6 Oct 2015 23:47:18 +0000 (23:47 +0000)]
2015-10-06  Louis Krupp <louis.krupp@zoho.com>
PR fortran/65766
* resolve.c (gfc_resolve_substring_charlen): For derived type,
use typespec of string component when resolving substring length.

2015-10-06  Louis Krupp     <louis.krupp@zoho.com>

PR fortran/65766
* gfortran.dg/substr_alloc_string_comp_1.f90: New.

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

8 years ago compiler: Record each import as a distinct alias.
ian [Tue, 6 Oct 2015 21:24:17 +0000 (21:24 +0000)]
compiler: Record each import as a distinct alias.

    This patch introduces the Package_alias class which is a
    finer representation of the different between a package and the
    aliases it is imported under.  Each alias keeps track of the location
    of its import statement and how many times that alias has been used.
    This allows the gofrontend to report when a specific import has not
    been used even if a symbol from the package has been used by another
    import.

    Fixes golang/go#12326.

    Reviewed-on: https://go-review.googlesource.com/14259

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

8 years ago2015-10-06 Sandra Loosemore <sandra@codesourcery.com>
sandra [Tue, 6 Oct 2015 21:10:15 +0000 (21:10 +0000)]
2015-10-06  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.c (nios2_symbol_ref_in_small_data_p):
For -mgpopt=local, also exclude unintialized common symbols.
* doc/invoke.texi (Nios II Options): Document the change.

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

8 years agogcc/ChangeLog:
kugan [Tue, 6 Oct 2015 21:08:05 +0000 (21:08 +0000)]
gcc/ChangeLog:

2015-10-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

* config/aarch64/iterators.md (vwcore): Add missing cases for
 V4HF/V8HF modes.

gcc/testsuite/ChangeLog:

2015-10-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

* gcc.target/aarch64/get_lane_f16_1.c: New test.

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

8 years agomove dr->alias_set to a helper structure
spop [Tue, 6 Oct 2015 20:50:35 +0000 (20:50 +0000)]
move dr->alias_set to a helper structure

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-poly.c (new_scop): Initialize drs.
                * graphite-poly.h (struct dr_info): New.
                (struct scop): Add drs.
                * graphite-sese-to-poly.c (pdr_add_alias_set): Use dr_info.
                (pdr_add_memory_accesses): Same.
                (build_poly_dr): Same.
                (build_alias_set): Same.
                (build_scop_drs): Same.
                (build_pbb_drs): Remove.
                * tree-data-ref.c (create_data_ref): Do not initialize alias_set.
                * tree-data-ref.h (data_reference): Remove alias_set.

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

8 years agoremove unused struct base_alias_pair
spop [Tue, 6 Oct 2015 20:50:29 +0000 (20:50 +0000)]
remove unused struct base_alias_pair

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-poly.c (free_data_refs_aux): Remove.
                (free_gimple_poly_bb): Do not call free_data_refs_aux.
                * graphite-poly.h (struct base_alias_pair): Remove.
                * graphite-sese-to-poly.c (pdr_add_alias_set): Remove all uses of
                base_alias_pair and dr->aux.
                (build_alias_set): Same.
                * tree-data-ref.c (create_data_ref): Initialize alias_set.
                * tree-data-ref.h (data_reference): Add alias_set.

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

8 years agoremove dead code in computation of alias sets
spop [Tue, 6 Oct 2015 20:50:22 +0000 (20:50 +0000)]
remove dead code in computation of alias sets

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-poly.c (new_poly_dr): Remove dr_base_object_set.
                Do not set PDR_BASE_OBJECT_SET.
                * graphite-poly.h (poly_dr): Same.
                (PDR_BASE_OBJECT_SET): Remove.
                (new_poly_dr): Update decl.
                * graphite-sese-to-poly.c (build_poly_dr): Update call to
                new_poly_dr.
                (write_alias_graph_to_ascii_dimacs): Remove.
                (write_alias_graph_to_ascii_dot): Remove.
                (write_alias_graph_to_ascii_ecc): Remove.
                (dr_same_base_object_p): Remove.
                (build_alias_set_optimal_p): Rename build_alias_set.  Remove dead
                code.
                (build_base_obj_set_for_drs): Remove.
                (dump_alias_graphs): Remove.
                (build_scop_drs): Remove dead code.

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

8 years ago * c-parser.c (c_parser_statement_after_labels): Use
mpolacek [Tue, 6 Oct 2015 17:59:10 +0000 (17:59 +0000)]
* c-parser.c (c_parser_statement_after_labels): Use
protected_set_expr_location.
(c_parser_omp_clause_num_gangs): Likewise.
(c_parser_omp_clause_num_threads): Likewise.
(c_parser_omp_clause_num_workers): Likewise.
(c_parser_omp_clause_vector_length): Likewise.
(c_parser_omp_clause_num_teams): Likewise.
(c_parser_omp_clause_thread_limit): Likewise.
* c-typeck.c (build_c_cast): Likewise.
(c_cast_expr): Likewise.

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

8 years ago PR c++/67863
mpolacek [Tue, 6 Oct 2015 17:56:23 +0000 (17:56 +0000)]
PR c++/67863
* call.c (build_conditional_expr_1): Build the COND_EXPR with
a location.

* c-c++-common/Wtautological-compare-4.c: New test.

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

8 years agoRemove duplicate target line.
meissner [Tue, 6 Oct 2015 17:49:17 +0000 (17:49 +0000)]
Remove duplicate target line.

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

8 years ago[gcc]
meissner [Tue, 6 Oct 2015 17:20:49 +0000 (17:20 +0000)]
[gcc]
2015-10-05  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Peter Bergner  <bergner@vnet.ibm.com>

PR target/67808
* config/rs6000/rs6000.md (extenddftf2): In the expander, only
allow registers, but provide insns for the combiner to create for
loads from memory. Separate VSX code from non-VSX code. For
non-VSX code, combine extenddftf2_fprs into extenddftf2 and rename
externaldftf2_internal to externaldftf2_fprs. Reorder constraints
so that registers come before memory operations. Drop support from
converting DFmode to TFmode, if the DFmode value is in a GPR
register.
(extenddftf2_fprs): Likewise.
(extenddftf2_internal): Likewise.
(extenddftf2_vsx): Likewise.
(extendsftf2): In the expander, only allow registers, but provide
insns for the combiner to create for stores and loads.

[gcc/testsuite]
2015-10-05  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

PR target/67808
* gcc.target/powerpc/pr67808.c: New test.

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

8 years agoRemove ATTRIBUTE_UNUSED from `decl' parameter of default_elf_asm_named_section
ramana [Tue, 6 Oct 2015 17:00:12 +0000 (17:00 +0000)]
Remove ATTRIBUTE_UNUSED from `decl' parameter of default_elf_asm_named_section

The decl parameter in default_elf_asm_named_section is actually used.
Applied as obvious after an arm-none-eabi build.

Ramana

2015-10-06 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>

* varasm.c (default_elf_asm_named_section): Remove ATTRIBUTE_UNUSED
from the decl parameter.

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

8 years ago PR 67861
nathan [Tue, 6 Oct 2015 16:47:00 +0000 (16:47 +0000)]
PR 67861
* gimple-fold.c (gimple_fold_builtin): Add break after
BUILT_IN_PRINTF_CHK, BUILT_IN_VPRINTF_CHK folding.

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

8 years agoRename scop->ctx to isl_context
hjl [Tue, 6 Oct 2015 16:42:13 +0000 (16:42 +0000)]
Rename scop->ctx to isl_context

* graphite-optimize-isl.c (optimize_isl): Rename scop->ctx
to scop->isl_context.

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

8 years ago * config/arm/arm.c (arm_emit_probe_stack_range): Adjust comment.
ebotcazou [Tue, 6 Oct 2015 16:39:00 +0000 (16:39 +0000)]
* config/arm/arm.c (arm_emit_probe_stack_range): Adjust comment.
(output_probe_stack_range): Rotate the loop and simplify.
(thumb1_expand_prologue): Tweak sorry message.
* config/arm/arm.md (probe_stack): Use bare string.

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

8 years ago * config.gcc (lm32-elf): Add newlib-stdint.h to tm_file.
nickc [Tue, 6 Oct 2015 16:36:49 +0000 (16:36 +0000)]
* config.gcc (lm32-elf): Add newlib-stdint.h to tm_file.

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

8 years agogcc * config/msp430/msp430.c (ATTR_NOINIT): New constant.
nickc [Tue, 6 Oct 2015 16:26:22 +0000 (16:26 +0000)]
gcc * config/msp430/msp430.c (ATTR_NOINIT): New constant.
(ATTR_PERSIST): New constant.
(msp430_data_attr): New function - verifies an attribute that only
applies to variables.
(msp430_attributes): Add noinit and persistent attributes.
(noinit_section): New variable.
(presis_section): New variable.
(TARGET_ASM_INIT_SECTIONS): Define.
(msp430_init_sections): New function - initialises the noinit and
persist section variables.
(msp430_select_section): Add support for noinit and persist
attributes.
(msp430_section_type_flags): Likewise.
* doc/extend.texi:  Document the reent, critical, wakeup, noinit
and persistent attributes.

tests * gcc.target/msp430: New directory.
* gcc.target/msp430/msp430.exp: New file.  Runs MSP430 specific
tests.
* gcc.target/msp430/data-attributes.c: New file.  Checks the
noinit and persistent data attributes.

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

8 years agoremove dead code used by the old cloog scheduler
spop [Tue, 6 Oct 2015 15:56:15 +0000 (15:56 +0000)]
remove dead code used by the old cloog scheduler

2015-10-05  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-dependences.c (scop_get_transformed_schedule): Remove.
                (no_violations): Remove.
                (subtract_commutative_associative_deps): Remove.
                (compute_deps): Do not call subtract_commutative_associative_deps.
                (transform_is_safe): Remove.
                (graphite_legal_transform): Remove.
                * graphite-poly.h (graphite_legal_transform): Remove.

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

8 years agoEarly exit to avoid redundant computations
spop [Tue, 6 Oct 2015 15:56:09 +0000 (15:56 +0000)]
Early exit to avoid redundant computations

Analyze only those bbs which are outside the region for uses which might be
defined inside the region. This is intended to improve the compile time. This
algorithm may be further improved by only looking at the successors of region as
these regions are sese. Added FIXMEs to make this improvement in future.

Passes regtest and bootstrap on x86_64.

gcc/ChangeLog:

2015-10-05  Aditya Kumar  <hiraditya@msn.com>

        * graphite-sese-to-poly.c (build_loop_iteration_domains): Only loops
        which are in this region are passed so gcc_assert and remove redundant
        computation.
        * sese.c (sese_build_liveouts): Pass only those bbs which are not in region.
        (sese_bad_liveouts_use): Only BBs which are not in region are passed so
        gcc_assert on that and remove unnecessary computation.
        (sese_build_liveouts_use): Same.

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

8 years agoMove declarations, assign types, renaming.
spop [Tue, 6 Oct 2015 15:56:03 +0000 (15:56 +0000)]
Move declarations, assign types, renaming.

1. Move declarations near the assignment/usage.
2. Assign type to members which were void*.
3. Rename scop->context to scop::param_context, and scop::ctx to
scop::isl_context

No functional changes intended. Passes regtest and bootstrap.

gcc/ChangeLog:

2015-10-05  Aditya Kumar  <aditya.k7@samsung.com>

        * graphite-dependences.c (scop_get_reads): Renamed scop->context to scop->param_context.
        (scop_get_must_writes): Same.
        (scop_get_may_writes): Same.
        (scop_get_original_schedule): Same.
        (scop_get_transformed_schedule): Same.
        (subtract_commutative_associative_deps): Same.
        * graphite-isl-ast-to-gimple.c (add_parameters_to_ivs_params): Same.
        (generate_isl_context): Same.
        (generate_isl_schedule): Same.
        (scop_to_isl_ast): Same.
        (graphite_regenerate_ast_isl): Same.
        * graphite-optimize-isl.c (scop_get_domains): Same.
        (optimize_isl): Renamed scop->context to scop->param_context.
        * graphite-poly.c (new_poly_bb): Change the type of argument to gimple_poly_bb_p.
        (new_scop): Renamed scop->context to scop->param_context.
        (free_scop): Same.
        (print_scop_context): Same.
        * graphite-poly.h (new_poly_dr): Change the type of argument from void* to data_reference_p.
        (struct poly_bb): Change the type of black_box to gimple_poly_bb_p.
        (new_poly_bb): Change the type of argument from void* to gimple_poly_bb_p.
        (pbb_set_black_box): Same.
        (struct scop): Rename context to param_context, ctx to isl_context.
        * graphite-scop-detection.c (scop_detection::build_scop_bbs_1): Move declarations closer to assignment.
        (find_params_in_bb): Same.
        (find_scop_parameters): Same.
        * graphite-sese-to-poly.c (unsigned ssa_name_version_typesize): Global to be used for statement IDs.
        (isl_id_for_pbb): Use ssa_name_version_typesize.
        (simple_copy_phi_p): Move declarations closer to assignment.
        (build_pbb_scattering_polyhedrons): Same.
        (build_scop_scattering): Same.
        (isl_id_for_ssa_name): Same.
        (extract_affine_name): Same.
        (extract_affine_int): Same.
        (extract_affine): Same.
        (set_scop_parameter_dim): Use renamed member.
        (build_loop_iteration_domains): Same.
        (add_param_constraints): Same.
        (build_scop_iteration_domain): Same.
        (pdr_add_data_dimensions): Same.
        (build_poly_dr): Same.
        (build_scop_drs): Move declarations closer to assignment.
        (analyze_drs_in_stmts): Same.
        (insert_out_of_ssa_copy): Same.
        (insert_out_of_ssa_copy_on_edge): Same.
        (propagate_expr_outside_region): Same.
        (rewrite_phi_out_of_ssa): Same.
        (rewrite_degenerate_phi): Same.
        (rewrite_reductions_out_of_ssa): Same.
        (rewrite_cross_bb_scalar_dependence): Same.
        (handle_scalar_deps_crossing_scop_limits): Same.
        (rewrite_cross_bb_scalar_deps): Same.
        * graphite.c (graphite_transform_loops): Use renamed member.

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

8 years ago PR c/65345
uros [Tue, 6 Oct 2015 15:31:11 +0000 (15:31 +0000)]
PR c/65345
* config/alpha/alpha.c (alpha_atomic_assign_expand_fenv): Use
create_tmp_var_raw instead of create_tmp_var.

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

8 years agoFix PR c/65345 for AArch64
ramana [Tue, 6 Oct 2015 15:09:43 +0000 (15:09 +0000)]
Fix PR c/65345 for AArch64

2015-10-06  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR c/65345
* config/aarch64/aarch64-builtins.c (aarch64_atomic_assign_expand_fenv):
Use create_tmp_var_raw instead of create_tmp_var.

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

8 years agoAVX-512. Avoid upper-bank registers when splitting vec_extract_lo instruction.
kyukhin [Tue, 6 Oct 2015 13:49:30 +0000 (13:49 +0000)]
AVX-512. Avoid upper-bank registers when splitting vec_extract_lo instruction.

gcc/
PR target/67849
* config/i386/sse.md (define_split vec_select/V8FI): Restrict
split for upper-bank registers when target does not support
AVX512VL.
(define_insn "vec_extract_lo_<mode><mask_name>"): Restrict
split when target does not support AVX512VL.

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

8 years ago PR c/65345
dje [Tue, 6 Oct 2015 13:46:34 +0000 (13:46 +0000)]
    PR c/65345
        * config/rs6000/rs6000.c (rs6000_atomic_assign_expand_fenv):
        Adjust to use create_tmp_var_raw instead of create_tmp_var.

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

8 years agogcc/testsuite/
kyukhin [Tue, 6 Oct 2015 13:46:22 +0000 (13:46 +0000)]
gcc/testsuite/
        * gcc.target/i386/builtin_target.c: Fix AVX-512VBMI detection.

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

8 years ago * config/rl78/rl78.c (rl78_rtx_costs): Improve cost estimates for
nickc [Tue, 6 Oct 2015 13:42:33 +0000 (13:42 +0000)]
* config/rl78/rl78.c (rl78_rtx_costs): Improve cost estimates for
multiplication.

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

8 years ago2015-10-06 Venkataramanan Kumar <Venkataramanan.kumar@amd.com>
vekumar [Tue, 6 Oct 2015 12:48:41 +0000 (12:48 +0000)]
2015-10-06  Venkataramanan Kumar  <Venkataramanan.kumar@amd.com>

AMD znver1 enablement.
* config.gcc (i[34567]86-*-linux* | ...): Add znver1.
(case ${target}): Add znver1.
* config/i386/cpuid.h(bit_CLZERO):  Define.
* config/i386/driver-i386.c: (host_detect_local_cpu): Let
-march=native recognize znver1 processors.
* config/i386/i386-c.c (ix86_target_macros_internal): Add
znver1, clzero def_and_undef.
* config/i386/i386.c (struct processor_costs znver1_cost): New.
(m_znver1): New definition.
(m_AMD_MULTIPLE): Includes m_znver1.
(processor_target_table): Add znver1 entry.
(ix86_target_string) : Add clzero entry.
(static const char *const cpu_names): Add znver1 entry.
(ix86_option_override_internal): Add znver1 instruction sets.
(PTA_CLZERO) :  New definition.
(ix86_option_override_internal): Handle new clzerooption.
(ix86_issue_rate): Add znver1.
(ix86_adjust_cost): Add znver1.
(ia32_multipass_dfa_lookahead): Add znver1.
(has_dispatch): Add znver1.
* config/i386/i386.h (TARGET_znver1): New definition.
(TARGET_CLZERO): Define.
(TARGET_CLZERO_P): Define.
(struct ix86_size_cost): Add TARGET_ZNVER1.
(enum processor_type): Add PROCESSOR_znver1.
* config/i386/i386.md (define_attr "cpu"): Add znver1.
(set_attr znver1_decode): New definitions for znver1.
* config/i386/i386.opt (flag_dispatch_scheduler): Add znver1.
(mclzero): New.
* config/i386/mmx.md (set_attr znver1_decode): New definitions
for znver1.
* config/i386/sse.md (set_attr znver1_decode): Likewise.
* config/i386/x86-tune.def:  Add znver1 tunings.
* config/i386/znver1.md: Introduce znver1 cpu and include new md file.
* gcc/doc/invoke.texi: Add details about znver1

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

8 years ago2015-10-06 Richard Biener <rguenther@suse.de>
rguenth [Tue, 6 Oct 2015 12:34:15 +0000 (12:34 +0000)]
2015-10-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/67859
* tree-ssa-pre.c (create_expression_by_pieces): Properly
discard not inserted stmts.

* gcc.dg/torture/pr67859.c: New testcase.

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

8 years agoUpdate template instantiation documentation
redi [Tue, 6 Oct 2015 10:27:57 +0000 (10:27 +0000)]
Update template instantiation documentation

* doc/extend.texi (Template Instantiation): Reorder options and
de-emphasize -frepo.
* doc/invoke.texi (C++ Dialect Options): Use -fstrict-enums in
example instead of -frepo.

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

8 years ago PR c/65345
ebotcazou [Tue, 6 Oct 2015 09:14:48 +0000 (09:14 +0000)]
PR c/65345
* config/sparc/sparc.c (sparc_atomic_assign_expand_fenv): Adjust to
use create_tmp_var_raw rather than create_tmp_var.

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

8 years agogcc/testsuite/
kyukhin [Tue, 6 Oct 2015 07:55:09 +0000 (07:55 +0000)]
gcc/testsuite/
* gcc.target/i386/builtin_target.c: Fix AVX-512VBMI detection.

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

8 years ago2015-10-06 Richard Biener <rguenther@suse.de>
rguenth [Tue, 6 Oct 2015 07:52:03 +0000 (07:52 +0000)]
2015-10-06  Richard Biener  <rguenther@suse.de>

* tree-vectorizer.h (vec_info): New base class for...
(_loop_vec_info): ... this and ...
(_bb_vec_info): ... this.
(vect_is_simple_use, vect_is_simple_use_1, new_stmt_vec_info,
vect_analyze_data_refs_alignment, vect_verify_datarefs_alignment,
vect_analyze_data_ref_accesses, vect_analyze_data_refs,
vect_schedule_slp, vect_analyze_slp, vect_pattern_recog,
vect_destroy_datarefs): Adjust interface to take a vec_info *
rather than both a loop_vec_info and a bb_vec_info argument.
* tree-vect-data-refs.c (vect_compute_data_refs_alignment,
vect_verify_datarefs_alignment, vect_enhance_data_refs_alignment,
vect_analyze_data_refs_alignment, vect_analyze_data_ref_accesses,
vect_analyze_data_refs, vect_create_data_ref_ptr): Adjust
accordingly.
* tree-vect-loop.c (new_loop_vec_info): Initialize base class.
(destroy_loop_vec_info, vect_analyze_loop_2,
vect_is_simple_reduction_1, get_initial_def_for_induction,
vect_create_epilog_for_reduction, vectorizable_reduction,
vectorizable_live_operation, vect_transform_loop): Adjust.
* tree-vect-patterns.c (type_conversion_p,
vect_recog_widen_mult_pattern, vect_recog_widen_shift_pattern,
vect_recog_rotate_pattern, vect_recog_vector_vector_shift_pattern,
vect_recog_divmod_pattern, vect_recog_mixed_size_cond_pattern,
check_bool_pattern, vect_recog_bool_pattern,
vect_mark_pattern_stmts, vect_pattern_recog): Likewise.
* tree-vect-slp.c (vect_get_and_check_slp_defs,
vect_build_slp_tree_1, vect_build_slp_tree, vect_analyze_slp_cost_1,
vect_analyze_slp_instance, vect_analyze_slp, destroy_bb_vec_info,
vect_slp_analyze_bb_1, vect_schedule_slp): Likewise.
(new_bb_vec_info): Initialize base classs.
* tree-vect-stmts.c (record_stmt_cost, process_use,
vect_get_vec_def_for_operand, vect_finish_stmt_generation,
vectorizable_mask_load_store, vectorizable_call,
vectorizable_simd_clone_call, vectorizable_conversion,
vectorizable_assignment, vectorizable_shift,
vectorizable_operation, vectorizable_store,
vectorizable_load, vect_is_simple_cond, vectorizable_condition,
new_stmt_vec_info, vect_is_simple_use, vect_is_simple_use_1): Likewise.
* tree-vectorizer.c (vect_destroy_datarefs): Likewise.

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

8 years agogcc/testsuite/
kyukhin [Tue, 6 Oct 2015 07:29:05 +0000 (07:29 +0000)]
gcc/testsuite/
* gcc.target/i386/builtin_target.c: Add check for AES and PCLMUL.

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

8 years agoDaily bump.
gccadmin [Tue, 6 Oct 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoFix PR65345 in SH backend
kkojima [Mon, 5 Oct 2015 22:18:05 +0000 (22:18 +0000)]
Fix PR65345 in SH backend
Adjust to use create_tmp_var_raw rather than create_tmp_var at
sh_atomic_assign_expand_fenv.

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

8 years ago/cp
paolo [Mon, 5 Oct 2015 21:43:26 +0000 (21:43 +0000)]
/cp
2015-10-05  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53856
* pt.c (check_default_tmpl_args): Per [temp.param]/9, do not
reject default template arguments in out of class definitions
of members of non-template classes.

/testsuite
2015-10-05  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53856
* g++.dg/template/defarg19.C: New.
* g++.dg/template/defarg20.C: Likewise.

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

8 years agoRemove diffstat from ChangeLog.
rsandifo [Mon, 5 Oct 2015 19:46:53 +0000 (19:46 +0000)]
Remove diffstat from ChangeLog.

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

8 years ago lex: Update unicode letters table to Unicode 8.0.0.
ian [Mon, 5 Oct 2015 17:59:40 +0000 (17:59 +0000)]
lex: Update unicode letters table to Unicode 8.0.0.

    Fixes golang/go#12322.

    Reviewed-on: https://go-review.googlesource.com/13985

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

8 years ago * tree-ssa-loop-im.c
mpolacek [Mon, 5 Oct 2015 16:33:16 +0000 (16:33 +0000)]
* tree-ssa-loop-im.c
(move_computations_dom_walker::before_dom_children): Don't set
SSA_NAME_ANTI_RANGE_P.
* tree-ssa-phiopt.c (value_replacement): Likewise.

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

8 years agoincrease the number of parameters
spop [Mon, 5 Oct 2015 16:03:21 +0000 (16:03 +0000)]
increase the number of parameters

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

8 years agomove param detection to scop detection
spop [Mon, 5 Oct 2015 16:03:09 +0000 (16:03 +0000)]
move param detection to scop detection

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

8 years agomove scop detection related stuff to graphite-scop-detection.c
spop [Mon, 5 Oct 2015 16:02:59 +0000 (16:02 +0000)]
move scop detection related stuff to graphite-scop-detection.c

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