platform/upstream/linaro-gcc.git
11 years ago PR tree-optimization/45216
jakub [Fri, 10 May 2013 08:40:10 +0000 (08:40 +0000)]
PR tree-optimization/45216
PR tree-optimization/57157
* tree-ssa-forwprop.c (simplify_rotate): New function.
(ssa_forward_propagate_and_combine): Call it.

* c-c++-common/rotate-1.c: New test.
* c-c++-common/rotate-1a.c: New test.
* c-c++-common/rotate-2.c: New test.
* c-c++-common/rotate-2a.c: New test.
* c-c++-common/rotate-3.c: New test.
* c-c++-common/rotate-3a.c: New test.
* c-c++-common/rotate-4.c: New test.
* c-c++-common/rotate-4a.c: New test.

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

11 years ago * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
uros [Fri, 10 May 2013 07:54:22 +0000 (07:54 +0000)]
* testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.

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

11 years ago2013-05-10 Richard Biener <rguenther@suse.de>
rguenth [Fri, 10 May 2013 07:52:25 +0000 (07:52 +0000)]
2013-05-10  Richard Biener  <rguenther@suse.de>

* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do not
disable peeling when we version for aliasing.
(vector_alignment_reachable_p): Honor explicit user alignment.
(vect_supportable_dr_alignment): Likewise.
* tree-vect-loop-manip.c (vect_can_advance_ivs_p): Use
STMT_VINFO_LOOP_PHI_EVOLUTION_PART instead of recomputing it.
* tree-vect-loop.c (vect_transform_loop): First apply versioning,
then peeling to arrange for the cost-model check to come first.

* gcc.target/i386/avx256-unaligned-load-2.c: Make well-defined.
* gcc.target/i386/l_fma_double_1.c: Adjust.
* gcc.target/i386/l_fma_double_2.c: Likewise.
* gcc.target/i386/l_fma_double_3.c: Likewise.
* gcc.target/i386/l_fma_double_4.c: Likewise.
* gcc.target/i386/l_fma_double_5.c: Likewise.
* gcc.target/i386/l_fma_double_6.c: Likewise.
* gcc.target/i386/l_fma_float_1.c: Likewise.
* gcc.target/i386/l_fma_float_2.c: Likewise.
* gcc.target/i386/l_fma_float_3.c: Likewise.
* gcc.target/i386/l_fma_float_4.c: Likewise.
* gcc.target/i386/l_fma_float_5.c: Likewise.
* gcc.target/i386/l_fma_float_6.c: Likewise.

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

11 years ago * configure.ac (HAVE_AS_TLS): Swap powerpc64 and powerpc cases.
amodra [Fri, 10 May 2013 02:07:53 +0000 (02:07 +0000)]
* configure.ac (HAVE_AS_TLS): Swap powerpc64 and powerpc cases.
(HAVE_LD_LARGE_TOC): Don't mention AIX in help text.
* configure: Regenerate.

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

11 years ago PR target/55033
amodra [Fri, 10 May 2013 01:06:49 +0000 (01:06 +0000)]
PR target/55033
* varasm.c (default_elf_select_section): Move !DECL_P check..
(get_named_section): ..to here before calling get_section_name.
Adjust assertion.
(default_section_type_flags): Add DECL_P check.
* config/i386/winnt.c (i386_pe_section_type_flags): Likewise.
* config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags): Likewise.

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

11 years agoDaily bump.
gccadmin [Fri, 10 May 2013 00:16:21 +0000 (00:16 +0000)]
Daily bump.

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

11 years ago * decl.c (cp_finish_decl): Only check VLA bound in C++1y mode.
jason [Thu, 9 May 2013 22:08:59 +0000 (22:08 +0000)]
* decl.c (cp_finish_decl): Only check VLA bound in C++1y mode.

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

11 years ago * config/epiphany/epiphany.c (epiphany_expand_prologue):
amylaar [Thu, 9 May 2013 20:11:12 +0000 (20:11 +0000)]
    * config/epiphany/epiphany.c (epiphany_expand_prologue):
        When using gen_stack_adjust_str with a register offset, add a
        REG_FRAME_RELATED_EXPR note.

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

11 years ago * config/i386/sse.md (*vec_extractv4si_0_zext): New pattern.
uros [Thu, 9 May 2013 19:36:56 +0000 (19:36 +0000)]
* config/i386/sse.md (*vec_extractv4si_0_zext): New pattern.
(*vec_extractv4si_zext_mem): Ditto.
(*vec_extractv2di): Add 0->x and x->x alternatives.
* config/i386/mmx.md (*vec_extractv2si_zext_mem): New pattern.
* config/i386/i386.md (*zero_extendsidi2): Add *Yj->?r alternative.

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

11 years ago PR c++/57222
jason [Thu, 9 May 2013 16:43:49 +0000 (16:43 +0000)]
PR c++/57222
* pt.c (lookup_template_class_1): Handle getting a template
template parameter as D1.

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

11 years ago N3639 C++1y VLA diagnostics
jason [Thu, 9 May 2013 16:43:43 +0000 (16:43 +0000)]
N3639 C++1y VLA diagnostics

* decl.c (grokdeclarator): Complain about reference, pointer, or
typedef to VLA.
(create_array_type_for_decl): Complain about array of VLA.
* pt.c (tsubst): Likewise.
* rtti.c (get_tinfo_decl): Talk about "array of runtime bound".
* semantics.c (finish_decltype_type): Complain about decltype of VLA.
* typeck.c (cp_build_addr_expr_1): Complain about VLA.
(cxx_sizeof_or_alignof_type): Likewise.

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

11 years ago N3639 C++1y VLA support
jason [Thu, 9 May 2013 16:43:36 +0000 (16:43 +0000)]
N3639 C++1y VLA support

gcc/
* gimplify.c (gimplify_vla_decl): Don't touch an existing
DECL_VALUE_EXPR.
gcc/cp/
* decl.c (compute_array_index_type): Allow VLAs in C++1y mode.
(check_array_initializer): Allow VLA init.
(reshape_init_array_1): Adjust.
(cp_finish_decl): Check for invalid VLA length.
* typeck2.c (process_init_constructor_array): Adjust.
(store_init_value): Use build_vec_init for VLAs.
* semantics.c (add_capture): Capture VLA as ptr+len.
(vla_capture_type): New.
(build_capture_proxy): Rebuild the VLA.
* typeck.c (build_simple_component_ref): Split out from...
(build_ptrmemfunc_access_expr): ...here.
* tree.c (array_of_runtime_bound_p): New.
* init.c (throw_bad_array_length): New.
(build_vec_init): Use it.
* parser.c (cp_convert_range_for): When iterating over a VLA,
use it directly rather than bind a reference.
* cp-tree.h: Declare new functions.
libstdc++-v3/
* libsupc++/new: Add std::bad_array_length.
* libsupc++/bad_array_length.cc: New.
* libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
* libsupc++/Makefile.in: Build them.
* config/abi/pre/gnu.ver: Add new symbols.
* config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.

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

11 years ago * tree.c (build_constructor_va): New.
jason [Thu, 9 May 2013 16:43:27 +0000 (16:43 +0000)]
* tree.c (build_constructor_va): New.
* tree.h: Declare it.

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

11 years ago2013-05-09 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 9 May 2013 16:32:17 +0000 (16:32 +0000)]
2013-05-09  Martin Jambor  <mjambor@suse.cz>

PR lto/57084
* gimple-fold.c (canonicalize_constructor_val): Call
cgraph_get_create_real_symbol_node instead of cgraph_get_create_node.

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

11 years ago Jan Hubicka <jh@suse.cz>
hubicka [Thu, 9 May 2013 15:37:12 +0000 (15:37 +0000)]
Jan Hubicka  <jh@suse.cz>
Richard Biener  <rguenther@suse.de>

PR lto/54095
* symtab.c (symtab_make_decl_local): Do not add private names.

* lto.c (lto_register_var_decl_in_symtab): Don't do renaming.
(lto_register_var_decl_in_symtab): Likewise.
(lto_main): Promote statics.
* lto-partition.c (privatize_symbol_name): New function.
(promote_symbol): Use it.
(may_need_named_section_p): New predicate.
(rename_statics): New functions.
(lto_promote_cross_file_statics): Simplify; do renaming.
(lto_promote_statics_nonwpa): New function.
* lto-partition.h (lto_promote_statics_nonwpa): New function.

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

11 years ago PR lto/54095
hubicka [Thu, 9 May 2013 09:51:52 +0000 (09:51 +0000)]
PR lto/54095
* symtab.c (insert_to_assembler_name_hash): Handle clones.
(unlink_from_assembler_name_hash): Likewise.
(symtab_prevail_in_asm_name_hash, symtab_register_node,
symtab_unregister_node, symtab_initialize_asm_name_hash,
change_decl_assembler_name): Update.

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

11 years ago * config/aarch64/aarch64.md: New movtf split.
sofiane [Thu, 9 May 2013 08:25:30 +0000 (08:25 +0000)]
* config/aarch64/aarch64.md: New movtf split.
(*movtf_aarch64): Update.
(aarch64_movdi_tilow): Handle TF modes and rename to
aarch64_movdi_<mode>low.
(aarch64_movdi_tihigh): Handle TF modes and rename to
aarch64_movdi_<mode>high
(aarch64_movtihigh_di): Handle TF modes and rename to
aarch64_mov<mode>high_di
(aarch64_movtilow_di): Handle TF modes and rename to
aarch64_mov<mode>low_di
(aarch64_movtilow_tilow): Remove spurious whitespace.
* config/aarch64/aarch64.c (aarch64_split_128bit_move): Handle TFmode
splits.
(aarch64_print_operand): Update.

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

11 years ago * configure.ac (HAVE_AS_TLS): Enable tests for powerpcle and
amodra [Thu, 9 May 2013 07:26:56 +0000 (07:26 +0000)]
* configure.ac (HAVE_AS_TLS): Enable tests for powerpcle and
powerpc64le.
* configure: Regenerate.

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

11 years agoMark all member functions with memory models always inline v2
ak [Thu, 9 May 2013 04:22:11 +0000 (04:22 +0000)]
Mark all member functions with memory models always inline v2

When a non constant memory model is passed to __atomic_*
gcc falls back to seq_cst. This drops any HLE acquire or release bits.

This can happen when <atomic> is used with -O0
as the member functions are not always inlined then and the memory
argument passed in ends up being non-constant.

v2: Use _GLIBCXX_ALWAYS_INLINE

libstdc++-v3/:

2013-05-08  Andi Kleen  <ak@linux.intel.com>

PR target/55947
* libstdc++-v3/include/bits/atomic_base.h
(_GLIBCXX_ALWAYS_INLINE): Add new macro.
(atomic_thread_fence, atomic_signal_fence, test_and_set,
clear, store, load, exchange, compare_exchange_weak)
compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.

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

11 years ago * except.c (is_admissible_throw_operand_or_catch_parameter): Check
jason [Thu, 9 May 2013 03:58:07 +0000 (03:58 +0000)]
* except.c (is_admissible_throw_operand_or_catch_parameter): Check
variably_modified_type_p.
(expand_start_catch_block): Mark the typeinfo used here.
* semantics.c (finish_handler_parms): Not here.

* error.c (dump_type_suffix): Try harder on VLA length.

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

11 years ago Core 624/N2932: Throw bad_array_new_length on overflow
jason [Thu, 9 May 2013 03:58:00 +0000 (03:58 +0000)]
Core 624/N2932: Throw bad_array_new_length on overflow
in array new size calculation.

libstdc++-v3/
* libsupc++/new: Add std::bad_array_new_length.
* libsupc++/bad_array_new.cc: New.
* libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
* libsupc++/Makefile.in: Build them.
* config/abi/pre/gnu.ver: Add new symbols.
* config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
gcc/cp/
* init.c (throw_bad_array_new_length): New.
(build_new_1): Use it.  Don't warn about braced-init-list.
(build_vec_init): Use it.
* call.c (build_operator_new_call): Use it.

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

11 years ago PR c++/57068
jason [Thu, 9 May 2013 03:57:53 +0000 (03:57 +0000)]
PR c++/57068
* decl.c (grokdeclarator): Warn about ref-qualifiers here.
* parser.c (cp_parser_ref_qualifier_seq_opt): Not here.
* error.c (maybe_warn_cpp0x): s/0x/11/.

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

11 years agoDaily bump.
gccadmin [Thu, 9 May 2013 00:16:40 +0000 (00:16 +0000)]
Daily bump.

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

11 years ago * config/i386/mmx.md (*vec_extract* splitters): Simplify post-reload
uros [Wed, 8 May 2013 20:52:46 +0000 (20:52 +0000)]
* config/i386/mmx.md (*vec_extract* splitters): Simplify post-reload
splitter preparation statements.
* config/i386/sse.md (*vec_extract* splitters): Ditto.
(*avx_vperm_broadcast_<mode>): Use adjust_address instead of
adjust_address_nv.

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

11 years ago2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
ktietz [Wed, 8 May 2013 19:08:32 +0000 (19:08 +0000)]
2013-05-08  Andoni Morales Alastruey <ylatuya@gmail.com>

PR libstdc++/57212
* include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
to __MINGW32__.
* include/Makefile.in: Regenerated.

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

11 years ago * config/i386/cygming-crtbegin.c (__register_frame_info): Make weak.
ktietz [Wed, 8 May 2013 18:33:52 +0000 (18:33 +0000)]
* config/i386/cygming-crtbegin.c (__register_frame_info): Make weak.
(__deregister_frame_info): Likewise.

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

11 years ago * config/i386/mmx.md (*vec_extract* splitters): Simplify post-reload
uros [Wed, 8 May 2013 18:05:41 +0000 (18:05 +0000)]
* config/i386/mmx.md (*vec_extract* splitters): Simplify post-reload
splitter preparation statements.
* config/i386/sse.md (*vec_extract* splitters): Ditto.
(*avx_vperm_broadcast_<mode>): Use adjust_address instead of
adjust_address_nv.

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

11 years ago2013-05-08 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Wed, 8 May 2013 17:05:59 +0000 (17:05 +0000)]
2013-05-08  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (count_candidates): Change
return value to int.
(analyze_candidates_and_replace): Change type of length to int.

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

11 years ago/cp
paolo [Wed, 8 May 2013 15:22:03 +0000 (15:22 +0000)]
/cp
2013-05-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51226
* parser.c (cp_parser_enum_specifier): Handle nested_name_specifier
== error_mark_node.

/testsuite
2013-05-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51226
* g++.dg/cpp0x/pr51226.C: New.

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

11 years ago * config/i386/sse.md (PEXTR_MODE, PEXTR_MODEx): Remove.
uros [Wed, 8 May 2013 14:43:01 +0000 (14:43 +0000)]
* config/i386/sse.md (PEXTR_MODE, PEXTR_MODEx): Remove.
(*vec_extract<mode>): Use VI12_128 mode iterator.
(*vec_extract<mode>_mem): Ditto.
(*vec_extract*_mem splitters): Merge splitters using VI_128 mode
attribute.

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

11 years ago PR bootstrap/54659
dnovillo [Wed, 8 May 2013 13:22:14 +0000 (13:22 +0000)]
PR bootstrap/54659

Revert:

2012-08-17  Diego Novillo  <dnovillo@google.com>

PR bootstrap/54281
* configure.ac: Add libintl.h to AC_CHECK_HEADERS list.
* config.in: Regenerate.
* configure: Regenerate.
* intl.h: Always include libintl.h if HAVE_LIBINTL_H is
set.

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

11 years ago PR lto/54095
hubicka [Wed, 8 May 2013 12:59:21 +0000 (12:59 +0000)]
PR lto/54095
* cgraph.c (cgraph_make_node_local_1): Se unique_name.
* cgraph.h (symtab_node_base): Add unique_name.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
input_overwrite_node, input_varpool_node): Stream unique_name.
* cgraphclones.c (cgraph_create_virtual_clone,
cgraph_function_versioning): Set unique_name.
* ipa.c (function_and_variable_visibility): Set unique_name.

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

11 years ago2013-05-08 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Wed, 8 May 2013 12:22:32 +0000 (12:22 +0000)]
2013-05-08  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (find_phi_def): Revert former "fix."
(alloc_cand_and_find_basis): Restrict conditional candidate
processing to CAND_MULTs.

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

11 years ago PR lto/54095
hubicka [Wed, 8 May 2013 11:00:55 +0000 (11:00 +0000)]
PR lto/54095
lto-symtab.c (lto_symtab_symbol_p): New function.
(lto_symtab_resolve_can_prevail_p, lto_symtab_resolve_symbols,
lto_symtab_resolve_symbols, lto_symtab_merge_decls_2,
lto_symtab_merge_decls_1, lto_symtab_merge_cgraph_nodes_1):
Skip static symbols.

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

11 years agoMinor tweaks
ebotcazou [Wed, 8 May 2013 09:51:25 +0000 (09:51 +0000)]
Minor tweaks

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

11 years ago2013-05-08 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 8 May 2013 09:09:52 +0000 (09:09 +0000)]
2013-05-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR tree-optimization/57200
* tree-ssa-loop-niter.c (do_warn_aggressive_loop_optimizations):
Only call inform if the preceding warning_at returns true.

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

11 years agoDaily bump.
gccadmin [Wed, 8 May 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

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

11 years ago2013-05-07 Han Shen <shenhan@google.com>
shenhan [Tue, 7 May 2013 23:33:40 +0000 (23:33 +0000)]
2013-05-07  Han Shen  <shenhan@google.com>

    Added 2 missing files that should be included in the previous
    submitted patch trunk@r198699.

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

11 years ago2013-05-07 Han Shen <shenhan@google.com>
shenhan [Tue, 7 May 2013 21:33:01 +0000 (21:33 +0000)]
2013-05-07  Han Shen  <shenhan@google.com>

    gcc/
    * cfgexpand.c (record_or_union_type_has_array_p): New function.
    (expand_used_vars): Add logic handling '-fstack-protector-strong'.
    * common.opt (fstack-protector-strong): New option.
    * doc/cpp.texi (__SSP_STRONG__): New builtin "__SSP_STRONG__".
    * doc/invoke.texi (Optimization Options): Document
    "-fstack-protector-strong".
    * gcc.c (LINK_SSP_SPEC): Add 'fstack-protector-strong'.

    gcc/testsuite/
    * gcc.dg/fstack-protector-strong.c: New.
    * g++.dg/fstack-protector-strong.C: New.

    gcc/c-family/
    * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".

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

11 years ago2013-05-07 François Dumont <fdumont@gcc.gnu.org>
fdumont [Tue, 7 May 2013 20:26:15 +0000 (20:26 +0000)]
2013-05-07  François Dumont  <fdumont@gcc.gnu.org>

* include/profile/unordered_base.h: New.
* include/Makefile.am: Add new profile header.
* include/Makefile.in: Regenerate.
* include/profile/impl/profiler.h
(__profcxx_inefficient_hash_is_on): New macro.
* include/profile/unordered_map (std::profile::unordered_map<>):
Use new _Unordered_profile base class. Use default implementations
for special functions.
(std::profile::unordered_multimap<>): Likewise.
* include/profile/unordered_set (std::profile::unordered_set<>):
Likewise.
(std::profile::unordered_multiset<>): Likewise.
* testsuite/23_containers/unordered_multiset/55043.cc: Fix
MoveOnly equality operator signature.

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

11 years ago * config/mips/mips.c (mips_machine_reorg2): Return 0.
steven [Tue, 7 May 2013 19:34:35 +0000 (19:34 +0000)]
* config/mips/mips.c (mips_machine_reorg2): Return 0.

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

11 years ago2013-05-07 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Tue, 7 May 2013 19:29:05 +0000 (19:29 +0000)]
2013-05-07  Vladimir Makarov  <vmakarov@redhat.com>

* ira.c (update_equiv_regs): Add insn having equiv memory even if
it is not lhs of the insn.
(setup_reg_equiv): Remove insn having equiv memory which it is not
lhs of the insn.
* lra-constraints.c (process_address): Try to improve generation
code for address base + disp.
(lra_constraints): Make correct the code for checking insn setting
up backward equivalence.  Remove insn only if it is in the init
insn list.
* lra-eliminations.c (update_reg_eliminate): Change return value.
(lra_eliminate): Use the result.

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

11 years ago * config/i386/sse.md (ssescalarnummask): New mode attribute.
uros [Tue, 7 May 2013 17:57:10 +0000 (17:57 +0000)]
* config/i386/sse.md (ssescalarnummask): New mode attribute.
(PEXTR_MODE, PEXTR_MODEx): New mode iterators.
(*vec_extract<mode>): Merge from *sse4_1_pextrb_memory and
*sse4_1_pextrw_memory. Handle register target operands.
(*vec_extractv8hi_sse2): New pattern.
(*vec_extractv16qi_zext): Rename from *sse4_1_pextrb_<mode>.
(*vec_extractv8hi_zext): Rename from *sse2_pextrw_<mode>.
(*vec_extract<mode>_mem): New insn and split pattern.

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

11 years agoAArch64 testcases for ANDS instruction
ibolton [Tue, 7 May 2013 14:41:17 +0000 (14:41 +0000)]
AArch64 testcases for ANDS instruction

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

11 years ago2013-05-06 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Tue, 7 May 2013 14:17:50 +0000 (14:17 +0000)]
2013-05-06  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
* config/arm/arm.c (arm_asan_shadow_offset): New function.
(TARGET_ASAN_SHADOW_OFFSET): Define.
* config/arm/linux-eabi.h (ASAN_CC1_SPEC): Define.
(LINUX_OR_ANDROID_CC): Add ASAN_CC1_SPEC.

libsanitizer/
* configure.tgt: Add ARM pattern.

testsuite/
* lib/target-supports.exp (check_effective_target_hw): New
function.
* c-c++-common/asan/clone-test-1.c: Call
check_effective_target_hw.
* c-c++-common/asan/rlimit-mmap-test-1.c: Likewise.
* c-c++-common/asan/heap-overflow-1.c: Update regexps to accept
possible decorations.
* c-c++-common/asan/null-deref-1.c: Likewise.
* c-c++-common/asan/stack-overflow-1.c: Likewise.
* c-c++-common/asan/strncpy-overflow-1.c: Likewise.
* c-c++-common/asan/use-after-free-1.c: Likewise.
* g++.dg/asan/deep-thread-stack-1.C: Likewise.
* g++.dg/asan/large-func-test-1.C: Likewise.

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

11 years ago2013-05-07 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 7 May 2013 14:11:21 +0000 (14:11 +0000)]
2013-05-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (MAX_INCR_VEC_LEN): New constant.
(incr_vec_index): Return -1 if increment not found.
(create_add_on_incoming_edge): Assert if increment not found.
(record_increment): Limit number of increments recorded.
(all_phi_incrs_profitable): Return false if an increment not found.
(replace_profitable_candidates): Don't process increments that were
not recorded.
(analyze_candidates_and_replace): Limit size of incr_vec.

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

11 years ago2013-05-07 Richard Biener <rguenther@suse.de>
rguenth [Tue, 7 May 2013 13:02:36 +0000 (13:02 +0000)]
2013-05-07  Richard Biener  <rguenther@suse.de>

* calls.c (special_function_p): setjmp-like functions are leaf.
* builtins.def (BUILT_IN_SETJMP): setjmp is leaf.
* tree-inline.c (update_ssa_across_abnormal_edges): Remove assert.

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

11 years ago gcc/
sofiane [Tue, 7 May 2013 12:47:18 +0000 (12:47 +0000)]
gcc/
* config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): call splitter.
(aarch64_simd_mov<mode>): New expander.
(aarch64_simd_mov_to_<mode>low): New instruction pattern.
(aarch64_simd_mov_to_<mode>high): Likewise.
(aarch64_simd_mov_from_<mode>low): Likewise.
(aarch64_simd_mov_from_<mode>high): Likewise.
(aarch64_dup_lane<mode>): Update.
(aarch64_dup_lanedi): New instruction pattern.
* config/aarch64/aarch64-protos.h (aarch64_split_simd_move): New prototype.
* config/aarch64/aarch64.c (aarch64_split_simd_move): New function.

testsuites/
* gcc.target/aarch64/scalar_intrinsics.c: Update.

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

11 years ago2013-05-07 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 7 May 2013 12:44:50 +0000 (12:44 +0000)]
2013-05-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (lazy_create_slsr_reg): Remove.
(replace_mult_candidate): Remove unnecessary argument; remove
unnecessary parameter from call to introduce_cast_before_cand.
(replace_unconditional_candidate): Remove unnecessary parameter
from call to replace_mult_candidate.
(replace_conditional_candidate): Likewise.
(insert_initializers): Use make_temp_ssa_name.
(introduce_cast_before_cand): Remove unnecessary argument; use
make_temp_ssa_name.
(replace_one_candidate): Remove unnecessary argument; remove
unnecessary parameter from calls to introduce_cast_before_cand.
(replace_profitable_candidates): Remove unnecessary parameters
from calls to replace_one_candidate.

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

11 years ago2013-05-07 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 7 May 2013 12:39:32 +0000 (12:39 +0000)]
2013-05-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (find_phi_def): Don't record a
phi def as possibly hiding a basis for a CAND_ADD whose operands
have been commuted in the analysis.
(alloc_cand_and_find_basis): Add parms to call to find_phi_def.

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

11 years agoAArch64: Restrict the shift value in compare extended shift operation
naveenh [Tue, 7 May 2013 12:20:24 +0000 (12:20 +0000)]
AArch64: Restrict the shift value in compare extended shift operation

2013-05-07  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* config/aarch64/aarch64.md
(cmp_swp_<optab><ALLX:mode>_shft_<GPI:mode>): Restrict the
shift value between 0-4.

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

11 years ago2013-05-07 Richard Biener <rguenther@suse.de>
rguenth [Tue, 7 May 2013 11:26:58 +0000 (11:26 +0000)]
2013-05-07  Richard Biener  <rguenther@suse.de>

* double-int.h (rshift): New overload.
* double-int.c (rshift): New function.
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Optimize.
(create_reference_ops_from_ref): Remove.
(vn_reference_insert): Use shared ops for constructing the
reference and copy it.

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

11 years ago2013-05-07 Richard Biener <rguenther@suse.de>
rguenth [Tue, 7 May 2013 11:23:39 +0000 (11:23 +0000)]
2013-05-07  Richard Biener  <rguenther@suse.de>

PR middle-end/57190
* tree-eh.c (sink_clobbers): Properly propagate
SSA_NAME_OCCURS_IN_ABNORMAL_PHI.

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

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

11 years ago PR tree-optimization/57149
jakub [Tue, 7 May 2013 10:30:13 +0000 (10:30 +0000)]
PR tree-optimization/57149
* tree-ssa-uninit.c (uninit_undefined_value_p): New inline.
(can_skip_redundant_opnd, compute_uninit_opnds_pos,
collect_phi_def_edges, execute_late_warn_uninitialized): Use
uninit_undefined_value_p instead of ssa_undefined_value_p.

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

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

11 years ago PR debug/57184
jakub [Tue, 7 May 2013 08:28:01 +0000 (08:28 +0000)]
PR debug/57184
* expr.c (expand_expr_addr_expr_1): Handle COMPOUND_LITERAL_EXPR
for modifier == EXPAND_INITIALIZER.

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

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

11 years ago PR ada/56474
ebotcazou [Tue, 7 May 2013 07:59:37 +0000 (07:59 +0000)]
PR ada/56474
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Use
int_const_binop to shift bounds by 1 when they are integer constants.

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

11 years ago * configure.ac (HAVE_LD_LARGE_TOC): Use correct linker emulation
amodra [Tue, 7 May 2013 01:01:08 +0000 (01:01 +0000)]
* configure.ac (HAVE_LD_LARGE_TOC): Use correct linker emulation
for powerpc64 little endian.
* configure: Regenerate.

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

11 years agoDaily bump.
gccadmin [Tue, 7 May 2013 00:16:18 +0000 (00:16 +0000)]
Daily bump.

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

11 years ago2013-05-06 Graham Stott <grahams@btinternet.com>
grahams [Mon, 6 May 2013 22:26:53 +0000 (22:26 +0000)]
2013-05-06  Graham Stott  <grahams@btinternet.com>

        * expmed.c (init_expmed_rtl): Remove unused fields reg_fld, plus_fld,
        mult_fld, sdiv_fld1, udiv_fld1, sdiv_32_fld1, smod_32_fld1,
        wide_mult_fld1, wide_lshr_fld1, shift_fld1, shift_mult_fld1,
        shift_add_fld1, shift_sub0_fld1, shift_sub1_fld1.

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

11 years ago013-05-06 Graham Stott <grahams@btinternet.com>
grahams [Mon, 6 May 2013 22:08:56 +0000 (22:08 +0000)]
013-05-06  Graham Stott  <grahams@btinternet.com>

        * gensupport.c (add_predicate_code): Also exclude SCRATCH from rtx
        codes which allow non-lvalues.

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

11 years ago2013-05-06 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 6 May 2013 21:14:59 +0000 (21:14 +0000)]
2013-05-06  Marc Glisse  <marc.glisse@inria.fr>

* tree.c (integer_all_onesp) <COMPLEX_CST>: Test that both
components are all 1s.
(integer_minus_onep): New function.
* tree.h (integer_minus_onep): Declare it.
* fold-const.c (fold_binary_loc) <MULT_EXPR>: Test
integer_minus_onep instead of integer_all_onesp.

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

11 years ago2013-05-06 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 6 May 2013 21:11:24 +0000 (21:11 +0000)]
2013-05-06  Marc Glisse  <marc.glisse@inria.fr>

gcc/cp/
* typeck.c (cp_build_binary_op): Call save_expr before
build_vector_from_val.

gcc/testsuite/
* c-c++-common/vector-scalar-2.c: New testcase.

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

11 years ago PR target/52933
olegendo [Mon, 6 May 2013 19:59:26 +0000 (19:59 +0000)]
PR target/52933
* config/sh/sh.md (*cmp_div0s_0, *cmp_div0s_1, *movsicc_div0s): Add
variations of these patterns.

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

11 years ago * config/i386/i386.md (isa): Add x64_sse4 member.
uros [Mon, 6 May 2013 19:53:43 +0000 (19:53 +0000)]
* config/i386/i386.md (isa): Add x64_sse4 member.
(enabled): Handle x64_sse4.
(*movdi_internal): Add *x->?r alternative to emit pextrq $0,%xmm,%reg
instruction for 64bit SSE4_1 targets.  Update insn attributes.
(*movsi_internal): Add *x->?r alternative to emit pextrd $0,%xmm,%reg
instruction for SSE4_1 targets.  Update insn attributes.
* config/i386/sse.md (*vec_extract<ssevecmodelower>_0): Merge
with *sse4_1_pextrd and *sse4_1_pextrq having const_0 selector.
(*vec_extractv2di_1): Merge with *sse4_1_pextrq having
const_1 selector.
(*vec_extractv4si): Rename from *sse4_1_pextrd.
(*vec_extractv4si_zext): Rename from *sse4_1_pextrd_zext.
(*vec_extract<ssevecmodelower>_0 splitters): Merge splitters together.

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

11 years ago PR target/57108
olegendo [Mon, 6 May 2013 19:49:57 +0000 (19:49 +0000)]
PR target/57108
* config/sh/sh.md (tstsi_t_zero_extract_eq): Use QIHISIDI mode iterator.

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

11 years agoSupport {, } and | in assembly output
hjl [Mon, 6 May 2013 19:35:44 +0000 (19:35 +0000)]
Support {, } and | in assembly output

gcc/

2013-05-06  Maxim Kuznetsov  <maks.kuznetsov@gmail.com>

* final.c (do_assembler_dialects): Don't handle curly braces and
vertical bar escaped by % as dialect delimiters.
(output_asm_insn): Print curly braces and vertical bar if escaped
by % and ASSEMBLER_DIALECT defined.
* doc/tm.texi.in (ASSEMBLER_DIALECT): Document new standard escapes.
* doc/tm.texi: Regenerated.

gcc/testsuite/

2013-05-06  Maxim Kuznetsov  <maks.kuznetsov@gmail.com>

* gcc.target/i386/asm-dialect-2.c: New testcase.

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

11 years ago * config/mips/mips.c: Include tree-pass.h.
steven [Mon, 6 May 2013 19:02:12 +0000 (19:02 +0000)]
* config/mips/mips.c: Include tree-pass.h.
(mips_reorg): Split in pre- and post-dbr_schedule parts.
(mips_machine_reorg2): Move mips_reorg post-dbr_schedule parts here.
(pass_mips_machine_reorg2): New machine specific pass.
(insert_pass_mips_machine_reorg2): New pass plugin definition.
(mips_option_override): Register the new pass.
* rtl.h (cleanup_barriers): Remove prototype.
(dbr_schedule): Likewise.
* jump.c (cleanup_barriers): Make static.
* reorg.c (dbr_schedule): Likewise.

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

11 years ago/cp
paolo [Mon, 6 May 2013 16:40:24 +0000 (16:40 +0000)]
/cp
2013-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57183
* decl.c (cp_finish_decl): After do_auto_deduction copy the
qualifers with cp_apply_type_quals_to_decl.

/testsuite
2013-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57183
* g++.dg/cpp0x/auto38.C: New.

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

11 years ago * ChangeLog: Add my last entry.
uros [Mon, 6 May 2013 16:22:21 +0000 (16:22 +0000)]
* ChangeLog: Add my last entry.
* testsuite/ChangLog: Ditto.

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

11 years ago2013-05-06 David Edelsohn <dje.gcc@gmail.com>
dje [Mon, 6 May 2013 15:40:54 +0000 (15:40 +0000)]
2013-05-06  David Edelsohn  <dje.gcc@gmail.com>
            Peter Bergner  <bergner@vnet.ibm.com>
            Segher Boessenkool  <segher@kernel.crashing.org>
            Jakub Jelinek  <jakub@redhat.com>

        * hashtab.c (hash_pointer): Remove conditional and avoid
        unexecuted shift equal to wordsize.

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

11 years ago PR libgcj/57074
jakub [Mon, 6 May 2013 15:09:41 +0000 (15:09 +0000)]
PR libgcj/57074
* class.c (emit_symbol_table): Use array type of the
right size for the_syms_decl and its DECL_INITIAL, instead
of symbols_array_type.  Set TREE_TYPE (the_syms_decl) to it.
(emit_assertion_table): Use array type of the right size
for table_decl and its DECL_INITIAL.

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

11 years ago2013-05-06 Richard Biener <rguenther@suse.de>
rguenth [Mon, 6 May 2013 15:06:41 +0000 (15:06 +0000)]
2013-05-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57185
* tree-parloops.c (add_field_for_reduction): Handle anonymous
SSA names properly.

* gcc.dg/autopar/pr57185.c: New testcase.

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

11 years ago PR target/57106
uros [Mon, 6 May 2013 14:53:03 +0000 (14:53 +0000)]
PR target/57106
* config/i386/i386.c (add_parameter_dependencies): Add dependence
between "first_arg" and "insn", not "last" and "insn".

testsuite/ChangeLog:

PR target/57106
* gcc.target/i386/pr57106.c: New test.

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

11 years agogcc:
wschmidt [Mon, 6 May 2013 13:31:39 +0000 (13:31 +0000)]
gcc:

2013-05-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.
(find_candidates_in_block): Re-enable slsr_process_phi.
(create_phi_basis): Fix double counting of candidate adjustment.

gcc/testsuite:

2013-05-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/tree-ssa/slsr-32.c: Re-enable.
* gcc.dg/tree-ssa/slsr-33.c: Likewise.
* gcc.dg/tree-ssa/slsr-34.c: Likewise.
* gcc.dg/tree-ssa/slsr-35.c: Likewise.
* gcc.dg/tree-ssa/slsr-36.c: Likewise.
* gcc.dg/tree-ssa/slsr-37.c: Likewise.
* gcc.dg/tree-ssa/slsr-38.c: Likewise.

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

11 years ago2013-05-03 Teresa Johnson <tejohnson@google.com>
tejohnson [Mon, 6 May 2013 12:46:53 +0000 (12:46 +0000)]
2013-05-03  Teresa Johnson  <tejohnson@google.com>

PR bootstrap/57154
* gcc.dg/pr57154.c: New test.

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

11 years ago2013-05-06 Richard Biener <rguenther@suse.de>
rguenth [Mon, 6 May 2013 11:27:29 +0000 (11:27 +0000)]
2013-05-06  Richard Biener  <rguenther@suse.de>

PR middle-end/57147
* tree-cfg.c (gimple_purge_dead_abnormal_call_edges): If
the edge is also fallthru, preserve it and just clear the
abnormal flag.
* tree-cfgcleanup.c (remove_fallthru_edge): If the edge is
also complex, preserve that and just clear the fallthru flag.
* tree-inline.c (update_ssa_across_abnormal_edges): Also
update virtual operands.

* gcc.dg/torture/pr57147-1.c: New testcase.
* gcc.dg/torture/pr57147-2.c: Likewise.
* gcc.dg/torture/pr57147-3.c: Likewise.

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

11 years agolibgcc/
tschwinge [Mon, 6 May 2013 08:23:02 +0000 (08:23 +0000)]
libgcc/
* fp-bit.c (unpack_d, pack_d): Properly preserve and restore a
NaN's payload.

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

11 years agolibgcc/
tschwinge [Mon, 6 May 2013 08:22:48 +0000 (08:22 +0000)]
libgcc/
* fp-bit.h [FLOAT] (QUIET_NAN): Correct value.

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

11 years ago * config/rs6000/linux.h (DEFAULT_ASM_ENDIAN): Define.
amodra [Mon, 6 May 2013 02:57:43 +0000 (02:57 +0000)]
* config/rs6000/linux.h (DEFAULT_ASM_ENDIAN): Define.
(LINK_OS_LINUX_EMUL): Use ENDIAN_SELECT.
* config/rs6000/linux64.h (DEFAULT_ASM_ENDIAN): Define.
* config/rs6000/sysv4le.h (DEFAULT_ASM_ENDIAN): Define.
(LINK_TARGET_SPEC): Use ENDIAN_SELECT.
* config/rs6000/sysv4.h (DEFAULT_ASM_ENDIAN): Define as -mbig.

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

11 years ago * config/rs6000/sysv4.h (ENDIAN_SELECT): Define, extracted from
amodra [Mon, 6 May 2013 00:20:29 +0000 (00:20 +0000)]
* config/rs6000/sysv4.h (ENDIAN_SELECT): Define, extracted from
(ASM_SPEC): ..here.  Emit DEFAULT_ASM_ENDIAN too.
(DEFAULT_ASM_ENDIAN): Define.
(CC1_SPEC, LINK_TARGET_SPEC): Use ENDIAN_SELECT.
* config/rs6000/linux64.h (ASM_SPEC32): Remove endian options.
Update -K PIC clause from sysv4.h.
(ASM_SPEC_COMMON): Use ENDIAN_SELECT.
(LINK_OS_LINUX_EMUL32, LINK_OS_LINUX_EMUL64): Likewise.

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

11 years ago * config/rs6000/rs6000.md (bswapdi 2nd splitter): Don't swap words
amodra [Mon, 6 May 2013 00:19:07 +0000 (00:19 +0000)]
* config/rs6000/rs6000.md (bswapdi 2nd splitter): Don't swap words
twice for little-endian.
(ashrdi3_no_power, ashrdi3): Support little-endian.

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

11 years ago PR target/55303
olegendo [Mon, 6 May 2013 00:16:55 +0000 (00:16 +0000)]
PR target/55303
* config/sh/sh.c (sh_rtx_costs): Handle SMIN and SMAX cases.
* config/sh/sh.md (*clips, uminsi3, *clipu, clipu_one): New insns and
related expanders.
* config/sh/iterators.md (SMIN_SMAX): New code iterator.
* config/sh/predicates.md (arith_reg_or_0_or_1_operand,
clips_min_const_int, clips_max_const_int, clipu_max_const_int):
New predicates.

PR target/55303
* gcc.target/sh/pr55303-1.c: New.
* gcc.target/sh/pr55303-2.c: New.
* gcc.target/sh/pr55303-3.c: New.

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

11 years agoDaily bump.
gccadmin [Mon, 6 May 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

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

11 years ago * caf/libcaf.h (_gfortran_caf_critical): Add a prototype.
dje [Sun, 5 May 2013 23:47:22 +0000 (23:47 +0000)]
    * caf/libcaf.h (_gfortran_caf_critical): Add a prototype.
        (_gfortran_caf_end_critical): Same.

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

11 years ago * config.gcc (hppa*-*-*): Remove MASK_BIG_SWITCH from CPU default.
danglin [Sun, 5 May 2013 20:47:24 +0000 (20:47 +0000)]
* config.gcc (hppa*-*-*): Remove MASK_BIG_SWITCH from CPU default.
* config/pa/pa.opt: Make mbig-switch a no-op.
* config/pa/pa.h (TARGET_DEFAULT): Remove MASK_BIG_SWITCH.
(CASE_VECTOR_MODE): Always return SImode.
(ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Remove code
for the !TARGET_BIG_SWITCH case.
* config/pa/pa-linux.h: Likewise.
* config/pa/pa-openbsd.h: Likewise.
* config/pa/pa-hpux.h: Define TARGET_DEFAULT to 0.
* config/pa/pa.md (short_jump): Remove define_insn.
(casesi): Remove code for the !TARGET_BIG_SWITCH case.
(casesi0): Remove define_insn.
(type): Remove btable_branch.
(pa_combine_type): Likewise.
(in_nullified_branch_delay): Likewise.
(in_call_delay): Likewise.
(define_delay): Likewise.
(define_insn_reservation "Z3"): Likewise.
(define_insn_reservation "Z4"): Likewise.
* config/pa/pa.c  (pa_reorg): Remove code for !TARGET_BIG_SWITCH.
(pa_adjust_insn_length): Remove adjustment for btable branches.
* doc/invoke.texi (HPPA Options): Delete documentation for mbig-switch
and mno-big-switch

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

11 years ago * config/i386/sse.md (*vec_extract<ssevecmodelower>_0): Merge
uros [Sun, 5 May 2013 17:25:50 +0000 (17:25 +0000)]
* config/i386/sse.md (*vec_extract<ssevecmodelower>_0): Merge
from sse2_stored and *sse2_storeq_rex64 using SWI48 mode iterator.
Add m->r,x alternatives.
(*vec_extract<ssevecmodelower>_0 splitters): Merge V2DI and V4SI
splitters using SWI48x mode iterator.
(*vec_extract_v2di_0_sse): Rename from *sse2_storeq.  Disable for
TARGET_64BIT.  Add m->x alternative.
(*vec_extractv4si_mem): Rename from *vec_ext_v4si_mem.
Add o->x alternative.  Enable for TARGET_SSE.
(sse_storeq): Remove expander.
(*vec_extractv2di_1): Enable for TARGET_SSE. Split alternatives
with memory input operand.
(*vec_extractv2di_1 splitter): New.
(*vec_extractv4sf_mem): Rename from *vec_extract_v4sf_mem.
* config/i386/i386.md (ssevecmodelower): New mode attribute.

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

11 years ago2013-05-05 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 5 May 2013 14:04:07 +0000 (14:04 +0000)]
2013-05-05  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (conformable_arrays): Avoid segfault
        when ar.start[i] == NULL.

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

        * gfortran.dg/allocate_with_source_3.f90: New.

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

11 years ago2013-05-05 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 5 May 2013 14:01:38 +0000 (14:01 +0000)]
2013-05-05  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57141
        * decl.c (gfc_match_null): Permit use-associated
        NULL intrinsic.

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

        PR fortran/57141
        * gfortran.dg/null_8.f90: New.

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

11 years ago2013-05-05 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 5 May 2013 11:36:27 +0000 (11:36 +0000)]
2013-05-05  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (convert_nontype_argument): Add missing whitespace in
error message.

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

11 years ago/cp
paolo [Sun, 5 May 2013 00:27:46 +0000 (00:27 +0000)]
/cp
2013-05-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53745
* decl.c (build_enumerator): Improve error message.

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

PR c++/53745
* g++.dg/cpp0x/enum27.C: New.
* g++.dg/cpp0x/enum_base.C: Adjust.

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

11 years agoDaily bump.
gccadmin [Sun, 5 May 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

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

11 years ago * runtime/environ.c: Include unistd.h.
dje [Sat, 4 May 2013 21:23:11 +0000 (21:23 +0000)]
    * runtime/environ.c: Include unistd.h.
        * runtime/pause.c: Test HAVE_UNISTD_H.
        * runtime/stop.c: Same.
        * io/open.c: Same.
        * io/unix.c: Same.
        * io/read.c (si_max): Protect declaration of value.

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

11 years ago * config/rs6000/rs6000.c (INT_P): Reformat. Delete obsolete comment.
segher [Sat, 4 May 2013 21:22:09 +0000 (21:22 +0000)]
    * config/rs6000/rs6000.c (INT_P): Reformat.  Delete obsolete comment.
        (INT_LOWPART): Delete.
        (extract_MB): Adjust.
        (extract_ME): Adjust.
        (print_operand): Adjust.

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

11 years ago * config/rs6000/predicates.md (reg_or_add_cint_operand,
segher [Sat, 4 May 2013 21:19:08 +0000 (21:19 +0000)]
   * config/rs6000/predicates.md (reg_or_add_cint_operand,
       reg_or_sub_cint_operand): Delete "HOST_BITS_PER_WIDE_INT == 32" case.
       (reg_or_logical_cint_operand, easy_fp_constant,
       logical_const_operand): Delete "CONST_DOUBLE" case.
       * config/rs6000/rs6000.c (num_insns_constant_wide): Delete
       "HOST_BITS_PER_WIDE_INT == 64" test.
       (num_insns_constant): Ditto.  Delete CONST_DOUBLE DImode/VOIDmode
       case.
       (build_mask64_2_operands): Delete "HOST_BITS_PER_WIDE_INT >= 64" test.
       (rs6000_emit_set_const): Delete CONST_DOUBLE case.
       (rs6000_emit_set_long_const): Delete "HOST_BITS_PER_WIDE_INT >= 64"
       test.
       (includes_rldic_lshift_p, includes_rldicr_lshift_p): Delete
       CONST_DOUBLE DImode/VOIDmode case.
       (INT_P, INT_LOWPART): Delete CONST_DOUBLE case.
       (print_operand): Delete "HOST_BITS_PER_WIDE_INT == 32" case.  Delete
       CONST_DOUBLE VOIDmode case.
       (output_toc): Delete "HOST_BITS_PER_WIDE_INT == 32" case.
       (rs6000_rtx_costs): Delete CONST_DOUBLE DImode/VOIDmode case.
       * config/rs6000/rs6000.md (iordi3, xordi3, splitter for these):
       Delete CONST_DOUBLE case.
       (splitters for mov FMOVE64 const_double): Delete
       "HOST_BITS_PER_WIDE_INT == 32" case.  Delete
       "HOST_BITS_PER_WIDE_INT >= 64" test.
       (splitter for mov DI const_int): Delete "HOST_BITS_PER_WIDE_INT == 32"
       case.
       (mov DI const_double): Delete.

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

11 years ago PR tree-optimization/56205
jakub [Sat, 4 May 2013 18:23:46 +0000 (18:23 +0000)]
PR tree-optimization/56205
* gcc.dg/tree-ssa/stdarg-6.c: Add cleanup-tree-dump "stdarg".

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

11 years ago2013-05-04 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 4 May 2013 17:49:31 +0000 (17:49 +0000)]
2013-05-04  Tobias Burnus  <burnus@net-b.de>

        * decl.c (gfc_verify_c_interop_param): Permit allocatable
        and pointer with -std=f2008ts.

2013-05-04  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/bind_c_array_params.f03: Update dg-error.
        * gfortran.dg/bind_c_usage_27.f90: New.
        * gfortran.dg/bind_c_usage_28.f90: New.

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

11 years ago * inclhack.def (aix_null): New.
dje [Sat, 4 May 2013 14:49:59 +0000 (14:49 +0000)]
    * inclhack.def (aix_null): New.
        (void_null): Update replacement definition of NULL.
        * fixincl.x: Regenerate.
        * tests/base/curses.h: Update for new fix.

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

11 years ago * combine.c (combine_simplify_rtx) <case SUBREG>: If nonzero_bits
jakub [Sat, 4 May 2013 12:41:52 +0000 (12:41 +0000)]
* combine.c (combine_simplify_rtx) <case SUBREG>: If nonzero_bits
on op shows all bits zero in mode of a lowpart subreg, return zero.

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

11 years ago2013-05-04 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 4 May 2013 12:32:05 +0000 (12:32 +0000)]
2013-05-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51927
* g++.dg/cpp0x/lambda/lambda-nsdmi4.C: New.

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

11 years ago[gcc]
meissner [Sat, 4 May 2013 05:38:47 +0000 (05:38 +0000)]
[gcc]
2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/57150
* config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Use DFmode
to save TFmode registers and DImode to save TImode registers for
caller save operations.
(HARD_REGNO_CALL_PART_CLOBBERED): TFmode and TDmode do not need to
mark being partially clobbered since they only use the first
double word.

* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): TFmode
and TDmode only use the upper 64-bits of each VSX register.

[gcc/testsuite]
2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/57150
* gcc.target/powerpc/pr57150.c: New file.

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