]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
9 years ago PR c/70093
mpolacek [Wed, 16 Mar 2016 15:51:47 +0000 (15:51 +0000)] 
PR c/70093
* c-typeck.c (build_function_call_vec): Create a TARGET_EXPR for
nested functions returning VM types.

* cgraphunit.c (cgraph_node::expand_thunk): Also build call to the
function being thunked if the result type doesn't have fixed size.
* gimplify.c (gimplify_modify_expr): Also set LHS if the result type
doesn't have fixed size.

* gcc.dg/nested-func-10.c: New test.
* gcc.dg/nested-func-9.c: New test.

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

9 years ago PR tree-optimization/68714
jakub [Wed, 16 Mar 2016 13:34:36 +0000 (13:34 +0000)] 
PR tree-optimization/68714
* gcc.dg/tree-ssa/pr68714.c: Add -w -Wno-psabi to dg-options.

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

9 years agoNowadays, we use plain -fopenacc to enable OpenACC kernels processing
tschwinge [Wed, 16 Mar 2016 13:10:20 +0000 (13:10 +0000)] 
Nowadays, we use plain -fopenacc to enable OpenACC kernels processing

libgomp/
* testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
-ftree-parallelize-loops/-fopenacc changes.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
Likewise.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
Likewise.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
Likewise.
* testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
Likewise.
* testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
* testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.

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

9 years agoSave call-clobbered registers in _mcount on 32-bit Solaris/x86 (PR target/38239)
ro [Wed, 16 Mar 2016 11:57:02 +0000 (11:57 +0000)] 
Save call-clobbered registers in _mcount on 32-bit Solaris/x86 (PR target/38239)

PR target/38239
* config/sol2/gmon.c [__i386__] (_mcount): Save and restore
call-clobbered registers.
(internal_mcount): Remove __i386__ handling.

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

9 years agoSummary: boehm-gc: add support for aarch64 ILP32
schwab [Wed, 16 Mar 2016 11:44:36 +0000 (11:44 +0000)] 
Summary: boehm-gc: add support for aarch64 ILP32

* include/private/gcconfig.h [AARCH64] (ALIGNMENT, CPP_WORDSZ):
Define for __ILP32__.

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

9 years ago * tree-vect-loop.c (vect_analyze_loop_2): Fix wrong dump info by
amker [Wed, 16 Mar 2016 10:57:34 +0000 (10:57 +0000)] 
* tree-vect-loop.c (vect_analyze_loop_2): Fix wrong dump info by
reporting malformed loop nest.

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

9 years agoSafely use nodes[0] in possible_polymorphic_call_targets
vries [Wed, 16 Mar 2016 10:21:27 +0000 (10:21 +0000)] 
Safely use nodes[0] in possible_polymorphic_call_targets

2016-03-16  Tom de Vries  <tom@codesourcery.com>

PR lto/70187
* ipa-devirt.c (possible_polymorphic_call_targets): Move
nodes.length () == 1 test to before first nodes[0] access.

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

9 years ago * gcc-interface/Makefile.in: Add support for x86 GNU/Hurd.
ebotcazou [Wed, 16 Mar 2016 10:04:01 +0000 (10:04 +0000)] 
* gcc-interface/Makefile.in: Add support for x86 GNU/Hurd.
* s-osinte-gnu.ads: New file.

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

9 years agoAdd missing single_pred_p test in scop_detection::merge_sese
vries [Wed, 16 Mar 2016 09:19:23 +0000 (09:19 +0000)] 
Add missing single_pred_p test in scop_detection::merge_sese

2016-03-16  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/68715
* graphite-scop-detection.c (scop_detection::merge_sese): Add missing
single_pred_p test.

* gcc.dg/graphite/pr68715-2.c: New test.
* gcc.dg/graphite/pr68715.c: New test.
* gfortran.dg/graphite/pr68715.f90: New test.

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

9 years agoFix same_close_phi_node
vries [Wed, 16 Mar 2016 09:19:12 +0000 (09:19 +0000)] 
Fix same_close_phi_node

2016-03-16  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/68809
* graphite-scop-detection.c (same_close_phi_node): Test if result types
are the same.

* gcc.dg/graphite/pr68809-2.c: New test.
* gcc.dg/graphite/pr68809.c: New test.

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

9 years ago PR c++/70147
jakub [Wed, 16 Mar 2016 07:02:30 +0000 (07:02 +0000)] 
PR c++/70147
* cp-ubsan.c (cp_ubsan_dfs_initialize_vtbl_ptrs): Conditionalize
BINFO_VIRTUAL_P vtable clearing on current_in_charge_parm.

* g++.dg/ubsan/pr70147-2.C (C::C): Initialize A base with invalid
method call to i () as argument.  Adjust expected output.

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

9 years ago PR c++/70147
jakub [Wed, 16 Mar 2016 07:01:36 +0000 (07:01 +0000)] 
PR c++/70147
* cp-ubsan.c (cp_ubsan_maybe_initialize_vtbl_ptrs): Temporarily
set in_base_initializer.

* g++.dg/ubsan/pr70147-1.C: New test.
* g++.dg/ubsan/pr70147-2.C: New test.

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

9 years agoCleanup and expand on the 'leaf' function attribute documentation.
carlos [Wed, 16 Mar 2016 05:00:58 +0000 (05:00 +0000)] 
Cleanup and expand on the 'leaf' function attribute documentation.
Describe the problems that a user might face with indirect functions
and ELF symbol interposition.

gcc/ChangeLog:

2016-03-16  Carlos O'Donell  <carlos@redhat.com>
    Sandra Loosemore  <sandra@codesourcery.com>

* doc/extend.texi (Common Function Attributes): Describe ifunc impact
on leaf attribute. Mention ELF interposition problems.

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

9 years agoPR c++/58281 - Problem with explicitly instantiated constexpr template
msebor [Wed, 16 Mar 2016 03:00:02 +0000 (03:00 +0000)] 
PR c++/58281 - Problem with explicitly instantiated constexpr template
functions

gcc/testsuite/ChangeLog:
2016-03-15  Martin Sebor  <msebor@redhat.com>

PR c++/58281
* g++.dg/cpp1y/constexpr-instantiate.C: Add new test.

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

9 years agoDaily bump.
gccadmin [Wed, 16 Mar 2016 00:16:18 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago * gcc.c-torture/execute/pr68532.c: Add -fno-common option on
danglin [Wed, 16 Mar 2016 00:11:28 +0000 (00:11 +0000)] 
* gcc.c-torture/execute/pr68532.c: Add -fno-common option on
hppa*-*-hpux*.

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

9 years ago * gcc.dg/ifcvt-4.c: Add hppa*64*-*-* to skip list.
danglin [Tue, 15 Mar 2016 23:49:40 +0000 (23:49 +0000)] 
* gcc.dg/ifcvt-4.c: Add hppa*64*-*-* to skip list.

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

9 years ago PR libfortran/69799
danglin [Tue, 15 Mar 2016 23:34:49 +0000 (23:34 +0000)] 
PR libfortran/69799
* gfortran.dg/coarray_allocate_5.f08: Add "-latomic" option if
libatomic_available.

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

9 years agoFix compiling large files
rth [Tue, 15 Mar 2016 23:08:45 +0000 (23:08 +0000)] 
Fix compiling large files

  * line-map.c (new_linemap): Make alloc_size a size_t.

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

9 years agoFix thinko in indirect_jump_optimize
amodra [Tue, 15 Mar 2016 22:04:42 +0000 (22:04 +0000)] 
Fix thinko in indirect_jump_optimize

PR rtl-optimization/69195
PR rtl-optimization/47992
* ira.c (indirect_jump_optimize): Ignore artificial defs.
Add comments.

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

9 years ago PR c++/70209
mpolacek [Tue, 15 Mar 2016 21:10:11 +0000 (21:10 +0000)] 
PR c++/70209
* tree.c (strip_typedefs): Call strip_typedefs again on the
DECL_ORIGINAL_TYPE result.

* g++.dg/ext/attribute-may-alias-4.C: New test.

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

9 years ago PR c++/70095
jason [Tue, 15 Mar 2016 19:37:37 +0000 (19:37 +0000)] 
PR c++/70095
* pt.c (instantiate_decl): Fix call to variable_template_p.

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

9 years agoFix more P0184R0 references.
jason [Tue, 15 Mar 2016 19:37:32 +0000 (19:37 +0000)] 
Fix more P0184R0 references.

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

9 years ago PR c++/70141
jason [Tue, 15 Mar 2016 19:21:44 +0000 (19:21 +0000)] 
PR c++/70141
* pt.c (for_each_template_parm_r): Always walk into TYPENAME_TYPE.

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

9 years ago * g++.dg/pr63384.C: Add -w to dg-options. Remove '-toggle'
amonakov [Tue, 15 Mar 2016 18:11:14 +0000 (18:11 +0000)] 
* g++.dg/pr63384.C: Add -w to dg-options.  Remove '-toggle'
in -fvar-tracking-assignments-toggle flag.

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

9 years ago PR bootstrap/69513
ebotcazou [Tue, 15 Mar 2016 17:55:39 +0000 (17:55 +0000)] 
PR bootstrap/69513
* dwarf2out.c (flush_limbo_die_list): Really flush the limbo list.

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

9 years ago * gcc.dg/ifcvt-4.c: Add -misel for powerpc*.
pthaugen [Tue, 15 Mar 2016 17:45:13 +0000 (17:45 +0000)] 
* gcc.dg/ifcvt-4.c: Add -misel for powerpc*.

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

9 years ago * config/avr/avr.md (rotl<mode>3): Set mode for operand 2.
denisc [Tue, 15 Mar 2016 16:21:49 +0000 (16:21 +0000)] 
* config/avr/avr.md (rotl<mode>3): Set mode for operand 2.

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

9 years ago PR rtl-optimization/70222
jakub [Tue, 15 Mar 2016 16:11:48 +0000 (16:11 +0000)] 
PR rtl-optimization/70222
* combine.c (simplify_shift_const_1): For A >> B >> C LSHIFTRT
optimization if mode is different from result_mode, queue up masking
of the result in outer_op.  Formatting fix.

* gcc.c-torture/execute/pr70222-1.c: New test.
* gcc.c-torture/execute/pr70222-2.c: New test.

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

9 years ago PR middle-end/70239
jakub [Tue, 15 Mar 2016 16:10:59 +0000 (16:10 +0000)] 
PR middle-end/70239
* tree-ssa-sccvn.c (VN_INFO_GET): Use safe_grow_cleared instead
of safe_grow.

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

9 years agoFix pr68714 test for targets not supporting V4SImode.
rth [Tue, 15 Mar 2016 15:43:00 +0000 (15:43 +0000)] 
Fix pr68714 test for targets not supporting V4SImode.

  * gcc.dg/tree-ssa/pr68714.c: Test during reassoc pass.

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

9 years agogcc/
abel [Tue, 15 Mar 2016 15:42:07 +0000 (15:42 +0000)] 
gcc/

PR rtl-optimization/69032
* sel-sched-ir.c (get_seqno_by_preds): Include both insn and head when
looping backwards over basic block insns.

testsuite/

PR rtl-optimization/69032
* gcc.dg/pr69032.c: New test.

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

9 years ago PR target/66660
abel [Tue, 15 Mar 2016 15:36:44 +0000 (15:36 +0000)] 
    PR target/66660
        * sel-sched-ir.c (merge_expr): Avoid changing the speculative pattern
        to non-speculative when propagating trap bits.

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

9 years agogcc/
abel [Tue, 15 Mar 2016 15:25:41 +0000 (15:25 +0000)] 
gcc/

PR rtl-optimization/63384
* sel-sched.c (invoke_aftermath_hooks): Do not decrease issue_more
on DEBUG_INSN_P insns.

testsuite/

PR rtl-optimization/63384
* g++.dg/pr63384.C: New test.

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

9 years agogcc/
abel [Tue, 15 Mar 2016 15:13:29 +0000 (15:13 +0000)] 
gcc/

        PR target/64411
        * sched-deps.c (get_implicit_reg_pending_clobbers): New function,
        factored out from ...
        (sched_analyze_insn): ... here.
        * sched-int.h (get_implicit_reg_pending_clobbers): Declare it.
        * sel-sched-ir.c (setup_id_implicit_regs): New function, use
        get_implicit_reg_pending_clobbers in it.
        (setup_id_reg_sets): Use setup_id_implicit_regs.
        (deps_init_id): Ditto.

testsuite/

PR target/64411
* gcc.target/i386/pr64411.C: New test.

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

9 years agoAdd goacc/kernels-alias{,-2}.f95
vries [Tue, 15 Mar 2016 13:01:51 +0000 (13:01 +0000)] 
Add goacc/kernels-alias{,-2}.f95

2016-03-15  Tom de Vries  <tom@codesourcery.com>

* gfortran.dg/goacc/kernels-alias-2.f95: New test.
* gfortran.dg/goacc/kernels-alias.f95: New test.

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

9 years ago * libcpp/expr.c (cpp_classify_number): Hex floats are new in C++1z.
jason [Tue, 15 Mar 2016 12:08:31 +0000 (12:08 +0000)] 
* libcpp/expr.c (cpp_classify_number): Hex floats are new in C++1z.

* libcpp/init.c (lang_defaults): Likewise.
* gcc/c-family/c-cppbuiltin.c (c_cpp_builtins): Set __cpp_hex_float.

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

9 years ago * g++.dg/cpp1z/feat-cxx1z.C: Fix __cpp_fold_expressions value.
jason [Tue, 15 Mar 2016 12:08:25 +0000 (12:08 +0000)] 
* g++.dg/cpp1z/feat-cxx1z.C: Fix __cpp_fold_expressions value.
* g++.dg/cpp1z/fold7.C: Likewise.

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

9 years agoFix fdump-ipa-all-graph
vries [Tue, 15 Mar 2016 11:51:32 +0000 (11:51 +0000)] 
Fix fdump-ipa-all-graph

2016-03-15  Tom de Vries  <tom@codesourcery.com>

PR ipa/70161
* cgraph.c (cgraph_node::get_body): Save, reset and restore
dump_file_name.
* passes.c (execute_one_ipa_transform_pass): Add missing argument to
execute_function_dump.
(execute_one_pass): Don't dump function if it will be dumped after ipa
transform.

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

9 years agoPR c++/53792 - [C++11] improving compiler-time constexpr evaluation
msebor [Tue, 15 Mar 2016 03:05:17 +0000 (03:05 +0000)] 
PR c++/53792 - [C++11] improving compiler-time constexpr evaluation

gcc/testsuite/ChangeLog:
2016-03-14  Martin Sebor  <msebor@redhat.com>

PR c++/53792
* g++.dg/cpp0x/constexpr-inline.C: New test.
* g++.dg/cpp0x/constexpr-inline-1.C: Same.

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

9 years ago * c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_range_based_for.
jason [Tue, 15 Mar 2016 02:57:52 +0000 (02:57 +0000)] 
* c-cppbuiltin.c (c_cpp_builtins): Bump __cpp_range_based_for.

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

9 years agogenrecog: Fix crash on invalid input
segher [Tue, 15 Mar 2016 00:42:43 +0000 (00:42 +0000)] 
genrecog: Fix crash on invalid input

If your machine description refers to a non-existent predicate genrecog
crashes.  This fixes it.

* genrecog.c (match_pattern_2): If pred is NULL don't call
safe_predicate_mode on it.

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

9 years agoDaily bump.
gccadmin [Tue, 15 Mar 2016 00:16:14 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago* gcc.dg/torture/pr70083.c: Prune non-standard ABI.
dje [Mon, 14 Mar 2016 23:30:52 +0000 (23:30 +0000)] 
* gcc.dg/torture/pr70083.c: Prune non-standard ABI.

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

9 years ago PR middle-end/70219
jakub [Mon, 14 Mar 2016 22:19:32 +0000 (22:19 +0000)] 
PR middle-end/70219
* lra-constraints.c (delete_move_and_clobber): Change assertion
to also allow dregno == 0.

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

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

9 years agoPR tree-opt/68714
rth [Mon, 14 Mar 2016 20:48:15 +0000 (20:48 +0000)] 
PR tree-opt/68714

  * tree-ssa-reassoc.c (ovce_extract_ops, optimize_vec_cond_expr): New.
  (can_reassociate_p): Allow ANY_INTEGRAL_TYPE_P.
  (reassociate_bb): Use optimize_vec_cond_expr; avoid
  optimize_range_tests, attempt_builtin_copysign and attempt_builtin_powi
  on vectors.

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

9 years ago P08184R0: Generalizing the Range-Based For Loop
jason [Mon, 14 Mar 2016 19:57:54 +0000 (19:57 +0000)] 
P08184R0: Generalizing the Range-Based For Loop

* parser.c (cp_convert_range_for): Set the type of __end separately.
(cp_parser_perform_range_for_lookup): Allow different begin/end
types if they are comparable.

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

9 years agoLRA: identify biggest access mode for hard_regs and use it in split_reg
bernds [Mon, 14 Mar 2016 15:08:54 +0000 (15:08 +0000)] 
LRA: identify biggest access mode for hard_regs and use it in split_reg

PR target/70083
* lra-lives.c (process_bb_lives): Also update biggest mode for hard
regs.
(lra_create_live_ranges_1): initialize hard register biggest_mode to
VOIDmode.
* lra-constraints.c (split_reg): For hard regs, try to find the
biggest single-register mode used in the function.

testsuite/
PR target/70083
* gcc.dg/torture/pr70083.c: New test.
* gcc.target/i386/pr70083.c: New test.

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

9 years ago2016-03-14 Richard Biener <rguenther@suse.de>
rguenth [Mon, 14 Mar 2016 14:50:40 +0000 (14:50 +0000)] 
2016-03-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56365
* tree-ssa-phiopt.c (minmax_replacement): Handle alternate
constants to compare against.

* gcc.dg/tree-ssa/phi-opt-14.c: New testcase.

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

9 years agors6000: Handle "d" output in the bd*z patterns (PR70098)
segher [Mon, 14 Mar 2016 14:18:44 +0000 (14:18 +0000)] 
rs6000: Handle "d" output in the bd*z patterns (PR70098)

In the rs6000 port, FLOAT_REGS can contain DImode values when compiling
for 64-bit targets.  Some instructions (like "fcfid" in the testcase,
convert from integer to DP float) only work on floating point registers.
So, we do want to allow DImode in these regs.

Now, in unusual cases IRA will assign FLOAT_REGS to some allocno where
some insns cannot handle FLOAT_REGS there, so they will need a reload.
Maybe IRA can be made smarter, but it isn't doing anything wrong here,
so we should be able to handle it.

The place it goes wrong is in the output of the *ctrdi_internal[1256]
pattern: the "bdz" and "bdnz" instructions.  GCC refuses to do output
reloads on JUMP_INSNs, probably because it is hard to do, needs different
strategies than "normal" reloads do, and it cannot even be done at all
for general patterns.  So JUMP_INSNs need to be able to handle every
possible output for the register class used.

These patterns already handle writing to "c" (the base insn case), and
to "r", "m", and "c" or "l"; all those via splitters.  We just need to
handle "d" as well.  That is what this patch does.  [A predicate in one
of the splitters needs to be touched up so that the correct splitter
is used for the FLOAT_REGS case.]

But, that leaves another problem.  One of the insns that are split to
is a move from a GPR to an FPR.  That work fine on targets with direct
move (which does exactly that), i.e. power8 and up.  But older targets
need memory to do the move, and this splitter runs after reload so
it cannot allocate memory; and allocating memory beforehand for every
bdnz insn is pretty horrible as well.

This patch implements the easy part.  With it, power8 works, where it
didn't before.

PR target/70098
* config/rs6000/rs6000.md (*ctr<mode>_internal1, *ctr<mode>_internal2,
*ctr<mode>_internal5, *ctr<mode>_internal6): Also allow "d" as output.
(define_split for the GPR case): Use int_reg_operand instead of
gpc_reg_operand for the output.

gcc/testsuite/
PR target/70098
* lib/target-supports.exp (check_effective_target_powerpc64_no_dm):
New function.
* g++.dg/pr70098.C: New testcase.

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

9 years agoUnshare create_empty_if_region_on_edge argument
vries [Mon, 14 Mar 2016 09:19:14 +0000 (09:19 +0000)] 
Unshare create_empty_if_region_on_edge argument

2016-03-14  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/70045
* graphite-isl-ast-to-gimple.c (graphite_create_new_loop_guard): Unshare
create_empty_if_region_on_edge argument.

* gcc.dg/graphite/pr70045.c: New test.

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

9 years agoSummary: libcc1: rerun configure when gcc/BASE-VER changes
schwab [Mon, 14 Mar 2016 08:54:06 +0000 (08:54 +0000)] 
Summary: libcc1: rerun configure when gcc/BASE-VER changes

* configure.ac (CONFIG_STATUS_DEPENDENCIES): Substitute.
* configure: Regenerate.
* Makefile.in: Regenerate.

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

9 years agoDaily bump.
gccadmin [Mon, 14 Mar 2016 00:16:15 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago * config/arm/vxworks.h (STACK_CHECK_STATIC_BUILTIN): Define.
ebotcazou [Sun, 13 Mar 2016 20:35:48 +0000 (20:35 +0000)] 
* config/arm/vxworks.h (STACK_CHECK_STATIC_BUILTIN): Define.
(STACK_CHECK_PROTECT): Likewise.
* config/i386/vxworks.h (STACK_CHECK_STATIC_BUILTIN): Likewise
(STACK_CHECK_PROTECT): Likewise.
* config/rs6000/vxworks.h (STACK_CHECK_STATIC_BUILTIN): Likewise
(STACK_CHECK_PROTECT): Likewise.
* config/rs6000/vxworksae.h (STACK_CHECK_PROTECT): Likewise.
* config/sparc/vxworks.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
(STACK_CHECK_PROTECT): Likewise.
ada/
* system-vxworks-m68k.ads (Stack_Check_Probes): Set to True.
(Stack_Check_Limits): Set to False.
* system-vxworks-mips.ads (Stack_Check_Probes): Set to True.
(Stack_Check_Limits): Set to False.
* system-vxworks-ppc.ads (Stack_Check_Probes): Set to True.
(Stack_Check_Limits): Set to False.
* system-vxworks-sparcv9.ads (Stack_Check_Probes): Set to True.
(Stack_Check_Limits): Set to False.
* system-vxworks-x86.ads (Stack_Check_Probes): Set to True.
(Stack_Check_Limits): Set to False.

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

9 years agolibgcc_s is required by libstdc++
tschwinge [Sun, 13 Mar 2016 19:08:21 +0000 (19:08 +0000)] 
libgcc_s is required by libstdc++

libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
always_ld_library_path the path to libgcc_s.

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

9 years ago2016-03-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 13 Mar 2016 17:38:07 +0000 (17:38 +0000)] 
2016-03-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
    Jim MacArthur  <jim.macarthur@codethink.co.uk>

PR fortran/69043
* scanner.c (load_file): Check that included file is regular.

PR fortran/69043
* gfortran.dg/include_9.f90: New test.

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

9 years ago2016-03-13 Dominique d'Humieres <dominiq@lps.ens.fr>
dominiq [Sun, 13 Mar 2016 09:48:20 +0000 (09:48 +0000)] 
2016-03-13  Dominique d'Humieres  <dominiq@lps.ens.fr>

PR fortran/45076
gfortran.dg/prof/prof.exp: New script.
gfortran.dg/prof/dynamic_dispatch_6.f03: New test.

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

9 years ago2016-03-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 13 Mar 2016 00:19:08 +0000 (00:19 +0000)] 
2016-03-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
    Harold Anlauf  <anlauf@gmx.de>

PR fortran/69520
* invoke.texi: Explain use of the 'no-' construct within the
-fcheck= option.
* options.c (gfc_handle_runtime_check_option): Enable use of
'no-' prefix for the various options with -fcheck= to allow
negating previously enabled check options.

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

9 years agoDaily bump.
gccadmin [Sun, 13 Mar 2016 00:16:14 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago PR rtl-optimization/69307
law [Sat, 12 Mar 2016 17:12:29 +0000 (17:12 +0000)] 
PR rtl-optimization/69307
* sel-sched.c (choose_best_pseudo_reg): Properly check for hard
registers in modes that span more than one register.

PR rtl-optimization/69307
* gcc.dg/pr69307.c: New test.

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

9 years ago2016-03-12 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Sat, 12 Mar 2016 14:56:24 +0000 (14:56 +0000)] 
2016-03-12  Vladimir Makarov  <vmakarov@redhat.com>

PR target/69614
* lra-constraints.c (delete_move_and_clobber): New.
(remove_inheritance_pseudos): Use it.

2016-03-12  Vladimir Makarov  <vmakarov@redhat.com>

PR target/69614
* gcc.target/arm/pr69614.c: New.

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

9 years ago2016-03-12 Paul Thomas <pault@gcc.gnu.org>
pault [Sat, 12 Mar 2016 13:59:10 +0000 (13:59 +0000)] 
2016-03-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/70031
* decl.c (gfc_match_prefix): Treat the 'module' prefix in the
same way as the others, rather than fixing it to come last.
(gfc_match_function_decl, gfc_match_subroutine): After errors
in 'copy_prefix', emit them immediately in the case of module
procedures to prevent a later ICE.

PR fortran/69524
* decl.c (gfc_match_submod_proc): Permit 'module procedure'
declarations within the contains section of modules as well as
submodules.
* resolve.c (resolve_fl_procedure): Likewise.
*trans-decl.c (build_function_decl): Change the gcc_assert to
allow all forms of module procedure declarations within module
contains sections.

2016-03-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/70031
* gfortran.dg/submodule_14.f08: New test

PR fortran/69524
* gfortran.dg/submodule_15.f08: New test

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

9 years ago PR ada/70017
ebotcazou [Sat, 12 Mar 2016 11:32:54 +0000 (11:32 +0000)] 
PR ada/70017
* calls.c (emit_library_call_value_1): Clear the ECF_NOTHROW flag if
the libcall is LCT_THROW.
* explow.c (probe_stack_range): Pass LCT_THROW to emit_library_call
for the checking routine.

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

9 years agoFix PR c++/70106 (type of parenthesized qualified-id has wrong cv-qualifiers)
ppalka [Sat, 12 Mar 2016 02:05:17 +0000 (02:05 +0000)] 
Fix PR c++/70106 (type of parenthesized qualified-id has wrong cv-qualifiers)

gcc/cp/ChangeLog:

PR c++/70106
* semantics.c (force_paren_expr): Just build a PAREN_EXPR when
processing_template_decl and EXPR is a SCOPE_REF.

gcc/testsuite/ChangeLog:

PR c++/70106
* g++.dg/cpp1y/paren3.C: New test.

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

9 years agoDaily bump.
gccadmin [Sat, 12 Mar 2016 00:16:15 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago[gcc]
meissner [Sat, 12 Mar 2016 00:10:54 +0000 (00:10 +0000)] 
[gcc]
2016-03-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/70131
* config/rs6000/rs6000.md (round32<mode>2_fprs): Do not do the
optimization if we have direct move.
(roundu32<mode>2_fprs): Likewise.

[gcc/testsuite]
2016-03-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/70131
* gcc.target/powerpc/ppc-round2.c: New test.

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

9 years ago * sv.po: Update.
jsm28 [Sat, 12 Mar 2016 00:00:52 +0000 (00:00 +0000)] 
* sv.po: Update.

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

9 years ago PR target/70123
law [Fri, 11 Mar 2016 22:38:41 +0000 (22:38 +0000)] 
PR target/70123
* lra-remat.c (operand_to_remat): Disallow hard regs in the value t
be rematerialized.
(reg_overlap_for_remat_p): Renamed from input_regno_present_p.
Arguments swapped.  All callers changed.  Take reg_renumber into
account, and Calculate and compare register ranges for hard regs.

PR target/70123
* gcc.dg/torture/pr70123.c: New test.

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

9 years ago PR tree-optimization/70190
law [Fri, 11 Mar 2016 22:32:11 +0000 (22:32 +0000)] 
PR tree-optimization/70190
* tree-ssa-threadbackward.c (fsm_find_control_statement_thread_paths):
Handle cases where we can not extract the taken edge, even though we
found a constant value.

PR tree-optimization/70190
* gcc.c-torture/compile/pr70190.c: New test.

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

9 years ago PR tree-optimization/64058
law [Fri, 11 Mar 2016 21:07:31 +0000 (21:07 +0000)] 
PR tree-optimization/64058
* tree-ssa-coalesce.c (struct coalesce_pair): Add new field INDEX.
(num_coalesce_pairs): Move up earlier in file.
(find_coalesce_pair): Initialize the INDEX field for each pair
discovered.
(compare_pairs): No longer sort on the elements in each pair.
Instead break ties with the index of the coalesce pair.

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

9 years agoWmisleading-indentation.c: add more test cases for PR c/68187
dmalcolm [Fri, 11 Mar 2016 19:54:43 +0000 (19:54 +0000)] 
Wmisleading-indentation.c: add more test cases for PR c/68187

gcc/testsuite/ChangeLog:
PR c/68187
* c-c++-common/Wmisleading-indentation.c (test43_a): New test
case.
(test43_b): Likewise.
(test43_c): Likewise.
(test43_d): Likewise.
(test43_e): Likewise.
(test43_f): Likewise.
(test43_g): Likewise.
(test44_a): Likewise.
(test44_b): Likewise.
(test44_c): Likewise.
(test44_d): Likewise.
(test44_e): Likewise.

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

9 years agoWmisleading-indentation: add reproducer for PR c/70085
dmalcolm [Fri, 11 Mar 2016 19:48:49 +0000 (19:48 +0000)] 
Wmisleading-indentation: add reproducer for PR c/70085

PR c/70085 reported a false-positive from -Wmisleading-indentation.

The warning was fixed by the fix for PR c/68187 (r233972), but it seems
worth capturing the reproducer for PR c/70085 as an additional test case,
as it's slightly different to those seen in PR c/68187.

gcc/testsuite/ChangeLog:
PR c/70085
* c-c++-common/Wmisleading-indentation.c (pr70085): New test case.

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

9 years ago[AArch64] Fix gcc.target/aarch64/vect-reduc-or_1.c for -mcpu=cortex-a57
ktkachov [Fri, 11 Mar 2016 15:36:03 +0000 (15:36 +0000)] 
[AArch64] Fix gcc.target/aarch64/vect-reduc-or_1.c for -mcpu=cortex-a57

* gcc.target/aarch64/vect-reduc-or_1.c: Add -fno-vect-cost-model to
dg-options.

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

9 years ago[AArch64] PR target/70002: Make aarch64_set_current_function play nice with pragma...
ktkachov [Fri, 11 Mar 2016 15:27:24 +0000 (15:27 +0000)] 
[AArch64] PR target/70002: Make aarch64_set_current_function play nice with pragma resetting

PR target/70002
* config/aarch64/aarch64-protos.h
(aarch64_save_restore_target_globals): New prototype.
* config/aarch64/aarch64-c.c (aarch64_pragma_target_parse):
Call the above when popping pragma.
* config/aarch64/aarch64.c (aarch64_save_restore_target_globals):
New function.
(aarch64_set_current_function): Rewrite using the above.

PR target/70002
PR target/69245
* gcc.target/aarch64/pr69245_2.c: New test.

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

9 years ago PR tree-optimization/70177
jakub [Fri, 11 Mar 2016 12:28:50 +0000 (12:28 +0000)] 
PR tree-optimization/70177
* gimple-expr.h (extract_ops_from_tree_1): Renamed to ...
(extract_ops_from_tree): ... this.  In the 2 argument
overload remove _1 suffix.
* gimple-expr.c (extract_ops_from_tree_1): Renamed to ...
(extract_ops_from_tree): ... this.
* gimple.c (gimple_build_assign, gimple_assign_set_rhs_from_tree):
Adjust callers.
* tree-ssa-loop-niter.c (derive_constant_upper_bound): Likewise.
* tree-ssa-forwprop.c (defcodefor_name): Call 3 operand
extract_ops_from_tree instead of 2 operand one.

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

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

9 years agoRe: Add -funconstrained-commons to work around PR/69368 (and others) in SPEC2006
alalaw01 [Fri, 11 Mar 2016 12:27:58 +0000 (12:27 +0000)] 
Re: Add -funconstrained-commons to work around PR/69368 (and others) in SPEC2006

gcc/testsuite:

* gfortran.dg/unconstrained_commons.f: Widen regexp to match j_<N>.

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

9 years agoFix PR/70013
alalaw01 [Fri, 11 Mar 2016 12:08:01 +0000 (12:08 +0000)] 
Fix PR/70013

gcc:

PR tree-optimization/70013
* tree-sra.c (analyze_access_subtree): Also set grp_unscalarized_data
for constant-pool entries.

gcc/testsuite:

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

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

9 years ago PR rtl-optimization/70174
jakub [Fri, 11 Mar 2016 12:07:01 +0000 (12:07 +0000)] 
PR rtl-optimization/70174
* expmed.c (store_bit_field_using_insv): Use gen_lowpart_if_possible
followed by gen_lowpart on force_reg instead of just gen_lowpart.

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

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

9 years ago PR tree-optimization/70169
jakub [Fri, 11 Mar 2016 12:05:58 +0000 (12:05 +0000)] 
PR tree-optimization/70169
* tree-ssa-loop.c (gen_lsm_tmp_name): Handle FUNCTION_DECL and
LABEL_DECL like VAR_DECL.  Emit nothing instead of gcc_unreachable
for unknown codes.

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

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

9 years agogcc/
ienkovich [Fri, 11 Mar 2016 11:25:29 +0000 (11:25 +0000)] 
gcc/

PR target/70160
* config/i386/i386.c (scalar_chain::convert_reg): Skip uses
of uninitialized values.

gcc/testsuite/

PR target/70160
* gcc.target/i386/pr70160.c: New test.

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

9 years agoS/390: Fix rounding for _Decimal128 to _Decimal32 conversion
krebbel [Fri, 11 Mar 2016 07:47:47 +0000 (07:47 +0000)] 
S/390: Fix rounding for _Decimal128 to _Decimal32 conversion

We do not have a direct conversion instruction from 128 bit DFP to 32
bit DFP so this needs to be done in two steps.  The first needs to be
done with the "prepare for shorter precision rounding mode" in order
to produce a correct result.

gcc/ChangeLog:

2016-03-11  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.md ("trunctddd2"): Turn former define_insn into
define_expand.
("*trunctddd2"): New pattern definition.
("trunctdsd2"): Set prep_for_short_prec rounding mode for the
TD->DD truncation.

gcc/testsuite/ChangeLog:

2016-03-11  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* gcc.target/s390/dfp-1.c: New test.

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

9 years agoS/390: Define macros for rounding mode constants
krebbel [Fri, 11 Mar 2016 07:24:41 +0000 (07:24 +0000)] 
S/390: Define macros for rounding mode constants

This patch replaces a few magic numbers used for floating point
rounding modes with macros.  This is mostly a NoOp change apart from:

fixuns_truncdddi2, fixuns_trunctddi2, fixuns_trunc<mode>si2: Replace 5
with DFP_RND_TOWARD_0 (which is 9).

5 as well as 9 represent round towards 0 with the difference that for
5 the new DFP quantum exception is enabled as well.  This exception
isn't IEEE754 and we do not have an interface to enable and test it
anyway.  So we do not intend to enable it.  This so far should not
have any noticable effect since the quantum exception was not
observable through the Posix functions.

Some pattern ("fix_trunc<mode>di2") is already using rounding mode 9
correctly.

gcc/ChangeLog:

2016-03-11  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.md (BFP_RND_*, DFP_RND_*): Add new constant
definitions for BFP and DFP rounding modes.
("fixuns_truncdddi2", "fixuns_trunctddi2")
("fixuns_trunc<BFP:mode><GPR:mode>2", "fixuns_trunc<mode>si2")
("fix_trunc<DSF:mode><GPR:mode>2", "fix_trunc<mode>di2")
("fix_trunctf<mode>2"): Use the new constants instead of magic
numbers.

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

9 years agoS/390: Rename shift_count_or_setmem_operand to setmem_operand
krebbel [Fri, 11 Mar 2016 07:23:49 +0000 (07:23 +0000)] 
S/390: Rename shift_count_or_setmem_operand to setmem_operand

The shift_count_or_setmem_operand predicate is now only used for
setmem patterns anymore.  Rename it together with the related
functions.

gcc/ChangeLog:

2016-03-11  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/constraints.md: Adjust comment.
("Y"): Adjust comment.  Rename s390_decompose_shift_count to
s390_decompose_addrstyle_without_index.
* config/s390/predicates.md (shift_count_or_setmem_operand):
Rename to setmem_operand.
* config/s390/s390-protos.h
(s390_decompose_shift_count): Rename to
s390_decompose_addrstyle_without_index.
* config/s390/s390.c (s390_decompose_shift_count)
(s390_mem_constraint, print_shift_count_operand)
(print_operand_address, print_operand): Rename
s390_decompose_shift_count to
s390_decompose_addrstyle_without_index and rename
print_shift_count_operand to print_addrstyle_operand troughout the
file.
* config/s390/s390.md ("setmem_long_<P:mode>", "*setmem_long")
("*setmem_long_and", "*setmem_long_31z", "*setmem_long_and_31z"):
Rename shift_count_or_setmem_operand to setmem_operand.
* config/s390/vx-builtins.md ("vec_insert<mode>")
("vec_promote<mode>"): Replace shift_count_or_setmem_operand with
nonmemory_operand.

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

9 years agoDaily bump.
gccadmin [Fri, 11 Mar 2016 00:16:14 +0000 (00:16 +0000)] 
Daily bump.

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

9 years ago PR target/70168
uweigand [Thu, 10 Mar 2016 23:58:44 +0000 (23:58 +0000)] 
PR target/70168
* config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap):
Handle overlapping retval and newval.

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

9 years ago libgomp/
cesar [Thu, 10 Mar 2016 22:50:40 +0000 (22:50 +0000)] 
libgomp/
PR testsuite/70009
* testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.

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

9 years ago * g++.dg/ubsan/pr70135.C: Don't rely on C++17 static_assert.
jason [Thu, 10 Mar 2016 20:19:47 +0000 (20:19 +0000)] 
* g++.dg/ubsan/pr70135.C: Don't rely on C++17 static_assert.

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

9 years ago PR target/7044
nickc [Thu, 10 Mar 2016 17:24:16 +0000 (17:24 +0000)] 
PR target/7044
* config/aarch64/aarch64.c
(aarch64_override_options_after_change_1): When forcing
flag_omit_frame_pointer to be true, use a special value that can
be detected if this function is called again, thus preventing
flag_omit_leaf_frame_pointer from being forced to be false.

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

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

9 years ago PR c++/70001
jakub [Thu, 10 Mar 2016 17:23:06 +0000 (17:23 +0000)] 
PR c++/70001
* constexpr.c (cxx_eval_vec_init_1): For pre_init case, reuse
return value from cxx_eval_constant_expression from earlier
elements if it is valid constant initializer requiring no
relocations.

* g++.dg/cpp0x/constexpr-70001-1.C: New test.
* g++.dg/cpp0x/constexpr-70001-2.C: New test.
* g++.dg/cpp0x/constexpr-70001-3.C: New test.

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

9 years ago[AArch64] Fix thinko in handling of -momit-leaf-frame-pointer option
ktkachov [Thu, 10 Mar 2016 16:24:26 +0000 (16:24 +0000)] 
[AArch64] Fix thinko in handling of -momit-leaf-frame-pointer option

* common/config/aarch64/aarch64-common.c (aarch64_handle_option):
Set x_flag_omit_leaf_frame_pointer when handling
-momit-leaf-frame-pointer.

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

9 years ago PR lto/69589
hubicka [Thu, 10 Mar 2016 16:11:14 +0000 (16:11 +0000)] 
PR lto/69589
* cgraph.c (cgraph_node::dump): Dump split_part and indirect_call_target.
* cgraph.h (cgraph_node): Add indirect_call_target flag.
* ipa.c (has_addr_references_p): Cleanup.
(is_indirect_call_target_p): New.
(walk_polymorphic_call_targets): Do not mark virtuals that may be
called indirectly as local.
(symbol_table::remove_unreachable_nodes): Compute indirect_call_target.

* g++.dg/lto/pr69589_0.C: New testcase
* g++.dg/lto/pr69589_1.C: New testcase

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

9 years ago PR ipa/69630
hubicka [Thu, 10 Mar 2016 16:05:59 +0000 (16:05 +0000)] 
PR ipa/69630
* ipa-devirt.c (possible_polymorphic_call_targets): Do not ICE
on cxa_pure_virtual.

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

9 years ago PR lto/69589
hubicka [Thu, 10 Mar 2016 16:02:55 +0000 (16:02 +0000)] 
PR lto/69589
* tree.c (free_lang_data_in_decl): Clear visibility of TYPE_DECL.

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

9 years ago PR lto/69589
hubicka [Thu, 10 Mar 2016 16:02:00 +0000 (16:02 +0000)] 
PR lto/69589
* tree.c (need_assembler_name_p): Only record main variant type names.

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

9 years ago PR c++/70153
mpolacek [Thu, 10 Mar 2016 15:13:01 +0000 (15:13 +0000)] 
PR c++/70153
* cp-gimplify.c (cp_fold): Handle UNARY_PLUS_EXPR.

* g++.dg/delayedfold/unary-plus1.C: New test.

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

9 years ago2016-03-10 Andre Vieira <andre.simoesdiasvieira@arm.com>
thopre01 [Thu, 10 Mar 2016 13:43:29 +0000 (13:43 +0000)] 
2016-03-10 Andre Vieira <andre.simoesdiasvieira@arm.com>

    gcc/testsuite/
    * gcc.target/arm/pr45701-1.c: Escape brackets.
    * gcc.target/arm/pr45701-2.c: Likewise.

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

9 years ago2016-03-10 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Thu, 10 Mar 2016 13:29:48 +0000 (13:29 +0000)] 
2016-03-10  Christophe Lyon  <christophe.lyon@linaro.org>

PR target/70113.
* config/aarch64/aarch64.h (TARGET_FIX_ERR_A53_843419_DEFAULT):
Always define to 0 or 1.
(TARGET_FIX_ERR_A53_843419): New macro.
* config/aarch64/aarch64-elf-raw.h
(TARGET_FIX_ERR_A53_843419_DEFAULT): Update for above changes.
* config/aarch64/aarch64-linux.h: Likewise.
* config/aarch64/aarch64.c
(aarch64_override_options_after_change_1): Do not default
aarch64_nopcrelative_literal_loads to true if Cortex-A53 erratum
843419 is on.
(aarch64_attributes): Handle fix-cortex-a53-843419.
(aarch64_can_inline_p): Likewise.
* config/aarch64/aarch64.opt (aarch64_fix_a53_err843419): Save.

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

9 years agoAdd -funconstrained-commons to work around PR/69368 (and others) in SPEC2006
alalaw01 [Thu, 10 Mar 2016 12:19:45 +0000 (12:19 +0000)] 
Add -funconstrained-commons to work around PR/69368 (and others) in SPEC2006

gcc/:

        * common.opt (funconstrained-commons, flag_unconstrained_commons): New.
        * tree.c (array_at_struct_end_p): Do not limit to size of decl for
        DECL_COMMONS if flag_unconstrained_commons is set.
        * tree-dfa.c (get_ref_base_and_extent): Likewise.
        * doc/invoke.texi (Optimize Options): Add -funconstrained-commons.
        (funconstrained-commons): Document.

gcc/testsuite:

* gfortran.dg/unconstrained_commons.f: New.

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

9 years ago2016-03-10 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Thu, 10 Mar 2016 12:03:25 +0000 (12:03 +0000)] 
2016-03-10  Christophe Lyon  <christophe.lyon@linaro.org>

* config/aarch64/t-aarch64 (OPTIONS_H_EXTRA): Add
aarch64-fusion-pairs.def and aarch64-tuning-flags.def

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

9 years agogcc/
ienkovich [Thu, 10 Mar 2016 10:58:57 +0000 (10:58 +0000)] 
gcc/

* tree-vect-stmts.c (vectorizable_mask_load_store): Check mask
has a proper number of elements.

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