platform/upstream/linaro-gcc.git
9 years ago2015-01-14 Tejas Belagod <tejas.belagod@arm.com>
belagod [Wed, 14 Jan 2015 10:29:09 +0000 (10:29 +0000)]
2015-01-14  Tejas Belagod  <tejas.belagod@arm.com>

        * gcc.target/aarch64/vect-movi.c: Check for vectorization for
        64-bit and 128-bit.

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

9 years ago[ARM] Fix PR target/64460: Set 'shift' attr properly on some patterns.
ktkachov [Wed, 14 Jan 2015 10:14:23 +0000 (10:14 +0000)]
[ARM] Fix PR target/64460: Set 'shift' attr properly on some patterns.

PR target/64460
* config/arm/arm.md (*<arith_shift_insn>_multsi): Set 'shift' to 2.
(*<arith_shift_insn>_shiftsi): Set 'shift' attr to 3.

* gcc.target/arm/pr64460_1.c: New test.

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

9 years agoFix Linux multilib configurations with default architectures
mpf [Wed, 14 Jan 2015 08:35:52 +0000 (08:35 +0000)]
Fix Linux multilib configurations with default architectures

gcc/

* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Only infer an ISA
level from an ARCH; do not inject the default.
(MIPS_DEFAULT_ISA_LEVEL_SPEC): New macro split out from
MIPS_ISA_LEVEL_SPEC.
(MIPS_ISA_NAN2008_SPEC): Update comment.
(BASE_DRIVER_SELF_SPECS): Likewise.
* config/mips/elfoabi.h (DRIVER_SELF_SPECS): Add
MIPS_DEFAULT_ISA_LEVEL_SPEC.
* config/mips/mti-elf.h (DRIVER_SELF_SPECS): Likewise.
* config/mips/mti-linux.h (DRIVER_SELF_SPECS): Likewise.
* config/mips/sde.h (DRIVER_SELF_SPECS): Likewise.

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

9 years ago2015-01-14 Richard Biener <rguenther@suse.de>
rguenth [Wed, 14 Jan 2015 08:32:18 +0000 (08:32 +0000)]
2015-01-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64493
PR tree-optimization/64495
* tree-vect-loop.c (vect_finalize_reduction): For double-reductions
assign the proper vectorized PHI to the inner loop exit PHIs.

* gcc.dg/vect/pr64493.c: New testcase.
* gcc.dg/vect/pr64495.c: Likewise.

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

9 years ago2015-01-14 Joey Ye <joey.ye@arm.com>
jye2 [Wed, 14 Jan 2015 08:17:15 +0000 (08:17 +0000)]
2015-01-14  Joey Ye  <joey.ye@arm.com>

        * config/arm/arm.c (arm_compute_save_reg_mask):
        Do not save lr in case of tail call.
        * config/arm/thumb2.md (*thumb2_pop_single): New pattern.

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

9 years ago * tree-vrp.c (check_array_ref): Emit more warnings
law [Wed, 14 Jan 2015 06:50:19 +0000 (06:50 +0000)]
* tree-vrp.c (check_array_ref): Emit more warnings
for warn_array_bounds >= 2.
* common.opt: New option -Warray-bounds=.
* doc/invoke.texi: Document -Warray-bounds=.

* c.opt: New option -Warray-bounds=.

* gcc.dg/Warray-bounds-11.c: New test-case.

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

9 years ago[NDS32] Remove some features and options that are not available yet in nds32 port...
jasonwucj [Wed, 14 Jan 2015 06:08:35 +0000 (06:08 +0000)]
[NDS32] Remove some features and options that are not available yet in nds32 port of GNU binutils package.

gcc/
* config/nds32/nds32.opt (mforce-fp-as-gp): Remove.
(mforbid-fp-as-gp): Remove.
(mex9): Remove.
* config/nds32/nds32-fp-as-gp.c (nds32_have_prologue_p): Remove.
(nds32_symbol_load_store_p): Remove.
(nds32_fp_as_gp_check_available): Clean up implementation.
* config/nds32/nds32.h (LINK_SPEC): Remove -mforce-as-gp and -mex9
cases.
* config/nds32/nds32.c (nds32_asm_file_start): No need to consider
fp-as-gp and ex9 cases.

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

9 years ago * gcc.target/mips/octeon3-pipe-1.c: New test.
naveenh [Wed, 14 Jan 2015 06:08:24 +0000 (06:08 +0000)]
* gcc.target/mips/octeon3-pipe-1.c: New test.

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

9 years ago * tree-profile.c (init_ic_make_global_vars): Drop workaround
hubicka [Wed, 14 Jan 2015 05:28:50 +0000 (05:28 +0000)]
* tree-profile.c (init_ic_make_global_vars): Drop workaround
for bintuils bug 14342.
(init_ic_make_global_vars): Likewise.
(gimple_init_edge_profiler): Likewise.
(gimple_gen_ic_func_profiler): Likewise.

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

9 years ago2015-01-15 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Wed, 14 Jan 2015 05:10:44 +0000 (05:10 +0000)]
2015-01-15  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* ipa-inline.c (inline_small_functions): Swap the operands in
enum.

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

9 years ago PR ipa/64481
hubicka [Wed, 14 Jan 2015 03:47:17 +0000 (03:47 +0000)]
PR ipa/64481
* ipa-inline-analysis.c (node_growth_cache): Remove.
(initialize_growth_caches): Do not initialize it.
(free_growth_caches): Do not free it.
(do_estimate_growth): Rename to ...
(estimate_growth): ... this one; drop growth cache code.
(growth_likely_positive): Always go the heuristics way.
* ipa-inline.c (can_inline_edge_p): Walk through aliases.
(reset_edge_caches): Do not reset node growth.
(heap_edge_removal_hook): Do not maintain cache.
(inline_small_functions): Likewise; strenghten sanity check.
(ipa_inline): Do not maintain caches.
* ipa-inline.h (node_growth_cache): Remove.
(do_estimate_growth): Remove to ...
(estimate_growth): this one; remove inline version.
(reset_node_growth_cache): Remove.

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

9 years agoDaily bump.
gccadmin [Wed, 14 Jan 2015 00:16:58 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago* libffi/configure.host: Remove extra brackets for sh.
kkojima [Tue, 13 Jan 2015 23:30:33 +0000 (23:30 +0000)]
* libffi/configure.host: Remove extra brackets for sh.

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

9 years agojit: New API entrypoint: gcc_jit_context_dump_reproducer_to_file
dmalcolm [Tue, 13 Jan 2015 22:14:46 +0000 (22:14 +0000)]
jit: New API entrypoint: gcc_jit_context_dump_reproducer_to_file

gcc/jit/ChangeLog:
* docs/cp/topics/contexts.rst (Debugging): Add
gccjit::context::dump_reproducer_to_file.
* docs/internals/index.rst (Design notes): New section,
discussing input validation and
gcc_jit_context_dump_reproducer_to_file.
* docs/topics/contexts.rst (Debugging): Add
gcc_jit_context_dump_reproducer_to_file.
* docs/_build/texinfo/libgccjit.texi: Regenerate.
* jit-common.h (gcc::jit::dump::get_context): New accessor.
* jit-recording.c: Include "hash-map.h".
Within namespace ::gcc::jit...
(dump::write): Flush each line.
(dump::make_location): Pass false for new param "created_by_user".
(class allocator): New class.
(allocator::~allocator): New function.
(allocator::xstrdup_printf): New function.
(allocator::xstrdup_printf_va): New function.
(class reproducer): New subclass of dump.
(reproducer::reproducer): New function.
(reproducer::write_params): New function.
(reproducer::write_args): New function.
(reproducer::make_identifier): New function.
(reproducer::make_tmp_identifier): New function.
(reproducer::get_identifier): New pair of functions.
(reproducer::get_identifier_as_rvalue): New function.
(reproducer::get_identifier_as_lvalue): New function.
(reproducer::get_identifier_as_type): New function.
(reproducer::xstrdup_printf): New function.
(recording::context::context): Initialize m_toplevel_ctxt.
(recording::context::new_location): Add param created_by_user.
(str_option_reproducer_strings): New table of strings.
(int_option_reproducer_strings): Likewise.
(bool_option_reproducer_strings): Likewise.
(get_type_enum_strings): Likewise.
(names_of_function_kinds): Likewise.
(global_kind_reproducer_strings): Likewise.
(unary_op_reproducer_strings): Likewise.
(binary_op_reproducer_strings): Likewise.
(comparison_reproducer_strings): Likewise.
Within namespace ::gcc::jit::recording::...
(context::dump_reproducer_to_file): New function.
(string::write_reproducer): Likewise.
(location::write_reproducer): Likewise.
(type::access_as_type): Likewise.
(memento_of_get_type::write_reproducer): Likewise.
(memento_of_get_pointer::write_reproducer): Likewise.
(memento_of_get_const::write_reproducer): Likewise.
(memento_of_get_volatile::write_reproducer): Likewise.
(array_type::write_reproducer): Likewise.
(function_type::write_reproducer): Likewise.
(function_type::write_deferred_reproducer): Likewise.
(field::write_reproducer): Likewise.
(struct_::access_as_type): Likewise.
(struct_::write_reproducer): Likewise.
(union_::write_reproducer): Likewise.
(fields::write_reproducer): Likewise.
(rvalue::access_as_rvalue): Likewise.
(lvalue::access_as_rvalue): Likewise.
(lvalue::access_as_lvalue): Likewise.
(param::access_as_rvalue): Likewise.
(param::access_as_lvalue): Likewise.
(param::write_reproducer): Likewise.
(function::write_reproducer): Likewise.
(block::write_reproducer): Likewise.
(global::write_reproducer): Likewise.
(memento_of_new_rvalue_from_const <int>::write_reproducer):
Likewise.
(memento_of_new_rvalue_from_const <long>::write_reproducer):
Likewise.
(memento_of_new_rvalue_from_const <double>::write_reproducer):
Likewise.
(memento_of_new_rvalue_from_const <void *>::write_reproducer):
Likewise.
(memento_of_new_string_literal::write_reproducer): Likewise.
(unary_op::write_reproducer): Likewise.
(binary_op::write_reproducer): Likewise.
(comparison::write_reproducer): Likewise.
(cast::write_reproducer): Likewise.
(call::write_reproducer): Likewise.
(call_through_ptr::write_reproducer): Likewise.
(array_access::write_reproducer): Likewise.
(access_field_of_lvalue::write_reproducer): Likewise.
(access_field_rvalue::write_reproducer): Likewise.
(dereference_field_rvalue::write_reproducer): Likewise.
(dereference_rvalue::write_reproducer): Likewise.
(get_address_of_lvalue::write_reproducer): Likewise.
(local::write_reproducer): Likewise.
(eval::write_reproducer): Likewise.
(assignment::write_reproducer): Likewise.
(assignment_op::write_reproducer): Likewise.
(comment::write_reproducer): Likewise.
(conditional::write_reproducer): Likewise.
(jump::write_reproducer): Likewise.
(return_::write_reproducer): Likewise.
* jit-recording.h (gcc::jit::reproducer): New forward declararion.
Within namespace ::gcc::jit::recording::...
(context::new_location): Add "created_by_user" param.
(context::dump_reproducer_to_file): New method.
(context::m_toplevel_ctxt): New field.
(memento::write_reproducer): New pure virtual function.
(memento::dyn_cast_location): New virtual function.
(string::write_reproducer):
(location::location): Add "created_by_user" param.
(location::dyn_cast_location): New function.
(location::created_by_user): New accessor.
(location::write_reproducer): New function.
(location::m_created_by_user): New field.
(type::access_as_type): New virtual function.
(location::write_reproducer): Likewise.
(type::access_as_type): Likewise.
(memento_of_get_type::write_reproducer): Likewise.
(memento_of_get_pointer::write_reproducer): Likewise.
(memento_of_get_const::write_reproducer): Likewise.
(memento_of_get_volatile::write_reproducer): Likewise.
(array_type::write_reproducer): Likewise.
(function_type::write_reproducer): Likewise.
(function_type::write_deferred_reproducer): Likewise.
(field::write_reproducer): Likewise.
(struct_::access_as_type): Likewise.
(struct_::write_reproducer): Likewise.
(union_::write_reproducer): Likewise.
(union_::m_fields): Remove stray unused field.
(fields::length): New accessor.
(fields::get_field): New accessor.
(fields::write_reproducer): New function.
(rvalue::access_as_rvalue): Likewise.
(lvalue::access_as_rvalue): Likewise.
(lvalue::access_as_lvalue): Likewise.
(param::access_as_rvalue): Likewise.
(param::access_as_lvalue): Likewise.
(param::write_reproducer): Likewise.
(function::write_reproducer): Likewise.
(block::write_reproducer): Likewise.
(global::write_reproducer): Likewise.
(memento_of_new_rvalue_from_const <HOST_TYPE>::write_reproducer):
Likewise.
(memento_of_new_string_literal::write_reproducer): Likewise.
(unary_op::write_reproducer): Likewise.
(binary_op::write_reproducer): Likewise.
(comparison::write_reproducer): Likewise.
(cast::write_reproducer): Likewise.
(call::write_reproducer): Likewise.
(call_through_ptr::write_reproducer): Likewise.
(array_access::write_reproducer): Likewise.
(access_field_of_lvalue::write_reproducer): Likewise.
(access_field_rvalue::write_reproducer): Likewise.
(dereference_field_rvalue::write_reproducer): Likewise.
(dereference_rvalue::write_reproducer): Likewise.
(get_address_of_lvalue::write_reproducer): Likewise.
(local::write_reproducer): Likewise.
(eval::write_reproducer): Likewise.
(assignment::write_reproducer): Likewise.
(assignment_op::write_reproducer): Likewise.
(comment::write_reproducer): Likewise.
(conditional::write_reproducer): Likewise.
(jump::write_reproducer): Likewise.
(return_::write_reproducer): Likewise.
* libgccjit++.h (gccjit::context::dump_reproducer_to_file): New.
* libgccjit.c (gcc_jit_context_new_location): Pass "true" as
param "created_by_user".
(gcc_jit_context_dump_reproducer_to_file): New API entrypoint.
* libgccjit.h (gcc_jit_context_dump_reproducer_to_file): New API
entrypoint.
* libgccjit.map (gcc_jit_context_dump_reproducer_to_file): New API
entrypoint.

gcc/testsuite/ChangeLog:
* jit.dg/harness.h (set_up_logging): Move string concatenation
into...
(concat_strings): New function.
(dump_reproducer): New function.
(test_jit): Call dump_reproducer.
* jit.dg/jit.exp (is_testcase_meant_to_generate_a_reproducer): New
function.
(jit-dg-test): Delete any generated reproducer from previous runs.
Verify that a generated reproducer was created, and verify that it
compiles.
* jit.dg/test-nested-contexts.c (main): Call
gcc_jit_context_dump_reproducer_to_file.

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

9 years agoAdd dg-require-profiling to gcc.dg/aru-2.c
hjl [Tue, 13 Jan 2015 21:24:16 +0000 (21:24 +0000)]
Add dg-require-profiling to gcc.dg/aru-2.c

* gcc.dg/aru-2.c: Add dg-require-profiling.

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

9 years agoCheck if -pg links in check_profiling_available
hjl [Tue, 13 Jan 2015 21:13:36 +0000 (21:13 +0000)]
Check if -pg links in check_profiling_available

* lib/target-supports.exp (check_profiling_available): Check if
-pg links.

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

9 years ago PR c++/64356
jason [Tue, 13 Jan 2015 21:04:43 +0000 (21:04 +0000)]
PR c++/64356
PR libstdc++/58777
* constexpr.c (cxx_eval_binary_expression): Don't VERIFY_CONSTANT
pointer expressions.
(cxx_eval_increment_expression): Likewise.

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

9 years ago PR c++/64514
jason [Tue, 13 Jan 2015 21:04:35 +0000 (21:04 +0000)]
PR c++/64514
* pt.c (coerce_template_parameter_pack): Return NULL for a
zero-length fixed parameter pack with a pack expansion arg.

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

9 years ago PR c++/64520
jason [Tue, 13 Jan 2015 21:04:28 +0000 (21:04 +0000)]
PR c++/64520
* pt.c (unify): Don't try to deduce to std::initializer_list<T...>.

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

9 years ago PR ipa/64565
hubicka [Tue, 13 Jan 2015 20:59:37 +0000 (20:59 +0000)]
PR ipa/64565
* g++.dg/torture/pr64565.C: New testcase.
* ipa-inline.c (inline_small_functions): Update callee keys after
resolving speculation
(inline_small_functions): Always check monotonicity of the queue.

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

9 years ago PR middle-end/64391
mpolacek [Tue, 13 Jan 2015 20:22:32 +0000 (20:22 +0000)]
PR middle-end/64391
* trans-mem.c (get_attrs_for): Return NULL_TREE if X is NULL_TREE.

* gcc.dg/tm/pr64391.c: New test.

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

9 years agoSupport PIE in gcc.dg/tree-ssa/ssa-store-ccp-3.c
hjl [Tue, 13 Jan 2015 20:07:33 +0000 (20:07 +0000)]
Support PIE in gcc.dg/tree-ssa/ssa-store-ccp-3.c

target nonpic is always false for -fPIE since it defines both __PIC__
and __PIE__.  This patch changes gcc.dg/tree-ssa/ssa-store-ccp-3.c to
make it to pass with -fPIE by excluding PIE when nonpic is true.

* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Exclude pie when nonpic is
true.

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

9 years agoAdd check_effective_target_pie
hjl [Tue, 13 Jan 2015 20:05:41 +0000 (20:05 +0000)]
Add check_effective_target_pie

* gcc.target/i386/pie.c: New test.

* lib/target-supports.exp (check_effective_target_pie): New.

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

9 years ago PR rtl-optimization/64286
jakub [Tue, 13 Jan 2015 19:12:47 +0000 (19:12 +0000)]
PR rtl-optimization/64286
* ree.c (combine_reaching_defs): Move part of comment earlier,
remove !SCALAR_INT_MODE_P check.
(add_removable_extension): Don't add vector mode
extensions if all uses of the source register aren't the same
vector extensions.

* gcc.target/i386/avx2-pr64286.c: New test.

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

9 years ago2015-01-13 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 13 Jan 2015 17:19:32 +0000 (17:19 +0000)]
2015-01-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57626
* g++.dg/cpp0x/vt-57626.C: New.

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

9 years ago * sanitizer_common/sanitizer_deadlock_detector.h: Cherry pick
jakub [Tue, 13 Jan 2015 17:01:30 +0000 (17:01 +0000)]
* sanitizer_common/sanitizer_deadlock_detector.h: Cherry pick
upstream r224518 and r224519.
* tsan/tsan_rtl_thread.cc: Cherry pick upstream r224702 and
r224834.

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

9 years ago[ARM]Make CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO return 2.
renlin [Tue, 13 Jan 2015 16:47:30 +0000 (16:47 +0000)]
[ARM]Make CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO return 2.

gcc/

* config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2.
(CTZ_DEFINED_VALUE_AT_ZERO): Ditto.

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

9 years ago PR fortran/64528
jakub [Tue, 13 Jan 2015 16:42:22 +0000 (16:42 +0000)]
PR fortran/64528
* trans-decl.c (create_function_arglist): Don't set TREE_READONLY
on dummy args with VALUE attribute.

* gfortran.dg/pr64528.f90: New test.

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

9 years agoOption diff dump is added for target and optimization
marxin [Tue, 13 Jan 2015 16:30:23 +0000 (16:30 +0000)]
Option diff dump is added for target and optimization

* ipa-icf.c (sem_function::equals_private): Call new functions
cl_target_option_print_diff and cl_optimization_print_diff.
* optc-save-gen.awk (cl_target_option_print_diff): New function.
(cl_optimization_print_diff): Likewise.
* opth-gen.awk: Likewise.

M    gcc/ChangeLog
M    gcc/ipa-icf.c
M    gcc/optc-save-gen.awk
M    gcc/opth-gen.awk

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

9 years agoSet TARGET to X86_64 if __x86_64__ is defined
hjl [Tue, 13 Jan 2015 15:57:27 +0000 (15:57 +0000)]
Set TARGET to X86_64 if __x86_64__ is defined

PR bootstrap/64575
* configure.host (TARGET): Set to X86_64 if __x86_64__ is defined.

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

9 years agoPR libffi/64572
rth [Tue, 13 Jan 2015 15:29:47 +0000 (15:29 +0000)]
PR libffi/64572

 * src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin.
 (FFI_TARGET_HAS_COMPLEX_TYPE): Likewise.

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

9 years ago PR libstdc++/64571
redi [Tue, 13 Jan 2015 14:56:50 +0000 (14:56 +0000)]
PR libstdc++/64571
* config/abi/pre/gnu.ver: Export fstream functions using new string.

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

9 years agogcc/
rsandifo [Tue, 13 Jan 2015 14:11:15 +0000 (14:11 +0000)]
gcc/
* config/aarch64/aarch64.md (subsi3, *subsi3_uxtw, subdi3)
(*sub_<optab><ALLX:mode>_<GPI:mode>, *sub_<optab><SHORT:mode>_si_uxtw)
(*sub_<optab><ALLX:mode>_shft_<GPI:mode>)
(*sub_<optab><SHORT:mode>_shft_si_uxtw, *sub_<optab><mode>_multp2)
(*sub_<optab>si_multp2_uxtw, *sub_uxt<mode>_multp2)
(*sub_uxtsi_multp2_uxtw): Add stack pointer sources.

gcc/testsuite/
* gcc.target/aarch64/subsp.c: New test.

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

9 years ago\1a2015-01-13 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 13 Jan 2015 14:08:21 +0000 (14:08 +0000)]
\1a2015-01-13  Andrew Pinski   <apinski@cavium.com>

        * config/aarch64/aarch64.c (fusion_load_store): Check dest mode
        instead of src mode.

2015-01-13  Andrew Pinski  <apinski@cavium.com>

        * gcc.target/aarch64/store-pair-1.c: New testcase.

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

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

PR lto/64373
* lto-streamer-out.c (tree_is_indexable): Guard for NULL
DECL_CONTEXT.

* gcc.dg/lto/pr64373_0.c: New testcase.

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

9 years ago2015-01-13 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 13 Jan 2015 13:55:23 +0000 (13:55 +0000)]
2015-01-13  Andrew Pinski   <apinski@cavium.com>

        * config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): Reject
        volatile mems.
        (aarch64_operands_adjust_ok_for_ldpstp): Likewise.

2015-01-13  Andrew Pinski  <apinski@cavium.com>

        * gcc.target/aarch64/volatileloadpair-1.c: New testcase.
        * gcc.target/aarch64/volatileloadpair-2.c: New testcase.

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

9 years ago PR middle-end/63974
jakub [Tue, 13 Jan 2015 13:44:06 +0000 (13:44 +0000)]
PR middle-end/63974
* cfgexpand.c (expand_computed_goto): Don't call
convert_memory_address here.

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

9 years ago2015-01-13 Richard Biener <rguenther@suse.de>
rguenth [Tue, 13 Jan 2015 13:41:46 +0000 (13:41 +0000)]
2015-01-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64406
* tree-loop-distibution.c (pass_loop_distribution::execute):
Reset the SCEV hashtable if we distributed anything.

* gcc.dg/pr64406.c: New testcase.

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

9 years ago2015-01-13 Richard Biener <rguenther@suse.de>
rguenth [Tue, 13 Jan 2015 12:35:27 +0000 (12:35 +0000)]
2015-01-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64404
* tree-vect-stmts.c (vectorizable_load): Reject conflicting
SLP types for CSEd loads.

* gcc.dg/vect/pr64404.c: New testcase.

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

9 years agoupdate to add myself to Objective-c/c++ maintainers
iains [Tue, 13 Jan 2015 11:23:46 +0000 (11:23 +0000)]
update to add myself to Objective-c/c++ maintainers

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

9 years ago2015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Tue, 13 Jan 2015 11:23:01 +0000 (11:23 +0000)]
2015-01-13  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/64436
    * tree-ssa-math-opts.c (find_bswap_or_nop_1): Move code performing the
    merge of two symbolic numbers for a bitwise OR to ...
    (perform_symbolic_merge): This. Also fix computation of the range and
    end of the symbolic number corresponding to the result of a bitwise OR.

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

9 years agoAdd self as C front end reviewer.
mpolacek [Tue, 13 Jan 2015 09:08:35 +0000 (09:08 +0000)]
Add self as C front end reviewer.

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

9 years ago2014-01-13 Richard Biener <rguenther@suse.de>
rguenth [Tue, 13 Jan 2015 08:32:13 +0000 (08:32 +0000)]
2014-01-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64568
* tree-ssa-forwprop.c (pass_forwprop::execute): Properly
release defs of removed stmts, avoid splitting TARGET_MEM_REFs.

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

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

9 years ago PR libgcj/64219
jakub [Tue, 13 Jan 2015 08:23:31 +0000 (08:23 +0000)]
PR libgcj/64219
* Makefile.am (install-data-local): Use just the major version
from GCJVERSION instead of major.minor.
* Makefile.in: Regenerated.

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

9 years ago[NDS32] Consider -mcmodel=X in nds32_legitimate_address_p implementation.
jasonwucj [Tue, 13 Jan 2015 06:06:34 +0000 (06:06 +0000)]
[NDS32] Consider -mcmodel=X in nds32_legitimate_address_p implementation.

gcc/
* config/nds32/nds32.c (nds32_legitimate_address_p): Consider
TARGET_CMODEL_LARGE and TARGET_CMODEL_MEDIUM cases.

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

9 years ago[NDS32] Implement TARGET_ENCODE_SECTION_INFO to store specific flag in symbol_ref...
jasonwucj [Tue, 13 Jan 2015 05:59:03 +0000 (05:59 +0000)]
[NDS32] Implement TARGET_ENCODE_SECTION_INFO to store specific flag in symbol_ref rtx.

gcc/
* config/nds32/nds32.h (NDS32_SYMBOL_FLAG_RODATA): Define our own
target-specific symbol_ref flag.
(NDS32_SYMBOL_REF_RODATA_P): Define it to check if the symbol_ref
resides in rodata section.
* config/nds32/nds32.c (TARGET_ENCODE_SECTION_INFO): Define.
(nds32_encode_section_info): New function.

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

9 years ago * MAINTAINERS: Remove Stan Shebs as he has been inactive for
law [Tue, 13 Jan 2015 05:41:11 +0000 (05:41 +0000)]
   * MAINTAINERS: Remove Stan Shebs as he has been inactive for
        a very long time.

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

9 years ago[NDS32] Consider TARGET_CMODEL_LARGE for function call instructions.
jasonwucj [Tue, 13 Jan 2015 05:37:07 +0000 (05:37 +0000)]
[NDS32] Consider TARGET_CMODEL_LARGE for function call instructions.

gcc/
* config/nds32/nds32.md (call): Use pseudo instruction bal which
clobbers TA_REGNUM if large code model is specified.
(call_register): Likewise.
(call_immediate): Likewise.
(call_value): Likewise.
(call_value_register): Likewise.
(call_value_immediate): Likewise.

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

9 years ago[NDS32] Provide TARGET_CMODEL_[SMALL|MEDIUM|LARGE] to check which code model is speci...
jasonwucj [Tue, 13 Jan 2015 05:32:08 +0000 (05:32 +0000)]
[NDS32] Provide TARGET_CMODEL_[SMALL|MEDIUM|LARGE] to check which code model is specified.

gcc/
* config/nds32/nds32.h (TARGET_CMODEL_SMALL): New macro.
(TARGET_CMODEL_MEDIUM): New macro.
(TARGET_CMODEL_LARGE): New macro.
* config/nds32/nds32.c (nds32_asm_file_start): Display corresponding
code model setting in assembly code.

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

9 years ago[NDS32] Remove -mgp-direct/-mno-gp-direct options.
jasonwucj [Tue, 13 Jan 2015 05:22:25 +0000 (05:22 +0000)]
[NDS32] Remove -mgp-direct/-mno-gp-direct options.

gcc/
* common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS):
Remove MASK_GP_DIRECT flag.
* config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as
one of the multilib default options.
* config/nds32/nds32.opt (mgp-direct): Remove.
* config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of
-mgp-direct.  We also remove unnecessary -mlittle-endian/-mbig-endian.

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

9 years ago[NDS32] Add -mcmodel= option to support different code model.
jasonwucj [Tue, 13 Jan 2015 05:17:54 +0000 (05:17 +0000)]
[NDS32] Add -mcmodel= option to support different code model.

* config/nds32/nds32.opt (mcmodel): Add new option.
* config/nds32/nds32-opts.h (nds32_cmodel_type): Add new enum type
to describe code model.

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

9 years agogcc/
olegendo [Tue, 13 Jan 2015 00:30:57 +0000 (00:30 +0000)]
gcc/
PR target/64479
* rtlanal.c (set_reg_p): Handle SEQUENCE constructs.

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

9 years agoFix libjava failures on i686-linux
rth [Tue, 13 Jan 2015 00:26:31 +0000 (00:26 +0000)]
Fix libjava failures on i686-linux

* src/x86/ffi.c (ffi_raw_call): Fill in frame.

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

9 years agoDaily bump.
gccadmin [Tue, 13 Jan 2015 00:16:50 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago* Add TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook for sh.
kkojima [Mon, 12 Jan 2015 23:47:58 +0000 (23:47 +0000)]
* Add TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook for sh.

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

9 years agolibgccjit: detect various kinds of errors relating to params and locals
dmalcolm [Mon, 12 Jan 2015 22:25:37 +0000 (22:25 +0000)]
libgccjit: detect various kinds of errors relating to params and locals

gcc/jit/ChangeLog:
* jit-recording.c (class gcc::jit::rvalue_usage_validator): New.
(gcc::jit::rvalue_usage_validator::rvalue_usage_validator): New
ctor.
(gcc::jit::rvalue_usage_validator::visit): New function.
(gcc::jit::recording::rvalue::verify_valid_within_stmt): New
function.
(gcc::jit::recording::rvalue::set_scope): New function.
(gcc::jit::recording::function::function): Call set_scope on each
param, issuing errors for any params that already have a function.
(gcc::jit::recording::block::add_eval): Return the new statement;
update the comment given that some error-checking now happens after
this returns.
(gcc::jit::recording::block::add_assignment): Likewise.
(gcc::jit::recording::block::add_assignment_op): Likewise.
(gcc::jit::recording::block::add_comment): Likewise.
(gcc::jit::recording::block::end_with_conditional): Likewise.
(gcc::jit::recording::block::end_with_jump): Likewise.
(gcc::jit::recording::block::end_with_return): Likewise.
(gcc::jit::recording::block::validate): Add a comment.
(gcc::jit::recording::unary_op::visit_children): New function.
(gcc::jit::recording::binary_op::visit_children): New function.
(gcc::jit::recording::comparison::visit_children): New function.
(gcc::jit::recording::cast::visit_children): New function.
(gcc::jit::recording::call::visit_children): New function.
(gcc::jit::recording::call_through_ptr::visit_children): New function.
(gcc::jit::recording::array_access::visit_children): New function.
(gcc::jit::recording::access_field_of_lvalue::visit_children): New
function.
(gcc::jit::recording::access_field_rvalue::visit_children): New
function.
(gcc::jit::recording::dereference_field_rvalue::visit_children):
New function.
(gcc::jit::recording::dereference_rvalue::visit_children): New
function.
(gcc::jit::recording::get_address_of_lvalue::visit_children): New
function.
* jit-recording.h: Within namespace gcc::jit::recording...
(class rvalue_visitor): New.
(rvalue::rvalue): Initialize m_scope.
(rvalue::get_loc): New accessor.
(rvalue::verify_valid_within_stmt): New function.
(rvalue::visit_children): New pure virtual function.
(rvalue::set_scope): New function.
(rvalue::get_scope): New function.
(rvalue::dyn_cast_param): New function.
(rvalue::m_scope): New field.
(param::visit_children): New empty function.
(param::dyn_cast_param): New function.
(function::get_loc): New function.
(block::add_eval): Return the new statement.
(block::add_assignment): Likewise.
(block::add_assignment_op): Likewise.
(block::add_comment): Likewise.
(block::end_with_conditional): Likewise.
(block::end_with_jump): Likewise.
(block::end_with_return): Likewise.
(global::visit_children): New function.
(memento_of_new_rvalue_from_const<HOST_TYPE>::visit_children):
New function.
(memento_of_new_string_literal::visit_children): New function.
(unary_op::visit_children): New function.
(binary_op::visit_children): New function.
(comparison::visit_children): New function.
(cast::visit_children): New function.
(call::visit_children): New function.
(call_through_ptr::visit_children): New function.
(array_access::visit_children): New function.
(access_field_of_lvalue::visit_children): New function.
(access_field_rvalue::visit_children): New function.
(dereference_field_rvalue::visit_children): New function.
(dereference_rvalue::visit_children): New function.
(get_address_of_lvalue::visit_children): New function.
(local::local): Call set_scope.
(local::visit_children): New function.
(statement::get_block): Make public.
* libgccjit.c (RETURN_VAL_IF_FAIL_PRINTF5): New macro.
(RETURN_NULL_IF_FAIL_PRINTF5): New macro.
(gcc_jit_context_new_function): Verify that each param has
not yet been used for creating another function.
(gcc_jit_block_add_eval): After creating the stmt, verify
that the rvalue expression tree is valid to use within it.
(gcc_jit_block_add_assignment): Likewise for the lvalue and
rvalue expression trees.
(gcc_jit_block_add_assignment_op): Likewise.
(gcc_jit_block_end_with_conditional): Likewise for the boolval
expression tree.
(gcc_jit_block_end_with_return): Likewise for the rvalue
expression tree.
(gcc_jit_block_end_with_void_return): Remove return of "void",
now that block::end_with_return is now non-void.

gcc/testsuite/ChangeLog:
* jit.dg/test-error-local-used-from-other-function.c: New test
case.
* jit.dg/test-error-param-reuse.c: New test case.
* jit.dg/test-error-param-sharing.c: New test case.
* jit.dg/test-error-param-used-from-other-function.c: New test
case.
* jit.dg/test-error-param-used-without-a-function.c: New test
case.

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

9 years ago2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
sandra [Mon, 12 Jan 2015 21:57:54 +0000 (21:57 +0000)]
2015-01-12  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi ([-Wsuggest-attribute=]): Don't use parentheses
after a funtion name just to indicate it is a function.
([-fsanitize-undefined-trap-on-error]): Likewise.
([-fdbg-cnt=]): Likewise.
([-mmemcpy]): Likewise.
([-mflush-func]): Likewise.
([-msynci]): Likewise.

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

9 years ago PR libstdc++/64553
redi [Mon, 12 Jan 2015 21:45:50 +0000 (21:45 +0000)]
PR libstdc++/64553
* src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.

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

9 years ago PR libstdc++/64560
redi [Mon, 12 Jan 2015 21:45:44 +0000 (21:45 +0000)]
PR libstdc++/64560
* src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
for RTTI support.

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

9 years ago2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
sandra [Mon, 12 Jan 2015 21:32:53 +0000 (21:32 +0000)]
2015-01-12  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi ([-Wbad-function-cast]): Rewrite to avoid confusing
example.

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

9 years ago PR tree-optimization/64563
jakub [Mon, 12 Jan 2015 20:48:09 +0000 (20:48 +0000)]
PR tree-optimization/64563
* tree-vrp.c (vrp_evaluate_conditional): Check for VR_RANGE
instead of != VR_VARYING.

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

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

9 years ago PR target/64513
jakub [Mon, 12 Jan 2015 20:45:38 +0000 (20:45 +0000)]
PR target/64513
* config/i386/i386.c (ix86_expand_prologue): Add
REG_FRAME_RELATED_EXPR to %rax and %r10 pushes.

* gcc.target/i386/pr64513.c: New test.

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

9 years ago PR tree-optimization/64454
jakub [Mon, 12 Jan 2015 20:44:32 +0000 (20:44 +0000)]
PR tree-optimization/64454
* tree-vrp.c (simplify_div_or_mod_using_ranges): Optimize
op0 % op1 into op0 if op0 is in range [-op1 + 1, op1 - 1]
for signed or [0, op1 - 1] for unsigned modulo.
(simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges
even if op1 does not satisfy integer_pow2p.

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

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

9 years ago PR testsuite/64028
jakub [Mon, 12 Jan 2015 20:30:53 +0000 (20:30 +0000)]
PR testsuite/64028
* gcc.dg/vect/no-section-anchors-vect-31.c: Add dg-add-options
bind_pic_locally.
* gcc.dg/vect/no-section-anchors-vect-34.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-36.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-64.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-65.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-68.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-69.c: Likewise.
* gcc.dg/vect/slp-25.c: Likewise.
* gcc.dg/vect/vect-109.c: Likewise.
* gcc.dg/vect/vect-13.c: Likewise.
* gcc.dg/vect/vect-17.c: Likewise.
* gcc.dg/vect/vect-18.c: Likewise.
* gcc.dg/vect/vect-19.c: Likewise.
* gcc.dg/vect/vect-20.c: Likewise.
* gcc.dg/vect/vect-21.c: Likewise.
* gcc.dg/vect/vect-22.c: Likewise.
* gcc.dg/vect/vect-27.c: Likewise.
* gcc.dg/vect/vect-29.c: Likewise.
* gcc.dg/vect/vect-2-big-array.c: Likewise.
* gcc.dg/vect/vect-2.c: Likewise.
* gcc.dg/vect/vect-3.c: Likewise.
* gcc.dg/vect/vect-4.c: Likewise.
* gcc.dg/vect/vect-5.c: Likewise.
* gcc.dg/vect/vect-72.c: Likewise.
* gcc.dg/vect/vect-73-big-array.c: Likewise.
* gcc.dg/vect/vect-73.c: Likewise.
* gcc.dg/vect/vect-77-global.c: Likewise.
* gcc.dg/vect/vect-78-global.c: Likewise.
* gcc.dg/vect/vect-7.c: Likewise.
* gcc.dg/vect/vect-86.c: Likewise.
* gcc.dg/vect/vect-align-1.c: Likewise.
* gcc.dg/vect/vect-align-3.c: Likewise.
* gcc.dg/vect/vect-all-big-array.c: Likewise.
* gcc.dg/vect/vect-all.c: Likewise.
* gcc.dg/vect/vect-multitypes-1.c: Likewise.
* gcc.dg/vect/vect-multitypes-4.c: Likewise.
* gcc.dg/vect/vect-peel-3.c: Likewise.
* gcc.dg/vect/vect-peel-4.c: Likewise.
* gcc.dg/vect/wrapv-vect-7.c: Likewise.

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

9 years ago PR other/64370
jakub [Mon, 12 Jan 2015 20:30:09 +0000 (20:30 +0000)]
PR other/64370
* sreal.c (sreal::to_double): Use ldexp instead of scalbnl.

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

9 years ago PR target/64461
law [Mon, 12 Jan 2015 20:19:57 +0000 (20:19 +0000)]
   PR target/64461
        * gcc.target/m68k/pr64461.c: New test.

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

9 years agojit-playback.c: fix missing fclose
dmalcolm [Mon, 12 Jan 2015 19:57:05 +0000 (19:57 +0000)]
jit-playback.c: fix missing fclose

gcc/jit/ChangeLog:
* jit-playback.c (gcc::jit::playback::context::read_dump_file):
Add missing fclose on error-handling path.

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

9 years agoAdd PR marker for last commit
law [Mon, 12 Jan 2015 19:10:40 +0000 (19:10 +0000)]
Add PR marker for last commit

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

9 years ago * config/m68k/m68k.md (truncsiqi2): Disable for TARGET_COLDFIRE.
law [Mon, 12 Jan 2015 19:09:12 +0000 (19:09 +0000)]
   * config/m68k/m68k.md (truncsiqi2): Disable for TARGET_COLDFIRE.
       (trunchiqi2, truncsihi2): Similarly.

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

9 years ago * config/h8300/h8300.c (Fpa): Use RTX_FRAME_RELATED_P directly
law [Mon, 12 Jan 2015 17:26:09 +0000 (17:26 +0000)]
   * config/h8300/h8300.c (Fpa): Use RTX_FRAME_RELATED_P directly
       rather than calling F.

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

9 years agojit: API change to gcc_jit_context_new_global
dmalcolm [Mon, 12 Jan 2015 17:14:02 +0000 (17:14 +0000)]
jit: API change to gcc_jit_context_new_global

gcc/jit/ChangeLog:
* docs/cp/topics/expressions.rst (Global variables): Add
enum gcc_jit_global_kind param to gccjit::context::new_global.
* docs/topics/expressions.rst (Global variables): Likewise.
Document the new enum.
* docs/topics/results.rst (Compilation results): Document
globals-handling.
* dummy-frontend.c (jit_langhook_write_globals): Call into the
playback context's write_global_decls_1 and write_global_decls_2
before and after calling symtab->finalize_compilation_unit ().
* jit-playback.c: Include "debug.h".
(gcc::jit::playback::context::new_global): Add "kind" param and
use it to set TREE_PUBLIC, TREE_STATIC and DECL_EXTERNAL on the
underlying VAR_DECL.  Call varpool_node::get_create on the
VAR_DECL, and add it to m_globals.
(gcc::jit::playback::context::write_global_decls_1): New function.
(gcc::jit::playback::context::write_global_decls_2): New function.
* jit-playback.h (gcc::jit::playback::context::context): Call
create on m_globals.
(gcc::jit::playback::context::new_global): Add "kind" param.
(gcc::jit::playback::context::write_global_decls_1): New function.
(gcc::jit::playback::context::write_global_decls_2): New function.
(gcc::jit::playback::context::m_globals): New field.
* jit-recording.c (gcc::jit::recording::context::context):
Initialize m_globals.
(gcc::jit::recording::context::new_global): Add param "kind".
Add the new global to m_globals.
(gcc::jit::recording::context::dump_to_file): Dump the globals.
(gcc::jit::recording::global::replay_into): Add field m_kind.
(gcc::jit::recording::global::write_to_dump): New override.
* jit-recording.h (gcc::jit::recording::context::new_global): Add
param "kind".
(gcc::jit::recording::context::m_globals): New field.
(gcc::jit::recording::global::global): Add param kind.
(gcc::jit::recording::global::write_to_dump): New override.
(gcc::jit::recording::global::m_kind): New field.
* jit-result.c (gcc::jit::result::get_global): New function.
* jit-result.h (gcc::jit::result::get_global): New function.
* libgccjit++.h (gccjit::context::new_global): Add "kind" param.
* libgccjit.c (gcc_jit_context_new_global): Likewise.
(gcc_jit_result_get_global): New API entrypoint.
* libgccjit.h (gcc_jit_result_get_global): New API entrypoint.
(enum gcc_jit_global_kind): New enum.
(gcc_jit_context_new_global): API change: add "kind" param.
* libgccjit.map (gcc_jit_result_get_global): New symbol.

gcc/testsuite/ChangeLog:
* jit.dg/test-array-as-pointer.c (create_code): Update call
to gcc_jit_context_new_global by setting "kind" to
GCC_JIT_GLOBAL_IMPORTED.
* jit.dg/test-error-array-as-pointer.c: Likewise.
* jit.dg/test-expressions.c (make_test_of_get_address): Likewise.
* jit.dg/test-fuzzer.c (make_random_global): Likewise, but
setting kind to GCC_JIT_GLOBAL_EXPORTED.
* jit.dg/test-using-global.c (the_global): Rename to...
(imported_global): ...this.
(create_code): Update to test the three kinds of global.
(verify_code): Likewise.

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

9 years agoAvoid undefined behavior in gcc.target/i386/pr64291-1.c
hjl [Mon, 12 Jan 2015 17:08:04 +0000 (17:08 +0000)]
Avoid undefined behavior in gcc.target/i386/pr64291-1.c

PR testsuite/64427
* gcc.target/i386/pr64291-1.c: Limit to lp64 tarrget.  Avoid
undefined behavior.
* gcc.target/i386/pr64291-2.c: Updated.

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

9 years ago2015-01-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Mon, 12 Jan 2015 16:47:11 +0000 (16:47 +0000)]
2015-01-12  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * tsan.c (instrument_expr): Use force_gimple_operand.
        Use may_be_nonaddressable_p instead of is_gimple_addressable.

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

9 years agoMerge libffi to upstream commit c82cc159426d8d4402375fa1ae3f045b9cf82e16
rth [Mon, 12 Jan 2015 16:19:59 +0000 (16:19 +0000)]
Merge libffi to upstream commit c82cc159426d8d4402375fa1ae3f045b9cf82e16

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

9 years ago2015-01-12 Richard Biener <rguenther@suse.de>
rguenth [Mon, 12 Jan 2015 15:37:07 +0000 (15:37 +0000)]
2015-01-12  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64530
* tree-loop-distribution.c (pg_add_dependence_edges): Shuffle
back dr1.

* gfortran.dg/pr64530.f90: New testcase.

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

9 years ago2015-01-12 Richard Biener <rguenther@suse.de>
rguenth [Mon, 12 Jan 2015 15:34:37 +0000 (15:34 +0000)]
2015-01-12  Richard Biener  <rguenther@suse.de>

PR middle-end/64357
* tree-cfg.c (gimple_can_merge_blocks_p): Protect simple
latches properly.

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

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

9 years ago[ARM] Use Cortex-A17 tuning parameters for Cortex-A12
ktkachov [Mon, 12 Jan 2015 15:14:33 +0000 (15:14 +0000)]
[ARM] Use Cortex-A17 tuning parameters for Cortex-A12

* config/arm/arm.c (arm_cortex_a12_tune): Update entries to match
Cortex-A17 tuning parameters.
* config/arm/arm-cores.def (cortex-a12): Schedule for cortex-a17.

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

9 years agoFix date in gcc/ChangeLog
ktkachov [Mon, 12 Jan 2015 15:09:37 +0000 (15:09 +0000)]
Fix date in gcc/ChangeLog

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

9 years ago[ARM] Implement TARGET_SCHED_MACRO_FUSION_PAIR_P
ktkachov [Mon, 12 Jan 2015 15:09:03 +0000 (15:09 +0000)]
[ARM] Implement TARGET_SCHED_MACRO_FUSION_PAIR_P

* config/arm/arm-protos.h (tune_params): Add fuseable_ops field.
* config/arm/arm.c (arm_macro_fusion_p): New function.
(arm_macro_fusion_pair_p): Likewise.
(TARGET_SCHED_MACRO_FUSION_P): Define.
(TARGET_SCHED_MACRO_FUSION_PAIR_P): Likewise.
(ARM_FUSE_NOTHING): Likewise.
(ARM_FUSE_MOVW_MOVT): Likewise.
(arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,
arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,
arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,
arm_cortex_a53_tune, arm_cortex_a57_tune, arm_cortex_a9_tune,
arm_cortex_a12_tune, arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune
arm_cortex_a5_tune): Specify fuseable_ops value.

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

9 years ago PR c++/64547
jason [Mon, 12 Jan 2015 14:15:07 +0000 (14:15 +0000)]
PR c++/64547
* constexpr.c (cxx_eval_call_expression): A call to a void
function doesn't need to return a value.

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

9 years agoAdd the missing ChangeLog entry
hjl [Mon, 12 Jan 2015 12:09:50 +0000 (12:09 +0000)]
Add the missing ChangeLog entry

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

9 years agoCorrect target selector in gcc.target/i386/nop-mcount.c
hjl [Mon, 12 Jan 2015 11:51:18 +0000 (11:51 +0000)]
Correct target selector in gcc.target/i386/nop-mcount.c

* gcc.target/i386/nop-mcount.c: Properly place {} in target
selector.

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

9 years agoUpdate Linux/x86-64 linker test for PIE with copy reloc
hjl [Mon, 12 Jan 2015 11:50:13 +0000 (11:50 +0000)]
Update Linux/x86-64 linker test for PIE with copy reloc

PR bootstrap/64561
* configure.ac (HAVE_LD_PIE_COPYRELOC): Update Linux/x86-64 linker
test for PIE with copy reloc.
* configure: Regenerated.

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

9 years ago[ARM][cleanup] Use R0_REGNUM and R1_REGNUM instead of 0 and 1 where appropriate
ktkachov [Mon, 12 Jan 2015 11:23:14 +0000 (11:23 +0000)]
[ARM][cleanup] Use R0_REGNUM and R1_REGNUM instead of 0 and 1 where appropriate

* config/arm/arm.c (arm_load_tp): Use R0_REGNUM instead of constant 0
in gen_rtx_REG.
(arm_tls_descseq_addr): Likewise.
(arm_gen_movmemqi): Likewise.
(arm_expand_epilogue_apcs_frame): Likewise.
(arm_expand_epilogue): Likewise.
(arm_expand_prologue): Likewise.  Use R1_REGNUM instead of constant 1
in gen_rtx_REG.

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

9 years ago2015-01-12 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
prathamesh3492 [Mon, 12 Jan 2015 10:48:07 +0000 (10:48 +0000)]
2015-01-12  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

testsuite/
* gcc.dg/plugin/ggcplug.c: Include gcc-plugin.h after coretypes.h.

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

9 years agoFix for PR64550.
marxin [Mon, 12 Jan 2015 10:39:25 +0000 (10:39 +0000)]
Fix for PR64550.

        PR ipa/64550
* ipa-icf-gimple.c (func_checker::compare_memory_operand): Compare
volatility for correct operands.
* gcc.dg/ipa/PR64550.c: New test.

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

9 years agoIPA ICF: handle correctly indirect_calls.
marxin [Mon, 12 Jan 2015 09:59:39 +0000 (09:59 +0000)]
IPA ICF: handle correctly indirect_calls.

* ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication
that a function is not leaf.
(sem_function::compare_polymorphic_p): Likewise.

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

9 years ago2015-01-12 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
prathamesh3492 [Mon, 12 Jan 2015 09:40:18 +0000 (09:40 +0000)]
2015-01-12  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

* config/visium/visium.c: Add includes hashtab.h, hash-set.h,
machmode.h, input.h, statistics.h, vec.h, double-int.h, real.h,
        fixed-value.h, alias.h, symtab.h, tree-core.h, wide-int.h, inchash.h,
        fold-const.h, tree-check.h.

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

9 years ago PR ipa/63967
hubicka [Mon, 12 Jan 2015 09:28:15 +0000 (09:28 +0000)]
PR ipa/63967
PR ipa/64425
* ipa-inline.c (compute_uninlined_call_time,
compute_inlined_call_time): Use counts for extra precision when
needed possible.
(big_speedup_p): Fix formating.
(RELATIVE_TIME_BENEFIT_RANGE): Remove.
(relative_time_benefit): Remove.
(edge_badness): Turn DECL_DISREGARD_INLINE_LIMITS into hint;
merge guessed and read profile paths.
(inline_small_functions): Count only !optimize_size functions into
initial size; be more lax about sanity check when profile is used;
be sure to update inlined function profile when profile is read.

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

9 years ago PR ipa/63470
hubicka [Mon, 12 Jan 2015 09:24:18 +0000 (09:24 +0000)]
PR ipa/63470
* ipa-inline-analysis.c (inline_edge_duplication_hook): Adjust
cost when edge becomes direct.
* ipa-prop.c (make_edge_direct): Do not adjust when speculation
is resolved or when introducing new speculation.
* testsuite/g++.dg/ipa/pr63470.C: New testcase.

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

9 years agoCorrect ChangeLog entry.
marxin [Mon, 12 Jan 2015 09:06:25 +0000 (09:06 +0000)]
Correct ChangeLog entry.

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

9 years agoPR ipa/64550
marxin [Mon, 12 Jan 2015 09:02:33 +0000 (09:02 +0000)]
PR ipa/64550

        PR ipa/64551
PR ipa/64552
* ipa-icf.c (sem_function::equals_private): Use '&&' instead of
'||' to fix typo issue.

* gcc/tree.h (target_opts_for_fn): Check NULL_TREE since it can
accept and return NULL.

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

9 years agocgraph_edge refactoring.
marxin [Mon, 12 Jan 2015 08:47:26 +0000 (08:47 +0000)]
cgraph_edge refactoring.

* cgraph.c (cgraph_edge::remove_callee): Move function to header
file for being inlined.
(cgraph_set_edge_callee): Delete.
(cgraph_edge::redirect_callee): Move function to header file
for being inlined.
(cgraph_edge::make_direct): Use new function.
(cgraph_edge::dump_edge_flags): New function created from
static dump_edge_flags function.
(cgraph_node::dump): Use new function.
(cgraph_edge::verify_count_and_frequency): New function created
from verify_edge_count_and_frequency.
(cgraph_edge::verify_corresponds_to_fndecl): New function created
from verify_edge_corresponds_to_fndecl.
(verify_edge_corresponds_to_fndecl): Delete.
(cgraph_node::verify_node): Use new function.
* cgraph.h (cgraph_edge::set_callee): New function.
(cgraph_edge::dump_edge_flags): Likewise.
(cgraph_edge::verify_corresponds_to_fndecl): Likewise.

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

9 years ago2015-01-12 Yury Gribov <y.gribov@samsung.com>
ygribov [Mon, 12 Jan 2015 08:40:16 +0000 (08:40 +0000)]
2015-01-12  Yury Gribov  <y.gribov@samsung.com>

* check_GNU_style.sh: Support patches coming from stdin.
Check that spaces are converted to tabs.
Make double-space-after-dot check more precice.

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

9 years agoRevert "ipa/63470 add testcase"
trippels [Mon, 12 Jan 2015 07:53:10 +0000 (07:53 +0000)]
Revert "ipa/63470 add testcase"

This reverts commit 8b200261cca87bab4408813e5fe2ebebb8c19e8b.

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

9 years agoipa/63470 add testcase
trippels [Mon, 12 Jan 2015 07:48:50 +0000 (07:48 +0000)]
ipa/63470 add testcase

2015-01-11  Markus Trippelsdorf  <markus@trippelsdorf.de>

PR ipa/63470
* ipa/pr63470.C: New testcase.

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

9 years ago * ipa-utils.c (estimate_function_body_sizes): Do not
hubicka [Mon, 12 Jan 2015 07:08:27 +0000 (07:08 +0000)]
* ipa-utils.c (estimate_function_body_sizes): Do not
free node params when called late with early=true.

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

9 years agoDaily bump.
gccadmin [Mon, 12 Jan 2015 00:18:18 +0000 (00:18 +0000)]
Daily bump.

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

9 years ago2015-01-11 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 11 Jan 2015 22:00:06 +0000 (22:00 +0000)]
2015-01-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63733
* interface.c (gfc_extend_expr): Look for type-bound operators before
non-typebound ones.

2015-01-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63733
* gfortran.dg/typebound_operator_20.f90: New.

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

9 years ago2015-01-11 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 11 Jan 2015 19:13:24 +0000 (19:13 +0000)]
2015-01-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58023
* resolve.c (resolve_fl_derived0): Set error flag if problems with the
interface of a procedure-pointer component were detected.

2015-01-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58023
* gfortran.dg/proc_ptr_comp_42.f90: New.

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