platform/upstream/linaro-gcc.git
9 years agoAdd param parloops-chunk-size
vries [Thu, 3 Sep 2015 11:00:46 +0000 (11:00 +0000)]
Add param parloops-chunk-size

2015-09-03  Tom de Vries  <tom@codesourcery.com>

* doc/invoke.texi (parloops-chunk-size): Add item.
* params.def (PARAM_PARLOOPS_CHUNK_SIZE): Add DEFPARAM.
* tree-parloops.c: Include params.h.
(create_parallel_loop): Set chunk-size of schedule of omp-for loop, if
param parloops-chunk-size is used.

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

9 years ago2015-09-03 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Thu, 3 Sep 2015 10:25:28 +0000 (10:25 +0000)]
2015-09-03  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* g++.dg/pr67351.C: Correct the testcase name.

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

9 years ago2015-09-03 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Thu, 3 Sep 2015 10:20:03 +0000 (10:20 +0000)]
2015-09-03  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

PR middle-end/67351

gcc/ChangeLog:
* fold-const.c (fold_binary_loc) : Move
Transform (x >> c) << c into x & (-1<<c) or
transform (x << c) >> c into x & ((unsigned)-1 >> c) for unsigned
types using simplify and match.
* match.pd (lshift (rshift @0 INTEGER_CST@1) @1) : New simplifier.
(rshift (lshift @0 INTEGER_CST@1) @1) : New Simplifier.

gcc/testsuite/ChangeLog:
* g++.dg/pr66752-2.C: New test.

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

9 years ago2015-09-03 Richard Biener <rguenther@suse.de>
rguenth [Thu, 3 Sep 2015 09:24:51 +0000 (09:24 +0000)]
2015-09-03  Richard Biener  <rguenther@suse.de>

PR ipa/66705
* tree-ssa-structalias.c (ctor_for_analysis): New function.
(create_variable_info_for_1): Use ctor_for_analysis instead
of get_constructor.
(create_variable_info_for): Likewise.

* g++.dg/lto/pr66705_0.C: New testcase.

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

9 years agolibstdc++: Run tests on RTEMS
sh [Thu, 3 Sep 2015 05:45:33 +0000 (05:45 +0000)]
libstdc++: Run tests on RTEMS

libstdc++-v3/ChangeLog

* testsuite/18_support/pthread_guard.cc: Add *-*-rtems* target
selector to all lines which contain a *-*-cygwin target selector.
* testsuite/20_util/shared_ptr/atomic/3.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
* testsuite/21_strings/basic_string/pthread33394.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/pthread5.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/30_threads/async/42819.cc: Likewise.
* testsuite/30_threads/async/49668.cc: Likewise.
* testsuite/30_threads/async/54297.cc: Likewise.
* testsuite/30_threads/async/any.cc: Likewise.
* testsuite/30_threads/async/async.cc: Likewise.
* testsuite/30_threads/async/launch.cc: Likewise.
* testsuite/30_threads/async/lwg2021.cc: Likewise.
* testsuite/30_threads/async/sync.cc: Likewise.
* testsuite/30_threads/call_once/39909.cc: Likewise.
* testsuite/30_threads/call_once/49668.cc: Likewise.
* testsuite/30_threads/call_once/60497.cc: Likewise.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/54185.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
* testsuite/30_threads/condition_variable/members/3.cc: Likewise.
* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
* testsuite/30_threads/future/cons/move.cc: Likewise.
* testsuite/30_threads/future/members/45133.cc: Likewise.
* testsuite/30_threads/future/members/get.cc: Likewise.
* testsuite/30_threads/future/members/get2.cc: Likewise.
* testsuite/30_threads/future/members/share.cc: Likewise.
* testsuite/30_threads/future/members/valid.cc: Likewise.
* testsuite/30_threads/future/members/wait.cc: Likewise.
* testsuite/30_threads/future/members/wait_for.cc: Likewise.
* testsuite/30_threads/future/members/wait_until.cc: Likewise.
* testsuite/30_threads/lock/1.cc: Likewise.
* testsuite/30_threads/lock/2.cc: Likewise.
* testsuite/30_threads/lock/3.cc: Likewise.
* testsuite/30_threads/lock/4.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/packaged_task/49668.cc: Likewise.
* testsuite/30_threads/packaged_task/60564.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
* testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
Likewise.
* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
* testsuite/30_threads/promise/60966.cc: Likewise.
* testsuite/30_threads/promise/cons/1.cc: Likewise.
* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
* testsuite/30_threads/promise/cons/move.cc: Likewise.
* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
* testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
* testsuite/30_threads/promise/members/get_future.cc: Likewise.
* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value.cc: Likewise.
* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
* testsuite/30_threads/promise/members/swap.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
* testsuite/30_threads/shared_future/members/get.cc: Likewise.
* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/this_thread/1.cc: Likewise.
* testsuite/30_threads/this_thread/2.cc: Likewise.
* testsuite/30_threads/this_thread/3.cc: Likewise.
* testsuite/30_threads/this_thread/4.cc: Likewise.
* testsuite/30_threads/thread/cons/1.cc: Likewise.
* testsuite/30_threads/thread/cons/2.cc: Likewise.
* testsuite/30_threads/thread/cons/3.cc: Likewise.
* testsuite/30_threads/thread/cons/4.cc: Likewise.
* testsuite/30_threads/thread/cons/49668.cc: Likewise.
* testsuite/30_threads/thread/cons/5.cc: Likewise.
* testsuite/30_threads/thread/cons/6.cc: Likewise.
* testsuite/30_threads/thread/cons/7.cc: Likewise.
* testsuite/30_threads/thread/cons/8.cc: Likewise.
* testsuite/30_threads/thread/cons/9.cc: Likewise.
* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
* testsuite/30_threads/thread/members/1.cc: Likewise.
* testsuite/30_threads/thread/members/2.cc: Likewise.
* testsuite/30_threads/thread/members/3.cc: Likewise.
* testsuite/30_threads/thread/members/4.cc: Likewise.
* testsuite/30_threads/thread/members/5.cc: Likewise.
* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/2.cc: Likewise.
* testsuite/30_threads/try_lock/1.cc: Likewise.
* testsuite/30_threads/try_lock/2.cc: Likewise.
* testsuite/30_threads/try_lock/3.cc: Likewise.
* testsuite/30_threads/try_lock/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
Likewise.

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

9 years agoRTEMS: Update RTEMS thread model
sh [Thu, 3 Sep 2015 05:28:46 +0000 (05:28 +0000)]
RTEMS: Update RTEMS thread model

libgcc/ChangeLog

* config/gthr-rtems.h (__GTHREADS_CXX0X): New.
(__GTHREAD_HAS_COND): Likewise.
(__gthread_t): Likewise.
(__gthread_cond_t): Likewise.
(__gthread_time_t): Likewise.
(__GTHREAD_MUTEX_INIT): Likewise.
(__GTHREAD_RECURSIVE_MUTEX_INIT): Likewise.
(__GTHREAD_COND_INIT): Likewise.
(__GTHREAD_COND_INIT_FUNCTION): Likewise.
(__GTHREAD_TIME_INIT): Likewise.
(__gthread_create): Likewise.
(__gthread_join): Likewise.
(__gthread_detach): Likewise.
(__gthread_equal): Likewise.
(__gthread_self): Likewise.
(__gthread_yield): Likewise.
(__gthread_cond_broadcast): Likewise.
(__gthread_cond_signal): Likewise.
(__gthread_cond_wait): Likewise.
(__gthread_cond_timedwait): Likewise.
(__gthread_cond_wait_recursive): Likewise.
(__gthread_cond_destroy): Likewise.
(rtems_gxx_once): Delete.
(rtems_gxx_key_create): Likewise.
(rtems_gxx_key_delete): Likewise.
(rtems_gxx_getspecific): Likewise.
(rtems_gxx_setspecific): Likewise.
(rtems_gxx_mutex_init): Likewise.
(rtems_gxx_mutex_destroy): Likewise.
(rtems_gxx_mutex_lock): Likewise.
(rtems_gxx_mutex_trylock): Likewise.
(rtems_gxx_mutex_unlock): Likewise.
(rtems_gxx_recursive_mutex_init): Likewise.
(rtems_gxx_recursive_mutex_lock): Likewise.
(rtems_gxx_recursive_mutex_trylock): Likewise.
(rtems_gxx_recursive_mutex_unlock): Likewise.
(__GTHREAD_ONCE_INIT): Use <pthread.h> initializer.
(__GTHREAD_MUTEX_INIT_FUNCTION): Use <pthread.h> function.
(__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION): Likewise.
(__gthread_once): Likewise.
(__gthread_key_create): Likewise.
(__gthread_key_delete): Likewise.
(__gthread_getspecific): Likewise.
(__gthread_setspecific): Likewise.
(__gthread_key_t): Use <pthread.h> type.
(__gthread_once_t): Likewise
(__gthread_mutex_t): Use <sys/lock.h> type.
(__gthread_recursive_mutex_t): Likewise
(__gthread_mutex_lock): Use <sys/lock.h> function.
(__gthread_mutex_trylock): Likewise.
(__gthread_mutex_timedlock): Likewise.
(__gthread_mutex_unlock): Likewise.
(__gthread_mutex_destroy): Likewise.
(__gthread_recursive_mutex_lock): Likewise.
(__gthread_recursive_mutex_trylock): Likewise.
(__gthread_recursive_mutex_timedlock): Likewise.
(__gthread_recursive_mutex_unlock): Likewise.
(__gthread_recursive_mutex_destroy): Likewise.

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

9 years ago compiler: Report invalid receiver types in function definitions.
ian [Thu, 3 Sep 2015 04:33:32 +0000 (04:33 +0000)]
compiler: Report invalid receiver types in function definitions.

    Fixes golang/go#12324.

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

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

9 years agoDaily bump.
gccadmin [Thu, 3 Sep 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

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

9 years agoFix spawned function with lambda function
hjl [Wed, 2 Sep 2015 23:59:21 +0000 (23:59 +0000)]
Fix spawned function with lambda function

Make sure that the spawned function's arguments will not be pushed
into lambda function.

gcc/c-family/

2015-09-02  Balaji V. Iyer  <balaji.v.iyer@intel.com>

PR middle-end/60586
* c-common.h (cilk_gimplify_call_params_in_spawned_fn): New
prototype.
* c-gimplify.c (c_gimplify_expr): Added a call to the function
cilk_gimplify_call_params_in_spawned_fn.
* cilk.c (cilk_gimplify_call_params_in_spawned_fn): New function.
(gimplify_cilk_spawn): Removed EXPR_STMT and CLEANUP_POINT_EXPR
unwrapping.

gcc/cp/

2015-09-02  Balaji V. Iyer  <balaji.v.iyer@intel.com>

PR middle-end/60586
* cp-gimplify.c (cilk_cp_gimplify_call_params_in_spawned_fn): New
function.
(cp_gimplify_expr): Added a call to the function
cilk_cp_gimplify_call_params_in_spawned_fn.

gcc/testsuite/

2015-09-02  Balaji V. Iyer  <balaji.v.iyer@intel.com>

PR middle-end/60586
* c-c++-common/cilk-plus/CK/pr60586.c: New file.
* g++.dg/cilk-plus/CK/pr60586.cc: Likewise.

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

9 years ago PR c/67432
mpolacek [Wed, 2 Sep 2015 21:00:38 +0000 (21:00 +0000)]
PR c/67432
* c-parser.c (c_parser_enum_specifier): Give a better error for
an empty enum.

* gcc.dg/pr67432.c: New test.

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

9 years ago compiler: Mark erroneous constants as invalid.
ian [Wed, 2 Sep 2015 20:52:42 +0000 (20:52 +0000)]
compiler: Mark erroneous constants as invalid.

    When the compiler failed to evaluate a numeric constant because
    because it was erroneous, there was no way for parent nodes to
    discover the error and lower themselves into error nodes.  This patch
    now uses the NC_INVALID enumerator to mark numeric constants with a
    known, reported error.

    Fixes golang/go#11541.

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

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

9 years agogcc/Changelog
cbaylis [Wed, 2 Sep 2015 15:24:54 +0000 (15:24 +0000)]
gcc/Changelog

        * cgraphunit.c (cgraph_node::create_wrapper): Set can_throw_external
        in new callgraph edge.

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

9 years agoPR 67414 Better diagnostics on backtrace failure, gf_strerror bugfix
jb [Wed, 2 Sep 2015 14:51:40 +0000 (14:51 +0000)]
PR 67414 Better diagnostics on backtrace failure, gf_strerror bugfix

2015-09-02  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/67414
* io/write.c (gfc_itoa): Move to runtime/string.c.
* libgfortran.h (show_backtrace): Make arg bool.
(gfc_itoa): New prototype.
* runtime/backtrace.c (struct mystate): Change type of try_simple
field, add in_signal_handler field.
(error_callback): Print out error number, or if not in a signal
handler, the error message.
(show_backtrace): Change type of arg, change initialization of
struct mystate.
(backtrace): Call show_backtrace with correct arg type.
* runtime/compile_options.c (backtrace_handler): Call with correct
arg type.
* runtime/error.c (sys_abort): Likewise.
(gf_strerror): Handle newlocale() failure.
* runtime/string.c (gfc_itoa): Function moved here from
io/write.c.

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

9 years agolibstdc++: fix data races in basic_string implementation
dvyukov [Wed, 2 Sep 2015 14:35:20 +0000 (14:35 +0000)]
libstdc++: fix data races in basic_string implementation

        * include/bits/basic_string.h: Fix data races on _M_refcount.

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

9 years ago[AArch64_be] Fix vldX/vstX AdvSIMD intrinsics.
clyon [Wed, 2 Sep 2015 14:04:22 +0000 (14:04 +0000)]
[AArch64_be] Fix vldX/vstX AdvSIMD intrinsics.

2015-09-02  Christophe Lyon  <christophe.lyon@linaro.org>

PR target/59810
PR target/63652
PR target/63653
* config/aarch64/aarch64-simd.md
(aarch64_ld<VSTRUCT:nregs><VQ:mode>): Call
gen_aarch64_simd_ld<VSTRUCT:nregs><VQ:mode>.
(aarch64_st<VSTRUCT:nregs><VQ:mode>): Call
gen_aarch64_simd_st<VSTRUCT:nregs><VQ:mode>.

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

9 years ago[testsuite] Clean up effective_target cache.
clyon [Wed, 2 Sep 2015 14:01:51 +0000 (14:01 +0000)]
[testsuite] Clean up effective_target cache.

2015-09-02  Christophe Lyon  <christophe.lyon@linaro.org>

* lib/target-supports.exp (clear_effective_target_cache): New.
(check_cached_effective_target): Update et_prop_list.
* lib/asan-dg.exp (asan_finish): Call clear_effective_target_cache.
* g++.dg/compat/compat.exp: Likewise.
* g++.dg/compat/struct-layout-1.exp: Likewise.
* lib/asan-dg.exp: Likewise.
* lib/atomic-dg.exp: Likewise.
* lib/cilk-plus-dg.exp: Likewise.
* lib/clearcap.exp: Likewise.
* lib/mpx-dg.exp: Likewise.
* lib/tsan-dg.exp: Likewise.
* lib/ubsan-dg.exp: Likewise.

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

9 years ago2015-09-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
redi [Wed, 2 Sep 2015 10:51:14 +0000 (10:51 +0000)]
2015-09-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>

PR libstdc++/67408
* include/std/mutex (__timed_mutex_impl::_M_try_lock_until): Use
_Derived::_M_timedlock().
(timed_mutex): Add _M_timedlock() and make base class a friend.
(recursive_timed_mutex): Likewise.

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

9 years ago[RS6000] Don't pass --oformat to ld
amodra [Wed, 2 Sep 2015 07:58:03 +0000 (07:58 +0000)]
[RS6000] Don't pass --oformat to ld

ld -m options select a particular ld emulation (e*.c files in ld build
dir) which provides a compiled-in scripts or select a script from
ldscripts/.  Each of these has an OUTPUT_FORMAT statement, which does
the same thing as --oformat.  --oformat is therefore redundant when
using GNU ld built this century, except possibly when overriding the
default ld scripts with -T.

* config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Don't define.
* config/rs6000/sysv4.h (LINK_TARGET_SPEC): Likewise.
(LINK_SPEC, SUBTARGET_EXTRA_SPECS): Delete link_target.

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

9 years ago compiler: Accept out of range integer -> unicode conversions.
ian [Wed, 2 Sep 2015 00:46:23 +0000 (00:46 +0000)]
compiler: Accept out of range integer -> unicode conversions.

    When converting a signed or unsigned integer value into a constant
    string, if the integer does not fit into the Go "int" type, the string
    will become "\uFFFD."

    Fixes golang/go#11525.

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

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

9 years agoDaily bump.
gccadmin [Wed, 2 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

9 years agofixed misplaced testcase
zadeck [Tue, 1 Sep 2015 23:37:20 +0000 (23:37 +0000)]
fixed misplaced testcase

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

9 years ago[RS6000] Weak functions may not be file local
amodra [Tue, 1 Sep 2015 23:03:19 +0000 (23:03 +0000)]
[RS6000] Weak functions may not be file local

A weak symbol defined in the current object file may not turn out to
be the definition used at link time, if other copies of the symbol
exist.  This means they can't be considered file local.

PR target/67417
* config/rs6000/predicates.md (current_file_function_operand): Don't
return true for weak symbols.
* config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall): Likewise.

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

9 years agoMIPS compact branch support
mpf [Tue, 1 Sep 2015 22:41:08 +0000 (22:41 +0000)]
MIPS compact branch support

gcc/
* config/mips/mips-opts.h (mips_cb_setting): New enum.
* config/mips/mips-protos.h: Add definitions for
mips_output_jump and mips_output_equal_conditional_branch
* gcc/config/mips/mips.c (MIPS_JR): Change to support the
JIC instruction.
(mips_emit_compare): Add support for the MIPS R6 conditional
compact branches.
(mips_process_sync_loop): Likewise.
(mips_output_order_conditional_branch): Likewise.
(mips16_build_call_stub): Change MIPS_CALL to
mips_output_jump.
(mips_print_operand_punctuation): Update 's' case to only
apply to micromips r2.
(mips_adjust_insn_length): Add support for forbidden slot
hazards.
(mips_avoid_hazard): Likewise.
(mips_reorg_process_insns): Likewise.
(mips_output_jump): New function.
(mips_output_equal_conditional_branch): Likewise.
(mips_output_conditional_branch): Use jrc/bc if compact
branch support is enabled.  Ensure the forbidden slots
between the two branch instructions is filled with a nop.
(mips_option_override): Add support to process the compact
branch option and set the correct defaults.  Prevent
non-explict relocs being using for MIPS R6.
(mips_trampoline_init): Add compact branch support.
(mips_mult_zero_zero_cost): Allow zero initialisation of
accumulators with TARGET_DSP.
* gcc/config/mips/mips.h (TARGET_CB_NEVER): New define.
(TARGET_CB_MAYBE): New define.
(TARGET_CB_ALWAYS): New define.
(ISA_HAS_DELAY_SLOTS): New define.
(ISA_HAS_COMPACT_BRANCHES): New define.
(ISA_HAS_JRC): New define.
(MIPS_BRANCH_C): New define.
(MIPS_CALL): Removed.
(MICROMIPS_J): Removed.
* config/mips/mips.md (compact_form): New attr.
(hazard): Add support for forbidden slots.
(define_delay): Add support for compact branches.
(*branch_order<mode>): Likewise.
(*branch_order<mode>_inverted): Likewise.
(*branch_equality<mode>): Likewise.
(*branch_equality<mode>_inverted): Likewise.
(*jump_absolute): Likewise.
(*jump_pic): Likewise.
(indirect_jump): Use mips_output_jump to produce assembly output.
(tablejump_<mode>"): Likewise.
(*<optab>"): Likewise.
(<optab>_internal): Likewise.
(sibcall_internal): Likewise.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_split): Likewise.
(call_internal_direct): Likewise.
(call_direct_split): Likewise.
(call_value_internal): Likewise.
(call_value_split): Likewise.
(call_value_internal_direct): Likewise.
(call_value_direct_split): Likewise.
(call_value_multiple_internal): Likewise.
(call_value_multiple_split): Likewise.
(mips_get_fcsr_mips16_<mode>): Likewise.
(mips_set_fcsr_mips16_<mode>): Likewise.
(tls_get_tp_mips16_<mode>): Likewise.
* config/mips/mips.opt: Add -mcompact-branches option.
* config/mips/predicates.md (order_operator): Ensure the
conditional compact branches are only used if the ISA them.
* doc/invoke.texi: Document -mcompact-branches option.

gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Handle the
dependencies between ISA level and compact-branches.
* gcc.target/mips/branch-10.c: Update expected output to allow
compact forms of b/bal.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/branch-3.c: Likewise.
* gcc.target/mips/branch-4.c: Likewise.
* gcc.target/mips/branch-5.c: Likewise.
* gcc.target/mips/branch-6.c: Likewise.
* gcc.target/mips/branch-7.c: Likewise.
* gcc.target/mips/branch-8.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.
* gcc.target/mips/branch-cost-1.c: Likewise.
* gcc.target/mips/call-1.c: Likewise.
* gcc.target/mips/call-2.c: Likewise.
* gcc.target/mips/call-3.c: Likewise.
* gcc.target/mips/call-4.c: Likewise.
* gcc.target/mips/call-5.c: Likewise.
* gcc.target/mips/call-6.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.
* gcc.target/mips/near-far-1.c: Likewise.
* gcc.target/mips/near-far-2.c: Likewise.
* gcc.target/mips/near-far-3.c: Likewise.
* gcc.target/mips/near-far-4.c: Likewise.
* gcc.target/mips/umips-branch-3.c: Ensure the test is
run with compact branches allowed.
* gcc.target/mips/compact-branches-1.c: New file.
* gcc.target/mips/compact-branches-2.c: Likewise.
* gcc.target/mips/compact-branches-3.c: Likewise.
* gcc.target/mips/compact-branches-4.c: Likewise.
* gcc.target/mips/compact-branches-5.c: Likewise.
* gcc.target/mips/compact-branches-6.c: Likewise.
* gcc.target/mips/compact-branches-7.c: Likewise.

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

9 years ago * MAINTAINERS: add myself
jamesbowman [Tue, 1 Sep 2015 19:38:16 +0000 (19:38 +0000)]
* MAINTAINERS: add myself

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

9 years ago2015-09-01 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Tue, 1 Sep 2015 19:37:52 +0000 (19:37 +0000)]
2015-09-01  Vladimir Makarov  <vmakarov@redhat.com>

PR target/61578
* lra-lives.c (process_bb_lives): Process move pseudos with the
same value for copies and preferences
* lra-constraints.c (match_reload): Create match reload pseudo
with the same value from single dying input pseudo.

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

9 years ago2015-09-01 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Tue, 1 Sep 2015 18:06:10 +0000 (18:06 +0000)]
2015-09-01  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/read_dir.f90: XFAIL this testcase on FreeBSD.
Clean-up a created directory if testcase fails.

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

9 years agogcc/
ienkovich [Tue, 1 Sep 2015 14:38:42 +0000 (14:38 +0000)]
gcc/

PR target/67405
* tree-chkp.c (chkp_find_bound_slots_1): Add NULL check.

gcc/testsuite/

PR target/67405
* g++.dg/pr67405.C: New test.

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

9 years ago+ * trans-mem.c: Add contributed-by.
aldyh [Tue, 1 Sep 2015 13:52:09 +0000 (13:52 +0000)]
+       * trans-mem.c: Add contributed-by.
+       * trans-mem.h: Same.

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

9 years agoDon't xfail gcc.dg/vect/no-scevccp-outer-11.c
ro [Tue, 1 Sep 2015 13:48:29 +0000 (13:48 +0000)]
Don't xfail gcc.dg/vect/no-scevccp-outer-11.c

* gcc.dg/vect/no-scevccp-outer-11.c: Don't xfail scan-tree-dump-times.

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

9 years ago2015-09-01 Richard Biener <rguenther@suse.de>
rguenth [Tue, 1 Sep 2015 13:27:17 +0000 (13:27 +0000)]
2015-09-01  Richard Biener  <rguenther@suse.de>

* expr.c (expand_expr_real_1): For expanding TERed defs
set the current location to that of the def if not UNKNOWN.

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

9 years ago2015-09-01 David Sherwood <david.sherwood@arm.com>
davids [Tue, 1 Sep 2015 12:40:10 +0000 (12:40 +0000)]
2015-09-01  David Sherwood  <david.sherwood@arm.com>

    gcc/
* genmodes.c: Add CONST_MODE_UNIT_SIZE modifier.

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

9 years ago[RTL-ifcvt] Make non-conditional execution if-conversion more aggressive
ktkachov [Tue, 1 Sep 2015 12:33:51 +0000 (12:33 +0000)]
[RTL-ifcvt] Make non-conditional execution if-conversion more aggressive

* ifcvt.c (struct noce_if_info): Add then_simple, else_simple,
then_cost, else_cost fields.  Change branch_cost field to unsigned
int.
(end_ifcvt_sequence): Call set_used_flags on each insn in the
sequence.
Include rtl-iter.h.
(noce_simple_bbs): New function.
(noce_try_move): Bail if basic blocks are not simple.
(noce_try_store_flag): Likewise.
(noce_try_store_flag_constants): Likewise.
(noce_try_addcc): Likewise.
(noce_try_store_flag_mask): Likewise.
(noce_try_cmove): Likewise.
(noce_try_minmax): Likewise.
(noce_try_abs): Likewise.
(noce_try_sign_mask): Likewise.
(noce_try_bitop): Likewise.
(bbs_ok_for_cmove_arith): New function.
(noce_emit_all_but_last): Likewise.
(noce_emit_insn): Likewise.
(noce_emit_bb): Likewise.
(noce_try_cmove_arith): Handle non-simple basic blocks.
(insn_valid_noce_process_p): New function.
(contains_mem_rtx_p): Likewise.
(bb_valid_for_noce_process_p): Likewise.
(noce_process_if_block): Allow non-simple basic blocks
where appropriate.

* gcc.dg/ifcvt-1.c: New test.
* gcc.dg/ifcvt-2.c: Likewise.
* gcc.dg/ifcvt-3.c: Likewise.

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

9 years agoXFAIL gfortran.dg/execute_command_line_2.f90 (PR libfortran/67412)
ro [Tue, 1 Sep 2015 11:50:19 +0000 (11:50 +0000)]
XFAIL gfortran.dg/execute_command_line_2.f90 (PR libfortran/67412)

PR libfortran/67412
* gfortran.dg/execute_command_line_2.f90: XFAIL execution on
*-*-solaris2.10.

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

9 years agoTidy tree-ssa-dom.c: Use dom_valueize more.
alalaw01 [Tue, 1 Sep 2015 10:51:43 +0000 (10:51 +0000)]
Tidy tree-ssa-dom.c: Use dom_valueize more.

* tree-ssa-dom.c (record_equivalences_from_phis,
record_equivalences_from_stmt, optimize_stmt): Use dom_valueize.
(lookup_avail_expr): Likewise, and remove comment and unused temp.

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

9 years ago * config/msp430/msp430.opt (mcpu): Fix typo.
nickc [Tue, 1 Sep 2015 10:38:17 +0000 (10:38 +0000)]
* config/msp430/msp430.opt (mcpu): Fix typo.

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

9 years ago[AArch64] Fix FAIL: gcc.target/aarch64/target_attr_crypto_ice_1.c (internal compiler...
ktkachov [Tue, 1 Sep 2015 10:32:24 +0000 (10:32 +0000)]
[AArch64] Fix FAIL: gcc.target/aarch64/target_attr_crypto_ice_1.c (internal compiler error)

* config/aarch64/aarch64.c (aarch64_set_current_function):
Re-layout any vector parameters have non-simd layout.
* config/aarch64/aarch64-builtins.c (aarch64_relayout_simd_param):
Delete.
(aarch64_simd_expand_args): Delete call to the above.

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

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

9 years ago/cp
paolo [Tue, 1 Sep 2015 08:39:47 +0000 (08:39 +0000)]
/cp
2015-09-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61753
* decl.c (smallest_type_quals_location): New.
(check_special_function_return_type): Use the latter; add int and
const location_t* parameters.
(grokdeclarator): Adjust check_special_function_return_type call.

/testsuite
2015-09-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61753
* g++.dg/other/pr61753.C: New.

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

9 years agogcc: doc: add missing space in asan-stack desc
vapier [Tue, 1 Sep 2015 01:04:29 +0000 (01:04 +0000)]
gcc: doc: add missing space in asan-stack desc

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

9 years agoDaily bump.
gccadmin [Tue, 1 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

9 years agoUpdate my e-mail address.
jwlemke [Mon, 31 Aug 2015 16:15:01 +0000 (16:15 +0000)]
Update my e-mail address.

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

9 years ago * configure.ac: For spu-*-* targets, set have_fcntl to no.
uweigand [Mon, 31 Aug 2015 14:03:34 +0000 (14:03 +0000)]
* configure.ac: For spu-*-* targets, set have_fcntl to no.
* configure: Regenerate.

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

9 years ago PR libfortran/47571
fxcoudert [Mon, 31 Aug 2015 14:02:43 +0000 (14:02 +0000)]
PR libfortran/47571
* acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Reinstate.
* configure.ac: Call LIBGFOR_GTHREAD_WEAK again.
* config.h.in: Regenerate.
* configure: Regenerate.

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

9 years agoMove some comparison simplifications to match.pd
glisse [Mon, 31 Aug 2015 14:02:00 +0000 (14:02 +0000)]
Move some comparison simplifications to match.pd

2015-08-31  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* tree.h (zerop): New function.
* tree.c (zerop): Likewise.
(element_precision): Handle expressions.
* match.pd (define_predicates): Add zerop.
(x <= +Inf): Fix comment.
(abs (x) == 0, A & C == C, A & C != 0): Converted from ...
* fold-const.c (fold_binary_loc): ... here. Remove.

gcc/testsuite/
* gcc.dg/tree-ssa/cmp-1.c: New file.

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

9 years ago2015-08-31 Richard Biener <rguenther@suse.de>
rguenth [Mon, 31 Aug 2015 14:01:45 +0000 (14:01 +0000)]
2015-08-31  Richard Biener  <rguenther@suse.de>

lto/
* lto.c (compare_tree_sccs_1): Compare DECL_ABSTRACT_ORIGIN.
* lto-symtab.c (lto_symtab_merge): Merge DECL_POSSIBLY_INLINED flag.
(lto_symtab_prevailing_decl): Do not replace a decl that didn't
participate in merging with something else.

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

9 years ago2015-08-31 Richard Biener <rguenther@suse.de>
rguenth [Mon, 31 Aug 2015 14:00:16 +0000 (14:00 +0000)]
2015-08-31  Richard Biener  <rguenther@suse.de>

PR middle-end/67381
* genmatch.c (dt_node::gen_kids): Also treat matches as barrier.

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

9 years agoMove some complex simplifications to match.pd
glisse [Mon, 31 Aug 2015 13:58:03 +0000 (13:58 +0000)]
Move some complex simplifications to match.pd

2015-08-31  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* match.pd (SIN, COS, TAN, COSH): Reorder for consistency.
(CEXPI): New operator list.
(real (conj (x)), imag (conj (x)), real (x +- y), real (cexpi (x)),
imag (cexpi (x)), conj (conj (x)), conj (complex (x, y))):
Converted from ...
* fold-const.c (fold_unary_loc, fold_binary_loc): ... here. Remove.

gcc/testsuite/
* gcc.dg/tree-ssa/complex-7.c: New file.

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

9 years agoReimplement rewrite_virtuals_into_loop_closed_ssa
vries [Mon, 31 Aug 2015 13:48:29 +0000 (13:48 +0000)]
Reimplement rewrite_virtuals_into_loop_closed_ssa

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

* tree-ssa-loop-manip.c (find_uses_to_rename_stmt)
(find_uses_to_rename_bb, find_uses_to_rename): Add and handle use_flags
parameter.
(find_uses_to_rename_def, find_uses_to_rename_in_loop): New function.
(rewrite_into_loop_closed_ssa_1): New function, factored out of ...
(rewrite_into_loop_closed_ssa): ... here.
(replace_uses_in_dominated_bbs): Remove function.
(rewrite_virtuals_into_loop_closed_ssa): Reimplement using
rewrite_into_loop_closed_ssa_1.

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

9 years ago * cfganal.c (pre_and_rev_post_order_compute_fn): Correctly
matz [Mon, 31 Aug 2015 13:45:48 +0000 (13:45 +0000)]
* cfganal.c (pre_and_rev_post_order_compute_fn): Correctly
enter entry and exit blocks for reverse post order.

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

9 years ago2015-08-31 Richard Biener <rguenther@suse.de>
rguenth [Mon, 31 Aug 2015 11:48:11 +0000 (11:48 +0000)]
2015-08-31  Richard Biener  <rguenther@suse.de>

lto/
* lto-symtab.c (lto_symtab_prevailing_decl): Remove redundant
test, do not replace a non-builtin with a builtin.
* lto.c (compare_tree_sccs_1): Do not merge things we stream
as builtins vs. non-builtins.

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

9 years ago2015-08-31 Richard Biener <rguenther@suse.de>
rguenth [Mon, 31 Aug 2015 11:47:30 +0000 (11:47 +0000)]
2015-08-31  Richard Biener  <rguenther@suse.de>

* lto-streamer.h (lto_location_cache::cached_location::sysp): Add.
(lto_location_cache::current_sysp): Likewise.
(output_block::current_sysp): Likewise.
* lto-streamer-in.c (lto_location_cache::cmp_loc): Compare sysp.
(lto_location_cache::apply_location_cache): Properly record
system header locations.
(lto_location_cache::input_location): Input whether a file
is a system header.
* lto-streamer-out.c (lto_output_location): Stream whether a file
is a system header.

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

9 years agoAvoid strndup in gcc.c (PR bootstrap/67363)
ro [Mon, 31 Aug 2015 11:19:42 +0000 (11:19 +0000)]
Avoid strndup in gcc.c (PR bootstrap/67363)

PR bootstrap/67363
* gcc.c (env_manager::xput): Replace strndup by xstrndup.

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

9 years ago PR fortran/54833
fxcoudert [Mon, 31 Aug 2015 10:54:36 +0000 (10:54 +0000)]
PR fortran/54833
* trans.c (gfc_call_free): Don't check if pointer is NULL.
* trans.h (gfc_call_free): Adjust comment.

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

9 years ago PR libfortran/47571
fxcoudert [Mon, 31 Aug 2015 10:37:30 +0000 (10:37 +0000)]
PR libfortran/47571
* acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Remove.
(LIBGFOR_CHECK_WEAKREF): New test.
* configure.ac: Call LIBGFOR_CHECK_WEAKREF instead of
LIBGFOR_GTHREAD_WEAK.
* config.h.in: Regenerate.
* configure: Regenerate.
* intrinsics/system_clock.c: Use SUPPORTS_WEAKREF instead of
SUPPORTS_WEAK and GTHREAD_USE_WEAK.

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

9 years agoImprove function header comments in tree-ssa-loop-manip.c
vries [Mon, 31 Aug 2015 09:12:15 +0000 (09:12 +0000)]
Improve function header comments in tree-ssa-loop-manip.c

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

* tree-ssa-loop-manip.c (find_uses_to_rename_use)
(find_uses_to_rename_stmt, find_uses_to_rename_bb, find_uses_to_rename):
Improve function header comments.

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

9 years agoRename [su]sum_widen to widen_[su]sum to reflect correct standard names.
collison [Mon, 31 Aug 2015 03:19:48 +0000 (03:19 +0000)]
Rename [su]sum_widen to widen_[su]sum to reflect correct standard names.

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

9 years ago compiler: Check for invalid UTF8 in Go comments.
ian [Mon, 31 Aug 2015 01:58:48 +0000 (01:58 +0000)]
compiler: Check for invalid UTF8 in Go comments.

    Fixes golang/go#11527.

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

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

9 years ago[gcc]
wschmidt [Mon, 31 Aug 2015 01:02:47 +0000 (01:02 +0000)]
[gcc]

2015-08-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (swap_web_entry): Enlarge
special_handling bitfield.
(special_handling_values): Add SH_XXPERMDI and SH_CONCAT.
(rtx_is_swappable_p): Add handling for vec_select/vec_concat form
that represents a general xxpermdi.
(insn_is_swappable_p): Add handling for vec_concat of two
doublewords, which maps to a specific xxpermdi.
(adjust_xxpermdi): New function.
(adjust_concat): Likewise.
(handle_special_swappables): Call adjust_xxpermdi and
adjust_concat.
(dump_swap_insn_table): Handle SH_XXPERMDI and SH_CONCAT.

[gcc/testsuite]

2015-08-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

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

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

9 years ago* [SH] config.gcc (supported_defaults): Handle sh[123456ble]*-*-* instead of sh[12345...
kkojima [Mon, 31 Aug 2015 00:18:32 +0000 (00:18 +0000)]
* [SH] config.gcc (supported_defaults): Handle sh[123456ble]*-*-* instead of sh[123456ble]-*-*.

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

9 years agoDaily bump.
gccadmin [Mon, 31 Aug 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.

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

9 years agoDaily bump.
gccadmin [Sun, 30 Aug 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

9 years agoFix c++/67371 (issues with throw in constexpr)
trippels [Sat, 29 Aug 2015 18:51:26 +0000 (18:51 +0000)]
Fix c++/67371 (issues with throw in constexpr)

As PR67371 shows gcc currently rejects all throw statements in
constant-expressions, even when they are never executed.

PR c++/67371
* constexpr.c (potential_constant_expression_1): Remove IF_STMT
case. Move label to COND_EXPR case. Remove checking of
SWITCH_STMT_BODY.

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

9 years ago2015-08-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sat, 29 Aug 2015 15:52:43 +0000 (15:52 +0000)]
2015-08-29 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/67367
* gfortran.dg/read_dir.f90: New test. May fail on some platforms.

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

9 years ago2015-08-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sat, 29 Aug 2015 15:38:39 +0000 (15:38 +0000)]
2015-08-29 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/67367
* io/unix.c (buf_read): Check for error condition and if found
return the error code.

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

9 years ago * acinclude.m4: Remove LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT.
fxcoudert [Sat, 29 Aug 2015 13:17:05 +0000 (13:17 +0000)]
* acinclude.m4: Remove LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT.
* configure.ac: Remove checks for strcasestr, execl, close,
getrlimit, readlink, getppid, powl, erfl, j0l, j1l, y0l, y1l,
tgammal, and lgammal.
* config.h.in: Regenerate.
* configure: Regenerate.

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

9 years agoRemove redundant use of REG_CLASS_NAMES maros
aesok [Sat, 29 Aug 2015 13:10:43 +0000 (13:10 +0000)]
Remove redundant use of REG_CLASS_NAMES maros

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

9 years ago * io/unix.c (min): Remove unused macro.
fxcoudert [Sat, 29 Aug 2015 13:01:54 +0000 (13:01 +0000)]
* io/unix.c (min): Remove unused macro.

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

9 years ago * trans.c (gfc_call_malloc, gfc_allocate_using_malloc,
fxcoudert [Sat, 29 Aug 2015 08:03:01 +0000 (08:03 +0000)]
* trans.c (gfc_call_malloc, gfc_allocate_using_malloc,
gfc_allocate_using_lib, gfc_allocate_allocatable,
gfc_call_realloc): Simplify code.
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_trans_auto_array_allocation, gfc_conv_array_parameter): Do not
convert gfc_call_free() argument.
* trans-expr.c (gfc_conv_string_tmp, gfc_conv_procedure_call,
fcncall_realloc_result): Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Likewise.

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

9 years agoHandle mix/max pointer reductions in parloops
vries [Sat, 29 Aug 2015 07:07:51 +0000 (07:07 +0000)]
Handle mix/max pointer reductions in parloops

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

PR tree-optimization/46193
* omp-low.c (omp_reduction_init): Handle pointer type for min or max
clause.

* gcc.dg/autopar/pr46193.c: New test.

* testsuite/libgomp.c/pr46193.c: New test.

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

9 years agoDaily bump.
gccadmin [Sat, 29 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago PR fortran/53668
fxcoudert [Fri, 28 Aug 2015 20:46:43 +0000 (20:46 +0000)]
PR fortran/53668

* intrinsic.c (add_functions, add_subroutines): Remove resolution
functions for FREE and MALLOC.
* intrinsic.h (gfc_resolve_malloc, gfc_resolve_free): Remove.
* iresolve.c (gfc_resolve_malloc, gfc_resolve_free): Remove.
* trans-intrinsic.c (conv_intrinsic_free,
gfc_conv_intrinsic_malloc): New functions.

* intrinsics/malloc.c: Adapt comments.

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

9 years ago * gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c: Simply
nathan [Fri, 28 Aug 2015 19:52:28 +0000 (19:52 +0000)]
* gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c: Simply
use exit code for failure.

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

9 years ago * gcc/testsuite/gcc.dg/torture/matrix-1.c: Use plain printf.
nathan [Fri, 28 Aug 2015 19:04:45 +0000 (19:04 +0000)]
* gcc/testsuite/gcc.dg/torture/matrix-1.c: Use plain printf.
* gcc/testsuite/gcc.dg/torture/matrix-2.c: Likewise.
* gcc/testsuite/gcc.dg/torture/matrix-5.c: Likewise.
* gcc/testsuite/gcc.dg/torture/matrix-6.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-1.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-2.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-3.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-4.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-5.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-6.c: Likewise.

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

9 years ago[PATCH][lto/66752] Fix missed FSM jump thread
law [Fri, 28 Aug 2015 16:23:12 +0000 (16:23 +0000)]
[PATCH][lto/66752] Fix missed FSM jump thread

PR lto/66752
* tree-ssa-threadedge.c (simplify_conrol_stmt_condition): If we are
unable to find X NE 0 in the tables, return X as the simplified
condition.
(fsm_find_control_statement_thread_paths): If nodes in NEXT_PATH are
in VISISTED_BBS, then return failure.  Else add nodes from NEXT_PATH
to VISISTED_BBS.
* tree-ssa-threadupdate.c (duplicate_thread_path): Fix up edge flags
after removing the control flow statement and unnecessary edges.

PR lto/66752
* gcc.dg/tree-ssa/pr66752-2.c: New test.
* gcc.dg/torture/pr66752-1.c: New test
* g++.dg/torture/pr66752-2.C: New test.

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

9 years agoRevert: completely_scalarize arrays as well as records
alalaw01 [Fri, 28 Aug 2015 15:04:17 +0000 (15:04 +0000)]
Revert: completely_scalarize arrays as well as records

gcc/:
Revert:
2015-08-27  Alan Lawrence  <alan.lawrence@arm.com>
PR tree-optimization/67283
* tree-sra.c (type_consists_of_records_p): Rename to...
(scalarizable_type_p): ...this, add case for ARRAY_TYPE.

(completely_scalarize_record): Rename to...
(completely_scalarize): ...this, add ARRAY_TYPE case, move some
 code to:
(scalarize_elem): New.

gcc/testsuite/:

Revert:
2015-08-27  Alan Lawrence  <alan.lawrence@arm.com>
* gcc.dg/tree-ssa/sra-15.c: New.

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

9 years ago[Patch] Add to the libgfortran/newlib bodge to "detect" ftruncate support in ARM...
jgreenhalgh [Fri, 28 Aug 2015 14:57:57 +0000 (14:57 +0000)]
[Patch] Add to the libgfortran/newlib bodge to "detect" ftruncate support in ARM/AArch64/SH

* configure.ac: Auto-detect newlib function support unless we
know there are issues when configuring for a host.
* configure: Regenerate.

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

9 years agoMIPS: Add the lo register to the clobber list in the madd-8.c and msub-8.c testcases.
abennett [Fri, 28 Aug 2015 13:35:01 +0000 (13:35 +0000)]
MIPS: Add the lo register to the clobber list in the madd-8.c and msub-8.c testcases.

The lo register is not listed in the clobber list in the inline asm statement
for the madd-8.c and msub-8.c testcases.  This means that when building for the
n64 ABI GCC is free to use the lo register instead of the stack when
saving/restoring the clobbered registers.  Then then means that it decides to
use the msub/madd instruction to perform the "x - y * z" operation rather than
using mul; addu/subu which the test is looking for.

testsuite/
* gcc.target/mips/madd-8.c: Add lo register to clobber list.
* gcc.target/mips/msub-8.c: Ditto.

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

9 years ago2015-08-28 David Sherwood <david.sherwood@arm.com>
davids [Fri, 28 Aug 2015 10:11:27 +0000 (10:11 +0000)]
2015-08-28  David Sherwood  <david.sherwood@arm.com>

* MAINTAINERS: Add myself.

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

9 years ago[AArch64] Rename SYMBOL_SMALL_GOTTPREL to SYMBOL_SMALL_TLSIE
jiwang [Fri, 28 Aug 2015 08:53:37 +0000 (08:53 +0000)]
[AArch64] Rename SYMBOL_SMALL_GOTTPREL to SYMBOL_SMALL_TLSIE

2015-08-28  Jiong Wang  <jiong.wang@arm.com>

* config/aarch64/aarch64-protos.h (aarch64_symbol_context): Rename
SYMBOL_SMALL_GOTTPREL to SYMBOL_SMALL_TLSIE.
(aarch64_symbol_type): Likewise.
* config/aarch64/aarch64.c (aarch64_load_symref_appropriately):
Likewise.
(aarch64_expand_mov_immediate): Likewise.
(aarch64_print_operand): Likewise.
(aarch64_classify_tls_symbol): Likewise.

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

9 years ago2015-08-28 Richard Biener <rguenther@suse.de>
rguenth [Fri, 28 Aug 2015 07:47:37 +0000 (07:47 +0000)]
2015-08-28  Richard Biener  <rguenther@suse.de>

* cgraphunit.c (symbol_table::compile): Move early debug generation
and finish...
(symbol_table::finalize_compilation_unit): ... back here and
add a !seen_error () guard.

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

9 years ago PR libstdc++/67362
timshen [Fri, 28 Aug 2015 02:35:21 +0000 (02:35 +0000)]
PR libstdc++/67362
* include/bits/regex_scanner.tcc (_Scanner<>::_M_scan_normal):
Always returns ordinary char token if the char isn't
considered a special char.
* testsuite/28_regex/regression.cc: New test file for collecting
regression testcases from, typically, bugzilla.

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

9 years agoDaily bump.
gccadmin [Fri, 28 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago compiler: Report unused variables initialized to function literals.
ian [Thu, 27 Aug 2015 23:09:37 +0000 (23:09 +0000)]
compiler: Report unused variables initialized to function literals.

    Fixes golang/go#12317.

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

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

9 years ago compiler: Allow multiple blank label definitions.
ian [Thu, 27 Aug 2015 22:41:55 +0000 (22:41 +0000)]
compiler: Allow multiple blank label definitions.

    Fixes golang/go#12316.

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

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

9 years ago2015-08-27 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Thu, 27 Aug 2015 22:13:43 +0000 (22:13 +0000)]
2015-08-27  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* lib/target-supports.exp (check-effective_target_vect_double):
Enable for Power targets with VSX hardware available.
* gfortran.dg/vect/O3-pr49957.f: Replace vect_no_align with
vect_no_align && { ! vect_hw_misalign }.

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

9 years agofix compile without ISL
spop [Thu, 27 Aug 2015 21:59:06 +0000 (21:59 +0000)]
fix compile without ISL

* toplev.c (process_options): Do not use flag_loop_block,
flag_loop_interchange, and flag_loop_strip_mine.  Add check for
flag_loop_optimize_isl.

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

9 years ago * MAINTAINERS: Add myself.
pmarlier [Thu, 27 Aug 2015 20:06:46 +0000 (20:06 +0000)]
* MAINTAINERS:  Add myself.

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

9 years agoremove -floop-* flags
spop [Thu, 27 Aug 2015 19:07:04 +0000 (19:07 +0000)]
remove -floop-* flags

2015-08-27  Sebastian Pop  <s.pop@samsung.com>

* Makefile.in (OBJS): Remove graphite-blocking.o and
graphite-interchange.o.
* common.opt (floop-strip-mine, floop-interchange, floop-block):
Alias of floop-nest-optimize.
* doc/invoke.texi (floop-strip-mine, floop-interchange, floop-block):
Document as alias of -floop-nest-optimize.
* graphite-blocking.c: Remove.
* graphite-interchange.c: Remove.
* graphite-optimize-isl.c: Include dumpfile.h.
(getScheduleForBand): Add dump for tiled loops.  Use
PARAM_LOOP_BLOCK_TILE_SIZE instead of hard coded constant.
* graphite-poly.c (scop_max_loop_depth): Remove.
(print_scattering_function_1): Remove.
(print_scattering_function): Remove.
(print_scattering_functions): Remove.
(debug_scattering_function): Remove.
(debug_scattering_functions): Remove.
(apply_poly_transforms): Remove use of flag_loop_block,
flag_loop_strip_mine, and flag_loop_interchange.
(new_poly_bb): Remove use of PBB_TRANSFORMED, PBB_SAVED, and
PBB_ORIGINAL.
(print_pdr_access_layout): Remove.
(print_pdr): Print ISL representation.
(new_scop): Remove use of SCOP_ORIGINAL_SCHEDULE,
SCOP_TRANSFORMED_SCHEDULE, and SCOP_SAVED_SCHEDULE.
(free_scop): Same.
(openscop_print_pbb_domain): Remove.
(print_pbb): Remove call to print_scattering_function.
(openscop_print_scop_context): Remove.
(print_scop_context): Do not print matrices anymore.
(print_scop): Do not print SCOP_ORIGINAL_SCHEDULE and
SCOP_TRANSFORMED_SCHEDULE.
(print_isl_set): Add printing of a new line.
(print_isl_map): Same.
(print_isl_aff): Same.
(print_isl_constraint): Same.
(loop_to_lst): Remove.
(scop_to_lst): Remove.
(lst_indent_to): Remove.
(print_lst): Remove.
(debug_lst): Remove.
(dot_lst_1): Remove.
(dot_lst): Remove.
(reverse_loop_at_level): Remove.
(reverse_loop_for_pbbs): Remove.
* graphite-poly.h (pdr_dim_iter_domain): Remove.
(pdr_nb_params): Remove.
(pdr_alias_set_dim): Remove.
(pdr_subscript_dim): Remove.
(pdr_iterator_dim): Remove.
(pdr_parameter_dim): Remove.
(same_pdr_p): Remove.
(struct poly_scattering): Remove.
(struct poly_bb): Remove _original, _transformed, _saved.
(PBB_DOMAIN, PBB_ORIGINAL, PBB_ORIGINAL_SCATTERING): Remove.
(PBB_TRANSFORMED, PBB_TRANSFORMED_SCATTERING, PBB_SAVED): Remove.
(PBB_NB_LOCAL_VARIABLES): Remove.
(PBB_NB_SCATTERING_TRANSFORM): Remove.
(schedule_to_scattering): Remove.
(number_of_write_pdrs): Remove.
(pbb_dim_iter_domain): Remove.
(pbb_nb_params): Remove.
(pbb_nb_scattering_orig): Remove.
(pbb_nb_scattering_transform): Remove.
(pbb_nb_dynamic_scattering_transform): Remove.
(pbb_nb_local_vars): Remove.
(pbb_iterator_dim): Remove.
(pbb_parameter_dim): Remove.
(psco_scattering_dim): Remove.
(psct_scattering_dim): Remove.
(psct_local_var_dim): Remove.
(psco_iterator_dim): Remove.
(psct_iterator_dim): Remove.
(psco_parameter_dim): Remove.
(psct_parameter_dim): Remove.
(psct_dynamic_dim): Remove.
(psct_static_dim): Remove.
(psct_add_local_variable): Remove.
(new_lst_loop): Remove.
(new_lst_stmt): Remove.
(free_lst): Remove.
(copy_lst): Remove.
(lst_add_loop_under_loop): Remove.
(lst_depth): Remove.
(lst_dewey_number): Remove.
(lst_dewey_number_at_depth): Remove.
(lst_pred): Remove.
(lst_succ): Remove.
(lst_find_pbb): Remove.
(find_lst_loop): Remove.
(lst_find_first_pbb): Remove.
(lst_empty_p): Remove.
(lst_find_last_pbb): Remove.
(lst_contains_p): Remove.
(lst_contains_pbb): Remove.
(lst_create_nest): Remove.
(lst_remove_from_sequence): Remove.
(lst_remove_loop_and_inline_stmts_in_loop_father): Remove.
(lst_niter_for_loop): Remove.
(pbb_update_scattering): Remove.
(lst_update_scattering_under): Remove.
(lst_update_scattering): Remove.
(lst_insert_in_sequence): Remove.
(lst_replace): Remove.
(lst_substitute_3): Remove.
(lst_distribute_lst): Remove.
(lst_remove_all_before_including_pbb): Remove.
(lst_remove_all_before_excluding_pbb): Remove.
(struct scop): Remove original_schedule, transformed_schedule, and
saved_schedule.
(SCOP_ORIGINAL_SCHEDULE, SCOP_TRANSFORMED_SCHEDULE): Remove.
(SCOP_SAVED_SCHEDULE): Remove.
(poly_scattering_new): Remove.
(poly_scattering_free): Remove.
(poly_scattering_copy): Remove.
(store_scattering_pbb): Remove.
(store_lst_schedule): Remove.
(restore_lst_schedule): Remove.
(store_scattering): Remove.
(restore_scattering_pbb): Remove.
(restore_scattering): Remove.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons):
Remove scattering_dimensions.  Do not use pbb_dim_iter_domain:
compute the scattering polyhedron dimension from the dimension of
pbb->domain.
(build_scop_scattering): Update call to
build_pbb_scattering_polyhedrons.
(build_poly_scop): Remove call to scop_to_lst.
* graphite.c (graphite_transform_loops): Add call to print_scop.
(gate_graphite_transforms): Remove use of flag_loop_block,
flag_loop_interchange, and flag_loop_strip_mine.

testsuite/

* gcc.dg/graphite/graphite.exp (interchange_files, block_files):
Replaced by opt_files, compile with -floop-nest-optimize.
* g++.dg/graphite/graphite.exp: Same.
* gfortran.dg/graphite/graphite.exp: Same.
* gcc.dg/graphite/block-0.c: Adjust pattern.
* gcc.dg/graphite/block-1.c: Same.
* gcc.dg/graphite/block-3.c: Same.
* gcc.dg/graphite/block-4.c: Same.
* gcc.dg/graphite/block-5.c: Same.
* gcc.dg/graphite/block-6.c: Same.
* gcc.dg/graphite/block-7.c: Same.
* gcc.dg/graphite/block-8.c: Same.
* gcc.dg/graphite/block-pr47654.c: Same.
* gcc.dg/graphite/interchange-0.c: Same.
* gcc.dg/graphite/interchange-1.c: Same.
* gcc.dg/graphite/interchange-10.c: Same.
* gcc.dg/graphite/interchange-11.c: Same.
* gcc.dg/graphite/interchange-12.c: Same.
* gcc.dg/graphite/interchange-13.c: Same.
* gcc.dg/graphite/interchange-14.c: Same.
* gcc.dg/graphite/interchange-15.c: Same.
* gcc.dg/graphite/interchange-3.c: Same.
* gcc.dg/graphite/interchange-4.c: Same.
* gcc.dg/graphite/interchange-5.c: Same.
* gcc.dg/graphite/interchange-6.c: Same.
* gcc.dg/graphite/interchange-7.c: Same.
* gcc.dg/graphite/interchange-8.c: Same.
* gcc.dg/graphite/interchange-9.c: Same.
* gcc.dg/graphite/interchange-mvt.c: Same.
* gcc.dg/graphite/pr37485.c: Same.
* gcc.dg/graphite/uns-block-1.c: Same.
* gcc.dg/graphite/uns-interchange-12.c: Same.
* gcc.dg/graphite/uns-interchange-14.c: Same.
* gcc.dg/graphite/uns-interchange-15.c: Same.
* gcc.dg/graphite/uns-interchange-9.c: Same.
* gcc.dg/graphite/uns-interchange-mvt.c: Same.
* gfortran.dg/graphite/interchange-3.f90: Same.

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

9 years ago compiler: Don't record dependencies of invalid redefinitions.
ian [Thu, 27 Aug 2015 19:06:59 +0000 (19:06 +0000)]
compiler: Don't record dependencies of invalid redefinitions.

    The gofrontend would crash when trying to find the initialization
    order of a variable list where one of the listed variables was an
    invalid redefinition of another in a call statement.  This patch
    fixes initialization from call statements to consider invalid
    redefinitions before recording dependency information.

    Fixes golang/go#11543.

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

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

9 years agoremove -floop-unroll-and-jam
spop [Thu, 27 Aug 2015 19:06:56 +0000 (19:06 +0000)]
remove -floop-unroll-and-jam

* common.opt (floop-unroll-and-jam): Make alias of floop-nest-optimize.
* doc/invoke.texi (-floop-unroll-and-jam): Document as alias of
-floop-nest-optimize.
* graphite-isl-ast-to-gimple.c (generate_luj_sepclass_opt): Remove.
(generate_luj_sepclass): Remove.
(generate_luj_options): Remove.
(set_options): Remove opt_luj.
(scop_to_isl_ast): Remove opt_luj.
* graphite-optimize-isl.c (getScheduleForBand): Remove check for
flag_loop_unroll_jam.
(getPrevectorMap_full): Remove.
(getScheduleForBandList): Remove map_sepcl.
(getScheduleMap): Same.
(apply_schedule_map_to_scop): Remove sepcl.
(optimize_isl): Same.
* graphite-poly.c (apply_poly_transforms): Remove check for
flag_loop_unroll_jam.
(new_poly_bb): Remove map_sepclass.
* graphite-poly.h (struct poly_bb): Same.
* graphite.c (gate_graphite_transforms): Remove flag_loop_unroll_jam.
* params.def (PARAM_LOOP_UNROLL_JAM_SIZE)
(PARAM_LOOP_UNROLL_JAM_DEPTH): Remove.
* toplev.c (process_options): Remove flag_loop_unroll_jam.

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

9 years ago PR libstdc++/67374
redi [Thu, 27 Aug 2015 19:05:19 +0000 (19:05 +0000)]
PR libstdc++/67374
* include/bits/range_access.h (valarray, begin, end): Declare.
* testsuite/26_numerics/valarray/range_access.cc: Test const
overloads.
* testsuite/26_numerics/valarray/range_access2.cc: New.

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

9 years ago PR target/67317
uros [Thu, 27 Aug 2015 18:29:37 +0000 (18:29 +0000)]
PR target/67317
* config/i386/i386.md (*add<mode>3_cc): Remove insn pattern.
(addqi3_cc): Ditto.
(UNSPEC_ADD_CARRY): Remove.
(addqi3_cconly_overflow): New expander.
(*add<dwi>3_doubleword): Split to add<mode>3_cconly_overflow.
Adjust for changed add<mode>3_carry.
(*neg<dwi>2_doubleword): Adjust for changed add<mode>3_carry.
(*sub<dwi>3_doubleword): Adjust for changed sub<mode>3_carry.
(<plusminus_insn><mode>3_carry): Remove expander.
(*<plusminus_insn><mode>3_carry): Split insn pattern to
add<mode>3_carry and sub<mode>3_carry.
(plusminus_carry_mnemonic): Remove code attribute.
(add<mode>3_carry): Canonicalize insn pattern.
(*addsi3_carry_zext): Ditto.
(sub<mode>3_carry): Ditto.
(*subsi3_carry_zext): Ditto.
(adcx<mode>3): Remove insn pattern.
(addcarry<mode>): New insn pattern.
(subborrow<mode>): Ditto.
* config/i386/i386.c (ix86_expand_strlensi_unroll_1): Use
gen_addqi3_cconly_overflow instead of gen_addqi3_cc.
(ix86_expand_builtin) <case IX86_BUILTIN_SBB32,
case IX86_BUILTIN_SBB64, case IX86_BUILTIN_ADDCARRY32,
case IX86_BUILTIN_ADDCARRY64>: Use CODE_FOR_subborrowsi,
CODE_FOR_subborrowdi, CODE_FOR_addcarrysi and CODE_FOR_addcarrydi.
Rewrite expander to not clobber carry flag chains.

testsuite/ChangeLog:

PR target/67317
* gcc.target/i386/pr67317-1.c: New test.
* gcc.target/i386/pr67317-2.c: Ditto.
* gcc.target/i386/pr67317-3.c: Ditto.
* gcc.target/i386/pr67317-4.c: Ditto.
* gcc.target/i386/adx-addcarryx32-1.c: Also scan for adcl.
* gcc.target/i386/adx-addcarryx32-2.c: Also scan for adcq.

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

9 years ago * config/rs6000/vector.md (vec_shr_<mode>): Fix to do a shift
pthaugen [Thu, 27 Aug 2015 18:20:45 +0000 (18:20 +0000)]
* config/rs6000/vector.md (vec_shr_<mode>): Fix to do a shift
instead of a rotate.

* gcc.target/powerpc/vec-shr.c: New.

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

9 years ago PR middle-end/67005
mpolacek [Thu, 27 Aug 2015 17:07:35 +0000 (17:07 +0000)]
PR middle-end/67005
* tree-ssa-dce.c (remove_dead_stmt): Also schedule fixup if removing
an entry into an irreducible region.

* gcc.dg/torture/pr67005.c: New test.

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

9 years ago * configure: Regenerate.
fxcoudert [Thu, 27 Aug 2015 16:15:45 +0000 (16:15 +0000)]
* configure: Regenerate.

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

9 years agocompletely_scalarize arrays as well as records
alalaw01 [Thu, 27 Aug 2015 15:40:10 +0000 (15:40 +0000)]
completely_scalarize arrays as well as records

gcc/:

PR tree-optimization/67283
* tree-sra.c (type_consists_of_records_p): Rename to...
(scalarizable_type_p): ...this, add case for ARRAY_TYPE.

(completely_scalarize_record): Rename to...
(completely_scalarize): ...this, add ARRAY_TYPE case, move some code to:
(scalarize_elem): New.

gcc/testsuite/:

* gcc.dg/tree-ssa/sra-15.c: New.

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

9 years agoRefactor completely_scalarize_var
alalaw01 [Thu, 27 Aug 2015 15:28:39 +0000 (15:28 +0000)]
Refactor completely_scalarize_var

* tree-sra.c (completely_scalarize_var): Rename to...
(create_total_scalarization_access): ... Here. Drop call to
completely_scalarize_record.

(analyze_all_variable_accesses): Replace completely_scalarize_var
with create_total_scalarization_access and completely_scalarize_record.

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

9 years agoUpdate copyrights
ro [Thu, 27 Aug 2015 14:26:08 +0000 (14:26 +0000)]
Update copyrights

libvtv:
Update copyrights.

contrib:
* update-copyright.py (GCCCmdLine): Add libvtv.

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

9 years ago * configure.ac: Remove [disable-shared] argument to LT_INIT.
uweigand [Thu, 27 Aug 2015 14:08:19 +0000 (14:08 +0000)]
* configure.ac: Remove [disable-shared] argument to LT_INIT.
Remove setting PIC_FLAG when building as target library.
* configure: Regenerate.

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

9 years ago[RS6000] Correct constraints for ior<mode>_mask
amodra [Thu, 27 Aug 2015 13:56:39 +0000 (13:56 +0000)]
[RS6000] Correct constraints for ior<mode>_mask

ior<mode>_mask always splits to rtl matching rotl<mode>3_insert.  The
latter requires one of its input operands match the output, so let
reload/lra know the equivalent operand match must also occur for
ior<mode>_mask.

PR target/67356
* config/rs6000/rs6000.md (ior<mode>_mask): Use constraint "0"
for operand 1.

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

9 years ago2015-08-27 Richard Biener <rguenther@suse.de>
rguenth [Thu, 27 Aug 2015 13:27:02 +0000 (13:27 +0000)]
2015-08-27  Richard Biener  <rguenther@suse.de>

* passes.c (rest_of_decl_compilation): Guard early_global_decl
call with !seen_error ().
* cgraphunit.c (symbol_table::finalize_compilation_unit): Move
early debug generation and finish...
(symbol_table::compile): ... here to put it after a !seen_error ()
guard.

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