gcc.git
9 years agocompiler: Disallow rune literals with '\X'.
Ian Lance Taylor [Fri, 24 Jul 2015 18:28:40 +0000 (18:28 +0000)]
compiler: Disallow rune literals with '\X'.

    http://golang.org/ref/spec#Rune_literals states that rune literals
    encoded as hex bytes must begin with lowercase '\x'.
    Fixes golang/go#11575.

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

From-SVN: r226184

9 years agore PR other/66259 (Combined gcc and binutils build from git-master fails, with gas...
Jeff Law [Fri, 24 Jul 2015 18:20:44 +0000 (12:20 -0600)]
re PR other/66259 (Combined gcc and binutils build from git-master fails, with gas/as-new not existing)

PR other/66259
* config-ml.in: Reflects renaming of configure.in to configure.ac
* configure: Likewise
* configure.ac: Likewise

boehm-gc/

PR other/66259
* Makefile.direct: Reflects renaming of configure.in to configure.ac
* Makefile.dist: Likewise
* version.h: Likewise
* doc/README: Likewise

config/

PR other/66259
* gettext.m4: Reflects renaming of configure.in to configure.ac
* po.m4: Likewise
* stdint.m4: Likewise
* tcl.m4: Likewise

gcc/

PR other/66259
* acinclude.m4: Reflects renaming of configure.in to configure.ac
* configure: Likewise
* configure.ac: Likewise
* doc/install.texi: Likewise
* doc/tm.texi: Likewise
* doc/tm.texi.in: Likewise

gcc/ada/

PR other/66259
* prj-nmsc.adb: Reflects renaming of configure.in to configure.ac
* gcc-interface/Makefile.in: Likewise

intl/

PR other/66259
* configure: Reflects renaming of configure.in to configure.ac

libjava/

PR other/66259
* configure: Reflects renaming of configure.in to configure.ac

libjava/classpath

PR other/66259
* INSTALL: Reflects renaming of configure.in to configure.ac
* ltconfig: Likewise
* missing: Likewise
* m4/ac_prog_javac.m4: Likewise
* m4/ac_prog/javac_works.m4: Likewise
* resource/META-INF/mimetypes.default: Likewise

libjava/libltdl

PR other/66259
* THREADS: Reflects renaming of configure.in to configure.ac

liboffloadmic/

PR other/66259
* configure: Reflects renaming of configure.in to configure.ac

From-SVN: r226183

9 years agocompiler: Don't make temporaries for constant expressions.
Ian Lance Taylor [Fri, 24 Jul 2015 17:22:03 +0000 (17:22 +0000)]
compiler: Don't make temporaries for constant expressions.

    Fixes golang/go#11039.

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

From-SVN: r226180

9 years ago[obvious] Use std::swap instead of manually swapping in a few more places
Kyrylo Tkachov [Fri, 24 Jul 2015 16:46:04 +0000 (16:46 +0000)]
[obvious] Use std::swap instead of manually swapping in a few more places

* alias.c (nonoverlapping_memrefs_p): Use std::swap instead of
manually swapping values.
* cse.c (fold_rtx): Likewise.
* lra-eliminations.c (form_sum): Likewise.

From-SVN: r226179

9 years ago* nl.po: Update.
Joseph Myers [Fri, 24 Jul 2015 16:44:23 +0000 (17:44 +0100)]
* nl.po: Update.

From-SVN: r226177

9 years agobe.po, [...]: Update.
Joseph Myers [Fri, 24 Jul 2015 16:41:44 +0000 (17:41 +0100)]
be.po, [...]: Update.

* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po,
zh_TW.po: Update.
* uk.po: New file.

From-SVN: r226175

9 years ago* include/bits/atomic_futex.h [_GLIBCXX_HAVE_LINUX_FUTEX]
Jonathan Wakely [Fri, 24 Jul 2015 16:30:04 +0000 (17:30 +0100)]
* include/bits/atomic_futex.h [_GLIBCXX_HAVE_LINUX_FUTEX]
(_M_load_and_test_until): Whitespace.
(_M_load_and_test): Value-initialize the unused durations.
(_M_load_when_equal): Add missing return value.

From-SVN: r226174

9 years agore PR target/64003 (valgrind complains about get_attr_length_nobnd in insn-attrtab...
Uros Bizjak [Fri, 24 Jul 2015 16:25:56 +0000 (18:25 +0200)]
re PR target/64003 (valgrind complains about get_attr_length_nobnd in insn-attrtab.c from i386.md)

PR target/64003
* config/i386/i386.h (ADJUST_INSN_LENGTH): New define.
* config/i386/i386.md (maybe_prefix_bnd): New attribute.
(*jcc_1, *jcc_2, jump, simple_return_internal)
(simple_return_pop_internal): Set attribute maybe_prefix_bnd.
Set length_nobnd attribute instead of length attribute.
(indirect_jump, *tablejump_1): Set attribute maybe_prefix_bnd.
(length_nobnd): Remove attribute.
(length): Remove length_nobnd processing.

From-SVN: r226173

9 years agogimplify.c (omp_default_clause): New function.
Nathan Sidwell [Fri, 24 Jul 2015 16:13:04 +0000 (16:13 +0000)]
gimplify.c (omp_default_clause): New function.

* gimplify.c (omp_default_clause): New function.  Reorganize flow
for clarity. Broken out of ...
(omp_notice_variable): ... here.

From-SVN: r226170

9 years agore PR middle-end/66984 (ICE: fold_binary changes type of operand, causing failure...
Gary Funck [Fri, 24 Jul 2015 16:10:39 +0000 (16:10 +0000)]
re PR middle-end/66984 (ICE: fold_binary changes type of operand, causing failure in verify_gimple_assign_binary)

2015-07-24  Gary Funck  <gary@intrepid.com>

PR middle-end/66984
* fold-const.c (fold_binary_loc): Call fold_convert on arguments to
        fold_build2 for CEIL_DIV_EXPR and FLOOR_DIV_EXPR optimization.

From-SVN: r226168

9 years agoAdd transform_to_exit_first_loop_alt dump success message
Tom de Vries [Fri, 24 Jul 2015 15:00:59 +0000 (15:00 +0000)]
Add transform_to_exit_first_loop_alt dump success message

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

* tree-parloops.c (gen_parallel_loop): Add debug print for alternative
exit-first loop transform.

* gcc.dg/parloops-exit-first-loop-alt-2.c: Use debug print for
alternative exit-first loop transform.
* gcc.dg/parloops-exit-first-loop-alt-3.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-4.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-5.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-6.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-7.c: Same.
* gcc.dg/parloops-exit-first-loop-alt-pr66652.c: Same.
* gcc.dg/parloops-exit-first-loop-alt.c: Same.
* gfortran.dg/parloops-exit-first-loop-alt-2.f95: Same.
* gfortran.dg/parloops-exit-first-loop-alt.f95: Same.

From-SVN: r226164

9 years agoFix gfortran.dg/class_to_type_4.f90 deallocation code misordering failure
Mikael Morin [Fri, 24 Jul 2015 14:44:59 +0000 (14:44 +0000)]
Fix gfortran.dg/class_to_type_4.f90 deallocation code misordering failure

PR fortran/64986
gcc/fortran/
* trans-expr.c (gfc_trans_assignment_1): Put component deallocation
code at the beginning of the block.

From-SVN: r226162

9 years agore PR libgomp/66714 (ICE in loc_list_from_tree with -g)
Cesar Philippidis [Fri, 24 Jul 2015 14:38:43 +0000 (07:38 -0700)]
re PR libgomp/66714 (ICE in loc_list_from_tree with -g)

PR 66714

gcc/
* tree-cfg.c (struct replace_decls_d): New struct.
(replace_block_vars_by_duplicates_1): New function.
(replace_block_vars_by_duplicates): Use it to replace the decls
in the value exprs by duplicates.

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

From-SVN: r226160

9 years ago[AArch64] elf toolchain does not pass -shared linker option
Szabolcs Nagy [Fri, 24 Jul 2015 14:30:41 +0000 (14:30 +0000)]
[AArch64] elf toolchain does not pass -shared linker option

2015-07-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>

* config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Handle -h, -static,
-shared, -symbolic, -rdynamic.

From-SVN: r226159

9 years ago[AArch64] Fix LINUX_TARGET_LINK_SPEC to be consistent with ARM
Szabolcs Nagy [Fri, 24 Jul 2015 14:27:55 +0000 (14:27 +0000)]
[AArch64] Fix LINUX_TARGET_LINK_SPEC to be consistent with ARM

2015-07-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>

PR target/65711
* config/aarch64/aarch64-linux.h (LINUX_TARGET_LINK_SPEC): Move
-dynamic-linker within %{!static %{!shared, and -rdynamic within
%{!static.

From-SVN: r226158

9 years agore PR ipa/66566 ([CHKP] ICE in early_inliner: internal compiler error: in operator...
Ilya Enkovich [Fri, 24 Jul 2015 13:15:49 +0000 (13:15 +0000)]
re PR ipa/66566 ([CHKP] ICE in early_inliner: internal compiler error: in operator[], at vec.h:714)

gcc/

PR ipa/66566
* ipa-inline-analysis.c (estimate_calls_size_and_time): Check
edge summary is available.

gcc/testsuite/

PR ipa/66566
* gcc.target/i386/mpx/pr66566.c: New test.

From-SVN: r226155

9 years agogenmatch.c (struct dt_node): Add statistic fields.
Richard Biener [Fri, 24 Jul 2015 12:39:08 +0000 (12:39 +0000)]
genmatch.c (struct dt_node): Add statistic fields.

2015-07-24  Richard Biener  <rguenther@suse.de>

* genmatch.c (struct dt_node): Add statistic fields.
(dt_node::analyze): New method.
(decision_tree::gen_gimple): Call analyze on the root node
and print statistics to stderr.
(decision_tree::gen_generic): Likewise.

From-SVN: r226154

9 years agofold-const.c (fold_binary_loc): Move simplifying of comparisons against the highest...
Richard Biener [Fri, 24 Jul 2015 12:36:00 +0000 (12:36 +0000)]
fold-const.c (fold_binary_loc): Move simplifying of comparisons against the highest or lowest possible integer ...

2015-07-24  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_binary_loc): Move simplifying of comparisons
against the highest or lowest possible integer ...
* match.pd: ... as patterns here.

From-SVN: r226153

9 years agogenmatch.c (struct capture_info): Add same_as field.
Richard Biener [Fri, 24 Jul 2015 12:35:22 +0000 (12:35 +0000)]
genmatch.c (struct capture_info): Add same_as field.

2015-07-24  Richard Biener  <rguenther@suse.de>

* genmatch.c (struct capture_info): Add same_as field.
(capture_info::capture_info): Initialize same_as.
(capture_info::walk_match): Compute same_as.
(capture_info::walk_result): Compute stuff for the leader.
(capture_info::walk_c_expr): Likewise.
(dt_simplify::gen_1): Only look at leaders when deciding
to force no side-effects or emit side-effects of omitted operands.

From-SVN: r226152

9 years agoAdd a testcase for PR bootstrap/66978
H.J. Lu [Fri, 24 Jul 2015 12:08:00 +0000 (12:08 +0000)]
Add a testcase for PR bootstrap/66978

PR bootstrap/66978
* gcc.target/i386/pr66978.c: New test.

From-SVN: r226150

9 years agoS/390: Fix cfi for GPR 2 FPR saves
Andreas Krebbel [Fri, 24 Jul 2015 11:29:50 +0000 (11:29 +0000)]
S/390: Fix cfi for GPR 2 FPR saves

gcc/ChangeLog:

2015-07-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * config/s390/s390.c (s390_save_gprs_to_fprs): Add CFA_REGISTER
    reg note to the GPR -> FPR save instructions.

gcc/testsuite/ChangeLog:

2015-07-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * gcc.target/s390/gpr2fprsavecfi.c: New test.

From-SVN: r226149

9 years ago[PATCH] S/390: Improve risbg usage
Andreas Krebbel [Fri, 24 Jul 2015 11:28:06 +0000 (11:28 +0000)]
[PATCH] S/390: Improve risbg usage

gcc/ChangeLog:

2015-07-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * config/s390/s390.c (s390_rtx_costs): Make risbg patterns
    cheaper.
    (s390_expand_insv): Don't generate risbg pattern for constant zero
    sources.
    * config/s390/s390.md ("*insv<mode>_zEC12_appendbitsleft")
    ("*insv<mode>_z10_appendbitsleft"): New pattern definitions.  New
    splitters.

gcc/testsuite/ChangeLog:

2015-07-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * gcc.target/s390/insv-1.c: New test.
    * gcc.target/s390/insv-2.c: New test.
    * gcc.target/s390/insv-3.c: New test.

From-SVN: r226148

9 years ago[PATCH 4/4] S390 -march=native related fixes
Dominik Vogt [Fri, 24 Jul 2015 11:25:01 +0000 (11:25 +0000)]
[PATCH 4/4] S390 -march=native related fixes

gcc/ChangeLog

* config/s390/s390.c (s390_reorg): Clean up handling of processors with
-mtune=
(s390_issue_rate): Likewise.
(s390_sched_reorder): Likewise.
(s390_sched_variable_issue): Likewise.
(s390_loop_unroll_adjust): Likewise.
(s390_option_override):  Likewise.

From-SVN: r226147

9 years ago[PATCH 3/4] S390 -march=native related fixes
Dominik Vogt [Fri, 24 Jul 2015 11:23:53 +0000 (11:23 +0000)]
[PATCH 3/4] S390 -march=native related fixes

gcc/ChangeLog

* config/s390/driver-native.c (s390_host_detect_local_cpu): Handle
processor capabilities with -march=native.
* config/s390/s390.h (MARCH_MTUNE_NATIVE_SPECS): Likewise.
(DRIVER_SELF_SPECS): Likewise.  Join specs for 31 and 64 bit.
(S390_TARGET_BITS_STRING): Macro to simplify specs.

From-SVN: r226146

9 years ago[PATCH 2/4] S390 -march=native related fixes
Dominik Vogt [Fri, 24 Jul 2015 11:22:32 +0000 (11:22 +0000)]
[PATCH 2/4] S390 -march=native related fixes

gcc/ChangeLog

* config/s390/s390.c (s390_issue_rate): Handle PROCESSOR_2094_Z9_EC.
(s390_option_override): Likewise.
(s390_adjust_priority): Likewise.

From-SVN: r226145

9 years agoS390 -march=native related fixes
Dominik Vogt [Fri, 24 Jul 2015 11:19:59 +0000 (11:19 +0000)]
S390 -march=native related fixes

gcc/ChangeLog:

* config/s390/s390.h: S390: Do not define EXTRA_SPEC_FUNCTIONS when
cross compiling.

From-SVN: r226144

9 years agofold-const.c (maybe_canonicalize_comparison_1): Move A code CST canonicalization ...
Richard Biener [Fri, 24 Jul 2015 10:31:21 +0000 (10:31 +0000)]
fold-const.c (maybe_canonicalize_comparison_1): Move A code CST canonicalization ...

2015-07-24  Richard Biener  <rguenther@suse.de>

* fold-const.c (maybe_canonicalize_comparison_1): Move
A code CST canonicalization ...
* match.pd: ... to a pattern here.

cp/
* init.c (build_vec_init): Build iterator bound in the same
type as the iterator.

From-SVN: r226143

9 years agoRemove xfail in autopar/uns-outer-4.c
Tom de Vries [Fri, 24 Jul 2015 10:14:34 +0000 (10:14 +0000)]
Remove xfail in autopar/uns-outer-4.c

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

* gcc.dg/autopar/uns-outer-4.c: Remove loopfn xfail.

From-SVN: r226142

9 years ago[AArch64] Revert REG_ALLOC_ORDER/HONOR_REG_ALLOC_ORDER
Jiong Wang [Fri, 24 Jul 2015 09:06:53 +0000 (09:06 +0000)]
[AArch64] Revert REG_ALLOC_ORDER/HONOR_REG_ALLOC_ORDER

2015-07-24  Jiong Wang  <jiong.wang@arm.com>

  Revert:
  2015-07-22  Jiong Wang  <jiong.wang@arm.com>
  PR target/63521
  * config/aarch64/aarch64.h (REG_ALLOC_ORDER): Define.
  (HONOR_REG_ALLOC_ORDER): Define.

From-SVN: r226141

9 years agogenmatch.c (add_operator): Allow SSA_NAME as predicate.
Richard Biener [Fri, 24 Jul 2015 08:31:07 +0000 (08:31 +0000)]
genmatch.c (add_operator): Allow SSA_NAME as predicate.

2015-07-24  Richard Biener  <rguenther@suse.de>

* genmatch.c (add_operator): Allow SSA_NAME as predicate.
* fold-const.c (fold_comparison): Move parameter does not
alias &local simplification ...
* match.pd: ... as a pattern here.

From-SVN: r226140

9 years agogimple-fold.c (replace_stmt_with_simplification): Special-case valueizing call operands.
Richard Biener [Fri, 24 Jul 2015 08:25:41 +0000 (08:25 +0000)]
gimple-fold.c (replace_stmt_with_simplification): Special-case valueizing call operands.

2015-07-24  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (replace_stmt_with_simplification): Special-case
valueizing call operands.
* gimple-match-head.c (maybe_push_res_to_seq): Take
number of call arguments from ops array.
(do_valueize): New function.
(gimple_simplify): Return true if valueization changed
any operand even if the result didn't simplify further.

From-SVN: r226139

9 years agolibstdc++-v3/fragment.am (AM_CPPFLAGS): Add CPPFLAGS
Michael Haubenwallner [Fri, 24 Jul 2015 07:05:19 +0000 (07:05 +0000)]
libstdc++-v3/fragment.am (AM_CPPFLAGS): Add CPPFLAGS

2015-07-24  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>

* fragment.am (AM_CPPFLAGS): Add CPPFLAGS.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* python/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* src/c++11/Makefile.in: Regenerate.
* src/c++98/Makefile.in: Regenerate.
* src/filesystem/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.

From-SVN: r226138

9 years agore PR middle-end/25530 ((unsigned / 2)*2 is not changed into unsigned &~1)
Naveen H.S [Fri, 24 Jul 2015 04:50:41 +0000 (04:50 +0000)]
re PR middle-end/25530 ((unsigned / 2)*2 is not changed into unsigned &~1)

PR middle-end/25530
2015-07-24  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

gcc/testsuite/ChangeLog:
* gcc.dg/pr25530.c: New test.

gcc/ChangeLog:
* match.pd (mult (trunc_div @0 integer_pow2p@1) @1) : New simplifier.

From-SVN: r226137

9 years agore PR middle-end/25529 ((unsigned * 2)/2 is not changed into unsigned &0x7FFFFFFF)
Naveen H.S [Fri, 24 Jul 2015 04:47:48 +0000 (04:47 +0000)]
re PR middle-end/25529 ((unsigned * 2)/2 is not changed into unsigned &0x7FFFFFFF)

PR middle-end/25529
2015-07-24  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

gcc/testsuite/ChangeLog:
* gcc.dg/pr25529.c: New test.

gcc/ChangeLog:
* match.pd (trunc_div (mult @0 integer_pow2p@1) @1) : New simplifier.

From-SVN: r226136

9 years agoreg_equal_test.c: New test.
Kugan Vivekanandarajah [Fri, 24 Jul 2015 01:43:22 +0000 (01:43 +0000)]
reg_equal_test.c: New test.

gcc/testsuite/ChangeLog:

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

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

gcc/ChangeLog:

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

* config/arm/arm.c (arm_emit_movpair): Add REG_EQUAL notes to
instruction.

From-SVN: r226135

9 years agocse.c (cse_insn): Fix missing check for STRICT_LOW_PART and minor clean up.
Kugan Vivekanandarajah [Fri, 24 Jul 2015 01:38:19 +0000 (01:38 +0000)]
cse.c (cse_insn): Fix missing check for STRICT_LOW_PART and minor clean up.

gcc/ChangeLog:

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

* cse.c (cse_insn): Fix missing check for STRICT_LOW_PART and minor
clean up.

From-SVN: r226134

9 years agoDaily bump.
GCC Administrator [Fri, 24 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r226132

9 years agoi386.c (ix86_build_builtin_va_list_64): Rename from ix86_build_builtin_va_list_abi.
Uros Bizjak [Thu, 23 Jul 2015 21:49:34 +0000 (23:49 +0200)]
i386.c (ix86_build_builtin_va_list_64): Rename from ix86_build_builtin_va_list_abi.

* config/i386/i386.c (ix86_build_builtin_va_list_64): Rename
from ix86_build_builtin_va_list_abi.  Handle only 64bit non-MS_ABI
targets here.
(ix86_build_builtin_va_list): Rewrite sysv_va_list_type_node and
ms_va_list_type_node initialization.

From-SVN: r226127

9 years agojit: supply MULTILIB_DEFAULTS as arguments when invoking driver
David Malcolm [Thu, 23 Jul 2015 21:19:07 +0000 (21:19 +0000)]
jit: supply MULTILIB_DEFAULTS as arguments when invoking driver

gcc/jit/ChangeLog:
* jit-playback.c (invoke_driver): Convert local "argvec"
to an auto_argvec, so that it owns copies of the strings,
rather than borrows them, updating ADD_ARG to use xstrdup
and special-casing the NULL terminator to avoid
xstrdup (NULL).  Call add_multilib_driver_arguments at the front
of the arguments.
(MULTILIB_DEFAULTS): Provide a default definition.
(multilib_defaults_raw): New constant array.
(gcc::jit::playback::context::add_multilib_driver_arguments): New
method.
* jit-playback.h
(gcc::jit::playback::context::add_multilib_driver_arguments): New
method.
* docs/internals/test-hello-world.exe.log.txt: Update.
* docs/_build/texinfo/libgccjit.texi: Regenerate.

From-SVN: r226126

9 years agore PR lto/66752 (spec2000 255.vortex performance compiled with GCC is ~20% lower...
Jeff Law [Thu, 23 Jul 2015 20:42:15 +0000 (14:42 -0600)]
re PR lto/66752 (spec2000 255.vortex performance compiled with GCC is ~20% lower than with CLANG)

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

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

From-SVN: r226125

9 years agocompiler: Make empty interface types for vars during parse time.
Ian Lance Taylor [Thu, 23 Jul 2015 19:57:22 +0000 (19:57 +0000)]
compiler: Make empty interface types for vars during parse time.

    When making the type for a variable with an empty interface type,
    the parser makes an interface type with a NULL method set and relies
    on later passes to correct this.

    For sink variables, which are ignored in later passes, the interface
    method table is never finalized and a compile time assertion is issued.
    Instead, the initial type generated by the parser should be the empty
    interface type.

    Fixes golang/go#11579.

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

From-SVN: r226123

9 years agocompiler: Check for errors in the underlying types of unary expressions.
Ian Lance Taylor [Thu, 23 Jul 2015 19:33:26 +0000 (19:33 +0000)]
compiler: Check for errors in the underlying types of unary expressions.

    Fixes golang/go#11592.

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

From-SVN: r226122

9 years agotree-pass.h (get_current_pass_name): Removed.
Bernd Edlinger [Thu, 23 Jul 2015 19:01:03 +0000 (19:01 +0000)]
tree-pass.h (get_current_pass_name): Removed.

2015-07-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * tree-pass.h (get_current_pass_name): Removed.

From-SVN: r226121

9 years agore PR c++/66572 (Bogus Wlogical-op warning for operands coming from template instanti...
Marek Polacek [Thu, 23 Jul 2015 18:57:25 +0000 (18:57 +0000)]
re PR c++/66572 (Bogus Wlogical-op warning for operands coming from template instantiations)

PR c++/66572
* pt.c (tsubst_copy_and_build): Add warn_logical_op sentinel.

* g++.dg/warn/Wlogical-op-2.C: New test.

From-SVN: r226120

9 years ago* MAINTAINERS: Update my email address.
Bernd Schmidt [Thu, 23 Jul 2015 18:05:51 +0000 (18:05 +0000)]
* MAINTAINERS: Update my email address.

From-SVN: r226118

9 years agofunctional_hash.h: Add specializations for __intN types.
DJ Delorie [Thu, 23 Jul 2015 17:57:34 +0000 (13:57 -0400)]
functional_hash.h: Add specializations for __intN types.

* include/bits/functional_hash.h: Add specializations for __intN
types.

* include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp (__gnu_pbds):
Guard against values that might exceed size_t's precision.

From-SVN: r226117

9 years agoc-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
Marek Polacek [Thu, 23 Jul 2015 17:14:31 +0000 (17:14 +0000)]
c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.

* c-ubsan.c (ubsan_instrument_division): Use unshare_expr throughout.
(ubsan_instrument_shift): Likewise.

From-SVN: r226116

9 years ago[PR64164] Drop copyrename, use coalescible partition as base when optimizing.
Alexandre Oliva [Thu, 23 Jul 2015 15:34:49 +0000 (15:34 +0000)]
[PR64164] Drop copyrename, use coalescible partition as base when optimizing.

for  gcc/ChangeLog

PR rtl-optimization/64164
* Makefile.in (OBJS): Drop tree-ssa-copyrename.o.
* tree-ssa-copyrename.c: Removed.
* opts.c (default_options_table): Drop -ftree-copyrename.  Add
-ftree-coalesce-vars.
* passes.def: Drop all occurrences of pass_rename_ssa_copies.
* common.opt (ftree-copyrename): Ignore.
(ftree-coalesce-inlined-vars): Likewise.
* doc/invoke.texi: Remove the ignored options above.
* gimple-expr.h (gimple_can_coalesce_p): Move declaration
* tree-ssa-coalesce.h: ... here.
* tree-ssa-uncprop.c: Include tree-ssa-coalesce.h and other
headers required by it.
* gimple-expr.c (gimple_can_coalesce_p): Allow coalescing
across variables when flag_tree_coalesce_vars.  Check register
use and promoted modes to allow coalescing.  Moved to
tree-ssa-coalesce.c.
* tree-ssa-live.c (struct tree_int_map_hasher): Move along
with its member functions to tree-ssa-coalesce.c.
(var_map_base_init): Likewise.  Renamed to
compute_samebase_partition_bases.
(partition_view_normal): Drop want_bases parameter.
(partition_view_bitmap): Likewise.
* tree-ssa-live.h: Adjust declarations.
* tree-ssa-coalesce.c: Include explow.h.
(build_ssa_conflict_graph): Process PARM_ and RESULT_DECLs's
default defs at the entry point.
(dump_part_var_map): New.
(compute_optimized_partition_bases): New, called by...
(coalesce_ssa_name): ... when flag_tree_coalesce_vars, instead
of compute_samebase_partition_bases.  Adjust.
* alias.c (nonoverlapping_memrefs_p): Disregard gimple-regs.
* cfgexpand.c (leader_merge): New.
(get_rtl_for_parm_ssa_default_def): New.
(set_rtl): Merge exprs and attrs, even for MEMs and non-SSA
vars.  Update DECL_RTL for PARM_DECLs and RESULT_DECLs too.
(expand_one_stack_var_at): Handle anonymous SSA_NAMEs.  Drop
redundant MEM attr setting.
(expand_one_stack_var_1): Handle anonymous SSA_NAMEs.  Renamed
from...
(expand_one_stack_var): ... this.  New wrapper to check and
skip already expanded SSA partitions.
(record_alignment_for_reg_var): New, factored out of...
(expand_one_var): ... this.
(expand_one_ssa_partition): New.
(adjust_one_expanded_partition_var): New.
(expand_one_register_var): Check and skip already expanded SSA
partitions.
(expand_used_vars): Don't create DECLs for anonymous SSA
names.  Expand all SSA partitions, then adjust all SSA names.
(pass::execute): Replace the loops that set
SA.partition_to_pseudo from partition leaders and cleared
DECL_RTL for multi-location variables, and that which used to
rename vars and set attrs, with one that clears DECL_RTL and
checks that PARMs and RESULTs default_defs match DECL_RTL.
* cfgexpand.h (get_rtl_for_parm_ssa_default_def): Declare.
* emit-rtl.c (set_reg_attrs_for_parm): Handle NULL decl.
* explow.c (promote_ssa_mode): New.
* explow.h (promote_ssa_mode): Declare.
* expr.c (expand_expr_real_1): Handle anonymous SSA_NAMEs.
* function.c: Include cfgexpand.h.
(use_register_for_decl): Handle SSA_NAMEs, anonymous or not.
(use_register_for_parm_decl): Wrapper for the above to
special-case the result_ptr.
(rtl_for_parm): Ditto for get_rtl_for_parm_ssa_default_def.
(split_complex_args): Take assign_parm_data_all argument.
Pass it to rtl_for_parm.  Set up rtl and context for split
args.
(assign_parms_augmented_arg_list): Adjust.
(maybe_reset_rtl_for_parm): Reset DECL_RTL of parms with
multiple locations.  Recognize split complex args.
(assign_parm_adjust_stack_rtl): Add all and parm arguments,
for rtl_for_parm.  For SSA-assigned parms, zero stack_parm.
(assign_parm_setup_block): Prefer SSA-assigned location.
(assign_parm_setup_reg): Likewise.  Use entry_parm for equiv
if stack_parm is NULL.
(assign_parm_setup_stack): Prefer SSA-assigned location.
(assign_parms): Maybe reset DECL_RTL of params.  Adjust stack
rtl before testing for pointer bounds.  Special-case result_ptr.
(expand_function_start): Maybe reset DECL_RTL of result.
Prefer SSA-assigned location for result and static chain.
Factor out DECL_RESULT and SET_DECL_RTL.
* tree-outof-ssa.c (insert_value_copy_on_edge): Handle
anonymous SSA names.  Use promote_ssa_mode.
(get_temp_reg): Likewise.
(remove_ssa_form): Adjust.
* stor-layout.c (layout_decl): Don't set mem attributes of
non-MEMs.
* var-tracking.c (dataflow_set_clear_at_call): Take call_insn
and get its reg_usage for reg invalidation.
(compute_bb_dataflow): Pass it insn.
(emit_notes_in_bb): Likewise.

for  gcc/testsuite/ChangeLog

* gcc.dg/guality/pr54200.c: Add -fno-tree-coalesce-vars.
* gcc.dg/ssp-1.c: Make counter a register.
* gcc.dg/ssp-2.c: Likewise.
* gcc.dg/torture/parm-coalesce.c: New.

From-SVN: r226113

9 years agore PR target/66217 (PowerPC rotate/shift/mask instructions not optimal)
Segher Boessenkool [Thu, 23 Jul 2015 14:37:57 +0000 (16:37 +0200)]
re PR target/66217 (PowerPC rotate/shift/mask instructions not optimal)

PR target/66217
* config/rs6000/rs6000-protos.h (rs6000_emit_2insn_and): Change
prototype.
* config/rs6000/rs6000.c (rs6000_emit_dot_insn): New function.
(rs6000_emit_2insn_and): Handle dot forms.
* config/rs6000/rs6000.md (and<mode>3): Adjust.
(*and<mode>3_2insn): Remove TODO.  Adjust.  Add "type" attr.
(*and<mode>3_2insn_dot, *and<mode>3_2insn_dot2): New.

From-SVN: r226112

9 years agogeneric-match-head.c: Include cgraph.h.
Richard Biener [Thu, 23 Jul 2015 14:31:44 +0000 (14:31 +0000)]
generic-match-head.c: Include cgraph.h.

2015-07-23  Richard Biener  <rguenther@suse.de>

* generic-match-head.c: Include cgraph.h.
* gimple-match-head.c: Likewise.
* tree-ssa-sccvn.c (free_scc_vn): Guard against newly created
SSA names.
* fold-const.c (fold_binary_loc): Move &A ==/!= &B simplification...
* match.pd: ...to a pattern here.  Add &A ==/!= 0 simplification
pattern.

From-SVN: r226111

9 years agore PR sanitizer/66908 (Uninitialized variable when compiled with UBsan)
Marek Polacek [Thu, 23 Jul 2015 13:54:06 +0000 (13:54 +0000)]
re PR sanitizer/66908 (Uninitialized variable when compiled with UBsan)

PR sanitizer/66908
* c-ubsan.c: Include gimplify.h.
(ubsan_instrument_division): Unshare OP0 and OP1.
(ubsan_instrument_shift): Likewise.

* c-c++-common/ubsan/pr66908.c: New test.

From-SVN: r226110

9 years agogimple-fold.c (fold_gimple_cond): Do not require folding results to pass valid_gimple...
Richard Biener [Thu, 23 Jul 2015 13:33:43 +0000 (13:33 +0000)]
gimple-fold.c (fold_gimple_cond): Do not require folding results to pass valid_gimple_rhs_p.

2015-07-23  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (fold_gimple_cond): Do not require folding
results to pass valid_gimple_rhs_p.
* tree-cfg.h (fold_cond_expr_cond): Remove.
* tree-cfg.c (fold_cond_expr_cond): Likewise.
(make_edges): Do not call it.
* tree-inline.c (tree_function_versioning): Likewise.

From-SVN: r226109

9 years agoCheck TYPE_OVERFLOW_WRAPS for parloops reductions
Tom de Vries [Thu, 23 Jul 2015 12:17:52 +0000 (12:17 +0000)]
Check TYPE_OVERFLOW_WRAPS for parloops reductions

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

* tree-parloops.c (gather_scalar_reductions): Add arg to call to
vect_force_simple_reduction.
* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Same.
(vect_is_simple_reduction_1): Add and handle
need_wrapping_integral_overflow parameter.
(vect_is_simple_reduction, vect_force_simple_reduction): Add and pass
need_wrapping_integral_overflow parameter.
(vectorizable_reduction): Add arg to call to vect_is_simple_reduction.
* tree-vectorizer.h (vect_force_simple_reduction): Add parameter to decl.

* gcc.dg/autopar/outer-4.c: Add xfail.
* gcc.dg/autopar/outer-5.c: Same.
* gcc.dg/autopar/outer-6.c: Same.
* gcc.dg/autopar/reduc-2.c: Same.
* gcc.dg/autopar/reduc-2char.c: Same.
* gcc.dg/autopar/reduc-2short.c: Same.
* gcc.dg/autopar/reduc-8.c: Same.
* gcc.dg/autopar/uns-outer-4.c: New test.
* gcc.dg/autopar/uns-outer-5.c: New test.
* gcc.dg/autopar/uns-outer-6.c: New test.

From-SVN: r226107

9 years agore PR tree-optimization/66952 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
Richard Biener [Thu, 23 Jul 2015 11:19:26 +0000 (11:19 +0000)]
re PR tree-optimization/66952 (wrong code at -O2 and -O3 on x86_64-linux-gnu)

2015-07-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66952
* gcc.dg/torture/pr66952.c: Use signed char.

From-SVN: r226104

9 years agoPR tree-optimization/66926,66951
Yuri Rumyantsev [Thu, 23 Jul 2015 11:13:00 +0000 (11:13 +0000)]
PR tree-optimization/66926,66951

gcc/

PR tree-optimization/66926,66951
* tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Delete
INNER_LOOP and fix up condition for renaming virtual operands.

gcc/testsuite/

PR tree-optimization/66926,66951
* gcc.dg/vect/pr66951.c: New test.

From-SVN: r226103

9 years agore PR c++/52987 (bogus expected ; before for undeclared type)
Paolo Carlini [Thu, 23 Jul 2015 10:11:48 +0000 (10:11 +0000)]
re PR c++/52987 (bogus expected ; before for undeclared type)

/cp
2015-07-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52987
* parser.c (cp_parser_simple_declaration): Robustify check avoiding
redundant error messages.

/testsuite
2015-07-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52987
* g++.dg/parse/error57.C: New.
* g++.dg/expr/string-2.C: Update.

From-SVN: r226097

9 years ago[combine][obvious] Use std::swap in try_combine
Kyrylo Tkachov [Thu, 23 Jul 2015 09:21:27 +0000 (09:21 +0000)]
[combine][obvious] Use std::swap in try_combine

* combine.c (try_combine): Use std::swap instead of manually
swapping.

From-SVN: r226094

9 years agoI6400 scheduling.
Prachi Godbole [Thu, 23 Jul 2015 07:58:20 +0000 (07:58 +0000)]
I6400 scheduling.

gcc/
* config/mips/i6400.md: New file.
* config/mips/mips-cpus.def (mips32r6): Change to PROCESSOR_I6400.
(mips64r6): Likewise.
(i6400): Define.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.c (mips_rtx_cost_data): Add I6400 processor.
(mips_issue_rate): Add support for i6400.
(mips_multipass_dfa_lookahead): Likewise.
* config/mips/mips.h (TUNE_I6400): Define.
* config/mips/mips.md: Include i6400.md.
(processor): Add i6400.
* doc/invoke.texi (-march=@var{arch}): Add i6400.

From-SVN: r226090

9 years agore PR middle-end/66916 (FAIL: gcc.target/arm/pr43920-2.c object-size text <= 54)
Richard Biener [Thu, 23 Jul 2015 07:29:53 +0000 (07:29 +0000)]
re PR middle-end/66916 (FAIL: gcc.target/arm/pr43920-2.c object-size text <= 54)

2015-07-23  Richard Biener  <rguenther@suse.de>

PR middle-end/66916
* match.pd: Guard widen and sign-change comparison simplification
with single_use.

From-SVN: r226089

9 years agore PR middle-end/66945 (ICE in generic_simplify (generic-match.c:24790))
Richard Biener [Thu, 23 Jul 2015 07:23:23 +0000 (07:23 +0000)]
re PR middle-end/66945 (ICE in generic_simplify (generic-match.c:24790))

2015-07-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66945
* tree-ssa-propagate.c (substitute_and_fold_dom_walker
::before_dom_children): Force the propagators idea of
non-executable edges to materialize, not what the folder
chooses.

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

From-SVN: r226088

9 years agogimple.h (gimple_cond_make_false): Use 0 != 0.
Richard Biener [Thu, 23 Jul 2015 07:22:06 +0000 (07:22 +0000)]
gimple.h (gimple_cond_make_false): Use 0 != 0.

2015-07-23  Richard Biener  <rguenther@suse.de>

* gimple.h (gimple_cond_make_false): Use 0 != 0.
(gimple_cond_make_true): Use 1 != 0.

From-SVN: r226087

9 years agot-msp430 (MULTILIB_DIRNAMES): Remove trailing slashes.
DJ Delorie [Thu, 23 Jul 2015 03:32:47 +0000 (23:32 -0400)]
t-msp430 (MULTILIB_DIRNAMES): Remove trailing slashes.

* config/msp430/t-msp430 (MULTILIB_DIRNAMES): Remove trailing
slashes.

* config/msp430/msp430.md (ashlhi3): Optimize shifts of subregs.
(ashrhi3): Likewise.
(lshrhi3): Likewise.
(movhi): Take advantage of zero-extend to load small constants.
(movpsi): Likewise.
(and<mode>3): Likewise.
(zero_extendqihi2): Likewise.
(zero_extendqisi2): New.
* config/msp430/constraints.md (N,O): New.
* config/msp430/msp430.h (WORD_REGISTER_OPERATIONS): Define.

From-SVN: r226085

9 years agoDaily bump.
GCC Administrator [Thu, 23 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r226084

9 years agore PR target/66954 (function multiversioning fails for target "aes")
Uros Bizjak [Wed, 22 Jul 2015 18:01:33 +0000 (20:01 +0200)]
re PR target/66954 (function multiversioning fails for target "aes")

libgcc/ChangeLog:

PR target/66954
* config/i386/cpuinfo.c (enum processor_features): Add FEATURE_AES.
(get_available_features): Handle FEATURE_AES.

gcc/ChangeLog:

PR target/66954
* config/i386/i386.c (get_builtin_code_for_version): Add P_AES
to enum feature_priority and feature_list.
(fold_builtin_cpu): Add F_AES to enum processor_features
and isa_names_table.

gcc/testsuite/ChangeLog:

PR target/66954
* g++.dg/ext/mv24.C: New test.

From-SVN: r226081

9 years agore PR libgomp/66950 (FAIL: libgomp.fortran/examples-4/simd-7.f90 -O0 execution...
Maxim Blumenthal [Wed, 22 Jul 2015 17:19:31 +0000 (17:19 +0000)]
re PR libgomp/66950 (FAIL: libgomp.fortran/examples-4/simd-7.f90   -O0  execution test)

2015-07-22  Maxim Blumenthal  <maxim.blumenthal@intel.com>

PR libgomp/66950
* testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
(fib_ref): New function.
(fib): Correct corner cases in the recursion.
(main): Replace the non-simd loop with fib_ref call.
* testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
subroutine.
(fibonacci): Lower the parameter N to 30.  Correct accordingly check
for the last array element value.  Replace the non-simd loop with
fib_ref call.  Remove redundant b_ref array.  Remove the comparison
of the last array element with according Fibonacci sequence element.
(fib): Correct corner cases in the recursion.

From-SVN: r226080

9 years agounpack.c: Use dg-additional-options rather than dg-options.
Marek Polacek [Wed, 22 Jul 2015 16:44:45 +0000 (16:44 +0000)]
unpack.c: Use dg-additional-options rather than dg-options.

* gcc.dg/vmx/unpack.c: Use dg-additional-options rather than
dg-options.

From-SVN: r226078

9 years agore PR driver/66737 (ld: warning: -z bndplt ignored)
Ilya Enkovich [Wed, 22 Jul 2015 16:24:28 +0000 (16:24 +0000)]
re PR driver/66737 (ld: warning: -z bndplt ignored)

PR driver/66737
* config/i386/linux-common.h (MPX_SPEC): Use linker option
for 64bit target only.

From-SVN: r226076

9 years ago* config/nvptx/nvptx.c: Expand some comments.
Bernd Schmidt [Wed, 22 Jul 2015 15:30:14 +0000 (15:30 +0000)]
* config/nvptx/nvptx.c: Expand some comments.

From-SVN: r226075

9 years agoFix r225926's iso_varying_string ICE regression
Mikael Morin [Wed, 22 Jul 2015 15:26:52 +0000 (15:26 +0000)]
Fix r225926's iso_varying_string ICE regression

PR fortran/61831
PR fortran/66929
gcc/fortran/
* trans-array.c (gfc_get_proc_ifc_for_expr): Use esym as procedure
symbol if available.
gcc/testsuite/
* gfortran.dg/generic_30.f90: New.

From-SVN: r226074

9 years ago[Patch ARM/AArch64 obvious] Fix typo: Rename insn_reservation cortex_53_advsimd to...
James Greenhalgh [Wed, 22 Jul 2015 14:15:26 +0000 (14:15 +0000)]
[Patch ARM/AArch64 obvious] Fix typo: Rename insn_reservation cortex_53_advsimd to cortex_a53_advsimd

gcc/

* config/arm/cortex-a53 (cortex_53_advsimd): Rename to...
(cortex_a53_advsimd): ...This.

From-SVN: r226069

9 years agogenmatch.c (expr::gen_transform): Clarify error message and display location.
Richard Biener [Wed, 22 Jul 2015 13:18:47 +0000 (13:18 +0000)]
genmatch.c (expr::gen_transform): Clarify error message and display location.

2015-07-22  Richard Biener  <rguenther@suse.de>

* genmatch.c (expr::gen_transform): Clarify error message
and display location.

From-SVN: r226068

9 years agogenmatch.c (struct operand): Add location member.
Richard Biener [Wed, 22 Jul 2015 13:16:50 +0000 (13:16 +0000)]
genmatch.c (struct operand): Add location member.

2015-07-22  Richard Biener  <rguenther@suse.de>

* genmatch.c (struct operand): Add location member.
(predicate, expr, c_expr, capture, if_expr, with_expr): Adjust
constructors.
(struct simplify): Remove match_location and result_location
members.
(elsehwere): Adjust.

From-SVN: r226067

9 years agoAdd scheduling for M51xx core family.
Prachi Godbole [Wed, 22 Jul 2015 12:46:09 +0000 (12:46 +0000)]
Add scheduling for M51xx core family.

gcc/
* config/mips/m5100.md: New file.
* config/mips/mips-cpus.def (m5100, m5101): Define.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.c (mips_rtx_cost_data): Add costs for m5100.
* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Map -march=m5100 and
-march=m5101 to -mips32r5.
(MIPS_ARCH_FLOAT_SPEC): Map -m5101 to -msoft-float.
(MIPS_ISA_NAN2008_SPEC): Map -march=m51* to -mnan=2008 if
!-msoft-float.
* config/mips/mips.md: Include m5100.md.
(processor): Add m5100.
* doc/invoke.texi (-march=@var{arch}): Add m5100, m5101.

From-SVN: r226066

9 years agoAdd -march=interaptiv.
Robert Suchanek [Wed, 22 Jul 2015 12:45:51 +0000 (12:45 +0000)]
Add -march=interaptiv.

gcc/
* config/mips/mips-cpus.def (interaptiv): Define.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Map -march=interaptiv to
-mips32r2.
(BASE_DRIVER_SELF_SPECS): Likewise but map to -mdsp.
* doc/invoke.texi (-march=@var{arch}): Add interaptiv.

From-SVN: r226065

9 years ago[AArch64] PR target/63521 Define REG_ALLOC_ORDER
Jiong Wang [Wed, 22 Jul 2015 11:41:10 +0000 (11:41 +0000)]
[AArch64] PR target/63521 Define REG_ALLOC_ORDER

2015-07-22  Jiong Wang  <jiong.wang@arm.com>

gcc/
  PR target/63521
  * config/aarch64/aarch64.h (REG_ALLOC_ORDER): Define.
  (HONOR_REG_ALLOC_ORDER): Define.

From-SVN: r226064

9 years agolinux-atomic.c (<asm/unistd.h>): Remove #include.
Chung-Lin Tang [Wed, 22 Jul 2015 11:39:30 +0000 (11:39 +0000)]
linux-atomic.c (<asm/unistd.h>): Remove #include.

2015-07-22  Chung-Lin Tang  <cltang@codesourcery.com>

libgcc/
* config/nios2/linux-atomic.c (<asm/unistd.h>): Remove #include.
(EFAULT,EBUSY,ENOSYS): Delete unused #defines.

From-SVN: r226063

9 years agore PR tree-optimization/66952 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
Richard Biener [Wed, 22 Jul 2015 11:31:50 +0000 (11:31 +0000)]
re PR tree-optimization/66952 (wrong code at -O2 and -O3 on x86_64-linux-gnu)

2015-07-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66952
* tree-ssa-ifcombine.c (pass_tree_ifcombine::execute): For
blocks we end up executing unconditionally reset all SSA
info such as range and alignment.
* tree-ssanames.h (reset_flow_sensitive_info): Declare.
* tree-ssanames.c (reset_flow_sensitive_info): New function.

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

From-SVN: r226062

9 years agoaarch64-simd.md (vec_store_lanesoi_lane<mode>): Fix typo in attribute.
Charles Baylis [Wed, 22 Jul 2015 10:56:40 +0000 (10:56 +0000)]
aarch64-simd.md (vec_store_lanesoi_lane<mode>): Fix typo in attribute.

2015-07-22  Charles Baylis  <charles.baylis@linaro.org>

* config/aarch64/aarch64-simd.md (vec_store_lanesoi_lane<mode>): Fix
typo in attribute.

From-SVN: r226061

9 years agogenmatch.c (parser::parse_result): Properly handle match with result operands and...
Richard Biener [Wed, 22 Jul 2015 10:48:11 +0000 (10:48 +0000)]
genmatch.c (parser::parse_result): Properly handle match with result operands and conditions.

2015-07-22  Richard Biener  <rguenther@suse.de>

* genmatch.c (parser::parse_result): Properly handle
match with result operands and conditions.

From-SVN: r226060

9 years agore PR target/63870 ([Aarch64] [ARM] Errors in use of NEON intrinsics are reported...
Charles Baylis [Wed, 22 Jul 2015 10:44:16 +0000 (10:44 +0000)]
re PR target/63870 ([Aarch64] [ARM] Errors in use of NEON intrinsics are reported incorrectly)

gcc/ChangeLog:

2015-07-22  Charles Baylis  <charles.baylis@linaro.org>

PR target/63870
* config/aarch64/aarch64-builtins.c (enum aarch64_type_qualifiers):
Add qualifier_struct_load_store_lane_index.
(aarch64_types_loadstruct_lane_qualifiers): Use
qualifier_struct_load_store_lane_index for lane index argument for
last argument.
(aarch64_types_storestruct_lane_qualifiers): Ditto.
(builtin_simd_arg): Add SIMD_ARG_STRUCT_LOAD_STORE_LANE_INDEX.
(aarch64_simd_expand_args): Add new argument describing mode of
builtin. Check lane bounds for arguments with
SIMD_ARG_STRUCT_LOAD_STORE_LANE_INDEX.
(aarch64_simd_expand_builtin): Emit error for incorrect lane indices
if marked with SIMD_ARG_STRUCT_LOAD_STORE_LANE_INDEX.
(aarch64_simd_expand_builtin): Handle arguments with
qualifier_struct_load_store_lane_index. Pass machine mode of builtin to
aarch64_simd_expand_args.
* config/aarch64/aarch64-simd-builtins.def: Declare ld[234]_lane and
vst[234]_lane with BUILTIN_VALLDIF.
* config/aarch64/aarch64-simd.md:
(aarch64_vec_load_lanesoi_lane<mode>): Use VALLDIF iterator. Perform
endianness reversal on lane index.
(aarch64_vec_load_lanesci_lane<mode>): Ditto.
(aarch64_vec_load_lanesxi_lane<mode>): Ditto.
(vec_store_lanesoi_lane<mode>): Use VALLDIF iterator.
(vec_store_lanesci_lane<mode>): Ditto.
(vec_store_lanesxi_lane<mode>): Ditto.
(aarch64_ld2_lane<mode>): Use VALLDIF iterator. Remove endianness
reversal of lane index.
(aarch64_ld3_lane<mode>): Ditto.
(aarch64_ld4_lane<mode>): Ditto.
(aarch64_st2_lane<mode>): Ditto.
(aarch64_st3_lane<mode>): Ditto.
(aarch64_st4_lane<mode>): Ditto.
* config/aarch64/arm_neon.h (__LD2_LANE_FUNC): Rename mode parameter
to qmode. Add new mode parameter. Update uses.
        (__LD3_LANE_FUNC): Ditto.
(__LD4_LANE_FUNC): Ditto.
(__ST2_LANE_FUNC): Ditto.
(__ST3_LANE_FUNC): Ditto.
(__ST4_LANE_FUNC): Ditto.

gcc/testsuite/ChangeLog:

2015-07-22  Charles Baylis  <charles.baylis@linaro.org>

        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld2q_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld3q_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vld4q_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst2q_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst3q_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4_lane_u8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_f32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_f64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_p8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_s16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_s32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_s64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_s8_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_u16_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_u32_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_u64_indices_1.c: New
test.
        * gcc.target/aarch64/advsimd-intrinsics/vst4q_lane_u8_indices_1.c: New
test.

From-SVN: r226059

9 years agoinvoke.texi (Language Independent Options): Rename node to Diagnostic Message Formatt...
Jonathan Wakely [Wed, 22 Jul 2015 09:00:16 +0000 (10:00 +0100)]
invoke.texi (Language Independent Options): Rename node to Diagnostic Message Formatting Options.

* doc/invoke.texi (Language Independent Options): Rename node to
Diagnostic Message Formatting Options.

From-SVN: r226058

9 years agoDaily bump.
GCC Administrator [Wed, 22 Jul 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r226057

9 years agodecl.c (grokdeclarator): For an erroneous template parameter propagate error_mark_nod...
Paolo Carlini [Tue, 21 Jul 2015 20:51:28 +0000 (20:51 +0000)]
decl.c (grokdeclarator): For an erroneous template parameter propagate error_mark_node as type.

/cp
2015-07-21  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (grokdeclarator): For an erroneous template parameter
propagate error_mark_node as type.

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

* g++.dg/template/crash81.C: Update.

From-SVN: r226054

9 years agore PR ipa/66424 (wrong code at -O2 and -O3 on x86_64-linux-gnu in 32-bit mode)
Vladimir Makarov [Tue, 21 Jul 2015 19:54:23 +0000 (19:54 +0000)]
re PR ipa/66424 (wrong code at -O2 and -O3 on x86_64-linux-gnu in 32-bit mode)

2015-07-21  Vladimir Makarov  <vmakarov@redhat.com>

PR ipa/66424.
* lra-remat.c (operand_to_remat): Prevent using insns with input
subregs processed separately by IRA.

2015-07-21  Vladimir Makarov  <vmakarov@redhat.com>

PR ipa/66424.
* gcc.target/i386/pr66424.c: New.

From-SVN: r226053

9 years agossa-iterators.h (has_zero_uses, [...]): Implement as straight loops.
Andrew MacLeod [Tue, 21 Jul 2015 19:15:13 +0000 (19:15 +0000)]
ssa-iterators.h (has_zero_uses, [...]): Implement as straight loops.

2015-07-21  Andrew MacLeod  <amacleod@redhat.com>

* ssa-iterators.h (has_zero_uses, has_single_use): Implement as
straight loops.
(single_imm_use): Check for iterator node.
(num_imm_uses): Likewise.
* tree-ssa-operands.c (has_zero_uses_1): Delete.
(single_imm_use_1): Check for iterator node.

From-SVN: r226051

9 years agoconfigure.ac: Add check for new options in isl-0.15.
Mike Frysinger [Tue, 21 Jul 2015 18:33:35 +0000 (18:33 +0000)]
configure.ac: Add check for new options in isl-0.15.

* configure.ac: Add check for new options in isl-0.15.
* config.in, configure: Rebuilt.
* graphite-blocking.c: Include <isl/constraint.h>
* graphite-interchange.c,  graphite-poly.c: Likewise.
* graphhite-scop-detection.c, graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* graphite-isl-ast-to-gimple.c: Include <isl/constraint.h> and
<isl/union_set.h>.
* graphite-dependences.c: Include <isl/constraint.h>.
(max_number_of_out_dimensions): Returns isl_stat.
(extend_schedule_1): Likewise
(extend_schedule): Corresponding changes.
* graphite-optimize-isl.c: Include <isl/constraint.h> and
<isl/union_set.h>.
(getSingleMap): Change return type of isl_stat.
(optimize_isl): Conditionally use
isl_options_set_schedule_serialize_sccs.
* graphite-poly.h (isl_stat, isl_stat_ok): Define fallbacks
if not HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS.

Co-Authored-By: Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
From-SVN: r226050

9 years agore PR target/66956 ([avr] Using 32*32=64 multiplicatiion (umulsidi3) for 32=32*32...
Georg-Johann Lay [Tue, 21 Jul 2015 17:25:48 +0000 (17:25 +0000)]
re PR target/66956 ([avr] Using 32*32=64 multiplicatiion (umulsidi3) for 32=32*32 without MUL.)

PR target/66956
* config/avr/avr-dimode.md (<extend_u>mulsidi3_insn)
(<extend_u>mulsidi3): Don't use if !AVR_HAVE_MUL.

From-SVN: r226046

9 years agothumb-bitfld1.c (foo): Add explicit return type.
Alex Velenko [Tue, 21 Jul 2015 14:29:08 +0000 (14:29 +0000)]
thumb-bitfld1.c (foo): Add explicit return type.

2015-07-21  Alex Velenko  <Alex.Velenko@arm.com>

* gcc.target/arm/thumb-bitfld1.c (foo): Add explicit return type.

From-SVN: r226043

9 years agore PR tree-optimization/66948 (Performance regression in bit manipulation code)
Richard Biener [Tue, 21 Jul 2015 14:03:57 +0000 (14:03 +0000)]
re PR tree-optimization/66948 (Performance regression in bit manipulation code)

2015-07-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66948
* genmatch.c (capture_info::walk_match): Also recurse to
captures.  Properly compute expr state from captures of
captures.
* match.pd: Add single-use guards to
(X & C2) >> C1 into (X >> C1) & (C2 >> C1) transform.

From-SVN: r226041

9 years agotarget.c (gomp_offload_image_to_device): Rename to ...
Nathan Sidwell [Tue, 21 Jul 2015 13:30:06 +0000 (13:30 +0000)]
target.c (gomp_offload_image_to_device): Rename to ...

libgomp/
* target.c (gomp_offload_image_to_device): Rename to ...
(gomp_load_image_to_device): ... here.
(GOMP_offload_register): Adjust call.
(gomp_init_device): Likewise.
(gomp_unload_image_from_device): New.  Broken out of ...
(GOMP_offload_unregister): ... here.  Call it.
(gomp_unload_device): New.
* libgomp.h (gomp_unload_device): Declare.
* oacc-init.c (acc_shutdown_1): Unload from device before deleting
mem maps.

gcc/
* config/nvptx/mkoffload.c (process): Add static destructor call.

From-SVN: r226039

9 years agoFix r225926's broken testcase
Mikael Morin [Tue, 21 Jul 2015 11:33:15 +0000 (11:33 +0000)]
Fix r225926's broken testcase

gcc/testsuite/
PR fortran/61831
* gfortran.dg/derived_constructor_comps_6.f90: Fix dg directive.
Drop address sanitization.

From-SVN: r226038

9 years agosplit-live-ranges-for-shrink-wrap.c (dg-skip-if): Skip -march=armv4t.
Alex Velenko [Tue, 21 Jul 2015 10:33:42 +0000 (10:33 +0000)]
split-live-ranges-for-shrink-wrap.c (dg-skip-if): Skip -march=armv4t.

2015-07-21  Alex Velenko  <Alex.Velenko@arm.com>
gcc/testsuite/
        * gcc.target/arm/split-live-ranges-for-shrink-wrap.c (dg-skip-if):
Skip -march=armv4t.
        (dg-additional-options): Set armv5t flag.

From-SVN: r226036

9 years agoFix ChangeLog of r225926 (PR fortran/61831)
Mikael Morin [Tue, 21 Jul 2015 10:03:00 +0000 (10:03 +0000)]
Fix ChangeLog of r225926 (PR fortran/61831)

From-SVN: r226033

9 years agounpack-be-order.c: Use -Wno-shift-overflow.
Marek Polacek [Tue, 21 Jul 2015 10:01:53 +0000 (10:01 +0000)]
unpack-be-order.c: Use -Wno-shift-overflow.

* gcc.dg/vmx/unpack-be-order.c: Use -Wno-shift-overflow.
* gcc.dg/vmx/unpack.c: Likewise.
* gcc.target/powerpc/quad-atomic.c: Likewise.

From-SVN: r226032

9 years ago[match.pd] PR middle-end/66915 Restrict A - B -> A + (-B) to non-fixed-point types
Kyrylo Tkachov [Tue, 21 Jul 2015 08:26:32 +0000 (08:26 +0000)]
[match.pd] PR middle-end/66915 Restrict A - B -> A + (-B) to non-fixed-point types

PR middle-end/66915
* match.pd (A - B -> A + (-B)): Don't allow folding
when type if a fixed-point type.

From-SVN: r226028

9 years agoDaily bump.
GCC Administrator [Tue, 21 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r226026

9 years agorl78-real.md (andqi3_real): Expand operands for clr1.
DJ Delorie [Mon, 20 Jul 2015 23:21:43 +0000 (19:21 -0400)]
rl78-real.md (andqi3_real): Expand operands for clr1.

* config/rl78/rl78-real.md (andqi3_real): Expand operands for clr1.
(iorqi3_real): Likewise for set1.

From-SVN: r226023

9 years ago* include/bits/c++config: Fix abi_tag in special modes.
Jason Merrill [Mon, 20 Jul 2015 22:39:54 +0000 (18:39 -0400)]
* include/bits/c++config: Fix abi_tag in special modes.

From-SVN: r226022

9 years agoi386.c (ix86_md_asm_adjust): Handle DImode dest_mode for !TARGET_64BIT.
Uros Bizjak [Mon, 20 Jul 2015 18:52:12 +0000 (20:52 +0200)]
i386.c (ix86_md_asm_adjust): Handle DImode dest_mode for !TARGET_64BIT.

* config/i386/i386.c (ix86_md_asm_adjust): Handle DImode dest_mode
for !TARGET_64BIT.

testsuite/ChangeLog:

* gcc.target/i386/asm-flag-5.c (f_ll): New.

From-SVN: r226017

9 years agoadd missing changelog
Aditya Kumar [Mon, 20 Jul 2015 18:05:16 +0000 (18:05 +0000)]
add missing changelog

From-SVN: r226015