platform/upstream/linaro-gcc.git
8 years ago * cgraphbuild.c (compute_call_stmt_bb_frequency): Use
hubicka [Mon, 12 Oct 2015 06:08:06 +0000 (06:08 +0000)]
* cgraphbuild.c (compute_call_stmt_bb_frequency): Use
counts when these are more informative.

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

8 years ago * tree-profile.c (tree_profiling): Do not clear
hubicka [Mon, 12 Oct 2015 06:01:37 +0000 (06:01 +0000)]
* tree-profile.c (tree_profiling): Do not clear
pure/const when not instrumenting.
(pass tree_profile): Add dump of symtab.

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

8 years ago * fold-const.c (fold_comparsion): Pass OEP_ADDRESS_OF when comparing
hubicka [Mon, 12 Oct 2015 05:26:47 +0000 (05:26 +0000)]
* fold-const.c (fold_comparsion): Pass OEP_ADDRESS_OF when comparing
addresses.
(fold_addr_of_array_ref_difference): Likewise.

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

8 years ago[PATCH] Refactoring FSM bits into their own file
law [Mon, 12 Oct 2015 01:17:51 +0000 (01:17 +0000)]
[PATCH] Refactoring FSM bits into their own file
* tree-ssa-threadedge.c (fsm_find_thread_path): Moved from here into
tree-ssa-threadbackward.c.
(fsm_find_control_statement_thread_paths): Likewise.
(thread_through_normal_block): Break out FSM bits and move them
into a new function in tree-ssa-threadbackward.c.  Call new function
instead.
Minimize header file usage.
* tree-ssa-threadbackward.h: New file.
* tree-ssa-threadbackward.c: Likewise.
* Makefile.in (OBJS): Add tree-ssa-threadbackward.o

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

8 years agoDaily bump.
gccadmin [Mon, 12 Oct 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

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

8 years agoTest for __cxa_thread_atexit_impl when cross-compiling libstdc++ for GNU targets.
jsm28 [Sun, 11 Oct 2015 22:34:28 +0000 (22:34 +0000)]
Test for __cxa_thread_atexit_impl when cross-compiling libstdc++ for GNU targets.

I noticed that when testing glibc with a cross compiler I got

UNSUPPORTED: nptl/tst-thread_local1

because the libstdc++-v3 configuration for cross compiling defaulted
to __cxa_thread_atexit_impl not being available.  This patch fixes
GLIBCXX_CROSSCONFIG to run the same test (for the case covering
targets with glibc) for __cxa_thread_atexit_impl as for native
compilation, just as it runs most of the other tests done for native
compilation (for these targets, it's not possible to build libstdc++
without already having built libc, so link tests are OK).

Tested with no regressions for cross to arm-none-linux-gnueabi.

* crossconfig.m4 (GLIBCXX_CROSSCONFIG) <*-linux* | *-uclinux* |
*-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu | *-cygwin*>: Check for
__cxa_thread_atexit_impl.
* configure: Regenerate.

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

8 years ago * config/alpha/alpha.h (ALPHA_ROUND): Implement using ROUND_UP macro.
uros [Sun, 11 Oct 2015 15:41:17 +0000 (15:41 +0000)]
* config/alpha/alpha.h (ALPHA_ROUND): Implement using ROUND_UP macro.

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

8 years agobb-reorder: Improve the simple algorithm for -Os (PR67864)
segher [Sun, 11 Oct 2015 09:03:09 +0000 (09:03 +0000)]
bb-reorder: Improve the simple algorithm for -Os (PR67864)

As the PR points out, the "simple" reorder algorithm makes bigger code
than the STC algorithm did, for -Os, for x86.  I now tested it for many
different targets and it turns out to be worse everywhere.

This simple patch tunes "simple" a bit; this makes it better than STC
almost everywhere.  The only exceptions (for the targets where I have
results) are x86 and mn10300.  For those targets it may be best to switch
the default algorithm for -Os to STC.

2015-10-11  Segher Boessenkool  <segher@kernel.crashing.org>

PR rtl-optimization/67864
* gcc/bb-reorder (reorder_basic_blocks_simple): Prefer existing
fallthrough edges for conditional jumps.  Don't sort candidate
edges if not optimizing for speed.

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

8 years agoAdd bdver4 for multiversioning and fix AMD model detection.
vekumar [Sun, 11 Oct 2015 08:06:14 +0000 (08:06 +0000)]
Add bdver4 for multiversioning and fix AMD model detection.

2015-10-09  Venkataramanan kumar <venkataramanan.kumar@amd.com>

        * config/i386/cpuinfo.c (get_amd_cpu): Detect bdver4.
        (__cpu_indicator_init): Fix model selection for AMD CPUs.

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

8 years agoalways define REVERSE_CONDITION
tbsaunde [Sun, 11 Oct 2015 00:48:28 +0000 (00:48 +0000)]
always define REVERSE_CONDITION

gcc/ChangeLog:

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

* defaults.h (REVERSE_CONDITION): New default definition.
* jump.c (reversed_comparison_code_parts): Adjust.

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

8 years agoremove unneeded #if for HARD_FRAME_POINTER_IS_ARG_POINTER
tbsaunde [Sun, 11 Oct 2015 00:48:22 +0000 (00:48 +0000)]
remove unneeded #if for HARD_FRAME_POINTER_IS_ARG_POINTER

gcc/ChangeLog:

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

* builtins.c (expand_builtin_setjmp_receiver): Don't use #if to
check HARD_FRAME_POINTER_IS_ARG_POINTER.

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

8 years agoalways define FRAME_ADDR_RTX
tbsaunde [Sun, 11 Oct 2015 00:48:17 +0000 (00:48 +0000)]
always define FRAME_ADDR_RTX

gcc/ChangeLog:

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

* defaults.h (FRAME_ADDR_RTX): New default definition.
* builtins.c (expand_builtin_return_addr): Adjust.

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

8 years agoalways define DYNAMIC_CHAIN_ADDRESS
tbsaunde [Sun, 11 Oct 2015 00:48:11 +0000 (00:48 +0000)]
always define DYNAMIC_CHAIN_ADDRESS

gcc/ChangeLog:

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

* defaults.h (DYNAMIC_CHAIN_ADDRESS): New default definition.
* builtins.c (expand_builtin_return_addr): Adjust.

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

8 years agoalways define SETUP_FRAME_ADDRESSES
tbsaunde [Sun, 11 Oct 2015 00:48:02 +0000 (00:48 +0000)]
always define SETUP_FRAME_ADDRESSES

gcc/ChangeLog:

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

* defaults.h (SETUP_FRAME_ADDRESSES): New default definition.
* builtins.c (expand_builtin_return_addr): Adjust.
* doc/tm.texi: Likewise.
* doc/tm.texi.in: Likewise.
* except.c (expand_builtin_unwind_init): Likewise.

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

8 years agoalways define INITIAL_FRAME_ADDRESS_RTX
tbsaunde [Sun, 11 Oct 2015 00:47:52 +0000 (00:47 +0000)]
always define INITIAL_FRAME_ADDRESS_RTX

gcc/ChangeLog:

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

* builtins.c (expand_builtin_return_addr): Adjust.
* defaults.h (INITIAL_FRAME_ADDRESS_RTX): New default definition.

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

8 years agoDaily bump.
gccadmin [Sun, 11 Oct 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * tree.c (type_with_interoperable_signedness): New.
hubicka [Sat, 10 Oct 2015 19:44:07 +0000 (19:44 +0000)]
* tree.c (type_with_interoperable_signedness): New.
(gimple_canonical_types_compatible_p): Use it.
* tree.h (type_with_interoperable_signedness): Declare

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

8 years ago * tree.c (type_with_interoperable_signedness): New.
hubicka [Sat, 10 Oct 2015 19:43:49 +0000 (19:43 +0000)]
* tree.c (type_with_interoperable_signedness): New.
(gimple_canonical_types_compatible_p): Use it.
* tree.h (type_with_interoperable_signedness): Declare

* lto.c (hash_canonical_type): Honor
type_with_interoperable_signedness.

* gfortran.dg/lto/bind_c-2_0.f90: New testcase.
* gfortran.dg/lto/bind_c-2_1.c: New testcase.
* gfortran.dg/lto/bind_c-3_0.f90: New testcase.
* gfortran.dg/lto/bind_c-3_1.c: New testcase.
* gfortran.dg/lto/bind_c-4_0.f90: New testcase.
* gfortran.dg/lto/bind_c-4_1.c: New testcase.
* gfortran.dg/lto/bind_c-5_0.f90: New testcase.
* gfortran.dg/lto/bind_c-5_1.c: New testcase.

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

8 years ago * fold-const.c (operand_equal_p): Document OEP_ADDRESS_OF
hubicka [Sat, 10 Oct 2015 19:37:47 +0000 (19:37 +0000)]
* fold-const.c (operand_equal_p): Document OEP_ADDRESS_OF
and OEP_CONSTANT_ADDRESS_OF; skip type compatibility checks
when OEP_ADDRESS_OF is se.

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

8 years agoadd dump of data dependences
spop [Sat, 10 Oct 2015 14:53:16 +0000 (14:53 +0000)]
add dump of data dependences

2015-10-07  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-dependences.c (scop_get_dependences): Add dump of the
                data dependence graph.
                * graphite-poly.c (print_isl_union_map): New.
                (debug_isl_union_map): New.
                * graphite-poly.h (print_isl_union_map): Declare.
                (debug_isl_union_map): Declare.

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

8 years agoclean up debug functions
spop [Sat, 10 Oct 2015 14:53:10 +0000 (14:53 +0000)]
clean up debug functions

2015-10-07  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

        * graphite-poly.c (print_iteration_domain): Remove verbosity.
        Remove OpenScop formatting.
        (print_iteration_domains): Same.
        (debug_iteration_domain): Same.
        (debug_iteration_domains): Same.
        (print_pdr): Same.
        (debug_pdr): Same.
        (dump_gbb_cases): Same.
        (dump_gbb_conditions): Same.
        (print_pdrs): Same.
        (debug_pdrs): Same.
        (print_pbb_body): Same.
        (print_pbb): Same.
        (print_scop_params): Same.
        (print_scop_context): Same.
        (print_scop): Same.
        (debug_pbb_domain): Same.
        (debug_pbb): Same.
        (debug_scop_context): Same.
        (debug_scop): Same.
        (debug_scop_params): Same.
        * graphite-poly.h: Same.
        * graphite.c (graphite_transform_loops): Same.

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

8 years agoremove an unneeded as_a<rtx_insn *> ()
tbsaunde [Sat, 10 Oct 2015 14:32:56 +0000 (14:32 +0000)]
remove an unneeded as_a<rtx_insn *> ()

gcc/ChangeLog:

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

* function.c (stack_protect_epilogue): Remove as_a<rtx_insn *> ()
call that isn't needed.

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

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

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

8 years agoRe: [PATCH] Update SSA_NAME manager to use two lists
law [Fri, 9 Oct 2015 21:16:16 +0000 (21:16 +0000)]
Re: [PATCH] Update SSA_NAME manager to use two lists

* tree-ssanames.c (flush_ssaname_freelist): Use splice and truncate
rather than moving each name to the freelist individually.

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

8 years ago2015-10-09 Steve Ellcey <sellcey@imgtec.com>
sje [Fri, 9 Oct 2015 17:12:26 +0000 (17:12 +0000)]
2015-10-09  Steve Ellcey  <sellcey@imgtec.com>

* gcc.target/mips/mips.exp (mips_option_groups): Add -mframe-header-opt
and -mno-frame-header-opt options.
* gcc.target/mips/frame-header-1.c: New file.
* gcc.target/mips/frame-header-2.c: New file.
* gcc.target/mips/frame-header-3.c: New file.

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

8 years ago2015-10-05 Steve Ellcey <sellcey@imgtec.com>
sje [Fri, 9 Oct 2015 17:10:42 +0000 (17:10 +0000)]
2015-10-05  Steve Ellcey  <sellcey@imgtec.com>

* config.gcc (mips*-*-*): Add frame-header-opt.o to extra_objs.
* frame-header-opt.c: New file.
* config/mips/mips-proto.h (mips_register_frame_header_opt):
Add prototype.
* config/mips/mips.c (mips_compute_frame_info): Check
optimize_call_stack flag.
(mips_option_override): Register new frame_header_opt pass.
  (mips_frame_info, mips_int_mask, mips_shadow_set,
machine_function): Move these types to...
* config/mips/mips.h: here.
(machine_function): Add does_not_use_frame_header and
optimize_call_stack fields.
* config/mips/t-mips (frame-header-opt.o): Add new make rule.
* doc/invoke.texi (-mframe-header-opt, -mno-frame-header-opt):
Document new flags.
* config/mips/mips.opt (mframe-header-opt): Add new option.

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

8 years ago * config/i386/i386.c
uros [Fri, 9 Oct 2015 16:53:37 +0000 (16:53 +0000)]
* config/i386/i386.c
(expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Use
ROUND_DOWN where applicable.

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

8 years ago[PATCH] [6/n] Fix minor SSA_NAME leaks
law [Fri, 9 Oct 2015 16:34:00 +0000 (16:34 +0000)]
[PATCH] [6/n] Fix minor SSA_NAME leaks

* tree-vect-stmts.c (free_stmt_vec_info): Free the LHS of the
correct statement.

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

8 years ago[PATCH][ARM]Add earlyclobber modifier for neon_(vtrn, vuzp, vzip)<mode>_insn rtx
renlin [Fri, 9 Oct 2015 16:22:33 +0000 (16:22 +0000)]
[PATCH][ARM]Add earlyclobber modifier for neon_(vtrn, vuzp, vzip)<mode>_insn rtx
pattern.

gcc/

2015-10-09  Renlin Li  <renlin.li@arm.com>

* config/arm/neon.md (neon_vuzp<mode>_insn): Add & modifier for
        operands[0] and operands[2].
        (neon_vtrn<mode>_insn): Likewise.
        (neon_vzip<mode>_insn): Likewise.

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

8 years ago[PATCH V3][GCC] Algorithmic optimization in match and simplify
jgreenhalgh [Fri, 9 Oct 2015 16:08:35 +0000 (16:08 +0000)]
[PATCH V3][GCC] Algorithmic optimization in match and simplify

gcc/ChangeLog

* match.pd: ((X inner_op C0) outer_op C1) New pattern.
((X & C2) << C1): Expand to...
(X {&,^,|} C2 << C1): ...This.
((X & C2) >> C1): Expand to...
(X {&,^,|} C2 >> C1): ...This.

gcc/testsuite/ChangeLog

* gcc.dg/tree-ssa/forwprop-33.c: New.

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

8 years agoAVX512: Fix embedded rounding/SAE specifier position.
afomin [Fri, 9 Oct 2015 15:57:06 +0000 (15:57 +0000)]
AVX512: Fix embedded rounding/SAE specifier position.

gcc/

PR target/67895
* config/i386/sse.md (define_insn "sse_cvtsi2ss<round_name>"):
Adjust embedded rounding/SAE specifier position.
(define_insn "sse_cvtsi2ssq<round_name>"): Likewise.
(define_insn "cvtusi2<ssescalarmodesuffix>32<round_name>"): Likewise.
(define_insn "cvtusi2<ssescalarmodesuffix>64<round_name>"): Likewise.
(define_insn "sse2_cvtsi2sdq<round_name>"): Likewise.
(define_insn "avx512dq_rangep<mode><mask_name><round_saeonly_name>"):
Likewise.
(define_insn "avx512dq_ranges<mode><round_saeonly_name>"): Likewise.

gcc/testsuite

PR target/67895
* gcc.target/i386/avx512dq-vrangepd-1.c: Adjust assembly regexp.
* gcc.target/i386/avx512dq-vrangeps-1.c: Likewise.
* gcc.target/i386/avx512dq-vrangesd-1.c: Likewise.
* gcc.target/i386/avx512dq-vrangess-1.c: Likewise.
* gcc.target/i386/avx512f-vcvtsi2sd64-1.c: Likewise.
* gcc.target/i386/avx512f-vcvtsi2ss-1.c: Likewise.
* gcc.target/i386/avx512f-vcvtsi2ss64-1.c: Likewise.
* gcc.target/i386/avx512f-vcvtusi2sd64-1.c: Likewise.
* gcc.target/i386/avx512f-vcvtusi2ss-1.c: Likewise.
* gcc.target/i386/avx512f-vcvtusi2ss64-1.c: Likewise.

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

8 years agoTestsuite: add dg-{begin|end}-multiline-output commands
dmalcolm [Fri, 9 Oct 2015 13:55:23 +0000 (13:55 +0000)]
Testsuite: add dg-{begin|end}-multiline-output commands

This patch adds an easy way to write tests for expected multiline
output.  For example we can test carets and underlines for
a particular diagnostic with:

/* { dg-begin-multiline-output "" }
 typedef struct _GMutex GMutex;
                ^~~~~~~
   { dg-end-multiline-output "" } */

multiline.exp is used by prune.exp; hence we need to load it before
prune.exp via *load_gcc_lib* for the testsuites of the various
non-"gcc" support libraries (e.g. boehm-gc).

gcc/testsuite/ChangeLog:
* lib/multiline.exp: New file.
* lib/prune.exp: Load multiline.exp.
(prune_gcc_output): Call into multiline.exp to handle any
multiline output directives.
* lib/libgo.exp: Load multiline.exp before prune.exp, using
load_gcc_lib.

boehm-gc/ChangeLog:
* testsuite/lib/boehm-gc.exp: Load multiline.exp before
prune.exp, using load_gcc_lib.

libatomic/ChangeLog:
* testsuite/lib/libatomic.exp: Load multiline.exp before
prune.exp, using load_gcc_lib.

libgomp/ChangeLog:
* testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
using load_gcc_lib.

libitm/ChangeLog:
* testsuite/lib/libitm.exp: Load multiline.exp before prune.exp,
using load_gcc_lib.

libvtv/ChangeLog:
* testsuite/lib/libvtv.exp: Load multiline.exp before prune.exp,
using load_gcc_lib.

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

8 years ago[PR 67794] Also remap SSA_NAMEs defined in ASMs in IPA-SRA
jamborm [Fri, 9 Oct 2015 13:13:38 +0000 (13:13 +0000)]
[PR 67794] Also remap SSA_NAMEs defined in ASMs in IPA-SRA

2015-10-09  Martin Jambor  <mjambor@suse.cz>

tree-optimization/67794
* tree-sra.c (replace_removed_params_ssa_names): Do not distinguish
between types of state,ents but accept original definitions as a
parameter.
(ipa_sra_modify_function_body): Use FOR_EACH_SSA_DEF_OPERAND to
iterate over definitions.

testsuite/
        * gcc.dg/ipa/ipa-sra-10.c: Nw test.
        * gcc.dg/torture/pr67794.c: Likewise.

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

8 years ago * config/rs6000/rs6000.c (rs6000_offload_options): New.
jnorris [Fri, 9 Oct 2015 12:35:58 +0000 (12:35 +0000)]
* config/rs6000/rs6000.c (rs6000_offload_options): New.
(TARGET_OFFLOAD_OPTIONS): New.

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

8 years ago[PR67891] don't test is_gimple_reg after parm expansion
aoliva [Fri, 9 Oct 2015 12:18:58 +0000 (12:18 +0000)]
[PR67891] don't test is_gimple_reg after parm expansion

for  gcc/ChangeLog

PR middle-end/67891
* cfgexpand.c (set_parm_rtl): Drop is_gimple_reg test.

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

8 years ago[PR67766] reorder handling of parallels, concats and promoted values in return
aoliva [Fri, 9 Oct 2015 12:18:40 +0000 (12:18 +0000)]
[PR67766] reorder handling of parallels, concats and promoted values in return

for  gcc/ChangeLog

PR middle-end/67766
* function.c (expand_function_end): Move return value
promotion past the handling of PARALLELs and CONCATs.

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

8 years ago[PR67828] don't unswitch on default defs of non-parms
aoliva [Fri, 9 Oct 2015 12:18:24 +0000 (12:18 +0000)]
[PR67828] don't unswitch on default defs of non-parms

for  gcc/ChangeLog

PR rtl-optimizatoin/67828
* tree-ssa-loop-unswitch.c: Include tree-ssa.h.
(tree_may_unswitch_on): Don't unswitch on expressions
involving undefined values.

for  gcc/testsuite/ChangeLog

PR rtl-optimization/67828
* gcc.dg/torture/pr67828.c: New.

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

8 years ago* MAINTAINERS (Write After Approval): Add myself.
marxin [Fri, 9 Oct 2015 11:49:49 +0000 (11:49 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

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

8 years ago2015-10-09 Richard Biener <rguenther@suse.de>
rguenth [Fri, 9 Oct 2015 11:47:31 +0000 (11:47 +0000)]
2015-10-09  Richard Biener  <rguenther@suse.de>

* genmatch.c (print_operand): Fix formatting.
(dt_node::append_simplify): Warn for multiple simplifiers
that match the same pattern.
* match.pd (log (exp @0)): Remove duplicates.

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

8 years agofix Changelog entry removed at revision 228479
chrbr [Fri, 9 Oct 2015 11:20:23 +0000 (11:20 +0000)]
fix Changelog entry removed at revision 228479

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

8 years agoMissed ChangeLog for previous libstdc++-v3 commit
redi [Fri, 9 Oct 2015 11:19:04 +0000 (11:19 +0000)]
Missed ChangeLog for previous libstdc++-v3 commit

Add include/experimental/bits dir

* include/experimental/erase_if.h: Move to ...
* include/experimental/bits/erase_if.h: New.
* include/experimental/fs_dir.h: Move to ...
* include/experimental/bits/fs_dir.h: New.
* include/experimental/fs_fwd.h: Move to ...
* include/experimental/bits/fs_fwd.h: New.
* include/experimental/fs_ops.h: Move to ...
* include/experimental/bits/fs_ops.h: New.
* include/experimental/fs_path.h: Move to ...
* include/experimental/bits/fs_path.h: New.
* include/experimental/string_view.tcc: Move to ...
* include/experimental/bits/string_view.tcc: New.
* include/Makefile.am: Add include/experimental/bits sub-directory.
* include/Makefile.in: Regenerate.
* include/experimental/filesystem: Adjust includes.
* include/experimental/map: Likewise.
* include/experimental/set: Likewise.
* include/experimental/string_view: Likewise.
* include/experimental/unordered_map: Likewise.
* include/experimental/unordered_set: Likewise.

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

8 years agoAdd include/experimental/bits dir
redi [Fri, 9 Oct 2015 11:11:54 +0000 (11:11 +0000)]
Add include/experimental/bits dir

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

8 years ago[AArch64] Handle literal pools for functions > 1 MiB in size.
ramana [Fri, 9 Oct 2015 10:58:06 +0000 (10:58 +0000)]
[AArch64] Handle literal pools for functions > 1 MiB in size.

This patch fixes the issue in PR63304 where we have
functions that are > 1MiB. The idea is to use adrp / ldr or adrp / add
instructions to address the literal pools under the use of a command line
option. I would like to turn this on by default on trunk but keep this
disabled by default for the release branches in order to get some
serious testing for this feature while it bakes on trunk.

As a follow-up I would like to try and see if estimate_num_insns or
something else can give us a heuristic to turn this on for "large" functions.
After all the number of incidences of this are quite low in real life,
so may be we should look to restrict this use as much as possible on the
grounds that this code generation implies an extra integer register for
addressing for every floating point and vector constant and I don't think
that's great in code that already may have high register pressure.

Tested on aarch64-none-elf with no regressions. A previous
version was bootstrapped and regression tested.

Applied to trunk.

regards
Ramana

2015-09-14  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

     PR target/63304
     * config/aarch64/aarch64.c (aarch64_expand_mov_immediate): Handle
     nopcrelative_literal_loads.
     (aarch64_classify_address): Likewise.
     (aarch64_constant_pool_reload_icode): Define.
     (aarch64_secondary_reload): Handle secondary reloads for
     literal pools.
     (aarch64_override_options): Handle nopcrelative_literal_loads.
     (aarch64_classify_symbol): Handle nopcrelative_literal_loads.
     * config/aarch64/aarch64.md (aarch64_reload_movcp<GPF_TF:mode><P:mode>):
     Define.
     (aarch64_reload_movcp<VALL:mode><P:mode>): Likewise.
     * config/aarch64/aarch64.opt (mpc-relative-literal-loads): New option.
     * config/aarch64/predicates.md (aarch64_constant_pool_symref): New
     predicate.
     * doc/invoke.texi (mpc-relative-literal-loads): Document.

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

8 years ago[Patch PR target/67366 1/2] [ARM] - Add movmisalignhi / si patterns
ramana [Fri, 9 Oct 2015 10:53:31 +0000 (10:53 +0000)]
[Patch PR target/67366 1/2] [ARM] - Add movmisalignhi / si patterns

This adds movmisalignhi and movmisalignsi expanders when unaligned
access is allowed by the architecture. This allows the mid-end
to expand to misaligned loads and stored.

Compared code generated for the Linux kernel and
it changes code generation for a handful of files all for the better
basically by reducing the stack usage.

Tested by :

1. armhf bootstrap and regression test - no regressions.
2.. arm-none-eabi cross build and regression test for

    {-marm/-march=armv7-a/-mfpu=vfpv3-d16/-mfloat-abi=softfp}
    {-mthumb/-march=armv8-a/-mfpu=crypto-neon-fp-armv8/-mfloat-abi=hard}
    {-marm/-mcpu=arm7tdmi/-mfloat-abi=soft}
    {-mthumb/-mcpu=arm7tdmi/-mfloat-abi=soft}

Will apply to trunk once 2/2 is approved.

regards
Ramana

2015-10-09  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        PR target/67366
        * config/arm/arm.md (movmisalign<mode>): New.
        * config/arm/iterators.md (HSI): New.

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

8 years ago* MAINTAINERS (Write After Approval): Add myself.
afomin [Fri, 9 Oct 2015 10:50:51 +0000 (10:50 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

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

8 years ago * gcc-interface/Make-lang.in: Make sure that GNAT1_OBJS and not just
ebotcazou [Fri, 9 Oct 2015 08:13:33 +0000 (08:13 +0000)]
* gcc-interface/Make-lang.in: Make sure that GNAT1_OBJS and not just
GNAT1_ADA_OBJS are compiled only after generated files are created.

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

8 years ago2015-10-09 Richard Biener <rguenther@suse.de>
rguenth [Fri, 9 Oct 2015 08:12:18 +0000 (08:12 +0000)]
2015-10-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/67891
* gimple-match.h (gimple_simplified_result_is_gimple_val):
New helper.
(gimple_resimplify1): Declare.
(gimple_resimplify2): Likewise.
(gimple_resimplify3): Likewise.
* gimple-match-head.c (gimple_resimplify1): Export.
(gimple_resimplify2): Likewise.
(gimple_resimplify3): Likewise.
(maybe_push_res_to_seq): Use gimple_simplified_result_is_gimple_val.
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Likewise.
* tree-ssa-sccvn.c (visit_reference_op_load): Use gimple_resimplify1
to avoid creating stmts without VN info.

* gcc.dg/tree-ssa/pr67891.c: New testcase.

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

8 years ago[PATCH] [5/n] Fix minor SSA_NAME leaks
law [Fri, 9 Oct 2015 05:09:56 +0000 (05:09 +0000)]
[PATCH] [5/n] Fix minor SSA_NAME leaks

* value-prof.c (gimple_ic): Add missing calls to unlink_stmt_vdef
and release_ssa_name in two places.
(gimple_stringop_fixed_value): Similarly.

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

8 years agoDaily bump.
gccadmin [Fri, 9 Oct 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * ipa-icf.c (sem_item::compare_symbol_references): Fix use
hubicka [Thu, 8 Oct 2015 23:20:06 +0000 (23:20 +0000)]
* ipa-icf.c (sem_item::compare_symbol_references): Fix use
of availability.

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

8 years ago [PATCH] [4/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 23:19:35 +0000 (23:19 +0000)]
[PATCH] [4/n] Fix minor SSA_NAME leaks

        * tree-ssa-loop-im.c (rewrite_bittest): Add missing call to
        release_defs.

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

8 years ago[PATCH] [4/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 23:18:03 +0000 (23:18 +0000)]
[PATCH] [4/n] Fix minor SSA_NAME leaks

* tree-ssa-loop-im.c (rewrite_bittest): Add missing call to
release_defs.

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

8 years ago[PATCH] [3/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 20:47:46 +0000 (20:47 +0000)]
[PATCH] [3/n] Fix minor SSA_NAME leaks

* tree-stdarg.c (expand_ifn_va_arg_1): Add missing call to
unlink_stmt_vdef and release_ssa_name_fn.

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

8 years ago[PATCH] [2/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 20:27:38 +0000 (20:27 +0000)]
[PATCH] [2/n] Fix minor SSA_NAME leaks

* tree-ssa-dse.c (dse_optimize_stmt): Add missing call to
release_defs.

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

8 years agoliboffloadmic: Add missed checks for malloc and strdup return values
iverbin [Thu, 8 Oct 2015 19:04:43 +0000 (19:04 +0000)]
liboffloadmic: Add missed checks for malloc and strdup return values

liboffloadmic/
* runtime/offload_engine.cpp (Engine::init_process): Use strdup instead
of sizeof+malloc+sprintf, check for return value.
* runtime/offload_env.cpp (MicEnvVar::get_env_var_kind): Check for
strdup return value.
* runtime/offload_host.cpp (__offload_init_library_once): Check for
strdup return value.  Fix size calculation of COI_HOST_THREAD_AFFINITY.
* runtime/emulator/coi_device.cpp (COIProcessWaitForShutdown): Check for
malloc return value.

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

8 years agoRound up the SSE register save area only if needed
hjl [Thu, 8 Oct 2015 18:57:11 +0000 (18:57 +0000)]
Round up the SSE register save area only if needed

There is is no point to round up the SSE register save area to 16 bytes if
the incoming stack boundary is less than 16 bytes.

* config/i386/i386.c (ix86_compute_frame_layout): Round up the
SSE register save area to 16 bytes only if the incoming stack
boundary is no less than 16 bytes.

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

8 years ago[PATCH] [1/n] Fix minor SSA_NAME leaks
law [Thu, 8 Oct 2015 17:50:44 +0000 (17:50 +0000)]
[PATCH] [1/n] Fix minor SSA_NAME leaks

* tree-ssa-phiopt.c (factor_out_conversion): Add missing calls to
release_ssa_name.  Fix typo in comment.

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

8 years ago * config/nvptx/nvptx.h (struct machine_function): Add comment.
nathan [Thu, 8 Oct 2015 17:31:36 +0000 (17:31 +0000)]
* config/nvptx/nvptx.h (struct machine_function): Add comment.
* config/nvptx/nvptx.c (nvptx_declare_function_name): Functions
may return pointer as well as in memory.
(nvptx_output_return): Likewise.

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

8 years agoMove sqrt and cbrt simplifications to match.pd
rsandifo [Thu, 8 Oct 2015 16:54:37 +0000 (16:54 +0000)]
Move sqrt and cbrt simplifications to match.pd

This patch moves the sqrt and cbrt simplification rules to match.pd.
builtins.c now only does the constant folding.

Bootstrapped & regression-tested on x86_64-linux-gnu.

gcc/
* builtins.c (fold_builtin_sqrt, fold_builtin_cbrt): Delete.
(fold_builtin_1): Update accordingly.  Handle constant arguments here.
* match.pd: Add rules previously handled by fold_builtin_sqrt
and fold_builtin_cbrt.

gcc/testsuite/
* gcc.dg/builtins-47.c: Test the optimized dump instead.

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

8 years agoMake tree_expr_nonnegative_warnv_p recurse into SSA names
rsandifo [Thu, 8 Oct 2015 16:49:24 +0000 (16:49 +0000)]
Make tree_expr_nonnegative_warnv_p recurse into SSA names

The upcoming patch to move sqrt and cbrt simplifications to match.pd
caused a regression because the (abs @0)->@0 simplification didn't
trigger for:

        (abs (convert (abs X)))

The simplification is based on tree_expr_nonnegative_p, which at
the moment just gives up if it sees an SSA_NAME.

This patch makes tree_expr_nonnegative_p recurse into SSA name
definitions, but limits the depth of recursion to a small number
for the reason mentioned in the comment (adapted from an existing
comment in gimple_val_nonnegative_real_p).  The patch reuses code
in tree-vrp.c, moving it to gimple-fold.c.  It also replaces calls
to gimple_val_nonnegative_real_p with calls to tree_expr_nonnegative_p.

A knock-on effect is that we can now prove _i_589 < 0 is false in
sequences like:

      i_1917 = ASSERT_EXPR <i_1075, i_1075 == 0>;
      _i_589 = (const int) i_1917;
      _i_1507 = ASSERT_EXPR <_i_589, _i_589 < 0>;

This defeats an assert in tree-vrp.c that ASSERT_EXPR conditions
are never known to be false.  Previously the assert only ever used
local knowledge and so would be limited to cases like x != x for
integer x.  Now that we use global knowledge it's possible to prove
the assertion condition is false in blocks that are in practice
unreachable.  The patch therefore removes the assert.

Bootstrapped & regression-tested on x86_64-linux-gnu.  I didn't write
a specific test because this is already covered by the testsuite if
the follow-on patch is also applied.

gcc/
* params.def (PARAM_MAX_SSA_NAME_QUERY_DEPTH): New param.
* doc/invoke.texi (--param max-ssa-name-query-depth): Document.
* fold-const.h (tree_unary_nonnegative_warnv_p)
(tree_single_nonnegative_warnv_p, tree_call_nonnegative_warnv_p)
(tree_expr_nonnegative_warnv_p): Add depth parameters.
* fold-const.c: Include gimple-fold.h and params.h.
(tree_ssa_name_nonnegative_warnv_p): New function.
(tree_unary_nonnegative_warnv_p, tree_binary_nonnegative_warnv_p)
(tree_single_nonnegative_warnv_p, tree_call_nonnegative_warnv_p)
(tree_invalid_nonnegative_warnv_p, tree_expr_nonnegative_warnv_p):
Add a depth parameter and increment it for recursive calls to
tree_expr_nonnegative_warnv_p.  Use tree_ssa_name_nonnegative_warnv_p
to handle SSA names.
* gimple-fold.h (gimple_val_nonnegative_real_p): Delete.
(gimple_stmt_nonnegative_warnv_p): Declare.
* tree-vrp.c (remove_range_assertions): Remove assert that condition
cannot be proven false.
(gimple_assign_nonnegative_warnv_p, gimple_call_nonnegative_warnv_p)
(gimple_stmt_nonnegative_warnv_p): Move to...
* gimple-fold.c: ...here.  Add depth parameters and pass them
down to the tree routines.  Accept statements that aren't
assignments or calls but just return false for them.
(gimple_val_nonnegative_real_p): Delete.
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Use
tree_expr_nonnegative_p instead of gimple_val_nonnegative_real_p.
Check HONOR_NANs first.

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

8 years agoFix Solaris bootstrap
jamborm [Thu, 8 Oct 2015 16:30:06 +0000 (16:30 +0000)]
Fix Solaris bootstrap

2015-10-08  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (meet_with_1): Make the argument of abs signed.  Remove
unnecessary MIN.

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

8 years ago * cp-tree.h (SIMPLE_TARGET_EXPR_P): New.
jason [Thu, 8 Oct 2015 16:14:03 +0000 (16:14 +0000)]
* cp-tree.h (SIMPLE_TARGET_EXPR_P): New.
* init.c (get_nsdmi): Use it.
* typeck2.c (massage_init_elt): Use it.

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

8 years agoformat
jason [Thu, 8 Oct 2015 16:13:57 +0000 (16:13 +0000)]
format

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

8 years ago * zh_TW.po: Update.
jsm28 [Thu, 8 Oct 2015 15:55:25 +0000 (15:55 +0000)]
* zh_TW.po: Update.

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

8 years ago PR c++/67557
jason [Thu, 8 Oct 2015 14:42:02 +0000 (14:42 +0000)]
PR c++/67557

* call.c (is_base_field_ref): New.
(unsafe_copy_elision_p): New.
(build_over_call): Use it.

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

8 years agogcc/
ienkovich [Thu, 8 Oct 2015 14:28:53 +0000 (14:28 +0000)]
gcc/

* tree-vect-loop.c (vect_analyze_loop_operations): Skip virtual phi
in the tail of outer-loop.

gcc/testsuite/

* gcc.dg/vect/vect-outer-simd-3.c: New test.

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

8 years ago* config/rs6000/rs6000.c (rs6000_xcoff_debug_unwind_info): Always
dje [Thu, 8 Oct 2015 14:19:57 +0000 (14:19 +0000)]
* config/rs6000/rs6000.c (rs6000_xcoff_debug_unwind_info): Always
return UI_NONE.

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

8 years agogcc/
ienkovich [Thu, 8 Oct 2015 13:14:09 +0000 (13:14 +0000)]
gcc/

* tree-ssa-loop-unswitch.c: Include "gimple-iterator.h" and
"cfghooks.h", add prototypes for introduced new functions.
(tree_ssa_unswitch_loops): Use from innermost loop iterator, move all
checks on ability of loop unswitching to tree_unswitch_single_loop;
invoke tree_unswitch_single_loop or tree_unswitch_outer_loop depending
on innermost loop check.
(tree_unswitch_single_loop): Add all required checks on ability of
loop unswitching under zero recursive level guard.
(tree_unswitch_outer_loop): New function.
(find_loop_guard): Likewise.
(empty_bb_without_guard_p): Likewise.
(used_outside_loop_p): Likewise.
(get_vop_from_header): Likewise.
(hoist_guard): Likewise.
(check_exit_phi): Likewise.

gcc/testsuite/

* gcc.dg/loop-unswitch-2.c: New test.
* gcc.dg/loop-unswitch-3.c: Likewise.
* gcc.dg/loop-unswitch-4.c: Likewise.

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

8 years ago * tree-ssa-reassoc.c (dump_ops_vector): Print newline after each
mpolacek [Thu, 8 Oct 2015 10:20:22 +0000 (10:20 +0000)]
* tree-ssa-reassoc.c (dump_ops_vector): Print newline after each
ops element.

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

8 years agoDump only required dse1 file
vries [Thu, 8 Oct 2015 09:03:51 +0000 (09:03 +0000)]
Dump only required dse1 file

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

* gcc.dg/dse.c: Only dump in dse1 pass.
* gcc.dg/tree-ssa/pr30375.c: Same.

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

8 years agoS/390: Use create_tmp_var_raw in s390_atomic_assign_expand_fenv.
krebbel [Thu, 8 Oct 2015 07:49:41 +0000 (07:49 +0000)]
S/390: Use create_tmp_var_raw in s390_atomic_assign_expand_fenv.

gcc/ChangeLog:

2015-10-08  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

PR c/65345
* config/s390/s390.c (s390_atomic_assign_expand_fenv): Use
create_tmp_var_raw instead of create_tmp_var.

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

8 years agoDaily bump.
gccadmin [Thu, 8 Oct 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago * expr.c (store_expr_with_bounds): Handle aggregate moves from
hubicka [Wed, 7 Oct 2015 22:54:35 +0000 (22:54 +0000)]
* expr.c (store_expr_with_bounds): Handle aggregate moves from
BLKmode.
* gimple-expr.c (useless_type_conversion_p): Do not use TYPE_CANONICAL
to define gimple type system; compare aggregates only by size.

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

8 years agoRe: [PATCH] Improve DOM's optimization of control statements
law [Wed, 7 Oct 2015 21:56:18 +0000 (21:56 +0000)]
Re: [PATCH] Improve DOM's optimization of control statements

* tree-ssa-dom.c (optimize_stmt): Don't set LOOPS_NEED_FIXUP here.
* tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges): Do it
here instead.  Tighten test to avoid setting LOOPS_NEED_FIXUP
unnecessarily.

@@ -1848,12 +1848,6 @@ optimize_stmt (basic_block bb, gimple_stmt_iterator si,

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

8 years agogather bbs and conditions in a single walk through dominators
spop [Wed, 7 Oct 2015 19:25:35 +0000 (19:25 +0000)]
gather bbs and conditions in a single walk through dominators

Clean up the function to build scop's basic blocks and the function
that gathers the conditions under which a basic block is executed.  We remove
one traversal of the dominator tree.

This refactoring was triggered by the need of a vec<bb> of all the basic blocks
in a region.  We will use that vector in a patch that removes the out-of-ssa
translation of scalar dependences: we will iterate through the basic blocks of a
region to record scalar dependences crossing bbs or going out of the region.

The patch passes bootstrap and regtest on x86_64-linux.

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-dependences.c (scop_get_dependences): Do not use SCOP_BBS.
                * graphite-isl-ast-to-gimple.c (get_max_schedule_dimensions): Same.
                (generate_isl_schedule): Same.
                * graphite-optimize-isl.c (scop_get_domains): Same.
                (apply_schedule_map_to_scop): Same.
                * graphite-poly.c (print_iteration_domains): Same.
                (remove_gbbs_in_scop): Same.
                (new_scop): Same.
                (free_scop): Same.
                (print_scop): Same.
                * graphite-poly.h (struct scop): Rename bbs to pbbs.
                (SCOP_BBS): Remove.
                * graphite-scop-detection.c (compare_bb_depths): Remove.
                (graphite_sort_dominated_info): Remove.
                (try_generate_gimple_bb): Move out of scop_detection.
                (all_non_dominated_preds_marked_p): Remove.
                (build_scop_bbs_1): Remove.
                (build_scop_bbs): Remove.
                (nb_pbbs_in_loops): Do not use SCOP_BBS.
                (find_scop_parameters): Same.
                (sese_dom_walker): Rename gather_bbs.
                (before_dom_children): Call try_generate_gimple_bb and collect gbb
                and pbb.
                (build_scops): Call gather_bbs.
                * graphite-sese-to-poly.c (build_scop_scattering): Do not use SCOP_BBS.
                (add_conditions_to_constraints): Same.
                (build_scop_iteration_domain): Same.
                (build_scop_drs): Same.
                (new_pbb_from_pbb): Same.
                * sese.c (new_sese_info): Create bbs.
                * sese.h (struct sese_info_t): Add bbs.

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

8 years ago* config/rs6000/xcoff.h (ASM_PREFERRED_EH_DATA_FORMAT): Use 64-bit
dje [Wed, 7 Oct 2015 18:35:23 +0000 (18:35 +0000)]
* config/rs6000/xcoff.h (ASM_PREFERRED_EH_DATA_FORMAT): Use 64-bit
encoding in 64-bit mode.

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

8 years ago compiler: Don't make temporaries for constant operands.
ian [Wed, 7 Oct 2015 17:47:45 +0000 (17:47 +0000)]
compiler: Don't make temporaries for constant operands.

    Fixes golang/go#12616.

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

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

8 years ago PR target/66697
uros [Wed, 7 Oct 2015 17:42:09 +0000 (17:42 +0000)]
PR target/66697
* config/i386/i386.c (ix86_option_override_internal): Always use
8-byte minimum stack boundary in 64-bit mode.
(ix86_compute_frame_layout): Remove assert on INCOMING_STACK_BOUNDARY.
(ix86_emit_save_reg_using_mov): Support unaligned SSE store.
Add a REG_CFA_EXPRESSION note if needed.
(ix86_emit_restore_sse_regs_using_mov): Support unaligned SSE load.
(ix86_handle_force_align_arg_pointer_attribute): New.
(ix86_minimum_incoming_stack_boundary): Remove TARGET_64BIT check.
(ix86_attribute_table): Set ix86_force_align_arg_pointer_string
with ix86_handle_force_align_arg_pointer_attribute.
* config/i386/i386.h (MIN_STACK_BOUNDARY): Set to BITS_PER_WORD.

testsuite/ChangeLog:

PR target/66697
* gcc.target/i386/20060512-1.c: Remove ia32 requirement.
(PUSH, POP): New defines.
(sse2_test): Use PUSH and POP to misalign runtime stack.
* gcc.target/i386/20060512-2.c: Remove ia32 requirement.

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

8 years ago PR go/67874
ian [Wed, 7 Oct 2015 17:22:08 +0000 (17:22 +0000)]
PR go/67874
    net, runtime: Call C library fcntl function rather than syscall.Syscall.

    Not all systems define a fcntl syscall; some only have fcntl64.

    Fixes GCC PR go/67874.

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

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

8 years ago * testsuite/lib/atomic-dg.exp (atomic_link_flags): Move flag setting
jnorris [Wed, 7 Oct 2015 17:09:46 +0000 (17:09 +0000)]
* testsuite/lib/atomic-dg.exp (atomic_link_flags): Move flag setting
to atomic_init. (atomic_init): Restrict flags usage.

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

8 years agoremove unused code
spop [Wed, 7 Oct 2015 16:19:09 +0000 (16:19 +0000)]
remove unused code

2015-10-07  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-scop-detection.c (parameter_index_in_region): Remove
                use of SESE_ADD_PARAMS.
                (find_scop_parameters): Same.
                * sese.c (new_sese_info): Same.
                * sese.h (struct sese_info_t): Remove add_params.
                (SESE_ADD_PARAMS): Remove.

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

8 years agomove graphite bookkeeping from sese to sese_info
spop [Wed, 7 Oct 2015 15:40:17 +0000 (15:40 +0000)]
move graphite bookkeeping from sese to sese_info

2015-10-06  Aditya Kumar  <aditya.k7@samsung.com>
                Sebastian Pop  <s.pop@samsung.com>

                * graphite-isl-ast-to-gimple.c (translate_isl_ast_to_gimple): Use
                an sese_info_p.
                (copy_def): Same.
                (copy_internal_parameters): Same.
                (translate_isl_ast_to_gimple): Use an sese_l.
                (build_iv_mapping): Same.
                * graphite-poly.c (new_sese): Rename new_sese_info.
                (free_sese): Rename free_sese_info.
                * graphite-poly.h (struct scop): Use an sese_info_p.
                (scop_set_region): Same.
                * graphite-scop-detection.c (struct sese_l): Moved...
                (get_entry_bb): Moved...
                (get_exit_bb): Moved...
                (parameter_index_in_region_1): Use an sese_info_p.
                (parameter_index_in_region): Same.
                (scan_tree_for_params): Same.
                (find_params_in_bb): Same.
                (sese_dom_walker): Use an sese_l.
                * graphite-sese-to-poly.c (remove_invariant_phi): Same.
                (reduction_phi_p): Same.
                (parameter_index_in_region_1): Use an sese_info_p.
                (propagate_expr_outside_region): Use an sese_l.
                * graphite.c: Replace uses of SCOP_REGION.
                * sese.c (sese_record_loop): Use an sese_info_p.
                (build_sese_loop_nests): Same.
                (sese_build_liveouts_use): Same.
                (sese_build_liveouts_bb): Same.
                (sese_build_liveouts_bb): Same.
                (sese_bad_liveouts_use): Same.
                (sese_reset_debug_liveouts_bb): Same.
                (sese_build_liveouts): Same.
                (new_sese): Renamed new_sese_info.
                (free_sese): Renamed free_sese_info.
                (set_rename): Use an sese_info_p.
                (graphite_copy_stmts_from_block): Same.
                (copy_bb_and_scalar_dependences): Same.
                (outermost_loop_in_sese_1): Use an sese_l.
                (outermost_loop_in_sese): Same.
                (if_region_set_false_region): Use an sese_info_p.
                (move_sese_in_condition): Same.
                (scalar_evolution_in_region): Use an sese_l.
                * sese.h (struct sese_l): ... here.
                (SESE_ENTRY): Remove.
                (SESE_ENTRY_BB): Remove.
                (SESE_EXIT): Remove.
                (SESE_EXIT_BB): Remove.
                (sese_contains_loop): Use an sese_info_p.
                (sese_nb_params): Same.
                (bb_in_sese_p): Use an sese_l.
                (stmt_in_sese_p): Same.
                (defined_in_sese_p): Same.
                (loop_in_sese_p): Same.
                (sese_loop_depth): Same.
                (struct ifsese_s): Use an sese_info_p.
                (gbb_loop_at_index): Use an sese_l.
                (nb_common_loops): Same.
                (scev_analyzable_p): Same.

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

8 years ago PR sanitizer/67867
mpolacek [Wed, 7 Oct 2015 14:09:05 +0000 (14:09 +0000)]
PR sanitizer/67867
* search.c (accessible_p): Initialize OTYPE to NULL_TREE.

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

8 years agoDefine x86 CALL_USED_REGISTERS_MASK
hjl [Wed, 7 Oct 2015 13:47:12 +0000 (13:47 +0000)]
Define x86 CALL_USED_REGISTERS_MASK

Define x86 CALL_USED_REGISTERS_MASK used on x86 CALL_USED_REGISTERS.

* config/i386/i386.c (ix86_conditional_register_usage): Use
CALL_USED_REGISTERS_MASK.
* config/i386/i386.h (CALL_USED_REGISTERS_MASK): New macro.

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

8 years agoCheck $READELF_FOR_TARGET for readelf in configure
hjl [Wed, 7 Oct 2015 13:45:21 +0000 (13:45 +0000)]
Check $READELF_FOR_TARGET for readelf in configure

Similar to as, ld, nm and objdump, gcc configure should check
$READELF_FOR_TARGET for readelf.

PR bootstrap/67385
* configure.ac (gcc_cv_readelf): Check $READELF_FOR_TARGET.
* configure: Regenerated.

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

8 years agogcc/fortran/ChangeLog:
vehre [Wed, 7 Oct 2015 10:58:46 +0000 (10:58 +0000)]
gcc/fortran/ChangeLog:

2015-10-07  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/65889
* trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Handle pointer to and
on stack class objects as sizeof parameter.

gcc/testsuite/ChangeLog:

2015-10-07  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/65889
* gfortran.dg/sizeof_5.f90: New test.

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

8 years agoMerge ix86_maybe_switch_abi with ix86_set_current_function
hjl [Wed, 7 Oct 2015 10:30:12 +0000 (10:30 +0000)]
Merge ix86_maybe_switch_abi with ix86_set_current_function

ix86_maybe_switch_abi is called to late during RTL expansion and we
use the stale information from compilation of the previous function.
aggregate_value_p uses call_used_regs.  aggregate_value_p is used by
IPA and return value optimization, which are called before
ix86_maybe_switch_abi is called.  This patch merges ix86_maybe_switch_abi
with ix86_set_current_function.

PR target/67850
* config/i386/i386.c (ix86_maybe_switch_abi): Merged with ...
(ix86_set_current_function): This.
(TARGET_EXPAND_TO_RTL_HOOK): Removed.

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

8 years agoCheck in forgotten test for fortran/65766
lkrupp [Wed, 7 Oct 2015 09:21:58 +0000 (09:21 +0000)]
Check in forgotten test for fortran/65766

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

8 years ago2015-10-07 Richard Biener <rguenther@suse.de>
rguenth [Wed, 7 Oct 2015 09:04:48 +0000 (09:04 +0000)]
2015-10-07  Richard Biener  <rguenther@suse.de>

* tree-vectorizer.h (stmt_vec_info_vec): Use vec<stmt_vec_info>.
(vinfo_for_stmt): Adjust.
(set_vinfo_for_stmt): Likewise.
* tree-vectorizer.c (stmt_vec_info_vec): Likewise.
* tree-vect-stmts.c (free_stmt_vec_info_vec): Likewise.
* tree-vect-loop.c (new_loop_vec_info): Remove special-casing
of inner loop.
(vect_analyze_loop_1): Remove.
(vect_analyze_loop_form_1): Avoid building a loop_vec_info for
inner loop when vectorizing an outer loop by splitting out from ...
(vect_analyze_loop_form): ... here.

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

8 years agoFix PR c/65345 for arm
ramana [Wed, 7 Oct 2015 08:37:35 +0000 (08:37 +0000)]
Fix PR c/65345 for arm

2015-10-07  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR c/65345
* config/arm/arm-builtins.c (arm_atomic_assign_expand_fenv):
Use create_tmp_var_raw instead of create_tmp_var.

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

8 years agoCache reals for 1/4, 1/6 and 1/9
rsandifo [Wed, 7 Oct 2015 08:09:45 +0000 (08:09 +0000)]
Cache reals for 1/4, 1/6 and 1/9

We have a global 1/2 and a cached 1/3, but recalculate 1/4, 1/6 and 1/9
each time we need them.  That seems a bit arbitrary and makes the folding
code more noisy (especially once it's moved to match.pd).

This patch caches the other three constants too.  Bootstrapped &
regression-tested on x86_64-linux-gnu.

gcc/
* real.h (dconst_quarter, dconst_sixth, dconst_ninth): New macros.
(dconst_quarter_ptr, dconst_sixth_ptr, dconst_ninth_ptr): Declare.
* real.c (CACHED_FRACTION): New helper macro.
(dconst_third_ptr): Use it.
(dconst_quarter_ptr, dconst_sixth_ptr, dconst_ninth_ptr): New.
* builtins.c (fold_builtin_sqrt): Use dconst_quarter and
dconst_sixth.
(fold_builtin_cbrt): Use dconst_sixth and dconst_ninth.

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

8 years ago * cp-gimplify.c (genericize_if_stmt): Use protected_set_expr_location.
mpolacek [Wed, 7 Oct 2015 06:52:45 +0000 (06:52 +0000)]
* cp-gimplify.c (genericize_if_stmt): Use protected_set_expr_location.
(genericize_cp_loop): Likewise.
* decl.c (cxx_maybe_build_cleanup): Likewise.
* parser.c (cp_parser_binary_expression): Likewise.
(cp_parser_omp_for_loop): Likewise.
(cp_parser_omp_construct): Likewise.
* semantics.c (finish_transaction_stmt): Likewise.
(build_transaction_expr): Likewise.

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

8 years ago[PATCH][PR tree-optimization/67816] Fix jump threading when DOM removes conditionals...
law [Wed, 7 Oct 2015 02:25:57 +0000 (02:25 +0000)]
[PATCH][PR tree-optimization/67816] Fix jump threading when DOM removes conditionals in jump threading path

PR tree-optimization/67816
* tree-ssa-threadupdate.h (remove_jump_threads_including): Renamed
from remove_jump_threads_starting_at.  Accept an edge rather than
a basic block.
* tree-ssa-threadupdate.c (removed_edges): New hash table.
(remove_jump_threads_including): Note edges that get removed from
the CFG for later pruning of jump threading paths including them.
(thread_through_all_blocks): Remove paths which include edges that
have been removed.
* tree-ssa-dom.c (optimize_stmt): Call remove_jump_threads_including
on each outgoing edges when optimizing away a control statement.

* gcc.c-torture/compile/pr67816.c: New test.

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

8 years agoreorg.c: use vec<rtx_insn *> instead of rtx_insn_list for the delay insn list
tbsaunde [Wed, 7 Oct 2015 02:11:17 +0000 (02:11 +0000)]
reorg.c: use vec<rtx_insn *> instead of rtx_insn_list for the delay insn list

gcc/ChangeLog:

2015-10-06  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* reorg.c (emit_delay_sequence): Store list of delay slot insns
in a vector instead of rtx_insn_list.
(add_to_delay_list): Likewise.
(delete_from_delay_slot): Likewise.
(optimize_skip): Likewise.
(redirect_with_delay_list_safe_p): Likewise.
(check_annul_list_true_false): Likewise.
(steal_delay_list_from_target): Likewise.
(steal_delay_list_from_fallthrough): Likewise.
(redundant_insn): Likewise.
(fill_simple_delay_slots): Likewise.
(fill_slots_from_thread): Likewise.
(fill_eager_delay_slots): Likewise.
(relax_delay_slots): Likewise.

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

8 years ago PR c++/67810
jason [Wed, 7 Oct 2015 01:46:54 +0000 (01:46 +0000)]
PR c++/67810
* parser.c (cp_parser_fold_expr_p): Remove.
(is_binary_op): New.
(cp_parser_fold_expression): Take LHS as parameter.
(cp_parser_primary_expression): Call it after parsing an expression.
(cp_parser_binary_expression, cp_parser_assignment_operator_opt)
(cp_parser_expression): Ignore an operator followed by '...'.
(is_binary_op): New.
* pt.c (tsubst_unary_left_fold, tsubst_binary_left_fold)
(tsubst_unary_right_fold, tsubst_binary_right_fold): Handle errors.

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

8 years agoDaily bump.
gccadmin [Wed, 7 Oct 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

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

8 years ago2015-10-06 Louis Krupp <louis.krupp@zoho.com>
lkrupp [Tue, 6 Oct 2015 23:47:18 +0000 (23:47 +0000)]
2015-10-06  Louis Krupp <louis.krupp@zoho.com>
PR fortran/65766
* resolve.c (gfc_resolve_substring_charlen): For derived type,
use typespec of string component when resolving substring length.

2015-10-06  Louis Krupp     <louis.krupp@zoho.com>

PR fortran/65766
* gfortran.dg/substr_alloc_string_comp_1.f90: New.

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

8 years ago compiler: Record each import as a distinct alias.
ian [Tue, 6 Oct 2015 21:24:17 +0000 (21:24 +0000)]
compiler: Record each import as a distinct alias.

    This patch introduces the Package_alias class which is a
    finer representation of the different between a package and the
    aliases it is imported under.  Each alias keeps track of the location
    of its import statement and how many times that alias has been used.
    This allows the gofrontend to report when a specific import has not
    been used even if a symbol from the package has been used by another
    import.

    Fixes golang/go#12326.

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

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

8 years ago2015-10-06 Sandra Loosemore <sandra@codesourcery.com>
sandra [Tue, 6 Oct 2015 21:10:15 +0000 (21:10 +0000)]
2015-10-06  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.c (nios2_symbol_ref_in_small_data_p):
For -mgpopt=local, also exclude unintialized common symbols.
* doc/invoke.texi (Nios II Options): Document the change.

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

8 years agogcc/ChangeLog:
kugan [Tue, 6 Oct 2015 21:08:05 +0000 (21:08 +0000)]
gcc/ChangeLog:

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

* config/aarch64/iterators.md (vwcore): Add missing cases for
 V4HF/V8HF modes.

gcc/testsuite/ChangeLog:

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

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

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