Commit Graph

81603 Commits

Author SHA1 Message Date
Roman Zippel 7bb3ae2f52 df-scan.c (df_read_modify_subreg_p): Use REGMODE_NATURAL_SIZE.
* df-scan.c (df_read_modify_subreg_p): Use REGMODE_NATURAL_SIZE.
	(df_def_record_1): Set (DF_REF_READ_WRITE | DF_REF_PARTIAL) for
	partial register accesses.

From-SVN: r125940
2007-06-22 02:55:07 +00:00
Jerry DeLisle aa7393d96a re PR fortran/31162 (missing warning for real do-loops with implicit typed variables)
2007-06-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/31162
	* gfortran.dg/assign.f90: Update test.
	* gfortran.dg/real_do_1.f90: Update test.
	* gfortran.dg/gomp/omp_do1.f90: Update test.
	* gfortran.dg/warnings_are_errors_1.f: Update test.
	* gfortran.dg/g77/20010519-1.f: Update test.
	* gfortran.dg/g77/pr9258.f: Update test.
	* gfortran.dg/g77/960317-1.f: Update test.

From-SVN: r125939
2007-06-22 01:54:27 +00:00
Jerry DeLisle 79e7840d22 re PR fortran/31162 (missing warning for real do-loops with implicit typed variables)
2007-06-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/31162
	* resolve.c (gfc_resolve_iterator_expr): Add check for REAL using
	gfc_notify_standard. (gfc_resolve_iterator): Remove check.
	(resolve_branch): Change "Obsolete" to "Deleted feature".
	* io.c (resolve_tag): Ditto.
	* match.c (gfc_match_pause, gfc_match_assign, gfc_match_goto): Ditto.

From-SVN: r125938
2007-06-22 01:50:09 +00:00
GCC Administrator 49d2bde811 Daily bump.
From-SVN: r125936
2007-06-22 00:16:59 +00:00
Adam Nemet f1b42630a5 fold-const.c (debug_fold_checksum): Move it under ENABLE_FOLD_CHECKING.
* fold-const.c (debug_fold_checksum): Move it under
	ENABLE_FOLD_CHECKING.

From-SVN: r125932
2007-06-21 23:46:59 +00:00
Sebastian Pop 70826cbbef re PR middle-end/20623 (ICE: fold check: original tree changed by fold with --enable-checking=fold)
PR middle-end/20623
	* tree.h (debug_fold_checksum): Declared.
	* fold-const.c (build_fold_addr_expr_with_type_1): New.
	(build_fold_addr_expr_with_type, build_fold_addr_expr): Use 
	build_fold_addr_expr_with_type_1.
	(fold_addr_expr, debug_fold_checksum): New.
	(fold_checksum_tree): Don't fold TREE_CHAIN of an SSA_NAME.
	(fold_unary, fold_comparison, split_address_to_core_and_offset):
	Use fold_addr_expr.

From-SVN: r125929
2007-06-21 21:25:27 +00:00
Sebastian Pop 6f1c9cd02f re PR tree-optimization/19590 (IVs with the same evolution not eliminated)
PR tree-optimization/19590
	* tree-vrp.c (adjust_range_with_scev): Set the range when the result
	of scev is a constant.
	* gcc/testsuite/gcc.dg/tree-ssa/pr19590.c: New.

From-SVN: r125925
2007-06-21 17:06:05 +00:00
Kenneth Zadeck e44e043cb3 df-problems.c (df_note_bb_compute): Made computation of live info consistent with df_lr.
2007-06-21  Kenneth Zadeck <zadeck@naturalbridge.com>

        * df-problems.c (df_note_bb_compute): Made computation of live
	info consistent with df_lr.

From-SVN: r125924
2007-06-21 16:24:59 +00:00
Richard Guenther 4228997795 re PR tree-optimization/32453 (ICE in build2_stat, at tree.c:3074 (extract_range_from_assert))
2007-06-21  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/32453
	* tree-vrp.c (extract_range_from_assert): Build POINTER_PLUS_EXPR
	for pointer anti-range.

	* gcc.c-torture/compile/pr32453.c: New testcase.

From-SVN: r125922
2007-06-21 14:54:47 +00:00
H.J. Lu 461a73b578 i386.c (processor_target_table): Increase maximum skip from 7 byte to 10 byte for Pentium Pro...
2007-06-21  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (processor_target_table): Increase maximum
	skip from 7 byte to 10 byte for Pentium Pro, Core 2 Duo and
	default 64bit.

	* config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Ensure 8
	byte alignment if > 8 byte alignment is preferred.
	* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.

From-SVN: r125920
2007-06-21 05:31:09 -07:00
Jakub Jelinek 3521f3cc39 re PR tree-optimization/31866 (ICE with tree check error: expected ssa_name, have var_decl in create_outofssa_var_map)
PR tree-optimization/31866
	* tree-ssa-coalesce.c (create_outofssa_var_map): Do nothing
	if ASM_EXPR's input is not a SSA_NAME.

	* gcc.dg/pr31866.c: New test.

From-SVN: r125919
2007-06-21 14:20:42 +02:00
Jakub Jelinek 64964499f4 re PR middle-end/32362 (ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508)
PR middle-end/32362
	* omp-low.c (lookup_decl_in_outer_ctx): Don't ICE if t is NULL,
	but decl is a global var, instead return decl.
	* gimplify.c (gimplify_adjust_omp_clauses_1): Add shared clauses
	even for is_global_var decls, if they are private in some outer
	context.

	* testsuite/libgomp.c/pr32362-1.c: New test.
	* testsuite/libgomp.c/pr32362-2.c: New test.
	* testsuite/libgomp.c/pr32362-3.c: New test.

From-SVN: r125917
2007-06-21 14:11:00 +02:00
Richard Guenther d9eb5318b6 re PR tree-optimization/32451 (ICE in verify_flow_info after DOM2)
2007-06-21  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/32451
	* tree-ssa-threadupdate.c (thread_single_edge): Fixup edge flags.

	* g++.dg/torture/20070621-1.C: New testcase.

From-SVN: r125916
2007-06-21 12:00:47 +00:00
Eric Botcazou a8257e58ac re PR tree-optimization/25737 (ACATS c974001 c974013 hang with struct aliasing)
PR tree-optimization/25737
	* misc.c (gnat_post_options): Do not force flag_tree_salias to 0.

From-SVN: r125915
2007-06-21 10:11:19 +00:00
Christian Bruel 5c7cafa8dc svn ci -m "introduce bank[0,1] registers and fix rte delay slot scheduling"
2007-06-21  Christian Bruel  <christian.bruel@st.com>

	* config/sh/sh-protos.h (sh_loads_bankedreg_p): Declare.
	* config/sh/sh.c (sh_loads_bankedreg_p): New function.
	(push_regs): Changed saving order or banked registers.
	(sh_expand_epilogue): Likewise.
	* config/sh/sh.h (BANKED_REGISTER_P): New macro.
	(FIRST_BANKED_REG): Likewise.
	(LAST_BANKED_REG): Likewise.
	* config/sh/sh.md (banked) New attribute.
	(in_delay_slot): Check banked attribute.

2007-06-21  Christian Bruel  <christian.bruel@st.com>

	* gcc.dg/attr-isr.c: Test delay slot content.

From-SVN: r125914
2007-06-21 10:58:53 +02:00
Keith Seitz 86488aa376 * gnu/classpath/jdwp/VMVirtualMachine.h: Regenerate.
From-SVN: r125910
2007-06-21 06:49:02 +00:00
Jerry DeLisle f2c9a6df65 re PR fortran/32361 (TYPE DECLARATION TO INITIALIZE DATA IN NAMED COMMON)
2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/32361
	gfortran.dg/pointer_assign_2.f90: New test.

From-SVN: r125909
2007-06-21 02:25:58 +00:00
Jerry DeLisle b141ff67de re PR fortran/32361 (TYPE DECLARATION TO INITIALIZE DATA IN NAMED COMMON)
2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/32361
	* match.c (gfc_match_common): If the symbol value expression type is
	NULL_EXPR, don't error if previously initialized.

From-SVN: r125908
2007-06-21 02:23:45 +00:00
Jerry DeLisle a3400cd548 re PR fortran/25061 (procedure name conflict)
2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/25061
	gfortran.dg/invalid_procedure_name.f90: New test.

From-SVN: r125907
2007-06-21 01:48:21 +00:00
Jerry DeLisle fd3e70afce re PR fortran/25061 (procedure name conflict)
2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/25061
	* decl.c (get_proc_name) Check symbol for generic interface
	and issue an error.

From-SVN: r125906
2007-06-21 01:18:02 +00:00
GCC Administrator 5b418a87cf Daily bump.
From-SVN: r125904
2007-06-21 00:16:52 +00:00
Sebastian Pop c0aafd30f7 re PR tree-optimization/32075 (can't determine dependence between p->a[x+i] and p->a[x+i+1] where x is invariant but defined in the function)
PR tree-optimization/32075
	* tree-data-ref.c (subscript_dependence_tester_1, 
	analyze_miv_subscript, analyze_overlapping_iterations,
	add_distance_for_zero_overlaps, build_classic_dist_vector,
	subscript_dependence_tester_1, analyze_overlapping_iterations,
	subscript_dependence_tester, access_functions_are_affine_or_constant_p,
	compute_affine_dependence, compute_all_dependences): Pass loop_nest 
	to evolution_function_is_affine_multivariate_p.

From-SVN: r125901
2007-06-20 23:44:56 +00:00
Sebastian Pop da9a21f490 re PR tree-optimization/32075 (can't determine dependence between p->a[x+i] and p->a[x+i+1] where x is invariant but defined in the function)
PR tree-optimization/32075
	* tree-data-ref.c (subscript_dependence_tester_1, 
	analyze_miv_subscript, analyze_overlapping_iterations,
	add_distance_for_zero_overlaps, build_classic_dist_vector,
	subscript_dependence_tester_1, analyze_overlapping_iterations,
	subscript_dependence_tester, access_functions_are_affine_or_constant_p,
	compute_affine_dependence, compute_all_dependences): Pass loop_nest 
	to evolution_function_is_affine_multivariate_p.

From-SVN: r125900
2007-06-20 23:42:28 +00:00
Keith Seitz 14d4217b59 Update from classpath trunk:
* classpath/lib/gnu/classpath/jdwp/value/StringValue.class:
        Regenerate.

        * gnu/classpath/jdwp/value/StringValue.java
        (StringValue): Tag of StringValue is STRING not OBJECT.
        (write): String values are written to the wire as tag byte
        and object ID, not JdwpString.

From-SVN: r125897
2007-06-20 20:35:22 +00:00
Keith Seitz 67b2a930fd VMVirtualMachine.java (executeMethod): Update from reference implementation.
* gnu/classpath/jdwp/VMVirtualMachine.java (executeMethod):
        Update from reference implementation.
        * gnu/classpath/jdwp/natVMVirtualMachine.cc (executeMethod):
        Update parameter list to match new VMVirtualMachine interface.
        * classpath/lib/gnu/classpath/jdwp/processor/ClassTypeCommandSet.class:
        Regenerate.
        * classpath/lib/gnu/classpath/jdwp/processor/
        ObjectReferenceCommandSet.class: Regenerate.
        * classpath/lib/gnu/classpath/jdwp/value/ObjectValue.class: Regenerate.
        * classpath/lib/gnu/classpath/jdwp/VMVirtualMachine.class: Regenerate.
        * classpath/lib/gnu/classpath/jdwp/util/MethodResult.class: Regenerate.

From-SVN: r125896
2007-06-20 20:32:20 +00:00
Keith Seitz a7eeed049b Update from classpath trunk:
* gnu/classpath/jdwp/processor/ClassTypeCommandSet.java
        (executeInvokeMethod): No need to use ValueFactory any more;
        MethodResult.getReturnedValue now returns a Value.
        (executeNewInstance): Double-check that return result is
        an ObjectValue; throw JdwpInternalErrorException if it is not.
        (invokeMethod): Method IDs come from VMMethod, not VMIdManager.
        Arguments are Values not Objects.
        Use ValueFactory to create arguments.
        Pass invocation options to VMVirtualMachine.executeMethod.
        Don't do any thread suspend/resume work: VMVM.executeMethod
        will take care of it.
        * gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java
        (executeInvokeMethod): Method IDs come from VMMethod, not
        VMIdManager.
        Arguments should be Values instead of Objects.
        Use ValueFactory to create Values.
        Remove specific option handling and pass options to
        VMVirtualMachine.executeMethod.
        Remove thread suspension.
        Use MethodResult.getReturnedValue to get method's result.
        * gnu/classpath/jdwp/util/MethodResult.java
        (returnedValue): Change type to Value.
        (thrownException): Change type to Throwable.
        (resType): Remove.
        (MethodResult): New constructor.
        (setReturnedValue): Remove.
        (SetThrownException): Remove.
        (getResultType): Remove.
        (setResultType): Remove.
        * gnu/classpath/jdwp/value/ObjectValue.java (getValue):
        New method.
        * vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
        (executeMethod): Replace "nonVirtual" parameter with more
        generic "options" parameter.
        Replace java.lang.reflect.Method parameter with VMMethod.
        Replace Object[] parameter with Value[] parameter.

From-SVN: r125895
2007-06-20 20:30:34 +00:00
Eric Botcazou 7e657ec235 df-scan.c (df_get_call_refs): Be prepared for MEMs inside CLOBBERs.
* df-scan.c (df_get_call_refs): Be prepared for MEMs inside CLOBBERs.

From-SVN: r125894
2007-06-20 20:26:07 +00:00
Rask Ingemann Lambertsen 7a9dcd47e8 re PR target/32335 (libgcc build failure, ICE in cselib_record_set, at cselib.c:1508)
2007-06-20  Rask Ingemann Lambertsen  <rask@sygehus.dk>

	PR target/32335
	* config/m32c/m32c.c (m32c_emit_epilogue): Use new HImode epilogue
	for TARGET_A16.
	* config/m32c/prologue.md (epilogue_exitd_16): New.
	(epilogue_reit_16): New.
	(epilogue_exitd): Rename to epilogue_exitd_24.
	(epilogue_reit): Rename to epilogue_reit_24.

From-SVN: r125893
2007-06-20 19:58:57 +00:00
Rask Ingemann Lambertsen 0e0642aa7a re PR target/32335 (libgcc build failure, ICE in cselib_record_set, at cselib.c:1508)
2007-06-20  Rask Ingemann Lambertsen  <rask@sygehus.dk>

	PR target/32335
	* config/m32c/m32c.c (m32c_emit_epilogue): Use new HImode epilogue
	for TARGET_A16.
	* config/m32c/prologue.md (epilogue_exitd_16): New.
	(epilogue_reit_16): New.
	(epilogue_exitd): Rename to epilogue_exitd_24.
	(epilogue_reit): Rename to epilogue_reit_24.

From-SVN: r125892
2007-06-20 19:57:32 +00:00
Seongbae Park b631c5f742 dbgcnt.def (global_alloc_at_func, [...]): New counters.
2007-06-20  Seongbae Park  <seongbae.park@gmail.com>
            Maxim Kuvyrkov  <mkuvyrkov@ispras.ru>

	* dbgcnt.def (global_alloc_at_func, global_alloc_at_reg):
	New counters.
	* haifa-sched.c (queue_to_ready): Don't requeue next insn
	if dbg_cnt (sched_insn) reaches the limit.
	(choose_ready): New parameter INSN_PTR and new return value.
	(schedule_block): Handle dbg_cnt (sched_insn). Handle
	the new return value from choose_ready.
	* global.c (global_aloc): New dbgcnt global_alloc_at_reg.
	(rest_of_handle_global_alloc): New global_alloc_at_func.



Co-Authored-By: Maxim Kuvyrkov <mkuvyrkov@ispras.ru>

From-SVN: r125891
2007-06-20 18:22:28 +00:00
Adam Nemet 3d9b47dc43 re PR tree-optimization/25737 (ACATS c974001 c974013 hang with struct aliasing)
PR tree-optimization/25737
	* tree.h (struct tree_struct_field_tag): Add new field alias_set.
	(SFT_NONADDRESSABLE_P, SFT_ALIAS_SET): New macros.
	* tree-flow.h (struct fieldoff): Add new field alias_set.
	* tree-ssa-structalias.c (push_fields_onto_fieldstack): Add new
	argument addressable_type.  Set alias_set of fieldoff.
	* tree-ssa-alias.c (create_sft): Add new argument alias_set.
	(create_overlap_variables_for): Pass alias_set from fieldoff to
	create_sft.
	* alias.c (get_alias_set): Use alias_set from SFT if set.

From-SVN: r125890
2007-06-20 18:19:10 +00:00
Adam Nemet 034bfe7a9f re PR tree-optimization/25737 (ACATS c974001 c974013 hang with struct aliasing)
PR tree-optimization/25737
	* testsuite/gcc.dg/tree-ssa/alias-14.c: New test.

From-SVN: r125889
2007-06-20 18:17:20 +00:00
Hui-May Chang 1c5ae9624c darwin.h (ASM_OUTPUT_COMMON): Print the size of a variable as an unsigned HOST_WIDE_INT integer.
* gcc/config/i386/darwin.h (ASM_OUTPUT_COMMON): Print the size
	of a variable as an unsigned HOST_WIDE_INT integer.

 	* gcc.target/i386/large-size-array-3.c: New.

From-SVN: r125888
2007-06-20 16:43:24 +00:00
Andrew Pinski 543535a318 re PR fortran/32140 (Miscompilation with -O1)
2007-06-20  Andrew Pinski  <andrew_pinski@playstation.sony.com>
	Richard Guenther  <rguenther@suse.de>

	PR fortran/32140
	* trans.c (gfc_build_addr_expr): Use the correct types.

	* gfortran.fortran-torture/execute/pr32140.f90: New testcase.

Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r125886
2007-06-20 14:57:10 +00:00
Nick Clifton 8dba2dedd3 Add (accidentally omited) ChangeLog entry for delta to config/m32r/linux.h
From-SVN: r125883
2007-06-20 08:47:02 +00:00
Uros Bizjak 2788381606 ChangeLog: Strip testsuite/ from file names.
* ChangeLog: Strip testsuite/ from file names.  Fix whitespace.
	Fix line wrapping.

From-SVN: r125882
2007-06-20 09:43:43 +02:00
Zdenek Dvorak 6848da6a81 re PR rtl-optimization/32405 (assertion failure in loop-iv.c; probable dataflow regression)
PR rtl-optimization/32405
	* loop-iv.c (iv_get_reaching_def): Fail for partial defs.

From-SVN: r125881
2007-06-20 06:56:26 +00:00
Jakub Jelinek 6330585d97 * Makefile.in (omega.o): Depend on $(DIAGNOSTIC_H).
From-SVN: r125876
2007-06-20 08:42:00 +02:00
Jakub Jelinek 1d8381f13f re PR middle-end/31959 (ICE in expand_builtin_expect, at builtins.c:5112)
PR middle-end/31959
	* builtins.c: Include diagnostic.h.
	(expand_builtin_expect): Make gcc_assert more permissive.
	* Makefile.in (builtins.o): Depend on $(DIAGNOSTIC_H).

	* gcc.dg/pr31959.c: New test.

From-SVN: r125875
2007-06-20 08:39:53 +02:00
Jakub Jelinek f497c16c26 re PR inline-asm/32109 (ICE with inline-asm and class with destructor)
PR inline-asm/32109
	* gimplify.c (gimplify_asm_expr): Issue error if type is addressable
	and !allows_mem.

	* g++.dg/ext/asm10.C: New test.

From-SVN: r125874
2007-06-20 08:37:17 +02:00
Jakub Jelinek 6a4e56a90e re PR middle-end/32285 (Miscompilation with pure _Complex returning call inside another fn's argument list)
PR middle-end/32285
	* calls.c (precompute_arguments): Also precompute CALL_EXPR arguments
	if ACCUMULATE_OUTGOING_ARGS.

	* gcc.c-torture/execute/20070614-1.c: New test.

From-SVN: r125873
2007-06-20 08:35:55 +02:00
GCC Administrator 6cb62483b6 Daily bump.
From-SVN: r125867
2007-06-20 00:16:56 +00:00
Chris Matthews 590bf0d3aa * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r125864
2007-06-20 00:10:46 +00:00
Rask Ingemann Lambertsen c105ee098f m68hc11.c: Include dataflow header file.
2007-06-19  Rask Ingemann Lambertsen  <rask@sygehus.dk>

	* config/m68hc11/m68hc11.c: Include dataflow header file.
	(m68hc11_reorg): Port to dataflow.

From-SVN: r125861
2007-06-19 21:41:43 +00:00
Kenneth Zadeck 4aa0f91154 forgot to save back Changelog
From-SVN: r125860
2007-06-19 21:07:29 +00:00
Uros Bizjak 670a8526bc i386.c (ix86_emit_swsqrtsf): Filter out infinity result of rsqrt insn for zero input argument to avoid NaN.
* config/i386/i386.c (ix86_emit_swsqrtsf): Filter out infinity
        result of rsqrt insn for zero input argument to avoid NaN.

From-SVN: r125858
2007-06-19 21:58:26 +02:00
Kenneth Zadeck 89a9577706 df.h (DF_FIRST_OPTIONAL_PROBLEM): Removed.
2007-06-15  Kenneth Zadeck <zadeck@naturalbridge.com>

	* df.h (DF_FIRST_OPTIONAL_PROBLEM): Removed.
	(struct df_problem.free_blocks_on_set_blocks): New field.
	(struct dataflow.optional_p): New field.
	(df_bb_regno_last_use_find, df_insn_regno_def_p): Removed.
	(df_live_set_all_dirty): New function.
	* df-scan.c (df_scan_alloc): Initialize optional_p.
	(problem_SCAN): Initialize free_blocks_on_set_blocks.
	* df-core.c (df_set_blocks): Removed use of
	DF_FIRST_OPTIONAL_PROBLEM.  Now uses
	df_problem.free_blocks_on_set_blocks to determine which blocks are
	recycled.
	(df_remove_problem): Removed use of DF_FIRST_OPTIONAL_PROBLEM.
	(df_finish_pass): Removed use of DF_FIRST_OPTIONAL_PROBLEM.  Now
	uses dataflow.optional_p to determine if problem should be
	deleted.
	(rest_of_handle_df_initialize): Only start live problem if 
	-02 or above.
	(df_bb_regno_last_use_find, df_insn_regno_def_p): Removed.
	* df-problems.c (df_ru_alloc, df_rd_alloc, df_lr_alloc,
	df_live_alloc, df_urec_alloc, df_note_alloc): set optional_p.
	(problem_RU, problem_RD, problem_LR, problem_UREC, problem_CHAIN,
	problem_NOTE):  Initialize free_blocks_on_set_blocks.
	(df_lr_bb_local_compute): Recompute luids if df_live problem is
	not active.
	(df_live_set_all_dirty, df_note_alloc): New function.
	* regrename.c (merge_overlapping_regs): Change DF_LIVE_* to
	df_get_live_*.
	* sched_ebb.c (compute_jump_reg_dependencies): Ditto.
	* postreload.c (reload_combine): Ditto.
	* cse.c (cse_extended_basic_block): Ditto.
	* regmove.c (mark_flags_life_zones): Ditto.
	* rtlfactoring.c (split_blocks_after_seqs, split_pattern_seq,
	erase_matching_seqs): Ditto.
	* bt-load.c (compute_defs_uses_and_gen): Ditto.
	* integrate (allocate_initial_values): Ditto.
	* combine.c (reg_dead_at_p): Ditto.
	* resource.c (mark_target_live_regs): Ditto.
	* sched-rgn.c (check_live_1, update_live_1): Ditto.
	* config/sh/sh.c (find_r0_life_regions): Ditto.
	* global.c (rest_of_handle_global_alloc): Only add back df_live
	for -O > 1.
	* local-alloc.c (rest_of_handle_local_alloc): Only remove
	df_live for -O > 1.
	* ifcvt.c (dead_or_predicable): Change DF_LIVE_* to
	df_get_live_*.
	(if_convert): Make sure df_live is there at -O == 1.
	(pass_if_after_combine): Cleanup flags.
	* init-regs.c (initialize_uninitialized_regs): Make sure df_live
	is there at -O == 1.

From-SVN: r125857
2007-06-19 19:04:52 +00:00
Seongbae Park a3a531ecfe arm.c (arm_get_frame_offsets): Set offsets->locals_base to avoid negative stack size.
gcc/ChangeLog:

2007-06-19  Seongbae Park  <seongbae.park@gmail.com>

	* config/arm/arm.c (arm_get_frame_offsets): Set
	offsets->locals_base to avoid negative stack size.
	(thumb1_expand_prologue): Assert on negative stack size.

gcc/testsuite/ChangeLog:

2007-06-19  Seongbae Park  <seongbae.park@gmail.com>

	* gcc.target/arm/stack-corruption.c: New test.

From-SVN: r125856
2007-06-19 18:47:09 +00:00
Sebastian Pop 0f7c07751c re PR tree-optimization/32367 (internal compiler error: in build_polynomial_chrec, at tree-chrec.h:113)
PR tree-optimization/32367
	* tree-chrec.h (build_polynomial_chrec): Verify that the left hand side 
	of the chrec has no evolution in that loop.
	* testsuite/gcc.dg/tree-ssa/pr32367.c: New.

From-SVN: r125855
2007-06-19 18:35:39 +00:00
Bob Wilson e70312d499 xtensa.c: Include "df.h".
* config/xtensa/xtensa.c: Include "df.h".
	(xtensa_builtin_saveregs): Use adjust_address instead of change_address.
	(xtensa_va_start): Invoke make_tree with sizetype for
	expand_builtin_saveregs and then convert the result to a pointer.
	Use POINTER_PLUS_EXPR.  Use size_int instead of build_int_cst.
	(xtensa_gimplify_va_arg_expr): Use size_int instead of build_int_cst.
	Subtract argument size from index value as integers and then use
	POINTER_PLUS_EXPR to add the result to the array address.

From-SVN: r125854
2007-06-19 17:58:13 +00:00