]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
11 years agoDon't save function_used_regs if it contains all call_used_regs
vries [Fri, 20 Jun 2014 08:01:52 +0000 (08:01 +0000)] 
Don't save function_used_regs if it contains all call_used_regs

2014-06-20  Tom de Vries  <tom@codesourcery.com>

* final.c (collect_fn_hard_reg_usage): Don't save function_used_regs if
it contains all call_used_regs.

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

11 years agoUse function_used_regs variable in collect_fn_hard_reg_usage
vries [Fri, 20 Jun 2014 08:01:41 +0000 (08:01 +0000)] 
Use function_used_regs variable in collect_fn_hard_reg_usage

2014-06-20  Tom de Vries  <tom@codesourcery.com>

* final.c (collect_fn_hard_reg_usage): Add and use variable
function_used_regs.

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

11 years ago * cgraph.h (struct symtab_node): Add field in_init_priority_hash
hubicka [Fri, 20 Jun 2014 07:09:27 +0000 (07:09 +0000)] 
* cgraph.h (struct symtab_node): Add field in_init_priority_hash
(set_init_priority, get_init_priority, set_fini_priority,
get_fini_priority): New methods.
* tree.c (init_priority_for_decl): Remove.
(init_ttree): Do not initialize init priority.
(decl_init_priority_lookup, decl_fini_priority_lookup): Rewrite.
(decl_priority_info): Remove.
(decl_init_priority_insert): Rewrite.
(decl_fini_priority_insert): Rewrite.
* tree.h (tree_priority_map_eq, tree_priority_map_hash,
tree_priority_map_marked_p): Remove.
* lto-cgraph.c (lto_output_node, input_node): Stream init priorities.
* lto-streamer-out.c (hash_tree): Do not hash priorities.
* tree-streamer-out.c (pack_ts_decl_with_vis_value_fields): Do
not output priorities.
(pack_ts_function_decl_value_fields): Likewise.
* tree-streamer-in.c (unpack_ts_decl_with_vis_value_fields): Do
not input priorities.
(unpack_ts_function_decl_value_fields): Likewise.
* symtab.c (symbol_priority_map): Declare.
(init_priority_hash): Declare.
(symtab_unregister_node): Unregister from priority hash, too.
(symtab_node::get_init_priority, cgraph_node::get_fini_priority):
New methods.
(symbol_priority_map_eq, symbol_priority_map_hash): New functions.
(symbol_priority_info): New function.
(symtab_node::set_init_priority, cgraph_node::set_fini_priority):
New methods.
* tree-core.h (tree_priority_map): Remove.

* lto.c (compare_tree_sccs_1): Do not compare priorities.

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

11 years ago * tree-ssa-math-opts.c (do_shift_rotate, find_bswap_or_nop_1): Cast
jakub [Fri, 20 Jun 2014 06:30:19 +0000 (06:30 +0000)] 
* tree-ssa-math-opts.c (do_shift_rotate, find_bswap_or_nop_1): Cast
0xff to uint64_t before shifting it up.

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

11 years ago2014-06-20 Julian Brown <julian@codesourcery.com>
cltang [Fri, 20 Jun 2014 05:38:40 +0000 (05:38 +0000)] 
2014-06-20  Julian Brown  <julian@codesourcery.com>
    Chung-Lin Tang  <cltang@codesourcery.com>

* config/arm/arm.c (arm_output_mi_thunk): Fix offset for
TARGET_THUMB1_ONLY. Add comments.

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

11 years ago2014-06-20 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 20 Jun 2014 05:24:09 +0000 (05:24 +0000)] 
2014-06-20  Tobias Burnus  <burnus@net-b.de>

        PR testsuite/61567
        * gfortran.dg/coarray_collectives_5.f90: Update
        dg-final scan-tree-dump-times.
        * gfortran.dg/coarray_collectives_6.f90: Ditto.

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

11 years agoc-family/ChangeLog
zqchen [Fri, 20 Jun 2014 04:52:11 +0000 (04:52 +0000)] 
c-family/ChangeLog
2014-06-20 Hale Wang <hale.wang@arm.com>

PR lto/61123
* c.opt (fshort-enums): Add to LTO.
* c.opt (fshort-wchar): Likewise.

testsuite/ChangeLog
2014-06-20 Hale Wang <hale.wang@arm.com>

* gcc.target/arm/lto/: New folder to verify the LTO option.
* gcc.target/arm/lto/pr61123-enum-size_0.c: New test case.
* gcc.target/arm/lto/pr61123-enum-size_1.c: Likewise.
* gcc.target/arm/lto/lto.exp: New exp file used to test LTO option.
* lib/lto.exp (object-readelf): New procedure.

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

11 years agoDaily bump.
gccadmin [Fri, 20 Jun 2014 00:16:54 +0000 (00:16 +0000)] 
Daily bump.

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

11 years agoFix aarch64_emit_call_insn return type
vries [Thu, 19 Jun 2014 12:21:13 +0000 (12:21 +0000)] 
Fix aarch64_emit_call_insn return type

2014-06-19  Tom de Vries  <tom@codesourcery.com>

* config/aarch64/aarch64-protos.h (aarch64_emit_call_insn): Change
return type to void.
* config/aarch64/aarch64.c (aarch64_emit_call_insn): Same.

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

11 years ago PR fortran/61454
fxcoudert [Thu, 19 Jun 2014 11:58:55 +0000 (11:58 +0000)] 
PR fortran/61454
* expr.c (scalarize_intrinsic_call): Take care of optional
arguments.
* gfortran.dg/pr61454.f90: New file.

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

11 years ago PR c++/59296
jason [Thu, 19 Jun 2014 09:36:09 +0000 (09:36 +0000)] 
PR c++/59296
* call.c (add_function_candidate): Also set LOOKUP_NO_TEMP_BIND.

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

11 years ago2014-06-19 Zhenqiang Chen <zhenqiang.chen@linaro.org>
zqchen [Thu, 19 Jun 2014 09:04:58 +0000 (09:04 +0000)] 
2014-06-19  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* loop-invariant.c (get_inv_cost): Skip invariants, which are marked
as "move", from depends_on.

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

11 years agogcc/ChangeLog:
xguo [Thu, 19 Jun 2014 07:50:48 +0000 (07:50 +0000)] 
gcc/ChangeLog:

2014-06-19  Terry Guo  <terry.guo@arm.com>

* config/arm/thumb1.md (define_split): Split 64bit constant in earlier
stage.

gcc/testsuite/ChangeLog:

2014-06-19  Terry Guo  <terry.guo@arm.com>

* gcc.target/arm/thumb1-load-64bit-constant-1.c: New test.
* gcc.target/arm/thumb1-load-64bit-constant-2.c: Ditto.
* gcc.target/arm/thumb1-load-64bit-constant-3.c: Ditto.

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

11 years agogcc/fortran/
burnus [Thu, 19 Jun 2014 07:16:34 +0000 (07:16 +0000)] 
gcc/fortran/
2014-06-19  Tobias Burnus  <burnus@net-b.de>

        * trans-intrinsic.c (conv_co_minmaxsum): Fix argument
        passing.

gcc/testsuite/
2014-06-19  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray/collectives_2.f90: Extend
        and make valid.

libgfortran/
2014-06-19  Tobias Burnus  <burnus@net-b.de>

        * caf/single.c (_gfortran_caf_co_sum, _gfortran_caf_co_max,
        _gfortran_caf_co_min): Fix stat setting.

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

11 years agoIgnore gcc_update output
rth [Thu, 19 Jun 2014 00:47:18 +0000 (00:47 +0000)] 
Ignore gcc_update output

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

11 years agoDaily bump.
gccadmin [Thu, 19 Jun 2014 00:16:43 +0000 (00:16 +0000)] 
Daily bump.

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

11 years agors6000: Make cr5 allocatable
segher [Wed, 18 Jun 2014 23:13:40 +0000 (23:13 +0000)] 
rs6000: Make cr5 allocatable

A comment in rs6000.h says "cr5 is not supposed to be used".  I checked
all ABIs, going as far back as PowerOpen (1994), and found no mention
of this.

Also document cr6 is used by some vector instructions.

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

11 years ago PR c++/59296
jason [Wed, 18 Jun 2014 22:13:51 +0000 (22:13 +0000)] 
PR c++/59296
* call.c (add_function_candidate): Set LOOKUP_NO_RVAL_BIND for
ref-qualifier handling.

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

11 years ago PR c++/61507
jason [Wed, 18 Jun 2014 22:13:40 +0000 (22:13 +0000)] 
PR c++/61507
* pt.c (resolve_overloaded_unification): Preserve
ARGUMENT_PACK_EXPLICIT_ARGS.

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

11 years ago PR target/61550
kkojima [Wed, 18 Jun 2014 22:11:55 +0000 (22:11 +0000)] 
PR target/61550
* config/sh/sh.c (prepare_move_operands): Don't process TLS
addresses here if reload in progress or completed.

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

11 years ago2014-06-18 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 18 Jun 2014 20:57:19 +0000 (20:57 +0000)] 
2014-06-18  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (OpenMP): Update refs to OpenMP 4.0.
        * intrinsic.texi (OpenMP Modules): Ditto.

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

11 years agoEnable LRA for MIPS
mpf [Wed, 18 Jun 2014 20:40:34 +0000 (20:40 +0000)] 
Enable LRA for MIPS

gcc/

* config/mips/constraints.md ("d"): BASE_REG_CLASS replaced by
"TARGET_MIPS16 ? M16_REGS : GR_REGS".
* config/mips/mips.c (mips_regno_to_class): Update for M16_SP_REGS.
(mips_regno_mode_ok_for_base_p): Remove use of !strict_p for MIPS16.
(mips_register_priority): New function that implements the target
hook TARGET_REGISTER_PRIORITY.
(mips_spill_class): Likewise for TARGET_SPILL_CLASS.
(mips_lra_p): Likewise for TARGET_LRA_P.
(TARGET_REGISTER_PRIORITY): Define macro.
(TARGET_SPILL_CLASS): Likewise.
(TARGET_LRA_P): Likewise.
* config/mips/mips.h (reg_class): Add M16_SP_REGS and SPILL_REGS
classes.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
(BASE_REG_CLASS): Use M16_SP_REGS.
* config/mips/mips.md (*mul_acc_si): Add alternative tuned for LRA.
New set attribute to enable alternatives depending on the register
allocator used.
(*mul_acc_si_r3900, *mul_sub_si): Likewise.
(*lea64): Disable pattern for MIPS16.
* config/mips/mips.opt (mlra): New option.

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

11 years ago * ChangeLog: Fix whitespace.
uros [Wed, 18 Jun 2014 20:14:08 +0000 (20:14 +0000)] 
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Fix invalid entry.

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

11 years agoAdd support for reloading a frame address with an invalid base
mpf [Wed, 18 Jun 2014 19:50:00 +0000 (19:50 +0000)] 
Add support for reloading a frame address with an invalid base

gcc/

* lra-constraints.c (base_to_reg): New function.
(process_address): Use new function.

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

11 years ago-fuse-caller-save - Enable for AArch64
vries [Wed, 18 Jun 2014 16:09:01 +0000 (16:09 +0000)] 
-fuse-caller-save - Enable for AArch64

2014-05-30  Tom de Vries  <tom@codesourcery.com>

* config/aarch64/aarch64-protos.h (aarch64_emit_call_insn): Declare.
* config/aarch64/aarch64.c
(TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): Redefine as true.
(aarch64_emit_call_insn): New function.
(aarch64_load_symref_appropriately): Use aarch64_emit_call_insn instead
of emit_call_insn.
* config/aarch64/aarch64.md (define_expand "call_internal")
(define_expand "call_value_internal", define_expand "sibcall_internal")
(define_expand "sibcall_value_internal"): New.
(define_expand "call", define_expand "call_value")
(define_expand "sibcall", define_expand "sibcall_value"): Use internal
expand variant and aarch64_emit_call_insn.

* gcc.target/aarch64/fuse-caller-save.c: New test.

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

11 years ago-fuse-caller-save - Enable for ARM
vries [Wed, 18 Jun 2014 15:50:59 +0000 (15:50 +0000)] 
-fuse-caller-save - Enable for ARM

2014-06-18  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* config/arm/arm-protos.h (arm_emit_call_insn): Add bool parameter.
* config/arm/arm.c (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS):
Redefine to true.
(arm_emit_call_insn): Add and use sibcall parameter.  Add IP and CC
clobbers to CALL_INSN_FUNCTION_USAGE.
(define_expand "sibcall_internal")
(define_expand "sibcall_value_internal"): New.
(define_expand "call", define_expand "call_value"): Add argument to
arm_emit_call_insn.
(define_expand "sibcall"): Use sibcall_internal and arm_emit_call_insn.
(define_expand "sibcall_value"): Use sibcall_value_internal and
arm_emit_call_insn.

* gcc.target/arm/fuse-caller-save.c: New test.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:44:45 +0000 (15:44 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.c (__gnu_uldivmod_helper): Remove.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:44:10 +0000 (15:44 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi-v6m.S (__aeabi_uldivmod): Perform division using
__udivmoddi4.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:43:35 +0000 (15:43 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_ldivmod, __aeabi_uldivmod,
push_for_divide, pop_for_divide): Use .cfi_* directives for DWARF
annotations. Fix DWARF information.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:42:53 +0000 (15:42 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_ldivmod): Perform division using
__udivmoddi4, and fixups for negative operands.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:42:21 +0000 (15:42 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_ldivmod): Optimise stack manipulation.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:41:27 +0000 (15:41 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_uldivmod): Perform division using call
to __udivmoddi4.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:40:31 +0000 (15:40 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_uldivmod): Optimise stack pointer
manipulation.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:39:56 +0000 (15:39 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_uldivmod, __aeabi_ldivmod): Add comment
describing register usage on function entry and exit.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 15:38:48 +0000 (15:38 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/bpabi.S (__aeabi_uldivmod): Fix whitespace.
(__aeabi_ldivmod): Fix whitespace.

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

11 years ago* doc/md.texi (Standard Names): Use @itemx for grouped items.
schwab [Wed, 18 Jun 2014 15:01:32 +0000 (15:01 +0000)] 
* doc/md.texi (Standard Names): Use @itemx for grouped items.
Remove blank line after @item.

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

11 years agoPR target/61545
rth [Wed, 18 Jun 2014 14:27:55 +0000 (14:27 +0000)] 
PR target/61545

* config/aarch64/aarch64.md (tlsdesc_small_<PTR>): Clobber CC_REGNUM.

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

11 years ago2014-06-18 Charles Baylis <charles.baylis@linaro.org>
cbaylis [Wed, 18 Jun 2014 13:42:44 +0000 (13:42 +0000)] 
2014-06-18  Charles Baylis  <charles.baylis@linaro.org>

* config/arm/arm.c (neon_vector_mem_operand): Allow register
POST_MODIFY for neon loads and stores.
(arm_print_operand): Output post-index register for neon loads and
stores.

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

11 years ago2014-06-18 Richard Biener <rguenther@suse.de>
rguenth [Wed, 18 Jun 2014 12:30:41 +0000 (12:30 +0000)] 
2014-06-18  Richard Biener  <rguenther@suse.de>

* tree-ssa-dce.c (perform_tree_ssa_dce): Fixup bogus commit.

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

11 years ago2014-06-18 Richard Biener <rguenther@suse.de>
rguenth [Wed, 18 Jun 2014 11:45:17 +0000 (11:45 +0000)] 
2014-06-18  Richard Biener  <rguenther@suse.de>

* tree-pass.h (make_pass_dce_loop): Remove.
* passes.def: Replace pass_dce_loop with pass_dce.
* tree-ssa-dce.c (perform_tree_ssa_dce): If something
changed free niter estimates and reset the scev cache.
(tree_ssa_dce_loop, pass_data_dce_loop, pass_dce_loop,
make_pass_dce_loop): Remove.
* tree-ssa-copy.c: Include tree-ssa-loop-niter.h.
(fini_copy_prop): Return whether something changed.  Always
let substitute_and_fold perform DCE and free niter estimates
and reset the scev cache if so.
(execute_copy_prop): If sth changed schedule cleanup-cfg.
(pass_data_copy_prop): Do not unconditionally schedule
cleanup-cfg or update-ssa.

* gcc.dg/vect/vect.exp: Remove dump-tree-dceloop-* processing.
* gcc.dg/vect/dump-tree-dceloop-pr26359.c: Rename to ...
* gcc.dg/vect/pr26359.c: ... this and adjust appropriately.

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

11 years ago PR tree-optimization/61518
kyukhin [Wed, 18 Jun 2014 11:40:59 +0000 (11:40 +0000)] 
    PR tree-optimization/61518
gcc/
        * tree-if-conv.c (is_cond_scalar_reduction): Add missed check that
        reduction var is used in reduction stmt or phi-function only.

gcc/testsuite/
        * gcc.dg/torture/pr61518.c: New test.

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

11 years ago[ARM] Fix check for __FAST_MATH in arm_neon.h
ktkachov [Wed, 18 Jun 2014 10:56:34 +0000 (10:56 +0000)] 
[ARM] Fix check for __FAST_MATH in arm_neon.h

* config/arm/arm_neon.h (vadd_f32): Change #ifdef to __FAST_MATH.

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

11 years ago2014-06-18 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Wed, 18 Jun 2014 10:43:50 +0000 (10:43 +0000)] 
2014-06-18  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/61517
    * tree-ssa-math-opts.c (find_bswap_or_nop_1): Adapt to return a stmt
    whose rhs's first tree is the source expression instead of the
    expression itself.
    (find_bswap_or_nop): Likewise.
    (bsap_replace): Rename stmt in cur_stmt. Pass gsi by value and src as a
    gimple stmt whose rhs's first tree is the source. In the memory source
    case, move the stmt to be replaced close to one of the original load to
    avoid the problem of a store between the load and the stmt's original
    location.
    (pass_optimize_bswap::execute): Adapt to change in bswap_replace's
    signature.

    gcc/testsuite/
    * gcc.c-torture/execute/bswap-2.c (incorrect_read_le32): New.
    (incorrect_read_be32): Likewise.
    (main): Call incorrect_read_* to test stmt replacement is made by
    bswap at the right place.
    * gcc.c-torture/execute/pr61517.c: New test.

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

11 years agoUse strict_low_part for loading a constant only if it is cheaper
schwab [Wed, 18 Jun 2014 10:37:14 +0000 (10:37 +0000)] 
Use strict_low_part for loading a constant only if it is cheaper

PR rtl-optimization/54555
* postreload.c (move2add_use_add2_insn): Substitute
STRICT_LOW_PART only if it is cheaper.

testsuite/:
PR rtl-optimization/54555
* gcc.target/m68k/pr54555.c: New test.

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

11 years ago * config/i386/i386.md (*sibcall_memory): Rename from *sibcall_intern.
uros [Wed, 18 Jun 2014 10:32:15 +0000 (10:32 +0000)] 
* config/i386/i386.md (*sibcall_memory): Rename from *sibcall_intern.
Do not use unspec as call operand.  Use memory_operand instead of
memory_nox32_operand and add "m" operand constraint.  Disable
pattern for TARGET_X32.
(*sibcall_pop_memory): Ditto.
(*sibcall_value_memory): Ditto.
(*sibcall_value_pop_memory): Ditto.
(sibcall peepholes): Merge SImode and DImode patterns using
W mode iterator.  Use memory_operand instead of memory_nox32_operand.
Disable pattern for TARGET_X32.  Check if eliminated register is
really dead after call insn.  Generate call RTX without unspec operand.
(sibcall_value peepholes): Ditto.
(sibcall_pop peepholes): Fix call insn RTXes.  Use memory_operand
instead of memory_nox32_operand.  Check if eliminated register is
really dead after call insn. Generate call RTX without unspec operand.
(sibcall_value_pop peepholes): Ditto.
* config/i386/predicates.md (memory_nox32_operand): Remove predicate.

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

11 years ago2014-06-18 Terry Guo <terry.guo@arm.com>
xguo [Wed, 18 Jun 2014 10:11:08 +0000 (10:11 +0000)] 
2014-06-18  Terry Guo  <terry.guo@arm.com>

PR target/61544
* config/arm/arm.c (thumb1_reorg): Move to next basic block if we
reach the head.

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

11 years agoFix libstdc++/61536 - Export out of line typeinfo comparison operators
ramana [Wed, 18 Jun 2014 09:44:15 +0000 (09:44 +0000)] 
Fix libstdc++/61536 - Export out of line typeinfo comparison operators

2014-06-18  Paolo Carlini  <paolo.carlini@oracle.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR libstdc++/61536
* config/abi/pre/gnu.ver: Adjust for out of line comparisons.

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

11 years ago2014-06-18 Olivier Hainque <hainque@adacore.com>
hainque [Wed, 18 Jun 2014 09:00:22 +0000 (09:00 +0000)] 
2014-06-18  Olivier Hainque <hainque@adacore.com>

        improve sloc assignment on bind_expr entry/exit code

        gcc/
        * tree-core.h (tree_block): Add an "end_locus" field, allowing
        memorization of the end of block source location.
        * tree.h (BLOCK_SOURCE_END_LOCATION): New accessor.
        * gimplify.c (gimplify_bind_expr): Propagate the block start and
        end source location info we have on the block entry/exit code we
        generate.

        testsuite/
        * gnat.dg/blocklocs.adb: New test.

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

11 years ago2014-06-18 Richard Biener <rguenther@suse.de>
rguenth [Wed, 18 Jun 2014 08:33:44 +0000 (08:33 +0000)] 
2014-06-18  Richard Biener  <rguenther@suse.de>

* common.opt (fssa-phiopt): New option.
* opts.c (default_options_table): Enable -fssa-phiopt with -O1+
but not with -Og.
* tree-ssa-phiopt.c (pass_phiopt): Add gate method.
* doc/invoke.texi (-fssa-phiopt): Document.

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

11 years ago[genattrtab] Fix memory corruption, allocate enough memory for all bypassed reservations
ktkachov [Wed, 18 Jun 2014 08:07:16 +0000 (08:07 +0000)] 
[genattrtab] Fix memory corruption, allocate enough memory for all bypassed reservations

* genattrtab.c (n_bypassed): New variable.
(process_bypasses): Initialise n_bypassed.
Count number of bypassed reservations.
(make_automaton_attrs): Allocate space for bypassed reservations
rather than number of bypasses.

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

11 years ago2014-06-18 Richard Biener <rguenther@suse.de>
rguenth [Wed, 18 Jun 2014 07:58:36 +0000 (07:58 +0000)] 
2014-06-18  Richard Biener  <rguenther@suse.de>

* tree-ssa-propagate.c (replace_phi_args_in): Return whether
we propagated anything.
(substitute_and_fold_dom_walker::before_dom_children): Something
changed if we propagated into PHI arguments.
* tree-ssa-pre.c (eliminate): Always schedule cfg-cleanup if
we removed a stmt.

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

11 years agogcc/
kyukhin [Wed, 18 Jun 2014 07:46:18 +0000 (07:46 +0000)] 
gcc/
* config/i386/i386.c (ix86_reassociation_width): Add alternative for
vector case.
* config/i386/i386.h (TARGET_VECTOR_PARALLEL_EXECUTION): New.
* config/i386/x86-tune.def (X86_TUNE_VECTOR_PARALLEL_EXECUTION): New.
* tree-vect-data-refs.c (vect_shift_permute_load_chain): New.
Introduces alternative way of loads group permutaions.
(vect_transform_grouped_load): Try alternative way of permutations.

gcc/testsuite/
PR tree-optimization/52252
* gcc.target/i386/pr52252-atom.c: Test on loads group of size 3.
* gcc.target/i386/pr52252-core.c: Ditto.

PR tree-optimization/61403
* gcc.target/i386/pr61403.c: Test on loads and stores group of size 3.

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

11 years ago * gimplify.c (omp_notice_variable): If n is non-NULL
jakub [Wed, 18 Jun 2014 07:16:12 +0000 (07:16 +0000)] 
* gimplify.c (omp_notice_variable): If n is non-NULL
and no flags change in ORT_TARGET region, don't jump to
do_outer.
(struct gimplify_adjust_omp_clauses_data): New type.
(gimplify_adjust_omp_clauses_1): Adjust for data being
a struct gimplify_adjust_omp_clauses_data pointer instead
of tree *.  Pass pre_p as a new argument to
lang_hooks.decls.omp_finish_clause hook.
(gimplify_adjust_omp_clauses): Add pre_p argument, adjust
splay_tree_foreach to pass both list_p and pre_p.
(gimplify_omp_parallel, gimplify_omp_task, gimplify_omp_for,
gimplify_omp_workshare, gimplify_omp_target_update): Adjust
gimplify_adjust_omp_clauses callers.
* langhooks.c (lhd_omp_finish_clause): New function.
* langhooks-def.h (lhd_omp_finish_clause): New prototype.
(LANG_HOOKS_OMP_FINISH_CLAUSE): Define to lhd_omp_finish_clause.
* langhooks.h (struct lang_hooks_for_decls): Add a new
gimple_seq * argument to omp_finish_clause hook.
* omp-low.c (scan_sharing_clauses): Call scan_omp_op on
non-DECL_P OMP_CLAUSE_DECL if ctx->outer.
(scan_omp_parallel, lower_omp_for): When adding
_LOOPTEMP_ clause var, add it to outer ctx's decl_map
as identity.
* tree-core.h (OMP_CLAUSE_MAP_TO_PSET): New map kind.
* tree-nested.c (convert_nonlocal_omp_clauses,
convert_local_omp_clauses): Handle various OpenMP 4.0 clauses.
* tree-pretty-print.c (dump_omp_clause): Handle
OMP_CLAUSE_MAP_TO_PSET.
gcc/cp/
* cp-gimplify.c (cxx_omp_finish_clause): Add a gimple_seq *
argument.
* cp-tree.h (cxx_omp_finish_clause): Adjust prototype.
gcc/fortran/
* cpp.c (cpp_define_builtins): Change _OPENMP macro to
201307.
* dump-parse-tree.c (show_omp_namelist): Add list_type
argument.  Adjust for rop being u.reduction_op now,
handle depend_op or map_op.
(show_omp_node): Adjust callers.  Print some new
OpenMP 4.0 clauses, adjust for OMP_LIST_DEPEND_{IN,OUT}
becoming a single OMP_LIST_DEPEND.
* f95-lang.c (gfc_handle_omp_declare_target_attribute): New
function.
(gfc_attribute_table): New variable.
(LANG_HOOKS_OMP_FINISH_CLAUSE, LANG_HOOKS_ATTRIBUTE_TABLE): Redefine.
* frontend-passes.c (gfc_code_walker): Handle new OpenMP target
EXEC_OMP_* codes and new clauses.
* gfortran.h (gfc_statement): Add ST_OMP_TARGET, ST_OMP_END_TARGET,
ST_OMP_TARGET_DATA, ST_OMP_END_TARGET_DATA, ST_OMP_TARGET_UPDATE,
ST_OMP_DECLARE_TARGET, ST_OMP_TEAMS, ST_OMP_END_TEAMS,
ST_OMP_DISTRIBUTE, ST_OMP_END_DISTRIBUTE, ST_OMP_DISTRIBUTE_SIMD,
ST_OMP_END_DISTRIBUTE_SIMD, ST_OMP_DISTRIBUTE_PARALLEL_DO,
ST_OMP_END_DISTRIBUTE_PARALLEL_DO, ST_OMP_DISTRIBUTE_PARALLEL_DO_SIMD,
ST_OMP_END_DISTRIBUTE_PARALLEL_DO_SIMD, ST_OMP_TARGET_TEAMS,
ST_OMP_END_TARGET_TEAMS, ST_OMP_TEAMS_DISTRIBUTE,
ST_OMP_END_TEAMS_DISTRIBUTE, ST_OMP_TEAMS_DISTRIBUTE_SIMD,
ST_OMP_END_TEAMS_DISTRIBUTE_SIMD, ST_OMP_TARGET_TEAMS_DISTRIBUTE,
ST_OMP_END_TARGET_TEAMS_DISTRIBUTE,
ST_OMP_TARGET_TEAMS_DISTRIBUTE_SIMD,
ST_OMP_END_TARGET_TEAMS_DISTRIBUTE_SIMD,
ST_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO,
ST_OMP_END_TEAMS_DISTRIBUTE_PARALLEL_DO,
ST_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO,
ST_OMP_END_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO,
ST_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD,
ST_OMP_END_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD,
ST_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD and
ST_OMP_END_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD.
(symbol_attribute): Add omp_declare_target field.
(gfc_omp_depend_op, gfc_omp_map_op): New enums.
(gfc_omp_namelist): Replace rop field with union
containing reduction_op, depend_op and map_op.
(OMP_LIST_DEPEND_IN, OMP_LIST_DEPEND_OUT): Remove.
(OMP_LIST_DEPEND, OMP_LIST_MAP, OMP_LIST_TO, OMP_LIST_FROM): New.
(gfc_omp_clauses): Add num_teams, device, thread_limit,
dist_sched_kind, dist_chunk_size fields.
(gfc_common_head): Add omp_declare_target field.
(gfc_exec_op): Add EXEC_OMP_TARGET, EXEC_OMP_TARGET_DATA,
EXEC_OMP_TEAMS, EXEC_OMP_DISTRIBUTE, EXEC_OMP_DISTRIBUTE_SIMD,
EXEC_OMP_DISTRIBUTE_PARALLEL_DO, EXEC_OMP_DISTRIBUTE_PARALLEL_DO_SIMD,
EXEC_OMP_TARGET_TEAMS, EXEC_OMP_TEAMS_DISTRIBUTE,
EXEC_OMP_TEAMS_DISTRIBUTE_SIMD, EXEC_OMP_TARGET_TEAMS_DISTRIBUTE,
EXEC_OMP_TARGET_TEAMS_DISTRIBUTE_SIMD,
EXEC_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO,
EXEC_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO,
EXEC_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD,
EXEC_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD and
EXEC_OMP_TARGET_UPDATE.
(gfc_add_omp_declare_target): New prototype.
* match.h (gfc_match_omp_declare_target, gfc_match_omp_distribute,
gfc_match_omp_distribute_parallel_do,
gfc_match_omp_distribute_parallel_do_simd,
gfc_match_omp_distribute_simd, gfc_match_omp_target,
gfc_match_omp_target_data, gfc_match_omp_target_teams,
gfc_match_omp_target_teams_distribute,
gfc_match_omp_target_teams_distribute_parallel_do,
gfc_match_omp_target_teams_distribute_parallel_do_simd,
gfc_match_omp_target_teams_distribute_simd,
gfc_match_omp_target_update, gfc_match_omp_teams,
gfc_match_omp_teams_distribute,
gfc_match_omp_teams_distribute_parallel_do,
gfc_match_omp_teams_distribute_parallel_do_simd,
gfc_match_omp_teams_distribute_simd): New prototypes.
* module.c (ab_attribute): Add AB_OMP_DECLARE_TARGET.
(attr_bits): Likewise.
(mio_symbol_attribute): Handle omp_declare_target attribute.
(gfc_free_omp_clauses): Free num_teams, device, thread_limit
and dist_chunk_size expressions.
(OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE, OMP_CLAUSE_LASTPRIVATE,
OMP_CLAUSE_COPYPRIVATE, OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN,
OMP_CLAUSE_REDUCTION, OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS,
OMP_CLAUSE_SCHEDULE, OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED,
OMP_CLAUSE_COLLAPSE, OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL,
OMP_CLAUSE_MERGEABLE, OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND,
OMP_CLAUSE_INBRANCH, OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH,
OMP_CLAUSE_PROC_BIND, OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN,
OMP_CLAUSE_UNIFORM): Use 1U instead of 1.
(OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO, OMP_CLAUSE_FROM,
OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT,
OMP_CLAUSE_DIST_SCHEDULE): Define.
(gfc_match_omp_clauses): Change mask parameter to unsigned int.
Adjust for rop becoming u.reduction_op.  Disallow inbranch with
notinbranch.  For depend clause, always create OMP_LIST_DEPEND
and fill in u.depend_op.  Handle num_teams, device, map,
to, from, thread_limit and dist_schedule clauses.
(OMP_DECLARE_SIMD_CLAUSES): Or in OMP_CLAUSE_INBRANCH and
OMP_CLAUSE_NOTINBRANCH.
(OMP_TARGET_CLAUSES, OMP_TARGET_DATA_CLAUSES,
OMP_TARGET_UPDATE_CLAUSES, OMP_TEAMS_CLAUSES,
OMP_DISTRIBUTE_CLAUSES): Define.
(match_omp): New function.
(gfc_match_omp_do, gfc_match_omp_do_simd, gfc_match_omp_parallel,
gfc_match_omp_parallel_do, gfc_match_omp_parallel_do_simd,
gfc_match_omp_parallel_sections, gfc_match_omp_parallel_workshare,
gfc_match_omp_sections, gfc_match_omp_simd, gfc_match_omp_single,
gfc_match_omp_task): Rewritten using match_omp.
(gfc_match_omp_threadprivate, gfc_match_omp_declare_reduction):
Diagnose if the directives are followed by unexpected junk.
(gfc_match_omp_distribute, gfc_match_omp_distribute_parallel_do,
gfc_match_omp_distribute_parallel_do_simd,
gfc_match_omp_distrbute_simd, gfc_match_omp_declare_target,
gfc_match_omp_target, gfc_match_omp_target_data,
gfc_match_omp_target_teams, gfc_match_omp_target_teams_distribute,
gfc_match_omp_target_teams_distribute_parallel_do,
gfc_match_omp_target_teams_distribute_parallel_do_simd,
gfc_match_omp_target_teams_distrbute_simd, gfc_match_omp_target_update,
gfc_match_omp_teams, gfc_match_omp_teams_distribute,
gfc_match_omp_teams_distribute_parallel_do,
gfc_match_omp_teams_distribute_parallel_do_simd,
gfc_match_omp_teams_distrbute_simd): New functions.
* openmp.c (resolve_omp_clauses): Adjust for
OMP_LIST_DEPEND_{IN,OUT} being changed to OMP_LIST_DEPEND.  Handle
OMP_LIST_MAP, OMP_LIST_FROM, OMP_LIST_TO, num_teams, device,
dist_chunk_size and thread_limit.
(gfc_resolve_omp_parallel_blocks): Only put sharing clauses into
ctx.sharing_clauses.  Call gfc_resolve_omp_do_blocks for various
new EXEC_OMP_* codes.
(resolve_omp_do): Handle various new EXEC_OMP_* codes.
(gfc_resolve_omp_directive): Likewise.
(gfc_resolve_omp_declare_simd): Add missing space to diagnostics.
* parse.c (decode_omp_directive): Handle parsing of OpenMP 4.0
offloading related directives.
(case_executable): Add ST_OMP_TARGET_UPDATE.
(case_exec_markers): Add ST_OMP_TARGET*, ST_OMP_TEAMS*,
ST_OMP_DISTRIBUTE*.
(case_decl): Add ST_OMP_DECLARE_TARGET.
(gfc_ascii_statement): Handle new ST_OMP_* codes.
(parse_omp_do): Handle various new ST_OMP_* codes.
(parse_executable): Likewise.
* resolve.c (gfc_resolve_blocks): Handle various new EXEC_OMP_*
codes.
(resolve_code): Likewise.
(resolve_symbol): Change that !$OMP DECLARE TARGET variables
are saved.
* st.c (gfc_free_statement): Handle various new EXEC_OMP_* codes.
* symbol.c (check_conflict): Check omp_declare_target conflicts.
(gfc_add_omp_declare_target): New function.
(gfc_copy_attr): Copy omp_declare_target.
* trans.c (trans_code): Handle various new EXEC_OMP_* codes.
* trans-common.c (build_common_decl): Add "omp declare target"
attribute if needed.
* trans-decl.c (add_attributes_to_decl): Likewise.
* trans.h (gfc_omp_finish_clause): New prototype.
* trans-openmp.c (gfc_omp_finish_clause): New function.
(gfc_trans_omp_reduction_list): Adjust for rop being renamed
to u.reduction_op.
(gfc_trans_omp_clauses): Adjust for OMP_LIST_DEPEND_{IN,OUT}
change to OMP_LIST_DEPEND and fix up depend handling.
Handle OMP_LIST_MAP, OMP_LIST_TO, OMP_LIST_FROM, num_teams,
thread_limit, device, dist_chunk_size and dist_sched_kind.
(gfc_trans_omp_do): Handle EXEC_OMP_DISTRIBUTE.
(GFC_OMP_SPLIT_DISTRIBUTE, GFC_OMP_SPLIT_TEAMS,
GFC_OMP_SPLIT_TARGET, GFC_OMP_SPLIT_NUM, GFC_OMP_MASK_DISTRIBUTE,
GFC_OMP_MASK_TEAMS, GFC_OMP_MASK_TARGET, GFC_OMP_MASK_NUM): New.
(gfc_split_omp_clauses): Handle splitting of clauses for new
EXEC_OMP_* codes.
(gfc_trans_omp_do_simd): Add pblock argument, adjust for being
callable for combined constructs.
(gfc_trans_omp_parallel_do, gfc_trans_omp_parallel_do_simd): Likewise.
(gfc_trans_omp_distribute, gfc_trans_omp_teams,
gfc_trans_omp_target, gfc_trans_omp_target_data,
gfc_trans_omp_target_update): New functions.
(gfc_trans_omp_directive): Adjust gfc_trans_omp_* callers, handle
new EXEC_OMP_* codes.
gcc/testsuite/
* gfortran.dg/gomp/declare-simd-1.f90: New test.
* gfortran.dg/gomp/depend-1.f90: New test.
* gfortran.dg/gomp/target1.f90: New test.
* gfortran.dg/gomp/target2.f90: New test.
* gfortran.dg/gomp/target3.f90: New test.
* gfortran.dg/gomp/udr4.f90: Adjust expected diagnostics.
* gfortran.dg/openmp-define-3.f90: Expect _OPENMP 201307 instead of
201107.
libgomp/
* omp_lib.f90.in (openmp_version): Set to 201307.
* omp_lib.h.in (openmp_version): Likewise.
* testsuite/libgomp.c/target-8.c: New test.
* testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
and inbranch clauses.
* testsuite/libgomp.fortran/depend-3.f90: New test.
* testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
openmp_version.
* testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
* testsuite/libgomp.fortran/target1.f90: New test.
* testsuite/libgomp.fortran/target2.f90: New test.
* testsuite/libgomp.fortran/target3.f90: New test.
* testsuite/libgomp.fortran/target4.f90: New test.
* testsuite/libgomp.fortran/target5.f90: New test.
* testsuite/libgomp.fortran/target6.f90: New test.
* testsuite/libgomp.fortran/target7.f90: New test.

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

11 years ago2014-06-18 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 18 Jun 2014 06:22:11 +0000 (06:22 +0000)] 
2014-06-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/61126
        * invoke.texi (-Wunused-parameter): Make clearer when
        -Wextra implies this option.

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

11 years ago2014-06-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
burnus [Wed, 18 Jun 2014 06:09:28 +0000 (06:09 +0000)] 
2014-06-18  Manuel López-Ibáñez  <manu@gcc.gnu.org>

        PR fortran/61126
        * options.c (gfc_handle_option): Remove call to
        handle_generated_option.

2014-06-18  Dominique d'Humieres <dominiq@lps.ens.fr>

        PR fortran/61126
        * gfortran.dg/wextra_1.f: Add -Wall to dg-options.

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

11 years agoDaily bump.
gccadmin [Wed, 18 Jun 2014 00:16:50 +0000 (00:16 +0000)] 
Daily bump.

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

11 years ago * tree-dfa.h (get_addr_base_and_unit_offset_1): Move from here.
amacleod [Tue, 17 Jun 2014 23:20:30 +0000 (23:20 +0000)] 
* tree-dfa.h (get_addr_base_and_unit_offset_1): Move from here.
* tree-dfa.c (get_addr_base_and_unit_offset_1): To here.

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

11 years ago PR c++/60605
jason [Tue, 17 Jun 2014 23:09:20 +0000 (23:09 +0000)] 
PR c++/60605
* pt.c (check_default_tmpl_args): Check DECL_LOCAL_FUNCTION_P.

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

11 years agogcc/fortran/
burnus [Tue, 17 Jun 2014 20:54:14 +0000 (20:54 +0000)] 
gcc/fortran/
2014-06-17  Tobias Burnus  <burnus@net-b.de>

        * check.c (gfc_check_atomic, gfc_check_atomic_def):
        Use argument for GFC_ISYM_CAF_GET.
        * resolve.c (resolve_variable): Enable CAF_GET insertion.
        (resolve_lock_unlock): Remove GFC_ISYM_CAF_GET.
        (resolve_ordinary_assign): Enable CAF_SEND insertion.
        * trans-const.c (gfc_build_string_const,
        gfc_build_wide_string_const): Set TYPE_STRING_FLAG.
        * trans-decl.c (gfor_fndecl_caf_get, gfor_fndecl_caf_send,
        gfor_fndecl_caf_sendget): New global variables.
        (gfc_build_builtin_function_decls): Initialize them;
        update co_min/max/sum initialization.
        * trans-expr.c (gfc_get_tree_for_caf_expr): Renamed from
        get_tree_for_caf_expr and removed static.
        (gfc_conv_procedure_call): Update call.
        * trans-intrinsic.c (caf_get_image_index,
        conv_caf_vector_subscript_elem, conv_caf_vector_subscript,
        get_caf_token_offset, gfc_conv_intrinsic_caf_get,
        conv_caf_send): New.
        (gfc_conv_intrinsic_function, gfc_conv_intrinsic_subroutine,
        gfc_walk_intrinsic_function): Handle CAF_GET and CAF_SEND.
        (conv_co_minmaxsum): Update call for remove unused vector
        subscript.
        (conv_intrinsic_atomic_def, conv_intrinsic_atomic_ref):
        Skip a CAF_GET of the argument.
        * trans-types.c (gfc_get_caf_vector_type): New.
        * trans-types.h (gfc_get_caf_vector_type): New.
        * trans.h (gfor_fndecl_caf_get, gfor_fndecl_caf_send,
        gfor_fndecl_caf_sendget): New global variables.
        (gfc_get_tree_for_caf_expr): New prototypes.

libgfortran/
2014-06-17  Tobias Burnus  <burnus@net-b.de>

        * caf/libcaf.h (gfc_descriptor_t): New typedef.
        (caf_vector_t): Update.
        (_gfortran_caf_co_sum, _gfortran_caf_co_max, _gfortran_caf_co_min):
        Remove vector-subscript argument.
        (_gfortran_caf_co_send, _gfortran_caf_co_get,
        _gfortran_caf_co_sendget): New.
        * caf/single.c (_gfortran_caf_co_sum, _gfortran_caf_co_max,
        _gfortran_caf_co_min): Remove vector-subscript argument.
        (_gfortran_caf_co_send, _gfortran_caf_co_get,
        _gfortran_caf_co_sendget): New.

gcc/testsuite/
2014-06-17  Tobias Burnus  <burnus@net-b.de>
            Alessandro Fanfarillo <alessandro.fanfarillo@gmail.com>

        * gfortran.dg/coarray/send_array.f90: New.
        * gfortran.dg/coarray/get_array.f90: New.
        * gfortran.dg/coarray/sendget_array.f90: New.
        * gfortran.dg/coarray/collectives_1.f90: Correct subroutine
        names.
        * gfortran.dg/coarray/collectives_2.f90: New.

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

11 years ago * Makefile.am (libatomic_la_LDFLAGS): Add lt_host_flags.
ktietz [Tue, 17 Jun 2014 20:43:18 +0000 (20:43 +0000)] 
* Makefile.am (libatomic_la_LDFLAGS): Add lt_host_flags.
* configure.ac (ACX_LT_HOST_FLAGS): New.
(target_thread_file): New.
* configure.tgt (mingw): Add mingw support.
* config/mingw/host-config.h: New file.
* config/mingw/lock.c: Likewise.
* Makefile.in: Regenerated.
* configure: Likewise.
* aclocal.m4: Likewise.
* testsuite/Makefile.in: Likewise.

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

11 years agoFix dot dump bug
davidxl [Tue, 17 Jun 2014 20:39:55 +0000 (20:39 +0000)] 
Fix dot dump bug

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

11 years agoCompile gcc.target/i386/fuse-caller-save.c with -fomit-frame-pointer (PR target/61533)
ro [Tue, 17 Jun 2014 13:58:11 +0000 (13:58 +0000)] 
Compile gcc.target/i386/fuse-caller-save.c with -fomit-frame-pointer (PR target/61533)

PR target/61533
* gcc.target/i386/fuse-caller-save.c: Add -fomit-frame-pointer to
dg-options.

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

11 years ago2014-06-17 Richard Biener <rguenther@suse.de>
rguenth [Tue, 17 Jun 2014 13:15:53 +0000 (13:15 +0000)] 
2014-06-17  Richard Biener  <rguenther@suse.de>

* genopinit.c (main): Use vec<>::qsort method.
* tree-ssa-loop-niter.c (discover_iteration_bound_by_body_walk):
Likewise.
* tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Likewise.

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

11 years agoClean up ST_REGS handling in the MIPS backend.
mpf [Tue, 17 Jun 2014 12:46:47 +0000 (12:46 +0000)] 
Clean up ST_REGS handling in the MIPS backend.

gcc/

* config/mips/mips-protos.h (mips_expand_fcc_reload): Remove.
* config/mips/mips.c (mips_expand_fcc_reload): Remove.
(mips_move_to_gpr_cost): Remove ST_REGS case.
(mips_move_from_gpr_cost): Likewise.
(mips_register_move_cost): Likewise.
(mips_secondary_reload_class): Likewise.

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

11 years ago2014-06-17 Richard Biener <rguenther@suse.de>
rguenth [Tue, 17 Jun 2014 12:36:34 +0000 (12:36 +0000)] 
2014-06-17  Richard Biener  <rguenther@suse.de>

* passes.def (pass_all_early_optimizations): Remove copy-prop pass.
(pass_all_optimizations): Move 3rd copy-prop pass from after
fre to before ifcombine/phiopt.

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

11 years ago2014-06-17 Richard Biener <rguenther@suse.de>
rguenth [Tue, 17 Jun 2014 12:34:49 +0000 (12:34 +0000)] 
2014-06-17  Richard Biener  <rguenther@suse.de>

* tree-switch-conversion.c (collect_switch_conv_info): Simplify
and allow all blocks to be forwarders.

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

11 years ago * gfortran.dg/pr61335.f90 (cp_unit_create): Initialize
uros [Tue, 17 Jun 2014 12:30:54 +0000 (12:30 +0000)] 
* gfortran.dg/pr61335.f90 (cp_unit_create): Initialize
unit_id and kind_id to zero.

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

11 years agogcc/
yufeng [Tue, 17 Jun 2014 09:39:22 +0000 (09:39 +0000)] 
gcc/

PR target/61483
* config/aarch64/aarch64.c (aarch64_layout_arg): Add new local
variable 'size'; calculate 'size' right in the front; use
'size' to compute 'nregs' (when 'allocate_ncrn != 0') and
pcum->aapcs_stack_words.

gcc/testsuite/

PR target/61483
* gcc.target/aarch64/aapcs64/type-def.h (struct hfa_fx2_t): New type.
* gcc.target/aarch64/aapcs64/va_arg-13.c: New test.
* gcc.target/aarch64/aapcs64/va_arg-14.c: Ditto.
* gcc.target/aarch64/aapcs64/va_arg-15.c: Ditto.

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

11 years ago * config/msp430/msp430.md (mulhisi3): Add a NOP after the DINT.
nickc [Tue, 17 Jun 2014 09:33:47 +0000 (09:33 +0000)] 
* config/msp430/msp430.md (mulhisi3): Add a NOP after the DINT.
(umulhi3, mulsidi3, umulsidi3): Likewise.

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

11 years ago2014-06-17 Richard Biener <rguenther@suse.de>
rguenth [Tue, 17 Jun 2014 09:07:41 +0000 (09:07 +0000)] 
2014-06-17  Richard Biener  <rguenther@suse.de>

PR lto/61012
* gcc.dg/lto/pr61526_0.c: New testcase.
* gcc.dg/lto/pr61526_1.c: Likewise.

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

11 years ago[PR middle-end/61508] fold-const.c:14863:55: error: cannot convert 'const char*'...
tschwinge [Tue, 17 Jun 2014 09:02:52 +0000 (09:02 +0000)] 
[PR middle-end/61508] fold-const.c:14863:55: error: cannot convert 'const char*' to 'const_tree

gcc/
* fold-const.c (fold_checksum_tree) <TS_DECL_WITH_VIS>: Remove
check for section name.

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

11 years ago2014-06-17 Richard Biener <rguenther@suse.de>
rguenth [Tue, 17 Jun 2014 07:42:47 +0000 (07:42 +0000)] 
2014-06-17  Richard Biener  <rguenther@suse.de>

* tree-ssa-propagate.c: Include domwalk.h.
(substitute_and_fold): Outline main worker into a domwalker ...
(substitute_and_fold_dom_walker::before_dom_children): ... here.
Schedule stmts we can fully propagate for removal.  Remove
poor-mans DCE.
(substitute_and_fold): Apply a dominator walk to perform
substitution.  Process stmts scheduled for removal here.

* gcc.dg/tree-ssa/20041122-1.c: Adjust.
* gcc.dg/tree-ssa/forwprop-21.c: Likewise.
* gcc.dg/tree-ssa/vrp35.c: Revert previous adjustments.
* gcc.dg/tree-ssa/vrp36.c: Likewise.
* gcc.dg/vect/nodump-forwprop-22.c: Adjust.

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

11 years ago2014-06-17 Richard Biener <rguenther@suse.de>
rguenth [Tue, 17 Jun 2014 07:37:24 +0000 (07:37 +0000)] 
2014-06-17  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-im.c (determine_max_movement): Adjust cost
of PHI node moving.

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

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

11 years agoRotate ChangeLog for 2013.
jb [Tue, 17 Jun 2014 03:55:59 +0000 (03:55 +0000)] 
Rotate ChangeLog for 2013.

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

11 years agoIntroduce xmallocarray, an overflow checking variant of xmalloc.
jb [Tue, 17 Jun 2014 03:50:34 +0000 (03:50 +0000)] 
Introduce xmallocarray, an overflow checking variant of xmalloc.

2014-06-17  Janne Blomqvist  <jb@gcc.gnu.org>

* libgfortran.h (xmallocarray): New prototype.
* runtime/memory.c (xmallocarray): New function.
(xcalloc): Check for nonzero separately instead of multiplying.
* generated/*.c: Regenerated.
* intrinsics/cshift0.c (cshift0): Call xmallocarray instead of
xmalloc.
* intrinsics/eoshift0.c (eoshift0): Likewise.
* intrinsics/eoshift2.c (eoshift2): Likewise.
* intrinsics/pack_generic.c (pack_internal): Likewise.
(pack_s_internal): Likewise.
* intrinsics/reshape_generic.c (reshape_internal): Likewise.
* intrinsics/spread_generic.c (spread_internal): Likewise.
(spread_internal_scalar): Likewise.
* intrinsics/string_intrinsics_inc.c (string_trim): Likewise.
(string_minmax): Likewise.
* intrinsics/transpose_generic.c (transpose_internal): Likewise.
* intrinsics/unpack_generic.c (unpack_internal): Likewise.
* io/list_read.c (nml_touch_nodes): Don't cast xmalloc return value.
* io/transfer.c (st_set_nml_var): Call xmallocarray instead of
xmalloc.
* io/unit.c (get_internal_unit): Likewise.
(filename_from_unit): Don't cast xmalloc return value.
* io/write.c (nml_write_obj): Likewise, formatting.
* m4/bessel.m4 (bessel_jn_r'rtype_kind`): Call xmallocarray
instead of xmalloc.
(besse_yn_r'rtype_kind`): Likewise.
* m4/cshift1.m4 (cshift1): Likewise.
* m4/eoshift1.m4 (eoshift1): Likewise.
* m4/eoshift3.m4 (eoshift3): Likewise.
* m4/iforeach.m4: Likewise.
* m4/ifunction.m4: Likewise.
* m4/ifunction_logical.m4 (name`'rtype_qual`_'atype_code):
Likewise.
* m4/in_pack.m4 (internal_pack_'rtype_ccode`): Likewise.
* m4/matmul.m4 (matmul_'rtype_code`): Likewise.
* m4/matmull.m4 (matmul_'rtype_code`): Likewise.
* m4/pack.m4 (pack_'rtype_code`): Likewise.
* m4/reshape.m4 (reshape_'rtype_ccode`): Likewise.
* m4/shape.m4 (shape_'rtype_kind`): Likewise.
* m4/spread.m4 (spread_'rtype_code`): Likewise.
(spread_scalar_'rtype_code`): Likewise.
* m4/transpose.m4 (transpose_'rtype_code`): Likewise.
* m4/unpack.m4 (unpack0_'rtype_code`): Likewise.
(unpack1_'rtype_code`): Likewise.
* runtime/convert_char.c (convert_char1_to_char4): Likewise.
(convert_char4_to_char1): Simplify.
* runtime/environ.c (init_unformatted): Call xmallocarray instead
of xmalloc.
* runtime/in_pack_generic.c (internal_pack): Likewise.

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

11 years agoDaily bump.
gccadmin [Tue, 17 Jun 2014 00:17:11 +0000 (00:17 +0000)] 
Daily bump.

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

11 years agogcc/
kugan [Tue, 17 Jun 2014 00:00:59 +0000 (00:00 +0000)] 
gcc/
2014-06-17  Kugan Vivekanandarajah  <kuganv@linaro.org>

* config/arm/arm.c (arm_atomic_assign_expand_fenv): call
default_atomic_assign_expand_fenv for !TARGET_HARD_FLOAT.
(arm_init_builtins) : Initialize builtins __builtins_arm_set_fpscr and
__builtins_arm_get_fpscr only when TARGET_HARD_FLOAT.
* config/arm/vfp.md (set_fpscr): Make pattern conditional on
TARGET_HARD_FLOAT.
(get_fpscr) : Likewise.

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

11 years ago2014-06-16 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 16 Jun 2014 21:39:42 +0000 (21:39 +0000)] 
2014-06-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61325
* lra-constraints.c (valid_address_p): Add forward declaration.
(simplify_operand_subreg): Check address validity before and after
alter_reg of memory subreg.

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

11 years ago * config/i386/i386.c (decide_alg): Correctly handle
uros [Mon, 16 Jun 2014 20:45:25 +0000 (20:45 +0000)] 
* config/i386/i386.c (decide_alg): Correctly handle
maximum size of stringop algorithm.

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

11 years ago2014-06-16 Yury Gribov <y.gribov@samsung.com>
ygribov [Mon, 16 Jun 2014 18:31:22 +0000 (18:31 +0000)] 
2014-06-16  Yury Gribov  <y.gribov@samsung.com>

* asan.c (build_check_stmt): Fix maybe-uninitialized warning.

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

11 years ago2014-06-16 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 16 Jun 2014 15:55:03 +0000 (15:55 +0000)] 
2014-06-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61522
* lra-assigns.c (assign_by_spills): Check null
targetm.spill_class.

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

11 years ago Revert:
hubicka [Mon, 16 Jun 2014 15:02:34 +0000 (15:02 +0000)] 
Revert:
* symtab.c (symtab_node::reset_section): New method.
* cgraph.c (cgraph_node_cannot_be_local_p_1): Accept non-local
for localization.
* cgraph.h (reset_section): Declare.
* ipa-inline-analysis.c (do_estimate_growth): Check for comdat groups;
do not consider comdat locals.
* cgraphclones.c (set_new_clone_decl_and_node_flags): Get section
for new symbol.
* ipa-visiblity.c (cgraph_externally_visible_p): Cleanup.
(update_visibility_by_resolution_info): Consider UNDEF; fix checking;
reset sections of symbols dragged out of the comdats.
(function_and_variable_visibility): Reset sections of localized symbols.

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

11 years ago2014-06-16 Richard Biener <rguenther@suse.de>
rguenth [Mon, 16 Jun 2014 14:21:53 +0000 (14:21 +0000)] 
2014-06-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61482
* tree-vrp.c (adjust_range_with_scev): Avoid setting of
[-INF(OVF), +INF(OVF)] range.

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

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

11 years agoRemove conflict marker
schwab [Mon, 16 Jun 2014 13:22:53 +0000 (13:22 +0000)] 
Remove conflict marker

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

11 years ago PR c/60439
mpolacek [Mon, 16 Jun 2014 12:38:07 +0000 (12:38 +0000)] 
PR c/60439
* c.opt (Wswitch-bool): Add Var.

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

11 years agotweak changelog date
jason [Mon, 16 Jun 2014 12:19:30 +0000 (12:19 +0000)] 
tweak changelog date

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

11 years ago * g++.dg/abi/layout4.C: Remove.
jason [Mon, 16 Jun 2014 11:50:22 +0000 (11:50 +0000)] 
* g++.dg/abi/layout4.C: Remove.

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

11 years ago PR c++/61488
jason [Mon, 16 Jun 2014 11:50:14 +0000 (11:50 +0000)] 
PR c++/61488
* pt.c (check_valid_ptrmem_cst_expr): Fix for template context.

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

11 years ago PR c++/61500
jason [Mon, 16 Jun 2014 11:45:37 +0000 (11:45 +0000)] 
PR c++/61500
* tree.c (lvalue_kind): Handle MEMBER_REF and DOTSTAR_EXPR.

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

11 years agoRemove vpmacsdql instruction from multiplication
gganesh [Mon, 16 Jun 2014 11:02:31 +0000 (11:02 +0000)] 
Remove vpmacsdql instruction from multiplication

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

11 years ago2014-06-16 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Mon, 16 Jun 2014 09:58:34 +0000 (09:58 +0000)] 
2014-06-16  Chung-Lin Tang  <cltang@codesourcery.com>

PR middle-end/61430
* lra-lives.c (process_bb_lives): Skip creating copy during
insn scan when src/dest has constrained to same regno.

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

11 years ago * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Check again
hubicka [Mon, 16 Jun 2014 09:25:26 +0000 (09:25 +0000)] 
* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Check again
DECL_IN_CONSTANT_POOL and TREE_ASM_WRITTEN.

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

11 years ago2014-06-16 Yury Gribov <y.gribov@samsung.com>
ygribov [Mon, 16 Jun 2014 08:43:47 +0000 (08:43 +0000)] 
2014-06-16  Yury Gribov  <y.gribov@samsung.com>

New asan-instrumentation-with-call-threshold parameter.

gcc/
* asan.c (check_func): New function.
(maybe_create_ssa_name): Likewise.
(build_check_stmt_with_calls): Likewise.
(use_calls_p): Likewise.
(report_error_func): Change interface.
(build_check_stmt): Allow non-integer lengths; add support
for new parameter.
(asan_instrument): Likewise.
(instrument_mem_region_access): Moved code to
build_check_stmt.
(instrument_derefs): Likewise.
(instrument_strlen_call): Likewise.
* cfgcleanup.c (old_insns_match_p): Add support for new
functions.
* doc/invoke.texi: Describe new parameter.
* params.def: Define new parameter.
* params.h: Likewise.
* sanitizer.def: Describe new builtins.

gcc/testsuite/
* c-c++-common/asan/instrument-with-calls-1.c: New test.
* c-c++-common/asan/instrument-with-calls-2.c: Likewise.
* c-c++-common/asan/instrument-with-calls-3.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-1.c: Update
test patterns.
* c-c++-common/asan/no-redundant-instrumentation-2.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-4.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-5.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-6.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-7.c:
Likewise.
* c-c++-common/asan/no-redundant-instrumentation-8.c:
Likewise.

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

11 years ago2014-06-16 Richard Biener <rguenther@suse.de>
rguenth [Mon, 16 Jun 2014 08:16:01 +0000 (08:16 +0000)] 
2014-06-16  Richard Biener  <rguenther@suse.de>

* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Make all defs available at the end.
(eliminate): If we remove a PHI node schedule cfg-cleanup.

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

11 years ago PR plugins/45078
jakub [Mon, 16 Jun 2014 08:12:40 +0000 (08:12 +0000)] 
PR plugins/45078
* config.gcc (arm*-*-linux-*): Include vxworks-dummy.h in tm_file.

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

11 years agoMinor tweaks
ebotcazou [Mon, 16 Jun 2014 08:08:52 +0000 (08:08 +0000)] 
Minor tweaks

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

11 years agogcc/
rsandifo [Mon, 16 Jun 2014 07:40:17 +0000 (07:40 +0000)] 
gcc/
PR bootstrap/61516
* auto-inc-dec.c (merge_in_block): Fix location of insn_info
initialization.  Replace remaining use of uid.

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

11 years ago * decl.c (grokvardecl): Fix pasto in previous patch.
hubicka [Mon, 16 Jun 2014 01:15:09 +0000 (01:15 +0000)] 
* decl.c (grokvardecl): Fix pasto in previous patch.

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

11 years agoDaily bump.
gccadmin [Mon, 16 Jun 2014 00:16:46 +0000 (00:16 +0000)] 
Daily bump.

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

11 years ago * c-family/c-common.c (handle_tls_model_attribute): Use set_decl_tls_model.
hubicka [Sun, 15 Jun 2014 23:38:29 +0000 (23:38 +0000)] 
* c-family/c-common.c (handle_tls_model_attribute): Use set_decl_tls_model.
* cgraph.h (struct varpool_node): Add tls_model.
* tree.c (decl_tls_model, set_decl_tls_model): New functions.
* tree.h (DECL_TLS_MODEL): Update.
(DECL_THREAD_LOCAL_P): Check that variable is static.
(decl_tls_model): Declare.
(set_decl_tls_model): Declare.
* tree-emutls.c (get_emutls_init_templ_addr): First build decl and then
set symbol prorperties.
(get_emutls_init_templ_addr): Cleanup.
(new_emutls_decl): Update.
* lto-cgraph.c (lto_output_varpool_node): Stream TLS model
(lto_input_varpool_node): Likewise.
* lto-streamer-out.c (hash_tree): Likewise.
* tree-streamer-in.c (unpack_ts_decl_with_vis_value_fields): Do
not stream DECL_TLS_MODEL.
* tree-profile.c (init_ic_make_global_vars): Use
set_decl_tls_model.
* tree-core.h (tree_decl_with_vis): Remove tls_model;
update comments.

* c-parser.c (c_parser_omp_threadprivate): Likewise.
* c-decl.c (merge_decls): Likewise.

* decl.c (duplicate_decls): Use set_decl_tls_model.
(grokdeclarator): Likewise.
* semantics.c (finish_id_expression): Check TLS only for
static variables.
(finish_omp_threadprivate): Use decl_default_tls_model.
* decl2.c (get_guard): Likewise.
* call.c (make_temporary_var_for_ref_to_temp): Likewise.

* gcc-interface/utils.c (process_attributes): Use
set_decl_tls_model.

* trans-common.c (build_common_decl): Use
set_decl_tls_model.
* trans-decl.c (gfc_finish_var_decl): Likewise.
(get_proc_pointer_decl): Likewise.

* lto.c (compare_tree_sccs_1): Do not compare DECL_TLS_MODEL.

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