- Nov 08, 2011
-
-
Aldy Hernandez authored
From-SVN: r181154
-
Francois-Xavier Coudert authored
PR libfortran/47970 * intrinsics/c99_functions.c (round): Move higher in the file. From-SVN: r181153
-
Dodji Seketeli authored
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
-
Paolo Carlini authored
/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
-
Francois-Xavier Coudert authored
PR fortran/50334 * invoke.texi (-finit-*): Document interaction with -Wuninitialized. From-SVN: r181150
-
Quentin Neill authored
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
-
Paolo Carlini authored
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
-
Jonathan Wakely authored
* 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
-
Jason Merrill authored
PR c++/50848 * pt.c (tsubst_copy_and_build) [CALL_EXPR]: Don't crash if lookup finds a non-function. From-SVN: r181143
-
Ed Smith-Rowland authored
2011-11-08 Ed Smith-Rowland <3dw4rd@verizon.net> * include/precompiled/stdc++.h: Add cstdalign. From-SVN: r181142
-
Paolo Carlini authored
2011-11-07 Paolo Carlini <paolo.carlini@oracle.com> * include/std/complex (complex<>::real(), complex<>::imag()): Remove redundant const qualifiers. From-SVN: r181141
-
Jonathan Wakely authored
* 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
-
GCC Administrator authored
From-SVN: r181138
-
- Nov 07, 2011
-
-
Richard Henderson authored
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
-
Jason Merrill authored
PR c++/50863 * parser.c (cp_parser_initializer_list): Parse C99 array designators tentatively. From-SVN: r181132
-
Jason Merrill authored
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
-
Jonathan Wakely authored
* include/std/mutex (call_once): Store closure in __once_functor as bound function wrapper might not be copyable. From-SVN: r181128
-
Francois-Xavier Coudert authored
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
-
Kai Tietz authored
PR target/51007 * quadmath-imp.h (ieee854_float128): Adjust for ms-bitfield layout. From-SVN: r181125
-
Paolo Carlini authored
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
-
Jakub Jelinek authored
* 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
-
Anatoly Sokolov authored
* 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
-
Andrew MacLeod authored
2011-11-07 Andrew MacLeod <amacleod@redhat.com> * include/bits/atomic_base.h (atomic_thread_fence): Revert. (atomic_signal_fence): Revert. From-SVN: r181119
-
Dodji Seketeli authored
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
-
Uros Bizjak authored
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
-
Eric Botcazou authored
From-SVN: r181114
-
Andrew MacLeod authored
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 authored
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
-
Janus Weil authored
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
-
Georg-Johann Lay authored
* 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
-
Nathan Sidwell authored
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
-
Georg-Johann Lay authored
PR target/49313 * config/avr/lib1funcs.S (__divmodhi4, __divmodsi4): Tweak speed. From-SVN: r181104
-
Georg-Johann Lay authored
* config/avr/constraints.md (Cm2): New constraint for int -2. * config/avr/avr.md (addqi3): Use it. New alternatives for +/-2. (*negqihi2): New insn. From-SVN: r181103
-
Jason Merrill authored
PR c++/35688 * decl2.c (constrain_visibility): Return void. Add tmpl parm which gives the constraint priority over an attribute. (constrain_visibility_for_template, determine_visibility): Adjust. * pt.c (instantiate_class_template_1): Call determine_visibility. From-SVN: r181102
-
Jason Merrill authored
From-SVN: r181101
-
Jason Merrill authored
PR c++/33255 * decl.c (save_function_data): Clear local_typedefs. From-SVN: r181100
-
Jason Merrill authored
* decl.c (cp_finish_decl): Only make_tree_vector if we're calling check_initializer. From-SVN: r181099
-
Rainer Orth authored
* config.host (tmake_file): Correct comment. (bfin*-elf*): Remove bfin/t-elf from tmake_file, add t-libgcc-pic. (bfin*-uclinux*): Likewise. (bfin*-linux-uclibc*): Likewise. (xstormy16-*-elf): Add stormy16/t-stormy16 to tmake_file. * config/arm/t-elf (HOST_LIBGCC2_CFLAGS): Append instead of assigning. * config/arm/t-strongarm-elf (HOST_LIBGCC2_CFLAGS): Likewise. * config/avr/t-avr (HOST_LIBGCC2_CFLAGS): Likewise. * config/c6x/t-elf (HOST_LIBGCC2_CFLAGS): Likewise. * config/h8300/t-h8300 (HOST_LIBGCC2_CFLAGS): Likewise. * config/lm32/t-elf (HOST_LIBGCC2_CFLAGS): Likewise. * config/m32r/t-m32r (HOST_LIBGCC2_CFLAGS): Likewise. * config/mcore/t-mcore (HOST_LIBGCC2_CFLAGS): Likewise. * config/mips/t-elf (HOST_LIBGCC2_CFLAGS): Likewise. * config/mmix/t-mmix (HOST_LIBGCC2_CFLAGS): Likewise. * config/pdp11/t-pdp11 (HOST_LIBGCC2_CFLAGS): Likewise. * config/picochip/t-picochip (HOST_LIBGCC2_CFLAGS): Likewise. * config/stormy16/t-stormy16 (HOST_LIBGCC2_CFLAGS): Likewise. * config/t-openbsd-thread (HOST_LIBGCC2_CFLAGS): Likewise. * config/bfin/t-elf: Remove. * config/t-vxworks (HOST_LIBGCC2_CFLAGS): Remove. From-SVN: r181098
-
Rainer Orth authored
* config.host (*-*-rtems*): Add t-rtems to tmake_file. (i[34567]86-*-rtems*): Remove t-rtems from tmake_file. (lm32-*-elf*, lm32-*-rtems*): Split into ... (lm32-*-elf*): ... this. (lm32-*-rtems*): ... and this. Add to tmake_file. (m32r-*-rtems*): Add to tmake_file. (moxie-*-rtems*): Likewise. (sparc-*-rtems*): Likewise. Remove t-rtems from tmake_file. (sparc64-*-rtems*): Likewise. * config/t-rtems (HOST_LIBGCC2_CFLAGS): Use LIBGCC2_INCLUDES instead. From-SVN: r181097
-
H.J. Lu authored
2011-11-07 H.J. Lu <hongjiu.lu@intel.com> * dwarf2cfi.c (dwarf2out_frame_debug_expr): Check HARD_FRAME_POINTER_REGNUM instead of hard_frame_pointer_rtx in Rule 18. From-SVN: r181096
-