aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-11-18re PR tree-optimization/51118 (ICE: tree check: expected tree that contains ↵Uros Bizjak2-14/+25
‘typed’ structure, have ‘block’ in fold_checksum_tree, at fold-const.c:14160) PR tree-optimization/51118 * fold-const.c (fold_checksum_tree): Check for TS_TYPED structure before using TREE_TYPE accessor on expr. From-SVN: r181468
2011-11-18* MAINTAINERS (Write After Approval): Add myself.Jiangning Liu1-0/+1
From-SVN: r181467
2011-11-18re PR target/51134 (x86 memset/memcpy expansion is broken)Jan Hubicka2-60/+173
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. From-SVN: r181466
2011-11-17re PR libstdc++/51181 (libstdc++.so __sync_sub_and_fetch_4 linkage error ↵Richard Henderson2-0/+8
causing many test suite failures on m68k-linux) PR libstdc++/51181 * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4. From-SVN: r181465
2011-11-18Daily bump.GCC Administrator1-1/+1
From-SVN: r181464
2011-11-18typesizes.cc: Do not run on darwin.Jonathan Wakely2-2/+7
* testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run on darwin. From-SVN: r181460
2011-11-17Merge branch 'rth/atomic/ppc'Richard Henderson2-4/+10
From-SVN: r181459
2011-11-17Remove accidentally committed duplicate ChangeLog entry.Jonathan Wakely1-6/+0
From-SVN: r181458
2011-11-17re PR middle-end/51144 (r181279 possibly miscompilation of genmddeps)Steve Ellcey3-29/+8
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. From-SVN: r181457
2011-11-17host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.Andrew Pinski2-0/+8
2011-11-17 Andrew Pinski <apinski@cavium.com> * config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS. From-SVN: r181456
2011-11-17re PR c++/51186 (declaring main() with auto but without --std=c++11 gives ↵Jason Merrill5-10/+31
inconsistent error messages) PR c++/51186 * decl.c (grokdeclarator): Improve C++98 trailing return diagnostic. From-SVN: r181455
2011-11-17* lib/gcc-simulate-thread.exp (simulate-thread): Improve error message.Uros Bizjak1-1/+1
From-SVN: r181454
2011-11-17builtins.c (expand_builtin): Remove 4th parameter representing weak/strong ↵Andrew MacLeod7-15/+66
mode when... 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. From-SVN: r181453
2011-11-17gcc-simulate-thread.exp (simulate-thread): Run on all targets.Uros Bizjak2-22/+22
* 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. From-SVN: r181452
2011-11-17Unify implementations of __builtin_mem_*_fence and __sync_synchronize.Richard Henderson5-94/+103
* 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. From-SVN: r181451
2011-11-17re PR rtl-optimization/50663 (conditional propagation missed in cprop.c pass)Bin Cheng2-8/+61
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. From-SVN: r181446
2011-11-17class.c (add_implicitly_declared_members): Update move conditions.Jason Merrill6-2/+27
N3203 * class.c (add_implicitly_declared_members): Update move conditions. From-SVN: r181445
2011-11-17re PR c++/51137 ([C++0x] [4.7 Regression] ICE with -std=c++0x and virtual ↵Jason Merrill4-7/+28
inheritance) PR c++/51137 * class.c (build_base_path): Don't do calculation in templates. From-SVN: r181444
2011-11-17re PR tree-optimization/50644 (ICE in set_is_used added today)Michael Matz4-2/+32
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. From-SVN: r181443
2011-11-17Provide all dummy functions in alloc_cpp.cc, eh_cpp.ccRainer Orth3-5/+25
* 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. From-SVN: r181442
2011-11-17Skip simulate-thread tests on all alpha targetsRainer Orth2-2/+7
* lib/gcc-simulate-thread.exp (simulate-thread): Skip on alpha*-*-*. From-SVN: r181441
2011-11-17status_cxx2011.xml: Status of piecewise construction and ios_base::failure.Jonathan Wakely3-5/+21
* 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. From-SVN: r181438
2011-11-16Copy ALIAS_SET_MEMORY_BARRIER when creating a new MEM for atomic ops.Richard Henderson3-5/+18
* 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. From-SVN: r181436
2011-11-16inclhack.def (aix_once_init_[12]): New fixes.David Edelsohn4-5/+144
* inclhack.def (aix_once_init_[12]): New fixes. * fixincl.x: Regenerate. * tests/base/pthread.h: Update. From-SVN: r181434
2011-11-17Daily bump.GCC Administrator1-1/+1
From-SVN: r181431
2011-11-17memopt-6.c: Cleanup tmedge tree dump.Uros Bizjak4-2/+12
* 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. From-SVN: r181426
2011-11-16re PR fortran/39427 (F2003: Procedures with same name as types/type ↵Tobias Burnus31-309/+1440
constructors) 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. From-SVN: r181425
2011-11-16* config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.Joseph Myers2-4/+4
From-SVN: r181423
2011-11-16rs6000.c (rs6000_xcoff_section_type_flags): Default to minimum alignment if ↵David Edelsohn2-1/+6
decl is NULL. * config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags): Default to minimum alignment if decl is NULL. From-SVN: r181422
2011-11-16sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode sequence for AVX.Uros Bizjak2-20/+58
* config/i386/sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode sequence for AVX. (<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto. From-SVN: r181421
2011-11-16pr30858.c: Update expected output for architectures with multiple vector sizes.Matthew Gretton-Dann2-1/+6
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. From-SVN: r181420
2011-11-16lib1funcs.asm (udivsi3): Add support for divide functions.Matthew Gretton-Dann2-4/+76
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. From-SVN: r181419
2011-11-16* doc/invoke.texi: Document AMD bdver1 and btver1.Venkataramanan Kumar2-0/+13
From-SVN: r181417
2011-11-16re PR target/49641 (Wrong code for ARMv4T and stmia)Richard Earnshaw4-1/+39
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. Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com> Co-Authored-By: Sebastian Huber <sebastian.huber@embedded-brains.de> From-SVN: r181416
2011-11-16re PR libstdc++/51102 (missing macros in <atomic>)Andrew MacLeod2-1/+8
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. From-SVN: r181414
2011-11-16re PR tree-optimization/49960 (inconsistent outputs when enabling autopar ↵Razya Ladelsky2-26/+33
for a self -dependence testcase) 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. From-SVN: r181411
2011-11-16re PR tree-optimization/49960 (inconsistent outputs when enabling autopar ↵Razya Ladelsky1-0/+7
for a self -dependence testcase) PR tree-optimization/49960 * gcc.dg/autopar/pr49960.c: New test. * gcc.dg/autopar/pr49960-1.c: New test. From-SVN: r181410
2011-11-16re PR tree-optimization/49960 (inconsistent outputs when enabling autopar ↵Razya Ladelsky2-0/+85
for a self -dependence testcase) PR tree-optimization/49960 * gcc.dg/autopar/pr49960.c: New test. * gcc.dg/autopar/pr49960-1.c: New test. From-SVN: r181409
2011-11-16re PR bootstrap/51098 (bootstrap failed on avx i686, svn revision 181259 to ↵Uros Bizjak3-2/+8
181267) PR bootstrap/51098 * acinclude.m4 (LIBITM_CHECK_AS_AVX): Fix target selector. * configure: Regenerate. From-SVN: r181408
2011-11-162011-11-16 Paolo Carlini <paolo.carlini@oracle.com>Paolo Carlini1-1/+1
* Fix name in ChangeLog entry. From-SVN: r181407
2011-11-16re PR middle-end/50325 (76 new fails with rev. 177691)Andreas Krebbel2-4/+21
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. From-SVN: r181405
2011-11-16qrnnd.S: Use specific pseudos for VMS.Tristan Gingold2-0/+16
2011-11-16 Tristan Gingold <gingold@adacore.com> * config/alpha/qrnnd.S: Use specific pseudos for VMS. From-SVN: r181403
2011-11-16i386elf.h (ASM_OUTPUT_ASCII): Change STRING_LIMIT to ELF_STRING_LIMIT.Joseph Myers2-2/+7
* config/i386/i386elf.h (ASM_OUTPUT_ASCII): Change STRING_LIMIT to ELF_STRING_LIMIT. From-SVN: r181400
2011-11-16Daily bump.GCC Administrator1-1/+1
From-SVN: r181399
2011-11-15alpha: Convert to atomic optabs.Richard Henderson7-209/+431
From-SVN: r181395
2011-11-15re PR libstdc++/51142 ([C++0x] map::erase(key) doesn't compile with ↵Paolo Carlini19-0/+386
-D_GLIBCXX_DEBUG.) 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. From-SVN: r181394
2011-11-15pr43864.c: Check for absence of 'Invalid sum' in pre tree-dump.Tom de Vries5-0/+11
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. From-SVN: r181393
2011-11-15tree-ssa-tail-merge.c (replace_block_by): Add frequency of bb2 to bb1.Tom de Vries2-0/+9
2011-11-16 Tom de Vries <tom@codesourcery.com> * tree-ssa-tail-merge.c (replace_block_by): Add frequency of bb2 to bb1. From-SVN: r181392
2011-11-16re PR rtl-optimization/51051 (build fails on cris-elf building libstdc++-v3)Alan Modra2-1/+9
PR rtl-optimization/51051 PR bootstrap/51086 * function.c (thread_prologue_and_epilogue_insns): Guard emitting return with single_succ_p test. From-SVN: r181391
2011-11-15sse2-cvt-vec.c: New test.Uros Bizjak4-1/+133
* 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. From-SVN: r181390