Richard Guenther [Thu, 11 Sep 2008 21:48:11 +0000 (21:48 +0000)]
tree-ssa-uncprop.c (associate_equivalences_with_edges): Avoid entering the weaker equivalence recording.
2008-09-11 Richard Guenther <rguenther@suse.de>
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Avoid
entering the weaker equivalence recording.
* tree-ssa-phiprop.c (propagate_with_phi): Fix tuplification.
From-SVN: r140300
Joseph Myers [Thu, 11 Sep 2008 21:14:15 +0000 (22:14 +0100)]
compat.exp, [...]: Use .exe extension for compat test executables.
* lib/compat.exp, gcc.dg/compat/struct-layout-1.exp,
g++.dg/compat/struct-layout-1.exp: Use .exe extension for compat
test executables.
* gcc.dg/compat/struct-layout-1_generate.c,
g++.dg/compat/struct-layout-1_generate.c: Convert backslash to
slash in srcdir for dg-options string.
From-SVN: r140299
Joseph Myers [Thu, 11 Sep 2008 21:12:49 +0000 (22:12 +0100)]
sse5-haddX.c, [...]: Avoid intN_t types.
* gcc.target/i386/sse5-haddX.c, gcc.target/i386/sse5-hsubX.c:
Avoid intN_t types.
From-SVN: r140298
Joseph Myers [Thu, 11 Sep 2008 21:11:54 +0000 (22:11 +0100)]
* gcc.dg/builtins-8.c: Condition cbrt test on HAVE_C99_RUNTIME.
From-SVN: r140297
Jeff Law [Thu, 11 Sep 2008 17:17:57 +0000 (11:17 -0600)]
reload1.c (alter_reg): Undo the BYTE_BIG_ENDIAN correction performed by assign_stack_local on the IRA...
* reload1.c (alter_reg): Undo the BYTE_BIG_ENDIAN correction performed
by assign_stack_local on the IRA path for stack slot sharing as well
as the non-IRA path.
From-SVN: r140295
Uros Bizjak [Thu, 11 Sep 2008 17:08:04 +0000 (19:08 +0200)]
i386.h: Fix whitespace issues.
* config/i386/i386.h: Fix whitespace issues.
From-SVN: r140294
Martin Jambor [Thu, 11 Sep 2008 17:03:23 +0000 (19:03 +0200)]
ipa-prop.h (struct ipa_param_flags): Removed.
2008-09-11 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (struct ipa_param_flags): Removed.
(struct ipa_param_descriptor): New structure.
(struct ipa_node_params): ipcp_lattices, param_decls and
param_flags moved to ipa_param_description.
(ipa_get_ith_param): Renamed to ipa_get_param, changed to access
descriptors. Renamed all users.
(ipa_is_ith_param_modified): Renamed to ipa_is_param_modified,
changed to access descriptors. Renamed all users.
(ipa_is_ith_param_called): Renamed to ipa_is_param_called, changed
to access descriptors. Renamed all users.
* ipa-cp.c (ipcp_init_cloned_node): Call
ipa_initialize_node_params instead of ipa_count_formal_params and
ipa_create_param_decls_array.
(ipcp_analyze_node): Likewise.
(ipcp_get_ith_lattice): Renamed to ipcp_get_lattice, changed to access
descriptors. Renamed all users.
(ipcp_initialize_node_lattices): Remove allocation.
* ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
ipa_initialize_node_params instead of ipa_count_formal_params and
ipa_create_param_decls_array.
* ipa-prop.c (ipa_create_param_decls_array): Renamed to
ipa_populate_param_decls, made static, added parameter info,
renamed mt to node, removed allocation, changed to use
descriptors.
(ipa_count_formal_params): Made static, added parameter info,
renamed mt to node.
(ipa_initialize_node_params): New function.
(ipa_check_stmt_modifications): Changed to use descriptors.
(ipa_detect_param_modifications): Removed allocation, changed to
use descriptors.
(ipa_note_param_call): Changed to use descriptors.
(ipa_analyze_params_uses): Removed allocation.
(ipa_free_node_params_substructures): Changed to use descriptors.
(ipa_edge_duplication_hook): Use the unused attribute.
(ipa_node_duplication_hook): Use the unused attribute, changed to
use descriptors, changed to duplicate descriptors.
* ipa-inline.c (cgraph_mark_inline_edge): New parameter new_edges,
changed all callers. Call ipa_propagate_indirect_call_infos if doing
indirect inlining. Made static.
(cgraph_decide_inlining): Freeing ipa-prop structures after inlining
functions called only once.
(cgraph_decide_recursive_inlining): Don't call
ipa_propagate_indirect_call_infos, pass new_edges to
cgraph_mark_inline_edge instead.
(cgraph_decide_inlining_of_small_functions): Don't call
ipa_propagate_indirect_call_infos, pass new_edges to
cgraph_mark_inline_edge instead.
(cgraph_decide_inlining): Don't call
ipa_propagate_indirect_call_infos.
* ipa-prop.c: Check that vectors are allocated.
* ipa-inline.c (cgraph_mark_inline_edge): Returns boolean, true
iff a new cgraph edges have been created.
(cgraph_decide_inlining): New variable redo_always_inline.
Flattening and always_inlining loop until callgraph stabilizes.
* ipa-prop.c (update_call_notes_after_inlining): Returns boolean,
true iff new cgraph edges have been created.
(propagate_info_to_inlined_callees): Likewise.
(ipa_propagate_indirect_call_infos): Likewise.
From-SVN: r140293
Richard Guenther [Thu, 11 Sep 2008 14:53:20 +0000 (14:53 +0000)]
tree-vectorizer.c (slpeel_add_loop_guard): Fix types.
2008-09-11 Richard Guenther <rguenther@suse.de>
* tree-vectorizer.c (slpeel_add_loop_guard): Fix types.
(set_prologue_iterations): Likewise.
* tree-vect-transform.c (vect_create_addr_base_for_vector_ref):
Likewise.
(vect_update_init_of_dr): Likewise.
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Fix
type verification.
* fold-const.c (fold_unary): Do not generate calculations
in sub-types.
From-SVN: r140291
Paolo Bonzini [Thu, 11 Sep 2008 14:45:05 +0000 (14:45 +0000)]
dojump.c (do_jump): Move below.
2008-09-11 Paolo Bonzini <bonzini@gnu.org>
* dojump.c (do_jump) [BIT_AND_EXPR]: Move below. Fall through to
TRUTH_AND_EXPR for boolean (1-bit precision) expressions.
(do_jump) [BIT_IOR_EXPR]: Compile as TRUTH_OR_EXPR.
* tree-flow.h (simplify_stmt_using_ranges): Accept a GSI, return a bool.
* tree-ssa-propagate.c (substitute_and_fold): Pass a GSI to
VRP's simplify_stmt_using_ranges. Do simplify_stmt_using_ranges
before finalizing the changes.
* tree-vrp.c (extract_range_from_binary_expr): Add limited support
for BIT_IOR_EXPR.
(simplify_truth_ops_using_ranges): New.
(simplify_div_or_mod_using_ranges, simplify_abs_using_ranges,
simplify_cond_using_ranges, simplify_switch_using_ranges): Return
whether a simplification was made.
(simplify_stmt_using_ranges): Ditto, and accept a GSI. For GS_ASSIGN,
use a switch statement and also call simplify_truth_ops_using_ranges.
testsuite:
2008-09-11 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/tree-ssa/vrp47.c: New.
* gcc.target/i386/andor-2.c: New.
From-SVN: r140288
Jan Hubicka [Thu, 11 Sep 2008 12:48:53 +0000 (14:48 +0200)]
ggc-common.c (loc_array): Make static.
* ggc-common.c (loc_array): Make static.
* dce.c (rest_of_handle_ud_dce): Free worklist.
From-SVN: r140286
Jan Hubicka [Thu, 11 Sep 2008 12:41:36 +0000 (14:41 +0200)]
cgraph.c (cgraph_release_function_body): Plug memory leak on ipa_transforms_to_apply and CFG...
* cgraph.c (cgraph_release_function_body): Plug memory leak on
ipa_transforms_to_apply and CFG; ggc_free gimple df and struct function
so we are sure we do not dangle it forever.
* function.c (outer_function_chain, find_function_data): Remove.
(function_context_stack): New.
(push_function_context, pop_function_context): Update.
* function.h (struct function): Remove pointer outer.
(outer_function_chain, find_function_data): Remove.
* stmt.c (force_label_rtx): Remove dead call of find_function_data.
From-SVN: r140285
Jan Hubicka [Thu, 11 Sep 2008 12:38:57 +0000 (14:38 +0200)]
re PR middle-end/37448 (cannot compile big function)
PR middle-end/37448
* cgraph.c (cgraph_create_edge): Use !cgraph_edge for sanity check.
From-SVN: r140284
Jan Hubicka [Thu, 11 Sep 2008 12:36:53 +0000 (14:36 +0200)]
* tree-ssa-pre.c (phi_translate_1): Fix memory leak
From-SVN: r140283
Jan Hubicka [Thu, 11 Sep 2008 12:36:05 +0000 (14:36 +0200)]
tree-ssa.c (redirect_edge_var_map_clear): Fix formatting.
* tree-ssa.c (redirect_edge_var_map_clear): Fix formatting.
(free_var_map_entry): New function.
(redirect_edge_var_map_destroy): Use it.
From-SVN: r140282
Jan Hubicka [Thu, 11 Sep 2008 12:34:53 +0000 (14:34 +0200)]
re PR middle-end/37448 (cannot compile big function)
PR middle-end/37448
* tree-inline.c (add_lexical_block): Replace with ...
(prepend_lexical_block): ... prepend at begginig.
(remap_blocks): Use it and reverse later.
(expand_call_inline): Use prepend_lexical_block.
From-SVN: r140281
Jan Hubicka [Thu, 11 Sep 2008 12:32:24 +0000 (14:32 +0200)]
* gimplify.c (pop_gimplify_context): Free bind_expr_stack.
From-SVN: r140280
Jan Hubicka [Thu, 11 Sep 2008 12:31:40 +0000 (14:31 +0200)]
function.c (free_after_compilation): Call insn_locators_free.
* function.c (free_after_compilation): Call insn_locators_free.
* cfglayout.c (insn_locators_free): New function.
* rtl.h (insn_locators_free): Declare.
From-SVN: r140279
Jan Hubicka [Thu, 11 Sep 2008 12:20:42 +0000 (14:20 +0200)]
ifcvt.c (check_cond_move_block): Make regs argument pointer to vector pointer.
* ifcvt.c (check_cond_move_block): Make regs argument pointer to vector pointer.
(cond_move_process_if_block): Update call.
From-SVN: r140278
Jan Hubicka [Thu, 11 Sep 2008 12:17:22 +0000 (14:17 +0200)]
toplev.c (dump_memory_report): Call dump_vec_loc_statistics.
* toplev.c (dump_memory_report): Call dump_vec_loc_statistics.
* vec.c: Include hashtab.h
(vec_descriptor, ptr_hash_entry): New structures.
(vec_desc_hash, vec_ptr_map): New static variables.
(hash_descriptor, eq_descriptor, hash_ptr, eq_ptr, vec_descriptor,
register_overhead, free_overhead, vec_heap_free): New functions.
(vec_gc_o_reserve_1): ggc_free when resizing to 0.
(vec_heap_o_reserve_1): free when resizing to 0; add statistics.
(cmp_statistic, add_statistics, dump_vec_loc_statistics): New functions.
From-SVN: r140277
Ira Rosen [Thu, 11 Sep 2008 12:08:01 +0000 (12:08 +0000)]
re PR tree-optimization/37474 (vect_supported_slp_permutation_p memory corruption)
PR tree-optimization/37474
* tree-vect-analyze.c (vect_supported_load_permutation_p): Check the
length of load permutation.
From-SVN: r140276
Andreas Schwab [Thu, 11 Sep 2008 11:08:26 +0000 (11:08 +0000)]
* config/m68k/m68k.h (IRA_COVER_CLASSES): Define.
From-SVN: r140275
Andreas Schwab [Thu, 11 Sep 2008 09:11:23 +0000 (09:11 +0000)]
xgot-1.c: Add -mcpu=5206 to select a ColdFire target.
* gcc.target/m68k/xgot-1.c: Add -mcpu=5206 to select a ColdFire
target.
From-SVN: r140272
Jakub Jelinek [Thu, 11 Sep 2008 07:33:23 +0000 (09:33 +0200)]
re PR target/37382 (ICE in extract_insn: <var_decl 0x7fda26ff4b40 swig_module>) 0))
PR target/37382
* expmed.c (extract_low_bits): Avoid creating invalid subregs.
* dse.c (find_shift_sequence): Use extract_low_bits instead of
simplify_gen_subreg.
* gcc.c-torture/compile/pr37382.c: New test.
From-SVN: r140265
Daniel Kraft [Thu, 11 Sep 2008 07:28:18 +0000 (09:28 +0200)]
re PR fortran/36214 (Wrong simplification of BOZ constants)
2008-09-11 Daniel Kraft <d@domob.eu>
PR fortran/36214
* simplify.c (simplify_cmplx): Added linebreak to long line.
* target-memory.c (gfc_convert_boz): Fix indentation.
(gfc_interpret_float): Set mpfr precision to right value before
calling mpfr_init.
2008-09-11 Daniel Kraft <d@domob.eu>
PR fortran/36214
* gfortran.dg/boz_9.f90: Corrected test.
* gfortran.dg/boz_13.f90: New test.
* gfortran.dg/boz_14.f90: New test.
From-SVN: r140264
Ira Rosen [Thu, 11 Sep 2008 06:00:03 +0000 (06:00 +0000)]
tree-vect-transform.c (vectorizable_store): Use the rhs vector type for alias check.
* tree-vect-transform.c (vectorizable_store): Use the rhs vector type
for alias check.
From-SVN: r140257
GCC Administrator [Thu, 11 Sep 2008 00:16:26 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140254
Paolo Carlini [Wed, 10 Sep 2008 21:34:38 +0000 (21:34 +0000)]
ctype.cc (use_facet<ctype<char> >, [...]): Remove specializations.
2008-09-10 Paolo Carlini <paolo.carlini@oracle.com>
* src/ctype.cc (use_facet<ctype<char> >, use_facet<ctype<wchar_t>):
Remove specializations.
* src/locale-inst.cc (use_facet<ctype<C> >): Instantiate.
* include/bits/locale_facets.tcc (use_facet<ctype<char> >,
use_facet<ctype<wchar_t>): Declare as extern template.
* include/bits/locale_facets.h (use_facet<ctype<char> >,
use_facet<ctype<wchar_t>): Do not declare as specializations.
From-SVN: r140251
H.J. Lu [Wed, 10 Sep 2008 21:13:44 +0000 (21:13 +0000)]
expr.c (find_array_element): Reformat comment.
2008-09-10 H.J. Lu <hongjiu.lu@intel.com>
* expr.c (find_array_element): Reformat comment.
From-SVN: r140250
Jakub Jelinek [Wed, 10 Sep 2008 21:08:17 +0000 (23:08 +0200)]
re PR middle-end/37338 (gcc.dg/array-init-1.c)
PR middle-end/37338
* gimplify.c (gimplify_body): Call default_rtl_profile.
From-SVN: r140249
H.J. Lu [Wed, 10 Sep 2008 21:07:29 +0000 (21:07 +0000)]
expr.c (find_array_element): Reformat.
2008-09-10 H.J. Lu <hongjiu.lu@intel.com>
* expr.c (find_array_element): Reformat.
From-SVN: r140248
Jakub Jelinek [Wed, 10 Sep 2008 21:06:25 +0000 (23:06 +0200)]
re PR target/36904 (vector context sensitive keyword vs macros)
PR target/36904
* config/rs6000/rs6000-c.c (rs6000_macro_to_expand): Return NULL
instead of tok->val.node if not expanding to something else. Handle
intervening CPP_PADDING tokens.
(altivec_categorize_keyword): Remove unneeded comparisons.
* gcc.target/powerpc/altivec-27.c: New test.
From-SVN: r140247
Joel Sherrill [Wed, 10 Sep 2008 20:11:49 +0000 (20:11 +0000)]
Makefile.in: Switch RTEMS to s-interr-hwint.adb.
2008-09-10 Joel Sherrill <joel.sherrill@oarcorp.com>
* gcc-interface/Makefile.in: Switch RTEMS to s-interr-hwint.adb.
* s-osinte-rtems.ads: Add shared hardware interrupt adapter
layer. RTEMS binds to OS provided adapter routines so there are
no modifications to s-osinte-rtems.adb.
From-SVN: r140246
Andrew Pinski [Wed, 10 Sep 2008 19:09:13 +0000 (19:09 +0000)]
re PR rtl-optimization/37333 (ICE in ira_flattening, at ira-build.c:2146)
2008-09-10 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/37333
* gcc.c-torture/compile/
20080910-1.c: New testcase.
From-SVN: r140243
Paolo Carlini [Wed, 10 Sep 2008 17:37:30 +0000 (17:37 +0000)]
ctype_members.cc (ctype<char>::_M_narrow_init, [...]): Don't define here.
2008-09-10 Paolo Carlini <paolo.carlini@oracle.com>
* config/locale/darwin/ctype_members.cc (ctype<char>::_M_narrow_init,
ctype<char>::_M_widen_init): Don't define here.
* config/locale/gnu/ctype_members.cc: Likewise.
* config/locale/generic/ctype_members.cc: Likewise.
* src/ctype.cc: Define here.
From-SVN: r140240
Tobias Burnus [Wed, 10 Sep 2008 17:18:08 +0000 (19:18 +0200)]
mk-sik-inc.sh: Make -Wunused-variable proof.
2008-09-10 Tobias Burnus <burnus@net-b.de>
H. J. Lu <hongjiu.lu@intel.com>
* mk-sik-inc.sh: Make -Wunused-variable proof.
* mk-srk-inc.sh: Make -Wunused-variable proof.
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r140239
Paolo Carlini [Wed, 10 Sep 2008 16:48:47 +0000 (16:48 +0000)]
re PR libstdc++/37455 (Code bloat for ostream.widen('\n'))
2008-09-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37455
* include/bits/locale_facets.h (ctype<char>::_M_narrow_init,
ctype<char>::_M_widen_init): Don't define inline.
* config/locale/darwin/ctype_members.cc: ... define here.
* config/locale/gnu/ctype_members.cc: ... likewise.
* config/locale/generic/ctype_members.cc: ... likewise.
* config/abi/pre/gnu.ver: Export.
From-SVN: r140238
Tobias Burnus [Wed, 10 Sep 2008 16:39:15 +0000 (18:39 +0200)]
mk-kinds-h.sh: Make -Wunused-variable proof.
2008-09-10 Tobias Burnus <burnus@net-b.de>
* mk-kinds-h.sh: Make -Wunused-variable proof.
From-SVN: r140237
Richard Guenther [Wed, 10 Sep 2008 16:14:30 +0000 (16:14 +0000)]
tree-ssa-pre.c (phi_translate_1): Fix memory leak.
2008-09-10 Richard Guenther <rguenther@suse.de>
* tree-ssa-pre.c (phi_translate_1): Fix memory leak.
From-SVN: r140236
Richard Guenther [Wed, 10 Sep 2008 15:07:04 +0000 (15:07 +0000)]
re PR tree-optimization/37432 (ICE in VN_INFO, at tree-ssa-sccvn.c:180)
2008-09-10 Richard Guenther <rguenther@suse.de>
PR middle-end/37432
* tree-inline.c (insert_init_stmt): Make sure to not
insert invalid gimple stores.
* gcc.c-torture/compile/pr37432.c: New testcase.
From-SVN: r140233
Sebastian Pop [Wed, 10 Sep 2008 14:46:35 +0000 (14:46 +0000)]
re PR tree-optimization/37388 ([graphite] No warn with "-O0 -fgraphite" when cloog or ppl are not present)
2008-09-10 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/37388
* toplev.c (process_options): Fail and warn when graphite
flags are used, but the compiler has not been configured
with graphite libraries.
* graphite.c (graphite_transform_loops): Remove printfs
to dump_file for the case when graphite is not available.
From-SVN: r140232
H.J. Lu [Wed, 10 Sep 2008 14:14:28 +0000 (07:14 -0700)]
re PR target/37434 (ICE in extract_insn, at recog.c:2027)
gcc/
2008-09-10 H.J. Lu <hongjiu.lu@intel.com>
PR target/37434:
* config/i386/i386.c (ix86_expand_vector_init_interleave): Force
the even element into register.
(ix86_expand_vector_init_general): Don't use
ix86_expand_vector_init_interleave on V16QImode and V8HImode
if we can't move from GPR to SSE register directly.
gcc/testsuite/
2008-09-10 H.J. Lu <hongjiu.lu@intel.com>
PR target/37434:
* gcc.target/i386/pr37434-1.c: New.
* gcc.target/i386/pr37434-2.c: Likewise.
* gcc.target/i386/pr37434-3.c: Likewise.
* gcc.target/i386/pr37434-4.c: Likewise.
* gcc.target/i386/sse2-set-v8hi-1a.c: Likewise.
* gcc.target/i386/sse2-set-v8hi-2a.c: Likewise.
* gcc.target/i386/sse4_1-set-v16qi-1a.c: Likewise.
* gcc.target/i386/sse4_1-set-v16qi-2a.c: Likewise.
* gcc.target/i386/sse4_1-set-v16qi-3a.c: Likewise.
From-SVN: r140231
Bernd Schmidt [Wed, 10 Sep 2008 13:28:34 +0000 (13:28 +0000)]
bfin.c (workaround_speculation): Correct algorithm to not lose track of the number of NOPs needed.
* config/bfin/bfin.c (workaround_speculation): Correct algorithm to
not lose track of the number of NOPs needed. Number of NOPs needed
for sync vs. loads workaround was switched; corrected. Run second
pass for all workarounds. No NOPs needed after call insns. Change
second pass to use find_next_insn_start and find_load helpers in order
to properly detect parallel insns.
* config/bfin/bfin.md (cbranch_with_nops): Increase length.
From-SVN: r140230
Tobias Burnus [Wed, 10 Sep 2008 11:54:08 +0000 (13:54 +0200)]
re PR fortran/37420 (-Wunused-variable broken)
2008-09-10 Tobias Burnus <burnus@net-b.de>
PR fortran/37420
* trans-decl.c (get_proc_pointer_decl): Fix -Wunused-variable.
2008-09-10 Tobias Burnus <burnus@net-b.de>
PR fortran/37420
* gfortran.dg/warn_unused_var.f90: New test.
* gfortran.dg/warn_unused_var.f90: Add cleanup-modules.
From-SVN: r140229
Jan Hubicka [Wed, 10 Sep 2008 11:37:18 +0000 (13:37 +0200)]
value-prof.c (gimple_ic): Fix tuplification bug.
* value-prof.c (gimple_ic): Fix tuplification bug.
* sched-deps.c (sched_insns_conditions_mutex_p): Silence unitialized var
warning.
From-SVN: r140228
Jakub Jelinek [Wed, 10 Sep 2008 08:00:40 +0000 (10:00 +0200)]
re PR tree-optimization/37353 (ICE: vector VEC(gimple,base) push domain error, in tree_call_cdce at tree-call-cdce.c:890)
PR tree-optimization/37353
* tree-call-cdce.c (cond_dead_built_in_calls): Remove.
(shrink_wrap_conditional_dead_built_in_calls): Add calls argument, use
calls instead of cond_dead_built_in_calls.
(tree_call_cdce): Add cond_dead_built_in_calls automatic variable,
initalize the vector only before adding first entry. Use VEC_safe_push
instead of VEC_quick_push. Pass cond_dead_built_in_calls to
shrink_wrap_conditional_dead_built_in_calls call.
* gcc.dg/pr37353.c: New test.
From-SVN: r140208
Ira Rosen [Wed, 10 Sep 2008 07:18:52 +0000 (07:18 +0000)]
re PR middle-end/37385 (ICE in set_mem_alias_set with the vectorizer and function pointers)
PR tree-optimization/37385
* tree-vect-transform.c (vect_create_data_ref_ptr): Add a new argument,
and use it as a vector type if not NULL.
(vectorizable_store): Call vect_create_data_ref_ptr with the type of
vectorized rhs.
(vect_setup_realignment): Call vect_create_data_ref_ptr with additional
argument.
(vectorizable_load): Likewise.
From-SVN: r140195
Jakub Jelinek [Wed, 10 Sep 2008 06:23:57 +0000 (08:23 +0200)]
i386.md (SWI32): New mode iterator.
* config/i386/i386.md (SWI32): New mode iterator.
(jcc_fused_1, jcc_fused_2, jcc_fused_3, jcc_fused_4): Use it instead
of SWI.
From-SVN: r140189
GCC Administrator [Wed, 10 Sep 2008 00:16:29 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140187
H.J. Lu [Tue, 9 Sep 2008 23:58:57 +0000 (16:58 -0700)]
re PR rtl-optimization/37435 (ICE with volatiles)
gcc/
2008-09-09 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/37435
* caller-save.c (insert_restore, insert_save): Check the mode by
reg_save_code.
gcc/testsuite/
2008-09-09 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/37435
* gcc.dg/dfp/pr37435.c: New.
From-SVN: r140184
John David Anglin [Tue, 9 Sep 2008 23:57:41 +0000 (23:57 +0000)]
re PR other/37265 (mt_allocator.cc:646: ICE: in gt_ggc_m_S, at ggc-page.c:1281)
PR other/37265
* dwarf2asm.c (dw2_force_const_mem): Use unstripped symbol name for
splay tree lookup.
(dw2_output_indirect_constant_1): Use unstripped name in symbol
reference.
From-SVN: r140183
Benjamin Kosnik [Tue, 9 Sep 2008 22:42:23 +0000 (22:42 +0000)]
abi.xml: Update for new releases.
2008-09-09 Benjamin Kosnik <bkoz@redhat.com>
* doc/xml/manual/abi.xml: Update for new releases.
* doc/doxygen/user.cfg.in: Include C compatibility headers.
* doc/html/*: Regenerate.
From-SVN: r140180
Sandra Loosemore [Tue, 9 Sep 2008 22:21:10 +0000 (18:21 -0400)]
invoke.texi (ARM Options): Correct errors in discussion of -mfloat-abi, -mhard-float, and -msoft-float.
2008-09-09 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi (ARM Options): Correct errors in discussion
of -mfloat-abi, -mhard-float, and -msoft-float.
From-SVN: r140179
Jakub Jelinek [Tue, 9 Sep 2008 22:08:46 +0000 (00:08 +0200)]
re PR c++/37417 (error: type mismatch in binary expression, verify_gimple failed)
PR c++/37417
* tree.c (array_type_nelts_top): Add size_one_node instead of
integer_one_node.
* g++.dg/ext/vla5.C: New test.
From-SVN: r140178
Jakub Jelinek [Tue, 9 Sep 2008 22:06:20 +0000 (00:06 +0200)]
re PR middle-end/37356 (ICE in gsi_insert_seq_nodes_after, at gimple-iterator.c:222)
PR middle-end/37356
* tree-inline.c (copy_bb): Insert stmt into copy_basic_block before
calling gimple_regimplify_operands on it. Iterate over all newly
added statements, not just the last one.
(insert_init_stmt): Insert stmt into seq first, then call
gimple_regimplify_operands on it. Don't create new gimplification
context, nor find referenced vars.
* g++.dg/tree-ssa/pr37356.C: New test.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r140177
Jason Merrill [Tue, 9 Sep 2008 21:41:58 +0000 (17:41 -0400)]
re PR c++/37439 (ICE using auto return-type in template function)
PR c++/37439
* pt.c (tsubst_copy) [PARM_DECL]: Don't abort if the parm has
DECL_CONTEXT set.
From-SVN: r140176
Paolo Carlini [Tue, 9 Sep 2008 21:36:42 +0000 (21:36 +0000)]
2008-09-09 Paolo Carlini <paolo.carlini@oracle.com>
* Fix typo in ChangeLog.
From-SVN: r140175
Paolo Carlini [Tue, 9 Sep 2008 21:33:46 +0000 (21:33 +0000)]
cinttypes: Restore __STDC_FORMAT_MACRO after inclusion of <inttypes.h>.
2008-09-09 Paolo Carlini <paolo.carlini@oracle.com>
* include/tr1_impl/cinttypes: Restore __STDC_FORMAT_MACRO after
inclusion of <inttypes.h>.
* include/tr1_impl/cstdint: Likewise for __STDC_LIMIT_MACROS and
__STDC_CONSTANT_MACROS after <stdint.h>.
* include/bits/postypes.h: Likewise.
From-SVN: r140174
Jakub Jelinek [Tue, 9 Sep 2008 19:19:41 +0000 (21:19 +0200)]
re PR other/37419 (mpfr related memory corruption)
PR other/37419
* ipa-prop.h (ipa_propagate_indirect_call_infos): Change last argument
to pointer to vector pointer.
* ipa-prop.c (ipa_propagate_indirect_call_infos,
propagate_info_to_inlined_callees): Likewise.
(update_call_notes_after_inlining): Likewise. Push new indirect edge
to *new_edges instead of new_edges. Reread IPA_EDGE_REF after
ipa_check_create_edge_args.
* ipa-inline.c (cgraph_decide_recursive_inlining): Change last argument
to pointer to vector pointer.
(cgraph_decide_inlining_of_small_function): Adjust
cgraph_decide_recursive_inlining and ipa_propagate_indirect_call_infos
calls.
From-SVN: r140168
Jakub Jelinek [Tue, 9 Sep 2008 19:18:55 +0000 (21:18 +0200)]
re PR target/37438 (ICE in extract_insn, at recog.c:2027 for i{4,5}86)
PR target/37438
* config/i386/i386.md (zero_extendqihi2_movzbl): Enable when optimizing
for size, not speed.
* gcc.dg/pr37438.c: New test.
From-SVN: r140167
Jakub Jelinek [Tue, 9 Sep 2008 19:17:30 +0000 (21:17 +0200)]
re PR rtl-optimization/37408 (Invalid insn scheduling)
PR rtl-optimization/37408
* function.c (assign_parm_find_stack_rtl): Set correct MEM_SIZE
if parm is promoted.
From-SVN: r140166
Jakub Jelinek [Tue, 9 Sep 2008 19:16:49 +0000 (21:16 +0200)]
re PR c++/37389 (expected integer_cst, have error_mark in build_enumerator)
PR c++/37389
* decl.c (build_enumerator): Handle previous value's DECL_INITIAL
being error_operand_p. Don't clear value if it was error_mark_node.
* g++.dg/parse/enum4.C: New test.
From-SVN: r140165
Sebastian Pop [Tue, 9 Sep 2008 18:39:45 +0000 (18:39 +0000)]
re PR middle-end/37375 ([graphite] Parameter detection and scev only take a surrounding loop as border)
2008-09-05 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/37375
* tree-scalar-evolution.c (scev_info_str): Add field instantiated_below.
(new_scev_info_str, eq_scev_info, find_var_scev_info,
set_scalar_evolution, get_scalar_evolution, get_instantiated_value,
set_instantiated_value): Pass instantiated_below.
(analyze_scalar_evolution_1, analyze_scalar_evolution): Update calls to
above functions.
(instantiate_scev_1, instantiate_scev): Pass a basic block above which the
definitions are not instantiated.
* tree-scalar-evolution.h (instantiate_scev): Update declaration.
(block_before_loop): New.
* tree-data-ref.c (dr_analyze_indices): Update uses of instantiate_scev.
* graphite.c (block_before_scop): New.
(loop_affine_expr, stmt_simple_for_scop_p, harmful_stmt_in_bb): Pass a
basic block, not a loop for determining the parameters.
(scopdet_edge_info, build_scops_1): Do not pass outermost loop in the
scop.
(idx_record_params, find_params_in_bb, find_scop_parameters,
build_loop_iteration_domains, add_conditions_to_domain): Update calls
to instantiate_scev.
* Makefile.in (cfgloopmanip.o): Add missing dependency on TREE_FLOW_H.
From-SVN: r140164
Daniel Kraft [Tue, 9 Sep 2008 18:08:08 +0000 (20:08 +0200)]
re PR fortran/37429 (Checks when assigning from a type-bound procedure broken)
2008-09-09 Daniel Kraft <d@domob.eu>
PR fortran/37429
* resolve.c (expression_rank): Added assertion to guard against
EXPR_COMPCALL expressions.
(resolve_compcall): Set expression's rank from the target procedure's.
2008-09-09 Daniel Kraft <d@domob.eu>
PR fortran/37429
* gfortran.dg/typebound_call_7.f03: New test.
* gfortran.dg/typebound_call_8.f03: New test.
From-SVN: r140163
Jason Merrill [Tue, 9 Sep 2008 17:38:10 +0000 (13:38 -0400)]
demangle.h (enum demangle_component_type): Add DEMANGLE_COMPONENT_DECLTYPE.
* include/demangle.h (enum demangle_component_type): Add
DEMANGLE_COMPONENT_DECLTYPE.
* libiberty/cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_DECLTYPE.
(d_make_comp): Likewise.
(cplus_demangle_type): Handle decltype and DFP types.
(cplus_demangle_operators): Call operator takes 2 args.
(cplus_demangle_builtin_types): Add DFP types.
(d_exprlist): New fn.
(d_expression): Handle parm placeholders, T() and calls.
(d_print_comp): Handle decltype, T() and calls.
* libiberty/testsuite/demangle-expected: Test the above.
From-SVN: r140162
Vladimir Makarov [Tue, 9 Sep 2008 17:05:56 +0000 (17:05 +0000)]
re PR rtl-optimization/37333 (ICE in ira_flattening, at ira-build.c:2146)
2008-09-09 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-opt/37333
* ira-build.c (ira_create_allocno): Setup frequency to 0.
* ira-color.c (update_conflict_hard_regno_costs): Remove assert.
Check zero freq and increase if necessary.
From-SVN: r140160
Vladimir Makarov [Tue, 9 Sep 2008 16:52:55 +0000 (16:52 +0000)]
ira-conflicts.c (process_regs_for_copy): Check that the hard regno is in the right range.
2008-09-09 Vladimir Makarov <vmakarov@redhat.com>
* ira-conflicts.c (process_regs_for_copy): Check that the hard
regno is in the right range. Add comments.
From-SVN: r140159
Rainer Orth [Tue, 9 Sep 2008 16:36:14 +0000 (16:36 +0000)]
Makefile.in (mips-tfile.o-warn): Don't error out on mips-tfile.c warnings.
* Makefile.in (mips-tfile.o-warn): Don't error out on mips-tfile.c
warnings.
* mips-tfile.c (copy_object): Cast alloca result to int *.
* mips-tdump.c (print_symbol): Cast xmalloc return values to
proper types.
Rename class to sclass.
(read_tfile): Cast read_seek return values to proper types.
Cast xcalloc return value to proper type.
From-SVN: r140158
Rainer Orth [Tue, 9 Sep 2008 16:17:37 +0000 (16:17 +0000)]
sol2.h (REGISTER_TARGET_PRAGMAS): Move ...
* config/sol2.h (REGISTER_TARGET_PRAGMAS): Move ...
* config/i386/sol2.h (REGISTER_SUBTARGET_PRAGMAS): ... here.
* config/sparc/sol2.h (REGISTER_TARGET_PRAGMAS): ... and here.
From-SVN: r140157
Jan Hubicka [Tue, 9 Sep 2008 15:28:19 +0000 (17:28 +0200)]
profile.c (is_edge_inconsistent): Add debug output; ignore negative count on fake edges.
* profile.c (is_edge_inconsistent): Add debug output; ignore negative count
on fake edges.
(is_inconsistent): Add debug output.
From-SVN: r140156
Aldy Hernandez [Tue, 9 Sep 2008 14:48:15 +0000 (14:48 +0000)]
pr12329.c: Place error message on function name line.
PR/37442
* gcc.target/i386/pr12329.c: Place error message on function name
line.
* gcc.target/i386/sse-5.c: Same.
From-SVN: r140155
Andrey Belevantsev [Tue, 9 Sep 2008 14:23:19 +0000 (18:23 +0400)]
haifa-sched.c (advance_one_cycle): Do not print '\n' before printing dump message.
* haifa-sched.c (advance_one_cycle): Do not print '\n' before printing
dump message.
(choose_ready): When first insn is chosen from the ready list, also
dump it.
From-SVN: r140152
Andrey Belevantsev [Tue, 9 Sep 2008 14:19:31 +0000 (18:19 +0400)]
re PR rtl-optimization/37360 (ICE in haifa-sched.c when compiling __popcountsi2 from libgcc)
PR rtl-optimization/37360
* haifa-sched.c (max_issue): Do not assert that we never issue more
insns than issue_rate. Add comment.
From-SVN: r140151
Richard Guenther [Tue, 9 Sep 2008 13:54:08 +0000 (13:54 +0000)]
tree-cfg.c (verify_types_in_gimple_op): Remove.
2008-09-09 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_types_in_gimple_op): Remove.
(verify_types_in_gimple_call): Rename to ...
(verify_gimple_call): ... this. Enhance.
(verify_types_in_gimple_cond): Remove.
(verify_gimple_comparison): New function ...
(verify_types_in_gimple_assign): ... split out from here.
(verify_types_in_gimple_return): Rename to ...
(verify_gimple_return): ... this. Enhance.
(verify_types_in_gimple_switch): Rename to ...
(verify_gimple_switch): ... this. Enhance.
(verify_gimple_goto): New function.
(verify_types_in_gimple_phi): Rename to ...
(verify_gimple_phi): ... this. Enhance.
(verify_types_in_gimple_stmt): Adjust calls to helper functions.
Fold in single-statement cases from verify_types_in_gimple_seq_2.
(verify_types_in_gimple_seq_2): Remove cases handled in
verify_types_in_gimple_stmt.
From-SVN: r140150
Richard Guenther [Tue, 9 Sep 2008 13:52:59 +0000 (13:52 +0000)]
decl.c (build_result_decl): Remove no longer applicable promotion.
2008-09-09 Richard Guenther <rguenther@suse.de>
* decl.c (build_result_decl): Remove no longer applicable
promotion.
From-SVN: r140149
Andreas Schwab [Tue, 9 Sep 2008 13:37:14 +0000 (13:37 +0000)]
(GLIBCXX_CHECK_STANDARD_LAYOUT): Fix compile check
not to redefine main.
From-SVN: r140148
Arnaud Charlet [Tue, 9 Sep 2008 13:01:51 +0000 (15:01 +0200)]
Makefile.in: Switch VxWorks to s-interr-hwint.adb.
* gcc-interface/Makefile.in: Switch VxWorks to s-interr-hwint.adb.
* s-interr-vxworks.adb: Renamed to s-interr-hwint.adb
* s-interr-hwint.adb: New file.
* s-osinte-vxworks.ads, s-osinte-vxworks.adb: Add new functions
needed by s-interr-hwint.adb.
* s-osinte-vxworks-kernel.adb: New file.
From-SVN: r140147
Bernd Schmidt [Tue, 9 Sep 2008 12:09:37 +0000 (12:09 +0000)]
bfin.c (n_regs_to_save): New static variable.
* config/bfin/bfin.c (n_regs_to_save): New static variable.
(push_multiple_operation, pop_multiple_operation): Set it.
(workaround_rts_anomaly): New function.
(workaround_speculation): New function, broken out of bfin_reorg.
(bfin_reorg): Call the new functions.
From-SVN: r140146
Richard Guenther [Tue, 9 Sep 2008 11:26:45 +0000 (11:26 +0000)]
re PR tree-optimization/37354 (ICE: in find_func_aliases, at tree-ssa-structalias.c:3906)
2008-09-09 Richard Guenther <rguenther@suse.de>
PR middle-end/37354
PR middle-end/30165
* gimplify.c (gimplify_conversion): Change conversions of
non-register type to VIEW_CONVERT_EXPRs.
(gimplify_addr_expr): If we need to make the operand
addressable make sure to use a properly initialized
temporary for that so it gets a valid gimple store.
* g++.dg/torture/pr37354.C: New testcase.
From-SVN: r140145
Aldy Hernandez [Tue, 9 Sep 2008 10:56:23 +0000 (10:56 +0000)]
function.h (struct function): Add function_start_locus.
* function.h (struct function): Add function_start_locus.
* cfgexpand.c (gimple_expand_cfg): Use it.
* c-parser.c (c_parser_declaration_or_fndef): Set it.
testsuite/
* gcc.dg/always_inline.c: Place error message on function
name line.
* gcc.dg/winline-6.c: Same.
* gcc.dg/noreturn-1.c: Same.
* gcc.dg/noreturn-7.c: Same.
* gcc.dg/inline-14.c: Same.
* gcc.dg/always_inline3.c: Same.
* gcc.dg/winline-3.c: Same.
* gcc.dg/wtr-func-def-1.c: Same.
* gcc.dg/winline-5.c: Same.
* gcc.dg/winline-7.c: Same.
* gcc.dg/winline-9.c: Same.
* gcc.dg/noreturn-4.c: Same.
* gcc.dg/
20041213-1.c: Use column numbers.
From-SVN: r140144
Richard Guenther [Tue, 9 Sep 2008 10:06:54 +0000 (10:06 +0000)]
re PR tree-optimization/37433 (tree check: expected function_decl, have string_cst in ccp_fold, at tree-ssa-ccp.c:1050)
2008-09-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37433
* tree-ssa-ccp.c (ccp_fold): Properly guard folding of
function calls.
* gcc.c-torture/compile/pr37433.c: New testcase.
From-SVN: r140143
Richard Guenther [Tue, 9 Sep 2008 10:05:49 +0000 (10:05 +0000)]
re PR tree-optimization/37387 (ICE in extract_range_from_binary_expr, at tree-vrp.c:2145)
2008-09-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37387
* tree-ssa-ifcombine.c (ifcombine_iforif): Convert the name
and bits to a common type.
* gcc.c-torture/compile/pr37387.c: New testcase.
From-SVN: r140142
Daniel Kraft [Tue, 9 Sep 2008 09:46:51 +0000 (11:46 +0200)]
re PR fortran/37411 (ICE (segfault) in trans-array.c)
2008-09-09 Daniel Kraft <d@domob.eu>
PR fortran/37411
* trans-array.c (gfc_conv_array_parameter): Added assertion that the
symbol has an array spec.
2008-09-09 Daniel Kraft <d@domob.eu>
PR fortran/37411
* gfortran.dg/array_function_4.f90: New test.
From-SVN: r140141
Nick Clifton [Tue, 9 Sep 2008 09:16:07 +0000 (09:16 +0000)]
* config/v850/v850.md (return): Restore frame size restriction.
From-SVN: r140139
Paolo Bonzini [Tue, 9 Sep 2008 08:56:58 +0000 (08:56 +0000)]
c-common.c (c_expand_decl): Remove.
2008-09-09 Paolo Bonzini <bonzini@gnu.org>
* c-common.c (c_expand_decl): Remove.
* c-common.h (anon_aggr_type_p): Remove prototype.
(DECL_ANON_UNION_ELEMS): Remove.
* c-objc-common.h (LANG_HOOKS_EXPAND_DECL): Remove.
* c-decl.c (anon_aggr_type_p): Remove.
* langhooks-def.h (LANG_HOOKS_EXPAND_DECL): Remove.
(LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_EXPAND_DECL.
* langhooks.h (struct lang_hooks): Remove expand_decl.
* langhooks.c (lhd_expand_decl): Remove.
* stmt.c (expand_anon_union_decl): Remove.
* tree.h (expand_anon_union_decl): Remove prototype.
cp:
2008-09-09 Paolo Bonzini <bonzini@gnu.org>
* cp-objcp-common.h (LANG_HOOKS_EXPAND_DECL): Remove.
* cp-tree.h: Don't mention DECL_ANON_UNION_ELEMS.
* semantics.c (anon_aggr_type_p): Remove.
From-SVN: r140138
Daniel Jacobowitz [Tue, 9 Sep 2008 03:17:22 +0000 (03:17 +0000)]
filter2_x.C: Declare abort.
* g++.dg/compat/eh/filter2_x.C: Declare abort.
* g++.dg/compat/eh/new1_x.C, g++.dg/compat/eh/new1_y.C: Include
cstddef and use std::size_t.
* gcc.dg/compat/compat-common.h: Define SKIP_COMPLEX_INT if
SKIP_COMPLEX. Honor SKIP_COMPLEX.
* gcc.dg/compat/scalar-by-value-3_x.c,
gcc.dg/compat/scalar-by-value-3_y.c,
gcc.dg/compat/scalar-by-value-4_x.c,
gcc.dg/compat/scalar-by-value-4_y.c,
gcc.dg/compat/scalar-by-value-5.c,
gcc.dg/compat/scalar-by-value-5_main.c,
gcc.dg/compat/scalar-by-value-6.c,
gcc.dg/compat/scalar-by-value-6_main.c,
gcc.dg/compat/scalar-by-value-6_x.c,
gcc.dg/compat/scalar-by-value-6_y.c,
gcc.dg/compat/struct-by-value-16_x.c,
gcc.dg/compat/struct-by-value-16_y.c,
gcc.dg/compat/struct-by-value-16a_x.c,
gcc.dg/compat/struct-by-value-16a_y.c,
gcc.dg/compat/struct-by-value-17_x.c,
gcc.dg/compat/struct-by-value-17_y.c,
gcc.dg/compat/struct-by-value-17a_x.c,
gcc.dg/compat/struct-by-value-17a_y.c,
gcc.dg/compat/struct-by-value-18_x.c,
gcc.dg/compat/struct-by-value-18_y.c,
gcc.dg/compat/struct-by-value-18a_x.c,
gcc.dg/compat/struct-by-value-18a_y.c,
gcc.dg/compat/struct-layout-1.h,
gcc.dg/compat/scalar-return-3_x.c,
gcc.dg/compat/scalar-return-3_y.c,
gcc.dg/compat/scalar-return-4_x.c,
gcc.dg/compat/scalar-return-4_y.c: Honor SKIP_COMPLEX.
* gcc.dg/compat/scalar-by-value-y.h: Use stdarg.h for non-GCC
compilers.
* gcc.dg/compat/struct-by-value-22_y.c,
gcc.dg/compat/struct-by-value-22_main.c,
gcc.dg/compat/struct-by-value-22_x.c: Honor SKIP_VLA_IN_STRUCT.
* lib/c-compat.exp (compat_setup_dfp): Check the compiler under test
first.
* lib/compat.exp: Document COMPLEX and VLA_IN_STRUCT skips.
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r140137
GCC Administrator [Tue, 9 Sep 2008 00:16:31 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140134
Andy Hutchinson [Mon, 8 Sep 2008 22:41:27 +0000 (22:41 +0000)]
wo_prof_escape_substr_value.c: Limit allocation based on STACK_SIZE.
* gcc.dg/struct/wo_prof_escape_substr_value.c: Limit allocation based on STACK_SIZE.
* gcc.dg/struct/wo_prof_array_through_pointer.c: Ditto.
* gcc.dg/struct/wo_prof_escape_substr_pointer.c: Ditto.
* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Limit allocation based on STACK_SIZE. Check malloc return for NULL.
* gcc.dg/struct/w_prof_local_var.c: Ditto.
* gcc.dg/struct/wo_prof_mult_field_peeling.c: Ditto.
* gcc.dg/struct/w_prof_local_array.c: Limit allocation based on STACK_SIZE. XFAIL AVR target.
* gcc.dg/struct/wo_prof_local_array.c: Ditto.
* gcc.dg/struct/w_prof_two_strs.c: Limit allocation based on STACK_SIZE. Limit random size to N.
* gcc.dg/struct/wo_prof_two_strs.c: Limit allocation based on STACK_SIZE. XFAIL AVR target. Limit random size to N.
* gcc.dg/struct/w_prof_single_str_global.c: XFAIL AVR target.
* gcc.dg/struct/wo_prof_array_field.c: Ditto.
* gcc.dg/struct/wo_prof_double_malloc.c: Ditto.
* gcc.dg/struct/wo_prof_global_array.c: Ditto.
* gcc.dg/struct/wo_prof_single_str_global.c: Ditto.
* gcc.dg/struct/wo_prof_single_str_local.c: Ditto.
* gcc.dg/struct/w_prof_global_var.c: Limit allocation based on STACK_SIZE. Check malloc return for NULL. XFAIL AVR target.
* gcc.dg/struct/wo_prof_global_var.c: Ditto.
* gcc.dg/struct/wo_prof_local_var.c: Ditto.
* gcc.dg/struct/wo_prof_malloc_size_var.c: Access only allocated space. Limit allocation based on STACK_SIZE. XFAIL AVR target.
From-SVN: r140126
John David Anglin [Mon, 8 Sep 2008 22:26:44 +0000 (22:26 +0000)]
cdce3.C: Require c99 runtime.
* g++.dg/cdce3.C: Require c99 runtime.
From-SVN: r140125
Andy Hutchinson [Mon, 8 Sep 2008 22:25:42 +0000 (22:25 +0000)]
re PR target/36609 (AVR wrong code using incorrect RTL for test reversal pattern)
PR target/36609
* config/avr/avr.c (avr_reorg): Create RTL for reversed compare with zero.
* config/avr/avr.md (QISI) : Define mode iterator.
(negated_tst<mode>) : Redefine as split using mode macro.
(reversed_tstqi): Define insn as reversed compare with zero.
(reversed_tsthi): Ditto.
(reversed_tstsi): Ditto.
From-SVN: r140124
Jakub Jelinek [Mon, 8 Sep 2008 21:31:36 +0000 (23:31 +0200)]
re PR middle-end/37393 (error: EH edge 10->12 is missing)
PR middle-end/37393
* tree-inline.c (copy_bb): When replacing a gimple_call_va_arg_pack_p
call stmt by new_call, clear gimple_bb on stmt after gsi_replace.
* g++.dg/tree-ssa/pr37393.C: New test.
From-SVN: r140123
Jakub Jelinek [Mon, 8 Sep 2008 21:30:23 +0000 (23:30 +0200)]
re PR middle-end/37414 (ICE with -ffast-math)
PR middle-end/37414
* predict.c (optimize_function_for_size_p): Don't segfault if
FUN is NULL.
* fold-const.c (LOGICAL_OP_NON_SHORT_CIRCUIT, fold_truthop,
tree_swap_operands_p): Don't test cfun != NULL before calling
optimize_function_for_s*_p.
* g++.dg/opt/init2.C: New test.
From-SVN: r140122
Eric Botcazou [Mon, 8 Sep 2008 21:21:10 +0000 (21:21 +0000)]
ira-color.c (ira_reuse_stack_slot): Set slot_num on success at the end of the search.
* ira-color.c (ira_reuse_stack_slot): Set slot_num on success at the
end of the search.
From-SVN: r140121
Jason Merrill [Mon, 8 Sep 2008 20:52:44 +0000 (16:52 -0400)]
re PR c++/37302 (function parameters are declared too late)
PR c++/37302
* parser.c (cp_parser_parameter_declaration_list): Process the
PARM_DECLs as we go and push them. Return a TREE_LIST.
(cp_parser_parameter_declaration_clause): Return a TREE_LIST.
(cp_parser_direct_declarator): Create a binding level and
suppress deprecated warnings in the parameter list.
(make_call_declarator): PARMS is now a tree.
* cp-tree.h (struct cp_declarator): Function parms are now a tree.
* decl.h (enum deprecated_states, deprecated_state): Move here.
* decl.c: From here.
(type_is_deprecated): New fn.
(grokparms): PARMLIST is a tree now. Warn about parms that
use deprecated types.
* mangle.c (write_expression): Handle PARM_DECL, CALL_EXPR and
0-operand cast.
* pt.c (tsubst) [DECLTYPE_TYPE]: Set skip_evaluation.
(tsubst_copy) [PARM_DECL]: Handle a PARM_DECL used outside of a
function.
* name-lookup.c (pushtag): Look through function parameter scopes.
(pushdecl_maybe_friend): Don't set DECL_CONTEXT on a PARM_DECL
when we're parsing a function declarator.
From-SVN: r140120
M R Swami Reddy [Mon, 8 Sep 2008 19:55:05 +0000 (13:55 -0600)]
crx.h (IRA_COVER_CLASSES): Define.
2008-09-02 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* config/crx/crx.h (IRA_COVER_CLASSES): Define.
From-SVN: r140118
Jakub Jelinek [Mon, 8 Sep 2008 19:31:18 +0000 (21:31 +0200)]
re PR middle-end/37337 (ICE: verify_flow_info failed)
PR middle-end/37337
* tree-ssa-dom.c (optimize_stmt): Call maybe_clean_or_replace_eh_stmt
even when a stmt has been gimple_modified_p, but after fold_stmt is
not any longer. Remove unneeded may_have_exposed_new_symbols
initializations.
* g++.dg/tree-ssa/pr37337.C: New test.
From-SVN: r140117
Richard Guenther [Mon, 8 Sep 2008 16:31:43 +0000 (16:31 +0000)]
re PR tree-optimization/37421 (ICE in vn_reference_insert_pieces at tree-ssa-sccvn.c:1131)
2008-09-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37421
* tree-ssa-sccvn.c (visit_copy): Make sure to fully
valueize the RHS.
* g++.dg/torture/pr37421.C: New testcase.
From-SVN: r140111
Daniel Kraft [Mon, 8 Sep 2008 13:51:26 +0000 (15:51 +0200)]
re PR fortran/36167 (ICE in gfc_conv_descriptor_dimension, at fortran/trans-array.c:242)
2008-09-08 Daniel Kraft <d@domob.eu>
PR fortran/36167
* gfortran.dg/array_function_3.f90: New test.
* gfortran.dg/save_3.f90: Added cleanup-modules directive.
* gfortran.dg/string_compare_1.f90: Ditto.
From-SVN: r140107
Jakub Jelinek [Mon, 8 Sep 2008 12:39:28 +0000 (14:39 +0200)]
re PR middle-end/37415 (ICE with -ftree-store-ccp)
PR middle-end/37415
* opts.c (common_handle_option): Handle OPT_ftree_store_ccp.
From-SVN: r140105
Andreas Schwab [Mon, 8 Sep 2008 09:23:49 +0000 (09:23 +0000)]
Typo.
From-SVN: r140103
Daniel Kraft [Mon, 8 Sep 2008 09:17:27 +0000 (11:17 +0200)]
re PR fortran/37199 (array assignment from function writes out of bounds)
2008-09-08 Daniel Kraft <d@domob.eu>
PR fortran/37199
* trans-expr.c (gfc_add_interface_mapping): Set new_sym->as.
(gfc_map_intrinsic_function): Added checks against NULL bounds in
array specs.
2008-09-08 Daniel Kraft <d@domob.eu>
PR fortran/37199
* gfortran.dg/array_function_2.f90: New test.
From-SVN: r140102