- 12 Dec, 2011 9 commits
-
-
2011-12-12 Thomas Quinot <quinot@adacore.com> * exp_disp.adb: Minor reformatting. 2011-12-12 Tristan Gingold <gingold@adacore.com> * gnatls.adb (Search_RTS): New procedure. (Scan_Ls_Arg): Move code that search the RTS. (Gnatls): search the RTS later. * prj-env.ads, prj-env.adb (Get_Runtime_Path): New function. 2011-12-12 Ed Falis <falis@adacore.com> * sysdep.c: Fix treatment of VxWorks task options so that run-times built with __SPE__ get option VX_SPE_TASK while others get VX_FP_TASK. 2011-12-12 Bob Duff <duff@adacore.com> * sem_type.adb, sem_type.ads, sem_ch4.adb, treepr.adb, treepr.ads: Minor cleanup and fiddling with debug printouts. 2011-12-12 Vincent Celier <celier@adacore.com> * prj-nmsc.adb (Get_Directories): For a non extending project, always get a declared object and/or exec directory if it already exists, even when there are no sources, but do not create them. 2011-12-12 Bob Duff <duff@adacore.com> * sem_res.adb (Resolve): Deal with the case where an abstract operator is called with operands of type universal_integer. 2011-12-12 Thomas Quinot <quinot@adacore.com> * par_sco.adb: Minor fix to dominance marker referencing WHILE decision. From-SVN: r182227
Arnaud Charlet committed -
2011-12-12 Tristan Gingold <gingold@adacore.com> * mlib-tgt-specific-xi.adb: (Get_Target_Prefix): Simplify code. 2011-12-12 Thomas Quinot <quinot@adacore.com> * par_sco.adb: Adjust dominant marker for branches of CASE statements. 2011-12-12 Thomas Quinot <quinot@adacore.com> * gsocket.h, s-oscons-tmplt.c: Ensure we do not include any system header file prior to redefining FD_SETSIZE. 2011-12-12 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): In a generic context the aspect expressions may not have been preanalyzed if there was no previous freeze point, so the expressions must be preanalyzed now, and there is no conformance to check for visibility changes. 2011-12-12 Matthew Heaney <heaney@adacore.com> * a-convec.adb, a-coinve.adb, a-cobove.adb (Iterator): Use subtype Index_Type'Base for Index component (Finalize): Remove unnecessary access check (First, Last): Cursor return value depends on iterator index value (Iterate): Use start position as iterator index value (Next, Previous): Forward to corresponding cursor-based operation. * a-cborma.adb (Iterate): Properly initialize iterator object (with 0 as node index). From-SVN: r182226
Arnaud Charlet committed -
re PR libgcj/50053 (jc1 doesn't emit static initializer or initializer code for super class without -findirect-dispatch.) PR libgcj/50053 * java/lang/natClass.cc (java::lang::Class::newInstance): Special case member-call for 32-bit IA native Window target. From-SVN: r182225
Kai Tietz committed -
2011-12-12 Robert Dewar <dewar@adacore.com> * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting. 2011-12-12 Steve Baird <baird@adacore.com> * sem_ch3.adb (Check_Completion): Improve a comment. 2011-12-12 Tristan Gingold <gingold@adacore.com> * cstand.adb: Minor comment fix. From-SVN: r182224
Arnaud Charlet committed -
2011-12-12 Richard Guenther <rguenther@suse.de> PR lto/51262 * tree.c (cp_free_lang_data): No longer clear anonymous names. * g++.dg/opt/pr51262.C: New testcase. From-SVN: r182221
Richard Guenther committed -
gcc: * config/darwin-sections.def (zobj_const_data_section): Fix over- length section name. From-SVN: r182220
Iain Sandoe committed -
From-SVN: r182219
Revital Eres committed -
* config/rs6000/rs6000.c (rs6000_expand_interleave): Use BYTES_BIG_ENDIAN, not TARGET_BIG_ENDIAN. From-SVN: r182218
Richard Henderson committed -
From-SVN: r182217
GCC Administrator committed
-
- 11 Dec, 2011 13 commits
-
-
PR tree-optimization/51485 * tree-vect-data-refs.c (vect_analyze_data_refs): Give up on DRs in call stmts. * g++.dg/vect/pr51485.cc: New test. From-SVN: r182212
Jakub Jelinek committed -
2011-12-11 Tobias Burnus <burnus@net-b.de> PR fortran/50923 * trans-decl.c (generate_local_decl): Set TREE_NO_WARNING only if the front end has printed a warning. (gfc_generate_function_code): Fix unset-result warning. 2011-12-11 Tobias Burnus <burnus@net-b.de> PR fortran/50923 * gfortran.dg/warn_function_without_result_2.f90: New. From-SVN: r182211
Tobias Burnus committed -
2011-12-11 Paul Thomas <pault@gcc.gnu.org> Tobias Burnus <burnus@gcc.gnu.org> PR fortran/41539 PR fortran/43214 PR fortran/43969 PR fortran/44568 PR fortran/46356 PR fortran/46990 PR fortran/49074 * interface.c(symbol_rank): Return the rank of the _data component of class objects. (compare_parameter): Also compare the derived type of the class _data component for type mismatch. Similarly, return 1 if the formal and _data ranks match. (compare_actual_formal): Do not compare storage sizes for class expressions. It is an error if an actual class array, passed to a formal class array is not full. * trans-expr.c (gfc_class_data_get, gfc_class_vptr_get, gfc_vtable_field_get, gfc_vtable_hash_get, gfc_vtable_size_get, gfc_vtable_extends_get, gfc_vtable_def_init_get, gfc_vtable_copy_get): New functions for class API. (gfc_conv_derived_to_class): For an array reference in an elemental procedure call retain the ss to provide the scalarized array reference. Moved in file. (gfc_conv_class_to_class): New function. (gfc_conv_subref_array_arg): Use the type of the class _data component as a basetype. (gfc_conv_procedure_call): Ensure that class array expressions have both the _data reference and an array reference. Use gfc_conv_class_to_class to handle class arrays for elemental functions in scalarized loops, class array elements and full class arrays. Use a call to gfc_conv_subref_array_arg in order that the copy-in/copy-out for passing class arrays to derived type arrays occurs correctly. (gfc_conv_expr): If it is missing, add the _data component between a class object or component and an array reference. (gfc_trans_class_array_init_assign): New function. (gfc_trans_class_init_assign): Call it for array expressions. * trans-array.c (gfc_add_loop_ss_code): Do not use a temp for class scalars since their size will depend on the dynamic type. (build_class_array_ref): New function. (gfc_conv_scalarized_array_ref): Call build_class_array_ref. (gfc_array_init_size): Add extra argument, expr3, that represents the SOURCE argument. If present,use this for the element size. (gfc_array_allocate): Also add argument expr3 and use it when calling gfc_array_init_size. (structure_alloc_comps): Enable class arrays. * class.c (gfc_add_component_ref): Carry over the derived type of the _data component. (gfc_add_class_array_ref): New function. (class_array_ref_detected): New static function. (gfc_is_class_array_ref): New function that calls previous. (gfc_is_class_scalar_expr): New function. (gfc_build_class_symbol): Throw not implemented error for assumed size class arrays. Remove error that prevents CLASS arrays. (gfc_build_class_symbol): Prevent pointer/allocatable conflict. Also unset codimension. (gfc_find_derived_vtab): Make 'copy' elemental and set the intent of the arguments accordingly.: * trans-array.h : Update prototype for gfc_array_allocate. * array.c (gfc_array_dimen_size): Return failure if class expr. (gfc_array_size): Likewise. * gfortran.h : New prototypes for gfc_add_class_array_ref, gfc_is_class_array_ref and gfc_is_class_scalar_expr. * trans-stmt.c (trans_associate_var): Exclude class targets from test. Move the allocation of the _vptr to an earlier time for class objects. (trans_associate_var): Assign the descriptor directly for class arrays. (gfc_trans_allocate): Add expr3 to gfc_array_allocate arguments. Convert array element references into sections. Do not invoke gfc_conv_procedure_call, use gfc_trans_call instead. * expr.c (gfc_get_corank): Fix for BT_CLASS. (gfc_is_simply_contiguous): Exclude class from test. * trans.c (gfc_build_array_ref): Include class array refs. * trans.h : Include prototypes for class API functions that are new in trans-expr. Define GFC_DECL_CLASS(node). * resolve.c (check_typebound_baseobject ): Remove error for non-scalar base object. (resolve_allocate_expr): Ensure that class _data component is present. If array, call gfc_expr_to_intialize. (resolve_select): Remove scalar error for SELECT statement as a temporary measure. (resolve_assoc_var): Update 'target' (aka 'selector') as needed. Ensure that the target expression has the right rank. (resolve_select_type): Ensure that target expressions have a valid locus. (resolve_allocate_expr, resolve_fl_derived0): Fix for BT_CLASS. * trans-decl.c (gfc_get_symbol_decl): Set GFC_DECL_CLASS, where appropriate. (gfc_trans_deferred_vars): Get class arrays right. * match.c(select_type_set_tmp): Add array spec to temporary. (gfc_match_select_type): Allow class arrays. * check.c (array_check): Ensure that class arrays have refs. (dim_corank_check, dim_rank_check): Retrun success if class. * primary.c (gfc_match_varspec): Fix for class arrays and co-arrays. Make sure that class _data is present. (gfc_match_rvalue): Handle class arrays. *trans-intrinsic.c (gfc_conv_intrinsic_size): Add class array reference. (gfc_conv_allocated): Add _data component to class expressions. (gfc_add_intrinsic_ss_code): ditto. * simplify.c (simplify_cobound): Fix for BT_CLASS. (simplify_bound): Return NULL for class arrays. (simplify_cobound): Obtain correct array_spec. Use cotype as appropriate. Use arrayspec for bounds. 2011-12-11 Paul Thomas <pault@gcc.gnu.org> Tobias Burnus <burnus@gcc.gnu.org> PR fortran/41539 PR fortran/43214 PR fortran/43969 PR fortran/44568 PR fortran/46356 PR fortran/46990 PR fortran/49074 * gfortran.dg/class_array_1.f03: New. * gfortran.dg/class_array_2.f03: New. * gfortran.dg/class_array_3.f03: New. * gfortran.dg/class_array_4.f03: New. * gfortran.dg/class_array_5.f03: New. * gfortran.dg/class_array_6.f03: New. * gfortran.dg/class_array_7.f03: New. * gfortran.dg/class_array_8.f03: New. * gfortran.dg/coarray_poly_1.f90: New. * gfortran.dg/coarray_poly_2.f90: New. * gfortran.dg/coarray/poly_run_1.f90: New. * gfortran.dg/coarray/poly_run_2.f90: New. * gfortran.dg/class_to_type_1.f03: New. * gfortran.dg/type_to_class_1.f03: New. * gfortran.dg/typebound_assignment_3.f03: Remove the error. * gfortran.dg/auto_dealloc_2.f90: Occurences of __builtin_free now 2. * gfortran.dg/class_19.f03: Occurences of __builtin_free now 8. Co-Authored-By: Tobias Burnus <burnus@gcc.gnu.org> From-SVN: r182210
Paul Thomas committed -
2011-12-11 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/50690 * frontend-passes.c (in_omp_workshare): New variable. (cfe_expr_0): Don't eliminiate common function if it would put the variable immediately into a WORKSHARE construct. (optimize_namespace): Set in_omp_workshare. (gfc_code_walker): Keep track of OMP PARALLEL and OMP WORKSHARE constructs. 2011-12-11 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/50690 * gfortran.dg/gomp/workshare2.f90: New test. * gfortran.dg/gomp/workshare3.f90: New test. From-SVN: r182208
Thomas Koenig committed -
* doc/xml/manual/abi.xml: Replace gcc-x.y.z with GCC x.y.z or x.y, remove excessive duplication of version information. * doc/html/*: Regenerate. From-SVN: r182206
Jonathan Wakely committed -
* trans-mem.c (ipa_tm_transform_calls_redirect): Do not remove edge. From-SVN: r182205
Patrick Marlier committed -
From-SVN: r182204
Eric Botcazou committed -
utils2.c (gnat_build_constructor): Test the TREE_STATIC flag of elements to compute that of the constructor. * gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC flag of elements to compute that of the constructor. From-SVN: r182203
Eric Botcazou committed -
decl.c (gnat_to_gnu_param): Set the restrict qualifier on references built for parameters which aren't... * gcc-interface/decl.c (gnat_to_gnu_param): Set the restrict qualifier on references built for parameters which aren't specifically by-ref. From-SVN: r182202
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If there is an alignment set on a renaming, assert that the renamed object is aligned enough as to make it possible to honor it. From-SVN: r182201
Eric Botcazou committed -
* Tweak ChangeLog. From-SVN: r182200
Paolo Carlini committed -
From-SVN: r182199
Eric Botcazou committed -
From-SVN: r182198
GCC Administrator committed
-
- 10 Dec, 2011 12 commits
-
-
2011-12-10 Tobias Burnus <burnus@net-b.de> * trans-decl.c (add_argument_checking): Fix syntax. From-SVN: r182194
Tobias Burnus committed -
* config/rs6000/altivec.md (altivec_vmrghb): Rewrite pattern as vec_select + vec_concat. (altivec_vmrghh, altivec_vmrghw, altivec_vmrghsf, altivec_vmrglb, altivec_vmrglh, altivec_vmrglw, altivec_vmrglsf): Likewise. (vec_perm_constv16qi): New. (vec_extract_evenv4si, vec_extract_evenv4sf, vpkuhum_nomode, vpkuwum_nomode, vec_extract_oddv8hi, vec_extract_oddv16qi, vec_interleave_high<VI>, vec_interleave_low<VI>): Remove. * config/rs6000/paired.md (paired_merge00): Rewrite pattern as vec_select + vec_concat. (paired_merge10, paired_merge01, paired_merge11): Likewise. (vec_perm_constv2sf): New. (vec_interleave_highv2sf, vec_interleave_lowv2sf, vec_extract_evenv2sf, vec_extract_oddv2sf): Remove. * config/rs6000/spe.md (spe_evmergehi): Rewrite pattern as vec_select + vec_concat. (spe_evmergehilo, spe_evmergelo, spe_evmergelohi): New. (vec_perm_constv2si): New. * config/rs6000/vector.md (vec_interleave_highv4sf, vec_interleave_lowv4sf, vec_interleave_high<VEC_64>, vec_interleave_low<VEC_64>): Remove. * config/rs6000/vsx.md (VS_double): New mode attribute. (UNSPEC_VSX_XXPERMDI): Remove. (vsx_xxpermdi_<VSX_L>_1): Rewrite pattern as vec_select + vec_concat. (vsx_xxmrghw_<VSX_W>, vsx_xxmrglw_<VSX_W>): Likewise. (vsx_xxpermdi_<VSX_L>): Change to expander. (vec_perm_const<VSX_D>): New. (vsx_mergel_<VSX_D>, vsx_mergeh_<VSX_D>): New. * config/rs6000/predicates.md (const_0_to_1_operand): New. (const_2_to_3_operand): New. * config/rs6000/rs6000.c (TARGET_VECTORIZE_VEC_PERM_CONST_OK): New. (altivec_expand_vec_perm_const): New. (rs6000_expand_vec_perm_const_1, rs6000_expand_vec_perm_const): New. (rs6000_vectorize_vec_perm_const_ok): New. (rs6000_do_expand_vec_perm): New. (rs6000_expand_extract_even, rs6000_expand_interleave): New. * config/rs6000/rs6000-builtin.def (VEC_MERGE*): Update rtx codes. * config/rs6000/rs6000-modes.def: Add double-wide vector modes. * config/rs6000/rs6000-protos.h: Update. From-SVN: r182193
Richard Henderson committed -
* expr.c (expand_expr_real_2) [VEC_PERM_EXPR]: Avoid passing a CONST_INT to expand_vec_perm as the selector. * optabs.c (expand_vec_perm): Assert the selector is of a proper mode. From-SVN: r182192
Richard Henderson committed -
* genmodes.c (struct mode_data): Remove wider_2x member. (blank_mode): Adjust initializer. (calc_wider_mode): Use XALLOCAVEC. (emit_move_wider): Select double-width same-element vectors for 2xwider vectors. * machmode.h (GET_MODE_2XWIDER_MODE): Update documentation. * config/i386/i386.c (doublesize_vector_mode): Remove. (expand_vselect_vconcat): Use GET_MODE_2XWIDER_MODE instead. From-SVN: r182191
Richard Henderson committed -
2011-12-10 Tobias Burnus <burnus@net-b.de> Kai Tietz <ktietz@redhat.com> * trans-decl.c (add_argument_checking): Check ts.deferred earlier. * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use %ld with long. Co-Authored-By: Kai Tietz <ktietz@redhat.com> From-SVN: r182190
Tobias Burnus committed -
2011-12-10 Benjamin Kosnik <bkoz@redhat.com> * doc/doxygen/user.cfg.in: Add macros, directories. * include/bits/locale_classes.h: Remove doxygen warnings, fix markup. * include/bits/locale_classes.tcc: Same. * include/bits/shared_ptr.h: Same. * include/bits/stl_algo.h: Same. * include/bits/stl_list.h: Same. * include/bits/stl_numeric.h: Same. * include/debug/safe_base.h: Same. * include/parallel/equally_split.h: Same. * include/std/bitset: Same. * include/std/complex: Same. * include/std/fstream: Same. * include/std/istream: Same. * include/std/ostream: Same. * include/tr2/dynamic_bitset: Same. * scripts/run_doxygen: Remove munging for names that no longer exist. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust line numbers. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same. From-SVN: r182189
Benjamin Kosnik committed -
2011-12-12 François Dumont <fdumont@gcc.gnu.org> * include/profile/unordered_set: Minor formatting changes. (unordered_set<>::_M_profile_destruct, unordered_multiset<>::_M_profile_destruct): Fix implementation to not rely on normal implementation details anymore. (unordered_set<>::_M_profile_resize, unordered_multiset<>::_M_profile_resize): Implement consistently accross all unordered containers. (unordered_set<>::emplace, unordered_set<>::emplace_hint, unordered_multiset<>::emplace, unordered_multset<>::emplace_hint): Add to signal rehash to profiling system. * include/profile/unordered_map: Likewise for unordered_map<> and unordered_multimap<>. From-SVN: r182188
François Dumont committed -
gcc: * config/epiphany/epiphany-protos.h (epiphany_start_function): Declare. * config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute): Split "timer" value into "timer0" and "timer1". Handle page_miss, message and wand. Don't handle static_flag. Adjust warning text. (epiphany_start_function): New function. (epiphany_compute_function_type): Split "timer" value into "timer0" and "timer1". Handle page_miss, message and wand. Don't handle static_flag. (epiphany_expand_epilogue): Don't use frame_insn for status / iret restore. * config/epiphany/epiphany.h: ASM_DECLARE_FUNCTION_NAME: Define. (enum epiphany_function_type): Split EPIPHANY_FUNCTION_TIMER value into EPIPHANY_FUNCTION_TIMER0 and EPIPHANY_FUNCTION_TIMER1. Remove EPIPHANY_FUNCTION_ILINK1 and EPIPHANY_FUNCTION_ILINK2 values. Add EPIPHANY_FUNCTION_PAGE_MISS and EPIPHANY_FUNCTION_MESSAGE values. Rename EPIPHANY_FUNCTION_STATIC_FLAG to EPIPHANY_FUNCTION_WAND. gcc/testsuite: * gcc.target/epiphany/interrupt.c: Add dg-options "-g". Add a scan-assembler-time clause to test for the interupt vector jump. (f): Rename to ... (dma0_handler): ... this. From-SVN: r182187
Joern Rennecke committed -
* config/epiphany/epiphany.h (EPIPHANY_RETURN_REGNO): New macro, broken out of .. (INCOMING_RETURN_ADDR_RTX) .. this. Use EPIPHANY_RETURN_REGNO. (DWARF_FRAME_RETURN_COLUMN): New macro. From-SVN: r182186
Joern Rennecke committed -
* config/epiphany/epiphany.h (USE_LOAD_POST_INCREMENT): Define. (USE_LOAD_POST_DECREMENT, USE_STORE_POST_INCREMENT): Likewise. (USE_STORE_POST_DECREMENT): Likewise. From-SVN: r182185
Joern Rennecke committed -
PR gcov-profile/51449 * coverage.c (coverage_end_function): Always process the coverage variables. testsuite/ * g++.dg/gcov/gcov-14.C: New. From-SVN: r182184
Nathan Sidwell committed -
From-SVN: r182183
GCC Administrator committed
-
- 09 Dec, 2011 6 commits
-
-
tree.c (build_common_builtin_nodes): Do not use TM_PURE attribute unless language has support for TM. PR/51291 * tree.c (build_common_builtin_nodes): Do not use TM_PURE attribute unless language has support for TM. * config/i386/i386.c (ix86_init_tm_builtins): Exit gracefully in the absence of TM builtins. From-SVN: r182179
Aldy Hernandez committed -
gimple-fold.c (gimple_fold_stmt_to_constant_1): Also check the TYPE_MODE to recognize useless pointer conversions. * gimple-fold.c (gimple_fold_stmt_to_constant_1) <GIMPLE_UNARY_RHS>: Also check the TYPE_MODE to recognize useless pointer conversions. From-SVN: r182178
Eric Botcazou committed -
PR tree-optimization/51117 * tree-eh.c (optimize_clobbers): Don't remove just one clobber, but all consecutive clobbers before RESX. Use gimple_clobber_p predicate. From-SVN: r182177
Jakub Jelinek committed -
PR c++/51151 * call.c (perform_implicit_conversion_flags): Remove earlier kludge. * parser.c (cp_parser_omp_for_loop): Use cp_parser_omp_for_incr in templates even if decl isn't type-dependent. From-SVN: r182175
Jason Merrill committed -
2011-12-09 François Dumont <fdumont@gcc.gnu.org> * include/bits/hashtable.h (_Hashtable<>::emplace, _Hashtable<>::emplace_hint): Add. * include/debug/unordered_set (unordered_set<>::emplace, unordered_set<>::emplace_hint, unordered_multiset<>::emplace, unordered_multiset<>::emplace_hint): Add. * include/profile/unordered_set: Likewise. * include/debug/unordered_map (unordered_map<>::emplace, unordered_map<>::emplace_hint, unordered_multimap<>::emplace, unordered_multimap<>::emplace_hint): Add. * include/profile/unordered_map: Likewise. * testsuite/23_containers/unordered_map/modifiers/emplace.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/emplace.cc: New. * testsuite/23_containers/unordered_set/modifiers/emplace.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/emplace.cc: New. * testsuite/util/testsuite_container_traits.h (traits_base::has_emplace): Add and defined as std::true_type for unordered containers. * testsuite/util/exception/safety.h (emplace, emplace_hint): Add and use them in basic_safety exception test case. * doc/xml/manual/status_cxx2011.xml: Update unordered containers status. From-SVN: r182174
François Dumont committed -
gcc/cp/ PR c++/51289 * cp-tree.h (TYPE_TEMPLATE_INFO): Rewrite this accessor macro to better support aliased types. (TYPE_ALIAS_P): Don't crash on TYPE_NAME nodes that are not TYPE_DECL. * pt.c (find_parameter_packs_r): Handle types aliases. (push_template_decl_real): Check for bare parameter packs in the underlying type of an alias template. gcc/PR51289/gcc/testsuite/ PR c++/51289 * g++.dg/cpp0x/alias-decl-17.C: New test. From-SVN: r182170
Dodji Seketeli committed
-