- Sep 05, 2012
-
-
Dominique d'Humieres authored
2012-09-05 Dominique Dhumieres <dominiq@lps.ens.fr> PR fortran/54474 * gfortran.dg/coarray_poly_3.f90: Adjust error messages. From-SVN: r190977
-
Ulrich Drepper authored
(operator()): Use __generate() function of _M_nd. From-SVN: r190975
-
Paolo Carlini authored
/cp 2012-09-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/54191 * search.c (lookup_base): Add tsubst_flags_t parameter. (adjust_result_of_qualified_name_lookup, check_final_overrider): Adjust. * name-lookup.c (do_class_using_decl): Adjust. * typeck2.c (binfo_or_else, build_scoped_ref, build_m_component_ref): Likewise. * cvt.c (cp_convert_to_pointer, convert_to_pointer_force, build_up_reference): Likewise. * rtti.c (build_dynamic_cast_1): Likewise. * tree.c (maybe_dummy_object): Likewise. * call.c (build_conditional_expr_1, build_over_call): Likewise. * cp-tree.h (UNIQUELY_DERIVED_FROM_P, PUBLICLY_UNIQUELY_DERIVED_P): Remove. (enum base_access_flags, ba_quiet): Remove. (uniquely_derived_from_p, publicly_uniquely_derived_p): Declare. * except.c (can_convert_eh): Adjust. * decl.c (grokdeclarator): Likewise. * typeck.c (comp_except_types, build_class_member_access_expr, finish_class_member_access_expr, get_member_function_from_ptrfunc, build_static_cast_1, get_delta_difference_1): Likewise. * class.c (build_base_path, convert_to_base, build_vtbl_ref_1, warn_about_ambiguous_bases): Likewise. (uniquely_derived_from_p, publicly_uniquely_derived_p): Define. /testsuite 2012-09-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/54191 * g++.dg/cpp0x/sfinae39.C: New. From-SVN: r190969
-
Georg-Johann Lay authored
PR target/54461 * configure.ac (noconfigdirs,target=avr-*-*): Add target-newlib, target-libgloss if not configured --with-avrlibc=no. * configure: Regenerate. libgcc/ PR target/54461 * config.host (tmake_file,host=avr-*-*): Add avr/t-avrlibc if not configured --with-avrlibc=no. * config/avr/t-avrlibc: New file. * Makefile.in (FPBIT_FUNCS): filter-out LIB2FUNCS_EXCLUDE. (DPBIT_FUNCS): Ditto. (TPBIT_FUNCS): Ditto. gcc/ PR target/54461 * config.gcc (tm_file,target=avr-*-*): Add avr/avrlibc.h if not configured --with-avrlibc=no. (tm_defines,target=avr-*-*): Add WITH_AVRLIBC if not configured --with-avrlibc=no. * config/avr/avrlibc.h: New file. * config/avr/avr-c.c: Build-in define __WITH_AVRLIBC__ if not configured --with-avrlibc=no. * doc/invoke.texi (AVR Built-in Macros): Document __WITH_AVRLIBC__ From-SVN: r190967
-
Bin Cheng authored
From-SVN: r190965
-
Jason Merrill authored
PR c++/54441 * decl.c (reshape_init_class): Handle invalid initializer for 0-length array member. * error.c (dump_type_suffix): Correct handling of 0-length arrays. From-SVN: r190962
-
Jason Merrill authored
PR c++/54420 * cp-tree.h (LAMBDANAME_P): Remove. (LAMBDA_TYPE_P): Check CLASSTYPE_LAMBDA_EXPR instead. * cp-lang.c (cxx_dwarf_name): Likewise. * error.c (dump_aggr_type): Likewise. * semantics.c (begin_lambda_type): Set CLASSTYPE_LAMBDA_EXPR sooner. From-SVN: r190961
-
Ulrich Drepper authored
* include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class. * include/ext/random.tccAdd out-of-line functions for __gnu_cxx::normal_mv_distribution<>. * testsuite/26_numerics/random/normal_mv_distribution/ operators/equal.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ operators/serialize.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ operators/inequal.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ cons/default.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ cons/parms.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ requirements/explicit_instantiation/1.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ requirements/typedefs.cc: New file. From-SVN: r190960
-
GCC Administrator authored
From-SVN: r190957
-
- Sep 04, 2012
-
-
Ulrich Drepper authored
* libstdc++-v3/include/ext/random: Add __gnu_cxx::beta_distribution<> class. * libstdc++-v3/include/ext/random.tcc: Add out-of-line functions for __gnu_cxx::beta_distribution<>. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ operators/equal.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ operators/serialize.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ operators/inequal.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ cons/parms.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ cons/default.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ requirements/typedefs.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ requirements/explicit_instantiation/1.cc: New file. From-SVN: r190954
-
Teresa Johnson authored
Enhances the gcov program summary by adding a histogram of arc counter entries. This is used to compute working set information in the compiler for use by optimizations that need information on hot vs cold counter values or the rough working set size in terms of the number of counters. Each working set data point is the minimum counter value and number of counters required to reach a given percentage of the cumulative counter sum across the profiled execution (sum_all in the program summary). 2012-09-04 Teresa Johnson <tejohnson@google.com> * libgcc/libgcov.c (struct gcov_summary_buffer): New structure. (gcov_histogram_insert): New function. (gcov_compute_histogram): Ditto. (gcov_exit): Invoke gcov_compute_histogram, and perform merging of histograms during summary merging. * gcc/gcov-io.c (gcov_write_summary): Write out non-zero histogram entries to function summary along with an occupancy bit vector. (gcov_read_summary): Read in the histogram entries. (gcov_histo_index): New function. (void gcov_histogram_merge): Ditto. * gcc/gcov-io.h (gcov_type_unsigned): New type. (struct gcov_bucket_type): Ditto. (struct gcov_ctr_summary): Include histogram. (GCOV_TAG_SUMMARY_LENGTH): Update to include histogram entries. (GCOV_HISTOGRAM_SIZE): New macro. (GCOV_HISTOGRAM_BITVECTOR_SIZE): Ditto. * gcc/profile.c (NUM_GCOV_WORKING_SETS): Ditto. (gcov_working_sets): New global variable. (compute_working_sets): New function. (find_working_set): Ditto. (get_exec_counts): Invoke compute_working_sets. * gcc/coverage.c (read_counts_file): Merge histograms, and fix bug with accessing summary info for non-summable counters. * gcc/basic-block.h (gcov_type_unsigned): New type. (struct gcov_working_set_info): Ditto. (find_working_set): Declare. * gcc/gcov-dump.c (tag_summary): Dump out histogram. From-SVN: r190953
-
Teresa Johnson authored
Enhances the gcov program summary by adding a histogram of arc counter entries. This is used to compute working set information in the compiler for use by optimizations that need information on hot vs cold counter values or the rough working set size in terms of the number of counters. Each working set data point is the minimum counter value and number of counters required to reach a given percentage of the cumulative counter sum across the profiled execution (sum_all in the program summary). 2012-09-04 Teresa Johnson <tejohnson@google.com> * libgcc/libgcov.c (struct gcov_summary_buffer): New structure. (gcov_histogram_insert): New function. (gcov_compute_histogram): Ditto. (gcov_exit): Invoke gcov_compute_histogram, and perform merging of histograms during summary merging. * gcc/gcov-io.c (gcov_write_summary): Write out non-zero histogram entries to function summary along with an occupancy bit vector. (gcov_read_summary): Read in the histogram entries. (gcov_histo_index): New function. (void gcov_histogram_merge): Ditto. * gcc/gcov-io.h (gcov_type_unsigned): New type. (struct gcov_bucket_type): Ditto. (struct gcov_ctr_summary): Include histogram. (GCOV_TAG_SUMMARY_LENGTH): Update to include histogram entries. (GCOV_HISTOGRAM_SIZE): New macro. (GCOV_HISTOGRAM_BITVECTOR_SIZE): Ditto. * gcc/profile.c (NUM_GCOV_WORKING_SETS): Ditto. (gcov_working_sets): New global variable. (compute_working_sets): New function. (find_working_set): Ditto. (get_exec_counts): Invoke compute_working_sets. * gcc/coverage.c (read_counts_file): Merge histograms, and fix bug with accessing summary info for non-summable counters. * gcc/basic-block.h (gcov_type_unsigned): New type. (struct gcov_working_set_info): Ditto. (find_working_set): Declare. * gcc/gcov-dump.c (tag_summary): Dump out histogram. From-SVN: r190952
-
Diego Novillo authored
This patch fixes a bootstrap failure when using clang as the host compiler. Default arguments for class template member functions should be added in the declaration, not the definition. From Jason: > 8.3.6 says "Default arguments for a member function of a class template shall > be specified on the initial declaration of the member function within the > class template." PR bootstrap/54484 * vec.h (vec_t::embedded_init): Move default argument value to function declaration. From-SVN: r190951
-
Jason Merrill authored
PR c++/54198 * decl.c (check_default_argument): Set cp_unevaluated_operand around call to perform_implicit_conversion_flags. From-SVN: r190949
-
Eric Botcazou authored
* bb-reorder.c (gate_handle_reorder_blocks): Move around. (rest_of_handle_reorder_blocks): Likewise. (pass_reorder_blocks): Likewise. (gate_handle_partition_blocks): Likewise. From-SVN: r190948
-
Eric Botcazou authored
re PR rtl-optimization/54456 (ICE: in init_seqno, at sel-sched.c:6797 with -fschedule-insns -fselective-scheduling) PR rtl-optimization/54456 * sched-rgn.c (gate_handle_sched): Return 1 only if optimize > 0. From-SVN: r190947
-
Jason Merrill authored
PR c++/54437 PR c++/51213 * pt.c (fn_type_unification): Call coerce_template_parms before entering substitution context. From-SVN: r190946
-
Jason Merrill authored
From-SVN: r190945
-
Diego Novillo authored
This patch works around a parsing problem with g++ 4.3. The parser is failing to lookup calls to the template function reserve when called from other member functions: vec_t<T>::reserve<A> (...) The parser thinks that the '<' in reserve<A> is a less-than operation. This problem does not happen after 4.3. This code is going to change significantly, so this won't be needed soon. Tested on x86_64 with g++ 4.3 and g++ 4.6. PR bootstrap/54478 * vec.h (vec_t::alloc): Remove explicit type specification in call to reserve. (vec_t::copy): Likewise. (vec_t::reserve): Likewise. (vec_t::reserve_exact): Likewise. (vec_t::safe_splice): Likewise. (vec_t::safe_push): Likewise. (vec_t::safe_grow): Likewise. (vec_t::safe_grow_cleared): Likewise. (vec_t::safe_insert): Likewise. From-SVN: r190943
-
Richard Henderson authored
From-SVN: r190941
-
Steven Bosscher authored
PR bootstrap/54453 * include/Makefile.am: Fix regex. * include/Makefile.in: Regenerate. From-SVN: r190939
-
Richard Guenther authored
2012-09-04 Richard Guenther <rguenther@suse.de> * tree-ssa-pre.c (value_expressions): Make it a vector of bitmaps containing expression IDs. (add_to_value): Adjust. (sorted_array_from_bitmap_set): Likewise. (bitmap_set_replace_value): Likewise. (print_value_expressions): Likewise. (get_constant_for_value_id): Likewise. (get_representative_for): Likewise. (phi_translate_1): Likewise. (bitmap_find_leader): Likewise. (find_or_generate_expression): Likewise. (do_regular_insertion): Likewise. (init_pre): Likewise. (fini_pre): Likewise. From-SVN: r190938
-
Diego Novillo authored
PR bootstrap/54479 * vec.h (vec_t::copy): Add cast in call to reserve_exact. From-SVN: r190937
-
Eric Botcazou authored
From-SVN: r190932
-
Richard Guenther authored
2012-09-04 Richard Guenther <rguenther@suse.de> * tree-ssa-pre.c (add_to_exp_gen): Adjust. (make_values_for_phi): Do not add to PHI_GEN for FRE. (compute_avail): Stop processing after adding all defs to AVAIL_OUT for FRE. (init_pre): Do not allocate not needed bitmap sets for FRE. From-SVN: r190930
-
Diego Novillo authored
From-SVN: r190929
-
Christophe Lyon authored
2012-09-04 Christophe Lyon <christophe.lyon@st.com> * MAINTAINERS (Write After Approval): Add myself. From-SVN: r190928
-
Diego Novillo authored
This patch is the first step towards making the API for VEC use member functions. There are no user code modifications in this patch. Everything is still using the VEC_* macros, but this time they expand into member function calls. Because of the way VECs are used, this required some trickery. The API allows VECs to be NULL. This means that services like VEC_length(V) will return 0 when V is a NULL pointer. This is, of course, not possible to do if we call V->length(). For functions that either need to allocate/re-allocate the vector, or they need to handle NULL vectors, I implemented them as static member functions or free functions. Another wart that I did not address in this patch is the fact that vectors of pointers and vectors of objects have slightly different semantics when handling elements in the vector. In vector of pointers, we pass them around by value, but in vectors of objects, they are passed around via pointers. That's why we need TYPE * and TYPE ** overloads for some functions (e.g., vec_t::iterate). I will fix these two warts in a subsequent patch. The idea is to make vec_t a single-word structure, which acts as a handler for the structure containing the actual vector. Something like this: template<typename T> struct vec_t { struct vec_internal<T> *vec_; }; This has the advantage that we can now declare the actual vector instances as regular variables, instead of pointers. They will use the same amount of memory when embedded in other structures, and we will be able to allocate and reallocate the actual data without having to mutate the vector instance. All the functions that are now static members in vec_t, will become instance members in the new vec_t. This will mean that all the callers will need to be changed, of course. Tested on x86_64 and ppc64 with all languages plus ada, go and obj-c++. Rewrite VEC_* functions as member functions of vec_t. * vec.h: Update documentation. (ALONE_VEC_CHECK_INFO): Define. (ALONE_VEC_CHECK_DECL): Define. (ALONE_VEC_CHECK_PASS): Define. (struct vec_prefix): Rename field NUM to NUM_. Rename field ALLOC to ALLOC_. Update all users. (struct vec_t): Rename field PREFIX to PREFIX_. Rename field VEC to VEC_. Update all users. (vec_t::length): Rename from VEC_length_1. Update all users. (vec_t::empty): Rename from VEC_empty_1. Update all users. (vec_t::address): Rename from VEC_address_1. Update all users. (vec_address): New. (vec_t::last): Rename from VEC_last_1. Update all users. (vec_t::operator[]): Rename from VEC_index_1. Update all users. (vec_t::iterate): Rename from VEC_iterate_1. Update all users. (vec_t::embedded_size): Rename from VEC_embedded_size_1. Update all users. (vec_t::embedded_init): Rename from VEC_embedded_init_1. Update all users. (vec_t::alloc): Rename from VEC_alloc_1. Update all users. (vec_t::free): Rename from VEC_free_1. Update all users. (vec_t::copy): Rename from VEC_copy_1. Update all users. (vec_t::space): Rename from VEC_space_1. Update all users. (vec_t::reserve): Rename from VEC_reserve_1. Update all users. (vec_t::reserve_exact): Rename from VEC_reserve_exact_1. Update all users. (vec_t::splice): Rename from VEC_splice_1. Update all users. (vec_t::safe_splice): Rename from VEC_safe_splice_1. Update all users. (vec_t::quick_push): Rename from VEC_quick_push_1. Update all users. (vec_t::safe_push): Rename from VEC_safe_push_1. Update all users. (vec_t::pop): Rename from VEC_pop_1. Update all users. (vec_t::truncate): Rename from VEC_truncate_1. Update all users. (vec_t::safe_grow): Rename from VEC_safe_grow_1. Update all users. (vec_t::safe_grow_cleared): Rename from VEC_safe_grow_cleared_1. Update all users. (vec_t::replace): Rename from VEC_replace_1. Update all users. (vec_t::quick_insert): Rename from VEC_quick_insert_1. Update all users. (vec_t::safe_insert): Rename from VEC_safe_insert_1. Update all users. (vec_t::ordered_remove): Rename from VEC_ordered_remove_1. Update all users. (vec_t::unordered_remove): Rename from VEC_unordered_remove_1. Update all users. (vec_t::block_remove): Rename from VEC_block_remove_1. Update all users. (vec_t::lower_bound): Rename from VEC_lower_bound_1. Update all users. From-SVN: r190927
-
Steven Bosscher authored
* gimple.h (gimple_build_switch): Remove. (gimple_build_switch_vec): Promote to the new gimple_build_switch. (gimple_switch_default_label): Assert the default case label is really a default case label. (gimple_switch_set_default_label): Likewise. * gimple.c (gimple_build_switch_nlabels): Make sure a default label is passed in, and simplify accordingly. (gimple_build_switch): Removed. (gimple_build_switch_vec): Rename to gimple_build_switch. * gimplify.c (gimplify_switch_expr): Update gimple_build_switch use. * gimple-pretty-print.c (dump_gimple_switch): Do not accept a NULL case label. * stmt.c (expand_case): Simplify using the fact that every GIMPLE switch must have a default case. * tree-cfg.c (group_case_labels_stmt): Likewise. (verify_gimple_switch): Use gimple_switch_label in verifier to get the label at index 0, and verify that it is a valid default case. * except.c (sjlj_emit_dispatch_table): Rewrite construction of the switch for dispatching. * tree-eh.c (lower_try_finally_switch): Update gimple_build_switch use. (lower_eh_dispatch): Likewise. * tree-vrp.c (execute_vrp): Use gimple_switch_label to get the case label at index 0 before turning it into a default case label. * omp-low.c (expand_omp_sections): Update gimple_build_switch use. * tree-switch-conversion.c (emit_case_bit_tests): Get the default case label using gimple_switch_default_label. (collect_switch_conv_info): Likewise. (process_switch): Likewise. * doc/gimple.texi: Update documentation of gimple_build_switch. From-SVN: r190925
-
Georg-Johann Lay authored
re PR target/54476 ([avr] __builtin_avr_delay_cycles (-1ul) causes memory usage to explode on x86_64 host) PR target/54476 * config/avr/avr.c (avr_expand_delay_cycles): Mask operand with SImode. From-SVN: r190920
-
Bin Cheng authored
re PR target/45070 (Miscompiled c++ class with packed attribute on ARM with -Os optimizations (Qt 4.6.2)) PR target/45070 * config/arm/arm.c (thumb1_extra_regs_pushed): Handle return value of size less than 4 bytes by using macro ARM_NUM_INTS. (thumb1_unexpanded_epilogue): Use macro ARM_NUM_INTS. From-SVN: r190919
-
Richard Guenther authored
2012-09-04 Richard Guenther <rguenther@suse.de> PR tree-optimization/54458 * tree-ssa-threadupdate.c (thread_through_loop_header): If we turn the loop into one with multiple latches mark it so. * gcc.dg/torture/pr54458.c: New testcase. From-SVN: r190918
-
Senthil Kumar Selvaraj authored
PR target/54220 * config/avr/avr.c (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): New define to... (avr_allocate_stack_slots_for_args): ...this new static function. From-SVN: r190914
-
Christophe Lyon authored
2012-09-04 Christophe Lyon <christophe.lyon@linaro.org> * config/arm/arm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT by GEN_INT. (arm_emit_coreregs_64bit_shift): Likewise. From-SVN: r190912
-
Christophe Lyon authored
2012-09-04 Christophe Lyon <christophe.lyon@linaro.org> gcc/ * config/arm/arm.c (arm_evpc_neon_vext): New function. (arm_expand_vec_perm_const_1): Add call to arm_evpc_neon_vext. gcc/testsuite/ * gcc.target/arm/neon-vext.c: New test. * gcc.target/arm/neon-vext-execute.c: Ditto. From-SVN: r190911
-
Janus Weil authored
2012-09-04 Janus Weil <janus@gcc.gnu.org> PR fortran/54435 PR fortran/54443 * match.c (gfc_match_select_type): Make sure to only access CLASS_DATA for BT_CLASS. 2012-09-04 Janus Weil <janus@gcc.gnu.org> PR fortran/54243 PR fortran/54244 * gfortran.dg/select_type_29.f03: New. From-SVN: r190910
-
Oleg Endo authored
PR target/51244 * config/sh/sh.c (prepare_cbranch_operands): Pull out comparison canonicalization code into... * (sh_canonicalize_comparison): This new function. * config/sh/sh-protos.h: Declare it. * config/sh/sh.h: Use it in new macro CANONICALIZE_COMPARISON. * config/sh/sh.md (cbranchsi4): Remove TARGET_CBRANCHDI4 check and always invoke expand_cbranchsi4. From-SVN: r190909
-
GCC Administrator authored
From-SVN: r190908
-
- Sep 03, 2012
-
-
Andi Kleen authored
gcc/ 2012-09-03 Andi Kleen <ak@linux.intel.com> * tree-ssa-sccvn.c (vn_reference_fold_indirect): Initialize addr_offset always. From-SVN: r190905
-
Andrew Pinski authored
re PR tree-optimization/53395 (The LAPACK functions i(d|s)amax are more than two times slower after revision 187183) 2012-09-03 Andrew Pinski <apinski@cavium.com> PR tree-opt/53395 * tree-if-conv.c (constant_or_ssa_name): New function. (fold_build_cond_expr): New function. (predicate_scalar_phi): Use fold_build_cond_expr instead of build3. (predicate_mem_writes): Likewise. From-SVN: r190904
-