Nathan Sidwell
89b0c30334
re PR gcov-profile/51113 (rev. 181105 causes Firefox profiledbuild failure)
...
PR gcov-profile/51113
* coverage.c (build_var): Propagate visibility for public decls.
testsuite/
* gcc.misc-tests/gcov-13.c: Check gcovpart-13b coverage
* gcc.misc-tests/gcov-16.c: New.
* gcc.misc-tests/gcov-17.c: New.
* g++.dg/gcov/gcov-8.C: New.
* g++.dg/gcov/gcov-9.C: New.
* g++.dg/gcov/gcov-10.C: New.
From-SVN: r181524
2011-11-20 09:09:34 +00:00
Dodji Seketeli
fcb36e7363
PR c++/51194 - ICE with invalid alias template
...
gcc/cp/
PR c++/51194
* pt.c (lookup_template_class_1): Go out early if the type of the
template is error_mark_node.
gcc/testsuite/
PR c++/51194
* g++.dg/cpp0x/alias-decl-15.C: New test.
From-SVN: r181523
2011-11-20 08:10:24 +01:00
GCC Administrator
417c27ab30
Daily bump.
...
From-SVN: r181521
2011-11-20 00:18:50 +00:00
Paolo Carlini
3afeafbce4
re PR c++/51216 (ICE with statement expression)
...
/cp
2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51216
* semantics.c (potential_constant_expression_1): Handle IF_STMT,
DO_STMT, FOR_STMT, and WHILE_STMT.
/testsuite
2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51216
* g++.dg/cpp0x/pr51216.C: New.
From-SVN: r181517
2011-11-19 23:17:12 +00:00
Eric Botcazou
b168ced903
re PR rtl-optimization/51187 (miscompilation of genrecog.c at -O2 for --target=avr)
...
PR rtl-optimization/51187
* reorg.c (relax_delay_slots): Do not consider a jump useless if there
is a barrier between the jump and its target label.
From-SVN: r181513
2011-11-19 20:36:43 +00:00
Patrick Marlier
2e85d5e290
re PR middle-end/51211 (ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2242) with -fgnu-tm -O -freorder-blocks -ftracer --param hot-bb-frequency-fraction=1 and __transaction_atomic)
...
PR middle-end/51211
* tracer.c (ignore_bb_p): Don't copy GIMPLE_TRANSACTION.
From-SVN: r181512
2011-11-19 11:29:18 -08:00
Eric Botcazou
6f83092f55
* expmed.c (store_bit_field_1): Revert bogus formatting change.
...
From-SVN: r181511
2011-11-19 18:20:36 +00:00
Eric Botcazou
a6b7e72326
Fix minor issues
...
From-SVN: r181509
2011-11-19 16:24:22 +00:00
Richard Earnshaw
78811dd3b7
re PR target/50493 (ICE in neon_disambiguate_copy, at config/arm/arm.c:20388)
...
PR target/50493
* arm.c (neon_disambiguate_copy): Correctly handle partial overlap
of src and dest operands.
From-SVN: r181508
2011-11-19 13:47:35 +00:00
Iain Sandoe
40353fb3aa
darwin.h (ASM_DEBUG_SPEC): New.
...
gcc:
* config/darwin.h (ASM_DEBUG_SPEC): New.
* config/darwin9.h (ASM_DEBUG_SPEC): New.
From-SVN: r181507
2011-11-19 12:21:08 +00:00
Paolo Carlini
fc09e5b6bd
bitset (operator[](size_t) const): Declare constexpr.
...
2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/bitset (operator[](size_t) const): Declare constexpr.
* include/profile/bitset: Likewise.
* testsuite/23_containers/bitset/operations/constexpr.cc: Split out
non portable bits to...
* testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here.
From-SVN: r181506
2011-11-19 11:50:44 +00:00
Tobias Burnus
cf651ca2e5
re PR fortran/51207 ([OOP] Mark __def_init_... as FL_PARAMETER)
...
2011-11-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51207
* class.c (gfc_find_derived_vtab): Mark __def_init as PARAMETER
and hence as TREE_READONLY; add subroutine attribute to
__copy_ procedure.
PR fortran/50640
* trans.h (GFC_DECL_PUSH_TOPLEVEL): New DECL_LANG_FLAG_7.
* trans-decl.c (gfc_get_symbol_decl): Mark __def_init and vtab
as GFC_DECL_PUSH_TOPLEVEL.
(gfc_generate_function_code): If GFC_DECL_PUSH_TOPLEVEL, push it there.
(build_function_decl): Push __copy_ procedure to the toplevel.
From-SVN: r181505
2011-11-19 10:26:33 +01:00
Jan Hubicka
ea5cbe6161
i386.c (atom_cost): Disable SSE loop until alignment issues are fixed.
...
* config/i386/i386.c (atom_cost): Disable SSE loop until alignment
issues are fixed.
From-SVN: r181503
2011-11-19 01:34:55 +00:00
GCC Administrator
b262d797e1
Daily bump.
...
From-SVN: r181501
2011-11-19 00:18:48 +00:00
Joseph Myers
afd87d51e2
* gcc.dg/cpp/assert4.c: Test __linux__, not __gnu_linux__.
...
From-SVN: r181496
2011-11-18 22:26:47 +00:00
Steve Ellcey
93aeb62b9e
Makefile.in (c_flags): Set to -fno-exceptions to build libunwind.
...
2011-11-18 Steve Ellcey <sje@cup.hp.com>
* Makefile.in (c_flags): Set to -fno-exceptions to build libunwind.
From-SVN: r181495
2011-11-18 22:26:44 +00:00
Anatoly Sokolov
2283c41652
cris.c (cris_function_value_regno_p): Make static.
...
* config/cris/cris.c (cris_function_value_regno_p): Make static.
(TARGET_FUNCTION_VALUE_REGNO_P): Define.
* config/cris/cris.h (FUNCTION_VALUE_REGNO_P): Remove.
* config/cris/cris-protos.h (cris_function_value_regno_p): Remove.
From-SVN: r181493
2011-11-19 01:23:08 +04:00
Fabien Chêne
e5df9bfc89
re PR c++/51188 (invalid static_cast from type 'XBase' to type 'int')
...
gcc/testsuite/ChangeLog
2011-11-18 Fabien Chene <fabien@gcc.gnu.org>
PR c++/51188
* g++.dg/lookup/using46.C: New.
* g++.dg/lookup/using47.C: New.
* g++.dg/lookup/using48.C: New.
* g++.dg/lookup/using49.C: New.
* g++.dg/lookup/using50.C: New.
gcc/cp/ChangeLog
2011-11-18 Fabien Chene <fabien@gcc.gnu.org>
PR c++/51188
* search.c (lookup_field_1): Handle USING_DECLs for the storted
case.
From-SVN: r181492
2011-11-18 21:32:04 +01:00
H.J. Lu
f32c951e2c
Add _mm_stream_si64.
...
2011-11-18 H.J. Lu <hongjiu.lu@intel.com>
PR target/33944
* doc/extend.texi: Document __builtin_ia32_movnti64.
* config/i386/emmintrin.h (_mm_stream_si64): New.
* config/i386/i386-builtin-types.def: Add VOID_FTYPE_PLONGLONG_LONGLONG.
* config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVNTI64.
(bdesc_special_args): Update __builtin_ia32_movnti. Add
__builtin_ia32_movnti64.
(ix86_expand_special_args_builtin): Handle
VOID_FTYPE_PLONGLONG_LONGLONG.
* config/i386/i386.md (UNSPEC_MOVNTI): New.
* config/i386/sse.md (sse2_movntsi): Renamed to ...
(sse2_movnti<mode>): This.
From-SVN: r181491
2011-11-18 11:02:45 -08:00
Fabien Chêne
52e4e221bd
re PR c++/51141 (rev181359 causes Chromium build failure)
...
gcc/testsuite/ChangeLog
2011-11-18 Fabien Chene <fabien@gcc.gnu.org>
PR c++/51141
* g++.dg/lookup/using46.C: New.
* g++.dg/lookup/using47.C: New.
* g++.dg/lookup/using48.C: New.
* g++.dg/lookup/using49.C: New.
* g++.dg/lookup/using50.C: New.
gcc/cp/ChangeLog
2011-11-18 Fabien Chene <fabien@gcc.gnu.org>
PR c++/51141
* search.c (lookup_field_1): Handle USING_DECLs for the storted
case.
From-SVN: r181490
2011-11-18 19:44:23 +01:00
Ulrich Weigand
4a0051e4db
pr44707.c: Do not assume assembler supports /* ...
...
* gcc.c-torture/compile/pr44707.c: Do not assume assembler
supports /* ... */ comments.
From-SVN: r181489
2011-11-18 18:17:05 +00:00
Georg-Johann Lay
7bc6df2ca1
re PR target/49868 (Implement named address space to place/access data in flash memory)
...
gcc/
PR target/49868
* config/avr/avr.h (base_arch_s): Add field n_segments.
(ADDR_SPACE_PGM1, ADDR_SPACE_PGM2, ADDR_SPACE_PGM3,
ADDR_SPACE_PGM4, ADDR_SPACE_PGM5, ADDR_SPACE_PGMX): New address spaces.
(AVR_HAVE_ELPM, AVR_HAVE_ELPMX): New defines.
(INIT_EXPANDERS): New define.
* config/avr/avr-protos.h (avr_mem_pgmx_p): New.
(avr_init_expanders): New.
(avr_emit_movmemhi, avr_out_movmem): New.
(avr_xload_libgcc_p): New.
* config/avr/avr-c.c (avr_register_target_pragmas): Register
address spaces __pgm1, __pgm2, __pgm3, __pgm4 __pgm5, __pgmx.
(avr_cpu_cpp_builtins): Add built-in defines __PGM1,
__PGM2, __PGM3, __PGM4, __PGM5, __PGMX.
* config/avr/avr-devices.c (avr_arch_types): Set field n_segments.
* config/avr/avr.c (AVR_SECTION_PROGMEM): Change define to cover
3 bits instead of just 1.
(xstring_empty, xstring_e, rampz_rtx): New static GTYed variables.
(progmem_section): Change from section to array of sections.
(progmem_section_prefix): New static variable.
(avr_file_start): Print set for __RAMPZ__
(avr_option_override): Move initialization of RTXes from here...
(avr_init_expanders): ...to this new function.
(avr_pgm_segment): New static function.
(avr_decl_pgm_p): Handle error_mark_node.
(avr_mem_pgmx_p, avr_decl_pgmx_p): New static functions.
(avr_out_xload, avr_find_unused_d_reg): New static functions.
(expand_prologue, expand_epilogue): Use rampz_rtx.
(print_operand): Hande CONST_STRING.
(avr_xload_libgcc_p): New static function.
(avr_out_lpm_no_lpmx, avr_out_lpm): Handle ELPM.
(avr_progmem_p): Return 2 for 24-bit flash address space.
(avr_out_sbxx_branch): Clean-up code from ASn macros.
(out_movqi_r_mr, out_movqi_mr_r): Ditto. And recognize RAMPZ's
address and print symbolically.
(avr_asm_named_section, avr_section_type_flags,
avr_encode_section_info, avr_asm_select_section,
avr_addr_space_address_mode, avr_addr_space_pointer_mode,
avr_addr_space_legitimate_address_p, avr_addr_space_convert,
avr_addr_space_legitimize_address): Handle new address spaces.
(avr_output_progmem_section_asm_op): New static function.
(avr_asm_init_sections): Initialize progmem_section[].
(adjust_insn_length): Handle ADJUST_LEN_XLOAD, ADJUST_LEN_MOVMEM.
(avr_const_address_lo16): New static function.
(avr_assemble_integer): Use it to handle 3-byte integers.
(avr_emit_movmemhi, avr_out_movmem): New functions.
* config/avr/predicates.md (nox_general_operand): Handle new
address spaces.
* config/avr/avr.md (unspec): Add UNSPEC_MOVMEM.
(adjust_len): Add xload, movmem.
(SP_ADDR): New define_constants.
(isa): Add "lpm", "lpmx", "elpm", "elpmx".
(enabled): Handle them.
(load<mode>_libgcc): New expander.
(*load.<mode>.libgcc): Rename to load_<mode>_libgcc.
(xload8_A, xload<mode>_A): New insn-and-splits.
(xload_8, xload_<mode>_libgcc, xload_<mode>, loadmem_elpm): New insns.
(mov<mode>): Handle new address spaces.
(movmemhi): Rewrite using avr_emit_movmemhi.
(MOVMEM_r_d): New mode attribute.
(movmem_<mode>, movmem_qi_elpm): New insns.
(setmemhi, *clrmemqi, *clrmemhi, strlenhi, *strlenhi): Unquote
C-code. Use label instead of hard-coded instrunction lengths.
libgcc/
PR target/49868
* config/avr/t-avr (LIB1ASMFUNCS): Add _xload_2 _xload_3 _xload_4.
* config/avr/lib1funcs.S (__xload_2, __xload_3, __xload_4):
New functions.
From-SVN: r181482
2011-11-18 16:44:00 +00:00
Rainer Orth
59659b5967
Support libitm on Solaris 8 and 9/x86 with Sun as
...
* config/generic/asmcfi.h: Fix comment.
* config/x86/sjlj.S (_ITM_beginTransaction): Provide ELF PIC code
sequence without .hidden support, error for non-ELF targets.
(GTM_longjmp) [__ELF__]: Only use .hidden if
HAVE_ATTRIBUTE_VISIBILITY.
From-SVN: r181481
2011-11-18 16:15:59 +00:00
Harti Brandt
919f402ca5
re PR libstdc++/51209 (The template _M_find_node in hashtable.h has a bad return value)
...
2011-11-18 Harti Brandt <hartmut.brandt@dlr.de>
PR libstdc++/51209
* include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return
nullptr when no node is found.
* include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return
zero when no node is found.
From-SVN: r181480
2011-11-18 16:09:29 +00:00
Paolo Carlini
112eadc763
re PR c++/51150 ([C++11][4.6/4.7 Regression] ICE when result of -> initializes const variable of different type)
...
/cp
2011-11-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51150
* pt.c (tsubst_copy_and_build): Handle FIX_TRUNC_EXPR.
/testsuite
2011-11-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51150
* g++.dg/cpp0x/pr51150.C: New.
From-SVN: r181478
2011-11-18 15:31:38 +00:00
Martin Jambor
39cc8c3d6b
re PR tree-optimization/50605 (ice in ipa_get_jf_pass_through_result with -O3)
...
2011-11-18 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/50605
* gimple.c (is_gimple_ip_invariant_address): Also handle MEM_REFs
of IPA invariant decls.
* testsuite/g++.dg/ipa/pr50605.C: New test.
From-SVN: r181477
2011-11-18 16:13:54 +01:00
Bill Schmidt
f252165363
tree-outof-ssa.c (insert_back_edge_copies): Add call to mark_dfs_back_edges.
...
2011-11-18 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* tree-outof-ssa.c (insert_back_edge_copies): Add call to
mark_dfs_back_edges.
From-SVN: r181476
2011-11-18 14:15:38 +00:00
Dodji Seketeli
0c3251f0aa
PR c++/51191 - ICE on alias of alias template instantiation
...
gcc/cp/
PR c++/51191
* pt.c (primary_template_instantiation_p): Don't forget to
consider alias declarations.
gcc/testsuite/
PR c++/51191
* g++.dg/cpp0x/alias-decl-13.C: New test.
From-SVN: r181475
2011-11-18 15:07:41 +01:00
Iain Sandoe
590175d228
re PR target/50678 (FAIL: c52104y on x86_64-apple-darwin10)
...
gcc/ada:
PR target/50678
* init.c (__gnat_error_handler) [Darwin]: Move work-around to the
bug filed as radar #10302855 from __gnat_error_handler ...
... to (__gnat_adjust_context_for_raise) [Darwin]: New.
(HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE) [Darwin]: Define.
(__gnat_error_handler) [Darwin]: Use __gnat_adjust_context_for_raise.
From-SVN: r181474
2011-11-18 13:19:25 +00:00
Paolo Carlini
72f1c34bd4
hash-long-double-aux.cc: Rename to...
...
2011-11-18 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash-long-double-aux.cc: Rename to...
* src/hash-long-double-tr1-aux.cc: ... this.
* src/compatibility-ldbl.cc: Adjust.
* src/hash_tr1.cc: Likewise.
* src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc.
* include/bits/functional_hash.h (hash<_Tp*>::operator(), specs
for integer types, hash<float>::operator(), hash<double>::operator(),
hash<long double>::operator()): Declare noexcept.
* include/debug/bitset (hash<__debug::bitset>::operator()): Likewise.
* include/debug/vector (hash<__debug::vector>::operator()): Likewise.
* include/std/system_error (hash<error_code>::operator()): Likewise.
* include/std/thread (hash<thread::id>::operator()): Likewise.
* include/std/bitset (hash<bitset>::operator()): Likewise.
* include/std/typeindex (hash<type_index>::operator()): Likewise.
* include/profile/bitset (hash<__profile::vector>::operator()):
Likewise.
* include/profile/vector (hash<__profile::vector>::operator()):
Likewise.
* include/ext/vstring.h (hash<__vstring>::operator(),
hash<__wvstring>::operator(), hash<__u16vstring>::operator(),
hash<__u32vstring>::operator()): Likewise.
* include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise.
* include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()):
Likewise.
* include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise.
* include/bits/basic_string.h (hash<string>::operator(),
hash<wstring>::operator(), hash<u16string>::operator(),
hash<u32string>::operator()): Likewise.
* include/bits/vector.tcc (hash<vector>::operator()): Likewise.
* include/bits/stl_bvector.h (hash<vector>::operator()): Likewise.
* libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of
throw().
From-SVN: r181473
2011-11-18 12:37:06 +00:00
Tristan Gingold
1e1ae0afd8
re PR target/49992 (lto-bootstrap reveals duplicate symbols on x86_64-apple-darwin11)
...
gcc/ada:
2011-11-18 Tristan Gingold <gingold@adacore.com>
Iain Sandoe <iains@gcc.gnu.org>
PR target/49992
* mlib-tgt-specific-darwin.adb (Archive_Indexer_Options): Remove.
* gcc-interface/Makefile.in (darwin): Remove ranlib special-casing
for Darwin.
Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>
From-SVN: r181470
2011-11-18 10:54:21 +00:00
Iain Sandoe
10eb188cac
re PR target/49992 (lto-bootstrap reveals duplicate symbols on x86_64-apple-darwin11)
...
toplevel:
PR target/49992
* configure.ac: Remove ranlib special-casing for Darwin.
* configure: Regenerate.
gcc:
PR target/49992
* configure.ac: Remove ranlib special-casing for Darwin.
* configure: Regenerate.
From-SVN: r181469
2011-11-18 10:52:32 +00:00
Uros Bizjak
fff6a306ae
re PR tree-optimization/51118 (ICE: tree check: expected tree that contains ‘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 10:54:02 +01:00
Jiangning Liu
f11656db09
* MAINTAINERS (Write After Approval): Add myself.
...
From-SVN: r181467
2011-11-18 07:44:19 +00:00
Jan Hubicka
108879aa86
re PR target/51134 (x86 memset/memcpy expansion is broken)
...
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-18 02:18:28 +00:00
Richard Henderson
1d794721ac
re PR libstdc++/51181 (libstdc++.so __sync_sub_and_fetch_4 linkage error 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-17 17:38:48 -08:00
GCC Administrator
a98f3def7e
Daily bump.
...
From-SVN: r181464
2011-11-18 00:18:46 +00:00
Jonathan Wakely
7e8870e0aa
typesizes.cc: Do not run on darwin.
...
* testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
on darwin.
From-SVN: r181460
2011-11-18 00:15:55 +00:00
Richard Henderson
f6d9912f6b
Merge branch 'rth/atomic/ppc'
...
From-SVN: r181459
2011-11-17 14:12:31 -08:00
Jonathan Wakely
f631ae2eb1
Remove accidentally committed duplicate ChangeLog entry.
...
From-SVN: r181458
2011-11-17 22:10:09 +00:00
Steve Ellcey
6725cc583f
re PR middle-end/51144 (r181279 possibly miscompilation of genmddeps)
...
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-17 21:22:11 +00:00
Andrew Pinski
6c1c875d6e
host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.
...
2011-11-17 Andrew Pinski <apinski@cavium.com>
* config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.
From-SVN: r181456
2011-11-17 13:01:08 -08:00
Jason Merrill
bb94892a9a
re PR c++/51186 (declaring main() with auto but without --std=c++11 gives inconsistent error messages)
...
PR c++/51186
* decl.c (grokdeclarator): Improve C++98 trailing return diagnostic.
From-SVN: r181455
2011-11-17 16:00:30 -05:00
Uros Bizjak
f6546dbc89
* lib/gcc-simulate-thread.exp (simulate-thread): Improve error message.
...
From-SVN: r181454
2011-11-17 22:00:16 +01:00
Andrew MacLeod
e351ae8587
builtins.c (expand_builtin): Remove 4th parameter representing weak/strong 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-17 20:51:51 +00:00
Uros Bizjak
29e339fd2e
gcc-simulate-thread.exp (simulate-thread): Run on all targets.
...
* 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-17 20:56:39 +01:00
Richard Henderson
c39169c82c
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.
From-SVN: r181451
2011-11-17 11:29:04 -08:00
Bin Cheng
cfb9952179
re PR rtl-optimization/50663 (conditional propagation missed in cprop.c pass)
...
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-17 17:11:16 +00:00
Jason Merrill
830dea94f2
class.c (add_implicitly_declared_members): Update move conditions.
...
N3203
* class.c (add_implicitly_declared_members): Update move
conditions.
From-SVN: r181445
2011-11-17 11:35:11 -05:00
Jason Merrill
a8e237782f
re PR c++/51137 ([C++0x] [4.7 Regression] ICE with -std=c++0x and virtual inheritance)
...
PR c++/51137
* class.c (build_base_path): Don't do calculation in templates.
From-SVN: r181444
2011-11-17 11:34:59 -05:00