gcc.git
11 years agocfganal.c (control_dependences::~control_dependences): Properly free all of the vector.
Richard Biener [Fri, 6 Sep 2013 10:38:08 +0000 (10:38 +0000)]
cfganal.c (control_dependences::~control_dependences): Properly free all of the vector.

2013-09-06  Richard Biener <rguenther@suse.de>

* cfganal.c (control_dependences::~control_dependences):
Properly free all of the vector.

From-SVN: r202320

11 years agoMakefile.in (tree-sra.o): Update dependencies.
Jan Hubicka [Fri, 6 Sep 2013 10:36:44 +0000 (10:36 +0000)]
Makefile.in (tree-sra.o): Update dependencies.

* Makefile.in (tree-sra.o): Update dependencies.
* tree-sra.c: Include ipa-utils.h
(scan_function): Use recursive_call_p.
(has_caller_p): New function.
(cgraph_for_node_and_aliases): Count also callers of aliases.

From-SVN: r202319

11 years agore PR target/58269 (ICE when building libobjc on x86_64-apple-darwin* after revision...
Kirill Yukhin [Fri, 6 Sep 2013 10:36:30 +0000 (10:36 +0000)]
re PR target/58269 (ICE when building libobjc on x86_64-apple-darwin*  after revision 201915)

PR target/58269
* config/i386/i386.c (ix86_conditional_register_usage):
Proper initialize extended SSE registers.

From-SVN: r202318

11 years agore PR tree-optimization/58311 (ICE: SIGSEGV in hash_table::find_slot_with_hash()...
Jan Hubicka [Fri, 6 Sep 2013 10:33:48 +0000 (12:33 +0200)]
re PR tree-optimization/58311 (ICE: SIGSEGV in hash_table::find_slot_with_hash() with -fdevirtualize)

PR tree-optimization/58311
* ipa-devirt.c (gate_ipa_devirt): Only execute when optimizing.

From-SVN: r202317

11 years agore PR middle-end/58094 (IPA devirt testsuite errors)
Jan Hubicka [Fri, 6 Sep 2013 10:13:37 +0000 (12:13 +0200)]
re PR middle-end/58094 (IPA devirt testsuite errors)

PR middle-end/58094
* cgraph.h (symtab_semantically_equivalent_p): Declare.
* tree-tailcall.c: Include ipa-utils.h.
(find_tail_calls): Use it.
* ipa-pure-const.c (check_call): Likewise.
* ipa-utils.c (recursive_call_p): New function.
* ipa-utils.h (recursive_call_p): Dclare.
* symtab.c (symtab_nonoverwritable_alias): Fix formatting.
(symtab_semantically_equivalent_p): New function.
* Makefile.in (tree-tailcall.o): Update dependencies.

From-SVN: r202316

11 years agoipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the non-inlinable part.
Eric Botcazou [Fri, 6 Sep 2013 09:35:23 +0000 (09:35 +0000)]
ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the non-inlinable part.

* ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the
non-inlinable part.

From-SVN: r202315

11 years agoipa-pta-14.c (scan-ipa-dump): Don't expect NULL in foo.result set.
Joern Rennecke [Fri, 6 Sep 2013 09:31:12 +0000 (09:31 +0000)]
ipa-pta-14.c (scan-ipa-dump): Don't expect NULL in foo.result set.

        * gcc.dg/ipa/ipa-pta-14.c (scan-ipa-dump) [keeps_null_pointer_checks]:
        Don't expect NULL in foo.result set.
        * gcc.dg/tree-ssa/pta-escape-1.c (scan-tree-dump): Don't expect NULL
        in ESCAPED set.
        * gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
        * gcc.dg/tree-ssa/pta-escape-3.c: Likewise.

From-SVN: r202314

11 years agolto-streamer.h (lto_global_var_decls): Remove.
Richard Biener [Fri, 6 Sep 2013 09:06:25 +0000 (09:06 +0000)]
lto-streamer.h (lto_global_var_decls): Remove.

2013-09-06  Richard Biener  <rguenther@suse.de>

* lto-streamer.h (lto_global_var_decls): Remove.
* Makefile.in (OBJS): Remove lto-symtab.o.
(lto-symtab.o): Remove.
(GTFILES): Remove lto-symtab.c
* lto-symtab.c: Move to lto/

lto/
* lto-symtab.c: Move from gcc/
* lto.h: Include vec.h.
(lto_global_var_decls): Declare.
* lto.c (lto_global_var_decls): Move definition here.
* Make-lang.in (LTO_OBJS): Add lto-symtab.o.
(lto-symtab.o): Add.
* config-lang.in (gtfiles): Add lto.h.

From-SVN: r202313

11 years ago2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Fri, 6 Sep 2013 07:55:35 +0000 (07:55 +0000)]
2013-09-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.md (UNSPEC_FPINT_FLOOR, UNSPEC_FPINT_BTRUNC)
(UNSPEC_FPINT_ROUND, UNSPEC_FPINT_CEIL, UNSPEC_FPINT_NEARBYINT)
(UNSPEC_FPINT_RINT): New constant definitions.
(FPINT, fpint_name, fpint_roundingmode): New integer iterator
definition with 2 attributes.
("<FPINT:fpint_name><BFP:mode>2", "rint<BFP:mode>2")
("<FPINT:fpint_name><DFP:mode>2", "rint<DFP:mode>2"): New pattern
definitions.

2013-09-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.target/s390/nearestint-1.c: New testcase.

From-SVN: r202312

11 years agos390.md: Add "bcr_flush" value to mnemonic attribute.
Andreas Krebbel [Fri, 6 Sep 2013 07:54:05 +0000 (07:54 +0000)]
s390.md: Add "bcr_flush" value to mnemonic attribute.

2013-09-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.md: Add "bcr_flush" value to mnemonic
attribute.
("mem_thread_fence_1"): Use bcr 14,0 for z196 and later.
Set the mnemonic attribute to "bcr_flush".  Set the "z196prop"
attribute to "z196_alone".
* config/s390/2827.md: Add "bcr_flush" to "ooo_groupalone" and
"zEC12_simple".

From-SVN: r202311

11 years agobasic-block.h (class control_dependences): New.
Richard Biener [Fri, 6 Sep 2013 07:24:11 +0000 (07:24 +0000)]
basic-block.h (class control_dependences): New.

2013-09-06  Richard Biener  <rguenther@suse.de>

* basic-block.h (class control_dependences): New.
* tree-ssa-dce.c (control_dependence_map): Remove.
(cd): New global.
(EXECUTE_IF_CONTROL_DEPENDENT): Remove.
(set_control_dependence_map_bit, clear_control_dependence_bitmap,
find_pdom, find_control_dependence, find_all_control_dependences):
Move to cfganal.c.
(mark_control_dependent_edges_necessary, find_obviously_necessary_stmts,
propagate_necessity, tree_dce_init, tree_dce_done,
perform_tree_ssa_dce): Adjust.
* cfganal.c (set_control_dependence_map_bit,
clear_control_dependence_bitmap, find_pdom, find_control_dependence,
find_all_control_dependences): Move from tree-ssa-dce.c and
implement as methods of control_dependences class.
(control_dependences::control_dependences): New.
(control_dependences::~control_dependences): Likewise.
(control_dependences::get_edges_dependent_on): Likewise.
(control_dependences::get_edge): Likewise.

From-SVN: r202309

11 years agoDaily bump.
GCC Administrator [Fri, 6 Sep 2013 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202305

11 years agotree.c (types_same_for_odr): Drop overactive check.
Jan Hubicka [Thu, 5 Sep 2013 23:25:48 +0000 (01:25 +0200)]
tree.c (types_same_for_odr): Drop overactive check.

* tree.c (types_same_for_odr): Drop overactive check.
* ipa-devirt.c (hash_type_name): Likewise.

From-SVN: r202302

11 years ago20101011-1.c [__arc__] (DO_TEST): Define as 0.
Joern Rennecke [Thu, 5 Sep 2013 23:23:53 +0000 (23:23 +0000)]
20101011-1.c [__arc__] (DO_TEST): Define as 0.

        * gcc.c-torture/execute/20101011-1.c [__arc__] (DO_TEST): Define as 0.
        * testsuite/gcc.target/arc: New directory.
        * gcc.dg/torture/pr37868.c: Also skip for arc*-*-*.
        * gcc.dg/stack-usage-1.c [__arc__] (SIZE): Define.
        * testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c
        [__arc__] (STACK_ARGUMENTS_SIZE): Set to 0.
        * testsuite/gcc.dg/builtin-apply2.c
        [__arc__] (STACK_ARGUMENTS_SIZE): Set to 0.

Co-Authored-By: Vineet Gupta <Vineet.Gupta@synopsys.com>
From-SVN: r202301

11 years agocgraphunit.c (walk_polymorphic_call_targets): Break out from ...
Jan Hubicka [Thu, 5 Sep 2013 23:06:10 +0000 (01:06 +0200)]
cgraphunit.c (walk_polymorphic_call_targets): Break out from ...

* cgraphunit.c (walk_polymorphic_call_targets): Break out from ...
(analyze_functions): ... here.

From-SVN: r202299

11 years agore PR c++/58201 (Undefined reference to `B::B(void const**)')
Jan Hubicka [Thu, 5 Sep 2013 23:04:11 +0000 (01:04 +0200)]
re PR c++/58201 (Undefined reference to `B::B(void const**)')

PR middle-end/58201
* cgraphunit.c (analyze_functions): Clear AUX fields
after processing; initialize assembler name has.

* g++.dg/torture/pr58201_0.C: New testcase.
* g++.dg/torture/pr58201_1.C: New testcase.
* g++.dg/torture/pr58201.h: New testcase.

From-SVN: r202298

11 years ago* gcc.dg/autopar/pr49960.c: Disable partial inlining
Jan Hubicka [Thu, 5 Sep 2013 22:48:48 +0000 (00:48 +0200)]
* gcc.dg/autopar/pr49960.c: Disable partial inlining

From-SVN: r202297

11 years agotree-ssa-threadedge.c (thread_around_empty_blocks): Renamed from thread_around_empty_...
Jeff Law [Thu, 5 Sep 2013 20:28:36 +0000 (14:28 -0600)]
tree-ssa-threadedge.c (thread_around_empty_blocks): Renamed from thread_around_empty_block.

       * tree-ssa-threadedge.c (thread_around_empty_blocks): Renamed
       from thread_around_empty_block.  Record threading path into PATH.
       Recurse if threading through the initial block is successful.
       (thread_across_edge): Corresponding changes to slightly simplify.

From-SVN: r202296

11 years ago[AArch64] Fix categorisation of the frecp* insns.
James Greenhalgh [Thu, 5 Sep 2013 15:53:37 +0000 (15:53 +0000)]
[AArch64] Fix categorisation of the frecp* insns.

gcc/

* config/aarch64/aarch64.md
(type): Remove frecpe, frecps, frecpx.
(aarch64_frecp<FRECP:frecp_suffix><mode>): Move to aarch64-simd.md,
fix to be a TARGET_SIMD instruction.
(aarch64_frecps): Remove.
* config/aarch64/aarch64-simd.md
(aarch64_frecp<FRECP:frecp_suffix><mode>): New, moved from aarch64.md
  (aarch64_frecps<mode>): Handle all float/vector of float modes.

From-SVN: r202292

11 years ago[AARCH64][Insn classification unification 3/N] ALU/shift types
James Greenhalgh [Thu, 5 Sep 2013 15:49:15 +0000 (15:49 +0000)]
[AARCH64][Insn classification unification 3/N] ALU/shift types

2013-09-05  James Greenhalgh  <james.greenhalgh@arm.com>
    Sofiane Naci  <sofiane.naci@arm.com>

* config/arm/types.md (define_attr "type"):
Expand "arlo_imm"
into "adr", "alu_imm", "alus_imm", "logic_imm", "logics_imm".
Expand "arlo_reg"
into "adc_reg", "adc_imm", "adcs_reg", "adcs_imm", "alu_ext",
"alu_reg", "alus_ext", "alus_reg", "bfm", "csel", "logic_reg",
"logics_reg", "rev".
Expand "arlo_shift"
into "alu_shift_imm", "alus_shift_imm", "logic_shift_imm",
"logics_shift_imm".
Expand "arlo_shift_reg"
into "alu_shift_reg", "alus_shift_reg", "logic_shift_reg",
"logics_shift_reg".
Expand "clz" into "clz, "rbit".
Rename "shift" to "shift_imm".
* config/arm/arm.md (define_attr "core_cycles"): Update for attribute
changes.
Update for attribute changes all occurrences of arlo_* and
shift* types.
* config/arm/arm-fixed.md: Update for attribute changes
all occurrences of arlo_* types.
* config/arm/thumb2.md: Update for attribute changes all occurrences
of arlo_* types.
* config/arm/arm.c (xscale_sched_adjust_cost):  (rtx insn, rtx
(cortexa7_older_only): Likewise.
(cortexa7_younger):  Likewise.
* config/arm/arm1020e.md (1020alu_op): Update for attribute changes.
(1020alu_shift_op): Likewise.
(1020alu_shift_reg_op): Likewise.
* config/arm/arm1026ejs.md (alu_op): Update for attribute changes.
(alu_shift_op): Likewise.
(alu_shift_reg_op): Likewise.
* config/arm/arm1136jfs.md (11_alu_op): Update for
attribute changes.
(11_alu_shift_op): Likewise.
(11_alu_shift_reg_op): Likewise.
* config/arm/arm926ejs.md (9_alu_op): Update for attribute changes.
(9_alu_shift_reg_op): Likewise.
* config/arm/cortex-a15.md (cortex_a15_alu): Update for
attribute changes.
(cortex_a15_alu_shift): Likewise.
(cortex_a15_alu_shift_reg): Likewise.
* config/arm/cortex-a5.md (cortex_a5_alu): Update for
attribute changes.
(cortex_a5_alu_shift): Likewise.
* config/arm/cortex-a53.md
(cortex_a53_alu): Update for attribute changes.
(cortex_a53_alu_shift): Likewise.
* config/arm/cortex-a7.md
(cortex_a7_alu_imm): Update for attribute changes.
(cortex_a7_alu_reg): Likewise.
(cortex_a7_alu_shift): Likewise.
* config/arm/cortex-a8.md
(cortex_a8_alu): Update for attribute changes.
(cortex_a8_alu_shift): Likewise.
(cortex_a8_alu_shift_reg): Likewise.
* config/arm/cortex-a9.md
(cortex_a9_dp): Update for attribute changes.
(cortex_a9_dp_shift): Likewise.
* config/arm/cortex-m4.md
(cortex_m4_alu): Update for attribute changes.
* config/arm/cortex-r4.md
(cortex_r4_alu): Update for attribute changes.
(cortex_r4_mov): Likewise.
(cortex_r4_alu_shift_reg): Likewise.
* config/arm/fa526.md
(526_alu_op): Update for attribute changes.
(526_alu_shift_op): Likewise.
* config/arm/fa606te.md
(606te_alu_op): Update for attribute changes.
* config/arm/fa626te.md
(626te_alu_op): Update for attribute changes.
(626te_alu_shift_op): Likewise.
* config/arm/fa726te.md
(726te_alu_op): Update for attribute changes.
(726te_alu_shift_op): Likewise.
(726te_alu_shift_reg_op): Likewise.
* config/arm/fmp626.md (mp626_alu_op): Update for attribute changes.
(mp626_alu_shift_op): Likewise.
* config/arm/marvell-pj4.md (pj4_alu): Update for attribute changes.
(pj4_alu_conds): Likewise.
(pj4_shift): Likewise.
(pj4_shift_conds): Likewise.
(pj4_alu_shift): Likewise.
(pj4_alu_shift_conds): Likewise.
* config/aarch64/aarch64.md: Update for attribute change
all occurrences of arlo_* and shift* types.

Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
From-SVN: r202291

11 years agoregex_automaton.h: Add dummy node type.
Tim Shen [Thu, 5 Sep 2013 15:20:39 +0000 (15:20 +0000)]
regex_automaton.h: Add dummy node type.

2013-09-05  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_automaton.h: Add dummy node type. Rewrite
_StateSeq.
* include/bits/regex_automaton.tcc: Implement them.
* include/bits/regex_compiler.h: Rewrite _Compiler to use new
_StateSeq interfaces.
* include/bits/regex_compiler.tcc: Implement them.
* include/bits/regex_scanner.h: Add word boundry assertion token.
* include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
Support word boundry.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_02_03.cc: Remove "xfail".
* testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_02_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_questionmark.cc: Remove xfail and get correct length of
c-string.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_00_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
New.
* testsuite/28_regex/algorithms/regex_match/extended/cstring_range.cc:
New.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc: New.

From-SVN: r202290

11 years agotree.h: Move documentation for tree_function_decl to tree-core.h with the declaration.
Mike Stump [Thu, 5 Sep 2013 14:52:50 +0000 (14:52 +0000)]
tree.h: Move documentation for tree_function_decl to tree-core.h with the declaration.

* tree.h: Move documentation for tree_function_decl to tree-core.h
with the declaration.

From-SVN: r202289

11 years agore PR target/58139 (PowerPC volatile VSX register live across call)
Peter Bergner [Thu, 5 Sep 2013 14:09:07 +0000 (09:09 -0500)]
re PR target/58139 (PowerPC volatile VSX register live across call)

PR target/58139
* reginfo.c (choose_hard_reg_mode): Scan through all mode classes
looking for widest mode.

From-SVN: r202286

11 years ago* config.gcc (*-*-vxworks*): Do not override an existing extra_objs.
Eric Botcazou [Thu, 5 Sep 2013 13:54:35 +0000 (13:54 +0000)]
* config.gcc (*-*-vxworks*): Do not override an existing extra_objs.

From-SVN: r202284

11 years agore PR tree-optimization/58137 ([trunk, ICE] full unroll + AVX2 vectorization)
Richard Biener [Thu, 5 Sep 2013 12:45:20 +0000 (12:45 +0000)]
re PR tree-optimization/58137 ([trunk, ICE] full unroll + AVX2 vectorization)

2013-09-05  Richard Biener  <rguenther@suse.de>

PR tree-optimization/58137
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
Do not create vectors of pointers.
* tree-vect-loop.c (get_initial_def_for_induction): Use proper
types for the components of the vector initializer.
* tree-cfg.c (verify_gimple_assign_binary): Remove special-casing
allowing pointer vectors with PLUS_EXPR/MINUS_EXPR.

* gcc.target/i386/pr58137.c: New testcase.

From-SVN: r202282

11 years agoipa-prop.c (remove_described_reference): Accept missing references, return false...
Martin Jambor [Thu, 5 Sep 2013 12:41:16 +0000 (14:41 +0200)]
ipa-prop.c (remove_described_reference): Accept missing references, return false if that hppens, otherwise return true.

2013-09-05  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (remove_described_reference): Accept missing references,
return false if that hppens, otherwise return true.
(cgraph_node_for_jfunc): New function.
(try_decrement_rdesc_refcount): Likewise.
(try_make_edge_direct_simple_call): Use them.
(ipa_edge_removal_hook): Remove references from rdescs.
(ipa_edge_duplication_hook): Clone rdescs and their references
when the new edge has the same caller as the old one.
* cgraph.c (cgraph_resolve_speculation): Remove speculative
reference before removing any edges.

testsuite/
* g++.dg/ipa/remref-1.C: New test.
* g++.dg/ipa/remref-2.C: Likewise.

From-SVN: r202281

11 years agoarm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on initial store.
Richard Earnshaw [Thu, 5 Sep 2013 12:37:29 +0000 (12:37 +0000)]
arm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on initial store.

* arm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on
initial store.
* thumb2.md (thumb2_storewb_parisi): New pattern.

From-SVN: r202279

11 years ago[AArch64] Support the 'crc' extension in -march and -mcpu options.
Yufeng Zhang [Thu, 5 Sep 2013 11:30:14 +0000 (11:30 +0000)]
[AArch64] Support the 'crc' extension in -march and -mcpu options.

gcc/

* config/aarch64/aarch64-option-extensions.def: Add
AARCH64_OPT_EXTENSION of 'crc'.
* config/aarch64/aarch64.h (AARCH64_FL_CRC): New define.
(AARCH64_ISA_CRC): Ditto.
* doc/invoke.texi (-march and -mcpu feature modifiers): Add
description of the CRC extension.

From-SVN: r202275

11 years agolinux64.h: Define OPTION_BIONIC and OPTION_UCLIBC.
Alexander Ivchenko [Thu, 5 Sep 2013 11:01:35 +0000 (11:01 +0000)]
linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC.

* config/rs6000/linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC.
* config/rs6000/linux.h: Ditto.
* alpha/linux.h: Ditto.
* config/bfin/uclinux.h: Define TARGET_LIBC_HAS_FUNCTION as
no_c99_libc_has_function.
* config/c6x/uclinux-elf.h: Ditto.
* config/lm32/uclinux-elf.h: Ditto.
* config/m68k/uclinux.h: Ditto.
* config/moxie/uclinux.h: Ditto.
* config.gcc (bfin*-linux-uclibc*): Add t-linux-android to tmake_file.
(crisv32-*-linux*, cris-*-linux*): Ditto.
* config/bfin/bfin.c: Include "tm_p.h".

From-SVN: r202274

11 years agotree-vect-loop.c (vect_analyze_loop_operations): Properly check for a definition...
Richard Biener [Thu, 5 Sep 2013 10:30:51 +0000 (10:30 +0000)]
tree-vect-loop.c (vect_analyze_loop_operations): Properly check for a definition without a basic-block.

2013-09-05  Richard Biener  <rguenther@suse.de>

* tree-vect-loop.c (vect_analyze_loop_operations): Properly
check for a definition without a basic-block.

From-SVN: r202273

11 years ago[AArch64, AArch32][Insn classification refactoring 6/N] Remove "neon_type" attribute
James Greenhalgh [Thu, 5 Sep 2013 09:29:27 +0000 (09:29 +0000)]
[AArch64, AArch32][Insn classification refactoring 6/N] Remove "neon_type" attribute

gcc/
* config/aarch64/aarch64.md: Rename r_2_f and f_2_r where appropriate.
* config/arm/arm.md (attribute "neon_type"): Delete.  Move attribute
values to config/arm/types.md.  Update patterns where appropriate.
* config/arm/types.md (type): Add Neon types.
* config/arm/neon.md: Remove "neon_type" attribute,
use "type" attribute everywhere appropriate.
* doc/md.texi: Change references to neon_type to refer to type.
* config/arm/vfp.md: Update patterns for attribute changes.
* config/arm/arm.c (cortexa7_older_only): Update for attribute change.
* config/arm/arm1020e.md: Update for attribute change.
* config/arm/cortex-a15-neon.md: Update for attribute change.
* config/arm/cortex-a15.md: Update for attribute change.
* config/arm/cortex-a5.md: Update for attribute change.
* config/arm/cortex-a53.md: Update for attribute change.
* config/arm/cortex-a7.md: Update for attribute change.
* config/arm/cortex-a8-neon.md: Update for attribute change.
* config/arm/cortex-a8.md: Update for attribute change.
* config/arm/cortex-a9-neon.md: Update for attribute change.
* config/arm/cortex-a9.md: Update for attribute change.
* config/arm/cortex-m4-fpu.md: Update for attribute change.
* config/arm/cortex-r4f.md: Update for attribute change.
* config/arm/iterators.md: Update comment referring to neon_type.
* config/arm/iwmmxt.md: Update for attribute change.
* config/arm/marvell-pj4.md: Update for attribute change.
* config/arm/neon-schedgen.ml (emit_insn_reservations): Update for
attribute change.
* config/arm/vfp11.md: Update for attribute change.

Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
From-SVN: r202272

11 years agoFix typo in comment
Dodji Seketeli [Thu, 5 Sep 2013 07:56:47 +0000 (07:56 +0000)]
Fix typo in comment

gcc/

* tree.h (DECL_BUILT_INT): Fix typo in comment.

From-SVN: r202271

11 years agoDaily bump.
GCC Administrator [Thu, 5 Sep 2013 00:17:05 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r202269

11 years agore PR c++/24926 (gcc ignores access level violation for anonymous structs)
Paolo Carlini [Wed, 4 Sep 2013 23:52:48 +0000 (23:52 +0000)]
re PR c++/24926 (gcc ignores access level violation for anonymous structs)

/cp
2013-09-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/24926
* class.c (finish_struct_anon_r): New.
(finish_struct_anon): Use it.

/testsuite
2013-09-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/24926
* g++.dg/parse/access11.C: New.

From-SVN: r202266

11 years agors6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit lglobl if not weak.
David Edelsohn [Wed, 4 Sep 2013 21:24:56 +0000 (21:24 +0000)]
rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit lglobl if not weak.

        * config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit
        lglobl if not weak.

From-SVN: r202264

11 years ago* g++.dg/warn/weak1.C: Skip on AIX.
David Edelsohn [Wed, 4 Sep 2013 21:21:39 +0000 (21:21 +0000)]
* g++.dg/warn/weak1.C: Skip on AIX.

From-SVN: r202263

11 years agore PR tree-optimization/57370 (compiler hangs in reassoc)
Easwaran Raman [Wed, 4 Sep 2013 17:48:15 +0000 (17:48 +0000)]
re PR tree-optimization/57370 (compiler hangs in reassoc)

2013-09-04  Easwaran Raman  <eraman@google.com>

PR middle-end/57370
PR tree-optimization/58011
* tree-ssa-reassoc.c (get_stmt_uid_with_default): New function,
(build_and_add_sum): Use it.
(appears_later_in_bb): Simplify code.

gcc/testsuite/ChangeLog:
2013-09-04  Easwaran Raman  <eraman@google.com>

PR middle-end/57370
PR tree-optimization/58011
* gfortran.dg/reassoc_12.f90: New testcase.
* gcc.dg/tree-ssa/reassoc-31.c: New testcase.

From-SVN: r202262

11 years agoattr-weakref-1.c: Skip on AIX.
David Edelsohn [Wed, 4 Sep 2013 15:33:56 +0000 (15:33 +0000)]
attr-weakref-1.c: Skip on AIX.

* gcc.dg/attr-weakref-1.c: Skip on AIX.
* gcc.dg/torture/pr53922.c: Skip on AIX.
* lib/file-format.exp (gcc_target_object_format): AIX is COFF.

From-SVN: r202261

11 years agodumpfile.c (dump_finish): Don't close stderr/stdout.
Teresa Johnson [Wed, 4 Sep 2013 14:31:20 +0000 (14:31 +0000)]
dumpfile.c (dump_finish): Don't close stderr/stdout.

2013-09-04  Teresa Johnson  <tejohnson@google.com>

* dumpfile.c (dump_finish): Don't close stderr/stdout.

* testsuite/gcc.dg/unroll_1.c: Test dumping to stderr.

From-SVN: r202260

11 years ago[AArch64] Obvious - Fix return types for vaddvq_<su>64
James Greenhalgh [Wed, 4 Sep 2013 14:26:23 +0000 (14:26 +0000)]
[AArch64] Obvious - Fix return types for vaddvq_<su>64

gcc/
* config/aarch64/arm_neon.h (vaddvq_<su>64): Fix return types.

From-SVN: r202259

11 years agoMakefile.in (ipa-devirt.o): Add dependency on diagnostic.h
Jan Hubicka [Wed, 4 Sep 2013 14:14:28 +0000 (16:14 +0200)]
Makefile.in (ipa-devirt.o): Add dependency on diagnostic.h

* Makefile.in (ipa-devirt.o): Add dependency on diagnostic.h
* ipa-devirt.c: Include diganostic.h
(odr_type_d): Add types and types_set.
(hash_type_name): Work for types with vtables during LTO.
(odr_hasher::remove): Fix comment; destroy types_set.
(add_type_duplicate): New function,
(get_odr_type): Use it.
(dump_type_inheritance_graph): Dump type duplicates.
* ipa.c (symtab_remove_unreachable_nodes): Build type inheritance
graph.
* tree.c (types_same_for_odr): Give exact answers on types with
virtual tables.

From-SVN: r202258

11 years agoMore comments about DECL_BUILT_IN and DECL_IS_BUILTIN
Dodji Seketeli [Wed, 4 Sep 2013 12:54:09 +0000 (12:54 +0000)]
More comments about DECL_BUILT_IN and DECL_IS_BUILTIN

gcc/

* tree.h (DECL_BUILT_IN, DECL_IS_BUILTIN): Add more comments
explaining their differences.

From-SVN: r202251

11 years agoconfig/rx/rx.h: Add option -mcpu for target variants RX100 and RX200.
Sandeep Kumar Singh [Wed, 4 Sep 2013 12:03:44 +0000 (12:03 +0000)]
config/rx/rx.h: Add option -mcpu for target variants RX100 and RX200.

From-SVN: r202250

11 years agoc-pretty-print.h (c_pretty_printer::simple_type_specifier): Now a virtual member...
Gabriel Dos Reis [Wed, 4 Sep 2013 10:52:35 +0000 (10:52 +0000)]
c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now a virtual member function.

c-family/
* c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
a virtual member function.
(pp_simple_type_specifier): Remove.
(pp_c_type_specifier): Likewise.
* c-pretty-print.c (c_pretty_printer::simple_type_specifier):
Rename from pp_c_type_specifier.  Adjust.
(c_pretty_printer::c_pretty_printer): Do not assign to
simple_type_specifier.
cp/
* cxx-pretty-print.h (cxx_pretty_printer::simple_type_specifier):
Declare as overrider.
* cxx-pretty-print.c (cxx_pretty_printer::simple_type_specifier):
Rename from pp_cxx_simple_type_specifier.
(cxx_pretty_printer::cxx_pretty_printer): Do not assign to
simple_type_specifier.

From-SVN: r202247

11 years agoMakefile.am (libgcjgc_la_LIBADD): Add EXTRA_TEST_LIBS.
Matthias Klose [Wed, 4 Sep 2013 10:48:01 +0000 (10:48 +0000)]
Makefile.am (libgcjgc_la_LIBADD): Add EXTRA_TEST_LIBS.

2013-09-04  Matthias Klose  <doko@ubuntu.com>

        * Makefile.am (libgcjgc_la_LIBADD): Add EXTRA_TEST_LIBS.
        * Makefile.in: Regenerate.

From-SVN: r202245

11 years ago- Fix whitespace in boehm-gc/ChangeLog
Matthias Klose [Wed, 4 Sep 2013 10:38:25 +0000 (10:38 +0000)]
- Fix whitespace in boehm-gc/ChangeLog

From-SVN: r202244

11 years agore PR c++/58305 (Deprecation warning for class not raised when not assigning to a...
Paolo Carlini [Wed, 4 Sep 2013 08:57:26 +0000 (08:57 +0000)]
re PR c++/58305 (Deprecation warning for class not raised when not assigning to a variable)

/cp
2013-09-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58305
* typeck2.c (build_functional_cast): Maybe warn_deprecated_use.

/testsuite
2013-09-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58305
* g++.dg/warn/deprecated-8.C: New.

From-SVN: r202242

11 years agocompiler: expand arguments with multiple results for built-in functions.
Ian Lance Taylor [Wed, 4 Sep 2013 04:32:07 +0000 (04:32 +0000)]
compiler: expand arguments with multiple results for built-in functions.

Fixed https://code.google.com/p/go/issues/detail?id=5796. Official fixedbug will be added with change to gc.

From-SVN: r202239

11 years ago* Make-lang.in (cp/lambda.o): Add dependencies.
Mike Stump [Wed, 4 Sep 2013 02:46:13 +0000 (02:46 +0000)]
* Make-lang.in (cp/lambda.o): Add dependencies.

From-SVN: r202238

11 years agoDaily bump.
GCC Administrator [Wed, 4 Sep 2013 00:16:38 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202237

11 years agocompiler, runtime: Use runtime functions to pass closure value.
Ian Lance Taylor [Tue, 3 Sep 2013 21:52:37 +0000 (21:52 +0000)]
compiler, runtime: Use runtime functions to pass closure value.

This changes the compiler and runtime to not pass a closure
value as the last argument, but to instead pass it via
__go_set_closure and retrieve it via __go_get_closure.  This
eliminates the need for function descriptor wrapper functions.
It will make it possible to retrieve the closure value in a
reflect.MakeFunc function.

From-SVN: r202233

11 years agotree-ssa-threadedge.c (thread_across_edge): Record entire path when not threading...
Jeff Law [Tue, 3 Sep 2013 20:43:46 +0000 (14:43 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Record entire path when not threading through a joiner block.

* tree-ssa-threadedge.c (thread_across_edge): Record entire path
when not threading through a joiner block.  Pass joiner/no joiner
state to register_jump_thread.
* tree-ssa-threadupdate.c (register_jump_thread): Get joiner/no joiner
state from argument rather than implying on path length.
Dump the entire jump thread path into debugging dump.
* tree-flow.h (register_jump_thread): Update prototype.

* tree-ssa/ssa-dom-thread-3.c: Update due to changes in debug
dump output.

From-SVN: r202232

11 years agoRemove a trivial assert (missed in previous checkin)
Xinliang David Li [Tue, 3 Sep 2013 19:11:10 +0000 (19:11 +0000)]
Remove a trivial assert (missed in previous checkin)

From-SVN: r202230

11 years agoDelay base decl's alignment adjustment until transformation happens
Xinliang David Li [Tue, 3 Sep 2013 18:19:04 +0000 (18:19 +0000)]
Delay base decl's alignment adjustment until transformation happens

From-SVN: r202229

11 years agorevert: tree-vrp.c (check_array_ref): Bail out on zero-length arrays.
Meador Inge [Tue, 3 Sep 2013 17:04:39 +0000 (17:04 +0000)]
revert: tree-vrp.c (check_array_ref): Bail out on zero-length arrays.

gcc/

2013-09-03  Meador Inge  <meadori@codesourcery.com>

Revert:

2013-08-30  Meador Inge  <meadori@codesourcery.com>

* tree-vrp.c (check_array_ref): Bail out on zero-length arrays.

gcc/testsuite/

2013-09-03  Meador Inge  <meadori@codesourcery.com>

Revert:

2013-08-30  Meador Inge  <meadori@codesourcery.com>

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

From-SVN: r202228

11 years ago* lib/target-supports.exp (check_weak_available): Return true for AIX.
David Edelsohn [Tue, 3 Sep 2013 16:25:15 +0000 (16:25 +0000)]
* lib/target-supports.exp (check_weak_available): Return true for AIX.

From-SVN: r202227

11 years agors6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Emit lglobl for function descriptor.
David Edelsohn [Tue, 3 Sep 2013 16:09:21 +0000 (16:09 +0000)]
rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Emit lglobl for function descriptor.

* config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Emit lglobl for
function descriptor.

From-SVN: r202226

11 years ago* g++.dg/ipa/devirt-15.C: Fix testcase.
Jan Hubicka [Tue, 3 Sep 2013 15:43:10 +0000 (17:43 +0200)]
* g++.dg/ipa/devirt-15.C: Fix testcase.

From-SVN: r202225

11 years agore PR libstdc++/58302 (compilation error : std::negative_binomial_distribution::opera...
Paolo Carlini [Tue, 3 Sep 2013 10:12:19 +0000 (10:12 +0000)]
re PR libstdc++/58302 (compilation error : std::negative_binomial_distribution::operator(e, p))

2013-09-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/58302
* include/bits/random.tcc (negative_binomial_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&):
Fix typo in template argument.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/58302.cc: New.

From-SVN: r202208

11 years agoconfigure.ac: Also allow ISL 0.12.
Richard Biener [Tue, 3 Sep 2013 10:06:16 +0000 (10:06 +0000)]
configure.ac: Also allow ISL 0.12.

2013-09-03  Richard Biener  <rguenther@suse.de>

* configure.ac: Also allow ISL 0.12.
* configure: Regenerated.

From-SVN: r202207

11 years agoconfigure.ac: Also allow ISL 0.12.
Richard Biener [Tue, 3 Sep 2013 10:05:29 +0000 (10:05 +0000)]
configure.ac: Also allow ISL 0.12.

2013-09-03  Richard Biener  <rguenther@suse.de>

* configure.ac: Also allow ISL 0.12.
* configure: Regenerated.

From-SVN: r202206

11 years agotree-affine.c (add_elt_to_tree): Fix association issue...
Richard Biener [Tue, 3 Sep 2013 10:02:56 +0000 (10:02 +0000)]
tree-affine.c (add_elt_to_tree): Fix association issue...

2013-09-03  Richard Biener  <rguenther@suse.de>

* tree-affine.c (add_elt_to_tree): Fix association issue,
avoid useless converts and make sure to always return a
properly typed result.

From-SVN: r202205

11 years agore PR tree-optimization/57656 (Wrong constant folding)
Richard Biener [Tue, 3 Sep 2013 10:00:06 +0000 (10:00 +0000)]
re PR tree-optimization/57656 (Wrong constant folding)

2013-09-03  Richard Biener  <rguenther@suse.de>

PR middle-end/57656
* fold-const.c (negate_expr_p): Fix division case.
(negate_expr): Likewise.

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

From-SVN: r202204

11 years agoc-objc-common.c (c_tree_printer): Tidy.
Gabriel Dos Reis [Tue, 3 Sep 2013 09:52:19 +0000 (09:52 +0000)]
c-objc-common.c (c_tree_printer): Tidy.

c/
* c-objc-common.c (c_tree_printer): Tidy.
c-family/
* c-pretty-print.h (c_pretty_printer::type_id): Now a virtual
member function.
(c_pretty_printer::storage_class_specifier): Likewise.
(c_pretty_printer::initializer): Likewise.
(pp_declaration): Remove.
(pp_declaration_specifiers): Likewise.
(pp_abstract_declarator): Likewise.
(pp_declarator): Likewise.
(pp_type_id): Likewise.
(pp_statement): Likewise.
(pp_constant): Likewise.
(pp_id_expression): Likewise.
(pp_primary_expression): Likewise.
(pp_unary_expression): Likewise.
(pp_multiplicative_expression): Likewise.
(pp_conditional_expression): Likewise.
(pp_assignment_expression): Likewise.
(pp_expression): Likewise.
(pp_c_type_id): Likewise.
(pp_c_storage_class_specifier): Likewise.
* c-pretty-print.c (pp_c_type_cast): Tidy.
(pp_c_pointer): Likewise.
(pp_c_type_specifier): Likewise.
(pp_c_parameter_type_list): Likewise.
(pp_c_function_definition): Likewise.
(pp_c_init_declarator): Likewise.
(pp_c_initializer_list): Likewise.
(pp_c_constructor_elts): Likewise.
(c_pretty_printer::direct_abstract_declarator): Likewise.
(c_pretty_printer::declaration_specifiers): Likewise.
(c_pretty_printer::primary_expression): Likewise.
(c_pretty_printer::postfix_expression): Likewise.
(c_pretty_printer::type_id): Rename from pp_c_type_id.
(c_pretty_printer::storage_class_specifier): Rename from
pp_c_storage_class_specifier.
(c_pretty_printer::initializer): Rename from pp_c_initializer.
(c_pretty_printer::c_pretty_printer): Do not assign to type_id,
storage_class_specifier, initializer, offset_list, flags.

cp/
* cxx-pretty-print.h (cxx_pretty_printer::type_id): Declare as
overrider.
* cxx-pretty-print.c (pp_cxx_storage_class_specifier): Remove.
(pp_cxx_userdef_literal): Tidy.
(pp_cxx_template_argument_list): Likewise.
(pp_cxx_typeid_expression): Likewise.
(pp_cxx_offsetof_expression_1): Likewise.
(cxx_pretty_printer::postfix_expression): Likewise.
(cxx_pretty_printer::unary_expression): Likewise.
(cxx_pretty_printer::statement): Likewise.
(cxx_pretty_printer::type_id): Rename from pp_cxx_type_id.
(c_pretty_printer::cxx_pretty_printer): Do not assign to type_id.
* error.c (dump_decl): Tidy.
(dump_expr): Likewise.

From-SVN: r202203

11 years agore PR lto/58285 (ICE in lto_output_tree, at lto-streamer-out.c:1318)
Richard Biener [Tue, 3 Sep 2013 09:48:27 +0000 (09:48 +0000)]
re PR lto/58285 (ICE in lto_output_tree, at lto-streamer-out.c:1318)

2013-09-03  Richard Biener  <rguenther@suse.de>

PR lto/58285
* tree-streamer-out.c: Include tm.h.
* Makefile.in (tree-streamer-out.o): Depend on $(TM_H).

From-SVN: r202202

11 years agore PR middle-end/57287 (Bogus uninitialized warning with abnormal control flow)
Richard Biener [Tue, 3 Sep 2013 07:53:05 +0000 (07:53 +0000)]
re PR middle-end/57287 (Bogus uninitialized warning with abnormal control flow)

2013-09-03  Richard Biener  <rguenther@suse.de>

PR middle-end/57287
* gcc.dg/pr57287-2.c: Use setjmp, not __sigsetjmp.

From-SVN: r202197

11 years agoDaily bump.
GCC Administrator [Tue, 3 Sep 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202195

11 years agoinclhack.def (aix_assert): New fix.
David Edelsohn [Mon, 2 Sep 2013 23:01:49 +0000 (23:01 +0000)]
inclhack.def (aix_assert): New fix.

* inclhack.def (aix_assert): New fix.
        * fixincl.x: Regenerate.
* tests/base/assert.h [AIX_ASSERT_CHECK]: New check.

From-SVN: r202192

11 years ago* tree-profile.c (tree_profiling): Cleanup CFG when done.
Jan Hubicka [Mon, 2 Sep 2013 22:52:27 +0000 (00:52 +0200)]
* tree-profile.c (tree_profiling): Cleanup CFG when done.

From-SVN: r202191

11 years agoconfig.gcc (powerpc*-*-linux*): Add support for little-endian multilibs to big-endian...
Alan Modra [Mon, 2 Sep 2013 22:40:40 +0000 (08:10 +0930)]
config.gcc (powerpc*-*-linux*): Add support for little-endian multilibs to big-endian target and vice versa.

* config.gcc (powerpc*-*-linux*): Add support for little-endian
multilibs to big-endian target and vice versa.
* config/rs6000/t-linux64: Use := assignment on all vars.
(MULTILIB_EXTRA_OPTS): Remove fPIC.
(MULTILIB_OSDIRNAMES): Specify using mapping from multilib_options.
* config/rs6000/t-linux64le: New file.
* config/rs6000/t-linux64bele: New file.
* config/rs6000/t-linux64lebe: New file.

From-SVN: r202190

11 years agoregex_automaton.h: Rearrange _NFA's layout.
Tim Shen [Mon, 2 Sep 2013 22:20:56 +0000 (22:20 +0000)]
regex_automaton.h: Rearrange _NFA's layout.

2013-09-02  Tim Shen  <timshen91@gmail.com>

* regex_automaton.h: Rearrange _NFA's layout.
* include/bits/regex_compiler.h: Add _AnyMatcher and _CharMatcher.
  Rearrange _BracketMatcher's layout.
  (_BracketMatcher<>::_M_add_char): Use set instead of vector for
  _M_char_set.
  (_BracketMatcher<>::_M_add_collating_element): Likewise.
  (_BracketMatcher<>::_M_make_range): Likewise.
* include/bits/regex_compiler.tcc (_Compiler<>::_M_atom): Use
  apropriate constructors of matchers above.
* testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
  New.
* testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: New.
* testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
  New.
* testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
  New.
* testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: New.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc:
  New.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: New.

From-SVN: r202189

11 years agoPR fortran/PR56519
Thomas Koenig [Mon, 2 Sep 2013 22:09:07 +0000 (22:09 +0000)]
PR fortran/PR56519

2013-09-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/PR56519
* gfortran.h:  Declare gfc_do_concurrent_flag as extern.
* resolve.c:  Rename do_concurrent_flag to gfc_do_concurrent_flag
and make non-static.
(resolve_function):  Use gfc_do_concurrent_flag instead of
do_concurrent_flag.
(pure_subroutine):  Likewise.
(resolve_code):  Likewise.
(resolve_types):  Likewise.
* intrinsic.c (gfc_intrinsic_sub_interface):  Raise error for
non-pure intrinsic subroutines within DO CONCURRENT.

2013-09-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/PR56519
* gfortran.dg/do_concurrent_3.f90:  New test case.

From-SVN: r202188

11 years agoipa-inline-transform.c (inline_transform): Do not optimize_inline_calls when not...
Jan Hubicka [Mon, 2 Sep 2013 21:45:48 +0000 (23:45 +0200)]
ipa-inline-transform.c (inline_transform): Do not optimize_inline_calls when not optimizing.

* ipa-inline-transform.c (inline_transform): Do not
optimize_inline_calls when not optimizing.

From-SVN: r202187

11 years agolto-symtab.c (lto_symtab_merge_symbols): Add comments; merge duplicated nodes for...
Jan Hubicka [Mon, 2 Sep 2013 21:44:35 +0000 (23:44 +0200)]
lto-symtab.c (lto_symtab_merge_symbols): Add comments; merge duplicated nodes for assembler names.

* lto-symtab.c (lto_symtab_merge_symbols): Add comments; merge
duplicated nodes for assembler names.
* symtab.c (symtab_unregister_node): Do not attempt to unlink
hard registers from assembler name hash.

From-SVN: r202186

11 years agoipa-split.c (execute_split_functions): Split externally visible functions called...
Jan Hubicka [Mon, 2 Sep 2013 20:17:10 +0000 (22:17 +0200)]
ipa-split.c (execute_split_functions): Split externally visible functions called once.

* ipa-split.c (execute_split_functions): Split externally visible
functions called once.
* gcc.dg/tree-ssa/fnsplit-1.c: New testcase.

From-SVN: r202185

11 years agore PR ipa/58106 (ICE: in ipa_edge_duplication_hook, at ipa-prop.c:2839)
Martin Jambor [Mon, 2 Sep 2013 19:28:01 +0000 (21:28 +0200)]
re PR ipa/58106 (ICE: in ipa_edge_duplication_hook, at ipa-prop.c:2839)

2013-09-02  Martin Jambor  <mjambor@suse.cz>

PR ipa/58106
* ipa-prop.c (ipa_edge_duplication_hook): Always put new rdesc to the
linked list.  When finding the correct duplicate, also consider also
the caller in additon to its inlined_to node.

testsuite/
* gcc.dg/ipa/pr58106.c: New test.

From-SVN: r202184

11 years ago[AArch64] Rewrite the vdup_lane intrinsics in C
James Greenhalgh [Mon, 2 Sep 2013 16:22:10 +0000 (16:22 +0000)]
[AArch64] Rewrite the vdup_lane intrinsics in C

gcc/
* config/aarch64/aarch64-simd-builtins.def
(dup_lane_scalar): Remove.
* config/aarch64/aarch64-simd.md
(aarch64_simd_dup): Add 'w->w' alternative.
(aarch64_dup_lane<mode>): Allow for VALL.
(aarch64_dup_lane_scalar<mode>): Remove.
(aarch64_dup_lane_<vswap_width_name><mode>): New.
(aarch64_get_lane_signed<mode>): Add w->w altenative.
(aarch64_get_lane_unsigned<mode>): Likewise.
(aarch64_get_lane<mode>): Likewise.
* config/aarch64/aarch64.c (aarch64_evpc_dup): New.
(aarch64_expand_vec_perm_const_1): Use aarch64_evpc_dup.
* config/aarch64/iterators.md (VSWAP_WIDTH): New.
(VCON): Change container of V2SF.
(vswap_width_name): Likewise.
* config/aarch64/arm_neon.h
(__aarch64_vdup_lane_any): New.
(__aarch64_vdup<q>_lane<q>_<fpsu><8,16,32,64>): Likewise.
(vdup<q>_n_<psuf><8,16,32,64>): Convert to C implementation.
(vdup<q>_lane<q>_<fpsu><8,16,32,64>): Likewise.

gcc/testsuite/
* gcc.target/aarch64/scalar_intrinsics.c
(vdup<bhsd>_lane<su><8,16,32,64>): Force values to SIMD registers.

From-SVN: r202180

11 years agore PR middle-end/56382 (FAIL: gcc.c-torture/compile/pr55921.c (internal compiler...
Eric Botcazou [Mon, 2 Sep 2013 16:19:20 +0000 (16:19 +0000)]
re PR middle-end/56382 (FAIL: gcc.c-torture/compile/pr55921.c  (internal compiler error))

PR middle-end/56382
* expr.c (emit_move_complex): Do not move complex FP values as parts if
the source or the destination is a single hard register.

From-SVN: r202179

11 years agolto.c (mentions_vars_p_field_decl, [...]): DECL_FIELD_OFFSET can contain an reference...
Jan Hubicka [Mon, 2 Sep 2013 14:45:06 +0000 (16:45 +0200)]
lto.c (mentions_vars_p_field_decl, [...]): DECL_FIELD_OFFSET can contain an reference to variable.

* lto.c (mentions_vars_p_field_decl, lto_fixup_prevailing_decls):
DECL_FIELD_OFFSET can contain an reference to variable.

From-SVN: r202174

11 years agoSplit all the structures, enums, typedefs and some fundamental declarations from...
Diego Novillo [Mon, 2 Sep 2013 14:25:40 +0000 (10:25 -0400)]
Split all the structures, enums, typedefs and some fundamental declarations from tree.h into tree-core.h.

Split all the structures, enums, typedefs and some fundamental
declarations from tree.h into tree-core.h.  Everything else stays in
tree.h for now.

As we convert gimple files, we'll move declarations out of tree.h into
other headers and rewrite missing functions in the new gimple API.

* Makefile.in (TREE_CORE_H): Define.
(TREE_H): Use.
(GTFILES): Add tree-core.h.
* builtins.c (built_in_class_names): Use BUILT_IN_LAST to
size the array.
* tree-core.h: New file.
Move all data structures, enum, typedefs, global
declarations and constants from ...
* tree.h: ... here.

From-SVN: r202172

11 years agore PR tree-optimization/57511 (Missing SCEV final value replacement)
Richard Biener [Mon, 2 Sep 2013 13:24:30 +0000 (13:24 +0000)]
re PR tree-optimization/57511 (Missing SCEV final value replacement)

2013-09-02  Richard Biener  <rguenther@suse.de>

PR middle-end/57511
* tree-scalar-evolution.c (instantiate_scev_name): Allow
non-linear SCEVs.

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

From-SVN: r202168

11 years agotree-affine.c (add_elt_to_tree): Avoid converting all pointer arithmetic to sizetype.
Richard Biener [Mon, 2 Sep 2013 11:37:13 +0000 (11:37 +0000)]
tree-affine.c (add_elt_to_tree): Avoid converting all pointer arithmetic to sizetype.

2013-09-02  Richard Biener  <rguenther@suse.de>

* tree-affine.c (add_elt_to_tree): Avoid converting all pointer
arithmetic to sizetype.

* gcc.dg/tree-ssa/loop-4.c: Adjust scan looking for one memory
reference.

From-SVN: r202165

11 years agotree-ssa-loop-ivopts.c (set_autoinc_for_original_candidates): Find auto-increment...
Bin Cheng [Mon, 2 Sep 2013 09:58:41 +0000 (09:58 +0000)]
tree-ssa-loop-ivopts.c (set_autoinc_for_original_candidates): Find auto-increment use both before and after candidate.

* tree-ssa-loop-ivopts.c (set_autoinc_for_original_candidates):
Find auto-increment use both before and after candidate.

* gcc.target/arm/ivopts-orig_biv-inc.c: New testcase.

From-SVN: r202164

11 years agoPR c++/21682, implement DR 565
Paolo Carlini [Mon, 2 Sep 2013 09:42:39 +0000 (09:42 +0000)]
PR c++/21682, implement DR 565

/cp
2013-09-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/21682, implement DR 565
* name-lookup.c (compparms_for_decl_and_using_decl): New.
(push_overloaded_decl_1, do_nonmember_using_decl): Use it.

/testsuite
2013-09-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/21682, implement DR 565
* g++.dg/template/using24.C: New.
* g++.dg/template/using25.C: Likewise.
* g++.dg/template/using26.C: Likewise.

From-SVN: r202163

11 years agoMakefile.in (ubsan.o): Add $(TM_P_H) dependency.
Marek Polacek [Mon, 2 Sep 2013 07:46:13 +0000 (07:46 +0000)]
Makefile.in (ubsan.o): Add $(TM_P_H) dependency.

2013-09-02  Marek Polacek  <polacek@redhat.com>

* Makefile.in (ubsan.o): Add $(TM_P_H) dependency.

From-SVN: r202159

11 years agoDaily bump.
GCC Administrator [Mon, 2 Sep 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202158

11 years agoMakefile.in: Add ipa-profile.o
Jan Hubicka [Sun, 1 Sep 2013 17:47:21 +0000 (19:47 +0200)]
Makefile.in: Add ipa-profile.o

* Makefile.in: Add ipa-profile.o
(ipa.o, ipa-devrit.o, ipa-inline-analysis.o): Adjust dependencies.
* cgraph.c (struct cgraph_propagate_frequency_data,
cgraph_propagate_frequency_1, cgraph_propagate_frequency): Move to
ipa-profile.c; replace cgraph_ by ipa_ prefix.
* cgraph.h (cgraph_propagate_frequency): Remove.
* ipa-inline-analysis.c: Include ipa-utils.h; drop duplicated cfgloop.h.
(inline_update_callee_summaries): Update.
* ipa-profile.c: New file.
* ipa-utils.h (ipa_propagate_frequency): Declare.
* ipa.c: Do not include pointer-set.h, hash-table.h, lto-streamer.h,
data-streamer.h, value-prof.h
(symtab_remove_unreachable_nodes): Update profile.
(struct histogram_entry, histogram, histogram_pool, histogram_hash,
account_time_size, cmp_counts, dump_histogram,
ipa_profile_generate_summary, ipa_profile_write_summary,
ipa_profile_read_summary, ipa_profile, gate_ipa_profile,
pass_data_ipa_profile, pass_ipa_profile, make_pass_ipa_profile):
Move to ipa-profile.c

From-SVN: r202154

11 years ago* g++.dg/ipa/devirt-15.C: New testcase.
Jan Hubicka [Sun, 1 Sep 2013 17:06:40 +0000 (19:06 +0200)]
* g++.dg/ipa/devirt-15.C: New testcase.

From-SVN: r202153

11 years agore PR ada/58239 (pretty-print.c:789: undefined reference to `operator delete(void*)')
Eric Botcazou [Sun, 1 Sep 2013 16:51:41 +0000 (16:51 +0000)]
re PR ada/58239 (pretty-print.c:789: undefined reference to `operator delete(void*)')

PR ada/58239
gnattools/
* Makefile.in (CXX_LFLAGS): New.
(TOOLS_FLAGS_TO_PASS_NATIVE): Pass CXX and CXX_LFLAGS.
(TOOLS_FLAGS_TO_PASS_RE): Likewise.
(TOOLS_FLAGS_TO_PASS_CROSS): Pass CXX.
gcc/ada/
* gcc-interface/Makefile.in (GCC_LINK_FLAGS): Add -static-libstdc++.
(GCC_LINK): Use CXX instead of CC.
* gcc-interface/Make-lang.in (CXX_LFLAGS): New.
(ADA_TOOLS_FLAGS_TO_PASS): Pass CXX, and CXX_LFLAGS for native.

Co-Authored-By: Iain Sandoe <iain@codesourcery.com>
From-SVN: r202150

11 years agopa.md: Allow "const 0" operand 1 in "scc" insns.
John David Anglin [Sun, 1 Sep 2013 16:35:06 +0000 (16:35 +0000)]
pa.md: Allow "const 0" operand 1 in "scc" insns.

* config/pa/pa.md: Allow "const 0" operand 1 in "scc" insns.

From-SVN: r202149

11 years ago* gnat.dg/specs/linker_alias.ads: Skip on Darwin.
Eric Botcazou [Sun, 1 Sep 2013 16:33:28 +0000 (16:33 +0000)]
* gnat.dg/specs/linker_alias.ads: Skip on Darwin.

From-SVN: r202148

11 years agoCorrect previous commit to the final version of patch.
Jan Hubicka [Sun, 1 Sep 2013 15:27:14 +0000 (15:27 +0000)]
Correct previous commit to the final version of patch.

From-SVN: r202146

11 years agocommon.opt (fdevirtualize-speculatively): New function.
Jan Hubicka [Sun, 1 Sep 2013 15:14:24 +0000 (17:14 +0200)]
common.opt (fdevirtualize-speculatively): New function.

* common.opt (fdevirtualize-speculatively): New function.
* invoke.texi (fdevirtualize-speculatively): Document.
* ipa-devirt.c: Include ipa-inline.h
(likely_target_p): New function.
(ipa_devirt): New function.
(gate_ipa_devirt): New function.
(pass_data_ipa_devirt): New static var.
(pass_ipa_devirt): Likewise.
(make_pass_ipa_devirt): New function.
* opts.c (default_options): Add OPT_fdevirtualize_speculatively.
(common_handle_option): Disable devirtualization when
value range profiling is available.
* passes.def (pass_ipa_devirt): Add.
* timever.def (TV_IPA_DEVIRT): New timevar.
* tree-pass.h (make_pass_ipa_devirt):

From-SVN: r202145

11 years agodarwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to include sanitize(undefined).
Iain Sandoe [Sun, 1 Sep 2013 12:16:07 +0000 (12:16 +0000)]
darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to include sanitize(undefined).

gcc:

        * config/darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to
        include sanitize(undefined).

libsanitizer:

        * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit
        libinterception.la for Darwin.
        * ubsan/Makefile.in: Regenerate.

From-SVN: r202144

11 years agolto.c (tree_with_vars): Turn into vector.
Jan Hubicka [Sun, 1 Sep 2013 12:00:35 +0000 (14:00 +0200)]
lto.c (tree_with_vars): Turn into vector.

* lto.c (tree_with_vars): Turn into vector.
(MAYBE_REMEMBER_WITH_VARS): Change to...
(CHECK_VAR): ... this one.
(CHECK_NO_VAR): New macro.
(maybe_remember_with_vars_typed): Turn to ...
(mentions_vars_p_typed): ... this one.
(maybe_remember_with_vars_common): Turn to ...
(mentions_vars_p_comon): ... this one.
(maybe_remember_with_vars_decl_minimal): Turn to ...
(mentions_vars_p_decl_minmal): ... this one.
(maybe_remember_with_vars_decl_common): Turn to ...
(mentions_vars_p_decl_common): ... this one.
(maybe_remember_with_vars_decl_with_vis): Turn to ...
(mentions_vars_p_decl_with_vis): ... this one.
(maybe_remember_with_vars_decl_non_common): Turn to ...
(mentions_vars_p_decl_non_common): ... this one.
(maybe_remember_with_vars_function): Turn to ...
(mentions_vars_p_function): ... this one.
(maybe_remember_with_vars_field_decl): Turn to ...
(mentions_vars_p_field_decl): ... this one.
(maybe_remember_with_vars_type): Turn to ...
(mentions_vars_p_type): ... this one.
(maybe_remember_with_vars_binfo): Turn to ...
(mentions_vars_p_binfo): ... this one.
(maybe_remember_with_vars_constructor): Turn to ...
(mentions_vars_p_constructor): ... this one.
(maybe_remember_with_vars_expr): Turn to ...
(mentions_vars_p_expr): ... this one.
(maybe_remember_with_vars): Turn to ...
(mentions_vars_p): ... this one.
(lto_read_decls): Update.
(LTO_SET_PREVAIL): Do not call function for internal decls.
(lto_fixup_prevailing_decls): Update to match mentions_vars_p;
check that something was updated.
(lto_fixup_state): Do not care about internal decls.
(lto_fixup_decls): Update.
(read_cgraph_and_symbols): Update.

From-SVN: r202143

11 years agofork-instrumentation.c: New testcase.
Jan Hubicka [Sun, 1 Sep 2013 11:59:27 +0000 (13:59 +0200)]
fork-instrumentation.c: New testcase.

* gcc.dg/fork-instrumentation.c: New testcase.
* builtins.c (expand_builtin): Do not exit early for gcov
instrumented functions.

From-SVN: r202142

11 years agoDaily bump.
GCC Administrator [Sun, 1 Sep 2013 00:16:38 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202139

11 years agoubsan.c: Include tm_p.h.
Marek Polacek [Sat, 31 Aug 2013 15:31:34 +0000 (15:31 +0000)]
ubsan.c: Include tm_p.h.

2013-08-31  Marek Polacek  <polacek@redhat.com>

* ubsan.c: Include tm_p.h.

From-SVN: r202134

11 years agogimple-streamer-in.c (input_gimple_stmt): Silence parameter unused warning.
Jan Hubicka [Sat, 31 Aug 2013 14:20:47 +0000 (16:20 +0200)]
gimple-streamer-in.c (input_gimple_stmt): Silence parameter unused warning.

* gimple-streamer-in.c (input_gimple_stmt): Silence parameter unused
warning.

From-SVN: r202133

11 years ago* testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
Diego Novillo [Sat, 31 Aug 2013 13:55:10 +0000 (09:55 -0400)]
* testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.

From-SVN: r202132