Commit Graph

86269 Commits

Author SHA1 Message Date
Jerry DeLisle
1af99ce67f re PR testsuite/35406 (gfortran.dg/ldist-1.f90 and gcc.dg/tree-ssa/ldist-4.c don't work)
2008-03-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR testsuite/35406
	* gcc.dg/tree-ssa/ldist-4.c: Update expected scan match count from 0
	to 1.

From-SVN: r133207
2008-03-14 04:59:39 +00:00
Jerry DeLisle
6babdc303f re PR testsuite/35406 (gfortran.dg/ldist-1.f90 and gcc.dg/tree-ssa/ldist-4.c don't work)
2008-03-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/35406
	* gfortran.dg/ldist-1.f90: Update test to check for 5 loops distributed
	instead of 4.

From-SVN: r133206
2008-03-14 03:48:23 +00:00
Jerry DeLisle
d3f2a55829 re PR fortran/35475 (gfortran fails to compile valid code with ICE erro in fold-const.c)
2008-03-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/35475
	* gfortran.dg/derived_sub.f90: New test.

From-SVN: r133205
2008-03-14 03:13:17 +00:00
H.J. Lu
af078a6003 re PR testsuite/35558 (Untested g++.dg/tls/static-1a.cc)
2008-03-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/35558
	* g++.dg/tls/static-1.C: Move dg-additional-sources after
	dg-require-effective-target.
	* g++.dg/tls/static-1a.cc: Likewise.

From-SVN: r133204
2008-03-13 20:08:29 -07:00
GCC Administrator
b6a99560ee Daily bump.
From-SVN: r133201
2008-03-14 00:20:12 +00:00
Tom Tromey
14ccf8003e re PR preprocessor/35322 (ICE with incomplete macro)
gcc/testsuite
	PR libcpp/35322:
	* gcc.dg/cpp/pr35322.c: New file.
libcpp
	PR libcpp/35322:
	* directives.c (destringize_and_run): Set pfile->directive.

From-SVN: r133195
2008-03-13 21:10:07 +00:00
Uros Bizjak
ca8bfb99cd vect-align-2.c: Remove dg-do run directive.
* gcc.dg/vect/vect-align-2.c: Remove dg-do run directive.
        (main): Call check_vect.

From-SVN: r133193
2008-03-13 21:13:29 +01:00
David Edelsohn
144562724e Fix AIX version number in comment.
From-SVN: r133187
2008-03-13 15:12:34 -04:00
David Edelsohn
9d3c50ea68 * config.rpath: Add AIX 6 support.
From-SVN: r133182
2008-03-13 14:55:20 -04:00
Seongbae Park
5a9340fd7f cplus-dem.c (malloc, realloc): Use void * instead of char * as return type.
2008-03-12  Seongbae Park <seongbae.park@gmail.com>

	* cplus-dem.c (malloc, realloc): Use void * instead of char *
	as return type.

From-SVN: r133181
2008-03-13 18:49:45 +00:00
Uros Bizjak
75d8b30e6d extend.texi (X86 Built-in Functions): Missed fragment from my previous commit commit.
* doc/extend.texi (X86 Built-in Functions): Missed fragment from
	my previous commit commit.

From-SVN: r133178
2008-03-13 19:00:22 +01:00
Uros Bizjak
52eaae977e extend.texi (X86 Built-in Functions): Fix the mode of input arguments and the mode of return value.
* doc/extend.texi (X86 Built-in Functions) [__builtin_ia32_psll?,
        __builtin_ia32_psrl?, __builtin_ia32_psra?, __builtin_ia32_psll?i,
        __builtin_ia32_psrl?i, __builtin_ia32_psra?i, __builtin_ia32_psll?128,
        __builtin_ia32_psrl?128, __builtin_ia32_psra?128]: Fix the mode of
        input arguments and the mode of return value.

From-SVN: r133177
2008-03-13 18:49:31 +01:00
Dennis Czeremin
3dd44c8d04 re PR libstdc++/35566 (multiset constructor uses insert_unique instead of insert_equal!)
2008-03-13  Dennis Czeremin  <dennis.czeremin@smiths-heimann.com>

	PR libstdc++/35566
	* include/bits/stl_multimap.h (multimap<>::multimap(_InputIterator,
	_InputIterator)): Forward to _M_insert_equal, not _M_insert_unique.

From-SVN: r133175
2008-03-13 17:48:21 +00:00
Paolo Carlini
a6becb0ef5 re PR libstdc++/35541 (Legal C++ program can't be compiled with -D_GLIBCXX_DEBUG)
2008-03-13  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/35541
	* include/debug/functions.h (__check_sorted_set_aux): Fix signature.
	* testsuite/25_algorithms/set_difference/35541.cc: New.

From-SVN: r133173
2008-03-13 17:35:40 +00:00
Tom Tromey
2599b56f41 natClassLoader.cc (_Jv_RegisterInitiatingLoader): Check loading constraints.
* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader):
	Check loading constraints.
	(_Jv_CheckOrCreateLoadingConstraint): New function.
	* java/lang/ClassLoader.java (loadingConstraints): New field.
	* link.cc (_Jv_Linker::find_field): Use
	_Jv_CheckOrCreateLoadingConstraint.
	(_Jv_Linker::check_loading_constraints): New function.
	(_Jv_Linker::resolve_method_entry): Use
	check_loading_constraints.
	(_Jv_Linker::append_partial_itable): Likewise.
	(_Jv_Linker::layout_vtable_methods): Likewise.
	* include/jvm.h (_Jv_Linker::check_loading_constraints): Declare.
	(_Jv_CheckOrCreateLoadingConstraint): Declare.

From-SVN: r133172
2008-03-13 16:43:54 +00:00
Alon Dayan
5f5f0635f1 [multiple changes]
2008-02-19  Alon Dayan  <alond@il.ibm.com>
            Olga Golovanevsky  <olga@il.ibm.com>
	
	PR tree-optimization/35041
	* gcc.dg/struct/wo_prof_double_malloc.c: New test.

2008-03-13  Alon Dayan  <alond@il.ibm.com>
	    Olga Golovanevsky  <olga@il.ibm.com>

	PR tree-optimization/35041
	* ipa-struct-reorg.c (find_pos_in_stmt_1): Add another option
	to locate the right position in a statement.


Co-Authored-By: Olga Golovanevsky <olga@il.ibm.com>

From-SVN: r133171
2008-03-13 15:40:09 +00:00
Uros Bizjak
1359ef3975 re PR target/34000 (GCC pedwarns about use of static inline functions from system headers in extern inline functions)
PR target/34000
	PR target/35553
	* config/i386/xmmintrin.h: Change all static inline functions to
	extern inline and add __gnu_inline__ attribute.
	* config/i386/bmintrin.h: Ditto.
	* config/i386/smmintrin.h: Ditto.
	* config/i386/tmmintrin.h: Ditto.
	* config/i386/mmintrin-common.h: Ditto.
	* config/i386/ammintrin.h: Ditto.
	* config/i386/emmintrin.h: Ditto.
	* config/i386/pmmintrin.h: Ditto.
	* config/i386/mmintrin.h: Ditto.
	* config/i386/mm3dnow.h: Ditto.

testsuite/ChangeLog:

	PR target/34000
	PR target/35553
	* g++.dg/other/i386-3.C: New test.
	* gcc.target/i386/sse-13.c: Redefine extern instead of static.
	* gcc.target/i386/sse-14.c: Ditto.
	* gcc.target/i386/mmx-1.c: Ditto.
	* gcc.target/i386/mmx-2.c: Ditto.
	* gcc.target/i386/3dnow-1.c: Ditto.
	* gcc.target/i386/3dnow-2.c: Ditto.
	* gcc.target/i386/3dnowA-1.c: Ditto.
	* gcc.target/i386/3dnowA-2.c: Ditto.

From-SVN: r133169
2008-03-13 14:33:47 +01:00
Paolo Bonzini
5d2edb29da 2008-03-13 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (stageprofile).  Remove -fprofile-generate
	from stage_libcflags.
	* Makefile.in: Regenerate.

From-SVN: r133168
2008-03-13 13:31:58 +00:00
Uros Bizjak
8ec3e357d4 Revert my previous commit.
From-SVN: r133167
2008-03-13 11:50:12 +01:00
Uros Bizjak
8a6c843029 re PR c++/35553 (-fkeep-inline-functions and -O errors out in SSE headers)
PR target/35553
	* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
	__SSE_USE_INLINED_FUNC__ when using -flag-keep-inline-functions
	together with optimization.
	* config/i386/xmmintrin.h: Use __SSE_USE_INLINED_FUNC__ instead of
	__OPTIMIZE__ to choose between inlined intrinsic SSE function having
	immediate arguments and its equivalent macro definition.
	* config/i386/bmintrin.h: Ditto.
	* config/i386/smmintrin.h: Ditto.
	* config/i386/tmmintrin.h: Ditto.
	* config/i386/mmintrin-common.h: Ditto.
	* config/i386/ammintrin.h: Ditto.
	* config/i386/emmintrin.h: Ditto.

testsuite/ChangeLog:

	PR target/35553
	* g++.dg/other/i386-3.C: New test.

From-SVN: r133164
2008-03-13 10:49:43 +01:00
Paolo Bonzini
22aee8c5a9 re PR rtl-optimization/34522 (inefficient code for long long multiply when only low bits are needed)
2008-03-13  Paolo Bonzini  <bonzini@gnu.org>

	PR tree-opt/35422
	* gcc.target/i386/pr35422.c: Escape brackets.

From-SVN: r133163
2008-03-13 09:44:57 +00:00
Jakub Jelinek
d0fb20beb1 re PR middle-end/35185 (ICE using openmp with g++-4.2)
PR middle-end/35185
	* omp-low.c (lower_regimplify, init_tmp_var, save_tmp_var): Removed.
	(lower_omp_2): New function.
	(lower_omp_1, lower_omp): Rewritten.

	* testsuite/libgomp.c++/pr35185.C: New test.

From-SVN: r133162
2008-03-13 10:26:25 +01:00
Danny Smith
20cef83acc re PR target/35054 (No documentation of #pragma push_macro("macro_name"))
PR 35054
	* doc/extend.texi (Structure-Packing Pragmas): Replace "Win32"
	with the phrase "Microsoft Windows compilers".
	(Push/Pop Macro Pragmas): New subsection. Document
	#pragma push_macro and pragma pop_macro.

From-SVN: r133161
2008-03-13 07:06:30 +00:00
Paul Brook
5dea0c1939 arm.c (output_move_double): Prefer LDRD to LDM.
2008-03-12  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/arm.c (output_move_double): Prefer LDRD to LDM.

From-SVN: r133160
2008-03-13 00:39:34 +00:00
GCC Administrator
e066eba774 Daily bump.
From-SVN: r133158
2008-03-13 00:19:27 +00:00
Ben Elliston
954910ef63 * config.sub, config.guess: Update from upstream sources.
From-SVN: r133153
2008-03-13 10:43:12 +11:00
Paul Brook
d1b85efbd4 thumb2.md: Extend peephole to cover 3-arg subs.
2008-03-12  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/thumb2.md: Extend peephole to cover 3-arg subs.
	(thumb2_alusi3_short): Exclude PLUS and MINUS.
	(thumb2_addsi_shortim): Rename ...
	(thumb2_addsi_short): ... to this.  Allow register operands.
	(thumb2_subsi_short): New pattern.
	(thumb2_one_cmplsi2_short,
	thumb2_negsi2_short): New patterns and peepholes.

From-SVN: r133152
2008-03-12 23:19:41 +00:00
Paul Brook
0975490466 arm.c (arm_size_rtx_costs): Use ARM costs for Thumb-2.
2008-03-12  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/arm.c (arm_size_rtx_costs): Use ARM costs for Thumb-2.

From-SVN: r133151
2008-03-12 22:04:19 +00:00
Uros Bizjak
a7438d6d5d i386.md (int_cond): New code iterator.
* config/i386/i386.md (int_cond): New code iterator.
        (fp_cond): Ditto.
        ("s<code>"): Macroize expander from seq, sne, sgt, sgtu, slt, sltu,
        sge, sgeu, sle and sleu expanders usign int_cond code iterator.
        ("s<code>"): Macroize expander from sunordered, sordered, suneq, sunge,
        sungt, sunle, sunlt and sltgt expanders usign fp_cond code iterator.
        ("b<code>"): Macroize expander from beq, bne, bgt, bgtu, blt, bltu,
        bge, bgeu, ble and bleu expanders usign int_cond code iterator.
        ("b<code>"): Macroize expander from bunordered, bordered, buneq, bunge,
        bungt, bunle, bunlt and bltgt expanders usign fp_cond code iterator.

From-SVN: r133150
2008-03-12 22:30:21 +01:00
Paul Brook
954954d139 arm.c (use_return_insn): Use offsets->saved_regs_mask instead of {arm,thumb}_compute_save_reg_mask.
2008-03-12  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/arm.c (use_return_insn): Use offsets->saved_regs_mask
	instead of {arm,thumb}_compute_save_reg_mask.
	(output_return_instruction): Ditto.
	(thumb_unexpanded_epilogue): Ditto.
	(thumb1_expand_prologue): Ditto.
	(thumb1_output_function_prologue): Ditto.
	(arm_set_return_address): Ditto.
	(thumb_set_return_address): Ditto.
	(arm_get_frame_offsets): Set offsets->saved_regs_mask.  Push extra
	regs to achieve stack alignment.
	(thumb1_compute_save_reg_mask): Fix compiler warning.
	(arm_output_epilogue): Use offsets->saved_regs_mask.
	Adjust stack pointer by poping call clobered registers.
	(arm_expand_prologue): Use offsets->saved_regs_mask.
	Adjust stack pointer by pushing extra registers.
	* gcc/config/arm.h (arm_stack_offsets): Add saved_regs_mask.

From-SVN: r133148
2008-03-12 18:58:47 +00:00
Paolo Bonzini
4b700ab045 mangle.c (java_mangle_decl): Remove dead check.
2008-03-12  Paolo Bonzini  <bonzini@gnu.org>

	* mangle.c (java_mangle_decl): Remove dead check.

From-SVN: r133146
2008-03-12 17:13:01 +00:00
Paolo Bonzini
c83bd37c9d re PR rtl-optimization/34522 (inefficient code for long long multiply when only low bits are needed)
2008-03-12  Paolo Bonzini  <bonzini@gnu.org>

	PR tree-opt/35422
	* fold-const.c (fold_unary) <NOP_EXPR>: Distribute a narrowing
	conversion to the operands of a multiplication.

testsuite:
2008-03-12  Paolo Bonzini  <bonzini@gnu.org>

	PR tree-opt/35422
	* gcc.dg/vect/slp-7.c: Change target keywords required for vectorizing
	third loop.
	* gcc.target/i386/pr35422.c: New.

From-SVN: r133144
2008-03-12 15:33:45 +00:00
Richard Guenther
70fef63aef revert: [multiple changes]
2008-03-12  Richard Guenther  <rguenther@suse.de>

	PR c++/35469
	Revert:
	2008-02-04  Richard Guenther  <rguenther@suse.de>

        PR java/35035
        * decl.c (record_builtin_java_type): Make jboolean a
        integer type again where its mode doesn't match that of bool.

	2008-01-25  Richard Guenther  <rguenther@suse.de>

        PR c++/33887
        * decl.c (record_builtin_java_type): Make __java_boolean
        a variant of bool.
        * typeck.c (structural_comptypes): Move TYPE_FOR_JAVA check
        after TYPE_MAIN_VARIANT check.

From-SVN: r133142
2008-03-12 14:25:48 +00:00
Richard Guenther
6751444978 Makefile.in (OBJS-common): Add tree-ssa-phiprop.o
2008-03-12  Richard Guenther  <rguenther@suse.de>

	* Makefile.in (OBJS-common): Add tree-ssa-phiprop.o
	(tree-ssa-phiprop.o): Copy dependencies from tree-ssa-forwprop.o.
	* timevar.def (TV_TREE_PHIPROP): Add.
	* tree-ssa-phiprop.c: Split from tree-ssa-forwprop.c, added
	pass description.  Use TV_TREE_PHIPROP.
	* tree-ssa-forwprop.c: Remove phiprop code.

From-SVN: r133140
2008-03-12 12:15:41 +00:00
Francois-Xavier Coudert
cb31c4bcc5 re PR libfortran/35524 (Unconditional use of expl() in libgfortran)
PR libfortran/35524
	* intrinsics/erfc_scaled_inc.c: Only define the long double
	variant of erfc_scaled if expl is available.

From-SVN: r133138
2008-03-12 10:24:29 +00:00
Jakub Jelinek
7c8f7639c5 re PR middle-end/35549 (Invalid use of copy-in/out for shared vars in nested parallels)
PR middle-end/35549
	* omp-low.c (maybe_lookup_decl): Constify first argument.
	(use_pointer_for_field): Change last argument from bool to
	omp_context *.  Disallow shared copy-in/out in nested
	parallel if decl is shared in outer parallel too.
	(build_outer_var_ref, scan_sharing_clauses,
	lower_rec_input_clauses, lower_copyprivate_clauses,
	lower_send_clauses, lower_send_shared_vars): Adjust callers.

	* testsuite/libgomp.c/pr35549.c: New test.

From-SVN: r133136
2008-03-12 10:55:48 +01:00
Victor Kaplansky
628781031e tree-vectorizer.c (free_stmt_vec_info): New function.
2008-03-12  Victor Kaplansky  <victork@il.ibm.com>
            Ira Rosen  <irar@il.ibm.com>

        * tree-vectorizer.c (free_stmt_vec_info): New function.
        (destroy_loop_vec_info): Move code to free_stmt_vec_info().
        Call free_stmt_vec_info(). Free LOOP_VINFO_STRIDED_STORES..
        * tree-vectorizer.h (free_stmt_vec_info): Declare.
        * tree-vect-transform.c (vectorizable_conversion): Free
        vec_oprnds0 if it was allocated.
        (vect_permute_store_chain): Remove unused VECs.
        (vectorizable_store): Free VECs that are allocated in the..
        function.
        (vect_transform_strided_load, vectorizable_load): Likewise.
        (vect_remove_stores): Simplify the code.
        (vect_transform_loop): Move code to vect_remove_stores().
        Call vect_remove_stores() and free_stmt_vec_info().


Co-Authored-By: Ira Rosen <irar@il.ibm.com>

From-SVN: r133134
2008-03-12 06:06:00 +00:00
GCC Administrator
dedba68244 Daily bump.
From-SVN: r133129
2008-03-12 00:20:02 +00:00
John David Anglin
9dbd54bebb pa.h (TARGET_LONG_PIC_SDIFF_CALL): Conditionalize define on TARGET_HPUX.
* pa.h (TARGET_LONG_PIC_SDIFF_CALL): Conditionalize define on
	TARGET_HPUX.  Revise comment.
	(TARGET_LONG_PIC_PCREL_CALL): Revise comment.
	* pa.c (output_call): Update for revised TARGET_LONG_PIC_SDIFF_CALL.
	Use sr4 variant of `be' instruction when not generating PIC code.
	(attr_length_call): Adjust for above change.

From-SVN: r133123
2008-03-11 23:37:11 +00:00
Andrew Pinski
76a7d3ca51 re PR tree-optimization/35403 (ipa-reference.c does not change a default initialized static variable to be readonly)
2008-03-11  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * ipa-reference.c (static_execute): Remove module_statics_const and
        associated setting code.


2008-03-11  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR tree-opt/35403
        * gcc.dg/tree-ssa/ipa-reference-1.c: New testcase.

From-SVN: r133119
2008-03-11 14:08:00 -07:00
Uros Bizjak
40cca4f97c re PR target/35540 (Segmentation fault with __builtin_parity() and -O1)
PR target/35540
        * config/i386/i386.md (paritysi2, paritydi2): Use register_operand
        constraint for operand 1.
        (paritysi2_cmp): Use register_operand constraint for operand 2.
        Use earlyclobber modifier for operand 1.  Remove support for
        memory operands.
        (paritydi2_cmp): Use register_operand constraint for operand 3.
        Use earlyclobber modifier for operand 1.  Remove support for
        memory operands.

testsuite/ChangeLog:

        PR target/35540
        * gcc.target/i386/pr35540.c: New test.

From-SVN: r133118
2008-03-11 20:18:48 +01:00
Paul Brook
ec6237e440 arm.c (use_return_insn): Check TARGET_APCS_FRAME.
2008-03-11  Paul Brook  <paul@codesourcery.com>
	Vladimir Prus  <vladimir@codesourcery.com>

	* config/arm/arm.c (use_return_insn): Check TARGET_APCS_FRAME.
	(arm_compute_save_reg0_reg12_mask): Always
	check if register 11 must be saved.  Always safe hard frame pointer
	when frame_pointer_needeed.
	(arm_compute_save_reg_mask): Save IP and PC
	only with apcs frames.
	(arm_output_epilogue): Adjust Thumb2 codepath to
	be also invoked and work for ARM non-apcs frames.
	(arm_expand_prologue): Don't bother saving IP
	for non-apcs frame, since it's not clobbered by
	prologue code.  Implement non-apcs frame
	layout.

From-SVN: r133117
2008-03-11 17:43:22 +00:00
Paolo Bonzini
2f6025a15b re PR rtl-optimization/35281 (multiply with 0 generated for 64*32->64)
2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

	PR rtl-optimization/35281
	* expr.c (convert_move): Use a new pseudo for the intermediate
	from_mode->word_mode result.

From-SVN: r133116
2008-03-11 16:48:28 +00:00
Paolo Bonzini
30e257e544 langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

        * langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
        * langhooks.h (struct lang_hooks): Delete clear_binding_stack member.
        * toplev.c (compile_file): Don't call it.

fortran:
2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

        * f95-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
        (gfc_be_parse_file): Call clear_binding_stack from here.
	(gfc_clear_binding_stack): Rename to clear_binding_stack.

java:
2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

        * jcf-parse.c (java_parse_file): Assert binding levels are
        left in order.
        * lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, java_clear_binding_stack):
        Delete.

From-SVN: r133115
2008-03-11 16:44:25 +00:00
Uros Bizjak
608766dc37 override-attribs.C: Require ilp32 x86 target.
* g++.dg/inherit/override-attribs.C: Require ilp32 x86 target.

From-SVN: r133111
2008-03-11 16:01:18 +01:00
Nick Clifton
73b38fce8d md5.c (md5_process_bytes): Do not assume that memcpy will provide a return value.
* md5.c (md5_process_bytes): Do not assume that memcpy will
  provide a return value.

From-SVN: r133107
2008-03-11 14:08:53 +00:00
Uros Bizjak
ab669042dc re PR c/35526 (ICE on memcpy)
PR middle-end/35526
	* expr.c (store_expr): Call emit_block_move if the mode
	of "temp" RTX is BLKmode.

testsuite/ChangeLog:

	PR middle-end/35526
	* g++.dg/torture/pr35526.C: New test.

From-SVN: r133106
2008-03-11 13:47:29 +01:00
Francois-Xavier Coudert
2d3ca8b721 re PR libfortran/32812 (random_seed and date_and_time)
PR libfortran/32812
	* intrinsics/random.c (scramble_seed, unscramble_seed): New
	functions.
	(random_seed_i4): Scramble the seed the user gives us before
	storing it, and unscramble it when we return it back later.

From-SVN: r133104
2008-03-11 10:49:13 +00:00
Andrew Pinski
1ffe34d9f7 re PR tree-optimization/31358 (IV-OPTs produces a weird MEM_REF)
2008-03-11  Andrew Pinski  <andrew_pinski@playstation.sony.com>
	Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/31358
	* tree-ssa-loop-manip.c (create_iv): Call force_gimple_operand for
	the step with a NULL_TREE.
	* tree-ssa-loop-ivopts.c (find_bivs): Convert the step
	to sizetype if type is a pointer type.
	(add_candidate_1): Don't convert the base and step to
	the generic type if the orginal type is a pointer type.
	(add_iv_value_candidates): Use sizetype for the step
	if type is a pointer type.
	(cand_value_at): Likewise.
	* tree-ssa-address.c (add_to_parts): Use POINTER_PLUS_EXPR
	for pointer types.
	* tree-affine.c (tree_to_aff_combination <POINTER_PLUS_EXPR>):
	Don't convert the tem affine to the type.
	(add_elt_to_tree): Use sizetype for the step if a pointer.
	Use POINTER_PLUS_EXPR for pointers.
	(aff_combination_to_tree): Use sizetype for the step if a
	pointer.

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

From-SVN: r133102
2008-03-11 09:36:51 +00:00
GCC Administrator
7f2ad78b6d Daily bump.
From-SVN: r133100
2008-03-11 00:17:45 +00:00