gcc.git
13 years agomorestack.S (__i686.get_pc_thunk.bx): New.
Chris Demetriou [Tue, 3 May 2011 23:22:03 +0000 (16:22 -0700)]
morestack.S (__i686.get_pc_thunk.bx): New.

2011-05-03  Chris Demetriou  <cgd@google.com>

        * config/i386/morestack.S (__i686.get_pc_thunk.bx): New.

From-SVN: r173345

13 years agore PR libstdc++/48848 ([C++0x] std::valarray<T> functions missing)
Paolo Carlini [Tue, 3 May 2011 22:25:24 +0000 (22:25 +0000)]
re PR libstdc++/48848 ([C++0x] std::valarray<T> functions missing)

2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/48848
* include/std/valarray (valarray<>::valarray(valarray&&),
valarray<>::operator=(valarray&&), valarray<>::swap): Add.
* doc/xml/manual/status_cxx200x.xml: Update.
* testsuite/26_numerics/valarray/moveable.cc: New.
* testsuite/26_numerics/valarray/swap.cc: Likewise.

From-SVN: r173344

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Tue, 3 May 2011 21:56:45 +0000 (23:56 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])

2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/this_image_1.f90: Remove dg-options.

From-SVN: r173343

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Tue, 3 May 2011 21:44:27 +0000 (23:44 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])

2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * trans-intrinsic.c (trans_this_image): Implement version with
        coarray argument.

2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/this_image_1.f90: New.

From-SVN: r173342

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Tue, 3 May 2011 21:35:44 +0000 (23:35 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])

2011-05-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray/caf.dg: New.
        * gfortran.dg/coarray/image_index_1.f90: New, copied
        from ../coarray_16.f90.

From-SVN: r173341

13 years agoPR42288 emit empty .debug_aranges section.
Mark Wielaard [Tue, 3 May 2011 19:36:08 +0000 (19:36 +0000)]
PR42288 emit empty .debug_aranges section.

* dwarf2out.c (dwarf2out_finish): Always call output_aranges ()
  when info_section_emitted.

From-SVN: r173340

13 years agomips-opts.h: New.
Joseph Myers [Tue, 3 May 2011 18:51:49 +0000 (19:51 +0100)]
mips-opts.h: New.

* config/mips/mips-opts.h: New.
* config/mips/mips.c (enum mips_r10k_cache_barrier_setting): Move
to mips-opts.h.
(mips_abi, mips_code_readable, mips_r10k_cache_barriee): Remove.
(mips_handle_option): Don't handle OPT_mabi_, OPT_mcode_readable_
or OPT_mr10k_cache_barrier_ here.  Access mips_cache_flush_func
via opts pointer.
* config/mips/mips.h (enum mips_code_readable_setting): Move to
mips-opts.h.
(mips_abi, mips_code_readable): Don't declare.
* config/mips/mips.opt (config/mips/mips-opts.h): New
HeaderInclude.
(mabi=): Use Enum and Var.
(mips_abi): New Enum and EnumValue entries.
(mcode-readable=): Use Enum and Var.
(mips_code_readable_setting): New Enum and EnumValue entries.
(mr10k-cache-barrier=): Use Enum and Var.
(mips_r10k_cache_barrier_setting): New Enum and EnumValue entries.

From-SVN: r173338

13 years agore PR c++/28501 (ICE with __real__ and implicit type conversion)
Paolo Carlini [Tue, 3 May 2011 18:30:37 +0000 (18:30 +0000)]
re PR c++/28501 (ICE with __real__ and implicit type conversion)

/cp
2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/28501
* call.c (add_builtin_candidate): Handle REALPART_EXPR and
IMAGPART_EXPR.

/testsuite
2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/28501
* g++.dg/ext/complex9.C: New.

From-SVN: r173337

13 years ago* lto.c (free_ltrans_partitions): Fix accidental commit.
Jan Hubicka [Tue, 3 May 2011 18:00:48 +0000 (20:00 +0200)]
* lto.c (free_ltrans_partitions): Fix accidental commit.

From-SVN: r173336

13 years agocgraph.h (cgraph_node_set_def, [...]): Move out of GTY; replace hash by pointer map.
Jan Hubicka [Tue, 3 May 2011 17:22:58 +0000 (19:22 +0200)]
cgraph.h (cgraph_node_set_def, [...]): Move out of GTY; replace hash by pointer map.

* cgraph.h (cgraph_node_set_def, varpool_node_set_def): Move out of GTY;
replace hash by pointer map.
(cgraph_node_set_element_def, cgraph_node_set_element,
const_cgraph_node_set_element, varpool_node_set_element_def,
varpool_node_set_element, const_varpool_node_set_element): Remove.
(free_cgraph_node_set, free_varpool_node_set): New function.
(cgraph_node_set_size, varpool_node_set_size): Use vector size.
* tree-emutls.c: Free varpool node set.
* ipa-utils.c (cgraph_node_set_new, cgraph_node_set_add,
cgraph_node_set_remove, cgraph_node_set_find, dump_cgraph_node_set,
debug_cgraph_node_set, free_cgraph_node_set, varpool_node_set_new,
varpool_node_set_add, varpool_node_set_remove, varpool_node_set_find,
dump_varpool_node_set, free_varpool_node_set, debug_varpool_node_set):
Move here from ipa.c; implement using pointer_map
* ipa.c (cgraph_node_set_new, cgraph_node_set_add,
cgraph_node_set_remove, cgraph_node_set_find, dump_cgraph_node_set,
debug_cgraph_node_set, varpool_node_set_new,
varpool_node_set_add, varpool_node_set_remove, varpool_node_set_find,
dump_varpool_node_set, debug_varpool_node_set):
Move to ipa-uitls.c.
* lto/lto.c (ltrans_partition_def): Remove GTY annotations.
(ltrans_partitions): Move to heap.
(new_partition): Update.
(free_ltrans_partitions): New function.
(lto_wpa_write_files): Use it.
* passes.c (ipa_write_summaries): Update.

From-SVN: r173334

13 years ago2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
Stuart Henderson [Tue, 3 May 2011 17:22:34 +0000 (17:22 +0000)]
2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        From Mike Frysinger
        * gcc.target/bfin/mcpu-bf542.c: Check SILICON_REVISION is 0x0004.
        * gcc.target/bfin/mcpu-bf544.c, gcc.target/bfin/mcpu-bf547.c,
        gcc.target/bfin/mcpu-bf548.c, gcc.target/bfin/mcpu-bf549.c: Likewise.

From-SVN: r173333

13 years ago2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
Stuart Henderson [Tue, 3 May 2011 17:13:39 +0000 (17:13 +0000)]
2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        From Mike Frysinger:
        * config/bfin/bfin.c (bfin_cpus[]): Add 0.4 for
        bf542/bf544/bf547/bf548/bf549.

From-SVN: r173332

13 years agoexpmed.c (extract_bit_field_1): Remove write-only variable "icode".
Uros Bizjak [Tue, 3 May 2011 16:51:24 +0000 (18:51 +0200)]
expmed.c (extract_bit_field_1): Remove write-only variable "icode".

* expmed.c (extract_bit_field_1): Remove write-only variable "icode".

From-SVN: r173331

13 years ago2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
Stuart Henderson [Tue, 3 May 2011 16:50:30 +0000 (16:50 +0000)]
2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        From Bernd Schmidt:
        * config/bfin/bfin.md (MOVCC): New mode_macro.
        (mov<mode>cc_insn1, mov<mode>cc_insn2, mov<mode>cc): Renamed from
        movsicc_insn1, movsicc_insn2 and movsicc and macroized.  Remove
        comments from generated assembly.

From-SVN: r173330

13 years agotrans.c (gigi): Call build_function_type_list instead of build_function_type.
Nathan Froyd [Tue, 3 May 2011 16:34:20 +0000 (16:34 +0000)]
trans.c (gigi): Call build_function_type_list instead of build_function_type.

* gcc-interface/trans.c (gigi): Call build_function_type_list instead
of build_function_type.  Adjust calls to...
(build_raise_check): ...this.  Do not take a void_tree parameter.
Call build_function_type_list instead of build_function_type.
Fix head comment and swap couple of conditional blocks.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r173325

13 years ago2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
Stuart Henderson [Tue, 3 May 2011 16:24:59 +0000 (16:24 +0000)]
2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        From Bernd Schmidt
        * config/bfin/t-bfin (LIB1ASMFUNCS): Add muldi3 and umulsi3_highpart.
        * config/bfin/t-bfin-elf (LIB1ASMFUNCS): Add muldi3.
        * config/bfin/t-bfin-linux (LIB1ASMFUNCS): Add muldi3.
        * config/bfin/t-bfin-uclinux (LIB1ASMFUNCS): Add muldi3.
        * config/bfin/lib1funcs.asm (___muldi3): New function.

From-SVN: r173323

13 years agobuiltins: Created.
Stuart Henderson [Tue, 3 May 2011 16:11:55 +0000 (16:11 +0000)]
builtins: Created.

2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

* gcc.target/bfin/builtins: Created.
* gcc.target/bfin/hisilh-O0.c: Deleted.
* gcc.target/bfin/hisilh.c: Moved to...
* gcc.target/bfin/builtins/hisilh.c: ...here.
* gcc.target/bfin/builtins/shl_fr1x16-6.c: New test.
* gcc.target/bfin/builtins/shr_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-9.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-4.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-8.c: Ditto.
* gcc.target/bfin/builtins/lshl_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/abs_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/norm32-1.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr1x16-3.c: Ditto.
* gcc.target/bfin/builtins/norm_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/bfin-builtins.exp: Ditto.
* gcc.target/bfin/builtins/norm16-2.c: Ditto.
* gcc.target/bfin/builtins/norm32-5.c: Ditto.
* gcc.target/bfin/builtins/norm_fr1x16-3.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x32x32-2.c: Ditto.
* gcc.target/bfin/builtins/norm16-6.c: Ditto.
* gcc.target/bfin/builtins/norm32-9.c: Ditto.
* gcc.target/bfin/builtins/mult_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/dspsubaddsat_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/min_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/max_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/norm32-10.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-3.c: Ditto.
* gcc.target/bfin/builtins/mulhisihh_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/diff_hl_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-7.c: Ditto.
* gcc.target/bfin/builtins/shr_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/mulhisilh_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/lshl_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/cpmlx_mul_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/negate_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/negate_fr1x16-3.c: Ditto.
* gcc.target/bfin/builtins/abs_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr2x16-4.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/max_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/min_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/max_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-3.c: Ditto.
* gcc.target/bfin/builtins/add_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-6.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-7.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-5.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-9.c: Ditto.
* gcc.target/bfin/builtins/abs_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/lshl_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/abs_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/cpmlx_msu_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/norm32-2.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr1x16-4.c: Ditto.
* gcc.target/bfin/builtins/norm16-3.c: Ditto.
* gcc.target/bfin/builtins/norm32-6.c: Ditto.
* gcc.target/bfin/builtins/norm16-7.c: Ditto.
* gcc.target/bfin/builtins/mult_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/min_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/add_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/norm32-11.c: Ditto.
* gcc.target/bfin/builtins/sub_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-4.c: Ditto.
* gcc.target/bfin/builtins/mulhisihh_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/diff_lh_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-8.c: Ditto.
* gcc.target/bfin/builtins/shr_fr2x16-3.c: Ditto.
* gcc.target/bfin/builtins/mulhisilh_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/lshl_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/cpmlx_mac_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/min_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/dspaddsubsat_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/max_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/min_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-3.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-4.c: Ditto.
* gcc.target/bfin/builtins/sub_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/add_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-7.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-8.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x16-3.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-6.c: Ditto.
* gcc.target/bfin/builtins/circptr.c: Ditto.
* gcc.target/bfin/builtins/negate_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/abs_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/multr_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/sum_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/cpmlx_msu_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/norm32-3.c: Ditto.
* gcc.target/bfin/builtins/norm_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/norm16-4.c: Ditto.
* gcc.target/bfin/builtins/norm32-7.c: Ditto.
* gcc.target/bfin/builtins/norm16-8.c: Ditto.
* gcc.target/bfin/builtins/add_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/add_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-5.c: Ditto.
* gcc.target/bfin/builtins/norm32-12.c: Ditto.
* gcc.target/bfin/builtins/sub_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/diff_lh_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/mulhisihl_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shr_fr2x16-4.c: Ditto.
* gcc.target/bfin/builtins/mulhisill_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/negate_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/multr_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/cpmlx_mac_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x32x32NS-1.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/min_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/dspaddsubsat_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/sub_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-4.c: Ditto.
* gcc.target/bfin/builtins/sub_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-5.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-8.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-3.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x16-4.c: Ditto.
* gcc.target/bfin/builtins/shr_fr1x32-7.c: Ditto.
* gcc.target/bfin/builtins/negate_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/multr_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/sum_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/norm_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/norm16-1.c: Ditto.
* gcc.target/bfin/builtins/norm_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x32x32-1.c: Ditto.
* gcc.target/bfin/builtins/norm32-4.c: Ditto.
* gcc.target/bfin/builtins/norm16-5.c: Ditto.
* gcc.target/bfin/builtins/norm32-8.c: Ditto.
* gcc.target/bfin/builtins/dspsubaddsat_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/max_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/add_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr2x16-6.c: Ditto.
* gcc.target/bfin/builtins/diff_hl_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shr_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/mulhisihl_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/negate_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/cpmlx_mul_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/multr_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/mulhisill_fr2x16-2.c: Ditto.
* gcc.target/bfin/builtins/negate_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/abs_fr2x16-1.c: Ditto.
* gcc.target/bfin/builtins/shrl_fr2x16-3.c: Ditto.
* gcc.target/bfin/builtins/mult_fr1x32x32NS-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-1.c: Ditto.
* gcc.target/bfin/builtins/max_fr1x16-1.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x16-2.c: Ditto.
* gcc.target/bfin/builtins/sub_fr1x32-2.c: Ditto.
* gcc.target/bfin/builtins/shl_fr1x32-5.c: Ditto.

From-SVN: r173322

13 years agostormy16 (xstormy16_init_builtins): Call build_function_type_list instead of build_fu...
Nathan Froyd [Tue, 3 May 2011 15:52:20 +0000 (15:52 +0000)]
stormy16 (xstormy16_init_builtins): Call build_function_type_list instead of build_function_type.

* config/stormy16/stormy16 (xstormy16_init_builtins): Call
build_function_type_list instead of build_function_type.
Rearrange initialization of `args' to do so.

From-SVN: r173321

13 years agoi386.c (ix86_code_end): Call build_function_type_list instead of build_function_type.
Nathan Froyd [Tue, 3 May 2011 15:51:28 +0000 (15:51 +0000)]
i386.c (ix86_code_end): Call build_function_type_list instead of build_function_type.

* config/i386/i386.c (ix86_code_end): Call build_function_type_list
instead of build_function_type.

From-SVN: r173320

13 years agors6000.c (spe_init_builtins): Call build_function_type_list instead of build_function...
Nathan Froyd [Tue, 3 May 2011 15:50:51 +0000 (15:50 +0000)]
rs6000.c (spe_init_builtins): Call build_function_type_list instead of build_function_type.

* config/rs6000/rs6000.c (spe_init_builtins): Call
build_function_type_list instead of build_function_type.
(paired_init_builtins, altivec_init_builtins): Likewise.
(builtin_function_type): Likewise.

From-SVN: r173319

13 years agosh.c (sh_media_init_builtins): Call build_function_type_list instead of build_functio...
Nathan Froyd [Tue, 3 May 2011 15:49:22 +0000 (15:49 +0000)]
sh.c (sh_media_init_builtins): Call build_function_type_list instead of build_function_type.

* config/sh/sh.c (sh_media_init_builtins): Call
build_function_type_list instead of build_function_type.

From-SVN: r173318

13 years agosparc.c (sparc_file_end): Call build_function_type_list instead of build_function_type.
Nathan Froyd [Tue, 3 May 2011 15:44:27 +0000 (15:44 +0000)]
sparc.c (sparc_file_end): Call build_function_type_list instead of build_function_type.

* config/sparc/sparc.c (sparc_file_end): Call
build_function_type_list instead of build_function_type.

From-SVN: r173317

13 years agoalpha.c (alpha_init_builtins): Call build_function_type_list instead of build_functio...
Nathan Froyd [Tue, 3 May 2011 15:43:49 +0000 (15:43 +0000)]
alpha.c (alpha_init_builtins): Call build_function_type_list instead of build_function_type.

* config/alpha/alpha.c (alpha_init_builtins): Call
build_function_type_list instead of build_function_type.

From-SVN: r173316

13 years agoxtensa.c (xtensa_init_builtins): Call build_function_type_list instead of build_funct...
Nathan Froyd [Tue, 3 May 2011 15:43:00 +0000 (15:43 +0000)]
xtensa.c (xtensa_init_builtins): Call build_function_type_list instead of build_function_type.

* config/xtensa/xtensa.c (xtensa_init_builtins): Call
build_function_type_list instead of build_function_type.

From-SVN: r173315

13 years agoi2000.c (iq2000_init_builtins): Call build_function_type_list instead of build_functi...
Nathan Froyd [Tue, 3 May 2011 15:40:26 +0000 (15:40 +0000)]
i2000.c (iq2000_init_builtins): Call build_function_type_list instead of build_function_type.

* config/iq2000/i2000.c (iq2000_init_builtins): Call
build_function_type_list instead of build_function_type.
Delete `endlink' variable.

From-SVN: r173314

13 years agoavr.c (avr_init_builtins): Call build_function_type_list instead of build_function_type.
Nathan Froyd [Tue, 3 May 2011 15:39:30 +0000 (15:39 +0000)]
avr.c (avr_init_builtins): Call build_function_type_list instead of build_function_type.

* config/avr/avr.c (avr_init_builtins): Call
build_function_type_list instead of build_function_type.

From-SVN: r173313

13 years agopicochip.c (picochip_init_builtins): Call build_function_type_list instead of build_f...
Nathan Froyd [Tue, 3 May 2011 15:37:53 +0000 (15:37 +0000)]
picochip.c (picochip_init_builtins): Call build_function_type_list instead of build_function_type.

* config/picochip/picochip.c (picochip_init_builtins): Call
build_function_type_list instead of build_function_type.
Delete `endlink' variable.

From-SVN: r173312

13 years agobfin.c (bfin_init_builtins): Call build_function_type_list instead of build_function_...
Nathan Froyd [Tue, 3 May 2011 15:37:03 +0000 (15:37 +0000)]
bfin.c (bfin_init_builtins): Call build_function_type_list instead of build_function_type.

* config/bfin/bfin.c (bfin_init_builtins): Call
build_function_type_list instead of build_function_type.

From-SVN: r173311

13 years agore PR target/39768 (internal compiler error: RTL check: expected code 'const_int...
Stuart Henderson [Tue, 3 May 2011 15:09:19 +0000 (15:09 +0000)]
re PR target/39768 (internal compiler error: RTL check: expected code 'const_int', have 'reg' in gen_rotlsi3, at config/bfin/bfin.md:1616)

2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        From Bernd Schmidt
        * config/bfin/bfin.md (rotrsi, rotlsi): Don't take INTVAL of anything
        that's not CONST_INT.  Seemingly redundant check is due to PR39768.

From-SVN: r173310

13 years agore PR libstdc++/48750 (for_each_template_random_access_ed has unbalanced new/delete[])
Paolo Carlini [Tue, 3 May 2011 14:20:45 +0000 (14:20 +0000)]
re PR libstdc++/48750 (for_each_template_random_access_ed has unbalanced new/delete[])

2011-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/48750
* include/parallel/multiway_merge.h: Run _ValueType destructors.
* include/parallel/multiway_mergesort.h: Likewise.
* include/parallel/quicksort.h: Likewise.
* include/parallel/random_shuffle.h: Likewise.
* include/parallel/partial_sum.h: Likewise.
* include/parallel/losertree.h: Run destructors; minor tweaks.
* include/parallel/par_loop.h: Run destructors, fix memory
allocations and deallocations.
* testsuite/26_numerics/accumulate/48750.cc: New.

* testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in
parallel-mode to avoid spurious multiple errors.

From-SVN: r173309

13 years ago2011-05-03 Stuart Henderson <shenders@gcc.gnu.org>
Stuart Henderson [Tue, 3 May 2011 14:19:43 +0000 (14:19 +0000)]
2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

From Jie Zhang:
* config/bfin/uclinux.h (LINK_GCC_C_SEQUENCE_SPEC): Make sure
libbffastfp overrides libgcc when -mfast-fp.

From-SVN: r173308

13 years agoOriginally from Bernd Schmidt
Stuart Henderson [Tue, 3 May 2011 13:57:15 +0000 (13:57 +0000)]
Originally from Bernd Schmidt

2011-05-03  Stuart Henderson <shenders@gcc.gnu.org>

        Originally from Bernd Schmidt
        * config/bfin/uclinux.h (SUBTARGET_FDPIC_NOT_SUPPORTED): New macro.
        * config/bfin/bfin.c (override_options): Test it and error if
        TARGET_FDPIC.

From-SVN: r173307

13 years agoOriginally From Bernd Schmidt
Stuart Henderson [Tue, 3 May 2011 13:47:07 +0000 (13:47 +0000)]
Originally From Bernd Schmidt

2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>

        Originally From Bernd Schmidt
        * config/bfin/bfin.c (override_options): Disable -fstack-limit for
        FD-PIC.

From-SVN: r173306

13 years agotree-ssa-threadupdate.c (THREAD_TARGET): define.
Jeff Law [Tue, 3 May 2011 13:12:29 +0000 (07:12 -0600)]
tree-ssa-threadupdate.c (THREAD_TARGET): define.

* tree-ssa-threadupdate.c (THREAD_TARGET): define.
(remove_ctrl_stmt_and_useless_edges): Clear AUX field of outgoing edges.
(craete_edge_and_update_destination_phis): Use THREAD_TARGET rather
than accessing AUX field directly.  Free the AUX field before clearing it.
(thread_block, thread_through_loop_header): Likewise.
(thread_single_edge, mark_threaded_blocks): Likewise.
(redirect_edges): Delay clearing the AUX field.  Free the AUX field.
(register_jump_thread): Do not attempt to thread to a NULL edge.

From-SVN: r173305

13 years agofunction.c (init_function_start): Call decide_function_section.
Bernd Schmidt [Tue, 3 May 2011 13:08:36 +0000 (13:08 +0000)]
function.c (init_function_start): Call decide_function_section.

* function.c (init_function_start): Call decide_function_section.
* varasm.c (decide_function_section): New function.
(assemble_start_function): When not using
flag_reorder_blocks_and_partition, don't compute in_cold_section_p
or first_function_block_is_cold.
* rtl.h (decide_function_section): Declare.

* gcc.target/arm/cold-lc.c: New test.

From-SVN: r173303

13 years agore PR target/48774 (gcc-4.6.0 optimization regression on x86_64-unknown-linux-gnu)
Jakub Jelinek [Tue, 3 May 2011 13:01:12 +0000 (15:01 +0200)]
re PR target/48774 (gcc-4.6.0 optimization regression on x86_64-unknown-linux-gnu)

PR target/48774
* config/i386/i386.c (ix86_match_ccmode): For CC{A,C,O,S}mode
only succeed if req_mode is the same as set_mode.

* gcc.dg/pr48774.c: New test.

From-SVN: r173301

13 years agogengenrtl.c (special_rtx): PC, CC0 and RETURN are special.
Bernd Schmidt [Tue, 3 May 2011 11:52:38 +0000 (11:52 +0000)]
gengenrtl.c (special_rtx): PC, CC0 and RETURN are special.

* gengenrtl.c (special_rtx): PC, CC0 and RETURN are special.
* genemit.c (gen_exp): Handle RETURN.
* emit-rtl.c (verify_rtx_sharing): Likewise.
(init_emit_regs): Create pc_rtx, ret_rtx and cc0_rtx specially.
* rtl.c (copy_rtx): RETURN is shared.
* rtl.h (enum global_rtl_index): Add GR_RETURN.
(ret_rtx): New.
* jump.c (redirect_exp_1): Don't use gen_rtx_RETURN.
* config/s390/s390.c (s390_emit_epilogue): Likewise.
* config/rx/rx.c (gen_rx_rtsd_vector): Likewise.
* config/cris/cris.c (cris_expand_return): Likewise.
* config/m68k/m68k.c (m68k_expand_epilogue): Likewise.
* config/rs6000/rs6000.c (rs6000_make_savres_rtx,
rs6000_emit_epilogue, rs6000_output_mi_thunk): Likewise.
* config/picochip/picochip.c (picochip_expand_epilogue): Likewise.
* config/h8300/h8300.c (h8300_push_pop, h8300_expand_epilogue):
Likewise.
* config/v850/v850.c (expand_epilogue): Likewise.
* config/bfin/bfin.c (bfin_expand_call): Likewise.
* config/arm/arm.md (epilogue): Likewise.
* config/mn10300/mn10300.c (mn10300_expand_epilogue): Likewise.
* config/sparc/sparc.c (sparc_struct_value_rtx): Rename ret_rtx
variable to ret_reg.

From-SVN: r173300

13 years agore PR tree-optimization/48846 (Many -O2 -flto testsuite failures with -m32 -mavx)
Richard Guenther [Tue, 3 May 2011 10:18:29 +0000 (10:18 +0000)]
re PR tree-optimization/48846 (Many -O2 -flto testsuite failures with -m32 -mavx)

2011-05-03  Richard Guenther  <rguenther@suse.de>

PR lto/48846
* lto-streamer-in.c (unpack_ts_decl_common_value_fields):
Stream decl_common.off_align instead of the derived DECL_OFFSET_ALIGN.
* lto-streamer-out.c (pack_ts_decl_common_value_fields): Likewise.

From-SVN: r173298

13 years agoc-decl.c (grokdeclarator): Instead of looking at TREE_OVERFLOW check if the constant...
Richard Guenther [Tue, 3 May 2011 08:48:00 +0000 (08:48 +0000)]
c-decl.c (grokdeclarator): Instead of looking at TREE_OVERFLOW check if the constant fits in the index type.

2011-05-03  Richard Guenther  <rguenther@suse.de>

* c-decl.c (grokdeclarator): Instead of looking at
TREE_OVERFLOW check if the constant fits in the index type.

* gcc.dg/large-size-array-5.c: New testcase.

From-SVN: r173297

13 years agovect-strided-u16-i3.c: New test.
Richard Sandiford [Tue, 3 May 2011 07:51:13 +0000 (07:51 +0000)]
vect-strided-u16-i3.c: New test.

gcc/testsuite/
* gcc.dg/vect/vect-strided-u16-i3.c: New test.

From-SVN: r173296

13 years agotarget-supports.exp (check_effective_target_vect_strided): Replace with...
Richard Sandiford [Tue, 3 May 2011 07:49:46 +0000 (07:49 +0000)]
target-supports.exp (check_effective_target_vect_strided): Replace with...

gcc/testsuite/
* lib/target-supports.exp (check_effective_target_vect_strided):
Replace with...
(check_effective_target_vect_strided2)
(check_effective_target_vect_strided3)
(check_effective_target_vect_strided4)
(check_effective_target_vect_strided8): ...these new functions.

* gcc.dg/vect/O3-pr39675-2.c: Update accordingly.
* gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c: Likewise.
* gcc.dg/vect/fast-math-slp-27.c: Likewise.
* gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c: Likewise.
* gcc.dg/vect/pr37539.c: Likewise.
* gcc.dg/vect/slp-11a.c: Likewise.
* gcc.dg/vect/slp-11b.c: Likewise.
* gcc.dg/vect/slp-11c.c: Likewise.
* gcc.dg/vect/slp-12a.c: Likewise.
* gcc.dg/vect/slp-12b.c: Likewise.
* gcc.dg/vect/slp-18.c: Likewise.
* gcc.dg/vect/slp-19a.c: Likewise.
* gcc.dg/vect/slp-19b.c: Likewise.
* gcc.dg/vect/slp-21.c: Likewise.
* gcc.dg/vect/slp-23.c: Likewise.
* gcc.dg/vect/vect-cselim-1.c: Likewise.

* gcc.dg/vect/fast-math-vect-complex-3.c: Use vect_stridedN
instead of vect_interleave && vect_extract_even_odd.
* gcc.dg/vect/no-scevccp-outer-10a.c: Likewise.
* gcc.dg/vect/no-scevccp-outer-10b.c: Likewise.
* gcc.dg/vect/no-scevccp-outer-20.c: Likewise.
* gcc.dg/vect/vect-1.c: Likewise.
* gcc.dg/vect/vect-10.c: Likewise.
* gcc.dg/vect/vect-98.c: Likewise.
* gcc.dg/vect/vect-107.c: Likewise.
* gcc.dg/vect/vect-strided-a-mult.c: Likewise.
* gcc.dg/vect/vect-strided-a-u16-i2.c: Likewise.
* gcc.dg/vect/vect-strided-a-u16-i4.c: Likewise.
* gcc.dg/vect/vect-strided-a-u16-mult.c: Likewise.
* gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise.
* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Likewise.
* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Likewise.
* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Likewise.
* gcc.dg/vect/vect-strided-float.c: Likewise.
* gcc.dg/vect/vect-strided-mult-char-ls.c: Likewise.
* gcc.dg/vect/vect-strided-mult.c: Likewise.
* gcc.dg/vect/vect-strided-same-dr.c: Likewise.
* gcc.dg/vect/vect-strided-u16-i2.c: Likewise.
* gcc.dg/vect/vect-strided-u16-i4.c: Likewise.
* gcc.dg/vect/vect-strided-u32-i4.c: Likewise.
* gcc.dg/vect/vect-strided-u32-i8.c: Likewise.
* gcc.dg/vect/vect-strided-u32-mult.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i2-gap.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i2.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i8.c: Likewise.
* gcc.dg/vect/vect-vfa-03.c: Likewise.

* gcc.dg/vect/no-scevccp-outer-18.c: Add vect_stridedN to the
target condition.
* gcc.dg/vect/pr30843.c: Likewise.
* gcc.dg/vect/pr33866.c: Likewise.
* gcc.dg/vect/slp-reduc-6.c: Likewise.
* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Likewise.
* gcc.dg/vect/vect-strided-store-u16-i4.c: Likewise.
* gcc.dg/vect/vect-strided-store-u32-i2.c: Likewise.

From-SVN: r173295

13 years agoslp-11.c: Split into...
Richard Sandiford [Tue, 3 May 2011 07:49:14 +0000 (07:49 +0000)]
slp-11.c: Split into...

gcc/testsuite/
* gcc.dg/vect/slp-11.c: Split into...
* gcc.dg/vect/slp-11a.c, gcc.dg/vect/slp-11b.c,
gcc.dg/vect/slp-11c.c: ...these tests.
* gcc.dg/vect/slp-12a.c: Split 4-stride loop into...
* gcc.dg/vect/slp-12c.c: ...this new test.
* gcc.dg/vect/slp-19.c: Split into...
* gcc.dg/vect/slp-19a.c, gcc.dg/vect/slp-19b.c,
gcc.dg/vect/slp-19c.c: ...these new tests.

From-SVN: r173294

13 years agogcc/testsuite/
Richard Sandiford [Tue, 3 May 2011 07:47:31 +0000 (07:47 +0000)]
gcc/testsuite/
* lib/target-supports.exp
(check_effective_target_vect_extract_even_odd_wide): Delete.
(check_effective_target_vect_strided_wide): Likewise.
* gcc.dg/vect/O3-pr39675-2.c: Use the non-wide versions instead.
* gcc.dg/vect/fast-math-pr35982.c: Likewise.
* gcc.dg/vect/fast-math-vect-complex-3.c: Likewise.
* gcc.dg/vect/pr37539.c: Likewise.
* gcc.dg/vect/slp-11.c: Likewise.
* gcc.dg/vect/slp-12a.c: Likewise.
* gcc.dg/vect/slp-12b.c: Likewise.
* gcc.dg/vect/slp-19.c: Likewise.
* gcc.dg/vect/slp-23.c: Likewise.
* gcc.dg/vect/vect-1.c: Likewise.
* gcc.dg/vect/vect-98.c: Likewise.
* gcc.dg/vect/vect-107.c: Likewise.
* gcc.dg/vect/vect-strided-float.c: Likewise.

From-SVN: r173293

13 years agoneon.md (vec_load_lanes<mode><mode>): New expanders,
Richard Sandiford [Tue, 3 May 2011 07:47:12 +0000 (07:47 +0000)]
neon.md (vec_load_lanes<mode><mode>): New expanders,

gcc/
* config/arm/neon.md (vec_load_lanes<mode><mode>): New expanders,
(vec_store_lanes<mode><mode>): Likewise.

From-SVN: r173292

13 years agomd.texi (vec_load_lanes, [...]): Document.
Richard Sandiford [Tue, 3 May 2011 07:46:54 +0000 (07:46 +0000)]
md.texi (vec_load_lanes, [...]): Document.

gcc/
* doc/md.texi (vec_load_lanes, vec_store_lanes): Document.
* optabs.h (COI_vec_load_lanes, COI_vec_store_lanes): New
convert_optab_index values.
(vec_load_lanes_optab, vec_store_lanes_optab): New convert optabs.
* genopinit.c (optabs): Initialize the new optabs.
* internal-fn.def (LOAD_LANES, STORE_LANES): New internal functions.
* internal-fn.c (get_multi_vector_move, expand_LOAD_LANES)
(expand_STORE_LANES): New functions.
* tree.h (build_array_type_nelts): Declare.
* tree.c (build_array_type_nelts): New function.
* tree-vectorizer.h (vect_model_store_cost): Add a bool argument.
(vect_model_load_cost): Likewise.
(vect_store_lanes_supported, vect_load_lanes_supported)
(vect_record_strided_load_vectors): Declare.
* tree-vect-data-refs.c (vect_lanes_optab_supported_p)
(vect_store_lanes_supported, vect_load_lanes_supported): New functions.
(vect_transform_strided_load): Split out statement recording into...
(vect_record_strided_load_vectors): ...this new function.
* tree-vect-stmts.c (create_vector_array, read_vector_array)
(write_vector_array, create_array_ref): New functions.
(vect_model_store_cost): Add store_lanes_p argument.
(vect_model_load_cost): Add load_lanes_p argument.
(vectorizable_store): Try to use store-lanes functions for
interleaved stores.
(vectorizable_load): Likewise load-lanes and loads.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Update call
to vect_model_store_cost.
(vect_build_slp_tree): Likewise vect_model_load_cost.

From-SVN: r173291

13 years agohooks.h (hook_bool_mode_uhwi_false): Declare.
Richard Sandiford [Tue, 3 May 2011 07:46:10 +0000 (07:46 +0000)]
hooks.h (hook_bool_mode_uhwi_false): Declare.

gcc/
* hooks.h (hook_bool_mode_uhwi_false): Declare.
* hooks.c (hook_bool_mode_uhwi_false): New function.
* target.def (array_mode_supported_p): New hook.
* doc/tm.texi.in (TARGET_ARRAY_MODE_SUPPORTED_P): Add @hook.
* doc/tm.texi: Regenerate.
* stor-layout.c (mode_for_array): New function.
(layout_type): Use it.
* config/arm/arm.c (arm_array_mode_supported_p): New function.
(TARGET_ARRAY_MODE_SUPPORTED_P): Define.

From-SVN: r173290

13 years agore PR target/48723 (ICE on function returning structure with -fstack-check on corei7...
Eric Botcazou [Tue, 3 May 2011 07:20:01 +0000 (07:20 +0000)]
re PR target/48723 (ICE on function returning structure with -fstack-check on corei7-avx)

PR target/48723
* config/i386/i386.c (ix86_expand_prologue): Do not probe the stack
for -fstack-check if the size to allocate is negative.

From-SVN: r173288

13 years agore PR fortran/48720 (quad precision literals do not work)
Steven G. Kargl [Tue, 3 May 2011 01:23:46 +0000 (01:23 +0000)]
re PR fortran/48720 (quad precision literals do not work)

2011-05-02  Steven G. Kargl  <kargl@gcc.gnu.org>

    PR fortran/48720
    * gfortran.texi: Document the 'Q' exponent-letter extension.
    * invoke.texi: Document -Wreal-q-constant.
    * lang.opt: Add -Wreal-q-constant option.
    * gfortran.h: Add warn_real_q_constant to option struct.
    * primary.c (match_real_constant):  Use it.  Accept 'Q' as
    exponent-letter for REAL(16) real-literal-constant with a
    fallback to REAL(10) or error if REAL(10) is not available.
    * options.c (gfc_init_options, set_Wall) Set it.
    (gfc_handle_option): Handle new option.

From-SVN: r173285

13 years agoDaily bump.
GCC Administrator [Tue, 3 May 2011 00:19:32 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r173284

13 years agofunctional (bind): Remove from overload set when first argument type might be a socke...
Jonathan Wakely [Tue, 3 May 2011 00:03:38 +0000 (00:03 +0000)]
functional (bind): Remove from overload set when first argument type might be a socket file descriptor.

2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/std/functional (bind): Remove from overload set when first
argument type might be a socket file descriptor.
* testsuite/20_util/bind/socket.cc: New.

From-SVN: r173279

13 years agore PR libstdc++/48848 ([C++0x] std::valarray<T> functions missing)
Jonathan Wakely [Mon, 2 May 2011 23:46:24 +0000 (23:46 +0000)]
re PR libstdc++/48848 ([C++0x] std::valarray<T> functions missing)

2011-05-03  Jonathan Wakely  <jwakely.gcc@gmail.com>

PR libstdc++/48848
* doc/xml/manual/status_cxx200x.xml: Update valarray status.
* doc/html/*: Regenerate.

From-SVN: r173278

13 years agoUpgrade the utility of timevars.
Lawrence Crowl [Mon, 2 May 2011 22:19:48 +0000 (22:19 +0000)]
Upgrade the utility of timevars.

Index: gcc/ChangeLog

2011-04-27  Lawrence Crowl  <crowl@google.com>

* timevar.h (timevar_cond_start): Remove unused POP_TIMEVAR_AND_RETURN.
(timevar_cond_start): New for starting a timer only when it is not
already running.
(timevar_cond_stop): New for stopping a timer when it was not already
running.

* timevar.c (timevar_stop): Enable start/stop timers to start again.
(timevar_cond_start): New as above.
(timevar_cond_stop): New as above.

* timevar.def: Add start/stop timers for compiler phases,
TV_PHASE_SETUP, TV_PHASE_PARSING, TV_PHASE_DEFERRED, TV_PHASE_CGRAPH,
TV_PHASE_DBGINFO (C), TV_PHASE_CHECK_DBGINFO (C++), TV_PHASE_GENERATE,
and TV_PHASE_FINALIZE.
Change push/pop timer TV_PARSE to TV_PARSE_GLOBAL.
Add push/pop timers TV_PARSE_STRUCT, TV_PARSE_ENUM, TV_PARSE_FUNC,
TV_PARSE_INLINE, TV_PARSE_INMETH, TV_TEMPLATE_INST.
Change push/pop timer TV_NAME_LOOKUP into a start/stop timer.
Make unused TV_OVERLOAD into a start/stop timer.

Remove unused timers TV_OVERLOAD, TV_TEMPLATE_INSTANTIATION.
Mark the strings for TV_NAME_LOOKUP and TV_OVERLOAD with a "|"
to indicate that they are start/stop timers.

* toplev.c (compile_file): Change TV_PARSE to TV_PARSE_GLOBAL.
Add start/stop timers TV_PHASE_PARSING and TV_PHASE_GENERATE.
Move initialization to do_compile.
(do_compile): Add initialization from above.
Add start/stop timers TV_PHASE_SETUP and TV_PHASE_FINALIZE.

* c-decl.c (c_write_global_declarations): Add start/stop of
TV_PHASE_DEFERRED, TV_PHASE_CGRAPH, TV_PHASE_DBGINFO.

* c-parser.c (c_parser_declaration_or_fndef): Push/pop TV_PARSE_FUNC
or TV_PARSE_INLINE, as appropriate.
(c_parser_enum_specifier): Push/pop TV_PARSE_ENUM.
(c_parser_struct_or_union_specifier): Push/pop TV_PARSE_STRUCT.

Index: gcc/cp/ChangeLog

2011-04-27  Lawrence Crowl  <crowl@google.com>

* decl.c: (push_local_name): Change TV_NAME_LOOKUP to start/stop.
(poplevel): Refactor POP_TIMEVAR_AND_RETURN to plain code.
Change TV_NAME_LOOKUP to start/stop.
(define_label): Refactor timevar calls out to a wrapper function.
Change TV_NAME_LOOKUP to start/stop.
(xref_tag): Likewise.
(lookup_label): Refactor timevar calls out to a wrapper function.
Change TV_NAME_LOOKUP to start_cond/stop_cond.

        * pt.c: (instantiate_class_template): Add a wrapper to push/pop new
TV_TEMPLATE_INST.
(instantiate_template): Add a wrapper to push/pop new TV_TEMPLATE_INST.
(lookup_template_class): Refactor timevar calls out to a wrapper
function.  Change use of TV_NAME_LOOKUP to TV_TEMPLATE_INST.
(instantiate_decl): Change TV_PARSE to TV_TEMPLATE_INST.

* name-lookup.c: (store_bindings): Change TV_NAME_LOOKUP to start/stop.
(poplevel_class): Change TV_NAME_LOOKUP to start_cond/stop_cond.
(push_namespace): Likewise.
(pop_nested_namespace): Likewise.
(pushdecl_namespace_level): Likewise.
(store_class_bindings): Likewise.
(push_to_top_level): Likewise.
(identifier_type_value): Refactor timevar calls out to a wrapper
function.  Change TV_NAME_LOOKUP to start/stop.
(find_binding): Likewise.
(push_using_decl): Likewise.
(lookup_arg_dependent): Likewise.
(push_using_directive): Likewise.
(qualified_lookup_using_namespace): Refactor POP_TIMEVAR_AND_RETURN
to plain code.  Change TV_NAME_LOOKUP to start/stop.
(lookup_type_current_level): Likewise.  Refactor inner return to
break.
(pushdecl_class_level): Refactor POP_TIMEVAR_AND_RETURN to plain
code.  Change TV_NAME_LOOKUP to start_cond/stop_cond.
(pushdecl_top_level_1): Likewise.
(lookup_using_namespace): Likewise.
(pushdecl_with_scope): Refactor timevar calls out to a wrapper
function.  Change TV_NAME_LOOKUP to start_cond/stop_cond.
(push_overloaded_decl): Likewise.
(push_class_level_binding): Likewise.
(namespace_binding): Likewise.
(set_namespace_binding): Likewise.
(supplement_binding): Likewise.
(unqualified_namespace_lookup): Likewise.
(lookup_name_real): Likewise.
(lookup_type_scope): Likewise.
(namespace_ancestor): Likewise.
(lookup_name_innermost_nonclass_level): Likewise.
(pushtag): Likewise.
(pop_from_top_level): Likewise.
(pushdecl_maybe_friend): Refactor timevar calls out to a wrapper
function.  Change TV_NAME_LOOKUP to start_cond/stop_cond.  Wrap long
lines.
(add_using_namespace): Refactor timevar calls out to a wrapper
function.  Change TV_NAME_LOOKUP to start_cond/stop_cond.  Bypass
wrapper on call to self.

* decl2.c: (cp_write_global_declarations):  Add start/stop of
new TV_PHASE_DEFERRED, TV_PHASE_CGRAPH, TV_PHASE_CHECK_DBGINFO.
Remove push/pop calls to TV_VARCONST.

* parser.c: Add include of "timevar.h".
(cp_parser_explicit_instantiation): Add push/pop calls to
TV_TEMPLATE_INST.
(cp_parser_enum_specifier): Add push/pop calls to new TV_PARSE_ENUM.
(cp_parser_class_specifier): Add wrapper to add push/pop calls to
TV_PARSE_STRUCT.
(cp_parser_function_definition_from_specifiers_and_declarator): Add
push/pop calls to new TV_PARSE_FUNC or TV_PARSE_INLINE.
(cp_parser_late_parsing_for_member):  Add push/pop calls to
new TV_PARSE_INMETH.

* call.c: Add include of "timevar.h".
        (convert_class_to_reference): Wrap and add push/pop calls to
TV_OVERLOAD.
(build_op_call): Likewise.
(build_conditional_expr): Likewise.
(build_new_op): Likewise.
(build_new_method_call): Likewise.
        (build_user_type_conversion): Reorganize to single return and add
push/pop calls to TV_OVERLOAD.
        (perform_overload_resolution): Likewise.

* Make-lang.in: Add dependence of call.o and parser.o on $(TIMEVAR_H).

From-SVN: r173277

13 years agotree.c (build_vec_init_expr): Take complain parm.
Jason Merrill [Mon, 2 May 2011 22:00:16 +0000 (18:00 -0400)]
tree.c (build_vec_init_expr): Take complain parm.

* tree.c (build_vec_init_expr): Take complain parm.
(build_vec_init_elt): Likewise.  Free arg vector.
(diagnose_non_constexpr_vec_init, build_array_copy): Adjust.
* cp-tree.h (VEC_INIT_EXPR_SLOT): Use VEC_INIT_EXPR_CHECK.
(VEC_INIT_EXPR_INIT): Likewise.
Adjust build_vec_init_expr declaration.
* init.c (perform_member_init): Adjust.

From-SVN: r173275

13 years agorevert: re PR c++/40975 (ICE in copy_tree_r on array new)
Jason Merrill [Mon, 2 May 2011 22:00:07 +0000 (18:00 -0400)]
revert: re PR c++/40975 (ICE in copy_tree_r on array new)

Revert:
PR c++/40975
* cp-tree.def (VEC_INIT_EXPR): Add third operand.
* cp-tree.h (VEC_INIT_EXPR_NELTS): New.
* cp-gimplify.c (cp_gimplify_expr) [VEC_INIT_EXPR]: Handle it.
* tree.c (build_vec_init_expr): Handle getting pointer/nelts.
(build_vec_init_elt): Don't expect an array type.
(build_array_copy): Adjust.
* init.c (perform_member_init): Adjust.
(build_new_1): Use build_vec_init_expr.

From-SVN: r173274

13 years agore PR c++/40975 (ICE in copy_tree_r on array new)
Jason Merrill [Mon, 2 May 2011 21:59:57 +0000 (17:59 -0400)]
re PR c++/40975 (ICE in copy_tree_r on array new)

PR c++/40975
* tree-inline.c (copy_tree_r): Handle STATEMENT_LIST.

From-SVN: r173273

13 years agore PR c++/48834 (-fno-exceptions causes wrong code generation on C++ code)
Jason Merrill [Mon, 2 May 2011 21:59:49 +0000 (17:59 -0400)]
re PR c++/48834 (-fno-exceptions causes wrong code generation on C++ code)

PR c++/48834
* tree.c (build_vec_init_expr): Set TREE_SIDE_EFFECTS.
Protect an explicit target.

From-SVN: r173272

13 years agore PR c/35445 (ICE with conflicting declarations)
Simon Martin [Mon, 2 May 2011 20:13:08 +0000 (20:13 +0000)]
re PR c/35445 (ICE with conflicting declarations)

gcc/

2011-05-02  Simon Martin  <simartin@users.sourceforge.net>

    PR c/35445
    * c-decl.c (finish_decl): Only create a composite if the types are
    compatible.

gcc/testsuite/

2011-05-02  Simon Martin  <simartin@users.sourceforge.net>

    PR c/35445
    * gcc.dg/pr35445.c: New test.

From-SVN: r173269

13 years agommx.md (*movv2sf_internal_rex64): Fix %vmovlps template.
Uros Bizjak [Mon, 2 May 2011 19:28:05 +0000 (21:28 +0200)]
mmx.md (*movv2sf_internal_rex64): Fix %vmovlps template.

* config/i386/mmx.md (*movv2sf_internal_rex64): Fix %vmovlps template.
(*movv2sf_internal): Ditto.

From-SVN: r173267

13 years agofr30-protos.h (Mmode): Don't define.
Joseph Myers [Mon, 2 May 2011 19:03:57 +0000 (20:03 +0100)]
fr30-protos.h (Mmode): Don't define.

* config/fr30/fr30-protos.h (Mmode): Don't define.
* config/m32r/m32r-protos.h (Mmode): Don't define.  Expand
definition where used.
* config/mn10300/mn10300-protos.h (Mmode, Cstar, Rclas): Don't
define.  Expand definitions where used.
* config/rx/rx-protos.h (Mmode, Fargs, Rcode): Don't define.
Expand definitions where used.
* config/rx/rx.c (rx_is_legitimate_address, rx_function_arg_size,
rx_function_arg, rx_function_arg_advance,
rx_function_arg_boundary): Expand definitions of those macros.
* config/v850/v850-protos.h (Mmode): Don't define.  Expand
definition where used.

From-SVN: r173266

13 years agommx.md (*mov<mode>_internal_rex64): Use %vmovq for reg<->xmm moves.
Uros Bizjak [Mon, 2 May 2011 18:58:32 +0000 (20:58 +0200)]
mmx.md (*mov<mode>_internal_rex64): Use %vmovq for reg<->xmm moves.

* config/i386/mmx.md (*mov<mode>_internal_rex64): Use %vmovq for
reg<->xmm moves.
(*mov<mode>_internal): Merge with *mov<mode>_internal_avx.
(*movv2sf_internal_rex64): Use %vmovq for reg<->xmm moves.  Merge
with *movv2sf_internal_rex64_avx.
(*movv2sf_internal): Merge with *movv2sf_internal_avx.
* config/i386/i386.md (*movdi_internal_rex64) <TYPE_SSEMOV>:
Use %v prefix in insn mnemonic to handle TARGET_AVX.
(*movdi_internal): Add "isa" attribute.  Use "maybe_vex" instead of
"vex" in "prefix" attribute calculation.
(*movdf_internal): Output AVX mnemonics.  Add "prefix" attribute.

From-SVN: r173265

13 years agore PR c++/48446 (internal compiler error: in gimplify_var_or_parm_decl, at gimplify...
Jason Merrill [Mon, 2 May 2011 18:38:44 +0000 (14:38 -0400)]
re PR c++/48446 (internal compiler error: in gimplify_var_or_parm_decl, at gimplify.c:1946)

PR c++/48446
* decl.c (stabilize_save_expr_r, stabilize_vla_size): New.
(compute_array_index_type): Revert earlier 48446 changes.
(grokdeclarator): Use stabilize_vla_size.

From-SVN: r173264

13 years agoparser.c (cp_parser_init_declarator): Set pushed_scope to NULL_TREE instead of inappr...
Dmitry Gorbachev [Mon, 2 May 2011 17:06:49 +0000 (17:06 +0000)]
parser.c (cp_parser_init_declarator): Set pushed_scope to NULL_TREE instead of inappropriate zero values.

* parser.c (cp_parser_init_declarator): Set pushed_scope to NULL_TREE
instead of inappropriate zero values.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r173263

13 years ago2011-05-02 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Mon, 2 May 2011 17:05:51 +0000 (17:05 +0000)]
2011-05-02  Paolo Carlini  <paolo.carlini@oracle.com>

Tweak last ChangeLog entry.

From-SVN: r173262

13 years agore PR target/47951 (web.c:union_match_dups segmentation fault for bfin)
Stuart Henderson [Mon, 2 May 2011 17:01:01 +0000 (17:01 +0000)]
re PR target/47951 (web.c:union_match_dups segmentation fault for bfin)

2011-05-02  Stuart Henderson  <shenders@gcc.gnu.org>

        PR target/47951
        * config/bfin/bfin.md (loop_end): Use matching constraints to ensure
        inputs match the output.

From-SVN: r173261

13 years agore PR target/47955 (gcc.dg/stack-usage-1.c fails on m68k-linux)
Andreas Schwab [Mon, 2 May 2011 16:58:32 +0000 (16:58 +0000)]
re PR target/47955 (gcc.dg/stack-usage-1.c fails on m68k-linux)

PR target/47955
* gcc/config/m68k/m68k.c (m68k_expand_prologue): Set
current_function_static_stack_size.

From-SVN: r173260

13 years agolto-streamer.c (lto_streamer_cache_insert_1, [...]): Use pointer map instead of hasht...
Jan Hubicka [Mon, 2 May 2011 16:44:04 +0000 (18:44 +0200)]
lto-streamer.c (lto_streamer_cache_insert_1, [...]): Use pointer map instead of hashtable.

* lto-streamer.c (lto_streamer_cache_insert_1,
lto_streamer_cache_lookup, lto_streamer_cache_create,
lto_streamer_cache_delete): Use pointer map instead of hashtable.
* lto-streamer.h (lto_streamer_cache_d): Turn node_map into pointer_map.

From-SVN: r173259

13 years agosso_string_base.h (__sso_string_base<>::_M_construct): Fix unqualified lookup.
Ollie Wild [Mon, 2 May 2011 16:25:14 +0000 (16:25 +0000)]
sso_string_base.h (__sso_string_base<>::_M_construct): Fix unqualified lookup.

* include/ext/sso_string_base.h (__sso_string_base<>::_M_construct):
Fix unqualified lookup.
(__sso_string_base<>::_M_construct): Likewise.
(__sso_string_base<>::_M_construct): Likewise.
(__sso_string_base<>::_M_assign): Likewise.
(__sso_string_base<>::_M_reserve): Likewise.
(__sso_string_base<>::_M_mutate): Likewise.
(__sso_string_base<>::_M_erase): Likewise.
* include/ext/vstring.h (__versa_string<>::replace): Likewise.
(__versa_string<>::compare): Likewise.
* include/ext/vstring.tcc (__versa_string<>::compare): Likewise.
(__versa_string<>::compare): Likewise.
(__versa_string<>::compare): Likewise.
(__versa_string<>::compare): Likewise.
(__versa_string<>::compare): Likewise.

From-SVN: r173257

13 years agogcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.
Joseph Myers [Mon, 2 May 2011 15:42:39 +0000 (16:42 +0100)]
gcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.

contrib:
* gcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.

gcc:
* config/m68k/genopt.sh, config/m68k/m68k-isas.def,
config/m68k/m68k-microarchs.def, config/m68k/m68k-opts.h,
config/m68k/t-opts: New files.
* config/m68k/m68k-tables.opt: New file (generated).
* config.gcc (fido-*-*, m68k-*-*): Add m68k/m68k-tables.opt to
extra_options and m68k/t-opts to tmake_file.
* config/m68k/m68k.c (m68k_library_id_string): More to m68k.opt.
(all_isas): Initialize using m68k-isas.def.
(all_microarchs): Initialize using m68k-microarchs.def.
(m68k_find_selection): Remove.
(m68k_handle_option): Don't assert that global structures are in
use.  Use error_at.  Access variables via opts pointer.  Don't
handle -march=, -mcpu= and -mtune= here.  Set gcc_options fields
directly for -m68020-40 and -m68020-60.
(m68k_option_override): Set m68k_arch_entry, m68k_cpu_entry and
m68k_tune_entry here.
* config/m68k/m68k.h (enum uarch_type, enum target_device): Move
to m68k-opts.h.
(m68k_library_id_string): Remove declaration.
* config/m68k/m68k.opt (config/m68k/m68k-opts.h): New
HeaderInclude.
(m68k_library_id_string): New Variable.
(march=, mcpu=, mtune=): Use Enum and Var.

From-SVN: r173256

13 years agovarasm.c (output_constructor_regular_field): Compute zero-based index with double...
Richard Guenther [Mon, 2 May 2011 15:22:54 +0000 (15:22 +0000)]
varasm.c (output_constructor_regular_field): Compute zero-based index with double-ints.

2011-05-02  Richard Guenther  <rguenther@suse.de>

* varasm.c (output_constructor_regular_field): Compute zero-based
index with double-ints.  Make sure to ICE instead of producing
wrong code.
* cgraph.c (cgraph_add_thunk): Do not create new tree nodes
in asserts.  Properly use a signed type.

From-SVN: r173255

13 years agosse.md (V): New mode iterator.
Uros Bizjak [Mon, 2 May 2011 14:10:05 +0000 (16:10 +0200)]
sse.md (V): New mode iterator.

* config/i386/sse.md (V): New mode iterator.
(V_128): Rename from SSEMODE.  Make V2DF mode conditional on
TARGET_SSE2.
(V_256): Rename from AVX256MODE.
(VF): Make V4SF mode unconditional.  Add TARGET_SSE instruction
condition to all users.
(VF1): Ditto.
(VF2): Make V2DF mode unconditional.  Add TARGET_SSE2 instruction
condition to all users.
(VF_128): Make V4SF mode unconditional.
(VF_256): Rename from AVX256MODEF2P.
(VI4F_128): Rename from SSEMODE4S.
(VI8F_128): Rename from SSEMODE2D.
(VI4F_256): Rename from AVX256MODE8P.
(VI8F_256): Rename from AVX256MODE4P.
(avxsizesuffix): Add V16HI, V4DI, V8HI and V2DI modes.
(ssescalarmodesuffix): Remove SF and DF modes.
(SSEMODE124): Remove.
(SSEMODE1248): Ditto.
(SSEMODEF2P): Ditto.
(AVXMODEF2P): Ditto.
(AVXMODEFDP): Ditto.
(AVXMODEFSP): Ditto.
(VEC_EXTRACT_MODE): Make V16QI, V8HI, V4SI, V2DI, V4SF and V2DF modes
unconditional.
(VEC_EXTRACT_EVENODD_MODE): Rename from SSEMODE_EO.  Make V4SF mode
unconditional.
(xop_pcmov_<mode><avxsizesuffix>): Merge from xop_pcmov_<mode> and
xop_pcmov_<mode>256.  Use V mode iterator.

Adjust RTX patterns globally for renamed mode attributes.

From-SVN: r173253

13 years agohaifa-sched.c (sched_emit_insn): Emit insn before first non-scheduled insn.
Ulrich Weigand [Mon, 2 May 2011 13:16:55 +0000 (13:16 +0000)]
haifa-sched.c (sched_emit_insn): Emit insn before first non-scheduled insn.

* haifa-sched.c (sched_emit_insn): Emit insn before first
non-scheduled insn.  Inform back-end about new insn.  Add
new insn to scheduled_insns list.

From-SVN: r173251

13 years agore PR tree-optimization/48822 (G++ gets stucks and never finishes compilation when...
Richard Guenther [Mon, 2 May 2011 13:11:27 +0000 (13:11 +0000)]
re PR tree-optimization/48822 (G++ gets stucks and never finishes compilation when enabling -O2/3 optimization options.)

2011-05-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48822
* tree-ssa-sccvn.c (set_ssa_val_to): Never go up the lattice.
(process_scc): Indicate which iteration we start.

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

From-SVN: r173250

13 years agore PR c++/47969 ([C++0x] ICE: SIGSEGV in compute_array_index_type (cp/decl.c:7522))
Paolo Carlini [Mon, 2 May 2011 12:44:15 +0000 (12:44 +0000)]
re PR c++/47969 ([C++0x] ICE: SIGSEGV in compute_array_index_type (cp/decl.c:7522))

/cp
2011-05-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/47969
* decl.c (compute_array_index_type): Check build_expr_type_conversion
return value for NULL_TREE.

/testsuite
2011-05-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/47969
* g++.dg/cpp0x/constexpr-47969.C: New.

From-SVN: r173249

13 years agolto-section-in.c (lto_input_1_unsigned): Move to lto-streamer.h
Jan Hubicka [Mon, 2 May 2011 12:37:13 +0000 (14:37 +0200)]
lto-section-in.c (lto_input_1_unsigned): Move to lto-streamer.h

* lto-section-in.c (lto_input_1_unsigned): Move to lto-streamer.h
(lto_section_overrun): New.
* lto-section-out.c (append_block): Rename to ...
(lto_append_block): ... this one; export.
(lto_output_1_stream): Move lto lto-streamer.h
(lto_output_data_stream): Update.
* lto-streamer.h (lto_section_overrun, lto_append_block): Declare.
(lto_output_1_stream, lto_input_1_unsigned): Turn into inline
functions.

From-SVN: r173247

13 years agore PR testsuite/48498 (Several gcc.dg/vect tests XPASS on SPARC)
Ira Rosen [Mon, 2 May 2011 11:13:26 +0000 (11:13 +0000)]
re PR testsuite/48498 (Several gcc.dg/vect tests XPASS on SPARC)

PR testsuite/48498
* gcc.dg/vect/slp-3.c: Increase loop bound.  Don't expect to fail
on vect_no_align targets.
* gcc.dg/vect/no-vfa-pr29145.c: Don't expect to fail on
vect_no_align targets.

From-SVN: r173245

13 years agotree.c (tree_code_counts): New global array.
Richard Guenther [Mon, 2 May 2011 11:12:26 +0000 (11:12 +0000)]
tree.c (tree_code_counts): New global array.

2011-05-02  Richard Guenther  <rguenther@suse.de>

* tree.c (tree_code_counts): New global array.
(record_node_allocation_statistics): Count individual tree codes.
(dump_tree_statistics): Dump individual code stats.

From-SVN: r173244

13 years agostatus_cxx200x.xml: Update to reflect current status and FDIS content.
Jonathan Wakely [Mon, 2 May 2011 10:39:15 +0000 (10:39 +0000)]
status_cxx200x.xml: Update to reflect current status and FDIS content.

2011-05-02  Jonathan Wakely  <jwakely.gcc@gmail.com>

* doc/xml/manual/status_cxx200x.xml: Update to reflect current status
and FDIS content.
* doc/xml/manual/documentation_hacking.xml: Fix typo.
* doc/html/*: Regenerate.

From-SVN: r173243

13 years agonew tests
Xinliang David Li [Mon, 2 May 2011 05:30:59 +0000 (05:30 +0000)]
new tests

From-SVN: r173242

13 years agoDaily bump.
GCC Administrator [Mon, 2 May 2011 00:19:15 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r173240

13 years agoipa-inline.c (caller_growth_limits): Fix thinko when
Jan Hubicka [Sun, 1 May 2011 19:11:07 +0000 (21:11 +0200)]
ipa-inline.c (caller_growth_limits): Fix thinko when

* ipa-inline.c (caller_growth_limits): Fix thinko when
* ipa-inline.c (caller_growth_limits): Fix thinko when
looking for largest stack frame.
* ipa-inline.h (dump_inline_summary): Declare.
* ipa-inline-analysis.c (dump_inline_edge_summary): Dump info
on stack usage.
(dump_inline_summary): Export.
(debug_inline_summary): Declare as DEBUG_FUNCTION.

From-SVN: r173234

13 years agore PR libfortran/48787 (Invalid UP/DOWN rounding with F editing)
Jerry DeLisle [Sun, 1 May 2011 12:37:05 +0000 (12:37 +0000)]
re PR libfortran/48787 (Invalid UP/DOWN rounding with F editing)

2011-05-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/48787
* gfortran.dg/round_3.f08: Add more checks.

From-SVN: r173233

13 years agoreginfo.c (memory_move_cost): Change rclass argument type form 'enum reg_class' to...
Anatoly Sokolov [Sun, 1 May 2011 12:33:13 +0000 (16:33 +0400)]
reginfo.c (memory_move_cost): Change rclass argument type form 'enum reg_class' to reg_class_t.

* reginfo.c (memory_move_cost): Change rclass argument type form
'enum reg_class' to reg_class_t.
* reload.h (memory_move_cost): Update prototype.
* postreload.c reload_cse_simplify_set): Change type dclass var to
reg_class_t.
* ira-int.h (ira_allocate_cost_vector, ira_free_cost_vector):
Update prototype.
(ira_allocate_and_set_costs): Change aclass argument type form
'enum reg_class' to reg_class_t.
* ira-build.c (ira_allocate_cost_vector, ira_free_cost_vector):
Change aclass argument type to reg_class_t.
(update_conflict_hard_reg_costs): Change type aclass and pref vars
to reg_class_t.
* gcc/ira.c (setup_class_subset_and_memory_move_costs): Adjust
memory_move_cost call.

* config/ia64/ia64.c (ia64_register_move_cost): Remove 'from' and
'to' local var. Rename from_i and to_i arguments to 'from' and 'to'.
Change type tmp var to reg_class_t.

From-SVN: r173232

13 years agore PR libfortran/48787 (Invalid UP/DOWN rounding with F editing)
Jerry DeLisle [Sun, 1 May 2011 12:32:18 +0000 (12:32 +0000)]
re PR libfortran/48787 (Invalid UP/DOWN rounding with F editing)

2011-05-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/48787
* io/write_float.def (output_float): Gather up integer declarations and
add new 'p' for scale factor. Use 'p' in place of the 'dtp' reference
everywhere. For ROUND_UP scan the digit string and only perform
rounding if something other than '0' is found.

From-SVN: r173231

13 years agoDaily bump.
GCC Administrator [Sun, 1 May 2011 00:18:21 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r173229

13 years agognatvsn.ads (Library_Version): Bump to 4.7.
Eric Botcazou [Sat, 30 Apr 2011 21:16:34 +0000 (21:16 +0000)]
gnatvsn.ads (Library_Version): Bump to 4.7.

* gnatvsn.ads (Library_Version): Bump to 4.7.
(Current_Year): Bump to 2011.

From-SVN: r173224

13 years agodump-prase-tree.c (show_code_node): Set the current namespace to the BLOCK before...
Thomas Koenig [Sat, 30 Apr 2011 21:13:44 +0000 (21:13 +0000)]
dump-prase-tree.c (show_code_node): Set the current namespace to the BLOCK before displaying it; restore afterwards.

2011-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

* dump-prase-tree.c (show_code_node):  Set the current
namespace to the BLOCK before displaying it; restore
afterwards.

From-SVN: r173223

13 years ago[multiple changes]
Paolo Carlini [Sat, 30 Apr 2011 19:40:06 +0000 (19:40 +0000)]
[multiple changes]

2011-04-30  Daniel Krugler  <daniel.kruegler@googlemail.com>

* include/std/type_traits (__is_default_constructible_atom,
__is_default_constructible_safe<, true>,
__is_direct_constructible_new_safe,
__is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>,
__is_direct_constructible_ref_cast, __is_direct_constructible,
__is_nary_constructible): Simplify; add comments throughout.

2011-04-30  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

From-SVN: r173222

13 years agore PR fortran/48821 (IMPORT :: dummy_arg is rejected, while "IMPORT" imports it)
Tobias Burnus [Sat, 30 Apr 2011 16:33:47 +0000 (18:33 +0200)]
re PR fortran/48821 (IMPORT :: dummy_arg  is rejected, while "IMPORT" imports it)

2011-04-30  Tobias Burnus  <burnus@net-b.de>

       PR fortran/48821
       * gfortran.dg/import9.f90: New, proper test.
       * gfortran.dg/interface_37.f90: Remove bogus
       test (bogus copy of interface_36.f90).

From-SVN: r173221

13 years agoMakefile.am (install-freestanding-headers): Also install cxxabi_tweaks.h.
Doug Kwan [Sat, 30 Apr 2011 16:26:23 +0000 (16:26 +0000)]
Makefile.am (install-freestanding-headers): Also install cxxabi_tweaks.h.

2011-04-30  Doug Kwan  <dougkwan@google.com>

* include/Makefile.am (install-freestanding-headers): Also install
cxxabi_tweaks.h.
* include/Makefile.in: Regenerate.

From-SVN: r173220

13 years agore PR fortran/48800 (ICE with non-allocatable/pointer deferred-shape array)
Tobias Burnus [Sat, 30 Apr 2011 15:54:49 +0000 (17:54 +0200)]
re PR fortran/48800 (ICE with non-allocatable/pointer deferred-shape array)

2011-04-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48800
        * decl.c (gfc_match_import): Don't try to find the
        symbol if already found.

2011-04-30  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48800
        * gfortran.dg/interface_37.f90: New.

From-SVN: r173219

13 years agocp-tree.h (LOOKUP_EXPLICIT_TMPL_ARGS): Define.
Diego Novillo [Sat, 30 Apr 2011 15:20:58 +0000 (11:20 -0400)]
cp-tree.h (LOOKUP_EXPLICIT_TMPL_ARGS): Define.

cp/ChangeLog
2011-04-29  Le-Chun Wu  <lcwu@google.com>

* cp-tree.h (LOOKUP_EXPLICIT_TMPL_ARGS): Define.
* call.c (build_new_function_call): Set it for TEMPLATE_ID_EXPRs.
(build_over_call): Use it to determine whether to emit a NULL
warning for template function instantiations.
(build_new_method_call): Set LOOKUP_EXPLICIT_TMPL_ARGS if
EXPLICIT_TARGS is set.

2011-04-29  Diego Novillo  <dnovillo@google.com>
    Le-Chun Wu  <lcwu@google.com>

* call.c (conversion_null_warnings): Also handle assignments
when warning about NULL conversions.

testsuite/ChangeLog
2011-04-29  Le-Chun Wu  <lcwu@google.com>

* g++.dg/warn/Wnull-conversion-1.C: New.
* g++.dg/warn/Wnull-conversion-2.C: New.

2011-04-29  Le-Chun Wu  <lcwu@google.com>

* g++.dg/warn/Wconversion-null-2.C: Do not expect a NULL
  warning in implicitly instantiated templates.

2011-04-29  Diego Novillo  <dnovillo@google.com>

* g++.old-deja/g++.other/null3.C: Expect warning about converting
boolean to a pointer.

From-SVN: r173217

13 years agoipa-inline.c (can_inline_edge_p): Disregard limits when inlining into function with...
Jan Hubicka [Sat, 30 Apr 2011 14:08:03 +0000 (16:08 +0200)]
ipa-inline.c (can_inline_edge_p): Disregard limits when inlining into function with flatten attribute.

* ipa-inline.c (can_inline_edge_p): Disregard limits when
inlining into function with flatten attribute.
(want_inline_small_function_p): Be more realistic about inlining
cold calls where callee size grows.

From-SVN: r173216

13 years agocgraph.c (cgraph_create_virtual_clone): Clear constructor/destructor flags.
Jan Hubicka [Sat, 30 Apr 2011 14:07:06 +0000 (16:07 +0200)]
cgraph.c (cgraph_create_virtual_clone): Clear constructor/destructor flags.

* cgraph.c (cgraph_create_virtual_clone): Clear constructor/destructor
flags.

From-SVN: r173215

13 years agore PR fortran/48746 (Matmul with allocate on assignment)
Paul Thomas [Sat, 30 Apr 2011 11:46:31 +0000 (11:46 +0000)]
re PR fortran/48746 (Matmul with allocate on assignment)

2011-04-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/48746
* trans-expr.c (fcncall_realloc_result): Set the bounds and the
offset so that the lbounds are one.
(gfc_trans_arrayfunc_assign): Add rank to arguments of above.

2011-04-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/48746
* gfortran.dg/realloc_on_assign_7.f03: Test bounds.

From-SVN: r173213

13 years agosparc.h (PRINT_OPERAND, [...]): Remove.
Anatoly Sokolov [Sat, 30 Apr 2011 11:17:56 +0000 (15:17 +0400)]
sparc.h (PRINT_OPERAND, [...]): Remove.

* config/sparc/sparc.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS,
PRINT_OPERAND_PUNCT_VALID_P): Remove.
* config/sparc/sparc-protos.h (print_operand): Remove declaration.
* config/sparc/sparc.c (TARGET_PRINT_OPERAND_PUNCT_VALID_P,
TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
(print_operand): Rename to...
(sparc_print_operand): ...this. Make static. Adjust
sparc_print_operand function call.
(sparc_print_operand_punct_valid_p, sparc_print_operand_address): New
functions.

From-SVN: r173212

13 years agore PR middle-end/48752 (ICE in evaulate_conditions_for_edge at ipa-inline-analysis...
Jan Hubicka [Sat, 30 Apr 2011 11:01:26 +0000 (13:01 +0200)]
re PR middle-end/48752 (ICE in evaulate_conditions_for_edge at ipa-inline-analysis.c:466)

PR middle-end/48752
* ipa-inline.c (early_inliner): Disable when doing late
addition of function.

From-SVN: r173211

13 years agodwarf2.h (DW_OP_GNU_const_type, [...]): New.
Jakub Jelinek [Sat, 30 Apr 2011 10:06:18 +0000 (12:06 +0200)]
dwarf2.h (DW_OP_GNU_const_type, [...]): New.

* dwarf2.h (DW_OP_GNU_const_type, DW_OP_GNU_regval_type,
DW_OP_GNU_deref_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret): New.

* dwarf2out.c (get_address_mode): New inline.
(mem_loc_descriptor): Add MEM_MODE parameter, adjust recursive calls,
if not dwarf_strict emit
DW_OP_GNU_{{const,regval,deref}_type,convert,reinterpret} when
desirable.  Handle FLOAT_EXTEND, FLOAT_TRUNCATE, FLOAT,
UNSIGNED_FLOAT, FIX and UNSIGNED_FIX.  Just return NULL for
FMA, STRICT_LOW_PART, CONST_VECTOR and CONST_FIXED.
(dwarf2out_frame_debug_cfa_expression, reg_loc_descriptor,
dw_loc_list_1, cst_pool_loc_descr, loc_list_from_tree): Adjust
mem_loc_descriptor callers.
(dwarf_stack_op_name, size_of_loc_descr, output_loc_operands,
output_loc_operands_raw, hash_loc_operands, compare_loc_operands):
Handle DW_OP_GNU_const_type, DW_OP_GNU_regval_type,
DW_OP_GNU_deref_type, DW_OP_GNU_convert and DW_OP_GNU_reinterpret.
(base_types): New variable.
(get_base_type_offset, calc_base_type_die_sizes,
base_type_for_mode, mark_base_types, base_type_cmp,
move_marked_base_types): New functions.
(calc_die_sizes): Assert that die_offset is 0 or equal to
next_die_offset.
(loc_descriptor): Only handle here lowpart SUBREGs of REG, for
others defer to mem_loc_descriptor.  Adjust mem_loc_descriptor
callers.  If not dwarf_strict, call mem_loc_descriptor even for
non-MODE_INT modes or MODE_INT modes larger than DWARF2_ADDR_SIZE.
(gen_subprogram_die): Don't give up on call site parameters
with non-integral or large integral modes.  Adjust
mem_loc_descriptor callers.
(prune_unused_types): Call prune_unused_types_mark on base_types
vector entries.
(resolve_addr): Call mark_base_types.
(dwarf2out_finish): Call move_marked_base_types.

From-SVN: r173210

13 years agore PR testsuite/48809 (switch statement optimization error)
Jakub Jelinek [Sat, 30 Apr 2011 06:54:02 +0000 (08:54 +0200)]
re PR testsuite/48809 (switch statement optimization error)

PR tree-optimization/48809
* tree-switch-conversion.c (build_arrays): Compute tidx in unsigned
type.
(gen_inbound_check): Don't compute index_expr - range_min in utype
again, instead reuse SSA_NAME initialized in build_arrays.
Remove two useless gsi_for_stmt calls.

* gcc.c-torture/execute/pr48809.c: New test.

From-SVN: r173207

13 years agotree-ssa-threadedge.c (thread_across_edge): Add missing return.
Jeff Law [Sat, 30 Apr 2011 03:46:17 +0000 (21:46 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Add missing return.

  * tree-ssa-threadedge.c (thread_across_edge): Add missing return.

  * gcc.dg/tree-ssa/ssa-dom-thread-4.c: New test.

From-SVN: r173206

13 years agoDaily bump.
GCC Administrator [Sat, 30 Apr 2011 00:19:30 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r173204