- 08 Nov, 2011 22 commits
-
-
* configure.tgt: Handle i386 like i[456]86. * config/generic/tls.h [!HAVE_ARCH_GTM_THREAD] (gtm_thr): Don't take address. * config/generic/tls.cc [!HAVE_ARCH_GTM_THREAD || !HAVE_ARCH_GTM_THREAD_DISP] (_gtm_thr_tls): New variable. From-SVN: r181163
Rainer Orth committed -
2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the option itself, to --enable-libstdcxx-visibility. * configure.ac: Adjust call. * doc/xml/manual/configure.xml: Update. * configure: Regenerate. From-SVN: r181162
Paolo Carlini committed -
PR rtl-optimization/47698 * ifcvt.c (noce_operand_ok): Move around comment. From-SVN: r181161
Eric Botcazou committed -
re PR regression/50999 (g++.dg/lto/20081109 execute -O2 -flto -flto-partition=1to1 -fno-use-linker-plugin) 2011-11-08 Richard Guenther <rguenther@suse.de> PR lto/50999 * lto-opts.c (append_to_collect_gcc_options): Split out from... (lto_write_options): ... here. Prepend frontend specific flags. From-SVN: r181160
Richard Guenther committed -
2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall warnings. * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise. From-SVN: r181159
Paolo Carlini committed -
sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask 0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128. * config/i386/sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask 0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128. From-SVN: r181158
Jakub Jelinek committed -
* tree-vect-stmts.c (vectorizable_call): Add SLP_NODE argument. Handle vectorization of SLP calls. (vect_analyze_stmt): Adjust caller, add call to it for SLP too. (vect_transform_stmt): Adjust vectorizable_call caller, remove assertion. * tree-vect-slp.c (vect_get_and_check_slp_defs): For calls start with op_idx 3. (vect_build_slp_tree): Allow CALL_EXPR. * lib/target-supports.exp (check_effective_target_vect_call_sqrtf, check_effective_target_vect_call_copysignf, check_effective_target_vect_call_lrint): New procedures. * gcc.dg/vect/vect.exp: Run fast-math-bb-slp* tests using $VECT_SLP_CFLAGS with -ffast-math. * gcc.dg/vect/fast-math-vect-call-1.c: New test. * gcc.dg/vect/fast-math-vect-call-2.c: New test. * gcc.dg/vect/fast-math-bb-slp-call-1.c: New test. * gcc.dg/vect/fast-math-bb-slp-call-2.c: New test. From-SVN: r181157
Jakub Jelinek committed -
PR libstdc++/51018 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run on netbsd. From-SVN: r181156
Jonathan Wakely committed -
gimple-fold.c (canonicalize_constructor_val): Make sure we have referenced vars setup before adding to them. 2011-11-08 Richard Guenther <rguenther@suse.de> * gimple-fold.c (canonicalize_constructor_val): Make sure we have referenced vars setup before adding to them. From-SVN: r181155
Richard Guenther committed -
From-SVN: r181154
Aldy Hernandez committed -
PR libfortran/47970 * intrinsics/c99_functions.c (round): Move higher in the file. From-SVN: r181153
Francois-Xavier Coudert committed -
gcc/cp/ * decl.c (start_decl): Update comment. * error.c (dump_alias_template_specialization): Dump the context of the specialization. * parser.c (cp_parser_alias_declaration): Call pop_scope on the pushed scope yielded by start_decl. gcc/testsuite * g++.dg/cpp0x/alias-decl-11.C: New test. From-SVN: r181152
Dodji Seketeli committed -
/cp 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50864 * parser.c (cp_parser_postfix_dot_deref_expression): Reject invalid uses of '->' and '.' as postfix-expression in namespace scope. /testsuite 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50864 * g++.dg/parse/template26.C: New. * g++.dg/template/crash45.C: Adjust dg-error string. From-SVN: r181151
Paolo Carlini committed -
PR fortran/50334 * invoke.texi (-finit-*): Document interaction with -Wuninitialized. From-SVN: r181150
Francois-Xavier Coudert committed -
2011-11-07 Quentin Neill <quentin.neill@amd.com> * compare_tests: Add ability to compare all .sum files from two build directories. From-SVN: r181149
Quentin Neill committed -
2011-11-07 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/51018 * include/profile/impl/profiler_node.h (__stack_hash:: operator()(__stack_t)): Just use std::size_t everywhere. From-SVN: r181147
Paolo Carlini committed -
* include/std/future (__future_base::_Ptr): Use alias-declaration. (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay instead of remove_reference so that cv-quals are removed. From-SVN: r181145
Jonathan Wakely committed -
PR c++/50848 * pt.c (tsubst_copy_and_build) [CALL_EXPR]: Don't crash if lookup finds a non-function. From-SVN: r181143
Jason Merrill committed -
2011-11-08 Ed Smith-Rowland <3dw4rd@verizon.net> * include/precompiled/stdc++.h: Add cstdalign. From-SVN: r181142
Ed Smith-Rowland committed -
2011-11-07 Paolo Carlini <paolo.carlini@oracle.com> * include/std/complex (complex<>::real(), complex<>::imag()): Remove redundant const qualifiers. From-SVN: r181141
Paolo Carlini committed -
* include/bits/ptr_traits.h (__rebind): Replace with... (rebind): Implement using alias-declaration. * include/ext/pointer.h (__rebind): Replace with... (rebind): Implement using alias-declaration. * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits): Replace with... (rebind_alloc, rebind_traits): Implement using alias-declaration. * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of __rebind_alloc. * include/std/scoped_allocator (rebind): Likewise. From-SVN: r181139
Jonathan Wakely committed -
From-SVN: r181138
GCC Administrator committed
-
- 07 Nov, 2011 18 commits
-
-
This allows a target which implements the __sync interfaces in libgcc to continue to use them transparently with the new __atomic builtins. It is assumed that these libgcc routines DO NOT use spinlocks. This is true of all extant libgcc instances. * optabs.h (OTI_sync_compare_and_swap, OTI_sync_lock_test_and_set, OTI_sync_old_add, OTI_sync_old_sub, OTI_sync_old_ior, OTI_sync_old_and, OTI_sync_old_xor, OTI_sync_old_nand, OTI_sync_new_add, OTI_sync_new_sub, OTI_sync_new_ior, OTI_sync_new_and, OTI_sync_new_xor, OTI_sync_new_nand): Move and rename from the direct_optab_index enum. (sync_compare_and_swap_optab, sync_lock_test_and_set_optab, sync_old_add_optab, sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab, sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab, sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab, sync_new_xor_optab, sync_new_nand_optab): Read from the optab_table, not the direct_optab_table. (init_sync_libfuncs): Declare. (can_compare_and_swap_p): Update parameters. * optabs.c (init_sync_libfuncs_1, init_sync_libfuncs): New. (can_compare_and_swap_p): Add allow_libcall parameter; if true, test for the legacy compare-and-swap libcall. (expand_atomic_exchange): Use the legacy test-and-set libcall. (expand_atomic_compare_and_swap): Use the legacy CAS libcall. (struct atomic_op_functions): Update for optab type changes. (maybe_emit_op): Likewise. (expand_atomic_fetch_op): Use the legacy fetch-op libcalls. * builtins.c (fold_builtin_atomic_always_lock_free): Update call to can_compare_and_swap_p. * omp-low.c (expand_omp_atomic_fetch_op): Likewise. (expand_omp_atomic_pipeline): Likewise. * genopinit.c (optabs): Make sync_old_*_optab, sync_new_*_optab, sync_compare_and_swap_optab, sync_lock_test_and_set_optab regular optabs. From-SVN: r181134
Richard Henderson committed -
PR c++/50863 * parser.c (cp_parser_initializer_list): Parse C99 array designators tentatively. From-SVN: r181132
Jason Merrill committed -
re PR c++/50870 ([C++0x] [4.6/4.7 Regression] ICE with decltype, operator->, and default template arguments) PR c++/50870 * pt.c (tsubst_copy): Handle NAMESPACE_DECL. (tsubst_copy_and_build) [COMPONENT_REF]: Handle a still-dependent object. From-SVN: r181131
Jason Merrill committed -
* include/std/mutex (call_once): Store closure in __once_functor as bound function wrapper might not be copyable. From-SVN: r181128
Jonathan Wakely committed -
PR libfortran/49188 PR libfortran/49336 * invoke.texi: Fix documentation of fsign-zero option. Remove contractions. * intrinsic.texi: Fix ATAN2 documentation for signed zeros. Remove contractions. * gfortran.texi: Remove contractions. From-SVN: r181127
Francois-Xavier Coudert committed -
PR target/51007 * quadmath-imp.h (ieee854_float128): Adjust for ms-bitfield layout. From-SVN: r181125
Kai Tietz committed -
2011-11-07 Paolo Carlini <paolo.carlini@oracle.com> * pt.c (tsubst_copy_and_build): Fix qualified_name_lookup_error call in case COMPONENT_REF. From-SVN: r181124
Paolo Carlini committed -
* config/i386/i386-bultin-types.def (V8SI_FTYPE_V4DF_V4DF): Add. * config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VEC_PACK_SFIX256. (bdesc_args): Add __builtin_ia32_vec_pack_sfix256. (ix86_expand_args_builtin): Handle V8SI_FTYPE_V4DF_V4DF. (ix86_builtin_vectorized_function): Also vectorize lrint using 256-bit vectors for -mavx. From-SVN: r181122
Jakub Jelinek committed -
* config/cris/constraints.md: New file. * config/cris/cris.h (REG_CLASS_FROM_LETTER, CONSTRAINT_LEN, CRIS_CONST_OK_FOR_LETTER_P, CONST_OK_FOR_CONSTRAINT_P, CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_MEMORY_CONSTRAINT, EXTRA_CONSTRAINT, EXTRA_CONSTRAINT_Q, EXTRA_CONSTRAINT_R, EXTRA_CONSTRAINT_T, EXTRA_CONSTRAINT_S, EXTRA_CONSTRAINT_U): Remove. * config/cris/cris.c: Incule "tm-constrs.h". (cris_print_operand): Use satisfies_constraint_O. (cris_normal_notice_update_cc, cris_rtx_costs): Use satisfies_constraint_I. (cris_address_cost): Use satisfies_constraint_L. * config/cris/cris.md: Include "constraints.md". (*mov_side<mode>, *mov_sidesisf, *mov_side<mode>_mem, *mov_sidesisf_mem, *clear_side<mode>, *ext_sideqihi, *ext_side<mode>si, *op_side<mode>, *op_swap_side<mode>, *extopqihi_side, *extop<mode>si_side, *extopqihi_swap_side, *extop<mode>si_swap_side): Use satisfies_constraint_N and satisfies_constraint_J. (moversideqi movemsideqi mover2side peephole2): Use satisfies_constraint_N and satisfies_constraint_J. (andu peephole2): Use satisfies_constraint_I and satisfies_constraint_O. From-SVN: r181120
Anatoly Sokolov committed -
2011-11-07 Andrew MacLeod <amacleod@redhat.com> * include/bits/atomic_base.h (atomic_thread_fence): Revert. (atomic_signal_fence): Revert. From-SVN: r181119
Andrew MacLeod committed -
gcc/cp/ * cp-tree.h (TYPE_DECL_ALIAS_P, TYPE_ALIAS_P) (DECL_TYPE_TEMPLATE_P, DECL_ALIAS_TEMPLATE_P): New accessor macros. (TYPE_TEMPLATE_INFO): Get template info of an alias template specializations from its TYPE_DECL. (SET_TYPE_TEMPLATE_INFO): Set template info of alias template specializations into its TYPE_DECL. (DECL_CLASS_TEMPLATE_P): Re-write using the new DECL_TYPE_TEMPLATE_P. (enum cp_decl_spec): Add new ds_alias enumerator. (alias_type_or_template_p, alias_template_specialization_p): Declare new functions. * parser.c (cp_parser_alias_declaration): New static function. (cp_parser_check_decl_spec): Add "using" name for the `alias' declspec. (cp_parser_type_name): Update comment. Support simple-template-id representing alias template specializations in c++0x mode. (cp_parser_qualifying_entity): Update comment. Use cp_parser_type_name. (cp_parser_block_declaration): Handle alias-declaration in c++11. Update comment. (cp_parser_template_id): Handle specializations of alias templates. (cp_parser_member_declaration): Add alias-declaration production to comment. Support alias-declarations. (cp_parser_template_declaration_after_export): Handle alias templates in c++11. * decl.c (make_typename_type, make_unbound_class_template): Accept alias templates. (grokdeclarator): Set TYPE_DECL_ALIAS_P on alias declarations. * decl2.c (grokfield): Move template creation after setting up the TYPE_DECL of the alias, so that the TEMPLATE_DECL of the alias template actually carries the right type-id of the alias declaration. * pt.c (alias_type_or_template_p) (alias_template_specialization_p): Define new public functions. (maybe_process_partial_specialization): Reject partial specializations of alias templates. (primary_template_instantiation_p): Consider alias template instantiations. (push_template_decl_real): Assert that TYPE_DECLs of alias templates are different from those of class template. Store template info onto the TYPE_DECL of the alias template. (convert_template_argument): Strip aliases from template arguments. (lookup_template_class_1): Handle the creation of the specialization of an alias template. (tsubst_decl): Create a substituted copy of the TYPE_DECL of an member alias template. (tsubst): Handle substituting into the type of an alias template. Handle substituting UNBOUND_CLASS_TEMPLATE into BOUND_TEMPLATE_TEMPLATE_PARM. (do_type_instantiation): Better diagnostics when trying to explicitely instantiate a non-class template. * search.c (lookup_field_1, lookup_field_r): Support looking up alias templates. * semantics.c (finish_template_type): For instantiations of alias templates, return the TYPE_DECL of the actual alias and not the one of the aliased type. * error.c (dump_alias_template_specialization): New static function. (dump_type): Handle printing of alias templates and their specializations. templates. (dump_aggr_type): For specialization of alias templates, fetch arguments from the right place. (dump_decl): Print an alias-declaration like `using decl = type;' (dump_template_decl): Support printing of alias templates. gcc/testsuite/ * g++.dg/cpp0x/alias-decl-0.C: New test case. * g++.dg/cpp0x/alias-decl-1.C: Likewise. * g++.dg/cpp0x/alias-decl-3.C: Likewise. * g++.dg/cpp0x/alias-decl-4.C: Likewise. * g++.dg/cpp0x/alias-decl-6.C: Likewise. * g++.dg/cpp0x/alias-decl-7.C: Likewise. * g++.dg/cpp0x/alias-decl-8.C: Likewise. * g++.dg/cpp0x/alias-decl-9.C: Likewise. * g++.dg/cpp0x/alias-decl-10.C: Likewise. * g++.dg/ext/alias-decl-attr1.C: Likewise. * g++.dg/ext/alias-decl-attr2.C: Likewise. * g++.dg/ext/alias-decl-attr3.C: Likewise. * g++.dg/ext/alias-decl-attr4.C: Likewise. From-SVN: r181118
Dodji Seketeli committed -
i386.c (ix86_builtin_vectorized_function): Handle BUILT_IN_IRINT, BUILT_IN_IRINTF, BUILT_IN_LLRINT and BUILT_IN_LLRINTF. * config/i386/i386.c (ix86_builtin_vectorized_function): Handle BUILT_IN_IRINT, BUILT_IN_IRINTF, BUILT_IN_LLRINT and BUILT_IN_LLRINTF. From-SVN: r181116
Uros Bizjak committed -
From-SVN: r181114
Eric Botcazou committed -
optabs.c (get_atomic_op_for_code): Fill in optab table at runtime so SWITCHABLE_TARGET can change the valuies... 2011-11-07 Andrew MacLeod <amacleod@redhat.com> * optabs.c (get_atomic_op_for_code): Fill in optab table at runtime so SWITCHABLE_TARGET can change the valuies during compilation. (expand_atomic_fetch_op): handle parameter changes ripples for get_atomic_op_for_code call. From-SVN: r181112
Andrew MacLeod committed -
2011-11-07 Andrew MacLeod <amacleod@redhat.com> libstdc++-v3 * include/bits/atomic_base.h (atomic_thread_fence): Call builtin. (atomic_signal_fence): Call builtin. (atomic_flag::test_and_set): Call __atomic_exchange when it is lockfree, otherwise fall back to call __sync_lock_test_and_set. (atomic_flag::clear): Call __atomic_store when it is lockfree, otherwise fall back to call __sync_lock_release. gcc * doc/extend.texi: Docuemnt behaviour change for __atomic_exchange and __atomic_store. * optabs.c (expand_atomic_exchange): Expand to __sync_lock_test_and_set only when originated from that builtin. (expand_atomic_store): Expand to __sync_lock_release when originated from that builtin. * builtins.c (expand_builtin_sync_lock_test_and_set): Add flag that expand_atomic_exchange call originated from here. (expand_builtin_sync_lock_release): Add flag that expand_atomic_store call originated from here. (expand_builtin_atomic_exchange): Add origination flag. (expand_builtin_atomic_store): Add origination flag. * expr.h (expand_atomic_exchange, expand_atomic_store): Add boolean parameters to indicate implementation fall back options. From-SVN: r181111
Andrew MacLeod committed -
2011-11-07 Janus Weil <janus@gcc.gnu.org> PR fortran/50919 * class.c (add_proc_comp): Don't add non-overridable procedures to the vtable. * resolve.c (resolve_typebound_function,resolve_typebound_subroutine): Don't generate a dynamic _vptr call for non-overridable procedures. 2011-11-07 Janus Weil <janus@gcc.gnu.org> PR fortran/50919 * gfortran.dg/typebound_call_21.f03: New. From-SVN: r181107
Janus Weil committed -
* config/avr/avr.c (output_reload_in_const): Can handle CONSTANT_P now, not only CONST_INT and CONST_DOUBLE. (output_movqi): Use output_reload_in_const. (output_reload_inhi): Ditto. (output_reload_insisf): Move assertion to output_reload_in_const. (avr_out_reload_inpsi): Ditto. From-SVN: r181106
Georg-Johann Lay committed -
libgcc/ * libgcov.c (struct gcov_fn_buffer): New struct. (buffer_fn_data): New helper. (gcov_exit): Rework for new gcov data structures. gcc/ * gcov.c (object_summary): Replace with ... (object_runs): ... this. (process_file): Remove functions with no data. (generate_results): Ignore files with no lines. (release_function): New helper, broken out of ... (release_structures): ... here. Use it. (read_count_file): Adjust for new data file format. (output_lines): Use object_runs. * gcov-io.h (GCOV_TAG_OBJECT_SUMMARY): Obsolete. (struct gcov_ctr_info): Move definition. (struct gcov_fn_info): Add key field, use gcov_ctr_info for trailing array. (struct gcov_info): Add merge function array, remove mask and counts. Trailing array is array of pointers to function info. * coverage.c (struct function_list): Replace counter numbers with counter arrays. Add fndecl field. GTYify. (counts_entry): Remove chain workspace. (functions_head): GTYify. (prg_n_ctrs): Remove. (fn_v_ctrs): New. (tree_ctr_tables): Remove. (read_counts_file): Cope with blank entries and expect program summaries before functions. Don't warn on missing entries. (coverage_counter_alloc): Allocate individual function arrays. (tree_coverage_counter_ref, tree_coverage_counter_addr): Adjust for individual function arrays. (coverage_end_function): GTYify function list object. Finalize function's counter arrays. (build_var): New. Create a counter-related variable with appropriate linkage. (build_fn_info_type): Adjust for new runtime structure. (build_fn_info_value): Rename to ... (build_fn_info): ... here. Build new format data. (build_ctr_info_type, build_ctr_info_value): Remove. (build_info_type): New. Build new format data structure. (build_info): Adjust for new format data. (create_coverage): Likewise. * gcov-dump.c (tag_function): Recognize placeholders. gcc/testsuite/ * gcc.dg/profile-dir-1.c: Adjust final scan. * gcc.dg/profile-dir-2.c: Adjust final scan. * gcc.dg/profile-dir-3.c: Adjust final scan. * gcc.misc-tests/gcov.exp: Adjust regexp. * gcc.misc-tests/gcov-12.c: New. * gcc.misc-tests/gcov-13.c: New. * gcc.misc-tests/gcovpart-13b.c: New. * gcc.misc-tests/gcov-14.c: New. From-SVN: r181105
Nathan Sidwell committed
-