Razya Ladelsky [Sun, 24 Aug 2008 19:39:04 +0000 (19:39 +0000)]
re PR tree-optimization/37185 (gcc.dg/matrix/transpose-3.c:16: internal compiler error: verify_stmts failed)
2008-08-24 Razya Ladelsky <razya@il.ibm.com>
PR tree-optimization/37185
* matrix-reorg.c (transform_access_sites): Update changed stmt.
From-SVN: r139539
Tobias Burnus [Sun, 24 Aug 2008 17:16:46 +0000 (19:16 +0200)]
re PR fortran/37201 (ICE in in gfc_conv_string_parameter)
2008-08-24 Tobias Burnus <burnus@net-b.de>
PR fortran/37201
* trans-expr.c (gfc_conv_function_call): Add string_length
for character-returning bind(C) functions.
2008-08-24 Tobias Burnus <burnus@net-b.de>
PR fortran/37201
* gfortran.dg/bind_c_usage_17.f90: New.
* gfortran.dg/bind_c_usage_17_c.c: New.
From-SVN: r139537
Jan Hubicka [Sun, 24 Aug 2008 17:11:13 +0000 (19:11 +0200)]
ipa-cp.c (ipcp_analyze_node): New function.
* ipa-cp.c (ipcp_analyze_node): New function.
(ipcp_update_cloned_node): Use it.
(ipcp_init_stage): Likewise.
* ipa-inline.c (function_insertion_hook_holder): New static var.
(analyze_function): Break out from ....
(inline_generate_summary): Here; register insertion hook.
(cgraph_decide_inlining): Remove hook.
(add_new_function): New function.
From-SVN: r139536
Daniel Kraft [Sun, 24 Aug 2008 16:15:27 +0000 (18:15 +0200)]
gfortran.h (gfc_typebound_proc): New struct.
2008-08-24 Daniel Kraft <d@domob.eu>
* gfortran.h (gfc_typebound_proc): New struct.
(gfc_symtree): New member typebound.
(gfc_find_typebound_proc): Prototype for new method.
(gfc_get_derived_super_type): Prototype for new method.
* parse.h (gfc_compile_state): New state COMP_DERIVED_CONTAINS.
* decl.c (gfc_match_procedure): Handle PROCEDURE inside derived-type
CONTAINS section.
(gfc_match_end): Handle new context COMP_DERIVED_CONTAINS.
(gfc_match_private): Ditto.
(match_binding_attributes), (match_procedure_in_type): New methods.
(gfc_match_final_decl): Rewrote to make use of new
COMP_DERIVED_CONTAINS parser state.
* parse.c (typebound_default_access): New global helper variable.
(set_typebound_default_access): New callback method.
(parse_derived_contains): New method.
(parse_derived): Extracted handling of CONTAINS to new parser state
and parse_derived_contains.
* resolve.c (resolve_bindings_derived), (resolve_bindings_result): New.
(check_typebound_override), (resolve_typebound_procedure): New methods.
(resolve_typebound_procedures): New method.
(resolve_fl_derived): Call new resolving method for typebound procs.
* symbol.c (gfc_new_symtree): Initialize new member typebound to NULL.
(gfc_find_typebound_proc): New method.
(gfc_get_derived_super_type): New method.
2008-08-24 Daniel Kraft <d@domob.eu>
* gfortran.dg/finalize_5.f03: Adapted expected error message to changes
to handling of CONTAINS in derived-type declarations.
* gfortran.dg/typebound_proc_1.f08: New test.
* gfortran.dg/typebound_proc_2.f90: New test.
* gfortran.dg/typebound_proc_3.f03: New test.
* gfortran.dg/typebound_proc_4.f03: New test.
* gfortran.dg/typebound_proc_5.f03: New test.
* gfortran.dg/typebound_proc_6.f03: New test.
From-SVN: r139534
Paolo Carlini [Sun, 24 Aug 2008 09:37:07 +0000 (09:37 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Improve documentation.
2008-08-24 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Improve documentation.
* doc/xml/manual/configure.xml: Likewise.
From-SVN: r139533
Jan Hubicka [Sun, 24 Aug 2008 09:29:57 +0000 (11:29 +0200)]
* opts.c (decode_options): Revert accidental change enabling ipa-cp.
From-SVN: r139532
Paolo Carlini [Sun, 24 Aug 2008 01:20:13 +0000 (01:20 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Use [=KIND] in GLIBCXX_ENABLE.
2008-08-23 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Use [=KIND] in
GLIBCXX_ENABLE.
* configure: Regenerate.
From-SVN: r139531
Paolo Carlini [Sun, 24 Aug 2008 00:25:22 +0000 (00:25 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_GETTIMEOFDAY]): Change to use GCC_TRY_COMPILE_OR_LINK.
2008-08-23 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_GETTIMEOFDAY]): Change to use
GCC_TRY_COMPILE_OR_LINK.
([GLIBCXX_CHECK_CLOCK_GETTIME]): Rename to
[GLIBCXX_ENABLE_CLOCK_GETTIME], a versatile configure-time option,
[no] by default, since it includes TRY_LINK checks. librt is also
searched, if requested.
* doc/xml/manual/configure.xml: Document the latter.
* configure.ac: Move the above checks outside native-only.
* configure: Regenerate.
From-SVN: r139530
GCC Administrator [Sun, 24 Aug 2008 00:16:58 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r139528
Jan Hubicka [Sat, 23 Aug 2008 22:25:20 +0000 (00:25 +0200)]
ipa-cp.c (constant_val_insert): Remove.
* ipa-cp.c (constant_val_insert): Remove.
(ipcp_propagate_one_const): Remove.
(ipcp_create_replace_map): Always insert replacements to the map.
(ipcp_insert_stage): Do not try to insert statements by hand.
* tree-inline.c (insert_init_stmt): Break out from ...
(setup_one_parameter): ... here; allow NULL BB pointer.
(tree_function_versioning): Use setup_one_parameter to process
replacement map.
From-SVN: r139525
Janus Weil [Sat, 23 Aug 2008 21:04:01 +0000 (23:04 +0200)]
gfortran.h (gfc_component): Add field "symbol_attribute attr"...
2008-08-23 Janus Weil <janus@gcc.gnu.org>
* gfortran.h (gfc_component): Add field "symbol_attribute attr", remove
fields "pointer", "allocatable", "dimension", "access".
Remove functions "gfc_set_component_attr" and "gfc_get_component_attr".
* interface.c (gfc_compare_derived_types): Ditto.
* trans-array.c (gfc_array_allocate,structure_alloc_comps): Ditto.
* trans-expr.c (gfc_conv_component_ref,gfc_trans_subcomponent_assign,
gfc_conv_structure): Ditto.
* symbol.c (gfc_find_component,free_components,gfc_set_component_attr,
gfc_get_component_attr,verify_bind_c_derived_type,
generate_isocbinding_symbol): Ditto.
* decl.c (build_struct): Ditto.
* dump-parse-tree.c (show_components): Ditto.
* trans-stmt.c (gfc_trans_deallocate): Ditto.
* expr.c (gfc_check_assign,gfc_check_pointer_assign,
gfc_default_initializer): Ditto.
* module.c (mio_component): Ditto.
* trans-types.c (copy_dt_decls_ifequal,gfc_get_derived_type): Ditto.
* resolve.c (has_default_initializer,resolve_structure_cons,
gfc_iso_c_func_interface,find_array_spec,resolve_ref,
resolve_deallocate_expr,resolve_allocate_expr,resolve_fl_derived,
resolve_equivalence_derived): Ditto.
* trans-io.c (transfer_expr): Ditto.
* parse.c (parse_derived): Ditto.
* dependency.c (gfc_check_dependency): Ditto.
* primary.c (gfc_variable_attr): Ditto.
From-SVN: r139524
Jan Hubicka [Sat, 23 Aug 2008 20:28:07 +0000 (22:28 +0200)]
tree.c (decl_address_ip_invariant_p): New function.
* tree.c (decl_address_ip_invariant_p): New function.
* tree.h (decl_address_ip_invariant_p): Declare.
* gimple.c (strip_invariant_refs): Break out from ...
(is_gimple_invariant_address): ... here
(is_gimple_ip_invariant_address): New function.
(is_gimple_ip_invariant): New function.
* gimple.h (is_gimple_ip_invariant_address, is_gimple_ip_invariant):
Declare.
* ipa-cp.c (ipcp_lat_is_const): Remove handling of IPA_CONST_VALUE_REF.
(ipcp_lat_is_insertable): All constants are insertable.
(ipcp_lattice_from_jfunc, ipcp_print_all_lattices): Remove handling of
IPA_CONST_VALUE_REF.
(ipcp_initialize_node_lattices): Propagate all types of operands.
(build_const_val): Do not handle IPA_CONST_VALUE_REF.
(ipcp_create_replace_map): Reformat.
(ipcp_need_redirect_p): Simplify.
(ipcp_insert_stage): Check that argument is used before clonning.
* ipa-prop.c (ipa_print_node_jump_functions): Do not handle IPA_CONST_REF.
(compute_scalar_jump_functions): Simplify using is_gimple_ip_invariat.
(determine_cst_member_ptr): Keep wrapping ADDR_EXPR of members.
(update_call_notes_after_inlining): Expect ADDR_EXPR in operand.
* ipa-prop.h (jump_func_type): Remove IPA_CONST_REF.
(jump_func_type): Remove IPA_CONST_VALUE_REF.
* tree-inline.c (tree_function_versioning): Add variables referenced by
replacing trees.
From-SVN: r139523
Jan Hubicka [Sat, 23 Aug 2008 20:02:08 +0000 (22:02 +0200)]
re PR target/37094 (Ada build broken for i586)
PR target/37094
* i386.c (standard_80387_constant_p): Use optimize_size.
From-SVN: r139522
Tobias Burnus [Sat, 23 Aug 2008 18:49:43 +0000 (20:49 +0200)]
re PR fortran/37076 (Concatenation of KIND=4 strings with KIND=4 parameters fails)
2008-08-23 Tobias Burnus <burnus@net-b.de>
PR fortran/37076
* arith.c (gfc_arith_concat): Fix concat of kind=4 strings.
2008-08-23 Tobias Burnus <burnus@net-b.de>
PR fortran/37076
* gfortran.dg/widechar_9.f90: New.
From-SVN: r139521
Tobias Burnus [Sat, 23 Aug 2008 18:12:30 +0000 (20:12 +0200)]
re PR fortran/37025 (ICE with TRANSFER to non-default-kind character: transfer(int(z'bde4'),4_'a'))
2008-08-23 Tobias Burnus <burnus@net-b.de>
PR fortran/37025
* target-memory.c (gfc_interpret_character): Support
kind=4 characters.
2008-08-23 Tobias Burnus <burnus@net-b.de>
PR fortran/37025
* gfortran.dg/widechar_8.f90: New.
From-SVN: r139520
Ira Rosen [Sat, 23 Aug 2008 17:04:12 +0000 (17:04 +0000)]
re PR middle-end/37161 (Revision 139225 caused gfortran.dg/vect/pr33301.f -O)
PR tree-optimization/37161
* tree-vectorizer.h (vect_get_smallest_scalar_type): Declare.
* tree-vect-analyze.c (vect_get_smallest_scalar_type): New function.
(vect_determine_vectorization_factor): Move the scalar type
retrieval to vect_get_smallest_scalar_type.
(vect_build_slp_tree): Call vect_get_smallest_scalar_type to get
scalar type. Remove redundant computation.
* tree-vect-transform.c (vect_get_constant_vectors): Add argument.
(vect_get_slp_defs): Take the type of RHS into account if
necessary by calling vect_get_smallest_scalar_type. Call
vect_get_constant_vectors with additional argument.
From-SVN: r139518
Manuel López-Ibáñez [Sat, 23 Aug 2008 15:36:32 +0000 (15:36 +0000)]
re PR other/35648 (-Wall includes -Wwrite-strings)
2008-08-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 35648
* doc/invoke.texi (Wwrite-strings): Clarify description.
From-SVN: r139517
Thomas Koenig [Sat, 23 Aug 2008 13:30:18 +0000 (13:30 +0000)]
MAINTAINERS: Use correct Umlaut for last name.
2008-08-23 Thomas Koenig <tkoenig@gcc.gnu.org>
* MAINTAINERS: Use correct Umlaut for last name.
From-SVN: r139510
Paolo Carlini [Sat, 23 Aug 2008 11:28:30 +0000 (11:28 +0000)]
[multiple changes]
2008-08-23 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/lib/libstdc++.exp (check_v3_target_atomic_builtins): Add.
* testsuite/lib/dg-options.exp (dg-require-atomic-builtins): Likewise.
* testsuite/18_support/exception_ptr/current_exception.cc: Use it.
* testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
* testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
2008-08-23 Sebastian Redl <sebastian.redl@getdesigned.at>
Add (again) exception propagation support as per N2179. Feature is
available only when _GLIBCXX_ATOMIC_BUILTINS_4 is defined.
* libsupc++/exception_ptr.h (exception_ptr, current_exception,
copy_exception, rethrow_exception): New file, implement exception
propagation.
* libsupc++/eh_ptr.cc (exception_ptr, current_exception,
rethrow_exception, __gxx_dependent_exception_cleanup): Likewise.
* libsupc++/unwind-cxx.h (__cxa_exception): Add reference count.
(__cxa_dependent_exception, __cxa_allocate_dependent_exception,
__cxa_free_dependent_exception, __get_dependent_exception_from_ue,
__GXX_INIT_DEPENDENT_EXCEPTION_CLASS, __is_dependent_exception,
__gxx_dependent_exception_class, __get_object_from_ue,
__get_object_from_ambiguous_exception): Add.
(__GXX_INIT_EXCEPTION_CLASS, __gxx_exception_class): Rename.
(__is_gxx_exception_class): Handle dependent exceptions.
* libsupc++/eh_arm.cc (__cxa_type_match): Likewise.
* libsupc++/eh_call.cc (__cxa_call_unexpected): Likewise.
* libsupc++/eh_personality.cc (__gxx_personality_*): Likewise.
* libsupc++/eh_type.cc (__cxa_current_exception_type): Likewise.
* libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception,
__cxa_free_dependent_exception): Add.
* libsupc++/eh_throw.cc (__gxx_exception_cleanup): Handle reference
counting.
* libsupc++/exception: Conditionally include exception_ptr.h.
* libsupc++/Makefile.am: Register new files.
* libsupc++/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add new symbols.
* testsuite/18_support/exception_ptr/current_exception.cc: Test the
core functionality of current_exception().
* testsuite/18_support/exception_ptr/rethrow_exception.cc: Test the
core functionality of rethrow_exception().
* testsuite/18_support/exception_ptr/lifespan.cc: Test the life span of
exception objects during exception propagation.
From-SVN: r139509
Ira Rosen [Sat, 23 Aug 2008 10:42:34 +0000 (10:42 +0000)]
re PR middle-end/37174 (ICE: in vinfo_for_stmt, at tree-vectorizer.h:546)
PR tree-optimization/37174
* tree-vect-analyze.c (vect_get_and_check_slp_defs): Check that the
def stmt is a part of the loop before accessing its stmt_vec_info.
From-SVN: r139508
Francois-Xavier Coudert [Sat, 23 Aug 2008 08:33:12 +0000 (08:33 +0000)]
* MAINTAINERS: Move myself from Reviewers to Write after Approval.
From-SVN: r139507
GCC Administrator [Sat, 23 Aug 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r139505
Anatoly Sokolov [Fri, 22 Aug 2008 21:24:56 +0000 (01:24 +0400)]
re PR target/11259 ([avr] gcc Double 'andi' missed optimization)
PR target/11259
* config/avr/avr.md (UNSPEC_SWAP): New constants.
(*swap): New insn pattern.
(*ashlqi3): Rename from ashlqi3 insn pattern.
(ashlqi3): New expanders.
(*lshrqi3): Rename from lshrqi3 insn pattern.
(lshrqi3): New expanders.
(ashlqi3_const4, ashlqi3_const5, ashlqi3_const6, lshrqi3_const4,
lshrqi3_const5, lshrqi3_const6): New splitters.
(andi, ashlqi3_l_const4, ashlqi3_l_const5, ashlqi3_l_const6,
lshrqi3_l_const4, lshrqi3_l_const5, lshrqi3_l_const6): Define
peephole2 patterns.
From-SVN: r139502
Richard Guenther [Fri, 22 Aug 2008 21:13:00 +0000 (21:13 +0000)]
re PR middle-end/37078 (ICE in set_value_range, at tree-vrp.c:401 when compiling gmp 4.2.3)
2008-08-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37078
* tree-vrp.c (extract_range_from_unary_expr): Avoid generating
[+INF, +INF] ranges.
* gcc.c-torture/compile/pr37078.c: New testcase.
From-SVN: r139501
Richard Guenther [Fri, 22 Aug 2008 21:11:48 +0000 (21:11 +0000)]
re PR tree-optimization/37143 (ICE in VRP with the auto-vectorizer)
2008-08-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37143
* tree-vect-transform.c (vect_create_cond_for_align_checks): Build
a conversion statement instead of a copy.
* g++.dg/vect/pr37143.C: New testcase.
From-SVN: r139500
Daniel Kraft [Fri, 22 Aug 2008 20:36:12 +0000 (22:36 +0200)]
re PR fortran/30239 (duplicate data type assignment not detected)
2008-08-22 Daniel Kraft <d@domob.eu>
PR fortran/30239
* symbol.c (gfc_add_type): Warn on -Wsurprising if a function-result
type is re-declared but neither -pedantic nor -std=f* is given and so
this is no error.
* invoke.texi (-Wsurprising): Document this new behaviour.
From-SVN: r139499
Paolo Carlini [Fri, 22 Aug 2008 18:59:41 +0000 (18:59 +0000)]
2008-08-22 Paolo Carlini <paolo.carlini@oracle.com>
Revert again the N2179 patch.
From-SVN: r139497
Uros Bizjak [Fri, 22 Aug 2008 18:10:21 +0000 (20:10 +0200)]
pr21658.c (dg-options): Use -fdump-tree-ccp1-details.
* gcc.dg/tree-ssa/pr21658.c (dg-options): Use -fdump-tree-ccp1-details.
(dg-final): Use cleanup-tree-dump "ccp1".
* gcc.dg/tree-prof/ic-misattribution-1a.c: Cleanup tree_profile.
* gcc.dg/ipa/iinline-1.c: Cleanup ipa dump, not tree dump.
* g++.dg/ipa/iinline-1.C: Ditto.
* gfortran.dg/intrinsic_std_1.f90: Cleanup "original" tree dump.
* gfortran.dg/char_eoshift_5.f90: Ditto.
* gfortran.dg/index_2.f90: Ditto.
From-SVN: r139496
Andrew Haley [Fri, 22 Aug 2008 16:17:19 +0000 (16:17 +0000)]
Fix PR#.
2008-08-22 Andrew Haley <aph@redhat.com>
PR libgcj/8995:
* interpret-run.cc (REWRITE_INSN): Null this macro.
* include/jvm.h (class _Jv_Linker): Declare resolve_mutex, init.
(read_cpool_entry, write_cpool_entry): New functions.
* link.cc (_Jv_Linker::resolve_mutex): new.
(_Jv_Linker::init): New function.
(_Jv_Linker::resolve_pool_entry): Use {read,write}_cpool_entry
to ensure atomic access to constant pool entries.
From-SVN: r139493
Andrew Haley [Fri, 22 Aug 2008 16:04:29 +0000 (16:04 +0000)]
re PR libgcj/8995 (race cases in interpreter)
2008-08-22 Andrew Haley <aph@redhat.com>
PR libgcj/8895:
* interpret-run.cc (REWRITE_INSN): Null this macro.
* include/jvm.h (class _Jv_Linker): Declare resolve_mutex, init.
(read_cpool_entry, write_cpool_entry): New functions.
* link.cc (_Jv_Linker::resolve_mutex): new.
(_Jv_Linker::init): New function.
(_Jv_Linker::resolve_pool_entry): Use {read,write}_cpool_entry
to ensure atomic access to constant pool entries.
From-SVN: r139492
Robert Dewar [Fri, 22 Aug 2008 15:47:50 +0000 (15:47 +0000)]
Minor code fix to avoid warning.
From-SVN: r139491
Arnaud Charlet [Fri, 22 Aug 2008 15:46:29 +0000 (17:46 +0200)]
s-wwdcha.adb: Minor code reorganization Remove dead code
2008-08-22 Robert Dewar <dewar@adacore.com>
* s-wwdcha.adb: Minor code reorganization
Remove dead code
From-SVN: r139490
Robert Dewar [Fri, 22 Aug 2008 15:46:13 +0000 (17:46 +0200)]
s-utf_32.adb (Get_Category): Fix obvious typo
2008-08-22 Robert Dewar <dewar@adacore.com>
* s-utf_32.adb (Get_Category): Fix obvious typo
From-SVN: r139489
Robert Dewar [Fri, 22 Aug 2008 15:46:00 +0000 (17:46 +0200)]
s-sopco4.adb: Minor code fix to avoid warning
2008-08-22 Robert Dewar <dewar@adacore.com>
* s-sopco4.adb: Minor code fix to avoid warning
* s-sopco5.adb: Minor code fix to avoid warning
* s-strops.adb: Minor code fix to avoid warning
From-SVN: r139488
Arnaud Charlet [Fri, 22 Aug 2008 15:45:45 +0000 (17:45 +0200)]
lib-xref.ads: Fix typo in subprogram reference definition.
2008-08-22 Arnaud Charlet <charlet@adacore.com>
* lib-xref.ads: Fix typo in subprogram reference definition.
From-SVN: r139487
Robert Dewar [Fri, 22 Aug 2008 15:45:29 +0000 (17:45 +0200)]
s-sopco3.adb: Minor code fix to avoid warning
2008-08-22 Robert Dewar <dewar@adacore.com>
* s-sopco3.adb: Minor code fix to avoid warning
From-SVN: r139486
Arnaud Charlet [Fri, 22 Aug 2008 15:07:34 +0000 (17:07 +0200)]
checks.adb (Determine_Range): Deal with values that might be invalid
2008-08-22 Robert Dewar <dewar@adacore.com>
* checks.adb (Determine_Range): Deal with values that might be invalid
* opt.adb, opt.ads (Assume_No_Invalid_Values[_Config]): New configuration
switches.
* par-prag.adb: Dummy entry for pragma Assume_No_Invalid_Values
* sem_prag.adb: Implement pragma Assume_No_Default_Values
* snames.adb, snames.ads, snames.h:
Add entries for pragma Assume_No_Invalid_Values
* switch-c.adb: Add processing for -gnatB switch
* usage.adb: Add entry for flag -gnatB (no bad invalid values)
From-SVN: r139484
Javier Miranda [Fri, 22 Aug 2008 15:07:18 +0000 (17:07 +0200)]
exp_ch3.adb (Build_Init_Statements): Transfer to the body of the init procedure all the expanded code associated...
2008-08-22 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb (Build_Init_Statements): Transfer to the body of the
init procedure all the expanded code associated with the spec of
task types and protected types.
From-SVN: r139483
Arnaud Charlet [Fri, 22 Aug 2008 14:56:55 +0000 (16:56 +0200)]
opt.ads: Minor code reorganization (put entries in alpha order)
2008-08-22 Robert Dewar <dewar@adacore.com>
* opt.ads: Minor code reorganization (put entries in alpha order)
From-SVN: r139481
Gary Dismukes [Fri, 22 Aug 2008 14:56:32 +0000 (16:56 +0200)]
sem_util.adb (Has_Preelaborable_Initialization): Revise checking of private types to allow for types derived from a private type...
2008-08-22 Gary Dismukes <dismukes@adacore.com>
* sem_util.adb (Has_Preelaborable_Initialization): Revise checking of
private types to allow for types derived from a private type with
preelaborable initialization, but return False for a private extension
(unless it has the pragma).
From-SVN: r139480
Gary Dismukes [Fri, 22 Aug 2008 14:56:20 +0000 (16:56 +0200)]
exp_aggr.adb (Static_Array_Aggregate): Call Analyze_And_Resolve on the component expression copies rather than...
2008-08-22 Gary Dismukes <dismukes@adacore.com>
* exp_aggr.adb (Static_Array_Aggregate): Call Analyze_And_Resolve on the
component expression copies rather than directly setting Etype and
Is_Static_Expression.
From-SVN: r139479
Javier Miranda [Fri, 22 Aug 2008 14:55:14 +0000 (16:55 +0200)]
exp_ch3.adb: Revert previous patch.
2008-08-22 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb: Revert previous patch.
From-SVN: r139478
Arnaud Charlet [Fri, 22 Aug 2008 14:38:14 +0000 (16:38 +0200)]
exp_ch3.adb (Build_Init_Statements): Transfer to the body of the init procedure all the expanded code associated...
2008-08-22 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb (Build_Init_Statements): Transfer to the body of the
init procedure all the expanded code associated with the spec of
task types and protected types.
From-SVN: r139477
Pascal Obry [Fri, 22 Aug 2008 14:37:57 +0000 (16:37 +0200)]
initialize.c, adaint.c: Use Lock_Task and Unlock_Task for non-blocking spawn.
2008-08-22 Pascal Obry <obry@adacore.com>
* initialize.c, adaint.c: Use Lock_Task and Unlock_Task for non-blocking
spawn.
From-SVN: r139476
Uros Bizjak [Fri, 22 Aug 2008 13:58:52 +0000 (15:58 +0200)]
re PR target/37184 (ice in ix86_match_ccmode)
PR target/37184
* config/i386/i386.c (ix86_match_ccmode): Handle CCAmode,
CCCmode, CCOmode and CCSmode destination modes.
PR target/37191
* config/i386/mmx.md (*vec_extractv2sf_0): Avoid combining registers
from different units in a single alternative.
(*vec_extractv2sf_1): Ditto.
(*vec_extractv2si_0): Ditto.
(*vec_extractv2si_1): Ditto.
* config/i386/sse.md (sse2_storehpd): Ditto.
(sse2_storelpd): Ditto.
(sse2_loadhpd): Ditto.
(sse2_loadlpd): Ditto.
PR target/37197
* config/i386/i386.md (clzsi2_abm): Fix operand 1 constraints.
(popcountsi2): Ditto.
(clzdi2_abm): Ditto.
(popcountdi2): Ditto.
(clzhi2_abm): Ditto.
(popcounthi2): Ditto.
testsuite/ChangeLog:
PR target/37184
* gcc.target/i386/pr37184.c: New test.
PR target/37191
* gcc.target/i386/pr37191.c: New test.
PR target/37197
* gcc.target/i386/pr37197.c: New test.
From-SVN: r139471
Geert Bosch [Fri, 22 Aug 2008 13:29:10 +0000 (13:29 +0000)]
trans.c: Define FP_ARITH_MAY_WIDEN
2008-08-22 Geert Bosch <bosch@adacore.com>
* gcc-interface/trans.c: Define FP_ARITH_MAY_WIDEN
(convert_with_check): Only use longest_float_type if FP_ARITH_MAY_WIDEN is 0
From-SVN: r139468
Arnaud Charlet [Fri, 22 Aug 2008 13:27:35 +0000 (15:27 +0200)]
2008-08-22 Robert Dewar <dewar@adacore.com>
* checks.adb:
(In_Subrange_Of): New calling sequence
(Determine_Range): Prepare for new processing using base type
* exp_ch4.adb:
(Compile_Time_Compare): Use new calling sequence
* exp_ch5.adb:
(Compile_Time_Compare): Use new calling sequence
* sem_eval.adb:
(Compile_Time_Compare): New calling sequence allows dealing with
invalid values.
(In_Subrange_Of): Ditto
* sem_eval.ads:
(Compile_Time_Compare): New calling sequence allows dealing with
invalid values.
(In_Subrange_Of): Ditto
From-SVN: r139467
Pascal Obry [Fri, 22 Aug 2008 13:26:38 +0000 (15:26 +0200)]
adaint.c: Fix possible race condition on win32_wait().
2008-08-22 Pascal Obry <obry@adacore.com>
* adaint.c: Fix possible race condition on win32_wait().
From-SVN: r139466
Ed Schonberg [Fri, 22 Aug 2008 13:26:28 +0000 (15:26 +0200)]
2008-08-22 Ed Schonberg <schonberg@adacore.com>
* exp_tss.adb:
(Base_Init_Proc): For a protected subtype, use the base type of the
corresponding record to locate the propoer initialization procedure.
From-SVN: r139465
Robert Dewar [Fri, 22 Aug 2008 13:26:19 +0000 (15:26 +0200)]
sem_ch5.adb (One_Bound): Fix latent bug involving secondary stack
2008-08-22 Robert Dewar <dewar@adacore.com>
* sem_ch5.adb (One_Bound): Fix latent bug involving secondary stack
From-SVN: r139464
Vincent Celier [Fri, 22 Aug 2008 13:26:09 +0000 (15:26 +0200)]
prj.ads: Minor comment update
2008-08-22 Vincent Celier <celier@adacore.com>
* prj.ads: Minor comment update
From-SVN: r139463
Robert Dewar [Fri, 22 Aug 2008 13:26:00 +0000 (15:26 +0200)]
exp_dist.adb: Minor reformatting
2008-08-22 Robert Dewar <dewar@adacore.com>
* exp_dist.adb: Minor reformatting
From-SVN: r139462
Robert Dewar [Fri, 22 Aug 2008 13:25:50 +0000 (15:25 +0200)]
exp_ch7.ads: Put routines in proper alpha order
2008-08-22 Robert Dewar <dewar@adacore.com>
* exp_ch7.ads: Put routines in proper alpha order
From-SVN: r139461
Robert Dewar [Fri, 22 Aug 2008 13:25:41 +0000 (15:25 +0200)]
exp_ch7.adb: Minor reformatting
2008-08-22 Robert Dewar <dewar@adacore.com>
* exp_ch7.adb: Minor reformatting
From-SVN: r139460
Robert Dewar [Fri, 22 Aug 2008 13:25:29 +0000 (15:25 +0200)]
exp_ch6.adb: Minor reformatting
2008-08-22 Robert Dewar <dewar@adacore.com>
* exp_ch6.adb: Minor reformatting
From-SVN: r139459
Bob Duff [Fri, 22 Aug 2008 13:25:19 +0000 (15:25 +0200)]
exp_ch6.ads: Remove pragma Precondition, since it breaks some builds.
2008-08-22 Bob Duff <duff@adacore.com>
* exp_ch6.ads: Remove pragma Precondition, since it breaks some builds.
From-SVN: r139458
Ed Schonberg [Fri, 22 Aug 2008 13:25:08 +0000 (15:25 +0200)]
sem_ch8.adb (Use_One_Type): Do not emit warning message about redundant use_type_clause in an instance.
2008-08-22 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Use_One_Type): Do not emit warning message about redundant
use_type_clause in an instance.
From-SVN: r139457
Doug Rupp [Fri, 22 Aug 2008 13:24:49 +0000 (15:24 +0200)]
bindgen.adb [VMS] (Gen_Adainit_Ada, [...]): Import and call __gnat_set_features.
2008-08-22 Doug Rupp <rupp@adacore.com>
* bindgen.adb [VMS] (Gen_Adainit_Ada, Gen_Adainit_C): Import and call
__gnat_set_features.
* init.c
(__gnat_set_features): New function.
(__gnat_features_set): New tracking variable.
(__gl_no_malloc_64): New feature global variable
From-SVN: r139456
Bob Duff [Fri, 22 Aug 2008 12:59:45 +0000 (12:59 +0000)]
exp_ch5.adb, [...]: Rename...
2008-08-22 Bob Duff <duff@adacore.com>
* exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, exp_util.adb, freeze.adb,
exp_ch4.adb, exp_ch6.ads, exp_ch6.adb, sem_ch6.adb, exp_aggr.adb,
exp_intr.adb, exp_ch3.adb: Rename:
Exp_Ch7.Controlled_Type => Needs_Finalization
Exp_Ch7.CW_Or_Controlled_Type => CW_Or_Has_Controlled_Part
Exp_Ch5.Expand_N_Extended_Return_Statement.Controlled_Type =>
Has_Controlled_Parts
(Has_Some_Controlled_Component): Fix bug in array case.
From-SVN: r139452
Richard Guenther [Fri, 22 Aug 2008 12:43:49 +0000 (12:43 +0000)]
re PR middle-end/36548 (remainder gives the wrong result for wrapping case with unsigned types)
2008-08-22 Richard Guenther <rguenther@suse.de>
PR middle-end/36548
PR middle-end/37125
* fold-const.c (extract_muldiv_1): Optimize (X * C1) % C2 only
if the multiplication does not overflow.
* gcc.c-torture/execute/pr37125.c: New testcase.
From-SVN: r139450
Arnaud Charlet [Fri, 22 Aug 2008 12:42:17 +0000 (14:42 +0200)]
exp_ch6.ads: Minor comment fix
2008-08-22 Bob Duff <duff@adacore.com>
* exp_ch6.ads: Minor comment fix
From-SVN: r139449
Bob Duff [Fri, 22 Aug 2008 12:41:42 +0000 (14:41 +0200)]
exp_ch7.adb: Minor comment fix
2008-08-22 Bob Duff <duff@adacore.com>
* exp_ch7.adb: Minor comment fix
From-SVN: r139448
Ed Schonberg [Fri, 22 Aug 2008 12:41:30 +0000 (14:41 +0200)]
exp_ch5.adb (Expand_Simple_Function_Return): If secondary stack is involved and the return type is class-wide...
2008-08-22 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb (Expand_Simple_Function_Return): If secondary stack is
involved and the return type is class-wide, use the type of the expression
for the generated access type. Suppress useless discriminant checks on the
allocator.
From-SVN: r139447
Eric Botcazou [Fri, 22 Aug 2008 12:41:18 +0000 (14:41 +0200)]
init.c: adjust EH support code on Alpha/Tru64 as well.
2008-08-22 Eric Botcazou <ebotcazou@adacore.com>
* init.c: adjust EH support code on Alpha/Tru64 as well.
* raise-gcc.c: Add back a couple of comments.
From-SVN: r139446
Kevin Pouget [Fri, 22 Aug 2008 12:41:03 +0000 (14:41 +0200)]
s-shasto.ads, [...]: Move Shared_Var_ROpen...
2008-08-22 Kevin Pouget <pouget@adacore.com>
* s-shasto.ads, s-shasto.adb: Move Shared_Var_ROpen, Shared_Var_WOpen and
Shared_Var_Close procedure specifications from package spec to package body.
* rtsfind.ads: Remove RE_Shared_Var_Close, RE_Shared_Var_ROpen,
RE_Shared_Var_WOpen entries.
* exp_dist.adb: Update RE_Any_Content_Ptr to RE_Any_Container_Ptr in
Build_To_Any_Call, Build_TypeCode_Call and Build_From_Any_Call procedures.
From-SVN: r139445
Robert Dewar [Fri, 22 Aug 2008 12:40:43 +0000 (14:40 +0200)]
sem_ch8.adb: Minor reformatting
2008-08-22 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb: Minor reformatting
From-SVN: r139444
Arnaud Charlet [Fri, 22 Aug 2008 12:13:14 +0000 (14:13 +0200)]
2008-08-22 Robert Dewar <dewar@adacore.com>
* exp_attr.adb:
(Expand_N_Attribute_Reference): No validity checking on OUT parameter of
Read or Input attribute.
From-SVN: r139443
Gary Dismukes [Fri, 22 Aug 2008 12:12:04 +0000 (14:12 +0200)]
exp_aggr.adb (Static_Array_Aggregate): When a static array aggregate with a range is transformed into a positional...
2008-08-22 Gary Dismukes <dismukes@adacore.com>
* exp_aggr.adb (Static_Array_Aggregate): When a static array aggregate
with a range is transformed into a positional aggregate, any copied
component literals should be marked Is_Static_Expression.
* sem_eval.adb (Compile_Time_Known_Value): Don't treat null literals as
not being known at at compile time when Configurable_Run_Time_Mode is
true.
From-SVN: r139442
Eric Botcazou [Fri, 22 Aug 2008 12:11:31 +0000 (14:11 +0200)]
init.c (__gnat_adjust_context_for_raise): Delete for AIX, HP-UX, Solaris, FreeBSD, VxWorks and PowerPC/Linux.
2008-08-22 Eric Botcazou <ebotcazou@adacore.com>
* init.c (__gnat_adjust_context_for_raise): Delete for AIX, HP-UX,
Solaris, FreeBSD, VxWorks and PowerPC/Linux. For x86{-64}/Linux,
do not adjust the PC anymore.
(__gnat_error_handler): Do not call __gnat_adjust_context_for_raise
on AIX, HP-UX, Solaris, FreeBSD and VxWorks.
* raise-gcc.c (get_call_site_action_for): Use _Unwind_GetIPInfo
instead of _Unwind_GetIP.
From-SVN: r139441
Sergey Rybin [Fri, 22 Aug 2008 12:11:03 +0000 (14:11 +0200)]
gnat_ugn.texi: Change the description of gnatcheck default rule settings.
2008-08-22 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Change the description of gnatcheck default rule
settings.
From-SVN: r139440
Thomas Quinot [Fri, 22 Aug 2008 12:10:38 +0000 (14:10 +0200)]
sem_ch8.adb: Minor reformatting Minor code reorganization (introduce subprogram to factor...
2008-08-22 Thomas Quinot <quinot@adacore.com>
* sem_ch8.adb: Minor reformatting
Minor code reorganization (introduce subprogram to factor duplicated
code).
From-SVN: r139439
Daniel Kraft [Fri, 22 Aug 2008 10:53:40 +0000 (12:53 +0200)]
gfortran.h (in_prefix): Removed from this header.
2008-08-22 Daniel Kraft <d@domob.eu>
* gfortran.h (in_prefix): Removed from this header.
* match.h (gfc_matching_prefix): Moved and renamed from `in_prefix'.
* decl.c (in_prefix): Removed from here.
(gfc_match_prefix): Use new name of `gfc_matching_prefix'.
* symbol.c (gfc_check_symbol_typed): Ditto.
* expr.c (check_typed_ns): New helper variable.
(expr_check_typed_help): New helper method.
(gfc_expr_check_typed): Rewrote to use gfc_traverse_expr to do the
work, fixing a minor problem.
* match.c (gfc_matching_prefix): New variable.
From-SVN: r139435
Arnaud Charlet [Fri, 22 Aug 2008 09:03:53 +0000 (11:03 +0200)]
exp_attr.adb (Expand_N_Attribute_Reference): In case of access attributes add missing support to handle designated types...
2008-08-22 Javier Miranda <miranda@adacore.com>
* exp_attr.adb (Expand_N_Attribute_Reference): In case of access
attributes add missing support to handle designated types that come
from the limited view.
* exp_disp.adb (Expand_Interface_Conversion): Remove wrong assertion.
From-SVN: r139432
Sergey Rybin [Fri, 22 Aug 2008 09:03:30 +0000 (11:03 +0200)]
vms_data.ads: Add entry for new gnatcheck -mNNN option
2008-08-22 Sergey Rybin <rybin@adacore.com>
* vms_data.ads: Add entry for new gnatcheck -mNNN option
* gnat_ugn.texi: Add description for gnatcheck option '-m'
From-SVN: r139431
Ed Schonberg [Fri, 22 Aug 2008 09:03:16 +0000 (11:03 +0200)]
sem_ch8.adb (Use_One_Type): when checking which of two use_type clauses in related units is redundant...
2008-08-22 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Use_One_Type): when checking which of two use_type
clauses in related units is redundant, if one of the units is a package
instantiation, use its instance_spec to determine which unit is the
ancestor of the other.
From-SVN: r139430
Arnaud Charlet [Fri, 22 Aug 2008 08:54:46 +0000 (10:54 +0200)]
make.adb (Check.File_Not_A_Source_Of): New Boolean function
2008-08-22 Vincent Celier <celier@adacore.com>
* make.adb (Check.File_Not_A_Source_Of): New Boolean function
(Check): Check if the file names registered in the ALI file for the
spec, the body and each of the subunits are the ones expected.
From-SVN: r139429
Robert Dewar [Fri, 22 Aug 2008 08:54:14 +0000 (10:54 +0200)]
g-catiio.adb: Code cleanup.
2008-08-22 Robert Dewar <dewar@adacore.com>
* g-catiio.adb: Code cleanup.
From-SVN: r139428
Sergey Rybin [Fri, 22 Aug 2008 08:54:05 +0000 (10:54 +0200)]
gnat_ugn.texi: Update the gnatcheck subsection for metric rules acoording to the latest...
2008-08-22 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Update the gnatcheck subsection for metric rules
acoording to the latest changes in the metric rule interface
From-SVN: r139427
Nathan Sidwell [Fri, 22 Aug 2008 08:51:32 +0000 (08:51 +0000)]
* c-ppoutput.c (init_pp_output): Initialize src_line to 1.
From-SVN: r139426
Daniel Kraft [Fri, 22 Aug 2008 07:13:25 +0000 (09:13 +0200)]
re PR fortran/32095 (Accepts invalid character(len(a)),dimension(1) :: a)
2008-08-22 Daniel Kraft <d@domob.eu>
PR fortran/32095
PR fortran/34228
* gfortran.h (in_prefix): New global.
(gfc_check_symbol_typed), (gfc_check_expr_typed): New methods.
* array.c (match_array_element_spec): Check that bounds-expressions
don't have symbols not-yet-typed in them.
* decl.c (var_element): Check that variable used is already typed.
(char_len_param_value): Check that expression does not contain
not-yet-typed symbols.
(in_prefix): New global.
(gfc_match_prefix): Record using `in_prefix' if we're at the moment
parsing a prefix or not.
* expr.c (gfc_expr_check_typed): New method.
* parse.c (verify_st_order): New argument to disable error output.
(check_function_result_typed): New helper method.
(parse_spec): Check that the function-result declaration, if given in
a prefix, contains no not-yet-typed symbols when the IMPLICIT rules are
parsed.
* symbol.c (gfc_check_symbol_typed): Check that a symbol already has
a type associated to it, otherwise use the IMPLICIT rules or signal
an error.
2008-08-22 Daniel Kraft <d@domob.eu>
PR fortran/32095
PR fortran/34228
* gfortran.dg/used_before_typed_1.f90: New test.
* gfortran.dg/used_before_typed_2.f90: New test.
* gfortran.dg/used_before_typed_3.f90: New test.
* gfortran.dg/array_constructor_26.f03: Add -std=gnu to not enable
legacy-behaviour for the new check.
* gfortran.dg/array_constructor_27.f03: Ditto.
* gfortran.dg/blockdata_4.f90: Ditto.
* gfortran.dg/bound_2.f90: Reordered declarations to satisfy the check.
* gfortran.dg/result_in_spec_1.f90: Ditto.
* gfortran.dg/argument_checking_7.f90: Adapted expected error messages.
From-SVN: r139425
GCC Administrator [Fri, 22 Aug 2008 00:16:37 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r139421
Richard Henderson [Thu, 21 Aug 2008 19:31:02 +0000 (12:31 -0700)]
configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Remove spurrious comma from test.
* configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Remove
spurrious comma from test.
* configure: Rebuild.
From-SVN: r139408
Manuel López-Ibáñez [Thu, 21 Aug 2008 19:05:46 +0000 (19:05 +0000)]
re PR c/30457 (Please warn about va_start(ap, invalid))
2008-08-21 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 30457
* builtins.c (fold_builtin_next_arg): Add warning about undefined
behaviour.
testsuite/
* gcc.dg/pr30457.c: New.
From-SVN: r139406
Aldy Hernandez [Thu, 21 Aug 2008 17:50:01 +0000 (17:50 +0000)]
c-tree.h (grokfield): New argument.
* c-tree.h (grokfield): New argument.
* c-decl.c (grokfield): Handle new location argument.
* c-parser.c (c_parser_struct_declaration): Pass location to
grokfield.
testsuite/
* gcc.dg/
20011008-1.c: Test column.
* gcc.dg/
20080820.c: New.
* gcc.dg/fltconst-1.c: Test column.
* gcc.dg/cpp/cpp.exp: Add -fno-show-column.
* gcc.dg/cpp/trad/trad.exp: Same.
* lib/gcc.exp (gcc_target_compile): Remove -fno-show-column.
* lib/gcc-dg.exp (process-message): Handle columns.
From-SVN: r139403
Sebastian Redl [Thu, 21 Aug 2008 17:37:23 +0000 (19:37 +0200)]
eh_ptr.cc (__gxx_dependent_exception_cleanup): Call __cxa_free_dependent_exception.
2008-08-21 Sebastian Redl <sebastian.redl@getdesigned.at>
* libsupc++/eh_ptr.cc (__gxx_dependent_exception_cleanup): Call
__cxa_free_dependent_exception.
From-SVN: r139402
Joseph Myers [Thu, 21 Aug 2008 16:32:38 +0000 (17:32 +0100)]
anchor1.C (foo): Return the return value of ycf->ascent.
* g++.dg/opt/anchor1.C (foo): Return the return value of
ycf->ascent.
From-SVN: r139399
Richard Guenther [Thu, 21 Aug 2008 16:15:08 +0000 (16:15 +0000)]
tree-ssa-ccp.c (ccp_fold): Fold VIEW_CONVERT_EXPRs of constants.
2008-08-21 Richard Guenther <rguenther@suse.de>
* tree-ssa-ccp.c (ccp_fold): Fold VIEW_CONVERT_EXPRs of constants.
* gcc.dg/vect/vect-fold-1.c: Scan ccp1 dump instead of dom1.
From-SVN: r139398
David Daney [Thu, 21 Aug 2008 16:08:26 +0000 (16:08 +0000)]
class.c (make_class_data): Don't add field_index when flag_reduced_reflection set.
2008-08-21 David Daney <ddaney@avtrex.com>
* class.c (make_class_data): Don't add field_index when
flag_reduced_reflection set.
From-SVN: r139397
Nathan Froyd [Thu, 21 Aug 2008 15:45:37 +0000 (15:45 +0000)]
Fix ChangeLog typo
From-SVN: r139394
Nathan Froyd [Thu, 21 Aug 2008 15:37:05 +0000 (15:37 +0000)]
libgomp.exp (libgomp_init): Only set things that depend on blddir if blddir exists.
* testsuite/libgomp.exp (libgomp_init): Only set things that
depend on blddir if blddir exists.
(libgomp_target_compile): Likewise.
* testsuite/libgomp.c++/c++.exp: Likewise.
* testsuite/libgomp.fortran/fortran.exp: Likewise.
From-SVN: r139393
Jan Hubicka [Thu, 21 Aug 2008 15:26:59 +0000 (17:26 +0200)]
cgraph.c (first_cgraph_function_insertion_hook): New variable.
* cgraph.c (first_cgraph_function_insertion_hook): New variable.
(cgraph_add_function_insertion_hook, cgraph_remove_function_insertion_hook,
cgraph_call_function_insertion_hooks): New functions.
* cgraph.h (cgraph_add_function_insertion_hook, cgraph_remove_function_insertion_hook,
cgraph_call_function_insertion_hooks): Declare.
* ipa-reference.c (function_insertion_hook_holder): New variable.
(check_operand, look_for_address_of): When checking late, do not care
about module bitmaps.
(add_new_function): New function.
(generate_summary): Register hooks; zero module bitmaps.
(propagate): Unregister hooks.
* ipa-pure-const.c (function_insertion_hook_holder): New variable.
(add_new_function): New function.
(generate_summary): Register hook.
(propagate): Remove hook.
* ipa-cp.c (ipcp_need_redirect_p): Fix to not be constant 0.
* tree-pass.h (pass_ipa_cp): Make ipa_opt_pass.
* ipa-cp.c (ipcp_update_cloned_node): New function.
(build_const_val): Handle functions correctly; bring type logic
into sync with tree-inline.c
(ipcp_init_stage): Take care of computing stuff needed by
indirect inlining; update clones.
(ipcp_generate_summary): Break out of ipcp_driver.
(ipcp_driver): Do only execution and transformation.
(pass_ipa_cp): Make IPA_PASS.
* tree-ssa-ccp.c (fold_stmt_r): Check type before trying to fold
offset to address.
* ipa-inline.c (inline_indirect_intraprocedural_analysis): When doing
ipcp, some info is already available.
* ipa-prop.c (ipa_count_arguments): Grow edge lists as needed.
* tree-inline.c (remap_ssa_name): Unshare expression.
From-SVN: r139389
Richard Guenther [Thu, 21 Aug 2008 15:18:58 +0000 (15:18 +0000)]
tree-ssa-pre.c (insert_into_preds_of_block): Before inserting a PHI ask VN if it is already available.
2008-08-21 Richard Guenther <rguenther@suse.de>
* tree-ssa-pre.c (insert_into_preds_of_block): Before inserting
a PHI ask VN if it is already available.
* tree-ssa-sccvn.h (vn_phi_lookup): Declare.
* tree-ssa-sccvn.c (vn_phi_lookup): Export.
From-SVN: r139388
Richard Guenther [Thu, 21 Aug 2008 13:50:30 +0000 (13:50 +0000)]
re PR middle-end/36817 (internal compiler error: in compare_values_warnv)
2008-08-21 Richard Guenther <rguenther@suse.de>
PR middle-end/36817
* tree-chrec.c (chrec_apply): Always call chrec_fold_plus which
makes sure to produce a result of the correct type.
* gcc.c-torture/compile/pr36817.c: New testcase.
From-SVN: r139385
Jan Hubicka [Thu, 21 Aug 2008 12:39:35 +0000 (14:39 +0200)]
Backport from LTO branch:
2008-05-05 Kenneth Zadeck <zadeck@naturalbridge.com>
Jan Hubicka <jh@suse.cz>
* ipa-pure-const.c
(init_state, finish_state, set_function_state, generate_summary):
New functions.
(scan_stmt): Renamed from scan_function. Changed to keep state in
local static vars rather than cgraph aux field.
(propagate): Renamed from static_execute. Changed to keep state in
local static vars rather than cgraph aux field.
(pass_ipa_pure_const): Changed from SIMPLE_IPA_PASS to IPA_PASS.
* tree-pass.h (pass_ipa_pure_const): Turn into IPA_PASS.
2008-07-15 Kenneth Zadeck <zadeck@naturalbridge.com>
* tree-pass.h (pass_ipa_reference): Make into ipa_opt_pass.
* ipa-reference.c (init_function_info, generate_summary,
propagate): New functions.
(analyze_function): Call init_function_info.
(static_execute): Stripped into generate_summary and propagate.
(pass_ipa_reference): Made into ipa_opt_pass.
From-SVN: r139378
Aaron W. LaFramboise [Thu, 21 Aug 2008 11:58:40 +0000 (05:58 -0600)]
Makefile.am: Add -no-undefined
2008-08-21 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
* Makefile.am: Add -no-undefined
* Makefile.in: Regenerate.
From-SVN: r139377
Richard Guenther [Thu, 21 Aug 2008 11:31:57 +0000 (11:31 +0000)]
ssa-fre-13.c: Remove XFAIL.
2008-08-21 Richard Guenther <rguenther@suse.de>
* gcc.dg/tree-ssa/ssa-fre-13.c: Remove XFAIL.
* gcc.dg/tree-ssa/ssa-fre-14.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-17.c: Likewise.
* gcc.dg/tree-ssa/data-dep-1.c: Likewise.
* gcc.dg/tree-ssa/ltrans-3.c: Likewise.
From-SVN: r139376
Richard Guenther [Thu, 21 Aug 2008 11:25:28 +0000 (11:25 +0000)]
re PR tree-optimization/37181 (FAIL: Divide_1 -O3)
2008-08-21 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37181
* tree-vrp.c (extract_range_from_binary_expr): Check for NULL
folding result.
(extract_range_from_unary_expr): Likewise.
From-SVN: r139375
Richard Guenther [Thu, 21 Aug 2008 11:22:52 +0000 (11:22 +0000)]
re PR testsuite/37182 (Revision 139286 caused gcc.dg/pr17506.c and gcc.dg/uninit-15.c)
2008-08-21 Richard Guenther <rguenther@suse.de>
PR testsuite/37182
* gcc.dg/pr17506.c: Remove duplicate testcase.
* gcc.dg/uninit-15.c: Adjust to allow for both correct
behaviors, one xfailed.
From-SVN: r139374
Manuel López-Ibáñez [Thu, 21 Aug 2008 10:55:13 +0000 (10:55 +0000)]
diagnostic.c (pedwarn_at): Rename as pedwarn.
2008-08-21 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* diagnostic.c (pedwarn_at): Rename as pedwarn.
(pedwarn): Delete.
* toplev.h (pedwarn_at): Likewise.
* builtins.c: Update all calls to pedwarn.
* c-lex.c: Likewise.
* toplev.c: Likewise.
* c-tree.h: Likewise.
* c-decl.c: Likewise.
* c-errors.c: Likewise.
* c-typeck.c: Likewise.
* c-common.c: Likewise.
* c-parser.c: Likewise.
cp/
* typeck.c: Update all calls to pedwarn.
* decl.c: Likewise.
* call.c: Likewise.
* error.c: Likewise.
* pt.c: Likewise.
* name-lookup.c: Likewise.
* parser.c: Likewise.
fortran/
* f95-lang.c: Update all calls to pedwarn.
From-SVN: r139373
Paolo Carlini [Thu, 21 Aug 2008 01:06:45 +0000 (01:06 +0000)]
char_traits.h (char_traits<char16_t>:: assign(char_type*, size_t, char_type), [...]): For now, just open-code.
2008-08-20 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/char_traits.h (char_traits<char16_t>::
assign(char_type*, size_t, char_type), char_traits<char32_t>::
assign(char_type*, size_t, char_type)): For now, just open-code.
From-SVN: r139367