platform/upstream/linaro-gcc.git
8 years ago2015-08-26 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Wed, 26 Aug 2015 03:39:17 +0000 (03:39 +0000)]
2015-08-26  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* fold-const.c (fold_binary_loc) : Move Optimize
root(x)*root(y) as root(x*y) to match.pd.
Move Optimize expN(x)*expN(y) as expN(x+y) to match.pd.
Move Optimize pow(x,y)*pow(x,z) as pow(x,y+z) to match.pd.
Move Optimize a/root(b/c) into a*root(c/b) to match.pd.
Move Optimize x/expN(y) into x*expN(-y) to match.pd.

* match.pd (mult (root:s @0) (root:s @1)): New simplifier.
(mult (POW:s @0 @1) (POW:s @0 @2)) : New simplifier.
(mult (exps:s @0) (exps:s @1)) : New simplifier.
(rdiv @0 (root:s (rdiv:s @1 @2))) : New simplifier.
(rdiv @0 (exps:s @1)) : New simplifier.

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

8 years agoDaily bump.
gccadmin [Wed, 26 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * configure.ac: Only compile with -fPIC if the target
hp [Tue, 25 Aug 2015 23:32:06 +0000 (23:32 +0000)]
* configure.ac: Only compile with -fPIC if the target
supports it.
* configure: Regenerate.

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

8 years ago compiler: Disallow use of unary ^ on booleans.
ian [Tue, 25 Aug 2015 23:05:15 +0000 (23:05 +0000)]
compiler: Disallow use of unary ^ on booleans.

    Fixes golang/go#11529.

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

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

8 years agoFix build for targets not defining EXTRA_SPECS.
jsm28 [Tue, 25 Aug 2015 21:20:49 +0000 (21:20 +0000)]
Fix build for targets not defining EXTRA_SPECS.

* gcc.c (driver::finalize): Only assign to extra_specs if
[EXTRA_SPECS].

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

8 years ago compiler: Accept numeric literals with leading zeroes.
ian [Tue, 25 Aug 2015 21:17:47 +0000 (21:17 +0000)]
compiler: Accept numeric literals with leading zeroes.

    When a numeric literal with leading zeroes was seen in the parser, it
    would only be accepted if it were a valid hex or octal literal.  Any
    invalid numeric literal would be split up into multiple tokens: the
    valid hex/octal literal followed by the rest of the characters.
    Instead, when scanning a numeric literal with leading zeroes, always
    accept the number and give an appropriate error if the accepted number
    does not fit in the expected base.

    Fixes golang/go#11532, golang/go#11533.

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

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

8 years ago compiler: Allow string slices with start index == length.
ian [Tue, 25 Aug 2015 20:31:51 +0000 (20:31 +0000)]
compiler: Allow string slices with start index == length.

    Avoid an off-by-one error when checking the start index of a string
    slice by allowing the start index to be the string length instead
    of the string length - 1.

    Fixes golang/go#11522.

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

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

8 years ago PR middle-end/67330
mpolacek [Tue, 25 Aug 2015 20:28:59 +0000 (20:28 +0000)]
PR middle-end/67330
* varasm.c (declare_weak): Return after giving an error.

* c-common.c (handle_weak_attribute): Don't check whether the
visibility can be changed here.

* gcc.dg/weak/weak-18.c: New test.

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

8 years ago2015-08-24 François Dumont <fdumont@gcc.gnu.org>
fdumont [Tue, 25 Aug 2015 20:27:03 +0000 (20:27 +0000)]
2015-08-24  François Dumont  <fdumont@gcc.gnu.org>

PR libstdc++/60519
* include/debug/formatter.h (_Debug_msg_id::__msg_irreflexive_ordering):
New enum entry.
* include/debug/functions.h (_Irreflexive_checker): New.
(__is_irreflexive, __is_irreflexive_pred): New.
* include/debug/macros.h
(__glibcxx_check_irreflexive, __glibcxx_check_irreflexive_pred): New
macros.
(__glibcxx_check_irreflexive2, __glibcxx_check_irreflexive_pred2): New
macros limited to post-C++11 mode.
* include/debug/debug.h
(__glibcxx_requires_irreflexive, __glibcxx_requires_irreflexive_pred):
New macros, use latter.
(__glibcxx_requires_irreflexive2, __glibcxx_requires_irreflexive_pred2):
Likewise.
* include/bits/stl_algo.h
(partial_sort_copy): Add irreflexive debug check.
(partial_sort_copy): Likewise.
(lower_bound): Likewise.
(upper_bound): Likewise.
(equal_range): Likewise.
(binary_search): Likewise.
(inplace_merge): Likewise.
(includes): Likewise.
(next_permutation): Likewise.
(prev_permutation): Likewise.
(is_sorted_until): Likewise.
(minmax_element): Likewise.
(partial_sort): Likewise.
(nth_element): Likewise.
(sort): Likewise.
(merge): Likewise.
(stable_sort): Likewise.
(set_union): Likewise.
(set_intersection): Likewise.
(set_difference): Likewise.
(set_symmetric_difference): Likewise.
(min_element): Likewise.
(max_element): Likewise.
* include/bits/stl_algobase.h
(lower_bound): Likewise.
(lexicographical_compare): Likewise.
* include/bits/stl_heap.h
(push_heap): Likewise.
(pop_heap): Likewise.
(make_heap): Likewise.
(sort_heap): Likewise.
(is_heap_until): Likewise.
* testsuite/25_algorithms/lexicographical_compare/debug/
irreflexive_neg.cc: New.
* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: New.
* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
New.

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

8 years agoSupport embedding the driver in-process within libgccjit
dmalcolm [Tue, 25 Aug 2015 20:25:05 +0000 (20:25 +0000)]
Support embedding the driver in-process within libgccjit

gcc/ChangeLog:
* gcc-main.c (main): Add params to driver ctor.
* gcc.c (class env_manager): New.
(env): New global.
(env_manager::init): New.
(env_manager::get): New.
(env_manager::xput): New.
(env_manager::restore): New.
Poison getenv and putenv.
(DEFAULT_TARGET_SYSTEM_ROOT): New.
(target_system_root): Update initialization to use
DEFAULT_TARGET_SYSTEM_ROOT.
(struct spec_list): Add field "default_ptr".
(INIT_STATIC_SPEC): Initialize new field "default_ptr".
(init_spec): Likewise.
(set_spec): Clear field "default_ptr".
(read_specs): Free "spec" and "buffer".
(xputenv): Reimplement in terms of env_manager.
(process_command): Replace ::getenv calls with calls to the
env_manager singleton.
(process_brace_body): Free string in three places.
(driver::driver): New.
(driver::~driver): New.
(used_arg): Convert from a function to...
(class used_arg_t): ...this class, and...
(used_arg): ...this new global instance.
(used_arg_t::finalize): New function.
(getenv_spec_function): Add "const" to local "value".  Replace
::getenv call with call to the env_manager singleton.
(path_prefix_reset): New function.
(driver::finalize): New function.
* gcc.h (driver::driver): New.
(driver::~driver): New.
(driver::finalize): New.

gcc/jit/ChangeLog:
* docs/cp/topics/contexts.rst
(gccjit::context::set_bool_use_external_driver): New.
* docs/internals/test-hello-world.exe.log.txt: Update.
* docs/topics/compatibility.rst (LIBGCCJIT_ABI_5): New.
* docs/topics/contexts.rst
(gcc_jit_context_set_bool_use_external_driver): New.
* jit-common.h (enum inner_bool_option): Add
INNER_BOOL_OPTION_USE_EXTERNAL_DRIVER.
* jit-playback.c (gcc_driver_name): New global.
(gcc:jit::playback::context::invoke_driver): Split out second
half into...
(gcc::jit::playback::context::invoke_embedded_driver): ...this new
function, and...
(gcc::jit::playback::context::invoke_external_driver): ...this new
function.
* jit-playback.h
(gcc::jit::playback::context::get_inner_bool_option): New.
(gcc::jit::playback::context::invoke_embedded_driver): New.
(gcc::jit::playback::context::invoke_external_driver): New.
* jit-recording.c (inner_bool_option_reproducer_strings):
Add entry for INNER_BOOL_OPTION_USE_EXTERNAL_DRIVER.
* libgccjit++.h
(gccjit::context::set_bool_use_external_driver): New.
* libgccjit.c (gcc_jit_context_set_bool_use_external_driver): New.
* libgccjit.h (gcc_jit_context_set_bool_use_external_driver): New.
(LIBGCCJIT_HAVE_gcc_jit_context_set_bool_use_external_driver):
New.
* libgccjit.map (LIBGCCJIT_ABI_5): New.
* notes.txt: Show invocation of embedded copy of driver.
* docs/internals/test-hello-world.exe.log.txt: Update

gcc/testsuite/ChangeLog:
* jit.dg/test-error-pr63969-missing-driver.c: Add call to
gcc_jit_context_set_bool_use_external_driver.

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

8 years agoRevert my change to commit with PR reference again.
fdumont [Tue, 25 Aug 2015 20:22:47 +0000 (20:22 +0000)]
Revert my change to commit with PR reference again.

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

8 years ago * gcc.c-torture/execute/builtins/20010124-1.x: New.
nathan [Tue, 25 Aug 2015 20:06:13 +0000 (20:06 +0000)]
* gcc.c-torture/execute/builtins/20010124-1.x: New.

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

8 years ago * optabs.c (emit_indirect_jump): Don't try an emit a jump if the
nathan [Tue, 25 Aug 2015 19:43:02 +0000 (19:43 +0000)]
* optabs.c (emit_indirect_jump): Don't try an emit a jump if the
target doesn't have one.

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

8 years ago compiler: Don't crash on erroneous array types.
ian [Tue, 25 Aug 2015 19:42:26 +0000 (19:42 +0000)]
compiler: Don't crash on erroneous array types.

    Fixes golang/go#11546.

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

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

8 years agors6000: Fix PR67346
segher [Tue, 25 Aug 2015 19:35:15 +0000 (19:35 +0000)]
rs6000: Fix PR67346

"*ior<mode>_mask" is a define_insn_and_split, so it shouldn't use
can_create_pseudo in its instruction condition, because IRA can then
create such an instruction, and the condition becomes false before
the insn is split.  Use a scratch instead.

2015-08-25  Segher Boessenkool  <segher@kernel.crashing.org>

PR target/67346
* config/rs6000/rs6000.md (*ior<mode>_mask): Use a match_scratch.

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

8 years agors6000: Fix PR67344
segher [Tue, 25 Aug 2015 19:32:28 +0000 (19:32 +0000)]
rs6000: Fix PR67344

The "*and<mode>3_imm_dot_shifted" pattern is a define_insn_and_split,
like most "dot" patterns: if its output is not assigned cr0 but some
other cr reg, it splits to a non-dot insn and a compare.

Unfortunately that non-dot insn will clobber cr0 as well.  We could
add another clobber (with "=X,x"), but then that second alternative
is never useful; instead, just remove that second alternative.

2015-08-25  Segher Boessenkool  <segher@kernel.crashing.org>

PR target/67344
* config/rs6000/rs6000.md (*and<mode>3_imm_dot_shifted): Change to
a define_insn, remove second alternative.

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

8 years ago * io/unit.c (get_internal_unit): Make default sign mode unspecified.
fxcoudert [Tue, 25 Aug 2015 16:27:43 +0000 (16:27 +0000)]
* io/unit.c (get_internal_unit): Make default sign mode unspecified.
(init_units): Make default sign mode unspecified.

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

8 years ago * gcc.dg/20001117-1.c: Needs return_address.
nathan [Tue, 25 Aug 2015 16:22:42 +0000 (16:22 +0000)]
* gcc.dg/20001117-1.c: Needs return_address.
* gcc.dg/20020415-1.c: Needs alloca.
* gcc.dg/graphite/id-pr44676.c: Needs profiling.
* gcc.dg/graphite/pr60979.c: Needs nonlocal_goto
* gcc.dg/pr63186.c: Needs label_values.
* gcc.dg/torture/pr33848.c: Likwise.

* lib/target-supports.exp (check_effective_target_fopenacc,
check_effective_target_fopenmp): Disable for nvptx.
* gcc.dg/graphite/run-id-pr47653.c: Disable for nvptx.
* gcc.dg/stack-usage-1.c: Likewise.
* gcc.dg/stack-usage-2.c: Likewise.
* gcc.dg/unused-5.c: Likewise.
* gcc.dg/unwind-1.c: Likewise.

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

8 years ago * libgfortran.h (check_buffered): Remove unused prototype.
fxcoudert [Tue, 25 Aug 2015 15:26:02 +0000 (15:26 +0000)]
* libgfortran.h (check_buffered): Remove unused prototype.

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

8 years agoExpand comment on struct switchstr.
jsm28 [Tue, 25 Aug 2015 14:53:24 +0000 (14:53 +0000)]
Expand comment on struct switchstr.

This patch, extracted from a larger change on gomp-4_0-branch, expands
a comment documenting struct switchstr in gcc.c.

2015-08-25  Thomas Schwinge  <thomas@codesourcery.com>
    Joseph Myers  <joseph@codesourcery.com>

* gcc.c (struct switchstr): Expand comment.

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

8 years ago * config/nvptx/nvptx.c (nvptx_write_function_decl): Reformat.
nathan [Tue, 25 Aug 2015 14:06:39 +0000 (14:06 +0000)]
* config/nvptx/nvptx.c (nvptx_write_function_decl): Reformat.
(nvptx_reorg_subreg): Pass insn pattern to asm_operands.

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

8 years ago2015-08-25 Richard Biener <rguenther@suse.de>
rguenth [Tue, 25 Aug 2015 10:29:09 +0000 (10:29 +0000)]
2015-08-25  Richard Biener  <rguenther@suse.de>

PR middle-end/67306
* genmatch.c (expr::gen_transform): Verify the result of
builtin_decl_implicit.
(dt_simplify::gen_1): Likewise.

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

8 years ago2015-08-25 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Tue, 25 Aug 2015 08:50:53 +0000 (08:50 +0000)]
2015-08-25  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    * config/arm/constraints.md: Also list Cs and US ARM-specific
    constraints as used.

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

8 years agogcc.dg/Wno-frame-address.c: Skip for ARM.
chrbr [Tue, 25 Aug 2015 07:49:54 +0000 (07:49 +0000)]
gcc.dg/Wno-frame-address.c: Skip for ARM.
g++.dg/Wno-frame-address.C: Ditto.

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

8 years ago compiler: Type check params in sink function decl.
ian [Tue, 25 Aug 2015 03:48:35 +0000 (03:48 +0000)]
compiler: Type check params in sink function decl.

    When a function is declared and named with the blank identifier, only
    the syntax is checked.  This patch modifies the parser to add a dummy
    node for each function declaration with a blank identifier name that
    will be type checked like any function declaration.

    Fixes golang/go#11535.

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

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

8 years agoDaily bump.
gccadmin [Tue, 25 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoPR target/66609
kkojima [Mon, 24 Aug 2015 23:23:00 +0000 (23:23 +0000)]
PR target/66609
* [SH] Take into account weak symbols for pc relative calls/sibcalls.

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

8 years agoSpecify the type of scop->region
spop [Mon, 24 Aug 2015 20:53:51 +0000 (20:53 +0000)]
Specify the type of scop->region

Changing the type of scop::region from void* to sese, as this is
the only type assigned to scop::region for now. No functional changes intended.
Passes regtest and bootstrap.

gcc/ChangeLog:

2015-08-17  Aditya Kumar  <aditya.k7@samsung.com>

        * graphite-poly.c: Change type of region from void* to sese.
        * graphite-poly.h (struct scop): Changing the type of scop::region
from void* to sese. Change accessor macro accordingly.
        * graphite-sese-to-poly.c (extract_affine_chrec): Use accessor macro.

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

8 years agoConstrain only on INTEGER_TYPE
spop [Mon, 24 Aug 2015 20:50:12 +0000 (20:50 +0000)]
Constrain only on INTEGER_TYPE

Passes bootstrap, no regressions.

With this patch gcc bootstraps with graphite.
make BOOT_CFLAGS="-g -O2 -fgraphite-identity -floop-interchange -floop-block"

gcc/ChangeLog:

2015-08-12  Aditya Kumar  <hiraditya@msn.com>

        * graphite-scop-detection.c (stmt_simple_for_scop_p):
Constrain only on INTEGER_TYPE

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

8 years ago2015-08-24 François Dumont <fdumont@gcc.gnu.org>
fdumont [Mon, 24 Aug 2015 20:21:57 +0000 (20:21 +0000)]
2015-08-24  François Dumont  <fdumont@gcc.gnu.org>

* include/debug/formatter.h (_Debug_msg_id::__msg_irreflexive_ordering):
New enum entry.
* include/debug/functions.h (_Irreflexive_checker): New.
(__is_irreflexive, __is_irreflexive_pred): New.
* include/debug/macros.h
(__glibcxx_check_irreflexive, __glibcxx_check_irreflexive_pred): New
macros.
(__glibcxx_check_irreflexive2, __glibcxx_check_irreflexive_pred2): New
macros limited to post-C++11 mode.
* include/debug/debug.h
(__glibcxx_requires_irreflexive, __glibcxx_requires_irreflexive_pred):
New macros, use latter.
(__glibcxx_requires_irreflexive2, __glibcxx_requires_irreflexive_pred2):
Likewise.
* include/bits/stl_algo.h
(partial_sort_copy): Add irreflexive debug check.
(partial_sort_copy): Likewise.
(lower_bound): Likewise.
(upper_bound): Likewise.
(equal_range): Likewise.
(binary_search): Likewise.
(inplace_merge): Likewise.
(includes): Likewise.
(next_permutation): Likewise.
(prev_permutation): Likewise.
(is_sorted_until): Likewise.
(minmax_element): Likewise.
(partial_sort): Likewise.
(nth_element): Likewise.
(sort): Likewise.
(merge): Likewise.
(stable_sort): Likewise.
(set_union): Likewise.
(set_intersection): Likewise.
(set_difference): Likewise.
(set_symmetric_difference): Likewise.
(min_element): Likewise.
(max_element): Likewise.
* include/bits/stl_algobase.h
(lower_bound): Likewise.
(lexicographical_compare): Likewise.
* include/bits/stl_heap.h
(push_heap): Likewise.
(pop_heap): Likewise.
(make_heap): Likewise.
(sort_heap): Likewise.
(is_heap_until): Likewise.
* testsuite/25_algorithms/lexicographical_compare/debug/
irreflexive_neg.cc: New.
* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: New.
* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
New.

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

8 years ago * configure.ac: Set have_mmap to no on spu-*-* targets.
uweigand [Mon, 24 Aug 2015 18:48:28 +0000 (18:48 +0000)]
* configure.ac: Set have_mmap to no on spu-*-* targets.
* configure: Regenerate.

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

8 years ago[gcc]
meissner [Mon, 24 Aug 2015 18:43:02 +0000 (18:43 +0000)]
[gcc]
2015-08-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/67211
* config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Set
-mefficient-unaligned-vsx on ISA 2.7.

* config/rs6000/rs6000.opt (-mefficient-unaligned-vsx): Convert
option to a masked option.

* config/rs6000/rs6000.c (rs6000_option_override_internal): Rework
logic for -mefficient-unaligned-vsx so that it is set via an arch
ISA option, instead of being set if -mtune=power8 is set. Move
-mefficient-unaligned-vsx and -mallow-movmisalign handling to be
near other default option handling.

[gcc/testsuite]
2015-08-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/67211
* g++.dg/pr67211.C: New test.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 17:59:51 +0000 (17:59 +0000)]
gcc/
* genflags.c (gen_macro): Delete.
(gen_proto): Don't create GEN.*CALL.* macros.
* gensupport.h (get_file_location): Declare.
* gensupport.c (rtx_locs): New variable.
(read_md_rtx): Record rtx locations.
(get_file_location): New function.
* target-insns.def (call, call_pop, call_value, call_value_pop)
(sibcall, sibcall_value): New patterns.
* gentarget-def.c (parse_argument): New function.
(def_target_insn): Use it.  Handle optional operands.  Raise an
error if an .md pattern has the wrong number of operands for the
pattern name.  Remove the names of unused operands from the prototype.
* builtins.c (expand_builtin_apply): Use targetm functions
instead of HAVE_call_value and GEN_CALL_VALUE.
* calls.c (emit_call_1): Likewise.  Remove support for sibcall_pop
and sibcall_value_pop.
* config/aarch64/aarch64.md (untyped_call): Use gen_call instead
of GEN_CALL.
* config/alpha/alpha.md (untyped_call): Likewise.
* config/iq2000/iq2000.md (untyped_call): Likewise.
* config/m68k/m68k.md (untyped_call): Likewise.
* config/mips/mips.md (untyped_call): Likewise.
* config/pa/pa.md (untyped_call): Likewise.
* config/rs6000/rs6000.md (untyped_call): Likewise.
* config/sparc/sparc.md (untyped_call): Likewise.
* config/tilegx/tilegx.md (untyped_call): Likewise.
* config/tilepro/tilepro.md (untyped_call): Likewise.
* config/visium/visium.md (untyped_call): Likewise.
* config/alpha/alpha.c (alpha_emit_xfloating_libcall): Use
gen_call_value instead of GEN_CALL_VALUE.
* config/arm/arm.md (untyped_call): Likewise.
* config/cr16/cr16.c (cr16_function_arg): Remove reference to
GEN_CALL.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 17:59:31 +0000 (17:59 +0000)]
gcc/
* ifcvt.c (HAVE_incscc, HAVE_decscc, HAVE_cbranchcc4): Delete.
(have_cbranchcc4): New variable.
(cc_in_cond, noce_emit_cmove, noce_get_alt_condition)
(noce_get_condition): Use it instead of HAVE_cbranchcc4.
(if_convert): Initialize have_cbranchcc4.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 17:59:19 +0000 (17:59 +0000)]
gcc/
* builtins.c (expand_cmpstrn): Rename to...
(expand_cmpstrn_or_cmpmem): ...this.
(expand_builtin_strcmp, expand_builtin_strncmp): Update accordingly.
(expand_builtin_memcmp): Use optabs instead of HAVE_cmpmem/gen_cmpmem.
Remove mode argument.
(expand_builtin): Update accordingly.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 17:59:07 +0000 (17:59 +0000)]
gcc/
* builtins.c (expand_cmpstr, expand_cmpstrn): New functions.
(expand_builtin_strcmp, expand_builtin_strncmp): Use them.  Remove
references to HAVE_cmpstr{,n}si and CODE_FOR_cmpstr{,n}si.
* config/m32c/blkmov.md (cmpstrsi): Fix predicates of operands 1 and 2.
Add predicates for operands 0 and 3.
* config/rx/rx.md (cmpstrnsi): Remove force_operand for the length
operand.
* config/sh/sh.md (cmpstrnsi): Change the length predicate from
immediate_operand to nonmemory_operand.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 17:58:42 +0000 (17:58 +0000)]
gcc/
* df-scan.c (df_insn_info_init_fields): New function, split out
from...
(df_insn_create_insn_record): ...here.
(df_insn_info_free_fields): New function, split out from...
(df_insn_info_delete): ...here.
(df_insn_rescan): Use the new functions instead of freeing and
reallocating the df_insn_info.

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

8 years ago * doc/install.texi (Binaries): Remove links no longer valid.
fxcoudert [Mon, 24 Aug 2015 17:52:34 +0000 (17:52 +0000)]
* doc/install.texi (Binaries): Remove links no longer valid.

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

8 years ago libgomp/
nathan [Mon, 24 Aug 2015 17:10:06 +0000 (17:10 +0000)]
libgomp/
* libgomp.map: Add 4.0.2 version.
* target.c (offload_image_descr): Add version field.
(gomp_load_image_to_device): Add version argument.  Adjust plugin
call.  Improve load mismatch diagnostic.
(gomp_unload_image_from_device): Add version argument.  Adjust plugin
call.
(GOMP_offload_regster): Make stub function, move bulk to ...
(GOMP_offload_register_ver): ... here.  Process version argument.
(GOMP_offload_unregister): Make stub function, move bulk to ...
(GOMP_offload_unregister_ver): ... here.  Process version argument.
(gomp_init_device): Process version field.
(gomp_unload_device): Process version field.
(gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
macros.  Check plugin version.
* libgomp.h (gomp_device_descr): Add version function field.  Adjust
loader and unloader types.
* oacc-host.c: Include gomp-constants.h.
(host_version): New.
(host_load_image, host_unload_image): Adjust.
(host_dispatch): Add host_version.
* plugin/plugin-nvptx.c: Include gomp-constants.h.
(GOMP_OFFLOAD_version): New.
(GOMP_OFFLOAD_load_image): Add version arg and check it.
(GOMP_OFFLOAD_unload_image): Likewise.
* plugin/plugin-host.c: Include gomp-constants.h.
(GOMP_OFFLOAD_version): New.
(GOMP_OFFLOAD_load_image): Add version arg.
(GOMP_OFFLOAD_unload_image): Likewise.

liboffloadmic/
* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_version): New.
(GOMP_OFFLOAD_load_image): Add version arg and check it.
(GOMP_OFFLOAD_unload_image): Likewise.

include/
* gomp-constants.h (GOMP_VERSION, GOMP_VERSION_NVIDIA_PTX,
GOMP_VERSION_INTEL_MIC): New.
(GOMP_VERSION_PACK, GOMP_VERSION_LIB, GOMP_VERSION_DEV): New.

gcc/
* config/nvptx/mkoffload.c (process): Replace
GOMP_offload_{,un}register with GOMP_offload_{,un}register_ver.

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

8 years ago PR libfortran/57496
fxcoudert [Mon, 24 Aug 2015 16:31:47 +0000 (16:31 +0000)]
PR libfortran/57496
* io/write_float.def: Use built-in type-generic functions defined
by libgfortran.h for isfinite, isnan, and signbit.

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

8 years ago PR fortran/62536
fxcoudert [Mon, 24 Aug 2015 16:29:59 +0000 (16:29 +0000)]
PR fortran/62536
PR fortran/66175

* decl.c (gfc_match_end): Clean up nested BLOCKs.
* parse.c (parse_block_construct): Deal gracefully with cleaned-up
BLOCKs.

* gfortran.dg/block_end_error_1.f90: New test.
* gfortran.dg/blocks_nested_incomplete_1.f90: New test.

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

8 years ago PR tree-optimization/67284
mpolacek [Mon, 24 Aug 2015 16:06:02 +0000 (16:06 +0000)]
PR tree-optimization/67284
* go-gcc.cc (Gcc_backend::define_builtin): Add NORETURN_P parameter.
Set TREE_THIS_VOLATILE.
(Gcc_backend::Gcc_backend): Mark __builtin_trap as a noreturn call.
Pass false to the rest of define_builtin calls.

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

8 years agoAdd a testcase for PR target/66821
hjl [Mon, 24 Aug 2015 15:31:02 +0000 (15:31 +0000)]
Add a testcase for PR target/66821

PR target/66821
* gcc.target/i386/pr66821.c: New test.

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

8 years agoUpdate MOVE_RATIO cost for IA MCU
hjl [Mon, 24 Aug 2015 15:24:44 +0000 (15:24 +0000)]
Update MOVE_RATIO cost for IA MCU

This patch updates MOVE_RATIO cost for IA MCU from 6 to 9 so that we
can unroll the loop completely for DOM with -mtune=iamcu.

gcc/

PR target/67329
* config/i386/i386.c (iamcu_cost): Set MOVE_RATIO cost to 9.

gcc/testsuite/

PR target/67329
* gcc.target/i386/pr67329.c: New test.

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

8 years agoAdd libgomp.oacc-c-c++-common/vector-loop.c
vries [Mon, 24 Aug 2015 15:01:44 +0000 (15:01 +0000)]
Add libgomp.oacc-c-c++-common/vector-loop.c

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

PR tree-optimization/65468
* testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.

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

8 years ago[PATCH][ARM]Tighten the conditions for arm_movw, arm_movt.
renlin [Mon, 24 Aug 2015 14:59:58 +0000 (14:59 +0000)]
[PATCH][ARM]Tighten the conditions for arm_movw, arm_movt.

gcc/

2015-08-24  Renlin Li  <renlin.li@arm.com>

* config/arm/arm-protos.h (arm_valid_symbolic_address_p): Declare.
* config/arm/arm.c (arm_valid_symbolic_address_p): Define.
* config/arm/arm.md (arm_movt): Use arm_valid_symbolic_address_p.
* config/arm/constraints.md ("j"): Add check for high code.

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

8 years ago * gcc/testsuite/gcc.dg/pr49551.c: Needs -fdata-sections.
nathan [Mon, 24 Aug 2015 14:06:12 +0000 (14:06 +0000)]
* gcc/testsuite/gcc.dg/pr49551.c: Needs -fdata-sections.

* gcc/testsuite/gcc.dg/pr64935-2.c: Needs scheduling.

* gcc/testsuite/gcc.dg/torture/pr66101.c: Needs nonlocal goto.
* gcc/testsuite/gcc.dg/torture/pr63738.c: Likewise.
* gcc/testsuite/gcc.dg/torture/pr64728.c: Likewise.
* gcc/testsuite/gcc.dg/pr63748.c: Likewise.
* gcc/testsuite/gcc.dg/20020312-2.c: Likewise.

* gcc/testsuite/gcc.dg/torture/pr66123.c: Needs label_values.

* gcc/testsuite/gcc.dg/torture/pr41261.c: Needs profiling.
* gcc/testsuite/gcc.dg/pr26570.c: Likewise.
* gcc/testsuite/gcc.dg/pr61776.c: Likewise.
* gcc/testsuite/gcc.dg/tree-ssa/ssa-lim-11.c: Likewise.
* gcc/testsuite/gcc.dg/gomp/pr34610.c: Likewise.
* gcc/testsuite/gcc.dg/pr54121.c: Likewise.
* gcc/testsuite/gcc.dg/20050325-1.c: Likewise.
* gcc/testsuite/gcc.dg/pr66899.c: Likewise.
* gcc/testsuite/gcc.dg/pr48770.c: Likewise.
* gcc/testsuite/gcc.dg/pr24225.c: Likewise.

* gcc/testsuite/gcc.dg/pr27531-1.c: Needs io.
* gcc/testsuite/gcc.dg/pr44606.c: Likewise.

* gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c: Needs weak.

* gcc/testsuite/gcc.dg/pr51990.c: Needs alloca.

* gcc/testsuite/gcc.misc-tests/options.exp: Disable profiling
check for nvptx.

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

8 years ago PR libstdc++/65049
redi [Mon, 24 Aug 2015 13:43:54 +0000 (13:43 +0000)]
PR libstdc++/65049
* include/bits/char_traits.h (char_traits<char>::compare,
char_traits<char>::find, char_traits<char>::move,
char_traits<char>::copy, char_traits<char>::assign): Check for zero
length.
(char_traits<wchar_t>::compare, char_traits<wchar_t>::find,
char_traits<wchar_t>::move, char_traits<wchar_t>::copy,
char_traits<wchar_t>::assign): Likewise.
(char_traits<char16_t>::move, char_traits<char16_t>::copy): Likewise.
(char_traits<char32_t>::move, char_traits<char32_t>::copy): Likewise.
* include/ext/pod_char_traits.h (char_traits<character<>>::move,
char_traits<character<>>::copy): Likewise.
* testsuite/21_strings/char_traits/requirements/char/65049.cc: New.
* testsuite/21_strings/char_traits/requirements/char16_t/65049.cc:
New.
* testsuite/21_strings/char_traits/requirements/char32_t/65049.cc:
New.
* testsuite/21_strings/char_traits/requirements/wchar_t/65049.cc:
New.

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

8 years ago PR libstdc++/67309
redi [Mon, 24 Aug 2015 13:43:36 +0000 (13:43 +0000)]
PR libstdc++/67309
* include/bits/random.tcc
(poisson_distribution::param_type::_M_initialize): Use max<double>.
(binomial_distribution::param_type::_M_initialize): Likewise.
* testsuite/17_intro/headers/c++200x/67309.cc: New.
* testsuite/17_intro/headers/c++200x/all_attributes.cc: Remove
redundant header.

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

8 years ago * plugin/Makefile.am (include_src_dir): Set.
nathan [Mon, 24 Aug 2015 13:20:31 +0000 (13:20 +0000)]
* plugin/Makefile.am (include_src_dir): Set.
[PLUGIN_HOST] (libgomp_plugin_intelmic_la_CPPFLAGS): Use it.
* plugin/Makefile.in: Regenerate.
* plugin/libgomp-plugin-intelmic.cpp: Include "gomp-constants.h".

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

8 years agoOptimize expand_omp_for_static_chunk for chunk_size one
vries [Mon, 24 Aug 2015 13:14:17 +0000 (13:14 +0000)]
Optimize expand_omp_for_static_chunk for chunk_size one

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

PR tree-optimization/65468
* omp-low.c (expand_omp_for_static_chunk): Remove inner loop if
chunk_size is one.

* gcc.dg/gomp/static-chunk-size-one.c: New test.

* testsuite/libgomp.c/static-chunk-size-one.c: New test.

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

8 years ago * config/nvptx/nvptx.c (walk_args_for_param): Revert previous
nathan [Mon, 24 Aug 2015 12:43:54 +0000 (12:43 +0000)]
* config/nvptx/nvptx.c (walk_args_for_param): Revert previous
change to nvptx_type_from_mode call. Use arg_promotion for both
split and non-split args.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 11:13:16 +0000 (11:13 +0000)]
gcc/
* target-insns.def (movstr): New pattern.
* builtins.c (HAVE_movstr, CODE_FOR_movstr): Delete.
(expand_movstr): Use targetm rather than HAVE_movstr/
CODE_FOR_movstr.

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

8 years agogcc/
rsandifo [Mon, 24 Aug 2015 11:12:32 +0000 (11:12 +0000)]
gcc/
* config/microblaze/microblaze.c (microblaze_classify_unspec): Fix
cast syntax.

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

8 years ago PR libgomp/66761
vondele [Mon, 24 Aug 2015 11:01:25 +0000 (11:01 +0000)]
    PR libgomp/66761
        PR libgomp/67303
        * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
        (gomp_iter_guided_next): Idem.
        * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
        (gomp_iter_ull_guided_next): Idem.
        * config/linux/wait.h (do_spin): Idem.

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

8 years agoMissing parts of fixes for in-tree libiconv
palves [Mon, 24 Aug 2015 10:24:52 +0000 (10:24 +0000)]
Missing parts of fixes for in-tree libiconv

(The previous iconv-related commit missed the config/iconv.m4 change.)

Original description:

This is the second in a series of patches to make a build with an
in-tree GNU libiconv work as designed.

Currently GDB is the only toolchain component which actually uses an
in-tree libiconv.  This patch modifies the common AM_ICONV to use an
in-tree libiconv when present and not already provided by libc.
(GDB's workaround uses an in-tree libiconv even when libc provides
iconv(3); I'm not sure when or why that would be desirable.)

config/ChangeLog:
2015-08-24  Yaakov Selkowitz  <yselkowi@redhat.com>

* iconv.m4 (AM_ICONV_LINK): Use in-tree libiconv when present.
---
 config/ChangeLog   |  4 +++
 config/iconv.m4    | 47 +++++++++++++++++++++------
 4 files changed, 112 insertions(+), 36 deletions(-)

diff --git a/config/iconv.m4 b/config/iconv.m4
index c5f3579..5f9304a 100644
--- a/config/iconv.m4
+++ b/config/iconv.m4
@@ -7,6 +7,7 @@ dnl that contains a configuration script generated by Autoconf, under
 dnl the same distribution terms as the rest of that program.

 dnl From Bruno Haible.
+dnl with modifications to support building with in-tree libiconv

 AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
 [
@@ -28,24 +29,51 @@ AC_DEFUN([AM_ICONV_LINK],
   dnl accordingly.
   AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])

-  dnl Add $INCICONV to CPPFLAGS before performing the following checks,
-  dnl because if the user has installed libiconv and not disabled its use
-  dnl via --without-libiconv-prefix, he wants to use it. The first
-  dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
-  am_save_CPPFLAGS="$CPPFLAGS"
-  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
-
   AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
     am_cv_func_iconv="no, consider installing GNU libiconv"
     am_cv_lib_iconv=no
+    dnl Add $INCICONV to CPPFLAGS before performing the first check,
+    dnl because if the user has installed libiconv and not disabled its use
+    dnl via --without-libiconv-prefix, he wants to use it. This first
+    dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
+    am_save_CPPFLAGS="$CPPFLAGS"
+    CPPFLAGS="$CPPFLAGS $INCICONV"
     AC_TRY_LINK([#include <stdlib.h>
 #include <iconv.h>],
       [iconv_t cd = iconv_open("","");
        iconv(cd,NULL,NULL,NULL,NULL);
        iconv_close(cd);],
       am_cv_func_iconv=yes)
+    CPPFLAGS="$am_save_CPPFLAGS"
+
+    if test "$am_cv_func_iconv" != yes && test -d ../libiconv; then
+      for _libs in .libs _libs; do
+        am_save_CPPFLAGS="$CPPFLAGS"
+        am_save_LIBS="$LIBS"
+        CPPFLAGS="$CPPFLAGS -I../libiconv/include"
+        LIBS="$LIBS ../libiconv/lib/$_libs/libiconv.a"
+        AC_TRY_LINK([#include <stdlib.h>
+#include <iconv.h>],
+          [iconv_t cd = iconv_open("","");
+           iconv(cd,NULL,NULL,NULL,NULL);
+           iconv_close(cd);],
+          INCICONV="-I../libiconv/include"
+          LIBICONV='${top_builddir}'/../libiconv/lib/$_libs/libiconv.a
+          LTLIBICONV='${top_builddir}'/../libiconv/lib/libiconv.la
+          am_cv_lib_iconv=yes
+          am_cv_func_iconv=yes)
+        CPPFLAGS="$am_save_CPPFLAGS"
+        LIBS="$am_save_LIBS"
+        if test "$am_cv_func_iconv" = "yes"; then
+          break
+        fi
+      done
+    fi
+
     if test "$am_cv_func_iconv" != yes; then
+      am_save_CPPFLAGS="$CPPFLAGS"
       am_save_LIBS="$LIBS"
+      CPPFLAGS="$LIBS $INCICONV"
       LIBS="$LIBS $LIBICONV"
       AC_TRY_LINK([#include <stdlib.h>
 #include <iconv.h>],
@@ -54,6 +82,7 @@ AC_DEFUN([AM_ICONV_LINK],
          iconv_close(cd);],
         am_cv_lib_iconv=yes
         am_cv_func_iconv=yes)
+      CPPFLAGS="$am_save_CPPFLAGS"
       LIBS="$am_save_LIBS"
     fi
   ])
@@ -61,12 +90,10 @@ AC_DEFUN([AM_ICONV_LINK],
     AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
   fi
   if test "$am_cv_lib_iconv" = yes; then
+    AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
     AC_MSG_CHECKING([how to link with libiconv])
     AC_MSG_RESULT([$LIBICONV])
   else
-    dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
-    dnl either.
-    CPPFLAGS="$am_save_CPPFLAGS"
     LIBICONV=
     LTLIBICONV=
   fi
--
1.9.3

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

8 years agoRemove the hack for AARCH64_EXTRA_TUNE_ALL.
pinskia [Mon, 24 Aug 2015 09:56:48 +0000 (09:56 +0000)]
Remove the hack for AARCH64_EXTRA_TUNE_ALL.

2015-08-24  Andrew Pinski  <apinski@cavium.com>

        * config/aarch64/aarch64-tuning-flags.def: Remove all index to
        AARCH64_EXTRA_TUNING_OPTION.
        * config/aarch64/aarch64-protos.h (aarch64_extra_tuning_flags_index): New enum.
        (aarch64_extra_tuning_flags): Base the shifted value on the index instead
        of the argument to AARCH64_EXTRA_TUNING_OPTION.
        * config/aarch64/aarch64.c: Remove the last argument to
        AARCH64_EXTRA_TUNING_OPTION.

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

8 years agoDaily bump.
gccadmin [Mon, 24 Aug 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * ChangeLog: fix previous entry.
fxcoudert [Sun, 23 Aug 2015 21:56:46 +0000 (21:56 +0000)]
* ChangeLog: fix previous entry.

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

8 years ago PR libfortran/54572
fxcoudert [Sun, 23 Aug 2015 21:50:30 +0000 (21:50 +0000)]
PR libfortran/54572

* Makefile.def: Make libgfortran depend on libbacktrace.
* Makefile.in: Regenerate.

* config-lang.in: Add libbacktrace to target_libs.

* Makefile.am (libgfortran_la_LDFLAGS): Link in libbacktrace.
(AM_CPPFLAGS): Add libbacktrace directories to include paths.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* configure.ac: Remove checks for strtok_r, wait, execve, pipe,
and dup2. Remove call to GCC_CHECK_UNWIND_GETIPINFO.
* libgfortran.h (full_exe_path, find_addr2line, backtrace): Remove
prototypes.
(show_backtrace): Add prototype.
* runtime/backtrace.c: Rework file entirely.
* runtime/compile_options.c (backtrace_handler): Rename backtrace
to show_backtrace.
(maybe_find_addr2line): Remove function.
(set_options): Remove call to maybe_find_addr2line.
* runtime/error.c (sys_abort): Rename backtrace to show_backtrace.
* runtime/main.c (store_exe_path): Empty function body.
(full_exe_path, gfstrtok_r, find_addr2line): Remove functions.
(cleanup): Don't free removed variables.
* runtime/minimal.c (full_exe_path): Remove function.
(set_args): Don't set exe_path.

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

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

8 years ago PR libfortran/62296
fxcoudert [Sun, 23 Aug 2015 21:24:49 +0000 (21:24 +0000)]
PR libfortran/62296

* intrinsics/execute_command_line.c (EXEC_INVALIDCOMMAND): New
error code.
(cmdmsg_values): New error message.
(set_cmdstat): Rework runtime error.
(execute_command_line): Handle invalid command line error status.

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

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

8 years ago * config/nvptx/nvptx.c (walk_args_for_param): Promote arg reg
nathan [Sun, 23 Aug 2015 14:37:09 +0000 (14:37 +0000)]
* config/nvptx/nvptx.c (walk_args_for_param): Promote arg reg
decls.
(nvptx_declare_function_name): Insert formatting tabs for
consistency.

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

8 years agoDon't create superfluous parm in expand_omp_taskreg
vries [Sun, 23 Aug 2015 09:19:32 +0000 (09:19 +0000)]
Don't create superfluous parm in expand_omp_taskreg

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

* omp-low.c (expand_omp_taskreg): If in ssa, set rhs of parcopy stmt to
parm_decl, rather than generating a dummy default def in cfun.
* tree-cfg.c (replace_ssa_name): Assume no default defs.  Make sure
ssa_name from cfun and child_fn do not share a stmt as def stmt.
(move_stmt_op): Handle PARM_DECl.
(gather_ssa_name_hash_map_from): New function.
(move_sese_region_to_fn): Add default defs for function params, and add
them to vars_map.  Release copied ssa names.
* tree-cfg.h (gather_ssa_name_hash_map_from): Declare.

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

8 years agoRename vect_no_int_max to vect_no_int_min_max
vries [Sun, 23 Aug 2015 08:35:41 +0000 (08:35 +0000)]
Rename vect_no_int_max to vect_no_int_min_max

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

* gcc.dg/vect/trapv-vect-reduc-4.c: Use vect_no_int_min_max.
* gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c: Rename
vect_no_int_max to vect_no_int_min_max.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-reduc-1char.c: Same.
* gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c: Same.
* gcc.dg/vect/no-scevccp-noreassoc-slp-reduc-7.c: Same.
* gcc.dg/vect/slp-reduc-4.c: Same.
* gcc.dg/vect/slp-reduc-5.c: Same.
* gcc.dg/vect/vect-125.c: Same.
* gcc.dg/vect/vect-13.c: Same.
* gcc.dg/vect/vect-double-reduc-3.c: Same.
* gcc.dg/vect/vect-reduc-1.c: Same.
* gcc.dg/vect/vect-reduc-1char-big-array.c: Same.
* gcc.dg/vect/vect-reduc-1char.c:Same.
* gcc.dg/vect/vect-reduc-1short.c: Same.
* gcc.dg/vect/vect-reduc-2.c: Same.
* gcc.dg/vect/wrapv-vect-reduc-2char.c: Same.
* gcc.dg/vect/wrapv-vect-reduc-2short.c: Same.
* lib/target-supports.exp: Same.

* doc/sourcebuild.texi: Rename vect_no_int_max with
vect_no_int_min_max.  Update description.

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

8 years agoDaily bump.
gccadmin [Sun, 23 Aug 2015 00:16:20 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago/cp
paolo [Sat, 22 Aug 2015 17:44:46 +0000 (17:44 +0000)]
/cp
2015-08-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/63693
* pt.c (resolve_typename_type): Use CLASSTYPE_PRIMARY_TEMPLATE_TYPE
only on class types.

/testsuite
2015-08-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/63693
* g++.dg/cpp0x/decltype63.C: New.

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

8 years ago * c-c++-common/Wsizeof-pointer-memaccess1.c: Require alloca.
nathan [Sat, 22 Aug 2015 15:09:03 +0000 (15:09 +0000)]
* c-c++-common/Wsizeof-pointer-memaccess1.c: Require alloca.
* c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise.
* c-c++-common/Wunused-var-8.c: Likewise.
* c-c++-common/gomp/pr61486-2.c: Likewise.
* c-c++-common/Wunused-var-6.c: Likewise.
* c-c++-common/goacc/reduction-1.c: Likewise.
* c-c++-common/goacc/reduction-2.c: Likewise.
* c-c++-common/goacc/reduction-3.c: Likewise.
* c-c++-common/goacc/reduction-4.c: Likewise.
* gcc.dg/builtins-64.c: Likewise.
* gcc.dg/pr59523.c: Likewise.
* gcc.dg/tree-ssa/20080530.c: Likewise.
* gcc.dg/tree-ssa/pr23848-2.c: Likewise.
* gcc.dg/tree-ssa/pr23848-4.c: Likewise.
* gcc.dg/tree-ssa/pr23848-1.c: Likewise.
* gcc.dg/tree-ssa/pr23848-3.c: Likewise.
* gcc.dg/tree-ssa/20030807-2.c: Likewise.
* gcc.dg/pr59011.c: Likewise.
* gcc.dg/uninit-9.c: Likewise.
* gcc.dg/pr61561.c: Likewise.
* gcc.dg/vla-4.c: Likewise.
* gcc.dg/20101010-1.c: Likewise.
* gcc.dg/pr49120.c: Likewise.
* gcc.dg/20030331-2.c: Likewise.
* gcc.dg/compat/struct-by-value-22_main.c: Likewise.
* gcc.dg/pr25682.c: Likewise.
* gcc.dg/guality/guality.c: Likewise.
* gcc.dg/pr27301.c: Likewise.
* gcc.dg/uninit-9-O0.c: Likewise.
* gcc.dg/fold-alloca-1.c: Likewise.
* gcc.dg/pr41470.c: Likewise.
* gcc.dg/pr51491-2.c: Likewise.
* gcc.dg/winline-7.c: Likewise.
* gcc.dg/vla-2.c: Likewise.
* gcc.dg/pr50764.c: Likewise.
* gcc.dg/c99-vla-1.c: Likewise.
* gcc.dg/pr33238.c: Likewise.
* gcc.dg/c99-const-expr-13.c: Likewise.
* gcc.dg/builtin-return-1.c: Likewise.
* gcc.dg/vla-3.c: Likewise.
* gcc.dg/20020415-1.c: Likewise.
* gcc.dg/Wsizeof-pointer-memaccess1.c: Likewise.
* gcc.dg/shrink-wrap-alloca.c: Likewise.
* gcc.dg/Wstrict-aliasing-bogus-vla-1.c: Likewise.
* gcc.dg/torture/calleesave-sse.c: Likewise.
* gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise.
* gcc.dg/gomp/vla-2.c: Likewise.
* gcc.dg/gomp/vla-3.c: Likewise.
* gcc.dg/gomp/vla-4.c: Likewise.
* gcc.dg/gomp/pr30494.c: Likewise.
* gcc.dg/gomp/vla-5.c: Likewise.
* gcc.dg/pr51990-2.c: Likewise.
* gcc.dg/vla-22.c: Likewise.

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

8 years agoFix column location in c_lex_with_flags errors
manu [Sat, 22 Aug 2015 12:44:51 +0000 (12:44 +0000)]
Fix column location in c_lex_with_flags errors

gcc/testsuite/ChangeLog:

2015-08-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* gcc.dg/cpp/multiline-2.c: Add column numbers.
* gcc.dg/dollar.c: Likewise.
* gcc.dg/pragma-message.c: Likewise.
* g++.dg/cpp1y/digit-sep-neg.C: Likewise.
* c-c++-common/raw-string-14.c: Likewise.

gcc/c-family/ChangeLog:

2015-08-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c-lex.c (c_lex_with_flags): Use explicit locations.

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

8 years agoRemove index from AARCH64_FUSION_PAIR
pinskia [Sat, 22 Aug 2015 06:49:32 +0000 (06:49 +0000)]
Remove index from AARCH64_FUSION_PAIR

    Instead of doing an explict index in aarch64-fusion-pairs.def, we
    should have an enum which does the index instead.  This allows
    you to add/remove them without worrying about the order being
    correct and having holes or worry about merge conficts.

    OK? Bootstrapped and tested on aarch64-linux-gnu with no regressions.

    ChangeLog:
    * aarch64-fusion-pairs.def: Remove all index to AARCH64_FUSION_PAIR.
    * config/aarch64/aarch64-protos.h (aarch64_fusion_pairs_index): New enum.
    (aarch64_fusion_pairs): Base the shifted value on the index instead
    Rewrite AARCH64_FUSE_ALL to be based on the end index.
    of the argument to AARCH64_FUSION_PAIR.
    * config/aarch64/aarch64.c: Remove the last argument to AARCH64_FUSION_PAIR.

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

8 years agoRefactor dominance.c: define dom_info as C++ class
miyuki [Sat, 22 Aug 2015 03:20:13 +0000 (03:20 +0000)]
Refactor dominance.c: define dom_info as C++ class

gcc/
* dominance.c (new_zero_array): Define.
(dom_info): Redefine as class with proper encapsulation.
(dom_info::m_n_basic_blocks, m_reverse, m_start_block, m_end_block):
Add new members.
(dom_info::dom_info, ~dom_info): Define.  Use new/delete for memory
allocations/deallocations.  Pass function as parameter (instead of
using cfun).
(dom_info::get_idom): Define accessor method.
(dom_info::calc_dfs_tree_nonrec, calc_dfs_tree, compress, eval,
link_roots, calc_idoms): Redefine as class members.  Do not use cfun.
(calculate_dominance_info): Adjust to use dom_info class.
(verify_dominators): Likewise.

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

8 years agoDaily bump.
gccadmin [Sat, 22 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoAdjust g++.old-deja/g++.jason/overload.C
ppalka [Fri, 21 Aug 2015 20:25:47 +0000 (20:25 +0000)]
Adjust g++.old-deja/g++.jason/overload.C

gcc/testsuite/ChangeLog:

* g++.old-deja/g++.jason/overload.C: Adjust to preserve original
property that instantiation here is a compile-time error.

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

8 years agofix -fdump-unnumbered-links
aoliva [Fri, 21 Aug 2015 20:03:33 +0000 (20:03 +0000)]
fix -fdump-unnumbered-links

for  gcc/ChangeLog

* print-rtl.c (print_rtx): Check the correct range for
flag_dump_unnumbered_links to behave as documented.

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

8 years agofix sched compare regression
aoliva [Fri, 21 Aug 2015 20:03:14 +0000 (20:03 +0000)]
fix sched compare regression

for  gcc/ChangeLog

PR rtl-optimization/64164
PR rtl-optimization/67227
* alias.c (memrefs_conflict_p): Handle VALUEs in PLUS better.
(nonoverlapping_memrefs_p): Test offsets and sizes when given
identical gimple_reg exprs.

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

8 years ago * config/nvptx/nvptx.md (allocate_stack): Emit sorry during
nathan [Fri, 21 Aug 2015 19:34:34 +0000 (19:34 +0000)]
* config/nvptx/nvptx.md (allocate_stack): Emit sorry during
expansion.
* config/nvptx/nvptx.c (nvptx_declare_function_name): Look at
crtl->stack_alignment_needed to determine alignment.
(nvptx_get_drap_rtx): New.
(TARGET_GET_DRAP_RTX): Override.
* config/nvptx/nvptx.h (MAX_STACK_ALIGNMENT): Set.

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

8 years ago PR c++/67240
jason [Fri, 21 Aug 2015 18:33:07 +0000 (18:33 +0000)]
PR c++/67240
* constraint.cc (satisfy_implicit_conversion_constraint): Also
check for NULL_TREE.

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

8 years ago * config.build: Remove case for m68000-hp-hpux* | m68k-hp-hpux*.
fxcoudert [Fri, 21 Aug 2015 17:44:47 +0000 (17:44 +0000)]
* config.build: Remove case for m68000-hp-hpux* | m68k-hp-hpux*.

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

8 years ago2015-08-21 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 21 Aug 2015 17:39:48 +0000 (17:39 +0000)]
2015-08-21  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (grokvardecl): Simplify the latter.

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

8 years ago * configure.ac: Remove uwin* cases.
fxcoudert [Fri, 21 Aug 2015 17:38:01 +0000 (17:38 +0000)]
* configure.ac: Remove uwin* cases.
* config.build: Remove cases for i370-*-opened*, i370-*-mvs*,
i[34567]86-*-sco3.2v5*, i[34567]86-sequent-ptx4*,
i[34567]86-sequent-sysv4*, i[34567]86-*-sysv4*,
i[34567]86-*-udk*, i[34567]86-*-uwin*, i386-*-vsta.
* config.host: Remove cases for i370-*-opened*, i370-*-mvs*,
i[34567]86-*-uwin*, powerpc-*-beos*.

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

8 years agogcc/
rsandifo [Fri, 21 Aug 2015 17:23:10 +0000 (17:23 +0000)]
gcc/
* gencodes.c (gencodes): Print the comma for the preceding
enum value rather than the current one.  Use aliased enum values
rather than #defines for compiled-out patterns.
(main): Update accordingly.  Replace LAST_INSN_CODE with
NUM_INSN_CODES.
* lra.c (insn_code_data): Update accordingly.
(finish_insn_code_data_once, get_static_insn_data): Likewise.
* recog.h (target_recog): Likewise.
(preprocess_insn_constraints): Change parameter to unsigned int.
* recog.c (preprocess_insn_constraints): Likewise.
(recog_init): Replace LAST_INSN_CODE with NUM_INSN_CODES.
* tree-vect-stmts.c (vectorizable_operation): Simplify.

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

8 years agoFix PR61657 (undefined behavior in loop-iv.c)
trippels [Fri, 21 Aug 2015 16:44:30 +0000 (16:44 +0000)]
Fix PR61657 (undefined behavior in loop-iv.c)

bootstrap-ubsan shows:
 loop-iv.c:2626:14: runtime error: signed integer overflow: 9223372036854775806 - -9223372036854775808 cannot be represented in type 'long int'

Fixed by moving the variables in question from signed to unsigned.

PR rtl-optimization/61657
* loop-iv.c (iv_number_of_iterations): Declare up and down as
unsigned. Remove superflous uint64_t cast.

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

8 years ago/cp
paolo [Fri, 21 Aug 2015 14:44:33 +0000 (14:44 +0000)]
/cp
2015-08-21  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (grokvardecl): Complete check added for c++/67065.

/testsuite
2015-08-21  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/other/pr67065.C: Extend.

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

8 years ago * value-prof.c (interesting_stringop_to_profile_p): Removed FNDECL argument
fyang [Fri, 21 Aug 2015 14:34:52 +0000 (14:34 +0000)]
* value-prof.c (interesting_stringop_to_profile_p): Removed FNDECL argument
and get builtin function code directly from CALL.
(gimple_stringop_fixed_value): Modified accordingly.
(gimple_stringops_transform, gimple_stringops_values_to_profile): Modified
accordingly and only accept BUILT_IN_NORMAL string operations.

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

8 years agonvptx cleanup
nathan [Fri, 21 Aug 2015 13:13:42 +0000 (13:13 +0000)]
nvptx cleanup
* lib/target-supports.exp (check_effective_target_freestanding): nvptx
is freestanding.
(check_effective_target_global_constructor): New.
* lib/gcc.exp (gcc_target_compile): Set SIGNAL_SUPPRESS if needed.
* gcc.dg/debug/debug.exp: Skip  for nvptx.
* gcc.dg/debug/dwarf2/dwarf2.exp: Likewise.

* gcc.c-torture/execute/981019-1.c: Ptx assembler bug.
* gcc.c-torture/compile/limits-externdecl.c: Likewise.
* gcc.c-torture/compile/pr33855.c: Likewise.
* gcc.c-torture/compile/920723-1.c: Likewise.
* gcc.c-torture/compile/pr35468.c: Ptx assembler objects to
writing a const.
* gcc.c-torture/compile/mangle-1.c: Ptx assembler objects to . in
label.
* gcc.c-torture/compile/callind.c: Ptx assembler objects to label
'call'.

* gcc.c-torture/execute/ieee/mul-subnormal-single-1.c: Make main
prototype normal.
* gcc.c-torture/execute/switch-1.c: Likewise.

* gcc.c-torture/execute/pr34456.c: Require not freestanding
* gcc.c-torture/execute/printf-1.c: Likewise.
* gcc.c-torture/execute/printf-chk-1.c: Likewise.
* gcc.c-torture/execute/fprintf-1.c: Likewise.
* gcc.c-torture/execute/fprintf-chk-1.c: Likewise.
* gcc.c-torture/execute/vprintf-1.c: Likewise.
* gcc.c-torture/execute/vprintf-chk-1.c: Likewise.
* gcc.c-torture/execute/vfprintf-1.c: Likewise.
* gcc.c-torture/execute/vfprintf-chk-1.c: Likewise.
* gcc.c-torture/execute/builtins/fputs.x: Likewise.
* gcc.c-torture/execute/gofast.c: Likewise.
* gcc.c-torture/execute/complex-6.c: Likewise.

* gcc.c-torture/execute/builtins/memcpy-chk.x: Require nonlocal goto.
* gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
* gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
* gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/stpncpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/pr23484-chk.x: Likewise.
* gcc.dg/setjmp-1.c: Likewise.
* gcc.dg/cleanup-5.c: Likewise.
* gcc.dg/cleanup-12.c: Likewise.
* gcc.dg/cleanup-13.c: Likewise.

* gcc.dg/constructor-1.c: Require global ctor.

* gcc.dg/fork-instrumentation.c: Require profiling.
* gcc.dg/20030107-1.c: Likewise.
* gcc.dg/20030702-1.c: Likewise.

* gcc.dg/cpp/lexstrng.c: Avoid IO unless debugging.
* gcc.dg/cpp/paste2.c: Likewise.
* gcc.dg/cpp/strify3.c: Likewise.
* gcc.dg/cpp/strify4.c: Likewise.
* gcc.dg/cpp/lexnum.c: Likewise.
* gcc.dg/cpp/digraphs.c: Likewise.
* gcc.dg/cpp/macro1.c: Likewise.

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

8 years agogcc/ChangeLog
uweigand [Fri, 21 Aug 2015 12:51:20 +0000 (12:51 +0000)]
gcc/ChangeLog
2015-08-21  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* config/s390/s390-builtins.def: Fix value range of vec_load_bndry.

gcc/testsuite/ChangeLog
2015-08-21  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* gcc.target/s390/zvector/vec-load_bndry-1.c: New test.

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

8 years ago2015-08-21 Dominik Vogt <vogt@linux.vnet.ibm.com>
uweigand [Fri, 21 Aug 2015 12:48:08 +0000 (12:48 +0000)]
2015-08-21  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* lib/gcc-dg.exp: Add extra options for db-final to the command line
only once.

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

8 years ago2015-08-21 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
naveenh [Fri, 21 Aug 2015 10:46:09 +0000 (10:46 +0000)]
2015-08-21  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* fold-const.c (fold_binary_loc) : Move sqrt(x)*sqrt(x) as x
to match.pd.
Move Optimize pow(x,y)*pow(z,y) as pow(x*z,y)to match.pd.
Move Optimize tan(x)*cos(x) as sin(x) to match.pd.
Move Optimize x*pow(x,c) as pow(x,c+1) to match.pd.
Move Optimize pow(x,c)*x as pow(x,c+1) to match.pd.
Move Optimize sin(x)/cos(x) as tan(x) to match.pd.
Move Optimize cos(x)/sin(x) as 1.0/tan(x) to match.pd.
Move Optimize sin(x)/tan(x) as cos(x) to match.pd.
Move Optimize tan(x)/sin(x) as 1.0/cos(x) to match.pd.
Move Optimize pow(x,c)/x as pow(x,c-1) to match.pd.
Move Optimize x/pow(y,z) into x*pow(y,-z) to match.pd.

* match.pd (SIN ) : New Operator.
(TAN) : New Operator.
(mult (SQRT@1 @0) @1) : New simplifier.
(mult (POW:s @0 @1) (POW:s @2 @1)) : New simplifier.
(mult:c (TAN:s @0) (COS:s @0)) : New simplifier.
(mult:c (TAN:s @0) (COS:s @0)) : New simplifier.
(rdiv (SIN:s @0) (COS:s @0)) : New simplifier.
(rdiv (COS:s @0) (SIN:s @0)) : New simplifier.
(rdiv (SIN:s @0) (TAN:s @0)) : New simplifier.
(rdiv (TAN:s @0) (SIN:s @0)) : New simplifier.
(rdiv (POW:s @0 REAL_CST@1) @0) : New simplifier.
(rdiv @0 (SQRT:s (rdiv:s @1 @2))) : New simplifier.
(rdiv @0 (POW:s @1 @2)) : New simplifier.

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

8 years ago * tree-ssa-loop-niter.c (simplify_using_initial_conditions): Break
amker [Fri, 21 Aug 2015 10:09:48 +0000 (10:09 +0000)]
* tree-ssa-loop-niter.c (simplify_using_initial_conditions): Break
loop if EXPR is simplified to const value.

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

8 years ago2015-08-21 Yury Gribov <y.gribov@samsung.com>
ygribov [Fri, 21 Aug 2015 08:42:57 +0000 (08:42 +0000)]
2015-08-21  Yury Gribov  <y.gribov@samsung.com>

* sanitizer.def (BUILT_IN_UBSAN_HANDLE_NONNULL_ARG,
BUILT_IN_UBSAN_HANDLE_NONNULL_ARG): Fix builtin types.

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

8 years ago2015-08-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 21 Aug 2015 08:06:20 +0000 (08:06 +0000)]
2015-08-21  Richard Biener  <rguenther@suse.de>

PR middle-end/67285
* gimple-fold.c (replace_stmt_with_simplification): Assert
seq is empty when replacing a call with itself but different
arguments.
* gimple-match-head.c (maybe_push_res_to_seq): When pushing
a call require that it is const.

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

8 years agoadd default for CONSTANT_ALIGNMENT
tbsaunde [Fri, 21 Aug 2015 01:15:33 +0000 (01:15 +0000)]
add default for CONSTANT_ALIGNMENT

gcc/ChangeLog:

2015-08-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h (CONSTANT_ALIGNMENT): New macro definition.
* builtins.c (get_object_alignment_2): Adjust.
* varasm.c (align_variable): Likewise.
(get_variable_align): Likewise.
(build_constant_desc): Likewise.
(force_const_mem): Likewise.
* doc/tm.texi.in: Likewise.
* doc/tm.texi: Regenerate.

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

8 years agoalways define HAVE_peephole2
tbsaunde [Fri, 21 Aug 2015 01:15:15 +0000 (01:15 +0000)]
always define HAVE_peephole2

gcc/ChangeLog:

2015-08-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* genconfig.c (main): Always define HAVE_cc0.
* recog.c (rest_of_handle_peephole2): Adjust.

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

8 years agoremove another #if for HAVE_cc0
tbsaunde [Fri, 21 Aug 2015 01:14:59 +0000 (01:14 +0000)]
remove another #if for HAVE_cc0

gcc/ChangeLog:

2015-08-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* reorg.c (relax_delay_slots): Don't use #if to check value of
HAVE_cc0.

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

8 years agoalways define HAVE_conditional_execution
tbsaunde [Fri, 21 Aug 2015 01:14:46 +0000 (01:14 +0000)]
always define HAVE_conditional_execution

gcc/ChangeLog:

2015-08-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* genconfig.c (main): Always define HAVE_CONDITIONAL_EXECUTION.
* targhooks.c (default_have_conditional_execution): Adjust.

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

8 years agoDaily bump.
gccadmin [Fri, 21 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * name-lookup.c (hidden_name_p): Handle OVERLOAD.
jason [Thu, 20 Aug 2015 20:55:15 +0000 (20:55 +0000)]
* name-lookup.c (hidden_name_p): Handle OVERLOAD.

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

8 years agolibstdc++/67294 Don't run timed mutex tests on Darwin
redi [Thu, 20 Aug 2015 20:36:19 +0000 (20:36 +0000)]
libstdc++/67294 Don't run timed mutex tests on Darwin

PR libstdc++/67294
* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Do not run
on Darwin.
* testsuite/30_threads/timed_mutex/unlock/2.cc: Likewise.

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

8 years ago * include/experimental/any (__any_caster): Define at namespace scope
redi [Thu, 20 Aug 2015 20:19:58 +0000 (20:19 +0000)]
* include/experimental/any (__any_caster): Define at namespace scope
so the name is visible to name lookup.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

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

8 years agogcc/
rsandifo [Thu, 20 Aug 2015 19:04:34 +0000 (19:04 +0000)]
gcc/
* rtl.h (rtvec_all_equal_p): Declare.
(const_vec_duplicate_p, unwrap_const_vec_duplicate): New functions.
* rtl.c (rtvec_all_equal_p): New function.
* expmed.c (expand_mult): Use unwrap_const_vec_duplicate.
* config/aarch64/aarch64.c (aarch64_vect_float_const_representable_p)
(aarch64_simd_dup_constant): Use const_vec_duplicate_p.
* config/arm/arm.c (neon_vdup_constant): Likewise.
* config/s390/s390.c (s390_contiguous_bitmask_vector_p): Likewise.
* config/tilegx/constraints.md (W, Y): Likewise.
* config/tilepro/constraints.md (W, Y): Likewise.
* config/spu/spu.c (spu_legitimate_constant_p): Likewise.
(classify_immediate): Use unwrap_const_vec_duplicate.
* config/tilepro/predicates.md (reg_or_v4s8bit_operand): Likewise.
(reg_or_v2s8bit_operand): Likewise.
* config/tilegx/predicates.md (reg_or_v8s8bit_operand): Likewise.
(reg_or_v4s8bit_operand): Likewise.

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

8 years agolibitm: Don't redefine __always_inline in local_atomic.
torvald [Thu, 20 Aug 2015 17:55:24 +0000 (17:55 +0000)]
libitm: Don't redefine __always_inline in local_atomic.

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