OSDN Git Service

pf3gnuchains/gcc-fork.git
11 years ago PR bootstrap/51134
hubicka [Fri, 18 Nov 2011 02:18:28 +0000 (02:18 +0000)]
PR bootstrap/51134
* i386.c (atom_cost): Fix 32bit memset description.
(expand_set_or_movmem_via_loop_with_iter): Output proper bounds check for epilogue loops.
(expand_movmem_epilogue): Handle epilogues up to size 15 w/o producing byte loop.
(decide_alg): sse_loop is not useable wthen SSE2 is disabled; when not optimizing always
use rep movsb or lincall; do not produce word sized loops when optimizing memset for
size (to avoid need for large constants).
(ix86_expand_movmem): Get into sync with ix86_expand_setmem; choose unroll factors
better; always do 128bit moves when producing SSE loops; do not produce loopy epilogue
when size is too small.
(promote_duplicated_reg_to_size): Do not look into desired alignments when
doing vector expansion.
(ix86_expand_setmem): Track better when promoted value is available; choose unroll factors
more sanely.; output loopy epilogue only when needed.

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

11 years agoPR libstdc++/51181
rth [Fri, 18 Nov 2011 01:38:48 +0000 (01:38 +0000)]
PR libstdc++/51181
        * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use
        of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4.

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

11 years agoDaily bump.
gccadmin [Fri, 18 Nov 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
redi [Fri, 18 Nov 2011 00:15:55 +0000 (00:15 +0000)]
* testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
on darwin.

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

11 years agoMerge branch 'rth/atomic/ppc'
rth [Thu, 17 Nov 2011 22:12:31 +0000 (22:12 +0000)]
Merge branch 'rth/atomic/ppc'

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

11 years agoRemove accidentally committed duplicate ChangeLog entry.
redi [Thu, 17 Nov 2011 22:10:09 +0000 (22:10 +0000)]
Remove accidentally committed duplicate ChangeLog entry.

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

11 years ago2011-11-17 Steve Ellcey <sje@cup.hp.com>
sje [Thu, 17 Nov 2011 21:22:11 +0000 (21:22 +0000)]
2011-11-17  Steve Ellcey  <sje@cup.hp.com>

PR middle-end/51144
* output.h (fprint_w): Remove.
* final.c (fprint_w): Remove.
(output_addr_const): Change fprint_w back to fprintf.

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

11 years ago2011-11-17 Andrew Pinski <apinski@cavium.com>
pinskia [Thu, 17 Nov 2011 21:01:08 +0000 (21:01 +0000)]
2011-11-17  Andrew Pinski  <apinski@cavium.com>

* config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.

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

11 years ago PR c++/51186
jason [Thu, 17 Nov 2011 21:00:30 +0000 (21:00 +0000)]
PR c++/51186
* decl.c (grokdeclarator): Improve C++98 trailing return diagnostic.

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

11 years ago * lib/gcc-simulate-thread.exp (simulate-thread): Improve error message.
uros [Thu, 17 Nov 2011 21:00:16 +0000 (21:00 +0000)]
* lib/gcc-simulate-thread.exp (simulate-thread): Improve error message.

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

11 years ago2011-11-17 Andrew MacLeod <amacleod@redhat.com>
amacleod [Thu, 17 Nov 2011 20:51:51 +0000 (20:51 +0000)]
2011-11-17  Andrew MacLeod  <amacleod@redhat.com>

* builtins.c (expand_builtin): Remove 4th parameter representing
weak/strong mode when __atomic_compare_exchange becomes a library call.

* gcc.dg/atomic-generic-aux.c (__atomic_compare_exchange): Fail if
memory model parameters don't match expected values.
* gcc.dg/atomic-generic.c: Pass specific memory model parameters to
__atomic_compare_exchange.
* gcc.dg/atomic-noinline.c: Pass specific memory model parameters to
__atomic_compare_exchange_n.
* gcc.dg/atomic-noinline-aux.c (__atomic_compare_exchange_2): Remove
weak/strong parameter and fail if memory models aren't correct.

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

11 years ago * lib/gcc-simulate-thread.exp (simulate-thread): Run on all targets.
uros [Thu, 17 Nov 2011 19:56:39 +0000 (19:56 +0000)]
* lib/gcc-simulate-thread.exp (simulate-thread): Run on all targets.
Look for simulate_thread_done to determine working gdb.  Reduce timeout
to 10 seconds and fail when timeout occurs.  Improve error messages.

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

11 years agoUnify implementations of __builtin_mem_*_fence and __sync_synchronize.
rth [Thu, 17 Nov 2011 19:29:04 +0000 (19:29 +0000)]
Unify implementations of __builtin_mem_*_fence and __sync_synchronize.

* builtins.c (expand_builtin_mem_thread_fence): Remove.
(expand_builtin_mem_signal_fence): Remove.
(expand_builtin_atomic_thread_fence): Use expand_mem_thread_fence.
(expand_builtin_sync_synchronize): Likewise.
(expand_builtin_atomic_signal_fence): Use expand_mem_signal_fence.
* optabs.c (expand_asm_memory_barrier): Split out from
expand_builtin_mem_signal_fence.
(expand_mem_thread_fence): New, a combination of code from
expand_builtin_mem_thread_fence and expand_builtin_sync_synchronize.
(expand_mem_signal_fence): Moved and renamed from
expand_builtin_mem_signal_fence.
(expand_atomic_exchange): Use expand_mem_thread_fence.
(expand_atomic_load, expand_atomic_store): Likewise.
* expr.h, optabs.h: Update decls.

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

11 years ago PR rtl-optimization/50663
ebotcazou [Thu, 17 Nov 2011 17:11:16 +0000 (17:11 +0000)]
PR rtl-optimization/50663
* cprop.c (implicit_set_indexes): New global variable.
(insert_set_in_table): Add additional parameter and record implicit
set information.
(hash_scan_set): Add additional parameter and pass it to above.
(hash_scan_insn): Pass false to hash_scan_set.
(compute_hash_table_work): Pass true to hash_scan_set.
(compute_cprop_data): Add implicit set to AVIN of block which the
implicit set is recorded for.
(one_cprop_pass): Handle implicit_set_indexes array.

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

11 years ago N3203
jason [Thu, 17 Nov 2011 16:35:11 +0000 (16:35 +0000)]
N3203
* class.c (add_implicitly_declared_members): Update move
conditions.

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

11 years ago PR c++/51137
jason [Thu, 17 Nov 2011 16:34:59 +0000 (16:34 +0000)]
PR c++/51137
* class.c (build_base_path): Don't do calculation in templates.

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

11 years ago PR middle-end/50644
matz [Thu, 17 Nov 2011 16:03:56 +0000 (16:03 +0000)]
PR middle-end/50644
PR middle-end/50741

* tree-ssa-live.c (mark_all_vars_used_1): Recurse only for decls of
current function.
(remove_unused_locals): Ditto.

testsuite/

* g++.dg/tree-ssa/pr50741.C: New.

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

11 years agoProvide all dummy functions in alloc_cpp.cc, eh_cpp.cc
ro [Thu, 17 Nov 2011 11:34:33 +0000 (11:34 +0000)]
Provide all dummy functions in alloc_cpp.cc, eh_cpp.cc

* alloc_cpp.cc [__osf__] (_ZnwX, _ZdlPv, _ZnaX, _ZdaPv,
_ZnwXRKSt9nothrow_t, _ZdlPvRKSt9nothrow_t, _ZdaPvRKSt9nothrow_t):
Dummy functions.
* eh_cpp.cc [__osf__] (__cxa_allocate_exception, __cxa_throw,
__cxa_begin_catch, __cxa_end_catch, __cxa_tm_cleanup): Likewise.

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

11 years agoSkip simulate-thread tests on all alpha targets
ro [Thu, 17 Nov 2011 11:25:10 +0000 (11:25 +0000)]
Skip simulate-thread tests on all alpha targets

* lib/gcc-simulate-thread.exp (simulate-thread): Skip on
alpha*-*-*.

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

11 years ago * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
redi [Thu, 17 Nov 2011 10:14:11 +0000 (10:14 +0000)]
* doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
and ios_base::failure.
* doc/xml/manual/backwards_compatibility.xml: List headers in
alphabetical order.

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

11 years agoCopy ALIAS_SET_MEMORY_BARRIER when creating a new MEM for atomic ops.
rth [Thu, 17 Nov 2011 04:44:27 +0000 (04:44 +0000)]
Copy ALIAS_SET_MEMORY_BARRIER when creating a new MEM for atomic ops.

* config/alpha/alpha.c (alpha_split_compare_and_swap_12): Copy
ALIAS_SET_MEMORY_BARRIER when creating a new memory.
(alpha_split_atomic_exchange_12): Likewise.
* config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Likewise.

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

11 years ago * inclhack.def (aix_once_init_[12]): New fixes.
dje [Thu, 17 Nov 2011 02:28:07 +0000 (02:28 +0000)]
    * inclhack.def (aix_once_init_[12]): New fixes.
        * fixincl.x: Regenerate.
        * tests/base/pthread.h: Update.

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

11 years agoDaily bump.
gccadmin [Thu, 17 Nov 2011 00:18:35 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago * gcc.dg/tm/memopt-6.c: Cleanup tmedge tree dump.
uros [Wed, 16 Nov 2011 23:09:17 +0000 (23:09 +0000)]
* gcc.dg/tm/memopt-6.c: Cleanup tmedge tree dump.
* gcc.dg/tm/memopt-13.c: Cleanup tmmark tree dump.
* g++.dg/eh/array1.C: Cleanup gimple tree dump.

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

11 years agogcc/fortran
burnus [Wed, 16 Nov 2011 21:37:43 +0000 (21:37 +0000)]
gcc/fortran
2011-11-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39427
        PR fortran/37829
        * decl.c (match_data_constant, match_data_constant,
        * variable_decl,
        gfc_match_decl_type_spec, access_attr_decl,
        check_extended_derived_type, gfc_match_derived_decl,
        gfc_match_derived_decl, gfc_match_derived_decl) Modified to deal
        with DT constructors.
        * gfortran.h (gfc_find_dt_in_generic,
        gfc_convert_to_structure_constructor): New function prototypes.
        * interface.c (check_interface0, check_interface1,
        gfc_search_interface): Ignore DT constructors in generic list.
        * match.h (gfc_match_structure_constructor): Update prototype.
        * match.c (match_derived_type_spec): Ensure that one uses the DT
        not the generic function.
        * module.c (MOD_VERSION): Bump.
        (dt_lower_string, dt_upper_string): New functions.
        (find_use_name_n, find_use_operator, compare_true_names,
        find_true_name, add_true_name, fix_mio_expr, load_needed,
        read_module, write_dt_extensions, write_symbol): Changes to deal with
        different symtree vs. sym names.
        (create_derived_type): Create also generic procedure.
        * parse.c (gfc_fixup_sibling_symbols): Don't regard DT and
        * generic
        function as the same.
        * primary.c (gfc_convert_to_structure_constructor): New
        * function.
        (gfc_match_structure_constructor): Restructured; calls
        gfc_convert_to_structure_constructor.
        (build_actual_constructor, gfc_match_rvalue): Update for DT generic
        functions.
        * resolve.c (resolve_formal_arglist, resolve_structure_cons,
        is_illegal_recursion, resolve_generic_f, resolve_variable,
        resolve_fl_variable_derived, resolve_fl_derived0,
        resolve_symbol): Handle DT and DT generic constructors.
        * symbol.c (gfc_use_derived, gfc_undo_symbols,
        gen_special_c_interop_ptr, gen_cptr_param,
        generate_isocbinding_symbol, gfc_get_derived_super_type): Handle
        derived-types, which are hidden in the generic type.
        (gfc_find_dt_in_generic): New function
        * trans-array.c (gfc_conv_array_initializer): Replace
        * FL_PARAMETER
        expr by actual value.
        * trans-decl.c (gfc_get_module_backend_decl,
        * gfc_trans_use_stmts):
        Ensure that we use the DT and not the generic function.
        * trans-types.c (gfc_get_derived_type): Ensure that we use the
        * DT
        and not the generic procedure.

gcc/testsuite/
2011-11-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39427
        PR fortran/37829
        * gfortran.dg/constructor_1.f90: New.
        * gfortran.dg/constructor_2.f90: New.
        * gfortran.dg/constructor_3.f90: New.
        * gfortran.dg/constructor_4.f90: New.
        * gfortran.dg/constructor_5.f90: New.
        * gfortran.dg/constructor_6.f90: New.
        * gfortran.dg/use_only_5.f90: New.
        * gfortran.dg/c_ptr_tests_17.f90: New.
        * gfortran.dg/c_ptr_tests_18.f90: New.
        * gfortran.dg/used_types_25.f90: New.
        * gfortran.dg/used_types_26.f90: New
        * gfortran.dg/type_decl_3.f90: New.
        * gfortran.dg/function_types_3.f90: Update dg-error.
        * gfortran.dg/result_1.f90: Ditto.
        * gfortran.dg/structure_constructor_3.f03: Ditto.
        * gfortran.dg/structure_constructor_4.f03: Ditto.

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

11 years ago * config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.
jsm28 [Wed, 16 Nov 2011 20:35:27 +0000 (20:35 +0000)]
* config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.

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

11 years ago * config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags):
dje [Wed, 16 Nov 2011 18:33:52 +0000 (18:33 +0000)]
    * config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags):
        Default to minimum alignment if decl is NULL.

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

11 years ago * config/i386/sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode
uros [Wed, 16 Nov 2011 18:28:08 +0000 (18:28 +0000)]
* config/i386/sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode
sequence for AVX.
(<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.

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

11 years ago2011-10-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
rearnsha [Wed, 16 Nov 2011 18:19:37 +0000 (18:19 +0000)]
2011-10-16  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

* gcc.dg/vect/pr30858.c: Update expected output for
architectures with multiple vector sizes.

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

11 years ago2011-11-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
rearnsha [Wed, 16 Nov 2011 18:02:12 +0000 (18:02 +0000)]
2011-11-16  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>

* config/arm/lib1funcs.asm (udivsi3): Add support for divide
functions.
(aeabi_uidivmod): Likewise.
(umodsi3): Likewise.
(divsi3): Likewise.
(aeabi_idivmod): Likewise.
(modsi3): Likewise.

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

11 years ago* doc/invoke.texi: Document AMD bdver1 and btver1.
hjagasia [Wed, 16 Nov 2011 17:31:38 +0000 (17:31 +0000)]
* doc/invoke.texi: Document AMD bdver1 and btver1.

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

11 years ago2011-11-16 Richard Earnshaw <rearnsha@arm.com>
rearnsha [Wed, 16 Nov 2011 17:02:44 +0000 (17:02 +0000)]
2011-11-16  Richard Earnshaw  <rearnsha@arm.com>
    Bernd Schmidt <bernds@coudesourcery.com>
    Sebastian Huber <sebastian.huber@embedded-brains.de>

PR target/49641
* config/arm/arm.c (store_multiple_sequence): Avoid cases where
the base reg is stored iff compiling for Thumb1.

* gcc.target/arm/pr49641.c: New test.

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

11 years ago2011-11-16 Andrew MacLeod <amacleod@redhat.com>
amacleod [Wed, 16 Nov 2011 15:43:15 +0000 (15:43 +0000)]
2011-11-16  Andrew MacLeod  <amacleod@redhat.com>

PR libstdc++/51102
* include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.

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

11 years ago PR tree-optimization/49960
razya [Wed, 16 Nov 2011 15:01:47 +0000 (15:01 +0000)]
PR tree-optimization/49960

* tree-data-ref.c (initialize_data_dependence_relation): Add initializations.
Remove call to compute_self_dependence.
(compute_affine_dependence): Remove the !DDR_SELF_REFERENCE condition.
(compute_self_dependence): Remove old code. Add call to compute_affine_dependence.
(compute_all_dependences): Remove call to compute_self_dependence.
Add call to compute_affine_dependence.

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

11 years ago PR tree-optimization/49960
razya [Wed, 16 Nov 2011 14:59:14 +0000 (14:59 +0000)]
PR tree-optimization/49960

* gcc.dg/autopar/pr49960.c: New test.
* gcc.dg/autopar/pr49960-1.c: New test.

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

11 years ago PR tree-optimization/49960
razya [Wed, 16 Nov 2011 14:58:04 +0000 (14:58 +0000)]
PR tree-optimization/49960

* gcc.dg/autopar/pr49960.c: New test.
* gcc.dg/autopar/pr49960-1.c: New test.

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

11 years ago PR bootstrap/51098
uros [Wed, 16 Nov 2011 14:51:13 +0000 (14:51 +0000)]
PR bootstrap/51098
* acinclude.m4 (LIBITM_CHECK_AS_AVX): Fix target selector.
* configure: Regenerate.

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

11 years ago2011-11-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 16 Nov 2011 10:23:59 +0000 (10:23 +0000)]
2011-11-16  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix name in ChangeLog entry.

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

11 years ago2011-11-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Wed, 16 Nov 2011 09:27:56 +0000 (09:27 +0000)]
2011-11-16  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

PR middle-end/50325
* expmed.c (store_bit_field_1): Use extract_bit_field on big
endian targets if the source cannot be exactly covered by word
mode chunks.

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

11 years ago2011-11-16 Tristan Gingold <gingold@adacore.com>
gingold [Wed, 16 Nov 2011 08:36:46 +0000 (08:36 +0000)]
2011-11-16  Tristan Gingold  <gingold@adacore.com>

* config/alpha/qrnnd.S: Use specific pseudos for VMS.

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

11 years ago * config/i386/i386elf.h (ASM_OUTPUT_ASCII): Change STRING_LIMIT to
jsm28 [Wed, 16 Nov 2011 00:21:56 +0000 (00:21 +0000)]
* config/i386/i386elf.h (ASM_OUTPUT_ASCII): Change STRING_LIMIT to
ELF_STRING_LIMIT.

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

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

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

11 years agoalpha: Convert to atomic optabs.
rth [Tue, 15 Nov 2011 23:43:08 +0000 (23:43 +0000)]
alpha: Convert to atomic optabs.

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

11 years ago2011-11-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 15 Nov 2011 23:28:49 +0000 (23:28 +0000)]
2011-11-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/51142
* include/debug/unordered_map (unordered_map<>::erase(iterator),
unordered_multimap<>::erase(iterator)): Add, consistently with
LWG 2059.
* include/debug/unordered_set (unordered_set<>::erase(iterator),
unordered_multiset<>::erase(iterator)): Likewise.
* include/debug/map.h (map<>::erase(iterator)): Likewise.
* include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
* include/profile/map.h (map<>::erase(iterator)): Likewise.
* include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
* include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
* include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
* include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
* testsuite/23_containers/unordered_map/erase/51142.cc: New.
* testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
* testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
* testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
* testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.

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

11 years ago2011-11-16 Tom de Vries <tom@codesourcery.com>
vries [Tue, 15 Nov 2011 23:04:46 +0000 (23:04 +0000)]
2011-11-16  Tom de Vries  <tom@codesourcery.com>

* gcc.dg/pr43864.c: Check for absence of 'Invalid sum' in pre tree-dump.
* gcc.dg/pr43864-2.c: Same.
* gcc.dg/pr43864-3.c: Same.
* gcc.dg/pr43864-4.c: Same.

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

11 years ago2011-11-16 Tom de Vries <tom@codesourcery.com>
vries [Tue, 15 Nov 2011 23:04:39 +0000 (23:04 +0000)]
2011-11-16  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-tail-merge.c (replace_block_by): Add frequency of bb2 to bb1.

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

11 years ago PR rtl-optimization/51051
amodra [Tue, 15 Nov 2011 22:10:46 +0000 (22:10 +0000)]
PR rtl-optimization/51051
PR bootstrap/51086
* function.c (thread_prologue_and_epilogue_insns): Guard
emitting return with single_succ_p test.

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

11 years ago * gcc.target/i386/sse2-cvt-vec.c: New test.
uros [Tue, 15 Nov 2011 19:40:04 +0000 (19:40 +0000)]
* gcc.target/i386/sse2-cvt-vec.c: New test.
* gcc.target/i386/avx-cvt-vec.c: Ditto.
* gcc.target/i386/avx-cvt-2-vec.c: Ditto.

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

11 years ago * config/epiphany/epiphany.md (mov<mode>cc): Fix code to
amylaar [Tue, 15 Nov 2011 19:06:32 +0000 (19:06 +0000)]
    * config/epiphany/epiphany.md (mov<mode>cc): Fix code to
        get mode from CMP_OP1 if CMP_OP0 is VOIDmode.

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

11 years ago * config/i386/sse.md (vec_pack_trunc_v2df): Optimize sequence for AVX.
uros [Tue, 15 Nov 2011 18:45:20 +0000 (18:45 +0000)]
* config/i386/sse.md (vec_pack_trunc_v2df): Optimize sequence for AVX.
(vec_pack_sfix_trunc_v2df): Ditto.
(vec_pack_sfix_v2df): Ditto.
(vec_pack_sfix_trunc_v4df): Generate fix_truncv4dfv4si2 and
avx_vec_concatv8si patterns.
(vec_pack_sfix_v4df): Generate avx_cvtpd2dq256 and
avx_vec_concatv8si patterns.

testsuite/ChangeLog:

* gcc.target/i386/avx-floor-sfix-2-vec.c: New test.
* gcc.target/i386/avx-ceil-sfix-2-vec.c: Ditto.
* gcc.target/i386/avx-rint-sfix-2-vec.c: Ditto.
* gcc.target/i386/avx-round-sfix-2-vec.c: Ditto.

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

11 years agogcc/testsuite:
iains [Tue, 15 Nov 2011 13:16:17 +0000 (13:16 +0000)]
gcc/testsuite:

* lib/gcc-simulate-thread.exp (simulate-thread): Do not run on
powerpc*-*-darwin* targets.

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

11 years agoRequire parentheses when parsing transaction expressions.
torvald [Tue, 15 Nov 2011 12:16:13 +0000 (12:16 +0000)]
Require parentheses when parsing transaction expressions.

gcc/
* c-parser.c (c_parser_transaction_expression): Require parentheses
when parsing transaction expressions.

gcc/cp/
* parser.c (cp_parser_transaction_expression): Require parentheses
when parsing transaction expressions.

gcc/testsuite/
* c-c++-common/tm/trxn-expr-3.c: New test.

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

11 years ago2011-11-15 Jason Dick <dickphd@gmail.com>
paolo [Tue, 15 Nov 2011 10:49:00 +0000 (10:49 +0000)]
2011-11-15  Jason Dick  <dickphd@gmail.com>

PR libstdc++/51133
* include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
wrong sign in recursion relation.

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

11 years ago2011-11-15 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 15 Nov 2011 10:25:36 +0000 (10:25 +0000)]
2011-11-15  Tristan Gingold  <gingold@adacore.com>

* incpath.c (get_added_cpp_dirs): New function.
* incpath.h (get_added_cpp_dirs): Declare.
* config/vms/vms-c.c (vms_c_register_includes): New function.
(vms_std_modules): New variable.
* config/vms/vms.h (TARGET_EXTRA_INCLUDES): Define.
(vms_c_register_includes): Declare.

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

11 years ago2011-11-15 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 15 Nov 2011 10:22:55 +0000 (10:22 +0000)]
2011-11-15  Tristan Gingold  <gingold@adacore.com>

* c-family/c-pragma.h (pragma_extern_prefix): Declare.
* c-family/c-pragma.c (pragma_extern_prefix): Make it public.
* config/vms/vms-c.c (saved_extern_prefix): New variable.
(vms_pragma_extern_prefix): New function.
(vms_c_register_pragma): Register vms_pragma_extern_prefix.

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

11 years agogcc/
gjl [Tue, 15 Nov 2011 09:01:46 +0000 (09:01 +0000)]
gcc/
PR target/49868
* config/avr/avr.h (ADDR_SPACE_PGM): New address spaces.
(REGISTER_TARGET_PRAGMAS): New define.
* config/avr/avr-protos.h (avr_mem_pgm_p): New.
(avr_load_libgcc_p): New.
(asm_output_external_libcall): Remove.
(avr_register_target_pragmas): New.
(avr_log_t): Add field "progmem".  Order alphabetically.
* config/avr/avr-log.c (avr_log_set_avr_log): Set avr_log.progmem.
* config/avr/avr-c.c (langhooks.h): New include.
(avr_register_target_pragmas): New function. Register address
space __pgm.
(avr_cpu_cpp_builtins): Add built-in define __PGM.
* config/avr/avr.c: Include "c-family/c-common.h".
(TARGET_LEGITIMATE_ADDRESS_P): Remove define.
(TARGET_LEGITIMIZE_ADDRESS): Remove define.
(TARGET_ADDR_SPACE_SUBSET_P): Define to...
(avr_addr_space_subset_p): ...this new static function.
(TARGET_ADDR_SPACE_CONVERT): Define to...
(avr_addr_space_convert): ...this new static function.
(TARGET_ADDR_SPACE_ADDRESS_MODE): Define to...
(avr_addr_space_address_mode): ...this new static function.
(TARGET_ADDR_SPACE_POINTER_MODE): Define to...
(avr_addr_space_pointer_mode): ...this new static function.
(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Define to...
(avr_addr_space_legitimate_address_p): ...this new static function.
(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Define to...
(avr_addr_space_legitimize_address): ...this new static function.
(avr_mode_code_base_reg_class): Handle address spaces.
(avr_regno_mode_code_ok_for_base_p): Ditto.
(lpm_addr_reg_rtx, lpm_reg_rtx, all_regs_rtx): New static variables.
(avr_option_override): Initialize them.
(output_reload_in_const): Use all_regs_rtx. Fix signedness of loop
variables.
(avr_pgm_segment): New static function.
(avr_decl_pgm_p, avr_mem_pgm_p): New static functions.
(avr_out_lpm, avr_out_lpm_no_lpmx): New static functions.
(output_movqi, output_movhi, output_movsisf, avr_out_movpsi): Call
avr_out_lpm to handle loads from progmem.
(avr_load_libgcc_p): New static function.
(avr_progmem_p): Test if decl is in flash.
(avr_pgm_pointer_const_p): New static function.
(avr_nonconst_pointer_addrspace): New static function.
(avr_pgm_check_var_decl): New static function.
(avr_insert_attributes): Use it.  Change error message to report
cause (progmem or address space) when code wants to write to flash.
(avr_section_type_flags): Unset section flag SECTION_BSS for
data in progmem.
* config/avr/predicates.md (nop_general_operand): New predicate.
(nox_general_operand): New predicate.
* config/avr/avr.md (LPM_REGNO): New define_constant.
(load<mode>_libgcc): New expander.
(*load.<mode>.libgcc): New insn.
(mov<mode>): Handle loads from non-generic AS.
(movmemhi): Ditto.  Propagate address space information to newly
created MEM.
(movqi_insn, *movhi, *movpsi, *movsi, *movsf): Change predicate #1
to nox_general_operand.
(ashrqi3, ashrhi3, ashrsi3): Change predicate #1 to nop_general_operand.
(ashlqi3, *ashlqi3, ashlhi3, ashlsi3): Ditto.
(lshrqi3, *lshrqi3, lshrhi3, lshrsi3): Ditto.
(split-lpmx): New split.
(*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const,
*lshrhi3_const, *lshrsi3_const): Indent, unquote C.

libgcc/
PR target/49868
* config/avr/t-avr (LIB1ASMFUNCS): Add _load_3,  _load_4.
* config/avr/lib1funcs.S (__load_3, __load_4, __xload_2): New functions.

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

11 years ago * ipa-cp.c (ipa_value_from_jfunc): Make global.
mkuvyrkov [Tue, 15 Nov 2011 03:46:08 +0000 (03:46 +0000)]
* ipa-cp.c (ipa_value_from_jfunc): Make global.
(ipa_cst_from_jfunc): Remove, use ipa_value_from_jfunc instead.
(get_indirect_edge_target): Rename, make global.
(devirtualization_time_bonus, estimate_local_effects,)
(ipcp_discover_new_direct_edges): Update.
* ipa-inline-analysis.c (evaluate_conditions_for_edge):
Generalize to also handle types.  Rename to ...
(evaluate_properties_for_edge): Use instead of
evaluate_conditions_for_edge.
(estimate_edge_devirt_benefit): New function.
(estimate_calls_size_and_time): Use it.
(estimate_node_size_and_time, estimate_ipcp_clone_size_and_time,)
(inline_merge_summary): Update.
(do_estimate_edge_time, do_estimate_edge_growth): Update.  Calculate
parameter information at the call site and pass it on to subroutines.
* tree-inline.c (estimate_num_insns): Distinguish between direct and
indirect calls.
(init_inline_once): Set size and time costs or indirect calls.
* tree-inline.h (eni_weights): Add indirect_call_cost.

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

11 years agoDaily bump.
gccadmin [Tue, 15 Nov 2011 00:18:38 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago2011-11-15 Tom de Vries <tom@codesourcery.com>
vries [Tue, 15 Nov 2011 00:12:45 +0000 (00:12 +0000)]
2011-11-15  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/51005
* tree-ssa-tail-merge.c (delete_basic_block_same_succ): Rename to
mark_basic_block_deleted.
(update_worklist): Inline purge_bbs.
(purge_bbs, unlink_virtual_phi, update_vuses, vop_at_entry)
(delete_block_update_dominator_info): Remove.
(replace_block_by): Remove update_vops parameter.  Partially evaluate
for update_vops == false.
(apply_clusters): Remove update_vops parameter.  Remove update_vops
argument in replace_block_by call.
(update_debug_stmts): Remove MAY_HAVE_DEBUG_STMTS test.
(tail_merge_optimize): Remove update_vops argument to apply_clusters.
Remove call to purge_bbs.  Add calls to calculate_dominance_info and
free_dominance_info.  Add MAY_HAVE_DEBUG_STMTS before calling
update_debug_stmts.  Mark vop var for renaming, if necessary.

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

11 years ago PR rtl-optimization/51051
hp [Mon, 14 Nov 2011 23:31:13 +0000 (23:31 +0000)]
PR rtl-optimization/51051
* cfgrtl.c (cfg_layout_can_merge_blocks_p): Return FALSE if the
move would cause fallthrough into the exit block.

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

11 years agors6000: Rewrite sync patterns for atomic; expand early.
rth [Mon, 14 Nov 2011 22:59:02 +0000 (22:59 +0000)]
rs6000: Rewrite sync patterns for atomic; expand early.

The conversion of the __sync post-reload splitters was half
complete.  Since there are nearly no restrictions on what may
appear between LL and SC, expand all the patterns immediatly.
This allows significantly easier code generation for subword
atomic operations.

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

11 years ago * config/i386/sse.md (round<mode>2): Use register_operand for
uros [Mon, 14 Nov 2011 22:27:13 +0000 (22:27 +0000)]
* config/i386/sse.md (round<mode>2): Use register_operand for
operand 1 predicate.
(round<mode>2_sfix): Ditto.
(round<mode>2_vec_pack_sfix): Ditto for operand 1 and operand 2.

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

11 years agoruntime: Use some of 6g runtime.c for easier merging.
ian [Mon, 14 Nov 2011 22:26:45 +0000 (22:26 +0000)]
runtime: Use some of 6g runtime.c for easier merging.

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

11 years ago * gcov.c (canonicalize_name): Protect use of S_ISLNK.
nathan [Mon, 14 Nov 2011 21:44:01 +0000 (21:44 +0000)]
* gcov.c (canonicalize_name): Protect use of S_ISLNK.

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

11 years agoTrivial: add cleanup-tree-dump in testcase, fix typo in comment.
torvald [Mon, 14 Nov 2011 21:06:15 +0000 (21:06 +0000)]
Trivial: add cleanup-tree-dump in testcase, fix typo in comment.

gcc/testsuite:
* g++.dg/tm/template-1.C: Add cleanup-tree-dump. Fix typo in comment.

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

11 years agogcc:
iains [Mon, 14 Nov 2011 21:05:12 +0000 (21:05 +0000)]
gcc:

2011-11-14  Jan Hubicka  <jh@suse.cz>

* config/i386/i386.c (core cost model): Correct pasto.

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

11 years ago * gcc.target/i386/avx-recip-vec.c: New test.
uros [Mon, 14 Nov 2011 20:25:14 +0000 (20:25 +0000)]
* gcc.target/i386/avx-recip-vec.c: New test.
* gcc.target/i386/avx-lrintf-vec.c: Ditto.
* gcc.target/i386/avx-lrint-vec.c: Ditto.
* gcc.target/i386/avx-ceilf-vec.c: Include sse4_1-ceilf-vec.c.
* gcc.target/i386/avx-ceil-vec.c: Include sse4_1-ceil-vec.c.
* gcc.target/i386/avx-floorf-vec.c: Include sse4_1-floorf-vec.c.
* gcc.target/i386/avx-floor-vec.c: Include sse4_1-floor-vec.c.
* gcc.target/i386/avx-rintf-vec.c: Include sse4_1-rintf-vec.c.
* gcc.target/i386/avx-rint-vec.c: Include sse4_1-rint-vec.c.
* gcc.target/i386/avx-roundf-vec.c: Include sse4_1-roundf-vec.c.
* gcc.target/i386/avx-round-vec.c: Include sse4_1-round-vec.c.
* gcc.target/i386/avx-truncf-vec.c: Include sse4_1-truncf-vec.c.
* gcc.target/i386/avx-trunc-vec.c: Include sse4_1-trunc-vec.c.
* gcc.target/i386/avx-copysignf-vec.c: Include sse-copysignf-vec.c.
* gcc.target/i386/avx-copysign-vec.c: Include sse2-copysign-vec.c.

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

11 years ago PR c++/51107
jason [Mon, 14 Nov 2011 20:05:12 +0000 (20:05 +0000)]
PR c++/51107
* typeck.c (check_literal_operator_args): Add processing_specialization
to check for void template fn. Test for exact arity for non-template fn.

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

11 years ago * config/i386/sse.md (round<mode>2_sfix): New expander.
uros [Mon, 14 Nov 2011 19:36:33 +0000 (19:36 +0000)]
* config/i386/sse.md (round<mode>2_sfix): New expander.
(round<mode>2_vec_pack_sfix): Ditto.
(<sse4_1>_round<ssemodesuffix>_sfix<avxsizesuffix>): Ditto.
(<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.
* config/i386/builtin-types.def (V4SI_FTYPE_V4SF_ROUND,
V8SI_FTYPE_V8SF_ROUND, V4SI_FTYPE_V2DF_V2DF_ROUND,
V8SI_FTYPE_V4DF_V4DF_ROUND): New builtin types.
* config/i386/i386.c (ix86_builtins): Add
IX86_BUILTIN_{FLOORPD,CEILPD,ROUNDPD_AZ}_VEC_PACK_SFIX{,256} and
IX86_BUILTIN_{FLOORPS,CEILPS,ROUNDPS_AZ}_SFIX{,256} defines.
(bdesc_args): Add __builtin_ia32_{floorpd,ceilpd}_vec_pack_sfix{,256},
__builtin_ia32_roundpd_az_vec_pack_sfix{,256},
__builtin_ia32_{floorps,ceilps}_sfix{,256}and
__builtin_ia32_roundps_az_sfix{,256} descriptions.
(ix86_expand_sse_round_vec_pack_sfix): New.
(ix86_expand_args_builtin): Handle V4SI_FTYPE_V4SF_ROUND,
V8SI_FTYPE_V8SF_ROUND, V4SI_FTYPE_V2DF_V2DF_ROUND and
V8SI_FTYPE_V4DF_V4DF_ROUND types.  Check last argument of
CODE_FOR_sse4_1_roundpd_vec_pack_sfix, CODE_FOR_sse4_1_roundps_sfix,
CODE_FOR_avx_roundpd_vec_pack_sfix256 and CODE_FOR_avx_roundps_sfix256.
(ix86_builtin_vectorized_function): Handle
BUILT_IN_{I,L,LL}FLOOR{,F}, BUILT_IN_{I,L,LL}CEIL{,F} and
BUILT_IN_{I,L,LL}ROUND{,F}

testsuite/ChangeLog:

* gcc.target/i386/sse4_1-floor-sfix-vec.c: New test.
* gcc.target/i386/sse4_1-floorf-sfix-vec.c: Ditto.
* gcc.target/i386/avx-floor-sfix-vec.c: Ditto.
* gcc.target/i386/avx-floorf-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-ceil-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-ceilf-sfix-vec.c: Ditto.
* gcc.target/i386/avx-ceil-sfix-vec.c: Ditto.
* gcc.target/i386/avx-ceilf-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-round-sfix-vec.c: Ditto.
* gcc.target/i386/sse4_1-roundf-sfix-vec.c: Ditto.
* gcc.target/i386/avx-round-sfix-vec.c: Ditto.
* gcc.target/i386/avx-roundf-sfix-vec.c: Ditto.

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

11 years agoCheck ia32 instead of ilp32.
hjl [Mon, 14 Nov 2011 18:12:24 +0000 (18:12 +0000)]
Check  ia32 instead of ilp32.

2011-11-14  H.J. Lu  <hongjiu.lu@intel.com>

* testsuite/lib/libitm.exp: Check ia32 instead of ilp32.

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

11 years ago PR c++/6936
jason [Mon, 14 Nov 2011 17:55:57 +0000 (17:55 +0000)]
PR c++/6936
PR c++/25994
PR c++/26256
PR c++/30195
* search.c (lookup_field_1): Look through USING_DECL.
(lookup_field_r): Call lookup_fnfields_slot instead of
lookup_fnfields_1.
* semantics.c (finish_member_declaration): Remove the check that
prevents USING_DECLs from being verified by
pushdecl_class_level. Call add_method for using declarations that
designates functions if the using declaration is in a template
class. Set DECL_IGNORED_P on class-scope using declarations.
* typeck.c (build_class_member_access_expr): Handle USING_DECLs.
* class.c (check_field_decls): Keep using declarations.
(add_method): Remove two diagnostics about conflicting using
declarations.
* parser.c (cp_parser_nonclass_name): Handle USING_DECLs.
* decl.c (start_enum): Call xref_tag whenever possible.
* cp-tree.h (strip_using_decl): Declare, and reident the previous
function.
* name-lookup.c (strip_using_decl): New function.
(supplement_binding_1): Call strip_using_decl on decl and
bval. Perform most of the checks with USING_DECLs stripped.  Also
check that the target decl and the target bval does not refer to
the same declaration. Allow pushing an enum multiple times in a
template class. Adjustment to diagnose using redeclarations. Call
diagnose_name_conflict.
(push_class_level_binding): Call strip_using_decl on decl and
bval. Perform most of the checks with USING_DECLs stripped. Return
true if both decl and bval refer to USING_DECLs and are dependent.
(diagnose_name_conflict): New function.

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

11 years ago PR middle-end/50598
hubicka [Mon, 14 Nov 2011 17:32:47 +0000 (17:32 +0000)]
PR middle-end/50598
* cgraph.h (varpool_externally_visible_p): Declare.
(varpool_add_new_variable): Declare.
* tree-emultls.c (get_emutls_init_templ_addr,
new_emutls_decl): Use varpool_add_new_variable.
* ipa.c (varpool_externally_visible_p): Export.
* varpool.c (varpool_add_new_variable): New function.

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

11 years ago * gcc.target/i386/sw-1.c: Force rep;movsb.
hubicka [Mon, 14 Nov 2011 17:28:11 +0000 (17:28 +0000)]
* gcc.target/i386/sw-1.c: Force rep;movsb.

        * config/i386/i386.h (processor_costs): Add second dimension to
        stringop_algs array.
        * config/i386/i386.c (cost models): Initialize second dimension of
        stringop_algs arrays.
(core_cost): New costs based on generic64 costs with updated stringop
values.
        (promote_duplicated_reg): Add support for vector modes, add
        declaration.
        (promote_duplicated_reg_to_size): Likewise.
(processor_target): Set core costs for core variants.
        (expand_set_or_movmem_via_loop_with_iter): New function.
        (expand_set_or_movmem_via_loop): Enable reuse of the same iters in
        different loops, produced by this function.
        (emit_strset): New function.
        (expand_movmem_epilogue): Add epilogue generation for bigger sizes,
        use SSE-moves where possible.
        (expand_setmem_epilogue): Likewise.
        (expand_movmem_prologue): Likewise for prologue.
        (expand_setmem_prologue): Likewise.
        (expand_constant_movmem_prologue): Likewise.
        (expand_constant_setmem_prologue): Likewise.
        (decide_alg): Add new argument align_unknown.  Fix algorithm of
        strategy selection if TARGET_INLINE_ALL_STRINGOPS is set; Skip sse_loop
        (decide_alignment): Update desired alignment according to chosen move
        mode.
        (ix86_expand_movmem): Change unrolled_loop strategy to use SSE-moves.
        (ix86_expand_setmem): Likewise.
        (ix86_slow_unaligned_access): Implementation of new hook
        slow_unaligned_access.
        * config/i386/i386.md (strset): Enable half-SSE moves.
        * config/i386/sse.md (vec_dupv4si): Add expand for vec_dupv4si.
        (vec_dupv2di): Add expand for vec_dupv2di.

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

11 years ago PR bootstrap/51094
jason [Mon, 14 Nov 2011 16:55:56 +0000 (16:55 +0000)]
PR bootstrap/51094
PR middle-end/51116
* config/elfos.h (TARGET_ASM_INTERNAL_LABEL): Remove.
* varasm.c (default_elf_internal_label): Remove.

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

11 years ago * gcov.c (generate_results): Add missing semicolon and
ktietz [Mon, 14 Nov 2011 16:38:23 +0000 (16:38 +0000)]
    * gcov.c (generate_results): Add missing semicolon and
        correct indent.

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

11 years agogcc/testsuite:
iains [Mon, 14 Nov 2011 11:53:33 +0000 (11:53 +0000)]
gcc/testsuite:

PR testsuite/51059
* gcc.misc-tests/gcov-14.c (dg-options): Adjust to use
dg-additional-options.

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

11 years ago2011-11-14 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 14 Nov 2011 11:29:26 +0000 (11:29 +0000)]
2011-11-14  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
not viable anyway due to the pointer parameter.

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

11 years ago2011-11-14 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 14 Nov 2011 08:15:09 +0000 (08:15 +0000)]
2011-11-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51073
        * trans-decl.c (generate_coarray_sym_init): Handle zero-sized
        * arrays.

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

11 years ago PR bootstrap/51112
irar [Mon, 14 Nov 2011 06:41:09 +0000 (06:41 +0000)]
    PR bootstrap/51112
        * tree-vect-stmts.c (vectorizable_condition): Initialize
        comp_vectype.

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

11 years agoFix a cross reference.
xmj [Mon, 14 Nov 2011 05:53:18 +0000 (05:53 +0000)]
Fix a cross reference.

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

11 years agoDaily bump.
gccadmin [Mon, 14 Nov 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago2011-11-13 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 13 Nov 2011 23:51:42 +0000 (23:51 +0000)]
2011-11-13  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
constraining on the return type.
* include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
nextafter, remainder, remquo): Likewise.

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

11 years ago PR target/50694
kkojima [Sun, 13 Nov 2011 23:00:10 +0000 (23:00 +0000)]
PR target/50694
* config/sh/sh.h (IS_LITTLE_ENDIAN_OPTION, UNSUPPORTED_SH2A):
New macros.
(DRIVER_SELF_SPECS): Use new macros to filter out
unsupported options taking the default configuration into
account.
* gcc.target/sh/pr21255-2-ml.c: Skip if -mb or -m5* is
specified.  Remove redundant runtime checks.
* gcc.target/sh/20080410-1.c: Skip if -mb is specified.
Allow for other than -m4.  Fix typos in comments.

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

11 years ago * config.host (hppa*64*-*-hpux11*): Remove pa/t-stublib64 from
danglin [Sun, 13 Nov 2011 20:17:01 +0000 (20:17 +0000)]
* config.host (hppa*64*-*-hpux11*): Remove pa/t-stublib64 from
tmake_file list.
* config/pa/t-stublib: Merge rules from config/pa/t-stublib64.
* config/pa/t-stublib64: Delete.

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

11 years ago * doc/install.texi (Specific): Fix anchor for
redi [Sun, 13 Nov 2011 16:39:22 +0000 (16:39 +0000)]
* doc/install.texi (Specific): Fix anchor for
x86_64-*-solaris2.1[0-9]*.

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

11 years ago * gcov.c (source_prefix, source_length): New globals.
nathan [Sun, 13 Nov 2011 10:26:23 +0000 (10:26 +0000)]
* gcov.c (source_prefix, source_length): New globals.
(flag_relative_only): Likewise.
(print_usage, options, process_args): Update.
(generate_results): Use coverage.name, check
flag_relative_only. Adjust messages.
(find_source): Check source_prefix.
(output_lines): Use coverage.name, adjust messages.
* doc/gcov.texi (Invoking Gcov): Document new options.

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

11 years ago PR c++/986
jason [Sun, 13 Nov 2011 05:09:36 +0000 (05:09 +0000)]
PR c++/986
* call.c (set_up_extended_ref_temp): Warn about references
bound to non-static reference members.
* init.c (perform_member_init): Pass in the member.

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

11 years ago * using.xml: Use GNU/Linux.
gerald [Sun, 13 Nov 2011 04:27:22 +0000 (04:27 +0000)]
* using.xml: Use GNU/Linux.

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

11 years ago PR c++/51060
jason [Sun, 13 Nov 2011 00:44:39 +0000 (00:44 +0000)]
PR c++/51060
* gimplify.c (gimplify_target_expr): Add a clobber to the cleanup.
(gimplify_modify_expr): Don't try to simplify it.
* cp/cp-gimplify.c (cp_gimplify_expr): Leave clobbers alone.

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

11 years agoDaily bump.
gccadmin [Sun, 13 Nov 2011 00:18:44 +0000 (00:18 +0000)]
Daily bump.

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

11 years ago PR bootstrap/51094
jason [Sat, 12 Nov 2011 21:40:07 +0000 (21:40 +0000)]
PR bootstrap/51094
* config/elfos.h (STRING_ASM_OP): Define.
* varasm.c (default_elf_asm_output_limited_string): Use it.

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

11 years ago PR bootstrap/51094
jason [Sat, 12 Nov 2011 21:39:59 +0000 (21:39 +0000)]
PR bootstrap/51094
* gcc/configure.ac: Check for stpcpy declaration.
* system.h: Declare it if not.
* config.in, configure: Regenerate.

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

11 years agoppc-linux: Fix call to _Unwind_SetGRPtr
rth [Sat, 12 Nov 2011 17:20:58 +0000 (17:20 +0000)]
ppc-linux: Fix call to _Unwind_SetGRPtr

        * config/rs6000/linux-unwind.h (frob_update_context): Properly
        cast the pointer argument to _Unwind_SetGRPtr.

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

11 years agors6000: fix*_trunc insns use nonimmediate_operand
rth [Sat, 12 Nov 2011 17:19:39 +0000 (17:19 +0000)]
rs6000: fix*_trunc insns use nonimmediate_operand

        * config/rs6000/rs6000.md (fix_trunc<SFDF>si2_stfiwx): Use
        nonimmediate_operand for the destination.
        (fixuns_trunc<SFDF>si2_stfiwx): Likewise.

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

11 years ago * builtins.c (expand_builtin_compare_and_swap): If target is const0,
rth [Sat, 12 Nov 2011 17:17:54 +0000 (17:17 +0000)]
    * builtins.c (expand_builtin_compare_and_swap): If target is const0,
        don't pass the target to expand_atomic_compare_and_swap.
        (expand_builtin_atomic_compare_exchange): Likewise.

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

11 years agosh-linux: Install __sync libfuncs.
rth [Sat, 12 Nov 2011 17:17:45 +0000 (17:17 +0000)]
sh-linux: Install __sync libfuncs.

        * config/sh/linux.h (TARGET_INIT_LIBFUNCS): New.
        * config/sh/sh.c (sh_init_sync_libfuncs): New.

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

11 years ago PR libstdc++/51083
redi [Sat, 12 Nov 2011 15:57:03 +0000 (15:57 +0000)]
PR libstdc++/51083
* include/ext/type_traits.h (__promote): Only define __type member
for integral and floating point types, to prevent math functions
participating in overload resolution for other types.
(__promote_2, __promote_3, __promote_4): Use __promote in default
template argument values, so deduction only succeeds for integral and
floating point types.
* testsuite/26_numerics/cmath/51083.cc: New.
* testsuite/26_numerics/complex/51083.cc: New.
* testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
* testsuite/tr1/8_c_compatibility/complex/51083.cc: New.

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

11 years agohppa: Install __sync libfuncs for linux.
rth [Sat, 12 Nov 2011 15:39:44 +0000 (15:39 +0000)]
hppa: Install __sync libfuncs for linux.

        * config/pa/pa-linux.h (TARGET_SYNC_LIBCALL): New.
        * config/pa/pa.h (TARGET_SYNC_LIBCALL): New default.
        * config/pa/pa.c (pa_init_libfuncs): Use init_sync_libfuncs.

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

11 years agoada:
iains [Sat, 12 Nov 2011 15:06:18 +0000 (15:06 +0000)]
ada:

* gcc-interface/Makefile.in (stamp-gnatlib-$(RTSDIR)): Don't link
s-oscons.ads.
(OSCONS_CPP, OSCONS_EXTRACT): New.
(./bldtools/oscons/xoscons): New Target.
($(RTSDIR)/s-oscons.ads): New Target.
(gnatlib): Depend on  $(RTSDIR)/s-oscons.ads.
* gcc-interface/Make-lang.in (ada/s-oscons.ads) Remove as dependency.
* Make-generated.in: Remove machinery to generate xoscons and
ada/s-oscons.ads.

libada:

Makefile.in: Change dependency on oscons to depend on the generator
tool.

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

11 years ago * lib/gcc-simulate-thread.exp (simulate-thread): Do not run on
uros [Sat, 12 Nov 2011 14:35:31 +0000 (14:35 +0000)]
* lib/gcc-simulate-thread.exp (simulate-thread): Do not run on
alpha*-*-linux* targets.

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